ZZT v4.0 (Unofficial)

78.0 KB
5.00 / 5.00
(1 Review)
Board Count
None / None
Submitted By
8 months, 3 weeks ago (Sep 28, 2023)
Bug Report

ZZT v4.0 was a modification of ZZT made using a hex editor and a very steady hand. While impressive for its time, the nature of the patch means that it introduced a major bug:

At (uncompressed) binary offset 0x5BE0, the byte 0x00 was mistakenly changed to 0x2E. This makes the ElementPusherTick method remove 46 bytes (as opposed to 0) from the stack every time it is called, causing a stack underflow and crashing the game after, at minimum, exactly seven pusher ticks have occured. The intent of adding this seems to be a misplaced hex edit pertaining to the torch's pickup message. Notably, this bug is not present in the NoMsg variant of the executable.

On top of this, the fake wall message was accidentally increased in size by one, making it spell A fake wall - secret passage!U.

If you're interested in something more powerful than ZZT 3.2, Weave by the same author is an excellent choice; for clean messages, CleenZZT is a modification of the reconstructed source, rather than a hex edit of the binary, offering better stability.

Submitted By
19 years, 1 month ago (May 21, 2005)

I liked this update. Personally, I felt that a contemporary revision of ZZT was in long need of doing and WiL just came along and fixed the whole sheebang. Now I can play ZZT without all of those annoying messages and shit, and also ZZTetris is more playable. My heart goes out to you, WiL...

5.00 / 5.00

Give Feedback

Markdown syntax is supported for formatting.
Additionally, you may place text behind a spoiler tag by wrapping it in two pipe characters (ex: ||this is hidden||).

Optionally provide a numeric score from 0.0 to 5.0

If any box is checked, feedback must be tagged with at least one checked tag

Used to prevent automated accounts. Avoid interacting with this field.

Feedback can only be provided on a file once every 24 hours for guests. Please sign in to a Museum of ZZT account if you wish to provide additional feedback.