A learning Experience 112

2024/10/03 | Simon Rodriguez | rendering reverse-engineering video games
Table of Contents

Now that I have covered how the game eXperience 112 is storing its levels and that we have a new shiny renderer to visualize them, let's dive in and see what interesting things we can find. First, meet eXplorer112, our viewer[1]. It can display levels, models and areas, inspect textures, list details about objects, instances, lights, cameras, particles and billboards, and toggle various parts of the rendering pipeline ; in a word, the good stuff.

Overview

Here is the list of all levels available in the game, approximately sorted by order of progression in the game story. Funnily enough, these names are displayed in the in-game interface when switching levels. Some sections you can jump back and forth between, but there are multiple no-return points. Don't expect a full walkthrough, but I will try to provide some context along the way.

World Meshes Materials Instances: Opaques Transp. Decals
tutoeco 623 278 877 831 17 29
etho 620 193 824 687 83 54
1poop_int 944 274 1282 1182 68 32
poop_ext 792 190 1230 1098 7 125
2poop_int 347 148 461 426 22 13
ct01_02 436 165 605 591 5 9
ct03_06 703 221 1034 998 12 24
ct07_08 462 192 689 608 42 39
za 190 97 1218 1197 21 0
ba 557 230 772 734 31 7
zt 372 139 980 932 48 0
la_croisee 160 88 780 754 4 22
hauts_plateaux 76 63 916 914 2 0
ile 161 86 281 264 8 9
zt1112 360 88 954 952 2 0
zt1416 1411 155 1721 1367 351 3

The number of assets per-level is quite consistent. Transparent and decal objects are mainly used in man-made environments. Interestingly, most shadow casting lights are also used in the first half of the game. On the other hand, the second part of the game uses particle emitters much more extensively, as there are many interactions with fauna and flora relying on particles.

World Lights w/ shadows Cameras Zones Emitters Billboards
tutoeco 84 63 42 14 14 71
etho 55 48 27 13 5 23
1poop_int 67 51 25 7 7 68
poop_ext 64 3 20 2 5 26
2poop_int 30 19 11 4 16 38
ct01_02 30 17 10 2 7 48
ct03_06 98 31 24 4 39 99
ct07_08 58 18 12 3 44 86
za 23 0 13 4 110 26
ba 86 3 24 3 38 231
zt 56 2 11 2 3141 11
la_croisee 52 0 7 7 498 34
hauts_plateaux 35 0 5 1 634 78
ile 4 0 4 1 268 8
zt1112 31 1 17 3 390 9
zt1416 75 0 14 3 33 190

On the ship

The first half of the game is spent on a tanker ship turned scientific base. The lights and fog build a very oppressive atmosphere as you slowly put the pieces of the plot together. Throughout all these levels, you find traces of fighting and mysterious remains that hint at some creatures and/or organization rampaging the ship at some point in the past. All these levels are thematically consistant, with a common esthetic around sixties electronic devices, rusty metal walls and invading vegetation.

Decks

The initial levels are composed of multiple small rooms and cramped corridors (you are on a ship after all), with many cameras and interaction points. The complexity of the levels remain constant throughout this section, the level build contains a lot of finer details and bits of environmental storytelling.

tutoeco

This is the tutorial level, Nichols wakes up in the derelict ship, and you get familiar with the camera system, the OS around it, and guiding the character. The main goal here is to retrieve the access pass using the remote-controlled robot in the poisoned lab (thus the green particle emitters) and leave.

In the viewer, character models are not animated nor placed in the level, so they usually stand in an A-pose somewhere. Same for some collectible items. You might notice someone blocking one of the doors at some point, a former colleague of Nichols (unrecognized at this point), Mike Loyd. An interesting thing with character rendering is how the hair are handled on Nichols. To add fuzziness and a transparency effect while avoiding sorting issues, the hair are rendered as an opaque shell with a soft alpha blended transition on the edges.

etho

At this point it's clear the whole ship is in disarray, and you get tidbits about the experiments ran here by the EDEHN project and the role of Nichols, while retrieving a drug treatment she requires. There is a mirror in one of the room, for which a second viewpoint of the level and character are rendered. To the best of my knowledge, this is the only instance of this effect in the whole game, and I haven't implemented it in my renderer.

I also really like how the height fog is used to create those sunk floors.

With diffuse texturesWithout diffuse textures

1poop_int

Nichols keeps exploring the ship, memory slowly coming back. You also gain access to more and more data files in the in-game OS. You can repair a server here, and will come back later to inhale the treatment. A few interesting transparent surfaces and particle effects, lots of decal to evoke the fights that took place here.

poop_ext

You finally get outside! The fog is omnipresent in this zone and really helps sell the size of the ship and the isolation, while hiding the lack of environmental details. It's also interesting to see how some of the level build is carefully optimized for the camera viewpoints ; the vegetation at the end of the ship is clearly layered for the cameras and looks very sparse from another viewpoint.

You will have to interact with some animals to progress, you can test the heat vision mode on them.

Dogs (normal vision)Dogs (heat mode)

2poop_int

The top deck, a much smaller level where you'll collect the final ingredients (using the heat vision) and mix them in a stressful minigame. It's a good place to point out how the levels are very controlled in terms of triangle count, which makes sense given the game year of release and the way it was rendering each objects multiple time per view to accumulate lighting and fog.

There are many examples of this restraint, but one I especially like are the vials-filled cupboards: most of the bottles are on a basic 2D cutout plane, and a few are placed in 3D in front of them to help add volume. One thing I also love here is the re-use of some assets in creative ways. When in need, how do you create a nice light fixture?

Tanks

Now that Nichols has received her treatment and that we have recovered the necessary access keys, we move towards the tanks of the... tanker. The environments start becoming larger, with higher ceilings but also fewer interaction points.

ct01_02

The first two tanks are quite empty, except for the overgrown vegetation and a longer encounter with Loyd, as this is where he lives.

ct03_06

The main tanks, including some kind of warehouse and a hangar containing abandonned bathyscaphes, in which Nichols is planning on escaping the ship. Another tanks hosts the diver offices and lockers. There are two models of Nichols in the level as she swaps outfits before diving using the submarine. There is also a slide projector making use of the support of the engine for lights projecting textures.

ct07_08

A beautiful museum-like room in one of the tank, a very mysterious particle-emitting gigantic plant in the other, all things to make the plot advance. After that, you get back to the previous tanks and help Nichols dive in the small submarine.

After the escape

Under the sea

We leave the ship behind for good. Levels are going to become more varied, starting with...

za

An underwater level, at last! Nichols is in the bathyscaphe and you pilot it through tortuous underwater caves until reaching the advanced base access. Navigation is by design cumbersome in this area, but you can apparently circumvent most of it by bringing the submarine close to the surface, avoiding all walls and collisions and skip to the final area of the level [2]. Fog, particle effects, animated plants and fishes help build the area. The real submarine is below the level and is larger than the model visible through underwater cameras.

ba

We are back to footbridges, steep stairs and prefab rooms, but this time with the addition of an elevator. And a mini-game where you take control of a surveillance robot and neutralize other robots. The huge Tyriads gate lock puzzle is composed of many emissive billboards. We stay in the same grungy esthetic, and the surprise is thus even stronger when we move to the next level.

The Tyriads regions

Here we reach the strange and alien world of the Tyriads. The layout of the levels changes radically, with open areas that end up feeling much more barren that the ship levels. This can be seen in the numbers: fewer models and lights, coarser geometry, but many particle effects on the flora and fauna to display reactions to your actions.

zt

This is kind of a tutorial area. Nichols is now equipped with a pheromone-emitting device that allows interactions with the fauna and flora. She also has a shoulder camera through which you can follow her viewpoint. The headbob is a bit dizzying, but that puts a new perspective on the environments and allow for new puzzles.

la_croisee

This is the hub of the Tyriads region, that you will cross three times. We meet a benevolent Tyriad ; the Tyriads are supposed to belong to four different casts, but we only ever encounter two in the game, and let's say that their design are very... 2000s sci-fi videogame [3]. We also meet Loyd again, who is planning on destroying the place. At some point, the shoulder camera is slid into the bomb for a defusing sequence ; this is achieved with a separate camera inside a larger-than-life model of the bomb, placed below the level.

hauts_plateaux

This area hosts an infiltration puzzle where Nichols has to cross the area to retrieve an additional pheromone, while avoiding combat Tyriads and plants. Nothing too out of the ordinary by now.

ile

After defusing the bomb, Nichols is abducted by some hostile Tyriads and stands trial in front of the Tyriad generals and a former EDEHN scientist. Probably the most complex puzzle in the game, sometimes imprecise and a bit messy. The environment is very small, with large background details hidden by the fog. The game manages to build these moods with limited means very well in my opinion.

zt1112

This is a very linear area, and you can feel how the game is drastically reducing its scope and complexity to reach an end. I'm assuming time or money started running out at some point, and you can sadly feel it in the last part of the game. Some plot points are skipped or resolved through text files, and the levels are to-the-point and have fewer environmental details.

zt1416

We reach the last level, another short corridor before the main wind shaft Nichols is planning on using with the help of the Tyriads to travel and meet the person she's looking for. The last building is hosting a control room, with many head-up displays created using billboards. Some mysterious blue glass tanks are visible in this ultimate room. They seem to use a different shader for blurry transparent surfaces, but this might only be caused by variations in the fog and shading. Funnily enough, they are also badly sorted in the original game, overlapping with the displays.

The end?

Then fade to black, and the conclusion cutscene starts to play, bringing a somewhat abrupt conclusion to the game. I probably would not have had the patience to replay the full game, but exploring the levels and ensuring we can still visualize them in the future was a nice way of building on my nostalgia. In the end, I still have a fondness for this game despite its shortcomings, thanks to the things it tried to achieve at a time when there was no game like it.


  1. Code available on Github

  2. See this part of a playthrough on YouTube for instance. 

  3. This is also an issue in the documents you find in the in-game OS. In retrospect, 16 years later, some characters on the ship are very mono-dimensional and not always written with the best taste.