Игра "Осиновый лес"

Weekend Game Language, WeekendInterpreter

Раз уж я создал какой-то язык программирования, то почему бы не написать на нём что-то по возможности интересное, заодно почувствовавать, каково это - писать на таком языке. Отвлекусь от алгоритмов и приемов написания интерпретаторов и погружусь в написание программы на созданном языке.

Это крошечная текстовая игра. По осиновому лесу идёт рыцарь. Он встречает разное, и ему нужно принимать решения, как поступить в той или иной ситуации. Тут нет музыки, нет графики. Просто язык в его нынешней реализации ничего такого не позволяет делать, впрочем, ничего не мешает добавить эти возможности. И если WeekendInterpreter - это Hello World в написании интерпретаторов, то "Осиновый лес" - это Hello World в написании текстовых игр плюс проба нового (очень старого, по сути) языка.

При создании репозитория на gitflic.ru потребовалось указать язык программирования. Но указать язык, на котором написана эта программа, а именно Weekend Game Language, мне не удалось. А жаль. Неужели я первый человек, который написал программу на собственном языке?!

Программа расположена здесь: https://github.com/weekend-game/aspenforest/ (EN) и здесь: https://gitflic.ru/project/weekend-game/aspenforest/ (RU).

Как запустить программу

Скачайте репозиторий на свой компьютер. Сначала нужно запустить интерпретатор языка. Для этого дважды кликните по WeekendInterpreter.jar или, если он не запускается, дважды кликните по WeekendInterpreter.bat. Если и последнее не запускает приложение, то скачайте и установите Java 11 или новее и снова попробуйте способы, описанные выше.

После того как интерпретатор запустится, откройте файл AspenForest.wgl и нажмите F5 для его запуска.

Как играть

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

Должен извиниться за то, что ответы придется указывать во всплывающем окне, которое будет всплывать в неудобном месте. Но такая реализация команды INPUT была самой простой.

Итоги

Забавно! Используя этот язык для написания пусть совсем несложной программы, начинаешь ценить то, что даёт программистам ООП и даже структурное программирование. Мне было интересно погрузиться на время в далёкое прошлое. Будто бы не программу писал, а принимал участие в испытании машины времени.