|
Tile World & Tile World 2 v. 2.1.0 (26/4/2026, Dave Yeo) |
Readme/What's new |
2014 Mar 26: version 2.1.0 (by Eric Schmidt, with contributions from
Madhav Shanbhag)
* Main window layout changed; in particular, passwords are visible.
* Fixed Lynx toggle wall bug: if a level stopped running the instant a
toggle button was pressed, the walls would toggle the next time play
started.
* When selecting a level set, the game now tries to start on the level the
player left off from, rather than the earliest unsolved level.
* MS mouse emulation bug fixed. (report and fix from David Stolp)
* Some "stuck key" problems fixed, such as Alt-Tab on Windows 7.
* The fileio.c patch, which fixes a .tws corruption problem on 64-bit Linux,
has been applied.
* Added the ability to disable the display of CCX text when visiting or
completing a level.
* Added ability to view CCX text via menu options.
* Messages displayed when winning, dying, or running out of time are now
customizable via external file.
* When playback of the solution to the last level in the set finishes, the
congratulatory message box wouldn't appear. Now it does.
* In Lynx mode, it is now possible to select the starting direction for the
"random" force floors, by using the "f" key.
* Added settings file. There are currently two settings: (i) whether to
display CCX text, and (ii) sound volume.
* Debug/cheat keys completely disabled for releases.
* In pedantic Lynx mode, when an entity attempts to leave the map, rather
than play being halted, a warning is printed on stderr, and play
continues as in non-pedantic mode.
* "Goto" menu item renamed "Enter Password", and greyed out during play.
(Before, it could be selected, but it would not do anything.)
* Miscellaneous code changes not visible to users, to eliminate compiler
warnings and for other reasons.
2010 Dec 22: version 2.0.0 (by Madhav Shanbhag)
* First public release of Tile World 2 featuring numerous improvements.
2006 Apr 17: version 1.3.0
* Added mouse handling to the code. That includes modifying the SDL code to
handle mouse activity, adding a large set of new commands, making it
possible for Chip to move towards a goal over several ticks, and
modifying the action struct (and the solution file) to permit storing the
new moves in solutions.
* Added the database of unsolvable levels, which warns users before they
play a level known to be unsolvable, and automatically gives them the
password to the next level.
* Added the solution file display, allowing the user to manage multiple
solution files for a single level set.
* Changed code to accept a solution file as the sole cmdline argument, if
the solution file contains the set name. Hopefully this, and the previous
addition, will make it easier for people to share solution files.
* Added the batch-mode verification feature, to check the existing
solutions without initializing the GUI subsystem.
* Fixed the old emulation bug (MS logic) involving Chip turning a cloned
block into a clone of himself while going through a teleport.
* Fixed the bug (MS logic) preventing Chip from pushing a slipping block
parallel to its slipping direction when the push happens through a
teleport.
* Improved the emulation of several creatures teleporting simultaneously
(Lynx logic), with assistance from ccexplore.
* Minor improvements to the Lynx pedantic mode.
* Fixed the password input routine. (It was completely broken; not sure
when that happened.)
* Rewrote the code so that level data and solutions are kept compressed in
memory, and expanded only when needed, instead of decoding entire files
when read. This change makes for a small reduction in memory usage, and
reduces the overall level of useless work being done.
* Added code to shutter the map view when MS gameplay is paused.
* Numerous minor tweaks to the code, the display, and the documentation.
2006 Feb 24: version 1.2.2
* Finally got the handling of brown buttons (MS logic) working correctly.
It's been a long time coming, and it's all so simple in hindsight.
* Added code to grok the new solution file format. This version of Tile
World will continue to use the old solution file format, but if it
encounters a file in the new format, it will handle it correctly.
* Added the ability to specify a solution file by name on the command-line.
* Added -P option for Lynx pedantic mode.
* Added the Shift-Ctrl-X feature to permanently delete solutions.
* Fixed bugs in Shift-Tab feature, and formally documented this feature.
* Fixed bug in the stepping UI.
* Fixed bug reported by Thomas Harte, where an international keyboard
generating a non-Latin-1 character could cause TW to segfault.
* Fixed bug reported by Catatonic Porpoise, where SDL was being asked to
blit to a locked surface.
* Fixed a segfault in MS logic reported by Evan Dummit (occurring when a
cloner's creature in the northwest corner is replaced by Chip).
* Added casts to avoid new warnings in gcc 4.
* Fixed a few other minor MS emulation bugs reported by Evan Dummit.
* Added a number of unfixed MS emulation bugs to msbugs.txt, several of
which were reported by Evan Dummit.
* A handful of documentation errors were also found and fixed.
2004 Oct 21: version 1.2.1
* Introduced a basic stepping-control UI, and added stepping information to
the solution file format.
* Fixed a bug (MS logic) reported by David Stolp, involving blocks going
out and back into the slip list so quickly that they weren't sent to the
end of the list.
* Fixed a bug (MS logic) reported by David Stolp where block and creatures
were not moving into key tiles if the bottom tile prevented it (e.g. a
wall).
* Fixed a bug in sdltext.c, reported by Dale Bryan caused a segfault in
16-bit color mode.
* Added -r (read-only) cmdline option.
2004 Oct 04: version 1.2.0
* Fixed a bug (MS logic) preventing cloned tanks from turning around when
they hadn't yet left the clone machine.
* Fixed another longstanding bug (MS logic) involving a tank indirectly
pushing a blue button. Again, the bug was fixed explicitly instead of
trying to make the behavior arise naturally from the code.
* Improved some of the behavior of blocks being pushed (Lynx logic).
* Improved some of the behavior of blocked teleports (Lynx logic).
* Altered animations to run for either 11 or 12 frames, depending on the
parity of their initial frame, as discovered by ccexplore. (This finally
killed the nine-lived clone-boosting bug in ICEHOUSE!) Also modified the
point during the frame when animations get removed.
* Changed the Lynx walker to use a PRNG equivalent to the original, as
worked out by ccexplore.
* Fixed bug (MS logic) in how a block is removed from the slip list when
being pushed by Chip (reported by Shmuel Siegel).
* Fixed bug (MS logic) with deferred button presses; TW was incorrectly
deferring Chip's button presses and not just those caused by block
pushing.
* Fixed a horrid bug when encountering bogus values in a dat file. (The
code was meant to gracefully ignore the broken level and continue reading
the next level, but it failed to move the file position out of the broken
level before doing so.)
* Fixed keyboard routines so that they now understand characters as well as
keystrokes (thus e.g. the program recognizes "?" when entered on a
European keyboard).
* Added a help screen for the initial file menu.
* A few other minor bug fixes and miscellaneous improvements.
2003 Mar 15: version 1.1.3
* Put the display code through another significant rewrite. This time, the
rewrite seems to have succeeded in improving speeds, at all pixel depths.
Instead of hand-rolled arrays and functions, the new code uses SDL
surfaces and blits throughout. Tiles are stored in the screen's pixel
format whenever possible, and alpha channels are used to handle
transparency.
* Fixed longstanding bug (MS logic) involving Chip pushing a block off of
another block via a teleport. (Wasn't hard to fix -- just required some
nose-holding.)
* Added new fractional time display (using -t) for MS. It's still
imperfect, but it doesn't hurt to make the feature available.
* Added -f switch to get fullscreen mode (change requested by Philippe
Brochard).
2003 Mar 08: version 1.1.2
* Added frame-skipping code, so that gameplay doesn't slow down on slower
hardware.
* Blocks on beartraps were getting default initial direction of nil (Lynx
logic). Default changed to north. (Reported by ccexplore.)
* Fixed broken handling (Lynx logic) of creatures that start out on ice
(reported by ccexplore).
* Fixed bug where tanks could be turned around while sliding (Lynx logic).
* It is now possible to finish a level with exactly zero seconds left (Lynx
logic).
* Improved fixlynx feature to also fix the maps for levels 121 and 127.
* Reorganized logic code to use fewer static variables.
2003 Mar 01: version 1.1.1
* Fixed broken handling (MS logic) of tanks not stopping in traps, and the
fact that tanks on clone machines can sometimes turn around (reported by
ccexplore).
* Attempted to fix controller bug, where a controller being added to the
slip list sets the controller direction according to its slipping
direction rather than its visible direction (reported by ccexplore).
Hopefully fixing this hasn't broken anything else.
2003 Feb 22: version 1.1
* Fixed most of the broken handling of controllers (MS logic).
* Added guards against bad data in encoded maps.
* Added -a cmdline switch to help improve sound.
* Removed unintentional trigraphs from source.
* Added missing initialization of PRNGs.
* New images for the chip and the socket -- and, finally, a real icon
(courtesy of Anders Kaseorg).
* Upgraded the Windows copy of SDL to 1.2.5a.
2002 May 06: version 1.0
* Added "(paused)" message when game is paused.
* Minor bugfix in behavior when the creature count maxes out (Lynx).
* Added intro-ms.dat and intro-lynx.dat.
* Fleshed out the README file.
* First official release to the general public.
2002 Apr 06: version 0.10.6
* Fixed off-by-one timing bug (MS logic) when last move of a level is
involuntary (discovered by Anders Kaseorg).
* Changed pause button to work as a toggle (i.e., no other keys will exit
pause mode), as requested by Hallgeir Fl |
Add new comment