Skip to content

Legacy Maps

TheKillerey edited this page Sep 12, 2026 · 2 revisions

Legacy Maps

Before mapgeo, League maps shipped as room.nvr (and even earlier, room.wgeo) with Light.dat lighting, TGA/DDS textures, .troybin particles and their own sound banks. ReyEngine both views these maps and ports them into modern mapgeo projects — geometry, textures, particles, sounds, lights and decals.

Viewing

File ▸ Open Legacy Map (NVR)… loads an old map for inspection: geometry, textures (including TGA-era maps), and Light.dat lighting. Old Summoner's Rift, Twisted Treeline-era maps and similar all open this way. The character preview can use one as a backdrop too.

Porting into a modern map

Tools ▸ Port Legacy NVR / WGEO into Open Map… converts a legacy scene into the currently open mapgeo project. The window has three cards:

  • Destination cleanup — a re-port is deterministic: running it again cleans up its previous output first (selectably), instead of stacking duplicates.
  • Imported map alignment — an offset that places the imported world correctly relative to the destination map. It is a measured value you can edit, and it can be fine-tuned afterwards without re-porting.
  • Decal geometry — how the legacy decals are carried.

What comes across:

  • Geometry becomes mapgeo meshes with rebuilt culling grids and render regions, carrying the Texcoord7 channel the client needs.
  • Every legacy texture is converted to the game's .tex format and bound through a real runtime material — not a generic override the game would ignore. Port shaders are authored to match how the legacy surfaces rendered (including four-blend terrain and grass data), with materials de-duplicated only when their complete texture sets genuinely match.
  • Particles: the map's .troybin effects convert with their curves, force fields, spawn volumes, emitter rotations, flipbook rates and probability tables, and land on the Workshop shelf with a live preview while you tune them.
  • Sounds: the source client's map sounds are brought into a bank current League can load, by extending the map's own bank.
  • Lights: the legacy point lights become real dynamic placements (Lighting ▸ Port lights into the map).
  • Decals draw last and with the client's own depth and alpha rules; an earlier version rendered every ported decal black in game, and that is what the rule fixes.

The window remembers what it was last run with, so re-running the port to change one option does not mean re-deriving the others from memory.

The result is a normal mapgeo project — everything in Maps and Viewport, Materials and Lighting and Baking applies to it, and it exports like any other mod.

Clone this wiki locally