[logo]

Beaver's Engine

Тут можно выбрать бесплатный движок для квестов типа "Дозор" ("Dozor"), "Схватка" ("Encounter") и похожих интерактивных игр.

Beaver's Engine

Описание

Данные по состоянию на ноябрь 2018 года.

Движок создавался с нуля начиная с 2010г с использованием многих идей из Beavers Encounter, в конце 2014г основная ветка переведена в режим поддержки. Далее цитата отсюда:

Когда Beaver's Engine задумывался, ставилась цель преодолеть основные проблемы его предшественников-аналогов:

  • неуправляемость при проблемах со связью или иных игровых форс-мажорных обстоятельствах
  • сложность развертывания

Кроме того, хотелось сделать новый движок в целом не менее функциональным, чем известные аналоги. Сейчас исходя из опыта внедрения Beaver's Engine, ясно, что решить эти задачи удалось только частично.

Несмотря на широкое распространение Apache/PHP/MySQL развертывание Beaver's Engine все-равно требует некоторого опыта создания и администрирования web-сайтов. Как минимум понимания, какие ошибки связаны с web-сервером, какие с PHP, а какие - с MySQL.

Ценой высокой надежности движка относительно происходящего во внешнем мире стала достаточно неочевидная процедура проведения игры. Движок является пассивным узлом, а динамику в игре создает внешний «таймер» - страница автопересчета состояния, которую в явном виде должны запустить сами организаторы. Это позволяет игре автоматически останавливаться при потере связи с игровым сервером и, после устранения проблем, продолжаться в большинстве случаев без серьезных последствий. Как следствие, организаторы аналогично могут «ставить игру на паузу». Хотя на этом моменте заострено внимание в инструкции, все-равно самым частым вопросом после запуска игры остается «почему не выдаются задания?» Кроме того, возможность «заморозки» игры в произвольный момент требует полного пересчета ее состояния при каждом действии как движка, так и игроков, что дает достаточно высокую нагрузку на хостинг. Это особенно актуально для недорогих или бесплатных хостингов, на которых обычно и запускают Beaver's Engine.

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

Кроме того, сама техническая платформа, на которой создан Beaver's Engine, - PHP 5.2 + Symfony 1.4 также сильно устарела.

В связи с этим, дальнейшее развитие Beaver's Engine в его текущем виде выглядит нецелесообразным.

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

К оглавлению

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

В настоящий момент движок технически устарел, неудобен с точки зрения пользовательского интерфейса, а также дает большую нагрузку на хостинг.

Несмотря на это он до сих пор является практически безъальтернативным вариантом, если вы хотите разместить квестовый движок на собственном хостинге.

Движок можно использовать бесплатно, разместив на главной странице видимую индексируемую ссылку на сайт beavengine.ru.

Техническая поддержка платная, см. группу проекта.

К оглавлению

Исходные коды

Исходные коды размещены на BitBucket, при этом нужно брать ветку "support", так как ветка "default" относится к Beaver's Engine Plus.

Для развертывания требуется PHP5 выше 5.2, Apache с модулем mod_rewrite, MySql любой актуальной версии или аналог. Также потребуются исходные коды фреймфорка symfony версии 1.4.x.

К оглавлению

Функционал

Подробно описан в инструкции пользователя.

В качестве основных отличий этого движка от аналогов, существовавших на момент начала разработки, можно перечислить следующее:

Также нужно учитывать следующие особенности движка (кто-то может счесть их недостатками):

К оглавлению