The COG Factory / Level Design Projects

Smuggler Den

Nar Shaddaa hideout, the anti-corridor
DOWNLOAD ZIP · 241 KBBUILD 12026-09-05
Smuggler Den

Q. 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 with?

A dead player and a bricked-up doorway print the same line, character for character. geom gives a walk 1800 frames; thirteen hostiles do not allow ninety seconds. A dead player does not move, so goto trips none of its three failure shapes — STUCK is gated on forward thrust and a corpse is never commanded forward — and all you get is never arrived; sectors visited [15]. The tell is one bit, SITH_TF_DEAD = 0x200, appearing between two 12-frame polls. The same walk one second after boot arrives in 49 ticks. And it is non-deterministic — same binary, same JKL, same manifest, one run arrives and the next stalls — so this level's manifest declares NO walks at all and the crossings are asserted at boot time by destination sector instead. Thirty sectors in a 3.80 × 4.15 footprint, 1.9 sectors per square unit, and nothing clamped in the bake.
archetypeNar Shaddaa hideout, the anti-corridor
projectp48-smuggler-den
date2026-08-30
built30 sectors · 460 surfaces · 30 adjoins · one cycle · 13 hostiles · 5 doors
packageP48.GOB, readme.txt, screenshot.jpg
build1 — 2026-09-05
sha256ddacb272162eee986562cacdb120b030fb5a0e00322c2dc0249bdc3b0337a2f5

Installing it

  1. Unzip it.
  2. Drop the .GOB into the episode folder of a Jedi Knight install — the one that already has JK1.GOB in it.
  3. Pick it from the episode list. On a libretro frontend, load the .GOB itself 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

p48wallp48floorp48ceilp48trimp48doorp48crat

The readme that ships with it

========================================================================
 Jedi Knight Level

 P48.GOB

 A Nar Shaddaa smuggler hideout: nine small rooms packed against each
 other, five blast doors that really open, and a common room with a
 door in every wall. Thirteen aliens and mercenaries -- Rodians, Gran
 and Gamorreans -- six of them melee, in rooms two strides across.
 Clear the den to complete the mission.

 [cogfactory / p48-smuggler-den]

 BUILD 1  --  2026-09-05
 sha256 ddacb272162eee986562cacdb120b030

 This level is not made or distributed by LucasArts
 Entertainment Co.
========================================================================

THIS PACKAGE
------------------------------------------------------------------------
  P48.GOB          the level
  readme.txt       this file
  screenshot.jpg   what it looks like

INSTALLATION
------------------------------------------------------------------------
Drop P48.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 p48 Smuggler Den.
  You start with fists, a Bryar pistol and a stolen STORMTROOPER RIFLE, plus 100 energy cells and 50 power cells.
  FIVE DOORS OPEN -- walk up to one and press USE. Either leaf opens both, and they shut themselves after four seconds.
  The crossbow is in the contraband store (east), the repeater in the hold below it, and the bacta tank up in the loft.
  DO NOT LINGER IN THE MIDDLE OF THE COMMON ROOM. Four doorways see that square at once, and that is on purpose.
  KILL EVERY HOSTILE to clear the den.

NOTES
------------------------------------------------------------------------
  THE OPPOSITE OF A CORRIDOR. p44's outpost is rooms joined by
  hallways, and a hallway is a place you meet one thing at a time.
  This is thirty sectors in a 3.80 by 4.15 footprint -- 1.9 sectors
  per square unit -- where every doored corridor is 0.40 long and 0.16
  of that is the threshold itself. A corridor here is a door frame
  with a stub at each end.

  THE CROSSFIRE IS A MEASUREMENT, NOT A MOOD. The west and east
  doorways' throats overlap over 0.160 world units of the common room;
  the north and south pair overlap over the same. Where the two lanes
  cross is a 0.160 by 0.160 square -- 1.23 times the player's own
  width -- that all four open doorways can see at once. Miss that
  alignment by 0.05 and the level still builds, still passes every
  check, and quietly has no crossfire in it.

  MELEE IS THE POINT. Six of the thirteen are Gamorreans with axes and
  Rodian brawlers. A Gamorrean down a long corridor is a non-event; a
  Gamorrean in a still 1.30 by 0.50 across is a problem you have to
  solve with the door behind you.

  FIVE DOORS THAT OPEN AND FIVE WELDED SHUT. Each working door is a
  threshold cut into a corridor -- two sector halves 0.26 wide and
  0.48 tall against the corridor's 0.35 by 0.58, so the set-back is a
  reveal with real depth -- plus two 3DO leaves carrying half the door
  texture each, which reassemble the picture when shut. The five
  sealed panels are the same sheet at 1:1 on a 0.40 square.

  AND IT IS LIT LIKE A HIDEOUT. Every other level in this tree lights
  its rooms to one standard. This one has a per-room lamp: bright over
  the common room and the still, dark over the bunks and the hold, and
  nothing anywhere above the engine's own 1.0 clamp -- because
  anything past that clamp is contrast you paid for and did not get.

WHAT IS IN THE GOB
------------------------------------------------------------------------
        96  episode.jk
    146044  jkl\p48den.jkl
      2541  jkl\p48den.manifest.json
      3400  cog\p48done.cog
      3467  cog\p48door.cog
      2701  cog\p48start.cog
      2257  3do\p48leafl.3do
      2253  3do\p48leafr.3do
     32908  mat\p48ceil.mat
     32908  mat\p48crat.mat
     32908  mat\p48door.mat
     32908  mat\p48floor.mat
     32908  mat\p48trim.mat
     32908  mat\p48wall.mat

    360207  bytes in 14 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.

========================================================================