The COG Factory / Level Design Projects
Imperial Supply Depot
DOWNLOAD ZIP · 295 KBBUILD 12026-09-05
Q. 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?
Yes to both, and the first level off the shared kit found two bugs in it. Twelve sectors in one ring with ceilings from 0.50 to 1.50 — a 3:1 spread against p44's — and the spread is what exposed them. A light rig with one range for every room bakes a tall room black: the 1.50 bay hung its lamps 1.43 above its own floor and returned 0.0116 there, with four lamps in the room. The offline predictor could not see it, and that is the sharper half — its flat-at-ambient test was a per-SECTOR maximum, and a ceiling 0.07 from a lamp is bright, so the room failed per-surface while passing per-sector. And a tier-2 RED that named a doorway was a corpse: geom runs its stand probes before its walks in one warm session, five of six rooms hold enemies, so the stand probes wake the garrison that then kills the walker. p44's rule was to route walks away from the fighting; that is not enough when the earlier probes start the fight.
| archetype | Imperial supply depot |
|---|---|
| project | p46-supply-depot |
| date | 2026-08-30 |
| built | 12 sectors · 312 surfaces · 12 adjoins · one cycle · 11 enemies · 14 pickups |
| package | P46.GOB, readme.txt, screenshot.jpg |
| build | 1 — 2026-09-05 |
| sha256 | 6fc522090413eaeb486402225b240f259caa2b392070384c98c4d4f0231b8fe0 |
Installing it
- Unzip it.
- Drop the
.GOBinto theepisodefolder of a Jedi Knight install — the one that already hasJK1.GOBin it. - Pick it from the episode list. On a libretro frontend, load the
.GOBitself as content.
The GOB carries its own level, cogs, materials and sounds and
reads the stock resource/ for everything else. There is no
retail game data in the zip.
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.
Screenshots
Textures generated for this project
The readme that ships with it
========================================================================
Jedi Knight Level
P46.GOB
A working Imperial supply depot in twelve sectors, whose ceilings run
from a 0.50 transfer tunnel you duck through to a 1.50 gantry bay you
cannot see the top of without looking up. Eleven Imperial OFFICERS AND
COMMANDOS hold it -- not stormtroopers -- and clearing the last one
takes the depot.
[cogfactory / p46-supply-depot]
BUILD 1 -- 2026-09-05
sha256 6fc522090413eaeb486402225b240f25
This level is not made or distributed by LucasArts
Entertainment Co.
========================================================================
THIS PACKAGE
------------------------------------------------------------------------
P46.GOB the level
readme.txt this file
screenshot.jpg what it looks like
INSTALLATION
------------------------------------------------------------------------
Drop P46.GOB into the `episode` folder of a Jedi Knight install (the one
that already has JK1.GOB in it) and pick it from the episode list.
Nothing else needs to change: the GOB carries its own level, cogs,
materials and sounds, and reads the stock resource/ for everything else.
On a libretro frontend, point the core at the GOB itself. It needs a
folder beside it holding `resource/` from a real install -- that is
where the retail data lives and none of it is in here.
CONTROLS
------------------------------------------------------------------------
PLAY IT: New Game, and pick COG Factory p46 Supply Depot.
You start on the receiving dock with fists, a Bryar pistol, and a captured
STORMTROOPER RIFLE with a hundred energy cells -- because eleven officers
and commandos against a Bryar is not a fight.
The depot is a RING: dock, low stores, mid stores, high bay, spine, office,
and back to the dock. There is no dead end to back out of.
The repeater is in the high bay, the crossbow in the office, and the bacta
tank is in the far corner of the tallest room in the level.
KILL EVERY OFFICER AND COMMANDO to secure the depot.
NOTES
------------------------------------------------------------------------
THE CEILINGS ARE THE LEVEL. Twelve sectors spread over 0.50 to 1.50
world units of height -- a three-to-one range, against p44's 0.48 to
0.90 -- and every transfer tunnel is lower than both rooms it joins,
so every doorway reads as a threshold. That effect is free: a
doorway is the overlap of two faces, and the overlap in height is
simply the lower of the two ceilings, so stepping out of a 0.50
tunnel into a 1.30 dock is what the carve rule does rather than
something built on top of it.
A HEIGHT-BLIND LIGHT RIG BAKES A TALL ROOM BLACK, and it does it
quietly. The shared rig hangs every lamp just under its ceiling and
gives every room the same range, which is right when every room is
about the same height. Here the high bay's lamps hang 1.43 above its
floor, and I*(1-d/R)^2 at R=1.70 hands back one and a half percent
of the lamp -- the floor of the biggest room in the level, predicted
at 0.183 against an ambient of 0.170. Deriving each sector's range
from its own height instead takes that floor to 0.600, and the whole
level was tuned offline against a predictor that runs in
milliseconds and cannot disagree with the engine.
SED WRITES THE WHOLE TEMPLATE CHAIN, AND THAT WAS WORTH MEASURING.
This level's enemies are a four-deep lineage the toolchain had never
used -- icommandorpt over icommando over _humanactor over _actor,
plus three projectile chains -- and a child template that arrives
before its parent is dropped at parse with no log line at all. SED
resolved all nineteen rows against its own master.tpl, in dependency
order, together with every model, puppet, sound class, AI class and
actor cog they name. The generator's injection fallback ran and
added exactly zero rows.
THE TRIM SHEET DID NOT FIT, AND NOTHING IN THE TREE WOULD HAVE SAID
SO. The four band-sampling windows are constants of a shared module,
fitted to an older sheet; this one came back divided at rows
32/65/98 and the fourth window opens at row 94, so it would have
sampled a band and a half. No geometry check looks at a texel. The
generator measures the sheet's own band edges and resamples each
band onto the rows the windows expect.
ELEVEN ENEMIES, FOUR TEMPLATES, THREE WEAPONS, AND A KILL COUNTER
THAT HAS TO SURVIVE THEM SHOOTING EACH OTHER. A cog thing symbol's
default mask is 0x401 -- no sender, or a player -- and this garrison
shares rooms while carrying +ebolt, +elaser and +eball. An officer
killed by a commando's crossfire is an ACTOR-sourced kill that the
default mask drops, which would leave a depot that can never be
cleared.
WHAT IS IN THE GOB
------------------------------------------------------------------------
98 episode.jk
112483 jkl\p46depot.jkl
2545 jkl\p46depot.manifest.json
3331 cog\p46done.cog
2979 cog\p46start.cog
32908 mat\p46ceil.mat
32908 mat\p46crat.mat
32908 mat\p46door.mat
32908 mat\p46floor.mat
32908 mat\p46trim.mat
32908 mat\p46wall.mat
318884 bytes in 11 entries
CREDITS
------------------------------------------------------------------------
Generated by tools/cogfactory in the openjkdf2_libretro tree.
Geometry authored through SED (github.com/smlu/SED) over the
cogfactory bridge.
LucasArts did not make this. Jedi Knight is theirs; this is a fan-
made level.
The readme format is styled after SM Sith Lord's cog headers,
because his are the ones everybody read.
========================================================================













