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

Рецепты

Начни с результата, который хочешь получить. Главные рецепты теперь имеют собственные короткие страницы: минимальный код → ожидаемый результат → частая ошибка → граница доказательства → полная справка.

HOW
Практика

Практические рецепты

Начни с результата. Рецепт покажет минимальный путь, ожидаемый результат, частую ошибку и только потом отправит в полный API.

task → recipe → evidence
Показано 12 из 12
MOD
NEW · НовичокVerified · WBML structure
Сделать первый минимальный NML-мод

`mod.json` + `Main.cs` + одна строка в Player.log. Без механик, пока каркас не доказал загрузку.

Открыть пошаговый рецепт →
SAVE
NEW · НовичокVerified · WBML-0001/0003
Сохранить число за королевством

Записать `int`, прочитать fallback и понять, что именно пережило save/load и restart.

Открыть пошаговый рецепт →
PARTY
MID · СреднийVerified · WBML-0003
Хранить данные конкретной партии

Typed party data, stable party ID, missing-party fallback и inactive/reactivate lifecycle.

Открыть пошаговый рецепт →
EVENT
MID · СреднийVerified · WBML-0004
Подписаться на политическое событие

Минимальная подписка, payload, unsubscribe и правило: не угадывай поля события.

Открыть пошаговый рецепт →
ACT
MID · СреднийVerified · WBML-0005
Создать action с condition

Зарегистрировать action, проверить `CanExecute`, выполнить handler и не попасться на same-ID replacement.

Открыть пошаговый рецепт →
LOG
NEW · НовичокVerified · browser-local
Разобрать Player.log

Сначала версии и сигнатура ошибки, потом конкретный troubleshooting-гайд — без отправки файла на сервер.

Открыть пошаговый рецепт →
UI
MID · СреднийCase study · TerraForge
Безопаснее клонировать vanilla UI

Почему активный clone падал в `Awake()` и как отделить визуальную структуру от опасных MonoBehaviour.

Открыть пошаговый рецепт →
WORLD
MID · СреднийVerified · TerraForge probe
Изменить высоту WorldTile

Писать в проверенное terrain-height storage и не повторять старую ошибку с `health`.

Открыть пошаговый рецепт →
TAG
NEW · НовичокVerified · WBML-0001/0003
Выбрать shared или private tag

Понять, когда тег должен быть виден другим модам, а когда принадлежать только вашему addon.

Открыть пошаговый рецепт →
LOOP
MID · СреднийVerified · Political World case
Разорвать recursive initialization

Реальный StackOverflow-кейс: getter и setter вызывают друг друга во время первой инициализации.

Открыть пошаговый рецепт →
POLL
MID · СреднийCase study · architecture guide
Уйти от polling к событиям

Когда событие лучше постоянного обхода kingdoms и как это упрощает addon.

Открыть пошаговый рецепт →
DIAG
MID · СреднийObserved · PW diagnostics
Читать диагностику Political World

Отличать validation, callback errors, warnings и наблюдаемое расхождение diagnostics bookkeeping.

Открыть пошаговый рецепт →
  1. Выбери самую похожую задачу, даже если формулировка отличается.
  2. Сначала заставь работать минимальную версию.
  3. Прочитай ожидаемый результат и частые ошибки.
  4. Только потом уходи в полный API/case study, если нужна глубина.
  5. Если твой runtime ведёт себя иначе, сохрани Player.log и считай это вопросом совместимости, а не поводом угадывать.