Лабиринт

В прошлом семестре у нас был предмет «Программирование игр», и в качестве курсового проекта надо было сделать какую-нибудь простую игру. Я решил сделать что-то нестандартное и не использовать 3D-движки (например, Unity, который многие, в том числе и я, использовали для лабораторных). Вместо этого я сделал некоторое подобие старых текстовых квестов, где взаимодействие с игровым миром осуществляется путём ввода команд в командной строке. При этом в игре вполне может присутствовать обширный игровой мир, проработанные персонажи и прочие интересные вещи. Наиболее известные игры такого типа выпускались компанией Infocom в 1980-х годах, самая известная серия — Zork.

Правда, в моей игре обширного игрового мира нет, но зато есть случайно генерируемый лабиринт с настраиваемым количеством комнат и ключей (задаётся игроком при старте). Цель игры — найти выход. При этом в некоторых комнатах могут встречаться некоторые неприятные сюрпризы (в маленьких лабиринтах — реже, поскольку шанс фиксирован для каждой комнаты: больше комнат — больше вероятность, что наткнётесь на что-нибудь нехорошее), и можно даже проиграть, если повстречать их слишком много. Спойлерить не буду. После генерации лабиринта можно получить список доступных команд командой «help», а справку по отдельной команде — написав после «help» через пробел имя команды (часть команды, заключённую в квадратные скобки, вводить необязательно).

В общем, рассказывать много не буду, лучше сразу дам ссылку. Если вы её ещё не заметили выше, то вот:

labyrinth.player701.ru

За веб-интерфейс к игре спасибо LPDem’у. Оффлайн клиент можно скачать здесь, он только для Windows, для работы нужен .NET Framework более-менее свежей версии. В клиенте используется архитектура плагинов: предполагалось, что игры можно распространять в DLL-ках и подключать к нему, но кроме «Лабиринта» и некоторых тестовых модулей я больше ничего не писал (пока?).

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

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *