Как создать файл mod
Настройте вашу Steam-версию Melvor Idle на использование модов (также называемых скриптами и расширениями) упрощенным способом.
Я хотел создать это руководство, потому что с тех пор, как было создано последнее руководство Steam по использованию скриптов и расширений, был выпущен новый инструмент с открытым исходным кодом, который упрощает весь процесс установки и управления скриптами и расширениями.
Прежде чем продолжить, сделаю заявление об отказе от ответственности для наглядности: Я являюсь автором вышеупомянутого инструмента.
К концу этого руководства вы сможете установить и использовать любой скрипт или расширение, используемое в браузере, в вашей Steam-установке Melvor Idle.
Установить M3 так же просто, как дважды щелкнуть установщик, загруженный выше. Во время установки нет никаких опций, и приложение должно автоматически запускаться после успешной установки.
Примечание. Windows может предупредить вас о том, что приложение из неизвестного / ненадежного источника из-за отсутствия сертификата подписи кода (это дорого). Вы можете либо разрешить, либо, если вам это неудобно, вы всегда можете скомпилировать свой собственный исполняемый файл с исходным кодом, предоставленным в репозитории.
Последним обязательным шагом в процессе установки является установка каталога установки Melvor Idle. После запуска в M3 вы увидите такое окно:
Пример пути: C: Program Files (x86) Steam steamapps common Melvor Idle
Интерфейс M3 довольно понятен, поэтому я не буду тратить много времени на подробности того, что доступно. Есть два основных экрана: список модов (моды в навигации) и меню настроек.
Здесь вы выполняете всю установку модов и управление ими. Вы можете добавлять, удалять, отключать / включать и обновлять моды (если они доступны) из этого списка. Вы также можете настроить порядок загрузки мода в редких случаях, когда это необходимо.
Здесь можно выбрать некоторые базовые настройки с пояснениями во всплывающих подсказках к наиболее неоднозначным. Вы можете запретить M3 автоматически проверять наличие обновлений (если таковые имеются) и изменить поведение ЗАПУСК кнопка.
Предполагая, что вы выбрали допустимый установочный каталог Melvor Idle, теперь вы можете начать добавлять моды. Их можно добавить в игру тремя способами:
- Сквозь Обнаружить tab, тщательно подобранный список, который упрощает установку самых популярных модов.
- Локальный файл .js (скрипт) или manifest.json (расширение браузера).
- Веб-URL (в настоящее время поддерживаются только ссылки Greasy Fork)
Если вы скачали или написали сценарий для запуска, просто выберите Из файла под Добавить + меню, а затем найдите нужный файл JavaScript (.js).
Как упоминалось выше, в настоящее время поддерживается добавление только URL-адресов Greasy Fork с помощью этого метода. Выбирать Из URL под Добавить + меню, а затем введите или вставьте URL-адрес сценария, который вы хотите добавить.
Оставьте комментарий, если есть какие-либо проблемы, с которыми вы столкнулись при попытке установить или хотели бы добавить их из-за того, что вы прошли более сложный процесс установки самостоятельно.
GTA: The Trilogy — The Definitive Edition работает на движке Unreal Engine, и для хранения игровых файлов в этом движке используются паки (файлы с расширением .pak). Чтобы установить мод для обновленной трилогии, необходимо создать свой .pak файл, в который положить измененные файлы. Но как это сделать?
В данной статье вы узнаете, как распаковать game.pak, в котором лежат все игровые файлы, а также мы расскажем о создании своих .pak файлов.
Как распаковать игровые файлы GTA: The Trilogy — The Definitive Edition
Скачайте программу Umodel. Запустите umodel_gta_trilogy.exe.
Перед вами откроется структура пака. Щелкните на кнопку «Инструменты» (Tools) и перейдите в «Параметры» (Options).
Здесь вы можете настроить параметры извлечения и сохранения извлеченных файлов. Рекомендуем установить параметры, как на скриншоте ниже, это упростит вам работу в будущем. Щелкните ОК.
Чтобы что-то извлечь, просто выберите файл в списке и нажмите «Экспорт» (Export). Вам будет предложено указать версию Unreal Engine, выберите 4.26 и нажмите OK. В приведенном ниже примере мы экспортировали файл SM_colt45.uasset, расположенный в Game SanAndreas Weapons. Этот формат можно открыть в Blender и экспортировать в .OBJ.
Как создать свой pak файл для GTA: The Trilogy — The Definitive Edition
Вы отредактировали какой-то игровой файл и теперь хотите добавить его в игру. Для этого нужно создать свой pak файл, но как это сделать?
Вам потребуется программа UnrealPak, которую можно скачать с GitHub . После установки программы запустите командную строку и пропишите следующий код:
"D:GamesEpic GamesUE_4.25EngineBinariesWin64UnrealPak.exe" “D:UnpacksExtractedDataTest.pak” -Create= "D:UnpacksExtractedDatadataToPack.txt"Test.pak - пак, который будет сгенерирован, dataToPack.txt - файл, который будет в него упакован. Путь к UnrealPak.exe и путь, где будет создан новый pak файл вы должны указать сами.
Обратите внимание, что внутри вашего пака структура файлов должна совпадать с той, что находится в оригинальном game.pak. в ином случае мод работать не будет! Посмотреть структуру вы можете в распакованном game.pak
Советы по поиску игровых файлов
- Текстуры из gta3img обычно находятся в SanAndreas Textures gta3 (они разделены по категориям);
- В верхней части программы есть кнопка с изображением лупы - она ищет файлы только в той папке, в которой вы находитесь (не включает вложенные папки).
Так как используемое нами Forge API использует автоматический сборщик Gradle, то мы должны придерживаться определенной структуры папок.
Создайте папку "src" и остальные в нашей рабочей директории, где мы ранее распаковывали архив MDK. Idea автоматически узнает названия папок и присвоит им нужное значение.
Если вы используете Eclipse, то вам нужно пометить "src/main/java" и "src/main/resources" как "Source Folder" (папка исходников).
Это можно сделать двумя разными способами:
- Создать эти папки через ПКМ > New > Source Folder
- Выделить уже созданные папки "java" и "resources" и ПКМ > Build Path > Use as Source Folder
"src" в полном варианте пишется source и переводится как "Источники/Исходники".
Весь наш мод будет находится внутри этой папки.
Далее идет "main", внутри которого находятся две папки: "java" и "resources".
- В "java" хранится исходный код нашего мода
- В "resources" хранятся все остальные доп. файлы: картинки, звуки, модели и так далее
Создадим в папке "resources/META-INF" файл mods.toml .
Этот файл определяет метаданные нашего мода: идентификатор, название, авторов, зависимости и так далее.
Минимально правильный mods.toml файл должен содержать следующее:
Где modid — идентификатор мода. Не используйте заглавные буквы, пробелы, подчеркивания и т.д. Только английские буквы в нижнем регистре.
Параметр displayName отвечает за красивое название вашего мода. Тут можно использовать все, что угодно. Работать будут и коды форматирования текста.
Параметр | Описание | Обязательность |
---|---|---|
modLoader | Загрузчик модов. Всегда "javafml" | Обязательно |
loaderVersion | Версия загрузчика. Лучше не трогать | Обязательно |
[[mods]] | Список модов - сколько разрешено здесь, определяется отдельным загрузчиком модов(перевод комментария. Лучше этого не трогать) | Обязательно |
issueTrackerURL | Куда идти людям у которых случился краш. | Опционально |
modid | Идентификатор мода | Обязательно |
displayName | Название мода | Обязательно |
description | Описание мода в 1-2 абзаца | Обязательно хоть пустой |
version | Версия мода | Обязательно |
displayURL | Ссылка на сайт мода | Опционально |
updateJSONURL | Ссылка на JSON файл с данными обновлений мода | Опционально |
authors | Массив имен авторов | Опционально |
credits | Строка с выражением благодарности кому-то | Опционально |
logoFile | Путь к логотипу мода | Опционально |
[[dependencies.modid]] | Одна зависимость далее идут подпараметры: | Опционально |
modId | modid зависимости | Обязательно |
mandatory | Если true то при отсутсвии зависимости игра не загрузится | Обязательно |
versionRange | Диапоон поддерживаемых версий | Обязательно |
ordering | Мремя загрузки относительно зависимости: NONE\BEFORE\AFTER | Обязательно |
side | Сторона зависимости: BOTH\CLIENT bSERVER | Опционально |
Вот пример умеренно заполненного файла:
Более подробно о настройке этого файла вы можете прочитать в отдельной статье. Рекомендую обязательно выделить время для этого, так как там есть несколько полезных хитростей.
В предыдущем разделе мы заполнили файл mods.toml . Но игра все еще не распознает наш мод, в чем можно убедиться, запустив клиент. Вы не найдете свой мод в списке установленных модов. Для того, чтобы все заработало, нам нужно создать главный файл мода.
В папке "java" создайте базовый пакет вашего мода. Если у вас уже есть домен для вашего мода, то отличным названием для пакета будет что-то вроде ru.ivasik.tutorial . Если домена у вас нет, вполне подойдет использование вашего никнейма, как название пакета верхнего уровня: ivasik.tutorial .
В моем случае пакет будет называться так: ru.ivasik.tutorial .
Теперь создадим в нем файл TestMod.java . Это и будет главным файлом нашего мода.
Для того, чтобы Forge понял, что данный файл действительно является главным, мы должны добавить к определению класса аннотацию @Mod :
Естественно, что передано в аннотацию должно быть тоже что и в mods.toml . В противном случае игра не запустится.
Мы создали базовую структуру любого мода для Minecraft. Выглядит она следующим образом:
Описание
Данный гайд получится очень большим, т.к. создание мода это не перевод и тут есть огромная куча моментов, с которыми надо работать.
Начнем с самого сложного, создание модификации с нуля, чтобы начать, надо создать новый файл и дать ему имя, сделать это можно с помощью этой кнопки:
После того как создали файл, откройте его как и любой другой мод, в данном случае я создам себе пояс, который будет чисто для "читеров", открываем значение "Items" далее подраздел Armour, нажимаем ПКМ на любом предмете и нажимаем на "New item" и получаем нашу рабочую зону:
Хоть это и наша рабочая зона, вы должны понимать, что за что отвечает, красным я выделил то, с чем можно работать, даже если вы не сильно понимаете, что делаете, зеленым если у вас есть текстуры которые вы хотите добавить или использовать уже имеющиеся:
Однако, есть еще и правая рабочая зона, тут можно размещать цвет, материал из чего оно сделано, дать этой вещи покрытие частей тела или другие настройки (если это не броня или оружие, а например генератор)
После того, как вы узнали то, с чем вы действительно должны работать, мы можем начать создавать то, что мы хотим создать.
Я выдал неоднозначное имя и описание этому предмету, далее я распишу, что за что отвечает, чтобы вам не пришлось переводить не всегда понятное описание от авторов:
Колонка: "Base" - редактируется только имя "Name" - дается всем объектам независимо от чего-либо.
Колонка: " " - редактируется "description" - описание, "dont colorise" - не дает получать цветовые гаммы от принадлежности к какой либо фракции, "hide beard, hair, parts" - скрывает части тела или любые другие части, например шлем, однако у пояса нет возможности скрыть и поэтому мы их отключаем, "slot" - то место, куда игра позволит установить данный объект, "stigma" - дает распоряжение какая часть персонажей предпочитает носить, пример: военные, горожане, торговцы, рабы или же бандиты.
Колонка: "files" - отвечает за текстурную часть этого предмета, "ground mesh" - не трогаем, "has collision" - тоже не трогайте, отвечает за коллизию объекта, "icon" - отвечает за иконку объекта, вы можете задать ей как самостоятельную часть, либо выдать автоиконку, если выдали им "mesh", - mesh отвечает за саму текстуру, её вы либо не трогаете (не будет видна в мире), либо выдаете свою собственную текстуру или уже готовую игровую текстуру, остальное так же не стоит трогать.
Колонка: "inventory" - отвечает за вид, размещение, вес и цену объекта в инвентаре, "auto icon image" - как сказано ранее выставляется в положение True - если выдали им текстуру, "inventory footprint: height; width" - отвечают за занимаемую часть инвентаря - первая отвечает за высоту, вторая за ширину, "value" - отвечает за основную цену данного предмета, а дальше уже идет расчет из игровых настроек на продаваемый и покупаемый объект, "weight kg" - отвечает за вес объекта.
Колонка: "inventory icon" - отвечает за иконку в инвентаре, ширину, увеличение, высоту, поворот, трогайте если хотите изменить автоиконку.
Колонка: "locked" - отвечает заперт ли объект, "hardness" отвечает за сложность запертого замка, "is locked" - заперт ли объект (нужно для клеток, сундуков и т.д.), "lock level" - отвечает за уровень запертого замка.
Колонка: "skill bonus" - отвечает за даруемые бонусы объекта к Атакующим и защитным умениям, в данном случае общее значение 15, "combat attk bonus" - дает бонус к Атаке; "combat def bonus" - дает бонус к Защите; "perseption bonus" - дает бонус к Восприятию; "unarmed bonus" - бонус к Безоружному бою.
Колонка: "skills" - отвечает за "мультиплиер" - множитель умений, в данном случае мы видим общий множитель 2, "asassination"- Убийство; "athletics" - Атлетика; "combat speed" - Скорость боя; "damage output" - увеличивает исходящий от вас урон, было 100 - при множителе 2 - будет 200; "dextrerity" - Ловкость; "dodge" - Уклонение, "fist injury" - повреждение конечностей, чтобы не было получаемого урона, от безоружного боя (что-то типо стальных повязок) надо выставить множитель на 0 (проще говоря, урон который вы получаете при ударе металла и вместе с этим поясом - вы будете получать в 2 раза больше урона по конечностям); "ranged skill" - умения дальнего боя - арбалеты, турели; "stealth" - Скрытность.
Колонка: "stats 0-1" -(выставляется максимум 1, это что-то типо 100% защиты от урона) колонка которая отвечает за базовую защите которую дают другие вещи, защиту от разреза, дробящих ударов и т.д. - "blunt def bonus" - защита от дробящих ударов; "class" - тип объекта, в данном случае это легкий доспех; "cut def bonus" - защита от разреза; "cut into stan" - режущий урон, что может вас пошатнуть, "fabrics amount" - отвечает за кол-во используемого материала для создания данного предмета; "level bonus" - честно говоря, я до сих пор не знаю, что это дает; "material type" - выставляет материал, из которого данную вещь можно будет изготовить (а так же задает основной вид); "pierce def mult" - отвечает за множитель защиты от пробития этой брони (разреза и дробящего урона); "relative price mult" - отвечает за множители у торговцев на данный объект.
Колонка: "texture layers" - пожалуйста не трогайте эту колонку.
Колонка: "weather" - позволяет выдать вашему объекту защиту от погодных явлений, "weather protection amount" - выставляется от 0 до 1, 1 = 100% защите от погоды которую вы выставите, "weather protection0" - выставляется погодный эффект от которого будет защита.
Ну, сделали мы предмет, а что дальше?
А дальше уже вам решать, что вы будете делать, раздадите это как основной предмет кому-то из существующих фракций, персонажей, или сделаете его лишь для себя.
В моем случае я покажу, как я сделаю его лишь для себя, добавлю его как предмет продажи в баре Хаба, чтобы сделать это, надо создать торговый лист, найти вы его можете в основном меню под названием - "Vendor Lists" именно с этим предметом, чтобы ограничить его продажу в других магазинах, вот так выглядит этот лист:
Я выделил рабочие зоны, одно тут надо менять только имя и "items count" - максимальное количество предметов которое будет добавлено (рандомно на самом деле) и полностью нужная нам рабочая зона - правая, тут мы добавляем предметы которые будут добавлены в лист торговли:
Ну, лист мы создали, пора добавить этот лист уже нужному нам торговцу, чтобы найти нужного вам торговца, в основном меню переходим в "Faction" - "Squads" и там вы уже выбираете кому будете добавлять данный лист, в моем случае я добавляю в бар Хаба, а называние его там пишется как "Bar blackmarket":
Так как я добавляю лист, мне нужно выдать им параметр "vendors" - там будут все листы которые уже имеются, включая созданный мной.
Сохраняем и теперь мы протестим, есть ли этот пояс в игре:
Как видим, пояс есть, текстур и иконки нет, т.к. я ничего не выбирал. Думаю в дальнейшем напишу как создавать персонажей, фракции.
Я думаю, вы из статьи поняли, как модифицировать ваши модификации на предметы (такие же характеристики присутствуют у объектов которые можно построить)
Руководство для тех, кто хочет познакомится с моддингом C&C 3: TW и не знает, с чего начать.
Приготовления:
Сперва вам понадобится следующее:
3D — графика:
Для добавления в игру новых 3D моделей вам потребуется программа «3ds max 7» или «3ds max 9»/«3ds max 9 SP2», т.к. необходимые плагины имеются только для этих редакторов. Плагины находятся в MOD SDK.
Графический редактор:
Для создания и редактирования текстур вполне подойдет Adobe Photoshop CS6. Photoshop способен экспортировать изображение в приемлемый для игры формат — .tga или .dds. Чтобы экспортировать в .dds, для Photoshop’a необходимо скачать соответствующий плагин.
Установка MOD SDK:
Не имеет значения в какую директорию вы установите или разархивируете MOD SDK. Кто-то рекомендует устанавливать в папку с игрой, кто-то в Program Files. Моя папка находится просто на диске C.
Если вы не знаете, как запускать модификации, то читайте здесь.
Первые шаги. Mod.xml:
Поставим перед собой две задачи:
- Первая — изменить скорость строительства и стоимость казармы Нод;
- Вторая — увеличить запас здоровья мотоцикла Нод.
Примечание: голубым цветом выделяются оригинальные, не измененные коды, файлы, папки. Зеленый — то, что уже изменено или создано пользователем. Красный — важная информация.
Если вы все правильно установили, то у вас должна быть папка «MOD SDK» с вложенными в нее папками и прочими файлами.
« Art » — в этой папке хранится вся графическая информация мода: 3D модели и текстуры;
« Audio » — как следует из названия, здесь находятся звуки и музыка, которые используются в проектах;
« BuiltMods » — папка, хранящая в себе asset’ы собранного вами проекта, кэш, прочие системные файлы. Кэш вашего проекта помогает собрать мод быстрее, так как часть информации, которая не была отредактирована с момента последней сборки, не обрабатывается, а берётся из кэша;
« CnC3Xml » — исходные коды объектов, задействованных в игре;
« DefaultUIScreens » — коды игрового UI. (User Interface);
« Documentation » — документация;
« INI » — .ini файлы, которые можно задействовать для проектов;
« LUA » — исходные коды скриптов;
« Mods » — каталог, содержащий проекты;
« Schemas » — системные файлы;
« Shaders » — исходники шейдеров;
« Tools » — различные инструменты, например, программа для просмотра .w3x — файлов.
Сейчас нас интересует папка Mods , которая находится в MOD SDK .
Изначально, зайдя в папку Mods , вы увидите папку SampleMod . Это мод, созданный составителями пакета. Не удаляйте его, так как он хранит исходные коды, которые помогут нам.
Создайте свою собственную папку в разделе Mods . Назовем ее, например, «MyFirstMod». Зайдите в MyFirstMod и создайте еще одну папку, которая должна называться «Data».
В папке Data , помимо остальных файлов мода, хранится главный файл — Mod.xml. Его можно взять из папки SampleMod / Data . Скопируйте и вставьте его в папку Data вашего мода.
Mod.xml — главный файл проекта, без него невозможно «собрать» мод. Через Mod.xml добавляются пути к остальным файлам проекта, не переименовывайте его.
Изменение параметров:
В этом пункте мы займемся изменением параметров завода и мотоцикла.
Если вы знакомы с языками программирования, то легко разберетесь, как все работает. Если нет, то в любом случае никто не заставит вас писать код с нуля, папка « CnCXml » предоставляет достаточно исходных ресурсов.
Вернитесь в папку MOD SDK и откройте CnCXml .
В CnCXml ищем папку NOD и заходим в нее. Далее открываем каталог Structures , в котором находится файл « NODHandOfNOD.xml », копируем его в папку нашего проекта к Mod.xml .
В каталоге Units находится файл « NODAttackBike.xml », копируем в папку к Mod.xml .
Все файлы в CnCXml недоступны для редактирования, так как в свойствах файла стоит галочка «Только чтение». Снимите её перед редактированием файла.
Сначала отредактируем файл казармы Нод — NODHandOfNOD.xml . Так как нас интересует время строительства этой постройки и её стоимость, то найдем строчки, которые отвечают за это.
Строка, отвечающая за время строительства:
BuildTime=“5”
Стоимость:
BuildCost=“500”
Заменим эти параметры на:
BuildTime= “10”
BuildCost=“250”
« id » — идентификатор объекта. К идентификатору объекта можно обратится из прочих тегов;
« inheritFrom » — указание id объекта, из которого наследуется информация;
« SelectPortrait » — портрет объекта;
« ButtonImage » — иконка объекта;
Портрет и иконка может использовать одну и ту же картинку.
« BuildCost » — стоимость объекта;
« BuildTime » — время, за которое объект построится в производственной постройке;
« EnergyProduction » — производство энергии. Значение в скобках может быть положительным, отрицательным или равным нулю. Если параметр не добавлен в GameObject, то его значение равно 0. Юнит тоже может иметь EnergyProduction;
« KindOf » — особенности объекта. Например, SELECTABLE позволяет выделить объект с помощью курсора мыши;
« Description » — описание объекта;
« TypeDescription » — описание типа объекта.
Между <DisplayName> </DisplayName> находится идентификатор названия объекта.
Текст для DisplayName, Description и TypeDescription добавляется в Mod.str.
Сохраните измененный файл и откройте NODAttackBike.xml . Заметьте, что некоторые строки NODHandOfNOD.xml и NODAttackBike.xml совпадают. Например, «BuildTime» и «id».
Нам необходимо отредактировать запас здоровья байка, поэтому опускаемся в самый низ файла и ищем такую строчку:
MaxHealth=“800”
Заменим значение 800 на 2000 и получим такую строчку:
MaxHealth=“2000”
Сохраните измененный файл.
Совет: для поиска используйте функцию «Найти» в блокноте или в Notepad++. Для Notepad++ функция «Найти» вызывается сочетанием клавиш Ctrl + F.
Добавление файлов в Mod.xml:
Чтобы измененные файлы были «видны» для сборщика, их нужно объявить в файле Mod.xml . Откройте Mod.xml вашего проекта.
Отредактируйте файл так, как показано ниже:
Все, что находится внутри зелёной зоны — комментарий. Ни комментарий, ни текст внутри не учитывается. Так вы можете оставить заметку или закомментировать ненужную часть кода.
Не удаляйте и не изменяйте эти строчки:
Сборка проекта и запуск:
Зайдите папку MOD SDK и запустите приложение «EALAModStudio.exe». В выпадающем списке выберете MyFirstMod.
Установите галочки напротив всех пунктов, кроме «Clear Built Mod» и «Clear Cache». Далее нажмите кнопку «Build Mod» и дождитесь конца сборки. Build Completed – строчка, подтверждающая, что сборка мода завершена.
Собранный мод находится в документах вашего компьютера в папке C:\Users (Пользователи)\(Имя пользователя)\Documents (Документы)\Command & Conquer 3 Tiberium Wars\Mods
Читайте также: