ZIL Coding


Hi folks,

I’m going to try and share as much content here as possible, we have a group on Facebook which you are welcome to join.


It’s actually quite a nice language to use. Any questions, just ask!




ZILF and ZAPF are available at bitbucket.org/jmcgrew/zilf/, with source code for the tools, and ZIL code for a parser and samples, including a port (of a port of a port) of Colossal Cave. The parser probably isn’t as robust as the original, but it uses the same table formats.

ZILF implements a large subset of MDL, enough to use for ZIL macros but not enough to self-host the compiler, which makes it the least faithful of the three Muddle implementations I’m aware of. The other two are Matthew Russotto’s Confusion, which implements enough to run the original version of Zork, and the original MDL105, which is still hosted (along with Zork) on a public TOPS-20 server at twenex.org.

(the above was written by Jesse McGrew)





One of our ZIL Revivalists created the groups first game! Jack Welch <-- Well done sir!



It’s not finished yet but i’m working on a beefed up verbs file which (to keep it tidy) I have created a new file called verbs_plus.zil

It’s work in progress, attached is the current file.

… UPDATE! … I can’t upload the file here as ironically the forum doesn’t like .zil extentions :-p

“The extension zil is not allowed.”

(Daniel Stelzer) #6

The forum doesn’t like most file types, as it turns out…the general workaround for source code is to rename it to “whatever.zil.txt”


Ok, that’s a shame, thanks for the workaround though.



ZIL Goals for 2018

  1. Mechanism.zil - code for NPC character movement, strength vs weight, other turn-based event code.

  2. Artificial_Intelligence.zil - Direct conversation with the machine code. Also Player input storage and reference.

  3. Saint Mallory game demo.

  4. Building 26 game demo.

  5. Luna Parcs game demo.


I made a slight revision to “The Beanstalker” 5 minute demo game.

Now that one person has played it, I consider it “beta-tested” :slight_smile:

Version 1.0: github.com/dhakajack/bean/releases/tag/v1.0


I just updated the Learning ZIL blog with an explanation of library overrides in ZILF.
See also https://learningzil.blogspot.com/2018/06/heidi-in-zil-story.html and


That now responds with a 404 error. Has the repository moved to some other location you can show us?


Try bitbucket.org/zilrevivalistsclub/
That should work.

EDIT: and it does. :slight_smile:


What happened to the revivalist club? The Learning ZIL blog is gone and the BitBucket URL (even the https one) returns a 404.
I think something like the Learning ZIL blog (and the facebook group as well, although I don’t have a facebook) could be useful for folks (like myself) still learning and investigating ZIL. (I’ve also done some Hugo investigating as well, so much so that I think I’ll use it for one of my WiPs.)

(Eldritch Eschaton) #14

The revival might have been short-lived, I guess. The Facebook group is still active but you have to want to be on Facebook for something like this. I’m not sure why that group wouldn’t just post here more.

The only tooling I know of for this is ZILF and while that’s cool, it’s in C#. I have nothing against C# personally as I think it’s a beautiful “upgrade” to Java. But it’s generally the case that very few people actually want to work with that language, at least outside of a professional context, and the ZILF project has lots of configuration stuff. I tried loading it in a modern Visual Studio and that wasn’t fun. Even looking at the source, it’s just not worth getting involved to help evolve it.

That doesn’t matter for writing ZIL of course but ZIL is really niche. So you’re going to need a healthy ecosystem where developers want to contribute so that non-developers can also contribute. Without that, a revival just isn’t going to happen.


I’m a huge Infocom fan. I like ZIL. I think it’s beautiful and would love to code in it, but I’m rabidly anti-Microsoft, so I’m not going to use ZILF.


Cool? ZILF works in Mono?


zilf and zapf work with mono on my RPi running with Raspbian.

(Eldritch Eschaton) #18

For what it’s worth, I think the whole “rabid against Microsoft” thing probably needs to die down a bit. It’s almost a decade out of date now. Microsoft is a very, very different company than they were. For it’s part, ZILF has nothing to do with Microsoft so you should be okay there. :slight_smile: Yes, I get it: C# and that’s part of Microsoft’s .NET. But it really is a very nice language. By counter-example, I’m not an Oracle fan but I don’t let that stop me from using Java if there’s a really good tool in Java that does what I want. I’ll also second those who mention that ZILF does work in Mono on a non-Microsoft operating system.

All that said, I do wish ZILF was in something other than C# and it’s partly due to the response you have to Microsoft, as many others do, but it’s also what I stated: outside of a professional project context, lots of folks aren’t willing to use C# or just don’t want to. One of the main exceptions I see to that from a game development perspective is with Unity, which uses C# as a backend. Although you can use JavaScript as well. (Of course, many people claim they are rabidly anti-JavaScript too for a variety of reasons.)

The question then becomes perhaps: What language would it make sense to have a ZILF-like tool in? C? C++? Python? Ruby? Java? Scala? Clojure? Haskell? Rust? Go?


Hi folks,

The ZIL group is all good, still there, so rest assured it has been “revived”. I can’t respond to the C stuff, but ZIL code itself is (for me) nice to use and not difficult beyond what any other coding language would present.

I’ll share the competition details here when I know more and anyone wishing to join will be very welcome.



… if it helps, I do my ZIL coding on a Raspberry Pi running MATE. Linux all the way for me!