A2XT по-русски

Русскоязычное описание вселенной A2XT

Инструменты пользователя

Инструменты сайта


lunadll

Это старая версия документа!


LunaDll - хакерский мод-расширение для игры Super Mario Bros. X, созданный участником сообщества Talkhaus, Kil, с целью расширить возможности движка. Впервые представлен 9 мая 2013 года.

История

9 мая 2013 года, пользователь kil3 выпустил в свет хакерский модуль, который рашриряет возможности движка Super Mario Bros. X. Позже, этот модуль был назван «LunaDll» (имя происходит от названия уровня - «Luna Tower», который создал Kil для «Прелюдии Глупости»). С помощью DLL-инъекции, он заставляет игру загружать сторонний код из созданного им DLL-модуля. В ранних версиях имелось всего два перехвата: на загрузке уровня, и на каждый кадр во время работы уровня. Позже был реализовано собственный скриптовой язык, названный «Автокодом», который позволяет вносить различные модификации в игру.

LunaLua

В конце 2014 года, Kevsoft реализовал поддержку скриптовой системы на языке lua, из-за чего модуль был переименован в LunaLua, а встроенный язык «Автокод» был признан устаревшим.

LunaScript

Начиная с 30 января 2022 года, поддержка языка «Автокод» была реализована в последней тестовой сборке движка TheXTech в качестве штатной части движка с целью запускать старые проекты, созданные с использованием оригинального LunaDll, на движке TheXTech. В отличии от оригинального LunaDll, реализация на базе движка TheXTech (названная как «LunaScript») является встроенной и платформонезависимой частью самого движка а не сторонним модулем.

Все функции, работающие с памятью, эмулируются, что позволяет запускать игры даже на процессорах отличных от x86 и имеющих другой порядок байт (например, на PowerPC или на MIPS). Возможности работы с памятью сильно ограничены встроенными в движок таблицами правил, эмулирующих память движка Super Mario Bros. X.

Возможности

  • Расширение функционала уровней с помощью скриптов, позволяя вносить ранее невозможные изменения.
  • Упрощение задач, ранее считавшихся сложными.
  • Полный контроль над игрой.

Ограничения

  • Скриптовой язык является низкоуровневым, и менее гибок, чем другие языки. У него не было таких важных фнукций, как переменные.
  • Требует навыков прямой манипуляции с памятью.

Ссылки

lunadll.1683339349.txt.gz · Последнее изменение: wohlstand