Zillions of Games

Zillions of Games — это коммерческая универсальная игровая программа, разработанная Джеффом Маллетом (англ. Jeff Mallett) и Марком Лефлером (англ. Mark Lefler) в 1998[1][2]. Спроектирована в основном для поддержки настольных абстрактных стратегических игр и головоломок.[3]

Zillions of Games

Стартовый экран Zillions of Games
Тип Универсальная игровая программа
Автор Джефф Маллет (англ. Jeff Mallett) и Марк Лефлер (англ. Mark Lefler
Разработчик Zillions Development Corp.
Операционная система Microsoft Windows
Последняя версия 2.0.1 (2003)
Лицензия проприетарная
Сайт zillions-of-games.com
Axiom Development Kit
Тип Универсальная игровая программа
Автор Greg Schmidt
Первый выпуск 2007-08-25
Последняя версия 1.51 (2015-11-02)
Лицензия проприетарная, freeware, исходный код de facto частично открыт
Сайт Страничка проекта в базе игр для ZoG

Правила игры описываются в специальном файл правил Zillion’а (англ. Zillions Rules File), имеющем расширение .ZRF, на языке, с синтаксисом, основанным на S-выражениях (то есть лиспоподобном).

Пример описания крестиков-ноликов на этом языке:

(define add-to-empty  ((verify empty?) add))

(game
   (title "Tic-Tac-Toe")
   (description "...")
   (history "...")
   (strategy "...")
   (players X O)
   (turn-order X O)
   (board
        (image "images\TicTacToe\TTTbrd.bmp")
        (grid
            (start-rectangle 16 16 112 112) ; top-left position
            (dimensions ;3x3
                ("top-/middle-/bottom-" (0 112)) ; rows
                ("left/middle/right" (112 0))) ; columns
            (directions (n -1 0) (e 0 1) (nw -1 -1) (ne -1 1))
        )
   )
   (piece
        (name man)
	(help "Man: drops on any empty square")
	(image X "images\TicTacToe\TTTX.bmp"
	       O "images\TicTacToe\TTTO.bmp")
        (drops (add-to-empty))
   )
   (board-setup
        (X (man off 5))
        (O (man off 5))
   )

   (draw-condition (X O) stalemated)
   (win-condition (X O)
	  	(or (relative-config man n man n man)
                    (relative-config man e man e man)
                    (relative-config man ne man ne man)
                    (relative-config man nw man nw man)
		)
    )
)


Игра распространяется как shareware. Демоверсию «Zillions of Games» можно скачать бесплатно, установочный файл занимает около 18 мегабайт, скачав его, вы получите 46 самых разных игр, у большинства из них которых есть по 5-10 вариантов, сильно отличающихся от основного. Ко всем играм прилагается описание правил и стратегии, можно включить подсветку допустимых ходов.

У демоверсии есть ряд ограничений, основное — это блокировка подключения дополнительных игр. После ввода регистрационного ключа можно подключить к игре один из нескольких тысяч доступных в исходных .ZRF кодах игр[4], или написать свою собственную. Поддерживается игра по сети.

Программа позволяет подключать сменные модули искусственного интеллекта (реализованные в виде .dll). Модуль по умолчанию автоматически выводит оценочную функцию из описанных правил игры: подвижности фигур, геометрии доски и цели, обеспечивающей выигрыш. При этом используются алгоритмы, обычные для компьютерных шахмат: альфа-бета-отсечение с упорядочиванием ходов, таблицу перестановок и т. д.[5]. Специализированный модуль используется для игры Го. В документации к программе описывается, как написать собственный такой модуль.

С 2007 года распространяется программируемый модуль (метаигровой движок) Axiom, рекомендованный к использованию на оф. сайте Zillions of Games, и позволяющий описывать всю игру, и правила, и (если есть такое желание или необходимость) соответствующий ИИ (полностью или частично), на диалекте языка forth[6] (ForthScript). Впрочем, поскольку Axiom — плагин к Zillion of Games, часть правил нужно продублировать в ZRF (такие, как базовая геометрия доски, игроки и перечисление фигур, без описания их ходов). Вся базовая логика Axiom такая, как алгоритмы искусственного интеллекта, используемые по умолчанию, реализована на этом диалекте Форта; весь форт-код axiom доступен в виде исходных тестов (файл axiom.4th содержит игровой движок, а файл CORE.4th — собственно реализацию языка Forth). Axiom может быть подключён, помимо ZoG, и к другим, специально написанным для этого программам. В составе дистрибутива Axiom Development Kit поставляется одна такая программа-клиент — AutoPlay.exe, предназначенная для автоматического тестирования Axiom-игр (без графического интерфейса пользователя).

Примечания

  1. David N. L. Levy. Robots unlimited (неопр.). A K Peters, Ltd., 2006.
  2. Holt Meyers. First Universal Board Game program released, PC Gameworld (18 декабря 1998).
  3. «Can Zillions Support This Game?» FAQ от Zillions Development Corp.
  4. Zillions of Games — Free Games for Download
  5. Available: Universal Game Engine email to comp.ai.games by Jeff Mallett, 10-Dec-1998.
  6. Axiom Development Kit

Ссылки

На русском
Из серии статей Валентина Челнокова на ХабраХабр
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.