Submission #7572: M1D's GBA Bruce Lee: Return of the Legend in 20:36.13

Game Boy Advance
BizHawk 2.8.0
Bruce Lee - Return of the Legend (U)
Submitted by M1D on 7/4/2022 3:07 PM
Submission Comments

At the Beginning

  1. To see if there exists any possible distinction, I compared the first 2 complete ACTs of Two different mode, Director's Cut Mode and Time Challenge Mode.
And the answer proves to be positive.
Different hitboxDifferent pixel deviation with the same enemy at the same location
Different method of enemies-attackFor instance, different movement route & motivation
Time Challenge Mode has 1 lag frame more than Director's Cut Mode, after the end of each divided ACT.
  1. Malignant Bug: If you kill an enemy from behind his back and then jump and get in contact with his "dead" body. Then he will be resurrected with 1 HP left. You will get an instant failure if in a infiltration mission.
  2. Attention: The same terrain doesn't always be the same even if they look the same.

Branch Name

  1. Time Challenge: An optional difficulty, with Time limited, based on "Director's Cut Mode".
  2. Take 0 Damage: Except for the performance and illustration of Game Story, the Player Character doesn't get injured.
  3. Speedrun: exactly as you commonly know it, rush through the game as fast as possible.

Bugs or Tricks I Used

  1. Be noticed by an enemy and then run away or get disappeared in the enemy's sight, which will urge the enemy to turn back and go aside.
  2. In addition to the item above, each sort of enemies has a different period (usually 20 frames approximately) before their finally catch sight of the Player Character.
  3. It will take several frames for Searchlight Beam to locate its snipher at the Player Character.
  4. Searchlight Beam has a pixel deviation, and so does enemies.
  5. To grab a slightly higher platform while jumping upwards, perform a Punch (B) or Kick (r). Sometimes It may cause a delay of several frames to Grab a Cliff.
  6. Most utilized solution in combat: Attack from behind the enemies.
  7. I use game embedded cheat to unlock "Time Challenge Mode".
  8. Rolling before an EXIT can save 1 or 2 frames, but be cautious to the distance from the EXIT and the Timing to perform a roll.


  1. Falling Position Adjustment (distribution of Key (←) & Key (→) ), to reach the farthest distance when falling downwards from a higher platform.
  2. Calculate the maximum falling height, to grab the mesh, poles or ladders and then drop.
  3. Perform a punch (B) or kick (r) at former 2 or 3 frames ahead of Player Character landing on the ground, in which case, the Player's able to run through behind the enemy. But more significantly, ensure that the punch or kick touches the enemy walking ahead of you but doesn't cause damage, only showing the Health Bar (HP) of the enemy. On the contrary, should the method be taken advantage of in mission of infiltration, you will fail the mission.
  4. →→+B (Punch while running) 16 frames before dropping from a platform, and the Player will reach the farthest distance.
  5. Add or substract the number of Key (A, Jump), to shrink the period of Player being retained in the air. The less retention time of being in the air, the more frames will be saved.
  6. Velocity: running > jumping while running > moving on the mesh, a pole or a ladder.
  7. I use →→↓+B/r to give the Boss a final attack to finish him.
  8. (Stick) →→+B/r to knock away enimes and destroy the box that contains a key (🔑).
  9. I use ←+B/r in the air when confronted with an enemy that cannot be evaded in a common way.
  10. Kill more enemies at the same time as many as possible.


For All ACTFalling Down location adjusted; Shrink unnecessary time of staying in the air: manipulate the extent of jump to just right reach a higher platform; Short jump; Mostly Use Backward Punch (l+B) to attack from behind the enemies; Use Backward Punch (l+B) 2 times to destroy the Stone Pile or Wooden Door in a short distance
ACT 1-1Rolling at 2 frames ahead of Landing
1-2Trick.1: Jump ahead of the enemy and rush to the hideaway, then press Key (↑) lasting for 1 frame, then run away
1-3Rolling Kick location adjusted; Running Punch at 16 frames ahead of starting to drop; Wallflip instead of 2 times of Platform Jump
1-4Leftward Kick; Only grab the Pole once
1-5Enemies Prediction: Fininsh them before they landing on the ground as soon as possible; Rolling
ACT 2-1Adjust the time of jumping to seduce the enemy into jumping; Pick the Stick after turning back; Backward Attack in the air for those enemies in the way
2-2Use Running Kick instead of Long Jump as much as possible
2-3Directly Drop and adjust the Falling-down location; Landing as soon as possible; Running Kick and run across the enemy; Wallflip; Grab less Poles
2-4B, l+B; ↑+r from beneath the enemies; Running Kick; Seduction; Running Punch (→→+B) and Walking Punch (→+B) to finish the 2 Thugs
ACT 3-1Running Kick; Running Punch
3-2Grab the Pole
3-3Wallflip Adjusted; Knife Saving
ACT 4-1Backward Punch
4-2Finish more enemies at the same time
4-3Jump to deceive enemies; One-time Finish All
4-4Combine ACT 4-2 with ACT 4-3
4-5Backward Punch; Rolling Kick as the final attack
ACT 5-1Jump and grab the ladders; Running Punch
5-3Not Pick the Knife; Optimization.3; Kick the Box while jumping up to the Platform
5-4Backward Punch; Rolling Kick as the final attack
ACT 6-1Trick.3; Trick.4; Backward Punch; Running Punch; Attack the enemies in the way while in the air
6-2Trick.4; Arranged Route; Backward Punch and Rolling Kick to finish the Jamal; Maximum Safe Jumping Height Calculated
6-3Trick.5; Leftward Wallflip; Backward Punch to get the Key(🔑); Wallflip and wait for the Searchlight to go aside
ACT 7-1Optimization.9; Deceive enemies; Running Kick instead of jump; Short Jump
7-2Optimization.9; Deceive enemies; Running Punch; Backward Punch to finish the Thug and destroy the Box, then use Running Punch (→→+B) to run away
7-3Optimization.10; Rolling Kick; Backward Punch; Attack the enemy in the way while in the air; B, l+B
ACT 8-1Trick.1; Trick.3; Trick.4; Trick.5; Running Punch; Rolling; Jump and Grab the Mesh several times
8-2Optimization.9; Running Punch
8-3Trick.3; Trick.4; Optimization.9; Arranged Route; Backward Punch and Rolling Kick to finish the Jamal and Texas; Running Punch; Running Kick
8-4Rolling and Backward Punch
ACT 9-1Trick.1; Trick.3; Trick.4; Running Punch; Short Jump
9-2Trick.5; Optimization.9; Arranged Route; Pick the Knife to banish all enemies in the way
9-3Trick.3; Trick.4; Trick.5; Arranged Route; Seduce enemies into attacking
9-4Backward Punch; B, l+B; Running Punch; 2 Knives Arranged Route; Jumping Direction Deception
9-5Seduction; Jumping Direction Deception; Backward Punch; Enemy Movement Prediction; Leftward run away


  1. r: Kick
  2. B: Punch
  3. l: Defence
  4. A: Jump
  5. ← / L: Left Arrow; Backward
  6. → / R: Right Arrow; Walk
  7. ↑ / U: Up Arrow
  8. ↓ / D: Down Arrow; Crouch
  9. →→: running (Running Direction counts as the Positive Direction, No telling left from right)
16 framesJump from a Ladder towards a cliff
33 framesJump up to a Platform while hanging from a cliff and just right begin to run (1 blank frame before starting to run)
41 frames(Stick) →→r: Kick while running using a stick
15 frames(Stick: rr / rrr) between r and next (Stick) r
18 frames(Stick: rrr) between the 2nd r and the 3rd r
34 frames(Stick: rrr) the 3rd r
25 frames(Stick: r) r
6 framesbetween B and ←+B
31 frames←+B
8 framesbetween B and l+B
16 framesl+B
12 framesbetween r and next r
21 frames(→rrB) r between B
37 frames(→rrB) B
1 frames(←+r in the AIR) between ← and R
17 frames(←+r in the AIR) r
30 framesbetween →→+↓ and start of running
30 frames→→r
-2 frames(hanging from a Cliff) A
33 frames(→→↓+r) r
16 frames(→→BB) between B and B
31 frames(→→BB) the Last B
47 frames→BB
12 frames(→rr+B) between r and r
21 frames(→rr+B) between r and B
69 frames(→rr+B) B
102 frames→rr+B
30 frames→→r (In the Air +B)
11 framesr causes damage
9 framesB causes damage
6 frames(BBr) between B and B
8 frames(BBr) between B and r
27 frames(BBr) r
41 framesBBr
37 frames(BBB) the Last B
51 framesBBB
57 framesBBB Slow but Powerful
10 frames(BBB Slow but Powerful) between B and B
37 frames(BBB Slow but Powerful) the Last B
49 framesBB→B
9 frames(BB→B) between the 1st B and the 2nd B
8 frames(BB→B) between the 2nd B and →B
32 frames(BB→B) →B
16 framesr
-1 framesbetween Landing Frame ("_", Blank frame) and Start of running; →_→→
-2 framesGrab the edge of Cliff when dropping
23 frames?Mesh Jump
34 frames↑r
11 frames↓+A
32 frames2 times l+B
-3 framesbetween (→→)↓ and Start of Dropping from the edge of a Cliff
-2 frames↓: Roll while running
-16 frames→→B: Running Punch, reach the farthest. Use it at 16 frames ahead of the Start of Dropping from the edge of a Cliff
-3 framesRunning Jump before the Start of Dropping from a Cliff
6 frames↓: After Crouching to pick a weapon, begin to run
5 frames↑ (Hideaway)
5 frames↓: Crouch
0 framesbetween ↓: Crouch and Jump
-1 frames↑/↓: Grab the Mesh at the frame when reaching the maximum height (Wallflip)
13 framesbetween A(Jump up to a Platform from the edge of a Cliff) and ←/→ to change direction & trajectory
-4/-3 framesbetween (→→) r/B and Landing Frame ("_", Blank frame); -2/-3 frames
-1 framesbetween (→) ↓:Crouch and Landing Frame ("_", Blank frame)
-15 ~ -1 framesbetween r/B: Trick.5 and A (-2 frames before Jump up to a Platform from a Cliff)
13 framesbetween (In the Air) B/r and A (-2 frames before Jump up to a Platform from a Cliff)
-5/-4 framesbetween (In the Air) B/r between Landing Frame ("_", Blank frame, 1 frame before the feet touch the ground)
-4/-3 framesbetween (In the Air) (-1 frame: ←) B/r and Landing Frame ("_", Blank frame)
  1. Jump at 2 or more frames after starting to run and the Player Character reachs the farthest.
  2. Long Jump: A*7; Short Jump: A*[1,3]∩N; Middle Jump: A*4, A*5, A*6
  3. Give priority to breaking the Box
  4. Game complies with the principle of projectile motion; Y-X paracurve: $Y = \frac{v_y}{v_x} X - \frac{g}{2v_x^2} X^2$
  5. Using Long Jump (A*7) may have a accessibility of flying over an enemy
  6. Use a Knife when jumping from an edge of a Cliff →)A +14 frames), which will lead to a maximum displacement


To be honest, I found it in the last month. But this time it's more complicated in this game so I've not got any further inspection of it. However, I did catch a point while improving the TAS in July. Each Stage (ACT, or Mission) has an exclusive Frame Rule (Overall Period). Mathematically speaking, Each patrolling route of enemies is in strong connection with a periodical function relevant to time (frame). To optimize it, is exactly to make a nonlinear programming. I don't know if I get the best optimum but it may not. If one more overall period is saved, then it'll be faster and absolutely a new record. Besides, sub-pixels are utilized to calculate speed (particularly momentary velocity), as a consequence of which a marginal difference in sub-pixels may have an great effect on displacements of Characters.

feos: Claiming for judging.
feos: Replacing with an improvement per author's request.
feos: Cleaned up the branch. Speedrun is the default goal so it doesn't need to be mentioned. And "no damage" is the canonical wording we use over here.
feos: Replacing the file with a 792 frame improvement.
feos: After watching this side-by-side with the normal mode run, I can confirm that Time Challenge Mode is not different enough from regular gameplay to warrant a separate branch, but rather it's a difficulty setting, which we don't put into branch labels.
Regarding "no damage", we only put it into branches if taking damage is faster but was avoided for entertainment purposes. If taking damage just stuns you for a while and it's optimal to avid it, this doesn't go to branch label either.
feos: Replacing with a 213 frame improvement.
feos: 52 more frames were saved (file was provided on Discord).
feos: Replacing with a file that has some more improvements (sent over Discord) and is trimmed to end input as soon as possible without getting hit by the light thing.

feos: So after all the improvements I'm finally ready to accept this run. It's much better than #7366: TrueSnokido's GBA Bruce Lee: Return of the Legend in 22:39.07 in every room (only longer in rooms where the map is harder due to different mode), better than Spike's test, doesn't have the problem Memory found in 7366S, and overall it looks really well done. The single place I had a question about can't be done quicker because you get spotted and die.
Detailed explanations about what's different in this mode can be found here.
Encoder should use this movie which shows the in-game time after the credits.
Suggested screenshot (frame 22797):

EZGames69: Processing...
Last Edited by M1D on 9/24/2022 3:24 AM
Page History Latest diff List referrers