Перейти к содержимому

Первый минимальный NML-мод

✅ Working WBML structureWorldBox 0.51.2 build 719NeoModLoader 1.2.0.1

Заставить NeoModLoader загрузить крошечный мод и вывести одну однозначную строку в Player.log.

Пока не добавляй UI, Harmony-патчи, сохранения и игровую логику. Сначала докажи, что каркас вообще загружается.

Держи mod.json и Main.cs вместе внутри одной папки мода — такого же типа, который NML использует для других установленных модов. Проект ещё не подтвердил WBML-тестом один универсальный путь установки NML для всех setup, поэтому мы специально не выдумываем здесь Windows path. Если у тебя уже есть рабочий NML-мод, его расположение — самый безопасный локальный ориентир до отдельного lifecycle/setup исследования.

MyFirstMod/
├── mod.json
└── Main.cs

Используй генератор стартового мода, если не хочешь писать manifest вручную.

Минимальная форма, которую использует рабочий генератор:

{
"name": "My First Mod",
"GUID": "YourName.MyFirstMod",
"author": "YourName",
"version": "0.1.0",
"description": "My First Mod",
"targetGameBuild": 719,
"Dependencies": [],
"OptionalDependencies": [],
"IncompatibleWith": []
}

Выбери GUID один раз и не меняй его после публикации.

using NeoModLoader.api;
namespace YourName.MyFirstMod
{
public class Main : BasicMod<Main>
{
protected override void OnModLoad()
{
LogInfo("[My First Mod] Loaded");
}
}
}

Этап готов, когда в логе есть твой точный marker:

[My First Mod] Loaded

Если строки нет, не отлаживай игровую механику. Проблема всё ещё в загрузке, компиляции или manifest.

Открой анализатор Player.log или гайд по ошибкам компиляции C#.

Добавь одну механику из библиотеки рецептов. Оставь рабочий load-marker, пока мод не станет стабильным.