-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
21L31 release
- Loading branch information
Showing
1 changed file
with
46 additions
and
59 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,104 +1,91 @@ | ||
# AmzPlayer | ||
|
||
AmzPlayer is A Modern Player for Zillions. See http://www.polyomino.com/amzplayer. | ||
AmzPlayer is A Modern Player for Zillions of Games. See http://www.polyomino.com/amzplayer. | ||
|
||
Zillions is a player of board games according to rules specified in a ZRF rules file. Mostly games are for two players, human against computer, although single player games (puzzles) are possible too. The Zillions rules file is highly flexible, convering games from simple tic-tac-toe (or noughts and crosses) through to chess, go and anywhere in between. Zillions can handle many games of chance, but they must games be of perfect information, so games with hidden cards like poker or bridge are not allowed. | ||
Mostly the games it can play are for two players, human against computer, with everything out in the open (no hidden cards). | ||
That includes a wide variety of games from simple tic-tac-toe (or noughts and crosses) through to Chess, Go and anywhere in between. | ||
It includes many games of historical interest, and games not widely known that are still very playable. | ||
Single player games (puzzles) are possible too. | ||
|
||
Zillions includes a powerful artificial intelligence, which provides a strong opponent across a wide range of games. AmzPlayer provides a modern player that can be published to just about any platform. | ||
The software includes a powerful artificial intelligence in the form of a computer opponent that can be a real challenge to beat. | ||
|
||
# Getting started | ||
# Getting Started | ||
|
||
- Download and unzip the software. See https://github.com/david-pfx/AmzPlayer/releases. | ||
- Change directory to Engine and run the AmzEngine.exe. There is a BAT file which does that. | ||
- This should start the player. Enjoy! | ||
- This should then start the player. Enjoy! | ||
|
||
# Using the Program | ||
|
||
This is the original Zillions with a modern player built on the Unity platform, and comes with the same standard library of 48 games and many variations. | ||
This version was built from a later unreleased version of Zillions 3.0 and there may be slight differences in behaviour. | ||
The Zillions Language Reference should be consulted for any questions about the language and how it works. | ||
Select a game from the select screen by clicking on a tile image. | ||
Additional games are found by choosing a different select variant. | ||
A large selection (thousands!) of user games can be downloaded by clicking on the user games tiles. | ||
If you see a game you like and click on it, it will be downloaded for you to play. | ||
|
||
Moves can be made in several different ways. | ||
- Click on an empty space to drop a piece there. | ||
If there is more than one possibility, then move the mouse cursor until you see the one you want before clicking. | ||
Alternatively hit a number key to pick that move. | ||
- Drag a piece to move it to space indicated by a flashing circle. | ||
If there is more than one possibility, then move the mouse cursor until you see the one you want before dropping. | ||
A preview of the piece to be dropped will appear flashing. | ||
- Drag a piece to move it to a space indicated by a flashing circle. | ||
- Click on a square a piece can move to. | ||
The piece to be moved and a flashing circle will preview the move. | ||
|
||
In each case, if there is more than one possibility, move the mouse cursor until the move you want appears in the window before clicking. | ||
Alternatively hit a number key to pick that move. | ||
|
||
Most other features should be self-evident, but please note: | ||
- A right click will provide additional information about available variants, rules for a game or piece. | ||
- The left and right arrows moves between variants; select New game or N to load the variant. | ||
- The board can be zoomed in and out using the scroll wheel or Ctrl+plus/minus. | ||
- A computer move can be interrupted by Escape or clicking on the board. | ||
- Flipping the board leaves you in control of all players. | ||
Play your move and then hit the computer play button to continue. | ||
- Any game in progress can be saved and restored by clicking a button. | ||
Save files are stored in the Saves directory, one per variant. | ||
Please send me the save file if you want to notify a problem. | ||
- User games are accessed by clicking on the Polyomino graphic. | ||
Edit User.zrf to get access to your games. | ||
Please supply the save file if you want to notify a problem. | ||
- Engine DLLs will only be found if they are located in the directory Engine or Engine/Engines (this is a Windows oddity). | ||
|
||
# Known problems | ||
|
||
The following are known problems which may be corrected in a later release. | ||
- The engine used for Reversi may not terminate until you tell it to play now. | ||
- Some problems with sounds have been fixed by substitution. | ||
It seems Unity cannot deal with a bit rate of 194 Kbps (default drop and capture). | ||
Unity cannot play MIDI files or some WAV files with a bit rate of 194 Kbps (default drop and capture trigger an FMOD error). | ||
- The supplied version of one game (Go Moku) did not compile. | ||
It was a new 3.0 version, and has now been replaced by the original 2.0 version. | ||
- Games that offer a very large number of move choices may not be playable with the current move selection mechanism. | ||
Please supply an example if you have one. | ||
Please supply an example if you find one. | ||
- Games with a very large board may not be playable, because the board can be zoomed but not scrolled. | ||
Please supply an example if you have one. | ||
- Some Zillions features including hints, printing, author mode and some display details have not been implemented (yet). | ||
Please supply an example if you find one. | ||
- Some Zillions features including printing, author mode and some display details have not been implemented (yet). | ||
- A few downloaded games will not play due to slight differences in the directory layout (image and audio files). | ||
In every case the file paths in the ZRF file can be edited to correct the problem. | ||
Please let us know if you find one. | ||
- A few downloaded games will not compile with this version 3.0. | ||
In every case the ZRF file can be edited to correct the problem. | ||
Please let us know if you find one. | ||
|
||
# Technical Details | ||
|
||
Zillions was released as a Windows program around 20 years ago. | ||
This is the original Zillions program heavily modified to run as a server engine, with an all-new Unity player. | ||
The original MFC user interface has been removed and replaced by an API, so it should play exactly the same as the v3.0 version from which it was derived. | ||
The essential features of the user interface have been re-created in Unity, but this has been a complex process, and there will be omissions and differences. | ||
Zillions was released as a Windows program more than 20 years ago, and abandoned by about 2005. | ||
This is the original Zillions code base heavily modified to run as a server engine, with an all-new Unity player. | ||
This version was built from a later unreleased version of Zillions 3.0, so there may be slight differences in behaviour. | ||
|
||
The Zillions Rules File is a programming language for specifying board games. | ||
While it can handle many games of chance, they must be games of perfect information, so games with hidden cards like poker or bridge are not possible. | ||
The Zillions Language Reference should be consulted for any questions about the language and how it works. | ||
|
||
# Release | ||
|
||
This is an alpha release, with some changes and limitations. | ||
It is intended to identify what still needs to be done. | ||
A later release will add core features and platforms. | ||
|
||
## Release 3.0-21i17 | ||
- piece sets, flip board, player selection | ||
- face and search results | ||
- saved preferences | ||
- better animations and move selection | ||
- solutions and progressive variants | ||
|
||
## Release 3.0-21h30 | ||
- adds save, restore, play now | ||
- adds user games | ||
- fix issues with undo/redo, new game | ||
- minor tweaks to scaling and user interface | ||
|
||
## Release 3.0-21h13 | ||
- fixes scaling of pieces smaller than position | ||
- fixes crash with dummy positions and animations. | ||
|
||
## Release 3.0-21g30 | ||
- fixes a problem with dependencies on .netcore 5.0 and C runtime v142, by including them in the release | ||
- adds move animation and sound (first iteration, needs work). | ||
|
||
## Release 3.0-21g12 | ||
- there is no move animation or sound (to be done) | ||
- no developer features (authoring mode, etc) | ||
- no support for saved games (to be done) | ||
- no specific support for user-defined games; for now, you can load your own games by editing or replacing the select.zrf file. | ||
- music files are in OGG format (MIDI not supported) | ||
- sound files are in WAV format, but some sounds will not play because they are in a format that Unity does not accept | ||
- image files are in either BMP or PNG | ||
- Zillons 3.0 introduced some new features to the ZRF format, which may introduce breaking changes (go-moku.zrf fails). | ||
This is a beta release, with some changes and limitations. | ||
It is intended to flush out bugs prior to a final release. | ||
|
||
## Release 3.0-21l31 | ||
- major new feature: add downloadable games | ||
- fix some Engine AI problems | ||
- minor tweaks, improved display and bug fixes | ||
|
||
# Licensing | ||
|
||
This is free software. You are free to download it, free to use it and free to create games with it, at no charge. | ||
In return, you are expected to provide feedback and report bugs by: | ||
* submitting an issue to https://github.com/david-pfx/AmzPlayer | ||
* email to david@polyomino.com. | ||
|