Submission #5212: theenglishman's GBA Prince of Persia: The Sands of Time "100%" in 1:14:16.72

System Game Boy Advance Emulator BizHawk 1.11.6
Game Version USA Frame Count 266189
ROM Filename 1232 - Prince of Persia - The Sands of Time (U) (M3).gba Frame Rate 59.7275005696058
Branch 100% Rerecord Count 116293
Unknown Authors theenglishman
Game Prince of Persia: The Sands of Time
Submitted by theenglishman on 9/3/2016 2:13:59 AM

Submission Comments
  • Achieves 100% completion
  • Abuses death as a shortcut
  • Contains speed/entertainment tradeoffs
  • Heavy glitch abuse
  • Takes damage to save time
  • Rewinds time to save time
  • Uses hardcore parkour strats
Core used: mGBA
NOTE: This game doesn't name its rooms at all. When I talk about specific rooms in my commentary, I will use the naming convention from this GameFAQs walkthrough if you wish to follow along.
Everyone's favourite gymnastic winner is back, and this time, he's sparing no expense to make sure the evil Vizier's reign of sand-based terror is stopped once and for all. Watch as our hero (?) slaughters the Vizier's entire army, robs him of his precious metal, confiscates his valuable medical resources and steals all his ancient scrolls without even stamping his library card.
Suggested screenshots:
frame 97,619
frame 156,467
frame 189,753
frame 256,019


Prince of Persia: The Sands of Time was released on Game Boy Advance at the same time as the console and PC versions, and you could link it up with the GameCube version for extra bonuses in both games. Of course, much like its big brother on consoles, the GBA version comes with the Ubisoft Seal of Quality (trademark in dispute), by which I mean it's pretty much completely broken. But more on that later.
I started this TAS as a side project in late May of 2016, to help me relax while I was finishing my all-bosses TAS of Metal Gear Solid. I desperately wanted to do something that wasn't Metal Gear-related, and the notion of giving Sands of Time a 100% category had been floating around in my head for some time - not to mention the idea of coming back to this game for the first time in eight years seemed like a great nostalgia trip.
Research began with a test TAS that clocked in at 1h20m. In hindsight, I'm very happy I decided to make it, because it taught me some valuable lessons about the game's mechanics as well as alerting me to a few nasty glitches that would have caused near-total restarts had I been going for full optimization from the start, and allowed me to save nearly seven minutes off my test time.

Defining 100%

No previous definition of 100% exists for this game, so I had to create one. Essentially, it's everything you can acquire or do in the game without the use of a Nintendo GameCube/Game Boy Advance link cable. Quoth GameFAQs: "In the GBA version, there are three doors you cannot go through. If you break three specific boxes in the GCN version (while connected to the GBA as you do so), you can go through these three doors." So basically, unless we get we get a crazy advanced multiple-emulation-core MultiHawk build, a full 101% run isn't going to happen any time soon.
I also decided to omit completing the map screen, since runs that use full map completion don't have the greatest reputation around here.
With these criteria in place, 100% consists of the following:
  • Kill all 75 Sand Persians, which makes the Prince reach max stats (Level 30, 150 HP, 115 Attack, 90 Defence)
  • Acquire all available consumables (9 Life Potions, 9 Sands of Time, 5 Antidotes - consumables can be used at any time)
  • Collect Slowdown Ring and Freeze Ring
  • Collect all tutorial Scrolls
  • Reassemble all Medals and lower all the Medal Gates
  • Press the three GameCube switches (despite its name, the switches are still present and accounted for without a connection, and will display a message when activated, but don't actually do anything)
Not included in 100% are the following:
  • full map completion (see above)
  • 1x Sands of Time and 2x Elixir Potions hidden behind secret gates in S3R12, S4R12 and S5R6 (requires connection to a GameCube, see above)

How Gameplay Differs in 100%

This game is a 2D pseudo-Metroidvania disguised as an action puzzle-platformer, though the Metroidvania parts don't come into play unless you really decide to explore in between the two final bosses. The map is structured similarly to Metroid: Other M - mostly linear until you reach a climactic, supposedly final boss (Metroid Queen/Vizier 1) after which you get a new move (Power Bomb/Fury Charge) that allows for more exploration on your way to the actual final boss (Phantoon/Vizier 2).
Unlike Other M, however, you have the option to go straight to the final boss as soon as you acquire Fury, which is what happens in an any% run. Some items/enemies are hidden behind wooden doors that can only be broken with Fury, or are placed in such a way that you cannot acquire them without a move from later in the game. In practice, two Sand Persians and a few items that are meant to be second pass-only can be acquired on the first pass. This means the Prince is overlevelled by 1 by the time he reaches Vizier 1, and also significantly cuts down on the amount of backtracking you have to do on the second pass, most notably in Worlds 2 and 4.

Zombie Prince

Every single trick in this game will be documented on a knowledge page (which I need to write at some point), but the Zombie Glitch, a brand-new entry to the game's tech, is by far the most important discovery I've made. By entering the pause menu in the frame between reaching 0 HP and triggering his Death state, and then using a Life potion, the Prince will be rendered completely invincible to all enemy and hazard damage (though he can still take fall damage). Naturally, this neuters a large number of the game's obstacles moot and completely changes the way you play the game, but it's not a complete game breaker. The Zombie glitch will wear off if you:
  • die (by falling too far or into a bottomless pit)
  • use a Save Room
  • enter a story cutscene
  • switch between the Prince and Farah
The latter two are of the most concern, since it makes World 2 a bit of a bottleneck. Since there's a story cutscene at the start of World 2, a lot of time is lost by having to set up a damage route on the way to the big Farah-less cleanup section in World 2, and again after reuniting with her. In all, four of the nine Life potions I collect in this run are used to trigger Zombie glitches (one at the start of World 1, one during the Farah-less part of World 2, one just before the World 2 boss, and one during the start of cleanup), though in an any% you would only need three. On a somewhat related note, the Dizzy effect from touching Sand Zombies still triggers with the Zombie glitch activated, though you don't take damage.

General notes

While I think the route and tricks are pretty self-explanatory for the most part, I know there will be questions about a few things, so I'll go ahead and address those while I'm here. I've separated them into each world, plus cleanup.

World 1

  • One trick you'll see a lot of in this run is a classic from my any% run, the Ceiling Jump. The game's buggy floor collision does a ground check even if the Prince hits the bottom of a floor, allowing you a two-frame window to jump again or even swing your sword. That's the Ubisoft Seal of Quality right there.
  • There are small improvements throughout the first few rooms of World 1, especially S1R2, which will carry over to an eventual any% improvement. If nothing else, the Zombie glitch alone will save minutes.
  • It's a shame that there aren't more uses for grabbing items then rewinding time back to your starting point, like in S1R3. You see it a few other times, but not that often.
  • In S1R4, I have to wait a certain amount of time before exiting the room, otherwise the "enemies killed" flag won't trigger and the Lion Statue will respawn, leaving me unable to backtrack through World 1 during cleanup. I learned this the hard way when doing my test TAS. The Ubisoft Seal of Quality strikes again!
  • Killing the bats in S1R5 is not random. I need 100 Sand to be able to Restore two pillars, allowing access to bonus rooms, without opening the menu to use up a Sands of Time refill. Unfortunately, there aren't very many Sand Monsters in the next few maps. I had this routed out, trust me.
  • Depending on your current speed and distance from the pot, it's sometimes faster to jump-slash into them to collect a consumable item, while other times a ducking swing is faster.
  • On a related note, I also found that there are rare occasions where it's a frame or two faster to roll into save rooms than running. It all depends on your current position when entering the map.
  • The first significant sequence break is in S1R10, where I access S1R13 without the double jump. This cuts out a good chunk of backtracking, and makes use of the extended glitch jump (L+R at any point within nine frames of your jump) as well as the ceiling jump.
  • Fighting Spear Swingers will undoubtedly look weird to anyone unfamiliar with the game, so I should explain what it is I'm doing with these guys. Spear Swingers are initially invincible, even when you have the Zombie Glitch activated; you have to wait until they get tired, then trick them into throwing their spears into the air by jumping. This resulted in the creation of two timesavers:
    • Spear Stacking, aggroing a Spear Swinger on-screen (or at least in the game's memory) long enough for their swinging animation to start. At this point, the timer for their swinging animation is still running, so I can go off and pick up another collectible somewhere else. This isn't always the optimal solution for every Spear Swinger, depending on where they're placed, but it's helpful for many of them.
    • Spear Duping, a technique for getting a tired Spear Swinger to throw his spear without jumping. The Swinger's AI, it turns out, reacts to an A button press, not a jump, and if you press A one frame after letting go of a D-pad direction, it will eat your input. Normally this is a bad thing, but since it keeps the Prince on the ground, that means he can attack the Swinger much faster and more directly.
  • I can afford to be a bit more aggressive on the Sand Griffin boss fights with the Zombie glitch activated. Unfortunately, on the first boss there turned out to be a damage cap on how much you can hurt him during his initial swooping attack. Still, I'm happy with how it turned out. (The Scroll of Gathering is also significantly faster to get if you skip the bridge like in any%, as I do here)

World 2

  • I tried to plan out an optimal damage route throughout World 2 that lost a minimum amount of time while still hurting the Prince as much as possible. I wanted the Prince to be at 8 HP or lower by the time he got to S2R9.
  • In World 2, you'll notice that I don't always skip the puzzle-solved cutscene by switching characters. I deliberately avoid doing so on certain maps where I need to backtrack forward during cleanup. It turns out that cutscene actually contains the "puzzle solved" flag for each room, and without it, the puzzle will reset and I'd have to take a massive detour. Oh, Ubisoft.
  • There's also a new trick during the deathwarps that teleport Farah to a checkpoint. Rewinding time on the same frame as you die will cancel out the "you died!" music, which triggers the game over screen earlier, saving a bit of time.
  • More time was saved in S2R7 after I discovered it was just barely possible for Farah to cross over the spiked platforms, meaning I didn't have to lower them as the Prince by ringing the gong. It also saves having to do one more character switch.
  • With Whip Mistresses, you need to be out of their grab range before they'll perform the attack that leaves their whip vulnerable to being broken. If you're too close, they'll attack normally and will be invincible. That's why I have to constantly dodge in and out of their way like that.
    • Additionally, Whip Mistresses (and Sand Huggers, who you start seeing in World 5) will softlock your game if they grab you while you have the Zombie Glitch activated. The Prince will be stuck in the grabbed state, and since he's not taking damage, he won't have any way out.
  • The enemies in S2R15 take significantly longer to kill than normal, because these are post-game enemies I'm sequence breaking to fight early, and the Prince is at a comparatively very low level. With such low defense, they'd be capable of killing me in one hit if I didn't have the Zombie Glitch.
  • There's a Jade Medal in S2R11, but it's faster to wait to get it until cleanup, since it's next to a room entrance we can't access without Wall Rebound - same goes for the Antidote in S2R3.
  • The World 2 Sand Griffin was far and away the most frustrating thing to optimize in the entire run, what with attempting to make as minimal use of the Slow-Down Ring as possible while still defeating the Griffin in one cycle. Utterly infuriating, but very satisfying when I got the perfect result.

World 3

  • S3R1 has the first real instance of Spear Stacking, as mentioned above. Since the Saber Tooths have to be killed for the door to be unlocked, I aggro the Spear Swinger and then kill the Sabre Tooth while the Swinger is swinging away.
  • World 3's wider maps allow for some interesting routes where collectibles are concerned. I especially like the Medal of Olivine chaining into the Freeze Ring in S3R6.
  • New Freeze Ring strategy for the music puzzle in S3R9, which will definitely see use in any% as well.
  • Fun fact! The Azurite medal piece in S3R10 is the only medal in the game you can collect without rewinding time. Probably because it's on a ledge, and the developers found a nasty bug or something with rewinding time and ledges and didn't want to bother fixing it.
  • World 3 Griffin gets owned thanks to an overlevelled Prince. Man I love sequence breaking ^_^

World 4

  • Okay, so Spear Stabbers have very strange AI quirks when you have the Zombie Glitch activated - you need to jump at a specific point, and not swing your sword too soon otherwise they'll start retreating. Basically you want them to run into your sword rather than double-jump over them and attack like you're supposed to, but since their AI isn't coded to handle a situation like this, it can get a bit complicated.
  • A much more optimized version of the Lion Statue skip of S4R4. Replicating this input for my new any% is not going to be fun :/
  • The Sand Zombie double-kill after picking up the antidote in S4R7 is one of my favourite parts of the run. It just looks so cool!
  • There's a small entertainment tradeoff in S4R9 to show off an alternate way to pick up the Zircon medal.
  • By total accident, I managed to save a few seconds at the Zircon Gate by glitching the music into not loading, causing the gate to lower instantly. I think it had to do with entering the Save room in a Dizzy state.
  • In S4R13, it's still faster to skip the Musical Flare puzzle even after killing the Floating Genie. Same goes for S5R3.
  • It's faster to leave the Freeze Ring on during the World 4 Griffin fight, and keep hitting the Griffin for extra Sand, rather than go to the menu and unequip it. Not by much, mind you, but it is faster.
  • And since right after that is our first Wall Rebound, I might as well mention that rebounding into a ledge grab jump is by far the fastest way to use this move, unless you have Wall Run as an option.

World 5

  • In S5R3, hitting a Floating Genie while he's summoning a Sand Zombie will cancel him out of his "Ooooh, I'm wiggling my hands ominously to summon an enemy, ooooooooh!" animation.
  • I love how confused the Sabre Tooths get when you have them cornered with Zombie Glitch. It's adorable.


  • I chose the cleanup route very deliberately. World 5 has the final Medal of Tagua behind a Wooden Door, and the Tagua Gate is in World 1. However, it's 8 seconds faster to enter World 1 through World 2's front entrance, so I clean up there first. World 3's entrance happens to be directly across from World 1's, while World 4's is directly beneath the door to the final boss. Aside from that, I think the actual gameplay is pretty straightforward, though if you have any further questions I'll be sure to answer them in further edits.

What's Next?

Well, an improvement of my any% TAS is certainly in order, what with the Zombie Glitch as well as about eight years of improved tech. As for other games - we'll see. As for now, I hope you enjoy the run! :)
Oh, and I almost forgot: GO ROCK GO!
Toronto Rock

Samsara: I guess it's TIME to judge this!!!
Samsara: The perfect accomplice to the any% run, just as insanely technical and broken, except even moreso with Zombie Prince. I guess it's TIME to reuse this pun and accept this to Moons!!!
feos: I'm taking the prince of Persia. To the pub.

Last Edited by on 1/1/2022 6:13 PM
Page History Latest diff