Первый минимальный NML-мод
Первый минимальный NML-мод
Заголовок раздела «Первый минимальный NML-мод»Заставить NeoModLoader загрузить крошечный мод и вывести одну однозначную строку в Player.log.
Пока не добавляй UI, Harmony-патчи, сохранения и игровую логику. Сначала докажи, что каркас вообще загружается.
Куда класть два файла
Заголовок раздела «Куда класть два файла»Держи mod.json и Main.cs вместе внутри одной папки мода — такого же типа, который NML использует для других установленных модов. Проект ещё не подтвердил WBML-тестом один универсальный путь установки NML для всех setup, поэтому мы специально не выдумываем здесь Windows path. Если у тебя уже есть рабочий NML-мод, его расположение — самый безопасный локальный ориентир до отдельного lifecycle/setup исследования.
MyFirstMod/├── mod.json└── Main.cs1. mod.json
Заголовок раздела «1. mod.json»Используй генератор стартового мода, если не хочешь писать manifest вручную.
Минимальная форма, которую использует рабочий генератор:
{ "name": "My First Mod", "GUID": "YourName.MyFirstMod", "author": "YourName", "version": "0.1.0", "description": "My First Mod", "targetGameBuild": 719, "Dependencies": [], "OptionalDependencies": [], "IncompatibleWith": []}Выбери GUID один раз и не меняй его после публикации.
2. Main.cs
Заголовок раздела «2. Main.cs»using NeoModLoader.api;
namespace YourName.MyFirstMod{ public class Main : BasicMod<Main> { protected override void OnModLoad() { LogInfo("[My First Mod] Loaded"); } }}3. Запусти игру и проверь Player.log
Заголовок раздела «3. Запусти игру и проверь Player.log»Этап готов, когда в логе есть твой точный marker:
[My First Mod] LoadedЕсли строки нет, не отлаживай игровую механику. Проблема всё ещё в загрузке, компиляции или manifest.
Открой анализатор Player.log или гайд по ошибкам компиляции C#.
Следующий шаг
Заголовок раздела «Следующий шаг»Добавь одну механику из библиотеки рецептов. Оставь рабочий load-marker, пока мод не станет стабильным.