Garry's Mod
Оценок: 58
Загрузка аддона в мастерскую без использования сторонних программ
От Richard98
В этом руководстве я подробно опишу, как загрузить аддон в мастерскую Steam без использования сторонних программ.
Часть информации взята с gmod.wiki. Ссылка чуть ниже.
English info here https://wiki.garrysmod.com/page/Workshop_Addon_Creation
   
Наградить
В избранное
В избранном
Удалить
Подготовка
Вам понадобится:
Сам аддон
Иконка в формате jpg размером 512х512
(Создание файла addon.json описано в руководстве.)
Структура папки
Папка с аддоном должна симулировать папку garrysmod. Вот этуСам аддон должен лежать в каталоге этой папки таким образом, чтобы если скопировать вашу папку в папку garrysmod, он оказывался в нужном месте и работал при запуске игры.
Если он лежит не в том месте, то вы получите ошибку при создании файла .gma
Вот список того что и где должно лежать:
"lua/*.lua",
"scenes/*.vcd",
"particles/*.pcf",
"resource/fonts/*.ttf",
"scripts/vehicles/*.txt",
"resource/localization/*/*.properties",
"maps/*.bsp",
"maps/*.nav",
"maps/*.ain",
"maps/thumb/*.png",
"sound/*.wav",
"sound/*.mp3",
"sound/*.ogg",
"materials/*.vmt",
"materials/*.vtf",
"materials/*.png",
"materials/*.jpg",
"materials/*.jpeg",
"models/*.mdl",
"models/*.vtx",
"models/*.phy",
"models/*.ani",
"models/*.vvd",
"gamemodes/*/*.txt",
"gamemodes/*/*.fgd",
"gamemodes/*/logo.png",
"gamemodes/*/icon24.png",
"gamemodes/*/gamemode/*.lua",
"gamemodes/*/entities/effects/*.lua",
"gamemodes/*/entities/weapons/*.lua",
"gamemodes/*/entities/entities/*.lua",
"gamemodes/*/backgrounds/*.png",
"gamemodes/*/backgrounds/*.jpg",
"gamemodes/*/backgrounds/*.jpeg",
"gamemodes/*/content/models/*.mdl",
"gamemodes/*/content/models/*.vtx",
"gamemodes/*/content/models/*.phy",
"gamemodes/*/content/models/*.ani",
"gamemodes/*/content/models/*.vvd",
"gamemodes/*/content/materials/*.vmt",
"gamemodes/*/content/materials/*.vtf",
"gamemodes/*/content/materials/*.png",
"gamemodes/*/content/materials/*.jpg",
"gamemodes/*/content/materials/*.jpeg",
"gamemodes/*/content/scenes/*.vcd",
"gamemodes/*/content/particles/*.pcf",
"gamemodes/*/content/resource/fonts/*.ttf",
"gamemodes/*/content/scripts/vehicles/*.txt",
"gamemodes/*/content/resource/localization/*/*.properties",
"gamemodes/*/content/maps/*.bsp",
"gamemodes/*/content/maps/*.nav",
"gamemodes/*/content/maps/*.ain",
"gamemodes/*/content/maps/thumb/*.png",
"gamemodes/*/content/sound/*.wav",
"gamemodes/*/content/sound/*.mp3",
"gamemodes/*/content/sound/*.ogg",
Создание файла addon.json
Файл addon.json должен лежать в корне папки с аддоном.
Создаём его просто как текстовый файл (по возможности в кодировке UTF-8, чтобы не возникало в будущем проблем с ним) и меняем его разрешение с .txt на .json
Открываем его любым блокнотом и вписываем туда:
{
"title" : "Имя аддона",
"type" : "Тип аддона",
"tags" : [ "1-й тэг", "2-й тэг" ],
"ignore" :
[
"*.psd",
"*.vcproj",
"*.svn*"
]
}
Вписывайте именно то, что соответствует вашему аддону!!!
Имя аддона может быть любым
Далее в файл вписывайте только то, что присутствует в списках ниже!
Тип 1 штука из списка
Типы:
"ServerContent"
"gamemode"
"map"
"weapon"
"vehicle"
"npc"
"tool"
"effects"
"model"

Далее вписываем 1 или 2 тэга из списка
Тэги:
"fun"
"roleplay"
"scenic"
"movie"
"realism"
"cartoon"
"water"
"comic"
"build"

Сохраняем файл. Должно получится примерно так
Создание файла .gma
Для этого нам нужен gmad.exe Он находится в папке bin игры Garry's mod.
Но работать с ним придётся через командную строку.

Жмём Win+R и в появившееся окно вписываем cmd
Далее я вам рекомендую перейти в папку bin игры Garry's mod, чтобы не прописывать путь каждый раз. Для этого пишем
cd "<STEAM LOCATION>\steamapps\common\garrysmod\bin"
Вместо <STEAM LOCATION> прописываем путь к папке SteamLibrary на вашем компьютере. Например
cd "d:\steamlibrary\steamapps\common\garrysmod\bin"
Нельзя допускать ни 1й ошибки при вписывании команд!
(Если строка не перешла в нужную папку, то попробуйте вписать
cd /d "<STEAM LOCATION>\steamapps\common\garrysmod\bin" )

Должно получиться так

Теперь приступим к созданию файла .gma
Вписываем
gmad.exe create -folder "<FULL PATH TO ADDON FOLDER>" -out "<FULL PATH TO OUTPUT .gma FILE>"
Вместо <FULL PATH TO ADDON FOLDER> вставляем полный путь к папке с аддоном.
Вместо <FULL PATH TO OUTPUT .gma FILE> вставляем пусть к тому месту, где создастся файл .gma
например
d:\SteamLibrary\steamapps\common\GarrysMod\bin>gmad.exe create -folder d:\example -out d:\example.gma

В случае успеха вы увидете это, а сам файл .gma появится в месте, которое вы указали
Можно писать и без -out. В таком случае файл создатся в каталоге, в котором лежит папка с аддоном. Кстати, если вписать просто gmad.exe, вам выдаст инструкцию по использованию файла.
Ошибка при создании
Ошибки могут быть по разным причинам. Но одну я хочу вам показать
Если вы увидели такую ошибку, значит со структурой папки у вас не всё в порядке. Вернитесь в верх рукододства к разделу "Структура папки" и проверьте по списку что и где у вас не там лежит. Исправьте и попробуйте содать .gma файл вновь.
Кстати, командная строка сама вам показывает что не так лежит в вашем аддоне.

Также НЕ ИСПОЛЬЗУЙТЕ КИРРИЛИЧЕСКИЕ СИМВОЛЫ В ПУТИ К АДДОНУ!!!
Публикация аддона
Публиковать файл будем с помощью gmpublish.exe. Находится он в том же месте, где и gmad.exe. Если вписать gmpublish.exe вы получите инструкцию по пользованию файлом.

Вписываем
gmpublish.exe create -addon %~n1.gma -icon %~n1.jpg
Вместо %~n1.gma вставляем путь до вашего аддона. Заканчиваться он должен .gma.
Вместо %~n1.jpg вставляем путь до иконки, которая будет логотипом вашего аддона. Заканчиваться он должен .jpg.
Например

После этого начинается загрузка и строка зависает. Нужно немного подождать. Как только аддон будет загружен, вы получите соответствующее сообщение:
Cleaning up..
All done!
или же Addon creation finished
Красным будет написано, что ваш аддон помечен как приватный и видеть его будете только вы!
Теперь вам осталось только зайти на страницу вашего аддона через профиль steam (Ваш ник/Контент/Работы в мастерской/перечень), сделать его публичным и настроить страницу аддона (написать информацию, добавить скриншоты и тп).
Обновление аддона
Вы можете обновлять ваш аддон и его лого. Для этого вам вновь придётся поработать с командной строкой. Можно обновить сам аддон, его лого или же и то и другое сразу.

Для обновления только аддона вписываем
gmpublish.exe update -id 1234567890 -addon %~n1.gma
Для обновления только иконки вписываем
gmpublish.exe update -id 1234567890 -icon %~n1.jpg
Для обновления и того и другого вписываем
gmpublish.exe update -id 1234567890 -addon %~n1.gma -icon %~n1.jpg
Вместо %~n1.gma вставляем путь до вашего аддона.
Вместо %~n1.jpg вставляем путь до иконки, которая будет логотипом вашего аддона.
Вместо 1234567890 пишем id вашего аддона. Узнать его можно в ссылке на ваш аддон.
Например ссыка http://steamcommunity.com/sharedfiles/filedetails/?id=1122334455667788
Вот число в конце и будет являться id аддона.

Также можно написать список изменений, если вы затрагивали аддон. Для этого в конце строчки просто добавьте -changes "", а внутри кавычек напишите, что вы измениили.
Комментариев: 105
Милвал 19 апр в 7:58 
Любимый проверенный способ публиковать аддоны
Gamer Ten 27 дек. 2024 г. в 1:31 
мда, у меня просто все файлы в Whitelist такие как .bps, .vmf, .vmx Подскажите что не так?:summercat2023:
YON_BOMJ 5 авг. 2024 г. в 9:26 
Спасибо за ответ,оказывается в materials нужно было создать папку с названием как у текстуры и поместить их туда.
Richard98  [создатель] 5 авг. 2024 г. в 8:41 
По идее всё правильно, но может где-то вы всё же ошиблись
YON_BOMJ 5 авг. 2024 г. в 6:35 
простите за еще один вопрос,но как?
Я закинул текстуры в GarrysMod\garrysmod\addons\myaddon\materials,потом запустил gmad,оно сделало мне .gma и вот когда я её выложил.Предложил другу поиграть то он не видит ту текстуру которая должна быть.Может в другую папку кидать?
Richard98  [создатель] 4 авг. 2024 г. в 6:33 
Их тоже в .gma поместить надо
YON_BOMJ 3 авг. 2024 г. в 23:39 
а посторонние текстуры для карты будут загружены?
baccabab 7 янв. 2024 г. в 8:59 
просто скачайтесь gmpublisher и не мучайтесь
Richard98  [создатель] 6 янв. 2024 г. в 8:54 
Убедиться что этот файл лежит где надо и называется так как надо
Саня 6 янв. 2024 г. в 7:42 
выдаёт ошибку addon.json error: Couldn't find file, что делать?