Rearrange the castle of Ultimate’s Knight Lore (1984), the starship of Alien 8 (1985) or the world of Pentagram (1986), and play it: open a snapshot of your own copy of the game, edit its rooms, and download the game again with your rooms in it. Nothing leaves this page — there is no server. New to it? Read the .
.sna or .z80 here, or click to choose one.
Take it at the menu, before a game has started.
The room editor lets you rearrange the rooms of three of Ultimate's Filmation games — Knight Lore (1984), Alien 8 (1985) and Pentagram (1986) — and then play them. You open a snapshot of your own copy of the game, change its rooms, and download the game again with your changes in it. The result runs in any ZX Spectrum emulator.
It is a single web page: jonsole.github.io/zx-spectrum-disassemblies/room-editor.html. Everything happens in your browser. Nothing is uploaded, and the page contains none of the games themselves: every room and picture you see comes from the copy you open.
A snapshot of the game, taken at its menu, before a game has started: a 48K .sna or .z80 file. The editor takes snapshots rather than tapes because a tape's contents are only the game once it has loaded — Knight Lore's tape is even scrambled until its loader has run.
To make one, load your copy of the game in an emulator, wait for the menu, and save a snapshot. In Fuse it is File > Save Snapshot; in the ZX Spectrum emulator for VS Code the command ZX Spectrum: Save Snapshot... does it. Most emulators have something similar.
Use the original game. A snapshot the editor has already changed can only be opened again if its tables did not move; if they did, it is refused (see Carrying on later for how to keep working instead).
Drop the snapshot onto the page, or click the box and choose it. The editor tells which of the three games it is and opens it. The bar across the top then says which game you are editing and which file.
If you have saved work in this browser before, the first screen offers to Continue with it. Forget it clears it.
The bar at the top has everything that is not about one room:
| Rooms / Templates | The two editors: the rooms, and the templates they are built from. |
| Undo / Redo | Step back and forward through your changes, in either editor. Ctrl+Z and Ctrl+Shift+Z do the same. |
| Save | Keep your work in this browser (Ctrl+S). |
| Download .sna | Build the game with your changes and download it. |
| Export / Import | Save your work to a file, and load it back. |
| Close | Go back to the first screen. |
Messages from Save and Download appear under the bar, in green when all is well and red when something needs fixing. The word unsaved appears beside the buttons when you have changes you have not saved.
On the left is the map of every room. Knight Lore's and Alien 8's rooms sit where their numbers put them, on a 16 by 16 grid. Pentagram's numbers are not places, so its map is laid out by following the doorways from the first room; any room the doorways never reach is listed under the map. The room you are editing is highlighted.
Starting rooms lists the rooms a game can begin in — each game picks one of four at random. Click one to go there. To change one, go to it, press Change, then click the room on the map to use instead; rooms that cannot be a starting room are dimmed, and hovering over one says why. Cancel or Esc stops choosing. A starting room needs the middle of its floor clear, because that is where the player appears.
Ways out lists the room's doorways. In Knight Lore and Alien 8 the room a doorway leads to follows from where the room is on the map, so each is a button that goes there. In Pentagram each doorway says which room it leads to, and you can change that number; go goes there.
In the middle is the room, drawn as the game draws it.
A selected object or collectable is marked on the floor beneath it, with a dotted line up to it when it is above the floor, and anything in front of it is drawn see-through.
Under the picture:
Under the room, Checks lists anything wrong with the castle. An error (red) would stop the game being built — a room with too many pieces, a doorway to a room that is not there, a starting room with something in the middle. A warning (yellow) builds, but is worth knowing about — a doorway with no way back, or walls that no longer match a room's floor. Each one names its room; click the room number to go there.
Objects lists the room's objects in groups: one kind of object, and the squares it stands on. Change a group's kind with its dropdown, and click a square's coordinates to select that object. To add objects, choose a kind in the bottom dropdown and press Place; the new object appears in the middle of the floor, ready to drag. Clicking an object in the room sets the dropdown to its kind, so Place adds another of the same. A group holds up to eight.
In Alien 8, each group also has a raise: the game can lift a group of objects up by a number of units, and 48 — four levels — is what it uses.
Scenery lists the room's walls, arches and other fixed pieces. Change one with its dropdown, remove one with ×, and add one from the dropdown at the bottom with Add.
Collectables (Knight Lore and Alien 8) lists the things that start in this room — Knight Lore's charms, Alien 8's valves — with their position and room, which you can type in. Show as kind only changes how they are drawn: the game decides at random which kind each one is when a game starts. A room shows at most two.
Shapes lists the floor shapes every room stands on: how far the floor reaches from the middle across and along, and how high it is. Changing a shape changes every room that uses it. See Shapes.
Rooms are not built piece by piece. Each is a list of templates — "a north arch", "a wall", "a block" — and a template is a set of pieces. Change a template and every room that uses it changes too.
Press Templates in the bar to edit them. The list on the left has every scenery and object template, with how many rooms use each. Pick one to see it:
New at the foot of each list makes a new, empty template.
A room's shape is its floor: how far it reaches from the middle in each direction, and its height. Every game has three: square, and narrow each way. The Shapes tab lets you change them and add more — up to 32 in Knight Lore and Pentagram, and 4 in Alien 8.
Changing a shape changes where the game stops you walking and where you arrive through a doorway — but not the walls and arches you see, which are scenery. If they no longer line up, Checks warns you about each room, and the fix is to move or add wall pieces (see Templates).
Press Download .sna. If the castle is fine, a .sna file downloads and the message under the bar says how much space is used and free. Open that file in any Spectrum emulator and start a game from the menu as usual: choose your controls with the number keys the menu lists, then press 0.
If something is wrong, nothing downloads and the message says what — see Limits.
The editor puts your rooms back into the game's own memory, which has no room to spare. Download refuses anything the game could not cope with, and says why.
The game itself does not check most of these — a room with one piece too many overwrites other parts of the game — so the editor does.
.json file, to keep, share or move to another computer. Import reads one back into an open game; it has to be the same game.To carry on from a castle you have downloaded, open your original snapshot again and Import the castle you exported — the downloaded game itself cannot always be opened again.
.sna snapshots; the editor does not make tapes.| Message | What to do |
|---|---|
| This is not an original copy of ... that the editor knows | Use a snapshot of the original game, taken at the menu. Other releases and hacked copies are not recognised. |
| This copy ... has had its rooms changed already | Open the original snapshot, and Import your castle. |
| Not built: ... needs N bytes and the original has M | Remove something — objects, scenery, template pieces — to free the bytes it says. |
| Not built: room ... fills N object records | That room has too many pieces; remove some. |
| Not built: ... is a starting room, and ... stands in the middle | Move what stands in the middle, or choose another starting room. |
| Not built: ... leads to room N, which there is not | Point the doorway at a room that exists (Pentagram). |
| This browser would not keep it | Your browser is not letting the page save. Use Export instead. |
For how the editor works inside — the tables it rewrites and how it was checked against each game — see docs/room-editor.md.