TASVideos

Tool-assisted game movies
When human skills are just not enough

Submission #6716: Woops's PSX Tomb Raider in 52:19.45

Console: Sony PlayStation
Game name: Tomb Raider
Game version: unknown
ROM filename: Tomb Raider (USA) (v1.6).cue
Branch:
Emulator: BizHawk 1.13.1
Movie length: 52:19.45
FrameCount: 186147
Re-record count: 89755
Author's real name:
Author's nickname: Woops
Submitter: Woops
Submitted at: 2020-04-04 20:12:39
Text last edited at: 2020-05-10 01:28:21
Text last edited by: Dacicus
Download: Download (185625 bytes)
Status: published
Click to view the actual publication
Submission instructions
Discuss this submission (also rating / voting)
List all submissions by this submitter
List pages on this site that refer to this submission
View submission text history
Back to the submission list
Author's comments and explanations:
https://www.youtube.com/playlist?list=PLo9vdI_FgEQfWQA4NSuig7i9eeHv1_lhU

Game objectives

  • Emulator used: BizHawk-1.13.1
  • Game version : v1.6
  • BIOS : SCPH5501.BIN
  • Heavy glitch abuse

About the game

The very first game of the action-adventure franchise, featuring Lara Croft as she sets out on an expedition to recover a mysterious artifact called the Scion.

Comments

Differences between PSX and PC versions

There are a few differences between the PSX and PC versions of the game, but nothing impactful on the route planning :

  • Loading times on PSX between levels
  • A 1 minute cutscene after the penultimate level that is skippable normally on PSX, and only with a glitch on PC.
  • Save points that are physical objects on PSX (on PC, you can save anywhere and anytime), so they can hinder or help Lara.

Timing

The game runs at 30 fps, so usually 1 in-game frame = 2 real time frame. On laggy places, the game may need more real time frames to advance to the next in-game frame.

There isn't anything in the movie that necessarily aims for IGT instead of real time, but I prefer IGT to make it easier to compare with other times.

Speed and movement

Movement Speed
Walking 15
Running 47
Standing jumps 50
Rolling 50
Swimming 50
Sliding 50
Running jump 75

As you can see, the running jump is by far the fastest way to move, to the point where it is often better to take a seemingly non-optimal trajectory in order to make one more jump instead of running.

Now it is important to note that these are the speed in the RAM. In practice, the game rounds Lara's coordinates (X, Y, Z) because it only accepts integers. It means that depending if it rounds up or rounds down, Lara's true speed will be a little bit higher or smaller than the RAM speed. It also allows to adjusting either the X speed or Y speed while keeping the other one the same. The biggest example of this is that for a X speed of -75, the Y speed can be anything from 12 to -13.

When Lara is turning, her rotation speed increases by 45 each frame, until it caps to 1092 on land, and 182 in air. However, when she is holding her guns (must be fully equipped) and turning on the spot, her rotation speed will reach 1092 almost instantly. While swimming, the rotation speed is always 1092 no matter what.

Route planning

Strictly speaking, there are only 3 enemies I need to kill to finish the game, one to trigger the end of a level (50 HP) and 2 to open locked doors (75 HP and 500 HP). Picking an item on the ground costs 73 frames (~2.43s) at the very least, so I needed to restrict the number of pickups as much as possible.

Weapon Damage Damage per second
Pistols 1 (per gun) 6
Shotgun ~18 (depends on range) ~16
Magnums 2 (per gun) 12
Uzis 1 (per gun) 15

So for the 3 enemies mentioned above, it is worth to pick any of these weapons/clips as long as it costs less time to pick them than their potential frames saved.

The fastest route turned out to be the Uzis. its clips come in doubles (Obelisk of Khamoon and Atlantis) and even doubled with a needed medipack.

As for the medipacks, it is worth to pick them only if the alternative method to save enough health costs more time.

Glitches and tricks

I am not gonna describe every glitch here, only the most common ones I used in the TAS. For the full list of glitches already found in the Tomb Raider games, I suggest that you look at this page : https://docs.google.com/document/d/1OfmtA7uewrFNc-dE6_lddmSLjC2Pr6axIuY8GYu4kxY/edit

  • Corner bug : By entering into a corner with an angle close to 45°, Lara will get teleported to the top of this corner.

  • Wall bug : By hitting a wall while jumping, Lara is teleported to the top of this wall. It only works either if the floor under Lara is slightly-sloping or if she is between two floors of different height. Really precise in some places.

  • Sidestep descending bug : If Lara does a sidestep while in the air (possible cases: start of a level if she starts in air, collapsible tiles, and if Lara is really close of a ledge), then she will be teleported to the floor below her immediately without taking any damage.

  • Dive bug : If Lara performs a dive and ends up at the edge of a ledge, she will not take damage even if the jump height would normally kill her.

  • Quicksand bug : (introduction for QWOP)- some of Lara's animations don't have any speed assigned to them, such as the vault animations. These are affected with lara's fallspeed. When she has positive fallspeed, the game automatically assigns speed to these (normally) still animations. Useful for skipping doors when combined with QWOP.

  • QWOP : The state when the game thinks Lara is falling while she is on the floor. Normally, when Lara jumps, two things happen: her gravity status is set to TRUE, and in result her fallspeed changes (fallspeed is the speed of Lara when she's falling. *it* affects *her position*, meaning when fallspeed changes to, for example, 10, Lara's Y goes down 10 values.). When landing, the game simply resets her gravity status to FALSE. now QWOP is when Lara is on the floor, running, but her gravity status is TRUE. meaning the game thinks she's falling, meaning her fallspeed is on the rise. When the fallspeed reaches 128, Lara is going down 128 units, which is the height the game forces the "step up" animation on, which results in the infamous QWOP move. Now when the fallspeed reaches 384, the game thinks Lara is in front of a 2 click ledge, which she performs vaults on, Triggering the quicksand bug.

Stage by stage comments

Here is a table comparing my times with the published run's times for each level. Reason for each level's timesave is listed below, in the level comments.

Level published movie my time time save(seconds)
Caves 1:16 1:15 1
City of Vilcabamba 2:40 1:40 60
Lost Valley 3:40 3:34 6
Tomb of Qualopec 0:56 0:55 1
St. Francis' Folly 4:21 4:16 5
Colosseum 3:40 3:32 8
Palace Midas 5:07 4:55 12
The Cistern 3:40 3:24 16
Tomb of Tihocan 5:59 5:15 44
City of Kahmoon 0:51 0:51 0
Obelisk of Kahmoon 2:14 2:10 4
Sanctuary of the Scion 5:42 5:34 8
Natla's Mines 3:40 3:04 36
Atlantis 1:55 1:54 1
The Great Pyramid 4:19 3:13 66
Total 50:01 45:32 269

Level comments

Caves

The QWOP saved about half a second, and optimization did the rest.

City of Vilcabama

A couple of new skips and optimization.

Lost Valley

New tricks and optimization

Tomb of Qualopec

Optimization.

St. Francis' Folly

New route meant we don't need the medipack anymore, and some new tricks and optimizations.

Colosseum

A small new jump and optimizations.

Palace Midas

New route meant we didn't need the medipack anymore, and optimization,

The Cistern

Couple of new tricks and optimization.

Tomb of Tihocan

new skip and optimization.

City of Khamoon

Mine is faster by 0.1 of a second or so due to optimization, but it doesn't count as the game doesn't count the hundredth. (it doesn't even calculate total time, but we do)

Obelisk of Khamoon

New route meant we didn't need the pickup at the top of the obelisk, and a couple optimizations.

Sanctuary of the Scion

  • Lapogne36 did the input at the beginning of the level, from the very beginning up to the first wallbug near the Sphinx' hand, a huge thanks for him*

-Optimization.

Natla's Mines

Couple of new skips and optimizations.

Atlantis

Better RNG. (somehow)

The Great Pyramid

New skip that caused the route change all the levels above talked about^ and saved a minute itself.

Possible improvements or ideas

  • possibly better RNG in some places, but it went great overall.

Special Thanks

Lapogne36

  • I can not stress this enough, without Lapogne this TAS wouldn't exist.
  • First, his published movie served as base route, second, the input he did in Sanctuary, and lastly, his submission notes were used as base to write this page.
--
  • The Tomb Runner discord for their advice and suggestions while I was making this TAS.
  • Temple of Horus for providing me with a Lua script for displaying RAM values. (Which was originally written by Lapogne36, but heavily modified by Temple of Horus.
  • Everyone who was in the level editing team in Core Design apart from the person who made Sanctuary of the Scion :P


Memory: Judging

Memory: Optimization is great, even better than the published run.

As usual, Woops delivers another great Tomb Raider TAS. From the wallbugs to the QWOPs, a lot of fun stuff to be had. Presumably the little corner eject boosts don't save much time individually, but Woops goes for them anyways which is sign of good attention to detail. Great work with this series.

Accepting to Moons as an improvement to [3440] PSX Tomb Raider (USA) by lapogne36 in 57:02.81.

Dacicus: Processing...


Similar submissions (by title and categories where applicable):