ADRIFT

Материал из IFВики
Перейти к навигации Перейти к поиску
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 (Adventure Developer & Runner - Interactive Fiction Toolkit) - интерактивная среда разработки и исполнения парсерных игр. Разрабатывается Кэмпбеллом Уайльдом с 1997 года. До версии 3 называлась Adventure Generator. Изначально распространялась на коммерческой основе, требуя покупки лицензии за 18,95 долларов для сохранения игры больше некоторого размера, но с версии 5.0 стала бесплатной, перейдя на финансирование с помощью пожертвований.

Принципы технологии

Платформа состоит из двух основных компонентов: 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.

Ссылки

См. также