Development snapshot

Published on Mar 26, 2024 · all releases

Lara's movement

  • Added an option to allow Lara to sidestep in swamps (Gameplay → Controls → Swamp sidesteps) ( #6250 / TRX1117)
  • Added an option to allow Lara to turn while shimmying along monkey bars, similarly to how she can while sidestepping or swimming sideways on water surfaces ( #6386 )
  • Added the ability for Lara to grab monkeybars when jumping forward under low ceilings, in line with being able to catch the bars by jumping directly up ( #6603 / TRX1473)
  • Fixed Lara entering the step down animation when walking backwards in a swamp room (OG bug) ( #6251 / TRX1118)
  • Fixed certain SFX, such as Lara's footsteps, playing in swamp rooms ( #6248 / TRX1115, regression from 1.0)
  • Fixed Lara being able to turn too quickly in swamp rooms (regression from 1.0) (TRX1129)
  • Fixed Lara being able to vault or crawl through breakable walls that stand on the edge of a tile (Gameplay → Fixes → Fix breakable wall clipping) (OG bug) (TRX1024)
  • Fixed Lara's rope-grab reach being shorter from certain directions (OG bug) (TRX1143)
  • Fixed Lara being thrown across the room when she shimmies to the end of a ladder (Gameplay → Controls → Corner shimmying) (TRX1203)
  • Fixed Lara getting pushed by enemies while climbing into or out of crawlspaces (OG bug) (TRX1182)
  • Fixed static meshes affecting ledge jumps when soft static collision is not enabled ( #6366 / TRX1218)
  • Fixed Lara sliding on walkable items (trapdoors, bridges etc) when there is a steep slope directly below and touching the item (OG bug)
  • Fixed Lara teleporting to the floor when killed by spikes that are to her side rather than directly below her (OG bug) ( #6351 / TRX1204)
  • Fixed Lara briefly teleporting above the water line if she is stepping backwards from 2-click to 3-click wading depth (TRX1309, regression from 1.0)
  • Fixed Lara's arms twitching when stopped against walls in shallow water with either forward or backward input pressed against the wall (OG bug) ( #6254 / TRX1121)
  • Fixed Lara assuming a fully underwater animation in custom levels if she begins at wading or water surface depths (OG bug) (TRX1312)
  • Fixed Lara embedding in the ceiling in custom levels if she begins at crawlspace height (OG bug) ( #6547 / TRX1401)
  • Fixed exiting the fly cheat not always putting Lara into the correct animation for her environment ( #6547 / TRX1401)
  • Fixed Lara slipping into wading-depth water when walking down steps in a water room (OG bug) (TRX1307)
  • Fixed Lara being able to monkey roll too close to sector edges, resulting in her falling after the animation completes ( #6459 / TRX1314, regression from 1.10)
  • Fixed Lara beginning to monkey roll for one frame despite being too close to the edge of a sector ( #6459 / TRX1314, regression from 1.10)
  • Fixed Lara not being able to crawl backwards in certain sloped crawlspaces (OG bug) (TRX1322)
  • Fixed Lara being able to crouch/crawl into spaces with very low ceilings where she can become clamped, such as RX-Tech Mines room 159 (OG bug) ( #6477 / TRX1331)
  • Fixed Lara attempting to continue to descend a ladder despite being at the bottom of it (OG bug) ( #6461 / TRX1315)
  • Fixed Lara sliding instead of collapsing when a fall kills her on a slope (TRX1408, regression from T1M 2.15.2 / TR2X 0.10 / TRX 1.1)
  • Fixed Lara not grabbing certain ledges properly when crawling backwards off them ( #6601 / TRX1471, regression from 1.1)
  • Fixed Lara not stopping at the right time when she touches the floor during early and late reach animations (TRX1487; regression in TR1/2 from 1.3, OG bug in TR3+)

UI

  • Added a fullscreen setting, so the window mode can be switched from the menu rather than only with Alt+Enter (Graphic Options → Rendering) ( #6187 / TRX1036)
  • Added a flat yellow color to the PS1 bar palettes (Graphic Options → UI → Bars) ( #5227 / TRX1135)
  • Added an option to open the save and load screens instantly (Graphic Options → UI → Instant save/load screen) (TRX1170)
  • Changed the assault course clock and its penalties to sit with the rest of the interface, so they follow where the other elements are laid out
  • Changed Lara's outfit setting to offer only the outfits the current level can dress her in (TRX1086)
  • Changed settings dialogs to stay readable at large text sizes, with shorter setting names and tighter layouts where needed
  • Changed the Fix one-shot music triggers option to sit with the other music settings (Sound → Misc) (TRX1045)
  • Changed the PS1 poison healthbar to flat yellow, as the PS1 releases had it ( #5227 / TRX1135)
  • Changed the Customize Controls dialog to show a scroll arrow when the key list runs longer than the dialog (TRX546)
  • Changed the TR3 breeze mode to read TR3/4, as it covers both games (Graphic Options → Visuals → Breeze) (TRX1133)
  • Changed TR4 to stop the timer while the inventory is open by default, as the original game does (Gameplay → General → Timer counts in inventory) (TRX1256)
  • Changed the preset confirmation to offer Apply and Go back as choices, rather than leaving the keys unsaid ( #6258 / TRX1126)
  • Changed the F9 key to cycle the lighting model in TR3 and TR4, and the lighting contrast in TR1 and TR2
  • Changed the save, load, level select and mod dialogs to show scroll arrows in every game, as TR1 does (TRX547)
  • Changed vertex snapping to offer Disabled, 320x240, and Upscale Res modes ( #6278 / TRX1137)
  • Changed screenshots taken inside photo mode to not include debug overlay elements
  • Changed the pause behavior to be consistent between FMVs and in-game cutscenes ( #6537 )
  • Fixed a setting description showing a question mark in place of a key that is bound to a combination, such as Alt+Enter (TRX1136)
  • Fixed ability to open the inventory ring while a flyby sequence has Lara's control (TRX1057)
  • Fixed the game audio resuming before the fadeout effect has ended when unpausing ( #6536 )
  • Fixed several dialogs running past the screen edges or overlapping headings at large text sizes ( #6293 / TRX1154)
  • Fixed the save and load dialogs covering the inventory headings at large text sizes
  • Fixed the game flashing over the black bars beside the picture when a frame is advanced in photo mode (regression from 1.10) (TRX1068)
  • Fixed dialogs sitting against a band of screen that no longer matched what the overlay was drawing there, which could leave them overlapping the heading or the item name
  • Fixed the inventory ring's button hints and item count overlapping the line of text the game puts at the foot of the screen
  • Fixed an item hanging at the edge of the screen while the inventory changes from one ring to another (TRX1404)
  • Fixed the icons beside the volume settings, which now show a note for the music and a speaker for the sound effects (TRX1040)
  • Fixed the statistics overlapping inventory text at large text sizes ( #6295 / TRX1156)

Camera

  • Added an option to have the photo mode camera collide with level geometry (Graphic Options → Visuals → Photo mode collision) ( #5719 / TRX540)
  • Added cinematic bars to flyby sequences, as the original game does (TRX522)
  • Changed the cinematic bars to move into and out of view, rather than appear and disappear at once (TRX522)
  • Changed moving Lara in photo mode to follow the direction the camera looks, rather than the way she faces (TRX1153)
  • Fixed the Inverted look option not applying to the binoculars ( #6431 / TRX1291)
  • Fixed the photo mode camera drifting upwards and overshooting when it is moved while pitched up or down (TRX1142)
  • Fixed the photo mode camera flickering and refusing to turn over when it is pitched past straight up or down, and turning in coarse steps while aimed near vertical (TRX1152)
  • Fixed photo mode showing the same animation frame while advancing the game a quarter of a frame at a time (TRX1353, regression from 1.9)
  • Fixed the TR3 and TR4 look cameras not updating when holding look during the transition from standing to crouching and vice-versa (OG bug) (TRX1325)
  • Fixed the binoculars camera being positioned behind Lara if the look input is held while selecting them (TRX1378, regression from 1.9)

Developer console

  • Added the /outfit console command, which shows or changes what Lara is wearing (TRX1070)
  • Added the /golden console command, which casts Lara in gold (TRX1070)
  • Added the /fmv console command, which plays one of the game's movies
  • Added the /copy console command, which copies another command's output to the clipboard ( #6372 / TRX1226)
  • Improved the /teleport console command to avoid Lara ending up in a clamped position under low ceilings (TRX1346)
  • Changed the /flip console command to take a flip group, so /flip 3 moves that group alone while /flip on its own moves them all (TRX173)
  • Changed the /mod console command to complete the names of the mods it can switch to
  • Changed the /set console command to complete the values a setting accepts, such as its enum values or on and off (TRX1174)
  • Changed the developer console to sort completions alphabetically, prioritizing those that start with the text typed (TRX1175)
  • Fixed a command failing to find a name that holds punctuation, and filling the console with errors when the text typed held a bracket
  • Fixed TR1's moored boat sharing its name with TR2's speedboat, so a command that took boat could act on either
  • Fixed the TR3 SWAT 2 and SWAT 3 enemies being named as SWAT 1, so a command that took either of them acted on the wrong enemy

Recordings

  • Fixed recordings losing music after skip start (TRX1429)

Weapons and ammunition

  • Added an option to keep Lara firing the M16/MP5 from her hip while the action key is held, rather than shouldering the gun the moment she stops moving (Gameplay → Controls → M16/MP5 aiming variants) ( #3861 / TRX1048)
  • Added the BFG9000, a joke weapon shipped as an example addon, called in with the /bignasty console command (TR1, TR2 and TR3)
  • Fixed Lara taking out a two-handed weapon in wading-depth water only to put it away at once (OG bug) ( #6253 / TRX1120)
  • Fixed Lara taking out a weapon while she is fully submerged in a swamp ( #6255 / TRX1122)
  • Fixed Lara's back staying empty in a level that takes her weapons away and gives her a rocket launcher
  • Fixed the automatic pistols smoking undimmed, unlike the magnums and the uzis

Level and game data

  • Added Natla as an outfit for Lara, selectable in every game (Graphic Options → Visuals → Lara's outfit) (TRX1050)
  • Added injection support for putting a room in a flip group, which only TR4 levels carry themselves ( #5336 / TRX173)
  • Added a requires_alert property to the sentry gun, which lets a plain trigger set it firing where it would otherwise wait for a security laser (TRX1141)
  • Added a collidable_when_done property to puzzle slots, which applies to animated interactions only (TRX1046)
  • Added snap_to_sector and keep_simulated properties to pickups, which say whether a carrier's drop slides to the middle of its sector and whether the item goes on rotating and glowing once it lands
  • Added object references in strings files, so inventory entries can use the same name and description as their pickup
  • Added an object families file, so a mod can say which objects count as pickups, doors, creatures and the rest without a new build
  • Added a trx.path module, so a script can work with filesystem paths, join one with /, inspect its parts, find the game's own files, and read and write under the game's directories
  • Added a trx.json module, so a script can read and write JSON as text or files
  • Added trx.math.from_sectors() and trx.math.to_sectors(), so a script can say a length the way a level is laid out
  • Added trx.weapons.declare(), trx.weapons.patch() and trx.weapons.set_fire(), so a script can add a weapon of its own or change one the game holds, with what it does when fired written in the script
  • Added a scripts/ directory beside the engine for scripts that run when a game starts
  • Added support for scripts with several files, using an init.lua entry point in a directory of its own
  • Added an object links file, so a mod can say which pickup an inventory icon stands for, which slot a key goes into, and which box a weapon's rounds come in
  • Added trx.objects.declare(), so a script can define how its own object starts, updates, casts a shadow and saves its position
  • Added trx.objects.borrow_content(), so an object with no models of its own can use another object's meshes and animations
  • Changed the weapons file to define each game's weapons, so a mod can add or remove weapons and change what they fire without a new build
  • Changed object keys in strings files, game flows and weapon definitions to use the C object name without O_
  • Changed object names in strings files to use | between the name the game shows and the names the console accepts
  • Changed weapon, extra mesh, braid mode and extra outfit names in game data to drop their C prefixes, so a weapon is written shotgun rather than LGT_SHOTGUN
  • Changed the catalog files, and the data naming objects, samples and music, to use the same keys, so an object is written lara rather than O_LARA; the old spelling still loads and is reported in the log
  • Changed a name a script mints for an object, sample or music track to be refused if it carries capitals, since a name is read in one case
  • Changed weather to follow flyby cameras (TRX1231)
  • Changed a missing or unknown lara_outfit in a level to fall back to the default outfit, rather than stopping the game from starting (TRX1087)
  • Changed pickup aids to not show for hidden reach-in, sarcophagus and crowbar modes (TRX1355)
  • Removed TR1's grenade pickup, freeing its model and inventory slots for objects of your own
  • Removed the golden outfits, which the engine now produces from any outfit, freeing their model slots for outfits of your own (TRX1070)
  • Fixed an outfit file naming a weapon the engine does not know leaving Lara without that weapon's meshes, with nothing said
  • Fixed a crash when switching mods (TRX1239)
  • Fixed the game crashing on a damaged level file, which is now refused with a message naming what is wrong with it
  • Fixed Lara's arms leaving their intended positions when looking around in the crouched stance (OG bug) ( #6402 )
  • Fixed Lara being killed by electric fences while immune ( #6475 )
  • Fixed Lara clipping into or underneath lifts if she tries to step on top of or into one from an exterior floor whose height matches the lift ceiling or floor (OG bug) ( #3905 / TRX1014)
  • Fixed Lara's braid not colliding properly with her selected outfit, instead referencing the level's OG outfit (TRX1277, regression from 1.2)
  • Fixed the tip of Lara's braid dropping away from the rest of it for a moment after a level or a save is loaded (TRX1304)
  • Fixed Lara's braid not being drawn on the first frame of a level (TRX1304)
  • Fixed Lara's braid hanging away from her head or keeping the previous outfit's shape after an outfit change (TRX1437)
  • Fixed being able to push pushblocks onto floors with triangular geometry (TRX1228, regression from 1.0)
  • Fixed propellers not being collidable if they are deactivated and then later reactivated (OG bug) ( #6494 / TRX1351)
  • Fixed crashes in custom levels with incomplete object sets

Saves and settings

  • Added smoke, sparks, mist and bubbles to saves (Gameplay → General → Save effects)
  • Changed the names a settings file gives to accept -, : and _ as the same separator, with scripts always reading them back with _
  • Changed the save crystal behavior to give Lara a crystal when starting a game, if the mode is set to Saving (pickups), in line with the TR3 PS1 version (Gameplay → General → Crystal mode) (TRX1101)
  • Changed the option for Lara's braid to introduce an "auto" mode, which will automatically hide the braid for regular TR1 outfits, and show it for TR2+ outfits (Graphic options → General → Lara's braid) ( #6446 / TRX1300)
  • Removed support for saves from TRX 1.0, and TR1X/TR2X era
  • Fixed not being able to load saves with overflowed values for Lara's distance travelled (TRX1368)
  • Fixed the distance travelled statistic to ignore when Lara is out of bounds to avoid skewing the value (OG bug) (TRX1368)

Music and sound

  • Added an option to have Lara's sliding SFX stop as soon as she leaves a slope ( #6294 / TRX1155)
  • Fixed crystal sound effects not playing if Lara collects one underwater (OG bug) (TRX1111)
  • Fixed looped sound effects, such as rolling boulders and the seaplane, clicking and crackling while they play ( #6491 / TRX1348)
  • Fixed sound effects going silent after switching from TR4 to another game (TRX1335)

Rendering

  • Added affine texture mapping, the uncorrected texturing of the PlayStation, so textures warp across large surfaces as the camera moves; the PlayStation presets turn it on (Graphic Options → Rendering → Affine texture mapping)
  • Added PlayStation RGB555 dithering and changed Dithering to offer Disabled, Software Renderer and PS1 (Graphic Options → Rendering → Dithering)
  • Added the PlayStation depth cue (Graphic Options → Rendering → PlayStation fog)
  • Added the PlayStation lighting model, which deepens bright surfaces into their own color rather than white (Graphic Options → Rendering → Lighting model)
  • Added palette quantization, which matches rendered colors to the level palette and dithers between colors (Graphic Options → Rendering → Palette quantization)
  • Added a water tint that cuts Lara at the water surface (Graphic Options → Visuals → Water tint)
  • Changed Responsive mesh tint to Water tint, which offers Whole, Per mesh and Responsive (Graphic Options → Visuals → Water tint)
  • Changed the lighting contrast option to appear in TR1 and TR2 only, as the other games light dynamic sources their own way (Graphic Options → Rendering → Lighting contrast)
  • Changed TR3 to light geometry on the brighter curve its hardware renderer used (Graphic Options → Rendering → Lighting model)
  • Changed the game to run on the dedicated graphics card on laptops that have two
  • Fixed a headless run drawing none of the title screen's objects, such as the passport
  • Fixed the first frame of a level being drawn small and in the corner of the screen when the game renders below the window size
  • Fixed a visible seam across the sky in TR4 levels (TRX563, regression from 1.9)
  • Fixed the debug room clip frames being drawn in the wrong place and size when the upscaling factor is raised
  • Fixed the inventory background showing black, and objects around it going missing, in a headless run
  • Fixed the underwater view wobbling less at higher supersampling values (TRX1207)
  • Fixed sprite shadows breaking apart on uneven ground (Graphic Options → Visuals → Shadows shape) ( #6388 / TRX1244)
  • Fixed sprite shadows sinking into the floor when vertex snapping is on (Graphic Options → Visuals → Shadows shape)
  • Fixed static objects that reach through a doorway taking the water tint and the light of the room next door
  • Fixed static objects disappearing depending on the camera angle (OG bug) (TRX1211)
  • Fixed the underwater view wobbling less at higher supersampling values (TRX1207)
  • Fixed the debug portal and bounding box lines becoming thinner at higher supersampling values (TRX1251)
  • Fixed missing reflections on transparent TR4 surfaces, such as Werner's glasses (TRX1294)
  • Fixed TR3 colored light objects appearing white in TR1 and TR2 levels ( #6517 / TRX1377, regression from 1.10)
  • Fixed the top of the picture being cut off in fullscreen on macOS ( #6551 / TRX1407)
  • Fixed TR3 levels refusing to start with a message that TRX cannot draw the game
  • Fixed the picture jittering between two frames while the game fades out to quit (TRX1405)

TR1

  • Added the ability for Lara to burn in swamp rooms marked with death sectors ( #6539 / TRX1395)
  • Changed Lara to retain her equipment when turning to gold on the Midas Hand, with the equipment also turning to gold (TRX1073)
  • Fixed Lara's arm remaining in the flare pose if holding one on the Midas Hand (TRX1073)
  • Fixed a rare chance of exploded body parts getting stuck indefinitely at ceiling height (OG bug) (TRX1301)

TR2

  • Added the ability for Lara to burn in swamp rooms marked with death sectors ( #6539 / TRX1395)
  • Fixed the Tibetan Foothills demo becoming out of sync when breeze mode is set to TR3 (TRX1388, regression from 1.10)

TR3

  • Added crystals to each of the levels in The Lost Artefact, and made the crystal mode option visible (Gameplay → General → Crystal mode) (TRX1111)
  • Added an option to render black smoke emitters as white, as per the PC release (Gameplay → Fixes → Fix smoke emitters) ( #6411 / TRX1288)
  • Changed the underwater light patterns to run in broad bands, as the original draws them, rather than fine speckle
  • Changed the underwater picture wobble to grow more gently on large screens, where it was too strong
  • Fixed z-fighting in rooms 21, 67 amd 122 in Jungle, and fixed incorrect lighting in room 87 (OG bugs) (TRX1088)
  • Fixed Vultures in The River Ganges and Nevada Desert having incorrect animation bounds (OG bug) ( #6303 / TRX1163)
  • Fixed missing alpha blending on the MP5 and M16 gun flare in the gym (regression from 1.7) (TRX1066)
  • Fixed Lara being able to turn too quickly when wading (regression from 1.0) (TRX1129)
  • Fixed Lara's sliding SFX continuing after she leaves a slope ( #6294 / TRX1155, regression from 1.0)
  • Fixed underwater blood clouds appearing in the air when the security lasers hurt Lara at the water surface (OG bug) ( #6323 / TRX1180)
  • Fixed the ceiling spikes not stopping on a pushable block until Lara finishes pushing it (OG bug) ( #6308 / TRX1169)
  • Fixed the piranhas in It's a Madhouse! being invisible if attacking Lara while she collects the Aviary Key ( #6345 / TRX1200)
  • Fixed fish losing their underwater color (TRX1385, regression from 1.8)
  • Fixed the specks drifting in water being too small and all one size
  • Fixed crystal 206 in Thames Wharf not being triggered if the alternative route is used to reach it ( #6349 / TRX1202)
  • Fixed Lara being embedded in the floor at the beginning of Temple Ruins, which causes the camera to pop after the first frame (TRX1028)
  • Fixed being able to see the zipline in Lara's Home reset if certain paths are taken ( #5367 / TRX1134)
  • Fixed the wrong SFX playing when Lara draws a rifle type weapon, and missing SFX when drawing/holstering the harpoon when underwater ( #5367 / TRX1134)
  • Fixed z-fighting on the passport in each level ( #5367 / TRX1134)
  • Fixed a faulty portal in Antarctica room 20 (TRX1246)
  • Fixed the explosion overlay sample not playing when firing weapons (TRX1255, regression from 1.0)
  • Fixed missing sound effects when Lara is killed by the T-Rex ( #6414 / TRX1273, regression from 1.0)
  • Fixed Lara not behaving consistently on the ladder in High Security Compound room 93 (OG bug) (TRX1324)
  • Fixed a slope softlock in Meteorite Cavern room 12 (OG bug) ( #6483 / TRX1338)
  • Fixed the fans in Thames Wharf room 77 by slowing them down before Lara re-enters the water after having solved the puzzle ( #6410 / TRX1268)
  • Fixed incorrect UVs on some injected textures (TRX1366, regression from 1.9)
  • Fixed the grinders in RX-Tech Mines being clipped out of view at certain angles (OG bug) (TRX1347)
  • Fixed two black patches on the Infada Stone (OG bug)

TR4

  • Added the ability to skip in-game cutscenes (TRX1051)
  • Added the game's logo to the title screen, with a setting for which language's logo to show (Graphic Options → UI → Title logo)
  • Added waterfalls, which run and play their loop, and the mist that rises where they land (TRX1067)
  • Added the in-game cutscenes of Angkor Wat and Race for the Iris, with the characters speaking their lines and the outcome of the race deciding which ending plays
  • Added Boar control (TRX1185)
  • Added Poison Dart control (TRX1215 / TRX1216)
  • Added Scaled Spikes control (TRX1222)
  • Added Collapsible Floor control, with a requires_heavy_trigger property for those that need heavy activators (TRX1230)
  • Added level statistics scanning (TRX1201)
  • Added the timer Race for the Iris runs between its cutscenes (TRX1109)
  • Added the captions that open Angkor Wat and The Tomb of Seth (TRX487)
  • Added the sprite shadow, so the shadow shape setting offers it as in the other games (Graphic Options → Visuals → Shadows shape) (TRX1290)
  • Added the TR4 fog color changes that happen as Lara reaches certain points (TRX658)
  • Added the wobble effect the original shows while the camera is under water (TRX523)
  • Added the drifting specks the original shows in water rooms (TRX553)
  • Added the water ripples the original shows, in their size, their color and the speed they spread at (TRX590)
  • Added the water tint the original shows while the camera is under water, which leaves the water surface and the shoreline in the colors they have in the dry room (TRX560)
  • Added pickup aids (Graphic Options → Visuals → Pickup aids) (TRX1355)
  • Added inventory option models (TRX1357)
  • Added TR4 support to the Windows installer (TRX1333)
  • Changed a flip to move the group of rooms the trigger names, rather than every flip room in the level (TRX173)
  • Changed the inventory item lighting to match the original game (TRX1371)
  • Changed the lighting of the rotating pickups in the interface to match the original game (TRX1402)
  • Fixed animations that move an item sideways playing with the item standing still, such as TR4's guide shimmy (TRX1062)
  • Fixed creatures walking through squares a pushable block stands on (TRX1060)
  • Fixed Lara flinching when she bumps into Von Croy (TRX1095)
  • Fixed characters not being drawn while an animation carries them into the next room, such as Von Croy climbing down in Race for the Iris (TRX1232)
  • Fixed all of Lara turning the color of the water while she wades (TRX589)
  • Fixed rooms and their contents sometimes disappearing while an in-game cutscene plays (TRX1052)
  • Fixed parts of the level dropping out of the picture during the cutscene that opens Karnak (TRX1092)
  • Fixed the parked jeep showing in the temple during the cutscene that opens Karnak (TRX1092)
  • Fixed a crash while an in-game cutscene poses Lara (TRX1059)
  • Fixed characters sliding across the room, and Lara's braid trailing behind her, when an in-game cutscene moves them to a new place (TRX1270)
  • Fixed the level showing for a moment when an in-game cutscene ends (TRX1252)
  • Fixed Lara keeping her weapons drawn, and her flare in hand, while the screen fades into an in-game cutscene (TRX1349)
  • Fixed Lara's shadow and the flames around her when she burns staying where an in-game cutscene began, rather than following her (TRX911)
  • Fixed the light the flames cast staying where an in-game cutscene began while Lara burns, rather than following her (TRX1197)
  • Fixed Von Croy's shadow floating at the height of his knees during the scenes he plays in Angkor Wat (TRX911)
  • Fixed Lara's shadow being too small to read as the jeep's during the cutscene that opens Karnak (TRX911)
  • Fixed the geometry in Karnak causing the opening cutscene camera to be in the void, and some rooms not rendering fully as a result (TRX1184)
  • Fixed a dropped flare turning black after a save is loaded (TRX904)
  • Fixed the camera getting stuck during a Von Croy tutorial at the end of Angkor Wat, Route of the Virtuous (TRX1213)
  • Fixed blood shrinking to specks as it falls, rather than staying in drops (TRX1199)
  • Fixed a missing texture in room 30 in the title level (TRX1372)
  • Fixed faulty portals between rooms 60 and 64 in Angkor Wat, and a missing texture in room 64 (TRX698 / TRX1372)
  • Fixed missing and incorrect textures in Race for the Iris rooms 4, 31, 99 and 103 (TRX1372 / TRX1463)
  • Fixed the camera being able to enter the space occupied by switch 39 in Race for the Iris (OG bug) (TRX1463)
  • Fixed inaccurate bounding boxes on some static meshes in Race for the Iris (OG bug) (TRX1463)
  • Fixed a low quality texture on young Lara's head (OG bug) (TRX1452)
  • Fixed texture bleeding on Lara's nose when bilinear filtering is enabled (OG bug) (TRX1453)
  • Fixed keys and puzzle items disappearing from Lara's inventory at the end of every level (TRX1477)
  • Fixed minor shadow placement discrepancies compared to the OG

Miscellaneous

  • Added an option to cast Lara in gold whatever she is wearing (Graphic Options → Visuals → Golden Lara) (TRX1070)
  • Added a /version command, which shows the version this build reports
  • Added support for negative timers in triggers
  • Changed the game to fade to black when it closes from the passport or main menu (Graphic Options → Visuals → Fade on game exit) (TRX1376)
  • Changed the look input to skip cutscenes and flyby sequences (TRX1093)
  • Changed the message shown when there is nothing to play to name each game it passed over and say what is wrong with it, rather than leaving the reason in the log (TRX1083)
  • Changed a game named with --mod to say why it cannot be played, rather than quietly starting a different one (TRX1083)
  • Changed a broken settings, strings or game data file to say what is wrong with it and where (TRX1112)
  • Changed Lara turning to gold on the Midas hand to gild the outfit she has on, rather than swap her for a golden model (TRX1070)
  • Fixed touch controls turning on and showing the on-screen overlay on machines with a trackpad but no touchscreen (TRX1417)
  • Fixed the game crashing when a language with a broken strings file is picked (TRX1112)
  • Fixed the game crashing when another game is switched to while Lara is riding a vehicle (TRX1148)
  • Fixed the game crashing when a screenshot is taken in certain levels (TRX1305)
  • Fixed a false warning that the settings could not be saved (TRX1112)
  • Fixed flyby sequences not skipping with the action and confirm inputs (TRX1262)
  • Fixed the camera when using binoculars clipping into the ceiling if the ceiling around Lara is very low ( #6352 / TRX1205)
  • Fixed the rocket launcher's animation object having no name
  • Fixed the game stuttering while it writes its log

Lua

  • Added trx.rooms.flip_groups(), so a level script can move some flip pairs while the rest stay where they are
  • Added trx.lara.signals, trx.game.signals and trx.cutscenes.signals, so a script hears when Lara's state, the game's or a cutscene's changes rather than asking after it
  • Added trx.lara.is_controllable, trx.lara.vehicle, trx.lara.MAX_AIR, trx.lara.MAX_SPRINT, what her arms and the flare in them are doing, and what she is lining herself up with, so a script can report what the overlay reports
  • Added trx.game.is_playing, trx.game.is_suspended, trx.game.is_photo_mode, trx.game.tr_version, trx.game.real_time and trx.game.measured_fps, so a script can tell what the game is doing and how fast it is drawing
  • Added the trx.input Lua module for reading and capturing input, naming roles and layouts, and changing custom bindings
  • Added a new Lua module, trx.overlay, for the part of the overlay the engine still owns, so a script drawing the rest can follow it
  • Added trx.overlay.has_letterbox and trx.overlay.signals.letterbox, so a script can hold something back while the cinematic bars have the screen
  • Added init.lua, so a script can require a directory and its module can grow into several files without changing its callers
  • Added trx.ui.widgets.Pad, trx.ui.widgets.Frame and trx.ui.widgets.Fit, so a script can build basic dialogs
  • Added trx.ui.primitive.panel() and trx.ui.FrameStyle, so a widget can draw what the game draws behind its dialogs
  • Added trx.game.photo_mode_target and trx.lara.can_pose, which report what photo mode is steering and whether Lara has poses to use
  • Added trx.objects.Object.name, for the name the game shows for an object
  • Added trx.items.Item.is_ally and a boss family to trx.objects.query, so a script can tell a creature that fights for Lara from one that fights her, and pick out the ones the game treats as bosses
  • Added trx.weapons.Weapon.has_infinite_ammo and trx.weapons.Weapon.ammo_icon, so a script can tell a weapon that never runs dry from one whose shots are worth counting, and draw the icon the count is shown with
  • Added trx.events.on_tick() and trx.signal.tick, which happen once for every tick the game runs, whether a level is being played or a menu is open
  • Added a new Lua module, trx.signal, for a value that says when it changes: signals combine with &, | and ~, a combination reports only when its own answer moves, trx.signal.Signal:map and trx.signal.combine make one out of what a script works out for itself, trx.signal.config gives a setting one of its own, and trx.signal.polled makes one out of anything read once a tick
  • Added trx.events.on_cutscene_frame(), which reports every frame of a TR4 cutscene, so a script can act part-way through one (TRX1199)
  • Added trx.fx.blood() and trx.fx.blood_bath(), so a script can make a hit or a kill bleed wherever it wants (TRX1199)
  • Added the full weapon definition to trx.weapons, so a script can read and change what a weapon does: its damage, reach and accuracy, its aim limits, its ammunition, the animations it is drawn by, and the flash, glow, smoke and shells it throws (TRX1091)
  • Added trx.math.Color and trx.math.color(), so a color is a value with its channels and its hex text on it rather than a string (TRX1091)
  • Added trx.cutscenes.actor_count, trx.cutscenes.set_actor_visible(), trx.cutscenes.set_node_mesh() and trx.cutscenes.clear_node_mesh(), for hiding an actor in the scene on screen or putting another object's mesh on one (TRX1058)
  • Added trx.assault.get_time(), trx.assault.get_best_time(), and the penalty and lap timings beside them, so a script can draw the assault course clock the game keeps
  • Added trx.game.LOGIC_FPS, the rate the game runs its logic at
  • Added trx.random.Stream, trx.random.control and trx.random.draw, so a script can draw randomness without changing what the creatures decide next (TRX1199)
  • Added trx.random.randrange(), a whole number below a bound, so a script that counts from zero does not have to say the bound twice
  • Added a new Lua module, trx.store, for what a script remembers across a save: one table for the level and one for the playthrough (TRX87)
  • Added a new Lua module, trx.ui, for drawing over the game from a script: widgets that are built once and follow the signals they are given, put in one of the nine places the interface is laid out in, through the new trx.events.on_ui_draw and trx.events.on_ui_paint events and a small set of drawing calls the engine offers ( #5351 / TRX185)
  • Added trx.ui.primitive.sprite() and the calls beside it, so a script can draw an object's own sprites
  • Added trx.ui.primitive.image() and the trx.ui.widgets.Image widget, so a script can draw a picture from the game's images
  • Added trx.locale.language, for the language the player reads the game in
  • Added the trx.ui.widgets.Digits widget, which lays a line of text out as an object's sprites
  • Added a new Lua module, trx.waypoints, for how far along a level's own progression Lara has got, which TR4 marks out and its guides follow; it is saved with the game and reports the furthest she has ever reached as well as where she is now
  • Added trx.lara.speech_face, for the face Lara talks with, which follows the outfit she is wearing rather than the one a level carries
  • Added trx.cutscenes.is_active, which says when a cutscene has the screen, including during its fades (TRX1414)
  • Added trx.cutscenes.set_lara_shadow_bounds(), for the box a cutscene gives Lara's shadow, so a scene can make it read as something she rides in (TRX911)
  • Added trx.mod.Mod.can_switch, which says whether trx.mod.switch accepts the mod, so a single level loaded on its own is told apart from a mod a player picks
  • Added trx.strings.dash_case(), which spells a name the way the console shows one
  • Added trx.game.fmvs and trx.game.play_fmv(), so a script can read the movies the game flow declares and play one where the player stands
  • Added trx.catalog.mint(), so a mod that ships only a script can declare an object of its own
  • Added trx.catalog.key(), which gives back the name an id answers to
  • Added trx.catalog.Context.WEAPONS, so a script can reach the weapons catalog the same way as the others
  • Added trx.catalog.Context.FAMILIES, so a script can reach the object families the same way as the other catalogs
  • Added trx.objects.Object:add_family() and trx.objects.Object:remove_family(), and trx.objects.query:family(), so a script can mint a family of its own and narrow to it
  • Added trx.console.copy(), trx.console.complete(), and the option to read back console command output, so a script can wrap another command
  • Added trx.fx.fog_bulbs and trx.fx.fog_color, so a script can read level fog bulbs and set the distance fog color (TRX658)
  • Added more world effects to trx.fx: explosions, fires, splashes, ripples, footprints, underwater blood and blast rings
  • Added trx.fx.sparks, so a script can throw the particles the games use for smoke, flames, sparks and splashes, and read or change every live particle
  • Added trx.inventory.declare_ring_item(), so a script can add a custom object to the inventory ring
  • Changed require() to also look for <module>/init.lua, so modules can grow into multiple files without changing how callers require them.
  • Changed the in-game overlay to be drawn by a script rather than by the engine, so what it shows and where it sits can be changed without a build
  • Changed the inventory ring to be declared by a script, so its contents can be changed without a build
  • Changed trx.cutscenes to hand over the cutscene itself, so trx.cutscenes[30] says whether it has played, plays it, and narrows the cutscene events to it; the cutscene events hand one over too, and the functions that take a number are deprecated (TRX1199)
  • Changed trx.cutscenes.play() to take whether to fade out first, so a scene that opens a level begins on the black screen the level loaded behind (TRX1063)
  • Changed trx.game.trx_version to trx.game.TRX_VERSION
  • Changed trx.game.end_level() to end the level silently, leaving the "Level complete!" message to the /endlevel console command
  • Changed trx.items.Item:die() and trx.items.Item:shatter() to let scripts choose the flame color for flying body parts
  • Changed a color setting to read as a trx.math.Color rather than as hex text, and to be written with either (TRX1091)
  • Changed the trx.weapons functions that take a weapon id to be deprecated, the weapon itself now answering what it is available as, what it is carried as, and what it is fed (TRX1091)
  • Fixed creatures taking wrong routes where crossing to the next square needs a jump or a monkey swing (TRX1061)
  • Fixed reading a level's inventory or stats raising an error

Downloads