"Can
Zillions Support This Game?" FAQ
Q:
What kind of board games are easiest to program in Zillions?
Abstract,
perfect-information, turn-based, board games such as Chess, Checkers,
and Othello, are easiest. 2-D manipulation puzzles such as mazes,
the "15" (sliding tiles) Puzzle, and Peg Solitaire puzzles
are also very easy. These are games where one or more players move
or drop pieces on a board of any topology. A full list of the games
and puzzles implemented on the CD-ROM can be found here. This will give you a good idea of what can be achieved.
Zillions'
rules language contains many constructs, such as loops and "if"
statements, borrowed from traditional programming languages. This
makes Zillions very powerful and flexible. In fact, the user interface
used in Zillions for selecting games is itself implemented as a
Zillions game. When you are clicking a button to choose a game you
are actually making a move in a "game selection" game!
Q:
What kind of board games are hardest to program in Zillions?
Zillions
doesn't currently support:
- games
whose object is to connect sides, i.e. "connection games"
such as Hex, the Game of Y.
- games
that use a lot math in their movement or scoring (other than merely
counting up pieces on the board)
- positions
that have multiple pieces on them simultaneously
- pieces
that occupy multiple positions simultaneously
- cards
In
some cases it is possible to "kludge" together solutions
to things that Zillions doesn't directly support. For example, even
though Zillions wouldn't easily support a game with multiple stones
per position, it may be possible to define a different type of piece
for every possible number of stones that may exist on a given position,
i.e. a one-stone piece, a two-stone piece, etc.
Zillions
can't be made to support arcade (time-dependent) games like Pacman,
text adventure games, and other types of games that are far removed
from board games.
Q:
Can Zillions play dice games?
Yes.
Though there is no direct support for dice per se, Zillions supports
randomness through the use of a hidden, "random player"
who chooses between his moves at random. One of the Zillions games
provided on the CD-ROM, Senat, is a backgammon-like game where moves
are determined via a die roll. The Zillions CD includes bitmaps
for standard dice.
Multiple
dice can theoretically be achieved through successive turns of the
random player. Zillions doesn't support math/arithmetic in rules
files, so this will limit what you can do with the results of dice
rolls. For example, a game like Yahtzee wouldn't work. Exactly how
easy it is program a dice game will depend on the game
Q:
Can Zillions play card games?
In
theory, but in practice this is hard, because Zillions was developed
for board rather than card games, it doesn't have any direct support
for card games and doesn't know anything about face-down (hidden)
objects, hands, dealing, suits, runs/flushes/melds, etc. Also, it
doesn't have the numerical flexibility to handle scoring of hands.
Someone has programmed the solitaire game Free Cell in Zillions
(as if it were a board game), but games like Bridge are out of the
question.
Q:
Can Zillions support my own chess variant (ie different pieces,
and different board shape)?
Very
probably, Zillions has very good support for defining new pieces
and new boards. In fact, we built all the chess
variants included on the CD-ROM just like you would, using Zillions.
Q:
Can Zillions support three dimensional boards?
Yes.
It even supports higher dimensional boards than 3, though so far
we've only programmed 1-dimensional (e.g. Turning Coins), 2-dimension
(e.g. Chess), and 3-dimensional (e.g. 3-D TicTacToe) games. Zillions
allows you to define as many positions as who want wherever you
want on the screen and linked in whatever way you want (even one-way
trapdoors).
Q:
Could Zillions be taught to play...
...Abalone?
From what I remember of Abalone's rules I see no reason why it couldn't
be implemented. In fact, check out the Jens Markmann Page link on
our Other Sites page, Jens has already
programmed it!
...Quarto?
I believe so -- from what I remember of Quarto's rules, it's like
a multi-dimensional TicTacToe, and we already ship a 4x4x4 TicTacToe
on the CD.
...Terrace?
Yes, in fact we programmed it in Zillions for fun one day.
...Monopoly?
Monopoly is a bit complicated for a few reasons. Zillions is not
designed to handle arbitrary numerical amounts that you'd need in
order to handle the money. Zillions has no direct support for stacks
of cards, and it would be very difficult to try to implement all
the rules on all those cards. Try board games that are more "abstract".
Q:
What kinds of games does the Zillions AI play well and what
kinds does it play poorly?
Zillions'
internal AI is basically a classical, brute-force, tree-search engine.
For simple games like TicTacToe, Zillions can figure out every possibility
in a fraction of a second and play perfectly! Zillions plays well
in games like Checkers where it can find good tactical possibilities
by looking ahead. Zillions doesn't play as well in games with huge
"branching factors" (large number of moves available to
play) such as "Shogi" with pieces in hand. This is a well-known
syndrome of game search engines that AI researchers are currently
grappling with.
Didn't
find the answer to your question? Email
your question to Zillions Development.
|