Submission #9303: somyeol's PSX Pop'n Tanks! in 09:08.92

Sony PlayStation
baseline
(Submitted: Pop'n Tanks! (Japan).cue JPN)
Bizhawk 2.8
32841 (cycle count 18591359615)
59.828075182977955
26047
PowerOn
Submitted by somyeol on 9/19/2024 9:17 PM
Submission Comments
Pop'n Tanks! is a 1999 Japanese video game released for the PlayStation. It was developed by Symbio Systems and published by Enix. The game was directed by Jun Matsumoto, while manga artist Mine Yoshizaki provided character designs.

Video with visible Enemy HP and timestamps

Game Objectives

  • Emulator used: Bizhawk 2.8
  • BIOS used: psj-30.bin
  • Heavy Luck Manipulation
  • Aims for fastest time
  • Takes damage to save time
  • Genre: Action/Vehicular Combat

RTA Run for comparison by pantabuggle

Gameplay

The game is a one vs. one shooting action game, pitting tanks in a 3D environment. A despot named Talin has lost his newly developed tank called Petit tank, which the player is now in possession of. He mobilizes his empire to retrieve the tank.
The game features two gameplay modes: Story and Tank World. Tank World is direct battles against either a human or computer-controlled opponent.
The player starts with 8 Characters and their tanks to choose from, each possessing their own unique ability. The game features strong customization of the player's tank. There are 160 canon parts, 30 special attack parts, and 70 accessory parts. In total, over 300 parts are available. Changes to the player's tank cannon are reflected in the game's graphics. Completely custom tanks can be created, saved to the PlayStation's memory card, and even pitted against another player's custom tank as well. The game's arsenal includes both long range and short range weaponry.
Pop'n Tanks! features a camera system that automatically locks onto the opponent, and when the player is behind obstacles they become transparent.

Characters

Driver: Puel

Tank: Petit Mk-1

Ability: Shoots a big rocket at the opponent.

Driver: Bit-Man

Tank: Petit Mk-2

Ability: Shoots a barrage of rockets at the opponent.

Driver: Puela

Tank: Forglan

Ability: Hurls a bomb at the opponent.

Driver: Vokkle

Tank: Malgopork

Ability: Throws a handful of bombs around his tank which explode if they make contact with the opponent.

Driver: Domina & Hekkele

Tank: Panzer-Sinamon

Ability: Throws 3 boomerang like projectiles at the opponent.

Driver: Ferina

Tank: Dorilger

Ability: Throws a nuke at the opponent.

Driver: Gunt

Tank: Long-Tom

Ability: Throws a mace at the opponent.

Driver: Date

Tank: Type-38

Ability: Flamethrower.

Story mode

This TAS plays through story mode, meaning i will have to defeat some of the above mentioned characters in 1v1 battles. Each battle has 2 rounds with a 2 minute timer.
What assists me in defeating the opponents are:
  • T-Shots: Activated by pressing triangle. You can fire 5 of them in a row, then a ~80 frame cooldown will apply before being able to shoot again. Each T-Shot deals around 8 damage.
  • Explosives and other projectiles: Activated by pressing square. You can fire 3 of them in a row, then a ~58 frame cooldown will apply before being able to shoot again. Each individual explosive deals around 64 damage (2 explosives). You can only fire explosives if you have 2 of their ammo at your disposal. You naturally restock explosives after 166 frames.
Some Arenas have slopes which enable the possibility of splash damage.
  • Charge Attack: Activated by pressing circle. Charges at the opponent and knocks them down, applying i-frames to their vehicle. Deals ~60 damage.
  • Special Ability: Different from character to character. It's important to choose a character with an ability which let them deal a lot of damage. You can fire 2 Abilities in 1 round.
All of the opponents share the same RAM Address of 184290 located in MainRAM. They all have 1000 HP.
Puel Ability Damage: ~230 HP
Bit-Man Ability Damage: ~430 HP
Puela Ability Damage: ~200 HP
Vokkle Ability Damage: ~700 HP
Domina & Hekkele Ability Damage: ~300 HP
Ferina Ability Damage: ~330 HP
Gunt Ability Damage: ~240 HP
Date Ability Damage: Varying (Lowkey RNG], ~320-700 HP
Seeing Bit-Mans or Vokkles damage output with their abilities should be enticing for a TASer to pick them, but there are a few problems i have with these characters.
Bit-Man: Not enough damage to 2-shot the opponent. After dealing the maximum amount of damage with his ability the opponent will get knocked down and have i-frames, which means you can't hit them for 110 frames.
Theoretical: Deal 500 damage with Ability and Explosives, then wait for a few frames (otherwise opponents will have i-frames). Do it again.
Vokkle: He deals a lot of damage, but it is not reliable because after throwing all of the bombs around himself you will have to wait for all of them to explode before you can fire your next ability, and since it doesnt 1-shot the enemy... too slow.
Theoretical: Some opponents can jump on your vehicle as a Charge attack, firing your ability at this exact moment will have all of the bombs detonate below them.

Date and I-Frames

Date is the choice for this TAS, he was made for it. Date's special ability is the flamethrower, which deals huge amounts of damage if you get up in your opponents face. Flamethrower deals a maximum of 700 damage. The flamethrower is not an instant burst like other special abilites, obviously. Every 2 frames the flamethrower will reduce the opponents HP by 9-18. 18 Damage is sometimes dealt at the start of each flamethrower for a few frames. It's important to get as close to the enemy as possible, otherwise the flamethrower wont hit properly.
Choosing your character is important, but dealing with i-frames is another task.
When dealing too much damage to an opponent they will get knocked down and suffer i-frames, blinking for 110 frames before being able to get damaged again. TAS needs to work around this by carefully approaching I-frame thresholds.
Because Date's flamethrower deals only 9-18 every 2 frames its incredibly useful for dealing with i-frames. It's the reason why you will sometimes see me not hitting the enemy on purpose with the flamethrower, because i need to avoid them triggering their i-frames.

Strategy

So now that i have picked Date and his flamethrower, whats the fastest way to defeat an opponent?
Two Flamethrowers must always be used to defeat the enemy. Explosives and T-shots can be mixed in as well to add a little more damage. It will go like this:
1. Shoot Explosives at the opponent for 64 damage, if you hit both of the missiles they will get knocked down with i-frames.
2. Shoot T-Shots to approach the 1st i-frame threshold which is roughly 860-880 HP.
3. Close the gap to the opponent if necessary, then use flamethrower. Get the opponent as low as possible with this 1st flamethrower. Explosives cannot be used when the flamethrower is activated, only T-shots. Firing T-shots will almost always trigger their i-frames though.
4. Expected Opponent HP should be 300-380 HP. Start the 2nd flamethrower immediately, fire explosives for 64 or more damage (Splash Damage), T-Shots etc.
5. Opponent HP should be 60 HP, finish them with a Charge attack which is slightly faster than ending with a flamethrower.

Flamethrower Usage

What is the most optimal time to use the flamethrower? Do i activate the flamethrower when im in front of the enemy or do i activate the flamethrower right off the bat, so i can use the 2nd flamethrower faster?
This is where the difficulty lies in making the TAS, knowing when to use the flamethrower. I figured out that the best way to use the flamethrower is slightly before it makes contact with the enemy.
Some of the flamethrower damage appears to be inconsistent. For example, if you were to use the flamethrower when you are right in front of the opponent it could only deal 400 damage, this is not good. Activating the flamethrower a few frames earlier even though it won't initially connect with the enemy could yield a much higher damage roll.

Luck Manipulation

The difficult part. There are 2 RNG you need to be aware of when making a TAS of Pop'n Tanks!
1. Battle RNG, its the most obvious one. Everything you do affects how the enemy will behave. Firing the flamethrower, explosives, t-shots will immeditately change the opponents behaviour. Sometimes i have to manipulate the opponent to drive towards me, which is very difficult considering that i need deal as much damage as possible without i-frame triggering.
2. Pre Battle RNG, less obvious. Pre Battle RNG determines what kind of behaviour the opponent will exhibit, aggressive and passive. Aggressive behaviour needs to be avoided, because aggressive opponents will fire projectiles at you at the beginning of the match. Being fired at will cancel your flamethrower.

Arena

After defeating the opponents their tank will be flung into the air and land on the ground, which can be slightly manipulated. You can manipulate them to fall somewhere higher elevated and save a few frames. It is not done everywhere.

Controls

WASD: Moving around, S is to go backwards
Triangle: T-Shots
Square: Explosives and other projectiles
Circle: Charge attack
Cross: Special Ability
L1 and R!: Turn turret
L2 and R2: Turn sharply
Pressing up twice in a row: Small speedboost, useless for me because i cannot activate the flamethrower.

Stage by Stage Comments

1.Ferina

Round 1: 1st flamethrower: 353 HP left.
Ferina is the 1st opponent and a difficult one. I went through several tasprojects that tried to optimize her as much as possible. There is no aggressive behaviour coming from Ferina, shes a neutral opponent. There were several instances where i got Ferina to 510 making her trigger her Nuke, which is unavoidable at close range. After more testing with flamethrower activation times i got her to 353 HP. You could activate the flamethrower slightly later and get her to ~290 HP, but it wont be faster because, well, you are already as close to her vehicle as possible.
Round 2: 1st flamethrower: 384 HP left.
Wait... 1:55? But round 1 was a 1:56!
Yes, you cannot use the same inputs for 2 rounds, it won't work. The only thing you can do is delay the celebration scene by 2 frames in hopes to get different RNG for the next battle. This round is 4 frames slower than round 1. I was not able to optimize it any further.

2.Domina & Hekkele

Round 1: 1st flamethrower: 300 HP left Pre Battle RNG: Manipulated
Domina is the 1st opponent that required an actual strategy to manipulate her movement. Domina will usually hit you with ice projectiles at the start of the round, but i manipulated her behaviour in the text encounter, so it never happens. If you hit Domina with your flamethrower she will suffer extreme knockback, making it incredibly annoying to tas. So my strategy was to make her charge "into" me, but she misses me by a long shot. She will bounce off of the floor, the perfect opportunity to hit her with my flamethrower. She is stuck in the air for a moment and she doesnt take a lot of knockback.
I push Domina into the wall with my flamethrower and turn my turret to push her further into it, so i have a little more space in the end. Domina surprisingly has next to no i-frame threshhold.
The round can be improved by 2 more frames, but these are required to manipulate the next round for less aggressive behaviour. Using Explosives and t-shots at the start of each round is out of the question, the knockback is too much.
Round 2: 1st flamethower: 302 HP left Pre Battle RNG: Manipulated
Same as round 1, but on the opposite side.

3. Puela

Round 1: 1st flamethrower: 378 HP left Pre Battle RNG: Manipulated
Puela also required a strategy, because she really likes to run away most of the time. Her movement is manipulated by one of my explosive shots, which hits the slope shes about to go onto, knocking her into me. Puela apparently likes the train too, sometimes hiding on the opposite side, making poor Date's life with his slow vehicle miserable.
Round 2: 1st flamethrower: 364 HP left
Nothing to say here, its almost the same as round 1. Round 2 is 4 frames faster than round 1, but i knock Puela somewhere unfortunate, wasting a few frames.

4. Bit-Man

Round 1: 1st flamerthrower: 307 HP left Pre Battle RNG: Manipulated
Bit-Man is dealt with quite quickly, both rounds end up on 1:56. The strategy i used on Puela is also used here. 2 more frames can be saved by firing a t-shot before activating the 2nd flamethrower, but i wouldnt be able to have Bit-Man crash somewhere higher up.
Round 2: 1st flamethrower: 305 HP left
Same as round 1 but on the opposite side. I think this round is the fastest takedown in the TAS. Bit-Man lands somewhere unfortunate though...

5. Gunt

Round 1: 1st flamethrower: 338 HP left
Gunt is the most problematic opponent. His i-frame threshold is very high up, making me question my optimal use of the flamethrower a lot. You can get Gunt a little lower than the rest of the opponents with the explosives and t-shots. When getting to around 520 HP i will have to go backwards with my vehicle to have my flamethrower not connect with his vehicle too much, its to avoid i-frames.
After using the 2nd flamethrower i have to wait a little longer than usual to hit him.
Round 2: 1st flamethrower: 309 HP left
Same as round 1.

Boss

Driver: Tarin Tank: Tarinsenkan
This boss appears to have a lot of HP, but its actually only 1000. He takes reduced damage from everything.
T-shot damage: 1
Explosives: 24
Flamethrower: 3 damage per 2 frames
Tarin's Tank is massive, which causes a lot of lag. Because of this, optimizing him is extremely difficult. Flamethrower damage does not register properly, even when you are literally 1 frame in front of his tank.
The optimization went as follows:
1. Use t-shots at the very beginning, every bit of damage counts.
2. Don't spam explosives too quickly, otherwise they will only deal 12 damage instead of 24.
3. Use 2 flamethrower at the start to get him to atleast 500HP. Each flamethrower use deals around 170 damage.
2 Ammo for your flamethrower are located in the bottom left and right corner of the map. My idea was to pick them up after using my 2 flamethrower, then try to have Tarins Tank knock me into one of the corners. This only sometimes works if his tanks rotates a specific way, but i ended up not being able to have it in the TAS. It does not matter anyway, even if i got a great knockback i would have to wait for one of my explosives to come back in the end.
1st flamethrower: 712 HP left
2nd flamethrower: 495 HP left
3rd flamethrower: 142 HP left

Possible Improvements to the TAS

If i were to remake the whole tas i would most likely be able to shave off maaaaybe 30-40 frames with better crashing points, Tarinsenkan could also be improved with different RNG and maybe a different approach.

DrD2k9: Claiming for judging.
DrD2k9: Nice run. The speculated possible improvements aren't enough reason to reject this for optimization. With RNG manipulation coming into play as well, it's not possible to say this is sub-optimal until it's proven so by a new run.
Accepting.

despoa: Processing...
DrD2k9: Updating movie file with a version that includes inputs to clear final cutscenes and get to the credits.
DrD2k9: Updating movie file with a version of the above with a correct cycle count, because I forgot to check that earlier.
Last Edited by DrD2k9 13 days ago
Page History Latest diff List referrers