Chasm Bridge

Q. Does a narrow walkway over a deep void read as height, and does the drop behave? And then: can you see any of it?

Yes — and no, you could not. At 0.22 wide the player walked off every time and the walk never arrived; a bridge you cannot cross is a hole with a texture on it, and nothing in the file distinguishes the two. The detail pass then found the level was dark twice over: cbrock was painted at mean luminance 32.7/255, and every cliff surface carried vertex intensity 0.0800 — which IS the bake's floor, i.e. no light reached them at all. 32.7 × 0.08 = 2.6 out of 255. Fixing it broke the level a second way: the first relit build took the void fraction to 0.033, which is another way of saying there was no longer a void in the frame — a lit wall meets the walkway and reads as a corridor. The light has to stop at the lip. Sixteen 3DO rock spurs now hang off the cliffs, modelled by the level's ONE dynamic light, because a mesh takes sector ambient as a lower clamp and not a sum — ambient can only erase its shading. The reference photograph's own mean luminance is 36.70; p38_drop now measures 36.74.
archetypeChasm bridge
projectp38-chasm-bridge
date2026-08-30
built5 sectors · 67 surfaces · 16 spurs · 7 baked + 1 dynamic light · 0.95 of drop
packageP38.GOB, readme.txt, screenshot.jpg
build1 — 2026-09-05
sha2567c9077133fe0dad523e46a3bd16c35e5233d4eb9deadcb71f3f657df986ee7da

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

cbspancbledgecbrockcbwallcbroofcbtrimcbglowcbdoorcbspur

The readme that ships with it

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

 P38.GOB

 Does a narrow walkway over a deep void read as height, and does the
 drop behave? And then: can you see any of it?

 [cogfactory / p38-chasm-bridge]

 BUILD 1  --  2026-09-05
 sha256 7c9077133fe0dad523e46a3bd16c35e5

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

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

INSTALLATION
------------------------------------------------------------------------
Drop P38.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.

WHAT IS IN THE GOB
------------------------------------------------------------------------
        97  episode.jk
     44634  jkl\p38chas.jkl
      1221  jkl\p38chas.manifest.json
      2244  3do\cbpost.3do
      4021  3do\cbspura.3do
      3362  3do\cbspurb.3do
      3989  3do\cbspurc.3do
     32908  mat\cbdoor.mat
     32908  mat\cbglow.mat
     32908  mat\cbledge.mat
     32908  mat\cbrock.mat
     32908  mat\cbroof.mat
     32908  mat\cbspan.mat
     32908  mat\cbspur.mat
     32908  mat\cbtrim.mat
     32908  mat\cbwall.mat

    355740  bytes in 16 entries

CREDITS
------------------------------------------------------------------------
  Generated by tools/cogfactory in the openjkdf2_libretro tree.

  The readme format is styled after SM Sith Lord's cog headers,
  because his are the ones everybody read.

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