The COG Factory

COG Factory Experiments

The numbered experiments the pipeline was built out of, in the order they were run. One question each; the finding under each card is what the engine actually did, which was regularly not what was expected.

These are living projects, not finished releases. A level is rebuilt whenever something is learned — a lighting rule, a texture orientation, a whole detail pass — and it keeps its filename through all of it. The build number is how to tell which one you have: it is printed in the readme inside every zip, and it only moves when the level's bytes actually change.

Hello, CogP01

Hello, Cog

2026-08-22

The first light. A single COG dropped loose in the basefolder overrides the one inside the stock GOB, and its Print() comes back out to the test harness.

cogharness
NO DOWNLOAD YET DETAILS
Box RoomP02

Box Room

2026-08-22

The smallest level this engine will accept: one sector, six surfaces, a spawn point. The floor grid is deliberately loud so that every later experiment can see itself.

geometry
DOWNLOAD ZIP · 190 KB DETAILS BUILD 12026-09-05
Floor PianoP032 SHOTS

Floor Piano

2026-08-22

A row of floor tiles, each its own surface, each wired to a note. Walk across them and the room plays. The first project where a generated level does something.

cogsoundgeometry
DOWNLOAD ZIP · 115 KB DETAILS BUILD 12026-09-05
Hex FloorP043 SHOTS

Hex Floor

2026-08-22

A field of hexagonal pillars generated as a 3DO with its own template and class cog. Stand on one and it rises — three different ways, so the three can be compared.

3docoggeometry
DOWNLOAD ZIP · 242 KB DETAILS BUILD 12026-09-05
Adjoin GateP053 SHOTS

Adjoin Gate

2026-08-22

Two sectors and the hole between them. Adjoins are how every JK level is more than one room, so this one builds the pair by hand and then walks through it — with a walled-off negative control.

geometrycog
NO DOWNLOAD YET DETAILS
MAT MintP063 SHOTS

MAT Mint

2026-08-22

Four flat quadrants of pure colour, on a MAT written from scratch. The image is chosen so the checker can assert on actual rendered pixels rather than on whether something appeared.

materials
NO DOWNLOAD YET DETAILS
Light BakeP072 SHOTS

Light Bake

2026-08-22

The same room, five ways, to find out where a generated level's brightness actually comes from. Most of the obvious answers turn out to be doing nothing at all.

lightinggeometry
NO DOWNLOAD YET DETAILS
True ColourP085 SHOTS

True Colour

2026-08-22

The first room that looks like a room. Six generated 16-bit textures carry their own colour, so no colormap has to be matched and no 256-colour palette gets in the way.

materialsart
NO DOWNLOAD YET DETAILS
Modular MazeP096 SHOTS

Modular Maze

2026-08-22

Twenty-eight sectors, 366 surfaces, 66 adjoin halves and 128 braces — all grown from a six-line ASCII map by an edge-mask kit. Not one sector was placed by hand.

geometryart
NO DOWNLOAD YET DETAILS
SidearmP102 SHOTS

Sidearm

2026-08-23

Kyle arrives in a generated level holding nothing that works. This one finds the shortest path from that to a bolt actually leaving the barrel and hitting a wall.

thingscog
NO DOWNLOAD YET DETAILS
TerraceP113 SHOTS

Terrace

2026-08-23

The modular grid, now with height. Twenty-nine sectors and 390 surfaces of ramps, trapezoid walls and sloped adjoins climbing over six levels — and the player really walks up it.

geometry
NO DOWNLOAD YET DETAILS
DoorworksP122 SHOTS

Doorworks

2026-08-23

Every door in the level driven by one class cog, with no SECTION: COGS rows at all — and a shut door that genuinely stops you, verified by walking into it.

coggeometry
NO DOWNLOAD YET DETAILS
SwitchboardP13

Switchboard

2026-08-23

A cog calls a cog calls a cog, and every hop prints what it was handed. Unglamorous, and the reference every later multi-cog project leans on.

cog
NO DOWNLOAD YET DETAILS
Shooting GalleryP142 SHOTS

Shooting Gallery

2026-08-23

Four targets, one class cog, and a pistol. Shoot them and they go down and stay down — the first project where the player's own weapon drives the game.

thingscog
NO DOWNLOAD YET DETAILS
ViewdotP154 SHOTS

Viewdot

2026-08-23

A fan of hex panels that rises out of the floor in proportion to how directly you look at it. Look away and it settles. No buttons, no triggers — just gaze.

coginput
NO DOWNLOAD YET DETAILS
Stand FloorP163 SHOTS

Stand Floor

2026-08-23

A platform driven to arbitrary positions that you can still stand on while it moves. Sounds trivial; is the difference between a lift and a thing that slides out from under you.

thingscog
NO DOWNLOAD YET DETAILS
Head PitchP173 SHOTS

Head Pitch

2026-08-23

Jedi Knight will not tell a level cog where the player is looking vertically. This one works it out anyway, from one helper thing that exists for the length of a single subroutine.

coginput
NO DOWNLOAD YET DETAILS
Remote ControlP183 SHOTS

Remote Control

2026-08-23

Your body is frozen and your keys drive something else in the room. A survey of exactly how much of the player's input a plain level cog can take, with no mod anywhere.

inputcog
NO DOWNLOAD YET DETAILS
TetrisP193 SHOTS

Tetris

2026-08-23

It is TETRIS, and it is running inside one level COG. No mod, no DLL, no extended verbs, and not one thing on the board — the well is 200 wall surfaces and the game is 200 slots of the cog heap.

gamecogart
DOWNLOAD ZIP · 456 KB DETAILS BUILD 12026-09-05
Sound ForgeP20

Sound Forge

2026-08-23

Synthesised WAVs, written by us, loaded and played positionally by a thirty-year-old engine. The room is plain on purpose — the whole project is audible, not visible.

sound
NO DOWNLOAD YET DETAILS
Kiosk TetrisP213 SHOTS

Kiosk Tetris

2026-08-23

Tetris in a class cog on ONE THING. Walk up to a pillar, press Use, and a 10×20 well builds itself out of 200 cubes in front of it. Two kiosks from one template, sharing one heap.

gamecog
DOWNLOAD ZIP · 341 KB DETAILS BUILD 12026-09-05
Cog Size ProbeP22

Cog Size Probe

2026-08-23

A corridor with ten panels. Each is wired to its own COG, identical except for dead padding — 100 if-blocks behind the first, 1000 behind the last. Press each one and read what it prints. This is a…

cogprobe
DOWNLOAD ZIP · 190 KB DETAILS BUILD 12026-09-05
Pixel Screen (worker A)P23A5 SHOTS

Pixel Screen (worker A)

2026-08-23

The screen on its own, before a game was plugged into it. A test card, a font and a palette strip on a wall of individually addressed surfaces — and then the same cog again, much bigger.

screencogprobe
NO DOWNLOAD YET DETAILS
NO SCREENSHOTP23B

Input Bus (worker B)

2026-08-23

The other half of p23, built in parallel: one reusable cog that captures, debounces and forwards the player's keys while knowing nothing whatsoever about its client.

inputcogprobe
NO DOWNLOAD YET DETAILS
Pixel Screen + SnakeP236 SHOTS

Pixel Screen + Snake

2026-08-24

A 40×30, 64-colour pixel display cut into the wall of a Jedi Knight room, driven by a game running in a separate COG. The screen does not know what SNAKE is, and SNAKE does not know how a pixel gets drawn…

gamescreencogart
DOWNLOAD ZIP · 272 KB DETAILS BUILD 12026-09-05
NO SCREENSHOTP24

Trigger

2026-08-24

What a trigger actually is, measured rather than assumed — because digitron's whole protocol was about to be built on top of one. No screenshots: this project is a transcript.

cogmultiplayerprobe
NO DOWNLOAD YET DETAILS
MP ModeP253 SHOTS

MP Mode

2026-08-24

A one-room multiplayer probe. Four spawn seats, a wall of 200 switchable panels, and cogs that print what the engine thinks the session is: IsMulti, IsServer, GetNumPlayers, which walkplayer is yours, and…

multiplayerprobe
DOWNLOAD ZIP · 194 KB DETAILS BUILD 12026-09-05
DGTB NetDGTB

DGTB Net

2026-08-24

The DIGITRON trigger protocol on a bare rig: one room, three cogs, no screen. The client renders by PRINTING, so the STATE / INTENT / RESYNC wire can be measured with nothing else in the frame.

multiplayercogprobe
DOWNLOAD ZIP · 147 KB DETAILS BUILD 12026-09-05
DigitronDIGITRON4 SHOTS

Digitron

2026-08-24

A server-authoritative game of TIC-TAC-TOE on a 40×30, 16-colour pixel display cut into a wall. One cog owns the rules, another owns the pixels, and the wire between them carries GAME STATE ONLY — nine cells…

gamemultiplayerscreencog
DOWNLOAD ZIP · 174 KB DETAILS BUILD 12026-09-05
Geometry GateP263 SHOTS

Geometry Gate

2026-08-24

The level-design inner loop. Fifteen static checks plus the engine's own parse, so an agent can edit a JKL and get a verdict the way a JED user hits save-and-test.

geometryharnessart
NO DOWNLOAD YET DETAILS
Relay WheelP438 SHOTS

Relay Wheel

Deathmatch relay station

Can a level be built almost entirely out of ONE module rotated sixteen times — a curved ring around a solid core — and still play as a deathmatch map with real cover, real height, walls you can see the…

48 sectors · 1065 surfaces · 55 adjoins · 8 spawns · 31 powerups
leveldeathmatchradialtrim sheetpowerupsart
DOWNLOAD ZIP · 457 KB DETAILS BUILD 12026-09-05
Imperial OutpostP4410 SHOTS

Imperial Outpost

Singleplayer garrison outpost — TWO LEVELS

Can a hand-drawn floorplan become a playable singleplayer mission — and then a SECOND one in the same episode, with doors that open and a mission that ends?

L1 19 sectors · 402 surfaces · L2 24 sectors · 478 surfaces · 3 doors · 18 troopers · TYPE 1 SEQ 2
leveltwo levelssingleplayerenemiesdoorscog
DOWNLOAD ZIP · 233 KB DETAILS BUILD 12026-09-05
Lathe LoopsP458 SHOTS

Lathe Loops

Four stacked ring galleries

Can a grid-rotation loop — a profile lathed around the origin, braced at every joint and cut on the brace's own lines — be built four times over by four different orders of operation, and do the four come out…

224 sectors · 3120 surfaces · 352 adjoins · 4 loops · 8 switches · 128 lights
lathegrid rotationfour build orders, timedsquare-section braceboundary stitch chainstitch copies the material
DOWNLOAD ZIP · 600 KB DETAILS BUILD 12026-09-05
Imperial Supply DepotP468 SHOTS

Imperial Supply Depot

Can the p44 pipeline be driven entirely from a shared campaign.Level table, and can a level be fought through Imperial officers and commandos rather than plain stormtroopers?

12 sectors · 312 surfaces · 12 adjoins · one cycle · 11 enemies · 14 pickups
levelsingleplayerenemiesofficerscommandoslighting
DOWNLOAD ZIP · 295 KB DETAILS BUILD 12026-09-05
Droid BayP478 SHOTS

Droid Bay

Droid bay — the enemy that never moves

What does a level do for jeopardy when its enemies cannot hurt you? Stock droids are unarmed and their only combat instinct is Flee — so the turrets have to carry the level, and a turret never moves.

14 sectors · 348 surfaces · 4 turrets · 7 droids · 84.9% exposed · 15.1% cover
levelsingleplayerenemiesturretssightlinesoffline analysis
DOWNLOAD ZIP · 314 KB DETAILS BUILD 12026-09-05
Smuggler DenP488 SHOTS

Smuggler Den

Nar Shaddaa hideout, the anti-corridor

Do dense small rooms with many doors and crossfire sightlines make alien mercenaries read differently from Imperials — and what happens to a geometry checker in a level that kills the thing it is measuring…

30 sectors · 460 surfaces · 30 adjoins · one cycle · 13 hostiles · 5 doors
levelsingleplayerenemiesaliensmeleedoors
DOWNLOAD ZIP · 241 KB DETAILS BUILD 12026-09-05
Beast WarrenP498 SHOTS

Beast Warren

Cave warren, built upward

Can rooms adjoin each other DIRECTLY, with no corridors at all, and still have real wall thickness — and does a flying enemy need vertical space to be anything but a walker that hovers?

12 sectors · 299 surfaces · 12 direct joints · 13 creatures · 5 roosts
levelsingleplayercreaturesflyersverticalno corridors
DOWNLOAD ZIP · 543 KB DETAILS BUILD 12026-09-05
Walker YardP508 SHOTS

Walker Yard

Walker yard — the radius is the plan

Can an AT-ST fit? Its collision radius is 0.300 — 4.6× a stormtrooper — where a p44-scale level runs 0.35 corridors and 0.90 ceilings. What does a level look like when the biggest enemy is a plan-validator…

11 sectors · 284 surfaces · one cycle · 9.70 × 5.00 × 4.00 yard · AT-ST + escort
levelsingleplayerenemiesAT-STclass cogscale
DOWNLOAD ZIP · 295 KB DETAILS BUILD 12026-09-05
The Duel with YunP518 SHOTS

The Duel with Yun

Dark Jedi duel

What is the MINIMUM rigging for a Dark Jedi boss battle — a saber-wielding Yun who can be fought and killed in a generated level, with no cutscenes and no CD audio?

6 sectors · 167 surfaces · Yun, 500 health · yellow blade · 4 gate rows, 1 a control
levelsingleplayerbossdark jedilightsaberai
DOWNLOAD ZIP · 246 KB DETAILS BUILD 12026-09-05
The Dark Jedi GauntletP5212 SHOTS

The Dark Jedi Gauntlet

Six Dark Jedi arenas — ONE CHAINED EPISODE, with a staged finale

Can ONE generation-2 pipeline produce a SIX-LEVEL chained episode of Dark Jedi boss arenas — Yun, Sariss, Gorc and Pic together, Maw, a Jerec clone, and the real Jerec in a Sith temple who meditates…

6 levels · 44 sectors · 6 Dark Jedi, 11 placements · 44 textures, 8 computed · 6 generated tracks · 19 gate rows, 1 a control
levelepisodesingleplayerbossdark jedilightsaber
DOWNLOAD ZIP · 1 MB DETAILS BUILD 12026-09-05
The Deep CutP5311 SHOTS

The Deep Cut

EIGHT LEVELS DOWN ONE HOLE — a chained singleplayer campaign with objectives, secrets and a duel

Can this pipeline produce an EIGHT-LEVEL AAA singleplayer campaign — one continuous descent with objectives, retail secrets, doors, a rider-carrying lift, an escalating enemy roster and a final duel — from one…

8 levels · 186 sectors · 2,462 surfaces · 13.1–13.8 surfaces/sector · 34 secrets · 24 objectives · 65–83% of sectors sounded · 39 materials, 0 dflt.mat · 18 gate rows, 1 a control
levelepisodesingleplayercampaigneight levelsobjectives
DOWNLOAD ZIP · 504 KB DETAILS BUILD 12026-09-05
Sim Deck SevenP5425 SHOTS

Sim Deck Seven

A TRAINING SIMULATOR THAT KNOWS IT IS ONE — the holodeck style experiment, with a verdict

Is a TRAINING-SIMULATOR aesthetic — grid-true geometry, hard right angles, emissive trim, exposed projector housings, scenery that materialises and de-materialises in front of you — a style this toolchain does…

1 level, 7 chambers (7 SED saves, merged offline) · 56 sectors · 1,152 surfaces · 103 things · 31 materials, 0 generated · 12 hostiles incl. a hung turret · 1 secret · 8 objectives · 8 double doors · 2 movers · 5 gate rows, 2 controls · 20-36 s per chamber in SED
levelsingleplayerstyle experimentholodeckvoxel latticeemissive trim
DOWNLOAD ZIP · 255 KB DETAILS BUILD 12026-09-05