Repository navigation
Releases: alex-nax/relith
Release list
ReLith 0.4.1 — PC VR
Windows PC VR only. The Quest build is unchanged: Quest players stay on
0.4.0. This release rolls the
0.4.1-beta for Valve Index controllers (GitHub issue #2) into a regular release. It adds the
seated-play hands fix (issue #3), scope and swimming fixes, and a new water surface.
Index controllers
- The menu opens. Index controllers have no menu button. Hold the objectives-panel button —
left B — for about half a second: the pause menu opens, and inside a menu the same hold
backs out. A tap still toggles the objectives panel. The first tutorial plate in the training
level says so when Index controllers are detected. - Tooltips name Index buttons by hand ("LEFT B"), since both Index controllers carry A and B.
Fixes
- Footsteps land with the feet. Steps come from the game's own footstep keys at the moment
a foot touches the ground (the old build fired two step trains at once), the running legs cycle
at the pace the run animation was authored for, and walking is two steps a second. A footstep
from a non-finite position is no longer played at full volume. - Sun shadows no longer depend on where you look. A shadowed balcony was lit at the screen
centre and shadowed at the edge of a wide field of view; the shadow now stays where it is. - Hand calibration is symmetric. The zombie-pose calibration used to land the left hand
about 20° off the right one in roll. Recalibrate once after installing this build (stand
straight, arms forward, click the main stick).
VR
- Seated play: hands stay with your head. Before your first Recenter View in Seated posture
the hands were measured from a default height above the floor while the head already sat at
the character's eye height, so a low sitter's hands ended up at table height (issue #3,
PSVR2). They now hang from the headset until you recenter. - Scope: the sky shows in the lens. The scope and zoom lenses, the cinematic screen and the
spectator view drew into targets without a stencil buffer, which sent the sky through a
fallback that drops sky walls beyond the far plane, exactly the walls a scope looks at. Those
targets now carry the same depth-stencil buffer as the eyes and paint the sky the same way. - Scope: no more flicker or body jitter while sighted. The scope's own render pass ran
first each frame and left two marks meant for the eyes: it handed the level's object culling
its narrow cone, so a frame now and then lost objects, people or the sky, and it threw away
the motion-smoothing history of everything it did not draw, which always included your own
body, so walking while sighted jittered. Aim, zoom and spectator passes now draw without
touching either. - Swimming: the body swims, the feet stay quiet. Only the scuba outfit carried swim
animations, so every other outfit kept its walk cycle under water and its footsteps kept
firing whenever the pool floor counted as ground; the full-body VR posture hid the body
while swimming. The swim clips now reach every outfit, footsteps follow the original rule
(none with the head under water, still on ladders), and the full body shows on the swim
clip.
Water
- Water has a surface now. Water surfaces built from the level's water volumes (the
tropical basin among them) draw with drifting ripples, a reflection that strengthens at
grazing angles the way real water does, and a sun highlight. The authored colour and
transparency are unchanged.r_water_quality 0restores the previous flat two-pass look. - The ripples never repeat. The surface moves as drifting noise that never lines up with
itself, however far the water reaches from the level's centre — large open water such as a
sea no longer shows a checkerboard — and the reflection and the bent floor follow it. - Pools mirror the room. Water surfaces reflect the actual scene around them (walls,
fixtures, crane, people) instead of a generic chrome map, with the reflection wobbling on the
ripples. One pool per frame, chosen nearest;r_water_reflect_areasets how large a pool
may be to get it. - Indoor pools catch the lamps. The level's lights glint on the ripples (the nearest four
that reach the surface), so a basin lit by wall lamps no longer looks unlit. - Water has depth. The pool floor bends under the ripples, deep water shades toward the
pool's own colour while the shallows stay clear, and the hard line where the water met the
walls is gone.r_water_refract 0turns it off. - Water keeps its authored look. Water a level draws as nearly opaque (a grotto pond) shows
its own surface texture again instead of the bare floor beneath it, so whatever stands in it
no longer seems to float; clear pools take only a faint tint of it. Where a level lays a thin
surface over a larger body of water (a sea, a stream), the two draw as one surface instead of
the top one hiding the body's colour. - Caustics. Light focused by the ripples plays on the floor and walls under every pool, and
on whatever is in the water, from the same wave field that draws the surface, fading with
depth. Seen through the surface and while swimming.r_water_caustics 0turns it off. - Splashes and a wake. A bullet hitting the water from above rings the surface and throws
the game's own water ring, and wading or swimming at the surface leaves a trail of ripples
behind you. Both ride on the same wave field as the surface.r_water_ripples 0turns them
off. - Under water, the surface overhead takes the fog. It was the one crisp thing in a fogged
pool; it fogs with the walls now. - Lights under the water show through it. Glow sprites below the surface (the pool-wall
lamps in the Dumas basin) were painted over by the water; they refract with the wall behind
them now.
Reporting
- Every Feedback report now carries diagnostics: the OpenXR runtime and headset, the bound
controller profile, your calibration values, the last frame-time window and the last few
hundred lines of the game log. Open the Feedback screen right after the moment you want to
report — the report also carries a save of that moment. - The build identifies itself as
0.4.1in the menu and in reports.
Packaging
- The audio libraries are separate files now. OpenAL Soft and FluidSynth (both LGPL) ship as
OpenAL32.dllandlibfluidsynth-3.dllbeside the executable, so anyone can replace them with
their own build. Their complete sources are inlicenses/sources/; the separate "relink"
download is no longer produced.LGPL-LIBRARIES.mdexplains replacing a library.
ReLith 0.4.1-beta — PC VR beta for Valve Index controllers
A short-lived beta built for the reporter of GitHub issue #2 (Pimax Crystal Light + Valve
Index). Windows PC VR only; the Quest build is unchanged. It carries the fixes for that report
and, so the next report needs no back-and-forth, a diagnostics block in every Feedback report.
Index controllers
- The menu opens. Index controllers have no menu button. Hold the objectives-panel button —
left B — for about half a second: the pause menu opens, and inside a menu the same hold
backs out. A tap still toggles the objectives panel. The first tutorial plate in the training
level says so when Index controllers are detected. - Tooltips name Index buttons by hand ("LEFT B"), since both Index controllers carry A and B.
Fixes from the report
- Footsteps land with the feet. Steps come from the game's own footstep keys at the moment
a foot touches the ground (the old build fired two step trains at once), the running legs cycle
at the pace the run animation was authored for, and walking is two steps a second. A footstep
from a non-finite position is no longer played at full volume. - Sun shadows no longer depend on where you look. A shadowed balcony was lit at the screen
centre and shadowed at the edge of a wide field of view; the shadow now stays where it is. - Hand calibration is symmetric. The zombie-pose calibration used to land the left hand
about 20° off the right one in roll. Recalibrate once after installing this build (stand
straight, arms forward, click the main stick).
Reporting
- Every Feedback report now carries diagnostics: the OpenXR runtime and headset, the bound
controller profile, your calibration values, the last frame-time window and the last few
hundred lines of the game log. Open the Feedback screen right after the moment you want to
report — the report also carries a save of that moment. - The build identifies itself as
0.4.1-betain the menu and in reports.
ReLith 0.4.0 — Quest 3 and PC VR
ReLith 0.4.0 — The Operative: No One Lives Forever in VR on Meta Quest 3 and PC VR. ReLith is the engine only: you need your own copy of the game.
| Platform | Download | Install guide |
|---|---|---|
| Meta Quest 3 | relith-nolf-quest-0.4.0.apk |
INSTALL-QUEST.md |
| PC VR (Windows, OpenXR) | relith-nolf-windows-vr-0.4.0.zip |
INSTALL-WINDOWS.md |
Upgrading on Quest from 0.3.1 or older needs a one-time reinstall — back up your saves, uninstall, install, restore. The install guide has the steps for SideQuest and for adb.
SHA-256: relith-nolf-quest-0.4.0.apk 6492423546dcdfe7d0d52f6529a2b4f6ff9a1415871e1e076e30b997c7d142d9 · relith-nolf-windows-vr-0.4.0.zip 3ea10f572e6a3ae08aa46d5195b4a87936b8ea504e02238afa85da8479d440f4.
The LGPL relink kits, the Quest bundle with the guide and notices, and the full checksum list are on the separate 0.4.0 extras entry; players do not need them.
Quest — one-time reinstall required
- This build is properly signed, so you must uninstall the old one first. Every ReLith
up to 0.3.1 was signed with Android's shared debug key — a key anyone has, which means
anyone could have published an "update" for it. This build uses a real key, and Android
will not install an app over one signed by a different key. Back up your saves,
uninstall, install, restore:INSTALL.mdhas the exact paths and commands. It is a
one-time step; every release after this one installs over the top as a normal update. - The app finally reports its own version. The APK claimed to be
0.1.0build 1 no
matter what it actually was. The version is now derived from the source, and the build
number rises with every release, which is what lets Android offer an update at all. - Your device settings file carries over. Runtime settings were renamed from
NOLF_*to
RELITH_*(andnolf_env.cfgtorelith_env.cfg); an existing file is migrated once on
first launch instead of being silently ignored.
Quest defaults
- Dynamic shadows are off by default on Quest — some levels still lose frame time with them;
turn them on under Options → Performance. A fresh install could come up with shadows on,
because the Performance menu read the default before the renderer had set it. - 4× anti-aliasing is on by default, and cutscenes play on the cinema panel.
- The "Game data not found" screen links to the install guide; pull the trigger on it to open
the guide in the headset browser.
VR hands and body
- Your hands are the game's own detailed first-person hands. The simplified IK gloves are
replaced by the authored hands from each weapon's first-person model, with sleeves, cuffs and
wrists fitted to Cate's body. This is now always on — the old toggle is gone. - Hands match what you are wearing. Space suit, scuba, winter and other outfits show their
own gloves instead of always wearing the Action gloves, and the sunglasses gadgets use the
detailed hands too. - Every weapon and gadget has hands, including ones whose model names its hand bones
differently (the barrette, the coin), and the flashlight no longer drops you to low-detail
hands. - Left-handed play mirrors the weapon and hand models (Main Hand: Left), including
silencers, laser sights and scopes. - The body's legs pick a real run. Running plays the proper running gait instead of a
sped-up walk; plain walking keeps the walk cycle. - The waist no longer separates from the legs while walking, most visible in mirrors.
- Space-suit body height is steady. In the space station the suit body stands on its
authored neutral pose instead of bobbing with weapon and posture layers. - Unarmed fists move independently and no longer fire firearm effects.
Weapons and aiming
- Pistols can be steadied with your off hand. Gripping near a pistol (P38, revolver, Luger,
Contender) adds a support hand that sits at its authored place on the gun and never steers
your aim. Rifles gain a one-handed mode. - Accuracy works like the original. Moving, turning the aim hand and firing widen weapon
spread and recover over time; looking around with your head never affects it. - The dynamic crosshair spreads outward. Thin bars move away from the centre as accuracy
drops (Counter-Strike style) instead of the whole crosshair growing. - The VR crosshair no longer rolls with your head, and it honours the crosshair opacity,
colour and style settings. - Reloading takes only the ammo you own. With 3 in the clip and 5 in reserve on a 10-round
weapon, a reload now gives 8/0, not a phantom 10/0. - Throwing the lipstick holds at the arming pose while you hold the trigger, then throws on
release, instead of playing the scripted swing early. - Lighter and Walther line up with your controller, and every weapon ships with
individually reviewed angle and two-hand calibration. - Muzzle flashes, fire sparks and pickups are the original effects. Muzzle light, flash and
particles follow the gun; sparks are real particle systems; pickups rotate and bob as authored. - The sunglasses zoom shows the head-aimed view again, not the view from your gun hand.
- Code breakers stay behind after cracking a keypad so you can pick them back up.
VR calibration
- Fresh installs get calibration made for their platform. Quest and PC VR now ship
separate hand and per-weapon calibration, captured on each platform's own controllers
(the two runtimes report the controller grip differently). Your own recalibration still
overrides the shipped values. - Resetting a two-hand calibration survives a restart. A reset used to be undone the next
time the game started, because the shipped defaults were re-applied over it.
Controls
- Run/walk is a toggle on the locomotion stick click (Always Run by default in VR). The
off-hand grip is now only a grab, and the tooltips describe the new scheme. - Falling damage is back, with an option to turn it off. A new Options → Debug section holds
a Fall Damage toggle, on by default; swimming, ladders, scripted falls and loading a save are
protected.
Vehicles
- Ride the motorcycle and snowmobile with your hands on the bars. Your arms are solved onto
the grips, you steer by leaning or turning the bars, and the view sits at the rider's seated
eye. The game recenters automatically when you mount. - Analog throttle and brake through the triggers. Hold the brake at a stop to reverse, and
the throttle hand rumbles; a tooltip at the motorcycle tutorial explains the controls. - The vehicle's gauges and parts move. Speedometer and tachometer needles, the handlebars,
the snowmobile windshield and the motorcycle's wheels animate with your riding. - Crashes hurt and push, and ramming enemies works again. Impacts damage and deflect you
like the original, and riding into enemies at speed kills them, as the tutorial promises. - The snowmobile leaves a ledge at the edge instead of hopping early or stopping as if
it hit a wall, and no longer freezes on slopes or catches an invisible bump at crests (the
snowstorm launch). - Landing a long vehicle jump is survivable. Fall damage on a vehicle accounts for the
reduced gravity vehicles fall with, so the damage matches how hard you actually land. - Leaving a level while riding dismounts cleanly, instead of breaking the body in the next
level. - No more footsteps while riding, no leaned body after mounting in seated mode, and the
snowmobile's low-detail hood no longer shows through your view. - Trees no longer pop at the screen edges while riding in the motorcycle tutorial.
Graphics
- Environment maps are on by default and correct. Shiny surfaces and chrome reflect with the
original's mapping and lighting, in each eye separately, on every platform. - Models are lit like the original. Character and prop lighting now uses the original's
generated light grid and light rules (no more double-counted lights, spotlights keep their
cone), direct sunlight reaches models outdoors, and world-lit models are no longer half as
bright as they should be. - Flickering and rotating lights animate, and lighting in the m07 intro cinematics no longer
leaves characters too dark. - Mirrors work. The hotel mirrors show a real reflection, including your own body, head and
weapon. - The scenery outside the train moves. Trees scroll past the windows in the correct
direction on both sides and the sky drifts; the same fix brings back moving clouds, the sky
reflected in the opening level's sea, and shiny surfaces at UNITY HQ. - Tropical water tiles properly instead of stretching one tile across the pool (m10s01).
- Shadows no longer show through walls and tables, and nearby shadows no longer pop or
shrink when you move a step. - Trees no longer flicker. Foliage made of back-to-back leaf cards drew two faces at the same
depth; it now renders steadily. - Blood decals appear again as proper splats, without the dark square behind them.
- Seam cracks along brush edges are gone. The original's T-junction fix is now drawn, which
removes the one-pixel "sparkle" seams on about 6% of world polygons. - Transparent effects sort by distance. Sprites, particles and see-through models are drawn
far to near in one list, so they stop popping in front of each other. - Cut-out textures are cut out. Chromakeyed models and worldmodels no longer draw their
transparent parts solid or with halos. - Animated textures on walls play, glow sprites (camera lenses, laser tripwire ends) scale
like the original, and lens flares are restored (off by default in VR). - **Wall displays ...
ReLith 0.4.0 — relink kits and checksums
Supporting files for ReLith 0.4.0. Players need only the packages on that release; nothing here is required to play.
| File | What it is |
|---|---|
relith-nolf-quest-0.4.0.zip |
The Quest APK together with the install guide, changelog and licence notices |
relith-nolf-quest-0.4.0-relink.zip |
LGPL relink kit for the Quest build: object files and instructions to relink the binary against your own build of OpenAL Soft or FluidSynth, which are linked statically |
relith-nolf-windows-0.4.0-relink.zip |
The same relink kit for the Windows PC VR build |
SHA256SUMS.txt |
Checksums of every 0.4.0 file, on both releases |
Legacy Quest build 0.3.1 (2026-08-22)
Legacy build — kept for reference. This is the Quest build of ReLith 0.3.1 that was shared on Discord (built 2026-08-22). It predates everything in the current release notes and is not supported.
- Plays The Operative: No One Lives Forever in VR on Meta Quest. You need your own game data — see INSTALL-QUEST.md.
- Signed with Android's debug key. Newer builds use a real release key, so moving from this build to a newer one needs a one-time back up saves → uninstall → install → restore (the install guide has the exact commands).
- The app reports itself as
0.1.0build 1 — a known fault of builds up to 0.3.1; this file is 0.3.1.
| File | relith-nolf-quest-0.3.1-legacy.apk (arm64, Android 14 SDK) |
| Package | net.relith.nolf |
| Source | nolf-improved 1e469e35 |
| SHA-256 | see the .sha256 asset |
Includes MODERNIZER by HeyThereCoffeee (haekb) — https://heythere.coffee/nolf/. This add-on is not made by or supported by Monolith Productions, or any of its affiliates and subsidiaries.