
Maps and levels · R.E.P.O. v0.4.0 · read from a local copy
How a level is put together
A level is kept as its own description with a module count, a passage limit and a note about enemies.
A level in R.E.P.O. is assembled rather than hand-placed: the game keeps a description of each level and then builds the map through a fixed sequence of stages before anyone is let loose in it.
What the game establishes
- A level is kept as its own description with a module count, a passage limit and a note about enemies. (checked against the game's own files)
- That description names the kinds of module a level is built from, including normal, passage, dead-end and extraction modules. (checked against the game's own files)
- A level carries a preferred set of valuables and its own start rooms. (checked against the game's own files)
- The generator builds the level through a fixed order of stages. (checked against the game's own files)
- The same generator serves different kinds of level, including ordinary levels, the tutorial, the shop and the lobby. (checked against the game's own files)
- The extraction point is a placed thing with its own area. (checked against the game's own files)
- A level's module sets are numbered by depth: after the first set there is a second and a third of the normal, passage, dead-end and extraction modules. (checked against the game's own files)
- A level carries a narrative name and a localized version of it, a connect object and a block object, and its own loading graphics. (checked against the game's own files)
- The look of a level is data as well: fog colour and its start and end distances, an ambient colour with adaptation, colour temperature and filter, bloom intensity and threshold, lens distortion, and a vignette with its own colour, intensity and smoothness. (checked against the game's own files)
- The generator has a width and a height, path points and a truck path, three difficulty curves, and prefabs for the player's death head and tumble. (checked against the game's own files)
- A level point records what it connects to, both a module and the other points, and the build keeps a list of all of them with a debug mesh that can be drawn. (checked against the game's own files)
- The generator has a flag for having generated and separate parents for the level and for the items it creates. (checked against the game's own files)
- A level is fitted out with ordinary pieces of its own as well: vent hatches, giant pipes, small lamps and oil lamps are named among them. (checked against the game's own files)
- A level is assembled from named modules, and one of them is kept as a template. (checked against the game's own files)
- The shop's module family names the rooms a shop building can hold: a diner, a bunker, a car service, an upper office, an attic above the diner, a barricaded door, a big bathroom, drink machines and a painting secret shop. (checked against the game's own files)
- Stands and an extraction centre are modules of their own. (checked against the game's own files)
- The build ships debug modules of its own, named with people's names, one of them a museum and one an outside test. (checked against the game's own files)
- Decals are named by the surface they sit on: floor decals and ceiling decals, with a dirt decal and a set of grime decals among them. (checked against the game's own files)
- The arctic theme fits its rooms with containers and doors of its own: a container with no doors and one with two, a plain door, a blocked door, a frame and a handle. (checked against the game's own files)
- An arctic shelf can be named for the triple valuables it holds, and the theme carries its own beam, bulb and round table. (checked against the game's own files)
- The shop building has an attic of its own, with a ceiling, a floor and a wall named separately. (checked against the game's own files)
- The shop's tiling is named as its own set, with a normal map beside the tiles. (checked against the game's own files)
In play
A level starts life as a description rather than as a map. The game keeps each level as its own record with a module count, a passage limit, a note about whether it holds enemies, and a set of valuables it prefers.
That record says what the level is made from. It names normal modules, passage modules, dead ends and extraction modules alongside a number of special modules, and the generator draws on those when it lays the map out.
The build then runs in a fixed order. The game moves through its own stages: starting the level, loading, laying tiles, setting the start room, connecting objects, generating modules, blocking objects, spawning modules, marking level points, placing items and valuables, setting up and spawning players, spawning enemies, and finally finishing.
Not every level is a run. The game separates ordinary levels from run levels, the tutorial, the lobby, the main menu, the shop and recording, so the same generator ends up serving several different purposes.
A level is not one set of pieces. The modules it is made from are numbered by depth, so there is a first set of normal, passage, dead-end and extraction modules and then a second and a third, which is how a deeper run is built from different material rather than the same rooms again.
A level also has a name and a look of its own. It carries a narrative name and a translation of it, an object to connect and one to block, and its own loading graphics, so the level is presented as a place rather than as a result.
How it feels to be in is data too. Fog colour and where the fog starts and ends, an ambient colour with adaptation, colour temperature and filter, bloom, lens distortion and a vignette are all recorded per level, which is why two maps can be lit and graded differently by the same game.
The points in a level know each other. A level point records what it connects to, both the module it belongs to and the other points it joins, and the build keeps a list of all of them with a debug mesh that can be drawn when the layout is being checked.
The generator has dimensions of its own as well. It carries a width and a height, path points and a truck path, three difficulty curves and two prefabs for the player, one for the death head and one for the tumble, along with a flag for having generated and separate parents for the level and for the items it creates.
The way out is part of the map rather than a button. An extraction point is a placed thing with its own area and its own sounds, which is why escaping is something the crew has to find.
What this entry does not tell you: how large a level is, how many enemies appear, or the odds of any particular layout. We have not verified those numbers, so we do not print them.
Related
Maps and levelsLevels and the way outLevels are produced by a generator in the game.
ValuablesValuables and the loot you carry outValuables are separate objects, each with its own behaviour.
Maps and levelsThe tutorial levelThe game ships a tutorial level of its own rather than teaching on a real level.Version and sources
A local copy of the game, read only. Identifiers are listed on the technical reference pages; nothing here is estimated. Documented build: 0.4.0.