[RGame Engine] Maze - Сетевая игра (лабиринт)

[RGame Engine] Maze - Сетевая игра (лабиринт)

roxblnfk
Копия моей статьи с ныне мёртвого develnet.ru
В начало


До этого я писал всякую непонятную хрень под группой статей "RGameEngine", которую мало кто читал, ещё меньше кто понимал и, в итоге, ни кому это не пригодилось вообще :) И вот, наконец, выкладываю играбельный результат! Это не то, к чему я стремился в той или иной степени, но как промежуточный вариант, имеет место быть.

Игровой алгоритм

Запускается уровень. Задача игроков: нужно первым дойти до финиша (желтой ячейки). После факта финиширования запускается обратный отсчёт, по окончании которого меняется карта. Все игроки получают коды карты, генерируют её (на это по умолчанию отводится 3 секунды, должно хватать всем), после чего все игроки появляются в одной точке и снова бегут к финишу :)

Особенности

  • любой игрок может исчезнуть, стать инкогнито (клавиша пробел). Например, чтобы скрыться от преследования, или втихаря обогнать всех.
  • кто доходит до финиша, тому предоставляется возможность летать :) Клавиши движения превращаются в рычаги управления вектором ускорения своего движения.
  • каждый уровень по возможности сопровождается случайной картинкой с сервера ob5.ru. По умолчанию картинки в среднем качестве сохраняются в папку Pictures
  • игра написана на движке RGameEngine. Первичный алгоритм генерации уровней написал hichkok, за что ему выдвигается особая благодарность, алгоритм хороший, но вышло говнокодисто :)

Перспективы развития

  • любой участник сети develnet может написать свой адекватный генератор уровней, который я подгоню под игру (нужно уточнить все условия для этого);
  • можно сделать расчёт нескольких равноудалённых от финиша респаунов, но для этого нужно бы другой генератор уровней, тот что сейчас мало для этого подходит;
  • добавление возможности админить сервер;
  • очки, статистика, базы игроков...

Запуск и настройка сервера

Запуск сервера производится файлом "START SERVER!.bat"

Настройка: в папке /server/files лежит файл options.txt, открываем его текстовым редактором и правим.

Список доступных параметров с их значениями по умолчанию и расшифровками:

name=The First Maze Server - имя сервера, отображаемое в публичном списке серверов
port=7931 - порт сервера
addr=0.0.0.0 - занимаемый локальный адрес (по умолчанию адреса всех интерфейсов)
wdth=20 - ширина карты
hght=20 - высота карты
finishtime=10.0 - время с момента первого финиширования до смены карты
loadingtime=3.0 - время, дающееся клиентам на отрисовку карты
maxplayers=32 - ограничение по кол-ву игроков
maxconnections=300 - бессмысленный параметр
globallobby=1 - регистрировать сервер в публичном списке серверов


Лучше не удалять конфиг-файл.

Мой отзыв

Несмотря на свои же ожидания и прогнозы, игра получилась довольно забавной! В этой игре вы можете продемонстрировать не только скорость прохождения головоломки типа лабиринт, но, также, можете публично затроллить оппонентов, коварно <s>наяб</s> обманывать, направляя их на путь ложный. По моим наблюдениям, новички (и не только) обладают развитым стадным инстинктом, профессионалы же сей игры более индивидуальны и умеют управлять массами, ясно предвидеть исходы выбранных путей.

Замечания

Уровни 100х100 генерируются слишком долго, что даже игроки вылетают по таймауту на среднестатистических компах. Хоть такие уровни и не популярны, но это всё-равно не очень хорошо…

При плохом интернете наблюдаются лаги и задержки

Скачать

v1.1.0.0+ (клиент и сервер) https://files.webmoney.ru/files/5o9xOK15/link

v1.0.1.0 (клиент и сервер) https://files.webmoney.ru/files/CHqON84L/link

vcredist (если требуется)

Страничка Maze PHP

GitHub

Report Page