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

Отладка — первые проверки

Не начинай с случайного переписывания кода. Сначала определи, что именно ты наблюдаешь.

0NML не видно

Оставайся на уровне loader/setup. Игровой API не починит loader, который вообще не запустился.

Проверить Player.log →
1C# compile error

Используй точный код CSxxxx и сообщение. Сначала компиляция, потом runtime.

Ошибки компиляции →
2Мод загружен, marker нет

Сравни каркас с минимальным рабочим рецептом и посмотри соседние строки loader.

Минимальный мод →
3Marker есть, механика не работает

Entry path уже запускался. Уменьши тест до одной механики и её состояния/объектов.

Выбрать симптом →
4Появился exception

Начни с первого полезного exception и call chain, а не со всех красных строк файла.

Разобрать сигнатуры →
5Работает до reload/restart

Считай это persistence/lifecycle задачей, пока evidence не показал другое. In-memory state не обязан переживать загрузку.

Проверить границы →

Хороший reproduction содержит:

точные версии игры / NML / зависимостей
минимальное нужное состояние мира/save
точные шаги
ожидаемый результат
фактический результат
релевантный кусок Player.log

По возможности убирай несвязанные системы. Если после удаления чего-то проблема исчезла — это тоже полезное evidence.

Network/TLS и fallback-library сообщения могут встречаться рядом с проблемой и не быть её причиной. Анализатор отдельно помечает известный шум, но даже найденная сигнатура ещё не доказывает root cause.

Дальше: открыть Troubleshooter от симптома.