Suggestions for an Ozmoo-compatible newbie-friendly game

I’ve got a friend who regularly streams games on the Commodore 64, real hardware, and I’d like to send him a game using the Ozmoo interpreter for him to stream. The game should have the following properties:

  • It should play well with the Ozmoo interpreter. That means it should be a Z-code file, and ideally a small one. Z5 would be a good choice.
  • It should be newbie-friendly. (No worse than ‘polite’ on Zarf’s Cruelty Scale.)
  • It shouldn’t be fantasy-themed. Fantasy games bore him. Any other genre should be fine.
  • It should be legal to distribute. (So nothing from Infocom.)
  • It should be a good game (obviously).

Any suggestions?

I have not ever used Ozmoo myself, but here are some suggestions that fit your other criteria.

Adam Cadre’s 9:05 is a short .z5 game with a small file size (85K) that plays with classic IF tropes and builds them toward one big reveal. The joke is on the player, but it doesn’t take long to get there, and it’s a funny joke. Alternately, I-0 has multiple branching paths and optional racy content and is still a small file (~180K).

A lot of Graham Nelson’s stuff satisfies your requirements. Curses! might be a good choice, though it’s a rather hard, puzzle-oriented game by contemporary standards. The Meteor, the Stone, and a Long Glass of Sherbet is also possibly a good move, in part because it pays close attention to very old-school IF tropes.

Rob Noyes’s Pick Up the Phone Booth and Die is another small single-joke game.

Andrew Plotkin’s Spider and Web is a fantastic spy game with lots of equipment to play with and one of the most famous plot twists in IF.

Gareth Rees’s Christminster is a large-ish puzzly game, though I don’t recall it being particularly cruel. The characters are rich and the story is wonderful.

Emily Short’s Galatea is a wonderful conversation game. Her Metamorphoses is a fun simulationist game, too. And her Savior-Faire is a .z8 at about 260K, but it’s a really fun piece with an incredibly detailed world and a well-developed magic system.

Brendon Wyber’s Theatre is a nice creepy horror game with a large map that gradually unfolds itself to the player.

I have played around with Ozmoo a bit. The following games could be built with Ozmoo Online (some of them requires two disk sides though):

Earth and Sky (Super Hero story)
Theatre (Horror)
Calypso (Mystery)
The Edifice (Science Fiction)
Final Exam (Science Fiction)
The Orion Agenda (Science Fiction)

It is my impression that they are all quite slow on a c64. I remember Earth and Sky being quite easy.The Orion Agenda wasn’t so difficult either.

The map in Christminster is definitely too wide for a C-64 display.

1 Like

Ah, I’d forgotten about the map! Thank you for catching that.

To someone not familiar with the tropes it invokes, the ending is going to seem the opposite of clever.

I’m hesitant to suggest he stream a game with even optional sexual content (and isn’t the main character underage?)

According to IFDB, this has a Zarf’s rating of Cruel, which is the opposite of newbie-friendly.

“Zorkian” probably qualifies as ‘fantasy-themed’, which he doesn’t like.

This works better for someone familiar with the usual sorts of commands you might give an Inform game, I think.

This might work. I’ll check it out.

As noted, this isn’t 40-column compatible, but I’ll check it out for myself.

This might be a good choice too. (The other suggestions you made from her, sadly, are fantasy-themed.)

He does like horror games! I’ll take a look at this. e: darnit. Apparently it needs at least a 50-column screen.

Denk, I didn’t miss your suggestions, but I figured I’d better head off more unsuitable suggestions from other folks. I’ll dig through yours and see if any of them strike my, and his, fancy.

It’s hard to meet all those requirements.

For A Change by Dan Schmidt is a .z5 at 90 kB, and well worth a play. Some of the puzzles are hard, but the game is mostly forgiving. There are a few places towards the end where you can die, but I think those are clearly signposted.

Shade would probably work. It’s not appreciably more fantastical than Galatea. In a similar vein, Tethered should also fit the bill.

I’d stay away from Christminster; the opening puzzle is not what I would call newbie-friendly at all. Among other things, it involves a complicated timing sequence where you have to coordinate with events that are taking place in a different location from where you are.

The Act of Misdirection is a 216K zcode horror game set in Victorian London with a linear sequence (but still interactive) that can’t be put in an unfinishable state. And it’s very good! The first of three parts is a classic IF set piece.

So it turns out that Ozmoo is nigh-on unplayably slow if you feed it an Inform game. It works okay for Infocom games, but the Inform library is just too weighty for it. Thanks for the suggestions anyway - I’ll wind up playing some of them myself on my PC - but I think I’m going to look into alternatives for my friend’s stream.

Inform 7 is slow. Inform 6 generates more efficient Z-code. I played (and beat) Varicella on the C64 using Zeugma, enjoying reasonably good response times. However, Zeugma requires a Ram Expansion Unit, and this allows it to run faster than Ozmoo.

One of my long-term aspirations with Dialog is to bring modern, narrative-driven IF to platforms like the C64. I’m not there yet, but the work is ongoing.

A few years ago I grabbed a copy of Inform 6.15 and library 6/2 in the hopes of someday making a Z-machine version 3 game. I wonder if that would work any better on Ozmoo than a Z5 game.

Is Lost Pig too “fantasy-themed”? It’s about an orc trying to catch a pig. It’s the kind of setting that has orcs in it, but the world is seen through the eyes of… well, read the sample text there.

There’s also Photopia.

Do you know where I could find 6.15? I know Minform suggests it, but I wasn’t able to track it down, and that might do the trick for my development.

The source code is in the Archive. IIRC, I only had to add extensions to the filenames in order to compile it with GCC.

By the way, it should probably be spelled out that file size is the best predictor of whether a game will run smoothly in Ozmoo. The larger the game, the more the interpreter needs to swap in data from disk. And disk access is several orders of magnitude slower than computation.

1 Like

So the main issue with Inform 6 is less that the library is complex and more that it is simply large? And I should keep my games bite-sized?

I didn’t see this thread until now. Replying in case anyone still cares.

Anyway… this may be TL;DR, but here goes.

The Inform 6 library was never created with 8-bit machines in mind. A minimal game with one room and no objects compiles to a Z-code file of about 65 KB with the latest version of the library, IIRC. This is without strict error checking, otherwise it’s even bigger.

When playing a z5 game on Ozmoo, there is 49 KB of RAM available for the story file. The dynamic memory part of the story file (say ~10 KB for a simple game like 9:05) must stay in RAM at all times. So, there’s ~40 KB left for story data. Unless the entire game fits in 49 KB, Ozmoo will read the different parts of the story file as they are needed, overwriting some other part to make room (this is called paging or virtual memory). If the parts needed to complete any single move the player makes are always bigger than the available RAM, Ozmoo will need to read parts from disk every turn. This gets tedious very quickly. The newer versions of the library pretty much guarantee that this will be the case, even for very simple games.

If you have a RAM expansion, Ozmoo will let you use it for caching the whole story file, and read from the RAM expansion instead of the disk, thus speeding up gameplay a lot. Playing on a C64 with an SD2IEC is also a lot faster than one with a 1541 disk drive.

Early versions of the Infom 6 library produced smaller code, which helps a lot. And Inform 5 even more so. The structure of the code may also have been more suitable for machines that need to utilize virtual memory. One thing is for certain: Early Inform 6 games are a lot faster than late ones. And Inform 7 games and Dialog games are at least an order of magnitude slower than new Inform 6 games.

The z3 format is not faster than z5 in itself. One difference is that the z3 format leaves statusline printing to the interpreter, which means that part is very fast. The z5 format requires a slightly larger interpreter, which leaves less RAM for story data, but the difference in Ozmoo’s case is only about 1.2 KB. Apart from this, the z5 format actually supports some very nice instructions which can be used to make programs faster. This was used by Infocom, but not at all by Inform 6, as far as I know.

As for printing the statusline in z5 games: Infocom’s z5 games were carefullt designed to be fast on the platforms they were to be released on. One detail that came out of this is that a statusline for a 40 character wide screen is cleared using a loop with four iterations, printing ten spaces at a time. In the Inform library, the same effect is accomplished with a loop which iterates 40 times, printing a space each time. Also, the loop code is less efficient than in Infocom’s loop. This is just an example of the effects of the Inform 6 library being written on and for machines that were about 15 years newer.

I would perhaps recommend Ad Verbum. It has one or two quote boxes which are actually too wide for the screen, but Ozmoo handles the situation pretty gracefully. And it’s an excellent game! The early z3 version of Curses! is a good fit too.

3 Likes

That’s curious. I tested earlier Dialog builds and found the speed compared favourably to modern I6 games. On the face of it, that’s worrisome, but presumably this is due to @lft optimizing Dialog for the Å -machine.

Indeed, the Å-machine is a different beast. So yes, you can play Dialog games on a C64, but not in the Z-machine format.