Glorious Weekend of ZZT Blitzkrieg-a-thon!

thesycophant's picture
Fri, May 11 2012 09:00 PM
05/12/2012 - 00:00
05/13/2012 - 23:59


Where did you get your start in game-making? Myself, I started with QBASIC, but first publicly released them to the world with ZZT back in 1997, when I called myself "Newt." I myself haven't made a game in ZZT in over nine years.

I know some other 'wreckers used to play around with ZZT or were even involved in "the commune" back in the day. We've long had ZZT listed in our list of game creation tools for Glorious Trainwrecks events. Now let's use it!

What is ZZT? ZZT for MS-DOS is truly outrageous! It comes from 1991 by way of Time Sweeney and his Epic Mega Games, these days known simply as Epic Games (they have put away childish things, like "Mega"), studio behind Gears of War. With its built-in world editor, you can make your own ZZT world files and distribute them to people on the Internet! The game displays everything in 16 colors of 255 ASCII characters.

What can you make in ZZT? Lots of things! The worlds packaged with the game have a sort of overhead adventure-action orientation. There are many built-in objects and terrain types that complement this type of game. On the other hand, there's all kinds of "engine games" that do things you might not expect ZZT to be able to do! Side-scrollers! DOOM clones! Lemmings-likes (my personal favorites to make)!

What about this event? Back in the day, the ZZT IRC channels would put on spontaneous "Blitzkrieg ZZT" (or bkZZT), very much like our own KotMK events, jamming out a game in an hour or less. Bigger, more official events (containing all the community drama of the IGF!) were called things like "Weekend of ZZT" and "24 Hours of ZZT," with judges and the goal of creating a fairly polished ZZT world.

I want to capture the spirit of all of that. So you have a weekend to produce one or as many games as you want! There's no judging involved, though. So make one long adventure game or twenty little shooty action challenges or a pair of visual novels or whatever you like! Put all of the community's games together and we'll have our very own Pirate Disk of choice twenty-first century ZZT worlds.

Where do I get ZZT/learn how to make ZZT stuff? Z2 is the definitive existing resource on ZZT.

  • Download ZZT here. ZZT 3.2 is the standard, though my friend WiL's 4.0 is pretty neat.
  • Here's some useful help files that will clarify some things about how ZZT-OOP (ZZT's programming language) works, what tools to use (Janson's Super-Tool-Kit (STK) is a must), and any compatability issues.

So there we have it! Let's ZZT!


Submit your games with this form!

Also, I am going to officially encourage you to submit games all through this week, if you so choose!

zztgtlogo.png5.7 KB

Games made for Glorious Weekend of ZZT Blitzkrieg-a-thon!

NameCreatedsort iconByScreenshotComments
CHIKAN WIER 3.905/15/2012 - 18:39GreaseMonkeyScreenshot at 2012-05-16 13:34:14.png4
Nyan Cat's Adventures in Nyanland05/13/2012 - 22:29wilnyaa.gif6
AMOEBOID05/13/2012 - 22:08Malingerer-ZAmoeboid.jpg6
What Do People Think All Day?05/13/2012 - 19:58QPwdpthink.png6
Star Coffin05/13/2012 - 19:12Pizza Timestcofin.gif11
Confidence Man05/13/2012 - 19:01Triplefoxconfidence.png1
ZZINFILTRé05/13/2012 - 18:54thesycophantzzinfiltre.png2
3D Skull Engine05/13/2012 - 16:41Aplsos3dskull.png4
LINK II05/13/2012 - 13:06bitbotadvlink2.png12
The garden05/13/2012 - 07:34juliettezzt_002.png6


Danni's picture

First-timer here. Right now

First-timer with ZZT. Right now I'm making a Chip's Challenge engine/toolkit for practice. Think I'll port a few of the original levels over (only a few, since Chip's Challenge has a playfield size of 32x32 whereas ZZT has 60x25).

Smedis2's picture

Holy Awesomesauce! I've

Holy Awesomesauce!
I've never used ZZT,but now I really want to.
Is it hard? I really hope not D:.

Smedis2's picture



thesycophant's picture

Did you check the FAQs and

Did you check the FAQs and tutorials at They may not be the most useful. Feel free to PM me with any questions you might have.

It's weird and old and wonderful!

commodore's picture

For new designers it is

For new designers it is useful to look through the comprehensive zzt encyclopedia:

It may also be useful to look at the outmoded, but helpful zzt syndromes:

Editors beyond the built-in one allow you to get the colors and other features you might normally use super-tool-kit for.

Kevedit has a win32 version, a dos version (though I've never gotten it running in Dosbox), and a linux version. ZZT Advanced Editor (ZZTAE) was programmed in qbasic and does seem to run fine in the default dosbox configuation. ZAP is a incomplete but still useful windows (VB) based editor.


Unless of course this contest is old-school. We used to disallow external editors. In that case pure stk is the new stk:

Danni's picture

This is a jam, not a contest.

This is a jam, not a contest.

Edit: We're usually pretty lax about rules around here. I don't think we're going to disallow external editors but we are leaning toward "disqualifying" non-ZZT entries.

thesycophant's picture

I should've made it more

I should've made it more explicit that this isn't a contest, as most of the events back in the day were all about contests. External editors are definitely welcome. Basically, anything's welcome that runs in ZZT.

thesycophant's picture

Thanks so much for this,

Thanks so much for this, Commodore! I'm sure it'll be invaluable to anyone starting.

I didn't know about a lot of that stuff in STK, especially WiL's. Monitors are amazing

Aplsos's picture



SpindleyQ's picture



commodore's picture

Some simple

Some simple objects.

#zap touch
Touch me again for a key!
#zap touch
Here's a key!
#put w white key
I don't have anymore keys!

#shoot w
#zap loop

Hello! Buy 10 ammo for 3 gems?
!yes;Sounds like a deal.
!no;I don't want it.
#take gems 3 :toopoor
#give ammo 10
Here you go!
You don't have enough!

#if not contact #restart
#take health 10 #dead
#zap shot
#become ammo

Danni's picture

Ooh, so you can use #zap

Ooh, so you can use #zap like a counter kind of?

commodore's picture

In a way yes. Careful with

In a way yes. Careful with #zap and #bind. #bind makes objects share code, not copy code for themselves. So if you have enemies like the one I posted that use #zap to detect how many times it's been shot, you need to make multiple copies of that enemy instead of making one and #binding others to it. You can also #zap and #restore other objects messages like the #send command "#zap Object:Label"

#restore works on all labels it references. So just one #restore touch, would restore every :touch you zapped.

Interesting code can be done by mixing #if statements, an #if can follow another #if so long as it all fits on a line:
#if energized #if contact #die

I checked #restore just

I checked #restore just before. It appears to restore the topmost zapped label, not all the labels as you've noted. Unless someone can confirm otherwise? EDIT: This is bollocks - I don't know what happened, but commodore is right - #restore does restore the whole lot.

Also, hi commodore :)

Danni's picture

Chip's Challenge: Lesson

Chip's Challenge: Lesson 1

Collect chips to get past the chip socket. Use keys to open doors.

I have no idea just how far I'll be able to go with this idea. Lesson 1 is certainly playable and very close to the original game but a lot of tiles used in the later levels will definitely pose a challenge, to say the least. Basically, I'm gonna see how many of these I can implement.

Chip-ZZT-2.png17.22 KB
Chip-ZZT-1.png20.31 KB
commodore's picture

For enemies that move every

For enemies that move every step, you can surround a player clone with objects. Set the cycle to 1 (using external editor) instead of using the #cycle command before the first #end because the initial step on the board might cause it to instantly get a :touch message and never change from the default cycle 3.




Danni's picture

Chip's Challenge isn't

Chip's Challenge isn't really turn-based. If you sit around, time will continue to pass.

And yeah, about #cycle. I noticed when I was testing my multi-key system that the counter would sometimes fail to tally a key you picked up - as it turned out the cycle was somehow stuck at 3. I fixed it initially by throwing #cycle 1 into the :addkey and :delkey labels, before I discovered the Cycle object property in Kevedit.

I think the monsters should be fairly trivial to implement (and also fun). What worries me the most is implementing tiles that are floor-acting (EG. buttons, terrain tiles such as fire that you need special equipment in order to traverse). With ZZT, custom objects are generally wall-acting. I'd really like to get as much stuff implemented in an abstract manner as I can (that is, you just place the tile or object like you would designing an actual Chip's Challenge level and everything would "just work") but it seems now I'll have to hide special controllers inside walls and the like in order to simulate buttons. Oh well.

commodore's picture

It'll only work to a limited

It'll only work to a limited extent, but for buttons you could put down, for example one square of blue fake wall and do "#if not any blue fake #do" When the player covers the only blue fake, the condition is true.

Problem is that monsters will set it off too. Unless that's how CC works.... I forget.

Danni's picture

Yes, anyone is allowed to

Yes, anyone is allowed to activate the buttons.

jonbro's picture

yeah, I have been curious

yeah, I have been curious about ZZT ever since I discovered it through . I think discovering it through net art rather than game development is fortuitous.

So, tentatively in.

Glad I haven't missed

Glad I haven't missed this!

I was one of the founders of Z2 with Crankgod and Dragonlord back in the day, I was very involved in the ZZT community from like, 1998 to 2002. I haven't opened ZZT properly in about a decade, but this sounds like a great nostalgia trip.

I remember the old BKZZTs on #DarkDigital (I think that's what it was called) when was still called or the 'ZZT archive' or whatever and I think I participated in at least a couple of 24HOZZT competitions as well.

I've got Google reminding me about this closer to the time, hopefully I won't be at work or have other commitments.

Hopefully you'll be able to find more of the ZZTers from the olden days as well!

commodore's picture

Fish! Good to see you,

Fish! Good to see you, friend! I've had a look around this site, and its game making philosophy of glorious train-wrecks certainly fits the bill for many zzt games (for better or worse). I couldn't help but think of Halluncina and then *poof* there you are!


Hello GT and fellow ZZTers,
I got my first copy of ZZT back in '91 and KNP in '95. Been fooling around with TGF/MMF ever since.
I'm happy to see the two communities thriving. They belong together.

Now that I have a little free time, I'm gonna finish that project I always dreamed of.

cld's picture


I had forgotten about ZZT! My first computer was an 8088 with a copy of KROZ (edit: which I just realized wasn't made in ZZT; fail). Totally getting in on this.

Malingerer-Z's picture

This will be the first time

This will be the first time I've made anything in ZZT since the early nineties!

Considering I have it on a 3.5 inch floppy disk which serves the same purpose as a "HANG IN THERE!" Kitten poster for me, I can't imagine why I've stayed away as long as I have....

I'm going to have to forfeit the entire first day of the challenge because seeing my brother getting married is more important to me, but I already know the game I want to make. I'll just have to scale it back a little bit.

I messed with ZZT a lot back

I messed with ZZT a lot back in middle school and and am excited for this

Here's to ZZT!

I'm starting work on my game for the weekend right now and I'm going to be posting video updates throughout the experience. The first one is here and you can follow the other ones at my channel here. Good luck to everybody! Looking forward to doing this for the first time in 15 years or so.

Thought I posted this yesterday

Anyway for those patient enough you can edit the zzt exec really easily if you know hex editing. Otherwise I had one friend that is new to it and he was able to go through it with a couple questions:

Some other noteworthy utilities are here: like ZZT Tools. I created a new version that takes away the runtime error in Music Box and moved the music into the objects you touch instead of invisible. Want total oldschool and you can use this rip off greg jansen's #play even easier?

If you're gonna make some elders mad and convert bitmap files to graphics then don't use ZBitmap. Use bmp2zzt instead. It's much faster and the quality's amazing if you get the bitmap right. There's no gui but gui = no fun of course. If your images are showing green I usually use irfanview to convert the image to 255 colors... then 16 if it's still green. You'll make sense of it if you use it. I usually copy/paste an image into a fixed size (60x50) in paint.exe and save it and run a batch file that runs the image and converts it.. Oh and you have to view it in kevedit and save the file.. It doesn't show up in reg zzt. This'll all make sense with some tinkering or you can send some requests on converting images. Just remember if 2 hours on an image can be done in 10 seconds it's a winning ticket to success.

I know the newcomers are completely discouraged that there's all this stuff. Just remember there's always prefad enemies if you don't wanna oop it. You can make a good game with them.

Personally for making a serious game I'd pick SuperZZT. For those interested in SuperZZT I've got a good version with 64k per board limits thanks to WiL since I've made toolkits with just graphics exceeding the size. SuperZZT is a sidescroller/zoomed version of ZZT that never took off since the editor was kinda kept an insider secret and it was a little trickier to use. It also had 15 flags, many more pre-fad enemies. It had a special H button where you could get hints or even tweak it to do whatever you wanted, a special counter you could label, a scrolly title screen, water that flowed.

And just remember if you're feeling down, the author of ZZT-OOP wrote this himself:


Some of the puzzles in ZZT are really tough, but they can all be solved.
If you are really stuck on a board, write to me describing your problem and
I'll send you a hint. Unlimited user support!

FlaviusMaximus's picture

Would you guys mind if I

Would you guys mind if I send something similar to ZZT but it's not ZZT? I mean, it's very MS-DOS-ish and it's quite fun.

thesycophant's picture



That was fucking dumb.

Malingerer-Z's picture

DON'T beat yourself up over it.

I missed the first day so I could see my brother get married. I made time on Mother's Day to have dinner with my folks, my brother and sister-in-law, and STILL took a few hours out to put something together.

THANK YOU for organizing this. I've been working on other projects, and wouldn't have gone anywhere near ZZT otherwise. SO DON'T SWEAT IT. You are appreciated.