Как делать модификации к Nuclear Throne Together


полу-отсылка к этому рисунку, что ссылается на легендарный комментарий

Как вы, возможно, знаете (или не знаете), одна из ключевых функций "Nuclear Throne Together" - возможность подгружать другие моды. Люди сделали некоторое их количество (старые моды; категория itch.io).

Эта запись содержит небольшую коллекцию ссылок и инструкций по данной теме.

Инструкция для пользователей GameMaker

Если вы уже ранее пользовались GameMaker'ом, NTT-моддинг практически не будет отличаться,

  • API NTT-моддинга использует тот же GML (с несколькими изменениями).
  • Каждый мод это просто набор скриптов в .gml файле. (как GM расширения).
    Потом игра вызывает различные скрипты из мода, зависимо от ситуации и типа мода.
  • Каждый мод имеет собственные скрипты, глобальные переменные и структуры данных. Если вам нужно взаимодействие с другими модами, просмотрите mod_ функции.
  • У модов общий доступ к игровым объектам, экземплярам, и ресурсам.
  • Ресурсы загружаются через код (sprite_add, sound_add, и т.д.).
  • В связи с тем, что динамически добавлять новые объекты в игру невозможно, для модов есть отдельный набор специальных объектов, вызывающих указанные скрипты на шаге/рисовании/прочем - см. CustomObject, CustomHitme, и т.д. Ещё есть набор функций для быстрой подвязки скрипта к определенному игровому событию/глубине (script_bind_). Зачастую вам не придется трогать ни то, ни другое, так как большинство типов модификаций покрывают часто используемые ситуации.

Использование GMEdit

Using GMEdit for Nuclear Throne Together mods

По возможности вы можете использовать GMEdit для моддинга Nuclear Throne Together - изначально программа разрабатывалась исключительно для работы с GMS1/GMS2 проектами, но теперь её можно использовать и для моддинга игр с GML-образными языками программирования.

После скачивания-распаковки программы (она бесплатная и все дела) вам нужно будет открыть меню - Preferences - GML dialects directory (в самом низу), и распаковать папку ntt из данного архива в открывшуюся папку "api". Перезагрузите GMEdit кнопкой "Reload GMEdit", что находится прямо под "GML dialects directory".

Теперь вы можете перетянуть файл main.txt (если такового нет, создайте пустой) из папки вашего мода на окно GMEdit, и это откроет папку как мод-проект, отображая NTT-специфичный синтаксис, авто-завершение, и прочее;

Если вы добавляете/удаляете файлы в папке, нажмите Ctrl+R для обновления списка файлов в GMEdit.

Документация

Следующие ссылки могут быть полезны

  • NTT-Scripting
    Поясняет NTT-специфичный синтаксис и большую часть NTT-функций.
  • NTT-Objects
    Полный список объектов Nuclear Throne и их переменных.
  • NTT-Sprites
    Полный список "встроенных" спрайтов доступных в NTT, с миниатюрами.
  • BitBucket вики
    Использовалась до появления NTT-Scripting. Всё ещё имеет пару полезных табличек данных.
  • %LOCALAPPDATA%/nuclearthrone/api/api.gml
    Создается после введения /gmlapi в чат. Содержит полный список поддерживаемых функций с примечаниями.
  • Официальная документация GameMaker
    Если чего-то нет в документации NTT, это может быть стандартным функционалом GameMaker. Если и там нет, гляньте GMS1 документацию.

В целом, не забывайте, что различий между GM и NTT не так уж и много, так что обычные уроки и материалы по GameMaker зачастую применимы к NTT.


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

Похожие записи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.