• Welcome to Talking Time's third iteration! If you would like to register for an account, or have already registered but have not yet been confirmed, please read the following:

    1. The CAPTCHA key's answer is "Percy"
    2. Once you've completed the registration process please email us from the email you used for registration at percyreghelper@gmail.com and include the username you used for registration

    Once you have completed these steps, Moderation Staff will be able to get your account approved.

#send TalkingTime:goPlayZZT

RT-55J

space hero for hire
(He/Him + RT/artee)
ZZT, the beloved text-mode game creation engine, turns 30 years old on January 15th. It's still kickin', and I'd dare say 2020 was a landmark year for it. ZZT has been on a gradual upswing since 2015, but according to one estimate we've seen as many new releases this year as in the previous six years combined!

Part of the reason for this renaissance is that in March ZZT finally got some
source code, painstakingly reconstructed from the original executable using NSA dark magic. This gave me the inspiration to host a ZZT Jam at the other forum I frequent and then finally join the community proper after decades of lurking, and I'm sure it inspired plenty of other folks as well.

My personal favorite world of the past year is The King in Yellow Borders, which is a horror-themed adventure game with some nice digitized art. It uses a custom fork of ZZT to give the proceedings a certain slickness, though most of it seems like it would be perfectly workable in vanilla ZZT with a little effort.

As for me, this past week I threw together a ZZT shopping simulator, called BUYSO, because I was kinda sad to not be able to do any brick and mortar Christmas shopping.

Anyhow, let's talk ZZT!
 

SabreCat

Sabe, Inattentive Type
(he "Sabe" / she "Kali")
I was pretty involved in ZZT back in the day! I was never good, mind you, but I did release a game or two on the AOL message boards where all that went down. MegaZeux largely supplanted ZZT in my game-creation headspace, later.

I took a brief look at "The King in Yellow Borders" when you recommended it in the GOTY thread, and you answered my question about it here. I suspected that some of those screen transition effects weren't possible in vanilla ZZT, and it sounds like I was right!
 

RT-55J

space hero for hire
(He/Him + RT/artee)
Board transitions similar to the stuff in the King in Yellow Borders are technically possible in vanilla ZZT, but they require complicated set-ups involving duplicators and player clones. WiL added a #board commard to switch boards, making it a lot easier to do.

On A Distant Moon (which also came out this year), runs in vanilla ZZT and manages to do some board transition stuff near the end that feels way more impressive. It's a bit harder of a game, but I recommend checking it out.
 

SabreCat

Sabe, Inattentive Type
(he "Sabe" / she "Kali")
Downloaded Zeta, CleanZZT, and the original 3.2 package and played through the very firstest "Town of ZZT". Still charming! Still infuriating!

ZZT 4.1 looks tempting, to get rid of so many of those obnoxious repetitive sound effects, but it also sounds like maybe it's not ideal for compatibility? Which binary do you tend to run with for routine ZZTing?
 

RT-55J

space hero for hire
(He/Him + RT/artee)
I tend to stick with the standard 3.2 with Zeta.

asie's been working on a port that runs natively on modern platforms. I tried out a beta of it a few months ago and it seemed to work fine, though I'm not sure what's the current state of the project. I'll check if there's a public download of it later tonight.
 

SabreCat

Sabe, Inattentive Type
(he "Sabe" / she "Kali")
Wow, while Town is by turns amusing and inane, Caves is just bad. Hilarious how what was once the premium, paid-for content is completely phoned-in. (Not the only shareware product I've seen that phenomenon with, either.)

Also no wonder how hordes of ZZT newbies imitated these design patterns over and over, yellow borders and invisible wall mazes and all.
 

RT-55J

space hero for hire
(He/Him + RT/artee)
I like Caves myself, but I'll admit that it has a pretty low killer-to-filler ratio. It has some things I like (such as Hell and the keysanity puzzle), but then there's pointless junk like the screens after the keysanity puzzle (oh, and the dark rooms are boring).

Dungeons is definitely my second favorite official world. There are a few missteps, but I feel like it has a good deal of interesting content.

City of ZZT isn't really bad, but it just feels incomplete (the "maximum security" cell is a very good joke tho).

As for the Super ZZT worlds, I really like the Lost Forest, but the other two just kind of blend together in my mind.

Anyhow, on an tangential note, Means TV is making this documentary series thing about old digital worlds, and the ZZT community is going to be the subject of one of the episodes:


It debuts sometime in January.
 

SabreCat

Sabe, Inattentive Type
(he "Sabe" / she "Kali")
Anyhow, on an tangential note, Means TV is making this documentary series thing about old digital worlds, and the ZZT community is going to be the subject of one of the episodes:
Oh, that's really cool! Hopefully they emphasize that it's one of the "obscure" rather than "defunct" or "dying" communities, ha.

Meanwhile, I've started poking around the Museum:

Stranded, my yellow-bordered crapsterpiece, is on there! (I haven't dared actually open it up and try to play it...) But it's incorrectly credited to Creator. Looks like the means of requesting changes is to email Dr. Dos, so I'm giving that a go.

Code Red blew a lot of minds back in the day! It's a game in love with its own cleverness, emblematic of the toybox design that would also show up in Alexis Janson's "Weirdness" in MegaZeux. Why do trash cans and flower pots fall over when you touch them? Why, because you need to vacuum it all up to burst the vacuum cleaner bag so you can find the garage key. It's a sort of King's Quest-y puzzle logic, and it's very easy to get stuck without a walkthrough. I was hoping the "Special Edition" in the Museum corrected the bugs from the original release, but it doesn't look like it? At least, I ran into a "two Part 1 endings smashed together in the same text box" issue that I'm certain I remember happening to me back in the 90's too.

I'm currently playing For Elise, a piece of mind-boggling technical skill by Lancer-X. Dancing around all ZZT's limitations on counters, flags, arithmetic, memory, etc., it's a complete turn-based traditional Roguelike missing only randomization for the full Berlin package. (Well, ok, it can't turn off ZZT save/load functionality, so maybe the permadeath doesn't count.) It's a twenty-level optimization puzzle, all about figuring how best to juggle your several pools of resources to make as much progress as possible between trips to the inn to heal up.
 

RT-55J

space hero for hire
(He/Him + RT/artee)
From a cursory glance, your old world actually looks quite charming in its quaintness. It might be an interesting project to polish it up a bit.

The Discord of ZZT has a bug-fixes channel for correcting informational errors and such in the museum, if you want to go that route.

Oh, that's really cool! Hopefully they emphasize that it's one of the "obscure" rather than "defunct" or "dying" communities, ha.
I know the fellow making that series, and he's very well aware of the current ZZT community. I don't know what the exact format of this documentary is gonna be, but he has played several of worlds from the past couple years and will be including footage from them.

For Elise impresses me very much, but I've always been too intimidated to make decent headway into it.
 

SabreCat

Sabe, Inattentive Type
(he "Sabe" / she "Kali")
The Discord of ZZT has a bug-fixes channel for correcting informational errors and such in the museum, if you want to go that route.
Ah, ok! I'd already sent an email, but I'll get in there too for future reference!

For Elise impresses me very much, but I've always been too intimidated to make decent headway into it.
I played to dungeon level 15ish on the base version, then discovered there was a 1.5 and started over. Unfortunately the quest progression seems to be bugged in that one? When I played before, the quest board refreshed right away once you finished all three available, but now it's stayed blank, never adding another set... :(
 
Last edited:

RT-55J

space hero for hire
(He/Him + RT/artee)
so this collab was a thing that just got finished (I wasn't involved in it):

WvHTCLl.png


You can get/play it here:


I played through it today and largely enjoyed it. Screens vary wildly in terms of how closely they hew towards the source material: some are straightforward adaptations, others put a modern spin on the same basic concept, while others are nearly entirely unrecognizable.

While most screens are about as easy or slightly easier than the original, the screens that are harder than the original make this remix significantly harder than the original. The south path from the beginning is particularly difficult, with the centipede board expecting you to know/figure out a weird quirk about transporters, the "THINK FAST" board requiring you to actually act fast, and the sliding puzzle being turned into something exceptionally devious. I don't think this world is too difficult, per se, but I wouldn't recommend it to a newcomer.
 

SabreCat

Sabe, Inattentive Type
(he "Sabe" / she "Kali")
From a cursory glance, your old world actually looks quite charming in its quaintness. It might be an interesting project to polish it up a bit.
I got up the gumption to play through it, and it's weirdly funny? All these strange little encounters, with little rhyme or reason to connect them, executed with absolutely faultless spelling and grammar... I did have to visit the editor to figure out the way forward on one part, which left me scratching my head still further. In order to get the item you need to pass a castle gate, you have to get to the castle gate, find it bars you entry, then backtrack to a completely unrelated early board, where a previously-walled passage will now open up for you. It's especially puzzling given there's lots of ingame hints for other things you need to do! Just not that one!

I could see doing a "remix" in the vein of the above Town project trying to make some sense of it, perhaps. But that quirky lolrandom charm has long since been purged from my soul, I fear!
 

madhair60

Video games
Hugely into ZZT, since I was in high school. asie's new Reconstruction has finally got UK keyboard layout support, too, so I can program it via muscle memory again. I'm working (very slowly) on a combatless adventure game thing called Notworld... here's a screenshot.

F39xzdv.png
 

SabreCat

Sabe, Inattentive Type
(he "Sabe" / she "Kali")
What's the best resource for (re)learning ZZT-OOP these days? I'm lurking the Discord, but there's a lot of vocabulary I don't remember...
 

RT-55J

space hero for hire
(He/Him + RT/artee)
The reference madhair linked is a good enough for most purposes. I occasionally reference OOP.PAS from the Reconstruction, though it's kind of overkill.

For practical (and impractical) applications of ZZT-OOP, I still go back to the ZZT encyclopedias. ZZT Encyclopedia Online and Mystical Winds Encyclopedia are both good references, though if you're making a simple adventure game then most of that stuff is overkill.

Regarding flags:
- Flags have a character limit (I thought it was 11 but I guess it's 20?!)
- You can only have 10 flags set at a time.
- If a flag is already set and you set it again, nothing happens (some very prolific ZZTers didn't learn that until this year!)
- If 10 flags are set, and you set another flag, the 10th flag gets overwritten.
- You can use flags in if statements (e.g. #if flag then doThing)

Regarding memory: Each board is limited to exactly 20000 bytes. If you go over that, then weird stuff happens. The size of a single world is limited by the amount of conventional memory DOS has, which varied from device to device (though this is less or an issue in the post-DOSBox/post-Zeta age). IIRC the generally accepted safe limit is somewhere in the ballpark of 400-500kB, though I can't remember exactly.

Regarding stats: A "stat" is the name that the community eventually agreed upon for what other engines might call "sprites". They are things that are above the main layer, such as objects, lions, scrolls, slimes, conveyors, and even the player itself (technically you could make anything a stat, even an empty space). Stats are called stats because they have "stats" (or rather, parameters) which you can change in the editor (e.g. "intelligence", "firing rate", etc).

Three parameters that stats have that you can't change in the default editor (but you can change in KevEdit) are "cycle" (objects modify their own cycle using #cycle), and x-step/y-step. X/Y-step are simply the direction something is facing. Town Remix uses objects with non-standard x/y-steps to shoot those diagonal bullets. (There's a lot of weird things you can do with them.)

Counting the player, you are limited to having 151 stat'd thingies on a single board (Super ZZT's limit is something lower).
 

SabreCat

Sabe, Inattentive Type
(he "Sabe" / she "Kali")
OK, perfect, thank you both!

Now time to fire up KevEdit, get frustrated that I have not developed any artistic skills and thus cannot create beauty out of ASCII, and quit.
 

RT-55J

space hero for hire
(He/Him + RT/artee)
If all else fails, you can use this new tool called Zima to ASCII-ize pictures/photographs:

 

SabreCat

Sabe, Inattentive Type
(he "Sabe" / she "Kali")
huh! That... might help a lot, actually? I'll play with it!

EDIT: Uh... how do you use it? I've installed the recommended JRE (AdoptOpenJDK 11, win10 x64), and it doesn't seem to do anything?
 
Last edited:

SabreCat

Sabe, Inattentive Type
(he "Sabe" / she "Kali")
OK, some folks in the Discord helped me figure out what was going on. I have to do some weird workarounds, but it does its thing now!

The output is smudgy and impressionistic, as you might expect. But I think that'll work for my current purposes. Fun!
 

SabreCat

Sabe, Inattentive Type
(he "Sabe" / she "Kali")
For Elise impresses me very much, but I've always been too intimidated to make decent headway into it.
I got to the bottom of the dungeon, but chose a poor time to overwrite my save file and got stuck, whoops! I think I'll give it another go eventually, though. I kinda want to write a walkthrough!

I could see doing a "remix" in the vein of the above Town project trying to make some sense of it, perhaps.
This is the route I'm going, so thanks for the idea! It'll lack the head-scratching funny of the original, but I'm sticking to its sort of surreal narrative flow, and reproducing the map pretty closely.

Here's a Zima-generated forest (plus some touchup, mainly to make the lower region walkable) to go with madhair's lovingly handmade one:

fJsuQZA.png
 

RT-55J

space hero for hire
(He/Him + RT/artee)
Oooh that looks nice. I love the variety of artstyles possible with ZZT.
 

SabreCat

Sabe, Inattentive Type
(he "Sabe" / she "Kali")
That is delightfully old school. Looks like it'll be a lot of fun!
 

RT-55J

space hero for hire
(He/Him + RT/artee)
So this fellow I know is making a series for Means TV called Preserving Worlds (about preserving old digital worlds) and it will have an episode about ZZT!


It premiers February 9th.
 
Top