Zillions' Version History
to go to the new features page
- Updated so you can't go the same direction twice in a row.
multiple problems with calculating the value of pieces.
and improved detection of negative-value pieces. [Affected CHESS:LOSING
bug (introduced into v1.3): Buttons in "Choose Move" dialog were
bug (introduced into v1.2.1): Search did not score neutral player
goals correctly [Affected HIP:LINE HIP nxn]
bug: Wasn't restoring hidden state of the toolbar, search progress
bar, and moves list when Zillions was launched by opening a file.
bug: TouchSense support was turned off when Zillions was launched
by opening a file.
bug: If Zillions was passed a bad command line, the Open File
dialog would be incorrectly set up.
bug: For one of the move primitives, a move with a dummy piece
would still show on the scoresheet.
closing of the main window when the "can't find the required rules
file" dialog is up.
If a variant contains multiple grids, they are now linked up only
with the directions they define, not with directions defined in
Dummy pieces with bitmaps are now drawn again. (back by popular
Language Reference improved. (new keywords, cross-links; 10 pages
- Board Location Labels
- Now shown while F6 key is held down. New Feature!
- Font sizes changed to be more readable.
- In situations where a multi-column menu would be big, displays a popup menu with cascading submenus instead. (Some versions of Windows won't display anything if a multi-column menu won't fit on the screen.)
- New chess variant bitmaps added: New Feature!
- FAIRY CHESS - Labelled fairy pieces with letters to differentiate them. (See images\Fairy_Chess\)
- Added 9x9 chess board
- Re-order sides by turn order (rather than the reverse order)...
- In Choose Sides dialog.
- In right-click menu.
- Improvements to showing/hiding of toolbars/windows:
- Restores shown/hidden states of toolbar, status bar, search progress bar, and moves list from the last time Zillions was run.
- Restores shown/hidden state of moves list when you go to a Select Screen and then to another game.
- Allows you to change the View:Chat setting when in a select screen.
- Improvements to sizing of windows:
- Auto-resizes main window better after docking a toolbar vertically.
- Choose Move dialog widened.
- AI/Engine improvements
- Does a better job at keeping checkmateable pieces safe
- Tries to keep a piece safe if a goal of the game is to capture that piece.
- Scoring improvements (which discourage moves like R-N1 in Chess)
- Speeded up search for games with the "attacked?" keyword or "checkmated" goal.
- Speeded up first ply move generation for games with a "checkmated" goal
- Fixed assumptions that checkmating was a win for the checkmating side.
- Fixed bug in search dealing with count conditions where the result is a tie [4x4 Torus Reversi]
- Fixed problem searching games 100 or more moves deeply
- Fixed search crash if the game has a piece that can do an infinite number of partial moves in a row
- Fixed search crash if the game has a large number of "?" player moves in a row
- Improvements for finding files
- If a rules file can't be found, you are prompted to open the correct file. This works with both ZRFs specified in saved games and in net play. New Feature!
- If the rules file can't be found in the path specified in a saved game, will look in current directory
- The "open" command now searches for the new ZRF relative to the current directory (of the selection screen ZRF) in addition to the rules folder of Zillions.exe.
- If the path specified for a solution is incorrect, will look in current directory and also a "Solutions" directory to find it.
- Allows ".." in relative paths.
- Support for forward slashes as directory separators in paths.
- Fixed overflow problems:
- Previously the node count rolled over after 2,147,483,648 positions had been searched.
- Fixed some problems if the system has been running for 49.71 days.
- Fixed notation for dummy objects:
- Movelist would display notation of change-owners on dummy positions.
- Situation when a displayable change-owner/change-type followed a dummy change-type/change-owner.
- JUNGLE CHESS - The Lion was incorrectly labelled "Cat" in the status bar help
- Now supports multiple "grid" statments in a "board" definition. New Authoring Feature!
- Allow relative-config goals like: (not stone) n stone n stone to be triggered even on the bottom row (even though there is no position which is south of the bottom stone). Updated GO-MOKU games accordingly.
- Fixed bug with the matching of the relative-config goal.
- Fixed bug: support moves that have a "change-owner" as the key move primitive.
- Avoid showing animations involving dummy pieces or dummy positions.
- More accurate error detection when a ZRF tries to move a piece from an empty position.
- Improved documentation.
- Support for more than 9 arguments in a macro ("p" versions only; other 1.2+ versions already had this feature).
- Fixed bug: Parentheses or semi-colons in strings within macro definitions could cause problems. [Affected CHESS SWAPPERS]
- FANORONA - Stalemate is now counted as a loss.
- No longer values pieces on "dummy" positions.
- Better supports running when registry keys are absent.
- Now ignores random ("?") players when determining whether all sides have passed.
- Fixes bug: Eliminated some crashes when loading ZRFs that contain, after macros are expanded, a huge number of symbols.
- Now keeps the most-recently-used file list enabled when no ZRF is open.
- Added TouchSense (force-feedback) effects to feel all the positions of the board if the game has only drops and the Feel Select Screen option is selected. Example: Go-Moku.
- Language Reference updated.
- The ZRF format was made more flexible about allowing macro arguments within symbols, e.g. $1_$2 is now allowed.
- Fixed bug: When playing over the net, could occasionally miss a move if two messages were received really close together.
- The move list's horizontal scrolling area now grows and shrinks dynamically to better accommodate ZRFs with very long moves.
- Fixed bug: Could crash if there were more than 8000 move primitives in move list.
- Fixed bug: Could crash on reading ZSGs with extremely long moves.
- If a relative path to an engine is specified in the ZRF, now searches relative to the ZRF in addition to relative to Zillions.exe
- Fixed bug: "include" used in ZRF would sometimes not find Included file.
- Fixed bug: Didn't handle maximal-captures correctly in games with partial-moves having no move-type or games where partial moves could lead to non-partial move continuations.
- Fixed bug: Could crash if the ZRF tried to set-position-flag on a non-existent position (i.e. used a direction argument on a position that didn't have a link in that direction).
- Fixed bug: Could crash if ZRF tried to generate a move from an empty square.
- Fixed bug: When a select screen was enlarged, the TouchSense effects for the select screen were incorrectly placed.
- Improved Zillions error messages for engine DLL errors.
- New "hot keys": Start Thinking (F5) and Move Now (Escape) New feature!
- Fixed bug: When searching games with 3 players, the goals were incorrectly scored.
- Fixed problems when searching in games with random players.
- Moves by random players are faster.
- Now detects if the setup tries to put more than one piece on the same square and puts up a warning message.
- FANORONA - Fixed incorrect announcement of the result when a side loses all their pieces.
- Fixed bug: (notation <string>) wasn't working correctly, except in select screens.
- Fixed bug: When looking for a .MID file now can find it if it lies outside of Zillions' directory structure.
- Fixed bug: If you had position labels and animation both turned on, Zillions would not erase the "green circle" after a move in games where you choose between moves from a popup menu. [Affected ORDER AND CHAOS, BEER SQUARE]
- Fixed bug: Would crash if you edited the board in the middle of a series of partial moves.
- Fixed bug: Could crash if a move was added after the "from" square was set to an unoccupied position.
- Fixed bug: Having unmatching parentheses in a comment within a macro definition could cause a ZRF not to be loaded.
- Doesn't shrink hand cursor if the board is enlarged.
- Fixed bug: On some systems the Choose Sides dialog would not work consistently.
3 New Game Variants Added More games!
- ENGLISH SOLITAIRE: ARROWHEAD
- ENGLISH SOLITAIRE: CROSS
- FRENCH SOLITAIRE: HAT
- Improved TouchSense(TM) support for force-feedback mice such as Logitech's iFeel Mouse and iFeel MouseMan. New feature!
- Help updated and converted to HTML Help format.
New Features For Game Authors
- Syntax reference fully revised and updated. Converted to HTML Help format.
- New menu item under Help menu to bring up Language Reference.
- NEW SYNTAX
- New syntax: (go last-from) to jump directly to the "last-from" position New authoring feature!
- New syntax: (go last-to) to jump directly to the "last-to" position New authoring feature!
- New syntax (for International Checkers). In your ZRF you can add this statement at the main level of the game:
in order to force players to make moves resulting in the most partial moves. New authoring feature!
- PLUG-IN ENGINES
- Plug-in DLL engines can now be used to generate moves.
- Plug-in DLL engines can now determine the end-of-game and result. It will also be consulted when both sides pass.
- More verification of a plug-in DLL engine's returned move is done to make sure it's legal.
- If a plug-in DLL engine's returned move can't be matched to the known legal moves, Zillions tries matching just the "key" move. For example, if the engine implemented Go, it would only have to return the placement of the stone, not all the resulting stone captures.
- Macros were previously limited to 9 arguments: $1..$9. This has been extended so you can have as many arguments as you want.
- ULTIMA - Fixed incorrect movement of the Long Leaper
- SHOGI - Added more spots for captured pieces (previously when these filled up you could no longer capture or even threaten the King)
- NINUKI-RENJU (variants of GO-MOKU) - Fixed: In some circumstances the capture count could get invalid. This could cause bad AI play and Ninuki saved games that refused to load.
- Fixed: Some people were experiencing problems with some sounds not playing, because their computers didn't have the appropriate WAV format decoder. Now all sounds are encoded with the most common encoding methods.
- Fixed: The Win dialog played the system's "Exclamation" sound in addition to the Win sound. Now it doesn't. Same with the Draw and Loss dialogs.
- SAVED GAMES
- Fixed bug: There were problems with the reading and writing of saved games with "flip"s in them.
- Fixed bug: Would not save a game correctly if it had no moves.
- Fixed bug: Loading a saved game could incorrectly report that a capture-piece goal was reached.
- If a reference to a rules file can't be found within a saved game, puts up a message rather than crashing.
- Fixed bug: The "Feel piece dragging" checkbox in "Feel Options..." was controlling the feel of captures and legal move destinations rather than those checkboxes.
- Fixed bug: A change to the "Feel Select Screen" checkbox in the "Feel Options..." dialog would not take place immediately if the Select Screen was up.
- Fixed bug: Would crash on exit if a force-feeback mouse was attached, but the Forces.ifr file was missing.
- Fixed bug: If Zillions found a capture of a piece that wins the game (e.g. capturing the King) it would report a "Win in 1" in the status bar, regardless of the actual number of moves deep it was.
- Fixed bug (introduced into v1.1.1): The "Session Status" dialog box would display an IP address unless you first hosted or joined a session.
- Fixed incorrect error message that began "While reading the definition of..."
Better Support For User-Authored Games
(These don't affect games from CD-ROM)
- Fixed bug: (add-copy-partial <piece-type>) wasn't working correctly
- When searching games with multiple moves per turns, Zillions now considers it legal to make a move allowing a checkmateable piece to be captured as long as the capture is not available in the first move of the opponent's turn.
- Fixed bug: Incorrect "Win in..." message if search showed you could immediately capture a checkmateable piece (this could happen in games with multiple moves per turn).
- Fixed bug: Could crash if a move cleared a piece off a square before flipping it
- Fixed bug: A blank "Choose Move" dialog could appear in certain situations where multiple pieces could drop to the same position.
- Fixed bug: If a ZRF has too many change-type/flip/change-owner/set-attribute primitives generated before an add, Zillions now ignores these excess statements (usually leading to an endless loop detection) rather than crashing. Same with cascades and with captures.
- Fixed bug: In games containing both a checkmate and non-checkmate goal, Zillions would see a non-checkmate goal in the search, even though the final move couldn't be made because the moving side was in check.
- Fixed bug: In partial move continuations Zillions was assuming the moving player owned the piece being moved, but this isn't necessarily true.
- After 32,000 operations Zillions in generating moves in a move block would declare an infinite loop in the ZRF. This has been increased to 99,999. (huge games)
- Fixed crash that could occur if the preprocessed ZRF had more than 65,536 symbols (a lot!)
- Smoothed out alignment of pieces on squares, especially when the board is flipped. Made many boards symmetrical when they are flipped.
- NW DIAGONAL CHECKERS - Corrected goal
- 15-PUZZLE - Shorter solutions for 15 PUZZLE (53 moves instead of 77) and SCRAMBLE B (82 instead of 96). Found by Karl Prendergast and Jeff Mallett respectively.
- CHINESE CHESS - Made it a loss to repeat positions
- Improved computer play in games with randomness [affected SENAT]
- Improved some game boards [CHINESE CHESS, KOREAN CHESS, X MEN'S MORRIS]
- Game Authors: New language keyword "translate" allows rules files to be translated into other languages, but still share a common saved game format and net-play format. New authoring feature!
- Fixes problem finding variants in net play
- Fixed bug: In rare instances, the current line being searched wouldn't display [affected some variants of REVERSI and GO-MOKU]
- Fixes some typos in game descriptions/help; corrects help strings in Computer Opponent dialog
- Eliminated some unneeded positions in some games
- Fixed some display problems when playing enlarged. [affected some variants of ALQUERQUES]
- Works around a bug in a certain display driver that caused TIC-TAC-TOE to not display properly
Better Support For User Games (These don't affect games from CD-ROM)
- Removes the previous limit on the number of allowed symbols (different words defined in a ZRF). Now a game can use as many as memory allows.
- When the "attacked?" keyword checks if a square is attacked, it now uses a hypothetical piece of the same piece-type as the piece which is generating moves, rather than an arbitrary piece-type.
- Fixed bug: draws by repetition were being incorrectly detected in games having non-capturing partial-moves.
- Fixed bug: Zillions could crash if a piece was captured during it's own partial-move.
- Fixed bug: Zillions erroneously found wins in the search in a game where a "royal" piece was cascading away from a position another piece was cascading into.
Fixes for problems introduced into version 1.1
- Fixes badly aligned FOX & GEESE: CHECKERBOARD FOX & GEESE and FOX & GEESE: WOLF & GOATS
- Fixed bug: On some systems Zillions was trying to connect to the Internet on start-up
- Removed requirement of needing dinput.dll
- Fixed bug: Zillions would erroneously allow a piece to be moved to its starting square (possibly resulting in an empty choose move dialog) in situations where another friendly piece(s) could move onto the position containing the moved piece. [affected 15-PUZZLE: ROTATE 9]
2 New Game Variants Added More games!
- CHECKERS: CHECKERS 10x10 (15 MEN)
- CHECKERS: CHECKERS 10x10 (20 MEN)
- Supports the sense of touch with Logitech's Force Feedback Mouse (available in October). Feel the weight of the pieces, the board's edges, captures, "smart moves", tiles, etc. New "Feel Options" dialog box. New feature!
- Switching between piece sets supported within a single variant. New menu item "Switch Piece Set" under View menu. New rules file syntax allows multiple piece and/or board images. New feature!
- TIC-TAC-TOE: BEER SQUARE - Improved graphics
- SENAT - Changed so that it's playable without "Smart Moves" turned on
- CHECKERS - Adjusted board bitmap
- Allow drops (and "add-copy" moves) to be chosen in the user interface when made to positions occupied by friendly, movable pieces. To make these moves, click on the (occupied) destination.
- Fixed bug: Zillions wouldn't play default sounds for new games created outside of Zillions' normal paths. Fixed other problems with path names as well.
- Updated help file
- Fixed a potential crash on exit and cleaned up lots of other potential problems
- Fixed bug: some add-copy promotion moves were being treated as adds rather than add-copies
- Some graphics better compressed
6 New Game Variants Added More games!
- CHINESE CHECKERS : LARGER BOARD - 7x7
- CHINESE CHECKERS : MEDIUM BOARD - 5x5
- CHINESE CHECKERS : SMALL BOARD - 3x3
- CHINESE CHECKERS : SUPER CHINESE CHECKERS
- STAR SOLITAIRE : TRIANGLE 4 PLUS
- STAR SOLITAIRE : TRIANGLE 5 PLUS
- Saved games (ZSGs) can now be opened by double-clicking on them just like game rules files (ZRFs). Saved games can also be dragged and dropped onto Zillions. New feature!
- Engine now plays better , especially when playing games with absolute-config goals containing zones [Affected FOX & GEESE, TAFL, and HALMA variants]
- ZRF Writers: Extends limit from a maximum of 11 flags in a ZRF to 32.
- Better randomization for random player
- VERTICAL TIC-TAC-TOE 5x7: Drops to the far column were accidentally disallowed.
- SHOGI: Made board unflippable since pieces face unexpected direction when flipped.
- Sometimes it would give a "Too many moves" error when searching a complex position. [Affected SHOGI]
- Fixed crash that would occur if ZRF tried to set a piece attribute on a position with no piece on it [Affected old versions of CHU SHOGI (not on CD-ROM)]
- Now will look for WAV files in the path relative to current directory before looking relative to Zillions' directory [Affected CHOMP (not on CD-ROM)]
- Fixed Bug: if a game contained a neutral player and the players list was in a certain order, then right menu editing wouldn't work correctly (would put down wrong pieces). [Affected JOUST (not on CD-ROM)]
- Avoids assigning the human to play a chance player even if the chance player is first in a game's turn sequence. [doesn't affect any games that come on Zillions CD]
- Adds user interface support for making moves that don't actually move or drop pieces, e.g. a move that changes the type of piece on a square.
- Fixes display problems that may occur if piece bitmaps cover entire position rectangle
- If a ZRF erroneously makes the start rectangle of a "grid" statement too big for the dimensions, automatically corrects for this.
- Fixed: the number of nodes searched was not accurate.
- Engine changes: bonus to stay on starting square only affects larger pieces. Some conditions optimized.
- Better handling of checkmate games where players get multiple moves in a row or move opponent's pieces
- Fixes a "could not find file" problem that could occur when you ask for the solution after opening up a ZRF through Explorer.
- Fixes some display problems when the board is enlarged.
- Eliminates dialog messages when a side is forced to pass, because they could get annoying in some cases.
- Allow Play Move Now button to halt the game flow even if the human's next move is a forced pass.
- Is more tolerant when reading in saved games with illegal moves, i.e. ZSGs whose variant can't be found (when trying the default variant) or ZSGs that have been incorrectly modified by hand.
- If Zillions can't read a move of a saved game, it will stop loading the saved game at that point, rather than going back to the Select screen.
- Fixed bug: Zillions would crash if loading of a saved game failed AND the Select screen couldn't be loaded.
- Adds missing space in the message that says The Rules File can't be loaded.
18 New Game Variants Added More games!
- HIP: LINE HIP 4x4
- HIP: LINE HIP 5x5
- HIP: LINE HIP 6x6
- HIP: LINE HIP 7x7
- HIP: LINE HIP 8x8
- MU-TORERE: PON HAU K'I
- MU-TORERE: PON HAU K'I 2
- NEUTRON: CO-NEUTRON 5x5
- NEUTRON: CO-NEUTRON 7x7
- REVERSI:8x8 REVERSED REVERSI
- SMALL CHESS: KNIGHTS VS. BISHOPS 5x5
- SMALL CHESS: KNIGHTS VS. BISHOPS 6x6
- STAR SOLITAIRE: BIG TRIANGLE
- STAR SOLITAIRE: SMALL TRIANGLE
- STAR SOLITAIRE: SUPER TRIANGLE
- TAFL: ARD-RI
- TAFL: LARGE HNEFATAFL
- TAFL: SMALL HNEFATAFL
- Right-click on position with control key held down brings up Properties New feature!
- Improved GO-MOKU playing strength in 2-person Ninuki variants
- Marked all the special squares in TAFL variants so it's easier to keep the rules straight
- Added music to CHINESE CHESS and KOREAN CHESS
- Support saving games while playing a net game
- Improved/Added to help in FOX AND GEESE, SMALL CHESS, STAR SOLITAIRE, TAFL
- Made smarter about reporting wins when a neutral side wins. [Affected TIC-TAC-TOE:BEER SQUARE and TIC-TAC-TOE:TRAFFIC LIGHTS]
- If a ZRF generates duplicate moves, Zillions is now smart enough to avoid putting up a "Choose Move" dialog (or menu) to choose between them [affected HEAVEN (not on CD)]
- Added special "corner" rules to small TAFL variants to better balance the game (the real historical rules are not completely known)
- Added Pawn-Two, En Passant, and Castling rules in some SMALL CHESS variants to make them in line with how these games are usually played
- Made solutions load with the human side to move
Game Bug Fixes
- FOX AND GEESE - The game end would sometimes not be correctly detected in some variants if the winning move involved multiple jumps
- MU-TORERE - Had two of its positions switched
- SMALL CHESS: BABY CHESS - Corrected rules
- TURNOFF - Previously only allowed 99 moves
- ULTIMA - Captures with Pawns (and Chamelions capturing as Pawns) were not being allowed in the forward direction
- SEEGA: HIGH JUMP - Didn't allow successive captures
- STAR SOLITAIRE: TRIANGLE VARIANTS - Zillions would report a loss instead of a win in TRIANGLE C. Also, repositioned holes to be aligned perfectly.
- GO-MOKU: 19-LINE THREE PLAYER NINUKI-RENJU - Goals were not working correctly
- GO-MOKU: NINUKI-RENJU variants - Fixed engine search to correspond with the described rules, i.e. overlines (6+-in-a-row) do not count as wins
Zillions Bug Fixes
- Fixed "Choose Move" (promotion) dialog, which was incorrectly sized
- Fixed display bug the occurred when editing the board while enlarged
- Fixed loading saved games that contain board edits
- Fixed problem where positions could be messed up in certain variants when loading in a saved game while the current board is flipped
- Disallowed draws by repetition in progressive variants and other games where one side gets multiple complete moves per turn
- Fixed: Zillions would crash if you selected a document from the recently used files list in the file menu during a search.
- Fixed: End of game wasn't recognized when load in saved game ending in 3-time repetition
- Fixed: Zillions sometimes couldn't find solution files to ZRFs located outside the Zillions directory structure
- Fixed: Zillions may not detect end of game at the right time if goal is pieces-remaining and the game contains editing of the board [affected SEEGA: HIGH JUMP]
- Fixed: In some games with partial moves wins may not have been detected correctly when navigating or reading in a game [affected FOX & GEESE: COWS & LEOPARDS]
- Fixed: In games with the "captured" goal, search bar wasn't updated coorectly after computer played a winning move. Also captured result may not be detected correctly while navigated through scoresheet. [affected ULTIMA]
- Fixed: pieces-remaining didn't work as documented when used with a number >= 1 and without a piece-type argument in games with multiple piece types. [affected "Bare King" rule in FAIRY CHESS: SHATRANJ]
- Fixed: In plug-in engine games, search bar wasn't being updated correctly [affected REVERSI, GO-MOKU]
- Fixed: In certain situations, the cursor was displayed as an arrow rather than a hand after a move, at least until you moved it [affected TURN-OFF]
- Fixed bug where the internal last move wasn't being reset after a "New Game". [affected FORGE (not on CD)]
- Fixed: After a net game Zillions could crash if a challenge is then declined [affected HEAVEN (not on CD)]
- Fixed crash in animation when non-move played e.g. capture only. [doesn't affect any games that come on Zillions CD]
For Game Authors
- Increased number of allowable captures per add, cascades per add, and change-type/change-owner/set-attribute's per add to 256 each
- Can read much larger games now in terms of expanded ZRF code
- Fixed crash that could occur when reading a bad ZRF file
- After unsuccessfully trying to load a bad ZRF file (sends you back to the Select screen), can now try to immediately re-load it without the need for going off to a separate game first.
- Menu of recently used files does not show a bad ZRF as the current file if it couldn't be loaded.
- Fixed: when you make a move, take it back, play a different move, and then save the game the game is saved incorrectly and may not be loadable again.
- The file name field of the "Save As..." dialog defaults better when there is a ZSG loaded.