ADRIFT
ADRIFT (Adventure Developer & Runner - Interactive Fiction Toolkit) - интерактивная среда разработки и исполнения парсерных игр. Разрабатывается Кэмпбеллом Уайльдом с 1997 года. До версии 3 называлась Adventure Generator. Изначально распространялась на коммерческой основе, требуя покупки лицензии за 18,95 долларов для сохранения игры больше некоторого размера, но с версии 5.0 стала бесплатной, перейдя на финансирование с помощью пожертвований.
ADRIFT | |
Тип | Парсерные платформы |
---|---|
Разработчик(и) | Кэмпбелл Уайльд, русский локализатор версии 3.9 Лариса Лисова |
Языки интерфейса | Английский |
Операционные системы | Браузер, Windows, macOS, GNU/Linux, Android |
Написано на | Visual Basic .NET (до версии 5.0 на Visual Basic) |
Язык разработки | Визуальный редактор |
Читаемые форматы файлов | Игры ADRIFT (*.taf;*blorb), Резервные копии проекта ADRIFT (*.bak), Файлы модулей ADRIFT (*.amf) |
Создаваемые форматы файлов | Игры ADRIFT (*.taf;*blorb), Резервные копии проекта ADRIFT (*.bak), Файлы модулей ADRIFT (*.amf), Исполняемые файлы Windows (*.exe) |
Дата первого выпуска | 16 февраля 1997 |
Последняя версия | 5.0 release 36 |
Дата последней версии | 28 августа 2020 |
Лицензия | Freeware |
Сайт | adrift.co |
Содержание
Принципы технологии
Платформа состоит из двух основных компонентов: ADRIFT Generator и ADRIFT Runner:
- ADRIFT Generator - это интерактивная среда разработки, в которой игра пишется путём взаимодействия с визуальным редактором без необходимости писать программный код. Разработчик через графический интерфейс добавляет все игровые элементы (локации, объекты, персонажи, действия и события). Вставка новых элементов осуществляется из выпадающих меню, так что разработчику нет необходимости запоминать какие-то управляющие конструкции или команды. Содержимое проекта логически структурируется, а взаимосвязи между различными элементами визуализируются специальным образом, например, карта локаций.
- ADRIFT Runner - это интерпретатор для воспроизведения игр, написанных с помощью ADRIFT Generator. Помимо классического парсерного интерфейса с телетайпным окном вывода и строкой ввода команд, он имеет ряд дополнительных возможностей, в частности, интерактивную карту игрового мира, показывающую места, в которых уже побывал игрок.
ADRIFT Runner может распространяться как отдельное приложение, например, вместе с файлом игры. Сам файл игры (*.taf) может быть зашифрован средствами ADRIFT Generator, чтобы скрыть его содержимое. Платформа также позволяет скомпилировать игру в исполняемый файл Windows (*.exe).
Переносимость
Изначально платформа ADRIFT (Adventure Generator) разрабатывалась только под операционные системы Windows. До версии 4.0 включительно ADRIFT Runner существовал исключительно в версии для Windows, так как был написан на Visual Basic, жёстко привязанном к WinAPI.
Впрочем, проблема запуска ADRIFT-игр на других системах частично решалась за счёт альтернативных интерпретаторов, не являвшихся полным аналогом ADRIFT Runner, но всё же позволявших воспроизвести большинство игр, хотя и без всех интерактивных возможностей. В частности, сначала появился интерпретатор JAsea, а затем он был переписан в рамках проекта другого интерпретатора SCARE, который может использоваться на таких системах как Windows, macOS, GNU/Linux и DOS. Кроме того, ограниченное воспроизведение ADRIFT-игр поддерживает мультиформатный интерпретатор Gargoyle.
На устройствах под управлением Android игры ADRIFT могут быть запущены при помощи интерпретатора Fabularium.
27 сентября 2011 года появился официальный интерпретатор WebRunner, позволяющий играть в ADRIFT онлайн в браузере. Ну а с выходом ADRIFT 5.0 появилась версия ADRIFT Runner для macOS и GNU/Linux, правда требующая для запуска фреймворк Mono, так как система была переписана на Visual Basic .NET.
Разделение на официальные и неофициальные (альтернативные) интерпретаторы для ADRIFT является довольно строгим, так как исходный код платформы остаётся закрытым, поэтому у неё есть конкретный разработчик в лице Кэмпбелла Уайльда.
Основные возможности
Разработка или редактирование игры с помощью Adrift Generator предполагает работу в удобной интерактивной среде. Пользователю доступно несколько рабочих окон:
- Rooms: локации игры (их краткие и полные описания, пути между ними и т.п.);
- Objects: объекты игры, статические или динамические (портативные). Разумеется, они также имеют описания и специфические свойства (контейнер, поверхность, может быть надет на себя, съедобен, может быть оружием и т.п.), а также такие специфические атрибуты, как размер и вес.
- Tasks: собственно команды, определённые пользователем. Здесь можно задавать их связь с объектами, и вызванные ими действия.
- Events: позволяет задавать асинхронные (не связанные с действиями пользователя) события игры.
- Characters: не главные персонажи (НГП) игры. Здесь задаются алгоритмы их перемещения, их действия, общение с ними.
Хотя ADRIFT является платформой без программирования, некоторые базовые вычислительные и программные возможности в неё заложены (в любой текст, выводимый программой, можно включать вычисляемые выражения, в которых допустимо довольно много полезных операций).
В версии 5.0 добавлен целый ряд новых возможностей, работающих в объектно-ориентированной парадигме, что приблизило функциональность ADRIFT к более развитым парсерным платформам, основанным на прямом программировании игрового мира.
Ещё одна существенная особенность ADRIFT — встроенная боевая система, позволяющая легко программировать интерактивные баталии в стиле ролевых игр — у главного героя и любых НГП могут быть разнообразное оружие, броня и пр.
Обычный недостаток всех интерактивных систем с визуальным редактором — отсутствие исходного текста программы (из-за чего невозможно работать с ним внешними средствами, повторно использовать фрагменты программного кода, коллективно разрабатывать программу и пр.) В ADRIFT этот недостаток частично преодолён — имеются средства импорта и экспорта модулей программы в виде исходного текста (файлы .amf).
Интернационализация и русская версия
В ADRIFT заложены средства интернационализации, хотя и довольно примитивные. Они основаны на простой подстановке текстовых строк. Обычно, в виде ALR-файла, поставляемого вместе с игрой, задаётся набор текстовых подстановок, действующих на любой выводимый программой текст (вроде «Also here is|Здесь же»).
Существует русская версия ADRIFT 3.9, локализованная Ларисой Лисовой. Качество перевода хорошее, если сделать скидку на труднопреодолимые ограничения самой системы.
Готовой локализации версии 5.0 в открытом доступе нет, но общие принципы её адаптации для русского языка описаны Андреем Репиным в его блоге, а также им выпущена русская игра "Тайна затерянного храма" на ADRIFT 5.0.