Submission #5882: jlun2's GBA Keitai Denjuu Telefang 2: Speed Version "secret Denjuu" in 1:20:32.53

Game Boy Advance
secret Denjuu
(Submitted: secret Denjuu)
(Submitted: 0421 - Keitai Denjuu Telefang 2 - Speed (J).GBA JPN)
BizHawk 2.2.1
288635
59.7275005696058
86747
Unknown
Submitted by jlun2 on 4/1/2018 12:00 AM
Submission Comments
This is a sequel to a pair of games infamous for being pirated as "Pokemon Diamond and Jade". This run uses a secret Denjuu unlocked ingame to beat the game quickly.

Game objectives

  • Emulator used: BizHawk 2.2.1
  • Fastest time with secret denjuu

Comments

The Run

There's 18 fights in the game. Technically there's 20, but 2 of them are from unavoidable NPCs which I ran away from. I was initially going to use that detour to recruit the level 28 Skrippa (Basic) before the first boss, but after actually TASing it, and checking how much different the run would be with Skrippa battle-wise, I decided to just use the level 30 secret Denjuu. From the spreadsheet above, Skrippa, just like Rupicola, would've been used mostly until the 3rd rival fight. Then Cotta would've been recruited, and the rest pretty much identical. If anyone wants, here are the main differences:
BossSkrippaRupicola
Mistashi Takes 3 turnsTakes 1 turn
MentalisTakes 3 turnsTakes 1 turn
HermitTakes 2 turnsTakes 1 turn
DemerusTakes 3 turnsTakes 1 turn
Rival v2Takes 4 turnsTakes 1 turn
EasydogTakes 4 turnsTakes 2 turns
The main reason for taking x3 more turns is because Skrippa's slow speed allows the enemy's friends to arrive. There are no speed boosting items until the ruins, so there's no way to avoid this. However, at the very least I do not have to manipulate crits for Skrippa, since it's typing seems very effective against most enemies. In other words, if I'm really forced to not use secret Denjuu, I still have a route in mind.
Anyways, I made some mistakes with the routing however, mainly with item management. Special attacks in this game uses "DP". Think of it as special points, which you have 100. The special attacks deal tremendous amounts of damage in comparison to the "normal" attacks, so refilling DP is a must. The problem is, the fastest way to recover DP is to use items, and the best way to get said items is through battles.

DP recovery

The game has 3 items that recover DP. The cookie heals 30 DP, the juicebag heals 50 DP, and the bottle drink heals 100 DP. It cost time to heal, both in and out of battle, so it's better to heal in large amounts at a time. In other words, use the bottle/drink.
The methods to obtain DP recovery items as follows, from fastest to slowest
  1. Finding it from running over grass
  2. End of battle loot
  3. Opening up chests
  4. Buying from stores
The first 2 are tied in the best case scenario; otherwise obtaining from grass is "better", but at the same time I have no idea how to manipulate it to appear reliably. For battles, it's simply done by delaying when to press A after the XP or phone interface, so it's very easy to brute force check each frame until it appears. I actually did try and made it so that the wait for the drink last at most about 2 seconds, so it won't be too boring to watch.
Additionally to using items, you can also talk to certain NPCs to heal you. The NPC inside those dome buildings, along with the people at Bijinia Desert and that one guy at the very end of the game before the boss will heal you fully if talked to. The dome NPCs take far too long to visit, so they were never used.

"Skippable" things

Technically not skippable, since there's no way to clip out or anything, but despite the fact the game forbids storyline events from appearing out of order (including using keys before the dungeon is supposed to be visitable), there are certain events that appear "skippable". Listing them in case some bug is discovered later:
  • The dialogue when you first leave Takedama Village
  • The dialogue when you first enter Takedama Cave
  • The dialogue right before you go and fight Anpipit.
  • The boss, Cabot. Sadly, it's slower to do so.
  • The dialogue when you first enter Helchika Village
  • Demerus, if you can somehow press the switch without triggering the boss
  • Every single key; you're able to fight bosses without ever using a key using cheats to walk through walls
  • Every single switch in Bandit's Hideout, outside the final one
  • The dialogue with the girl, when leaving Helchika Village (coming back from later will trigger it sadly)
  • Every single switch in Kamishino Ruins

Luck

Luck in this game is determined by 3 addresses all in IWRAM. 2 of them are 0x5E08, 0x5E10, which determines what things can happen, and 0x0840, which determines of the things determined to occur, which one will actually occur. If it sounds complicated, here's an example from the thread.
As you can tell, changing 0x5E08, 0x5E10 causes different outputs depending on 0x0840. 0x0840 acts like a frame counter as well, allowing different strategies to be compared giving difference in lag.
The main things that the run depend on luck are:
  • That single herb drop from the grass
  • When enemies land a crit
  • How certain enemies which move randomly move
  • How much damage dealt
  • Did the move miss?
  • Did ally appeared to help?
  • What move the enemy chosed
  • What ally is with the enemy (including boss fights)
  • Where did the dust particles appear in? (serious)
The easiest way to manipulate RNG is by jumping. This creates dust particles on landing, which advances 0x5E08, 0x5E10. Unfortunately, the ability to jump is only after the first half the game, so what I did was to either delay, or chop down grass. While delaying would normally do almost nothing in the overworld, certain caves such as Chiawata Cave have lots of enemies moving randomly, which allows the RNG to advance around every 3 frames.
Also in fights, the RNG advances differently one extra time if the attack hits, compared to missing, so sometimes, even if it may be slower to get hit, it may be worth it for a better RNG.
To determine how much frames to wait, I used the script from the thread (here, also on github). Using the display script from the thread (link, also on github), I advanced the frame until the battle state displayed on via the the script. Then I closed TAStudios, and started the battle stats script, which would then output a file showing the next 500 frames worth of possible actions. It's highly probably that this process could be almost completely automated, but I lack the knowledge to do so.
One thing I did notice was that the results of what could occur seems "periodic". For instance, for item drops after battle, it always loop from item ID 0,1,2,...,24, then skips to 62,63,64,...,109, then finally back to 0 again. For battles, the damage dealt loops from lowest possible, then +1, +2, etc up to the maximum amount of damage, before going back to lowest again. Similarly for moves used by NPCs.
For luck regarding NPCs wandering around the overworld, I made a spreadsheet that lists the locations and NPCs that needed luck, along with the maps that gave me the most trouble. You can find it here.

Tricks

Faster dialogue

Pressing A once 2 frames after a lag frame, then subsequent A's 5 frames after each other saves 1 frame per dialogue compared to autofiring A/B. If confused, look at the run's input file.

Pushing stationary NPCs

By standing next to a stationary NPC, then save-reset, the NPC get's pushed a bit every file load. Doing this at Tokaribe Village would've allowed the rival fight to be skipped if not for the fact subsequent story events would not be triggered. Other locations which this trick could've been used include:
  • Accessing lvl 47 Cotta early (takes 20 minutes however)
  • Skip the Cabot (Basic) fight (takes too long compared to OHKO)
  • Skip guards at various other villages (future story events won't trigger)
This trick was not used in the run as a result.

Early mid level Denjuu

I'm not sure if this counts as a bug or not, but at Tekku Sea accessible near Tokaribe Forest, you could get a level 28 Skrippa to notice you and attack. The reason I mentioned "not a bug" is because 1) the prequel also had a situation where you could visit Liz Island waters as soon as you unlocked the ability to swim and encounter mid level creatures, without ever reaching the island. 2) One can argue the Denjuu sees you over the thin rocks.
This was used in the no secret Denjuu route, since despite the initial setup, makes most of the fights much more manageable. The trick also makes this game itself feasible to speedrun real time, since the only obstacle would be recruiting Skrippa.

Jumping past enemies

Once you unlocked the ability to jump, not only can it be used to manipulate luck, but it can also be used to avoid encounters much quicker. Enemies will not notice you while in mid air, so a well-timed jump can allow you to hop past them. In terms of real time feasibility, technically this isn't really needed except for that 1 encounter in the desert, since I actually went and avoided most enemies in a playthrough without jumping before this trick was discovered.

Other enemy tips

Running triggers enemies from a further distance than walking, so sometimes, it's better to walk around them than it is to run.
If you need to jump twice near an enemy, let go of R for 1 frame before you jump again, or else it would alert the enemy.
Enemies either have set paths, or move at random. The latter can be manipulated to an extent either by running through grass, or hopping.
Oh, and before anyone wonders; running in the grass only slows you down this game; it's not like the prequel or Pokemon where random encounters could appear. In fact, there are no random encounters of that type in this game.

Clipping out of Takadama Village

It's possible to clip out of the guards at Takadama Village in the very beginning, but this causes the story to not proceed, so it wasn't done.

Stage by stage comments

First, here's a spreadsheet that documents the time it took from the earliest input of a map (or area/location/whatever), up until the last input needed to leave the map.

Takadama Village

Before you even enter the village, there's a 3 minute segment with nothing but dialogue. Based on the english rom hack, it appears to be about summer break, and going to the telefang world to look for the protagonists' parent.
In order to recruit Rex, you have to talk to the pink Denjuu (rom hack claims it's the Elder) inside the building to the right, followed by 2 other Denjuu. Even with the english patch, I have no idea why Rex joins you, but he's used in literally 1 battle, so that doesn't matter. Recruiting him also unlocks the ability to open the menu and leave the village.
There's a chest below the gate inside the dungeon which gives a blue bracelet. This could be equiped to raise the holder's attack stat by 5. While this run mostly relies on special attacks that don't use the attack stat, the non-secret Denjuu route may or may not potentially benefit from it for the Skrippa fight. Unfortunately, I forgot this even existed until the run was finished.
After returning the seed to the elder, the village's shop and exit would be unlocked.

Tokaribe Village

Between any point from Takadama Village to the human in Tokaribe Forest, a herb must be obtained to skip a boss fight. The fastest way to get a herb is to make it drop randomly from the grass, but waiting for it seems to kill off any minor improvements made in the previous village.
After exchanging the herbs for the bracelet, the group of Denjuu blocking Tokaribe Village will depart, and at this point I disabled fighting animations, along with calling up a secret Denjuu called Rupicola to help out at the rival fight.
A minor note, but if Rex was used for the fight, a splashscreen showing Gyuun and Rex facing off would appear, before the fight starts.
With the help of Rupicola, the first fight becomes a breeze, but as it turned out in the other run, even without any secret Denjuu the fight was a joke due to Skrippa anyways. The "hardest" part of the fight was manipulating a friend (or ally, whatever) to appear for Rupicola, or a critical hit for the Skrippa run, followed by manipulating an NPC in the next area to move away from where I'll run.
Once the fight is over, you need to get that pink haired girl back with you. You can actually fight the frog Denjuu, but this serves no purpose in a speedrun, so it wasn't done. Winning the fight would've also allowed you to recruit a level 10 Denjuu, but even in the non-secret Denjuu route, this is completely pointless to do.
I forgot to mention this, but it takes 34 frames to grab a barrel, and 19 frames to throw it. They are also unable to leave the area thier in. To make it worth using a barrely against an enemy, it must take longer than 53 frames or so waiting for them to leave.
The main difficulty of the mountain is actually at the very end of the mountain. I need the last green Denjuu in the cave to move away, while also having the green insect Denjuu at the fields to stay to the south. There's not much grass in the map between the 2 Denjuu, so most of the manipulation was done before the last cave area. Unfortunately, this also meant having to manipulate 2 events mostly at once.

Chiawata Village

<Explain the second stage here>
<And so on>

Other comments

I initially started a "run" of this back in 2010, about after the first game TAS. Due to my inexpierence, I had a number of setbacks, including almost no route planning, no maps, nothing about the boss stats, and others that caused me to become demotivated. While I had found a bug that allowed "moving" NPCs 1 pixel away from where they stand every time you save near them, it ended up being useless, since it turns out the game events are rather "strict"; (almost) everything must be done in order, or plot-wise NPCs will NOT appear, nor will any story triggers, unlike the first game.
In 2013, while messing around the game again, I found out a glitch that allowed you to recruit a level 28 NPC before the first boss.
Sadly, that required extroadinary luck to even beat the NPC, so I didn't do anything for a while. In 2016, due to boredom, I poked around the game again, and found a number of addresses related to battle. By freezing 0x2870 in IWRAM to 1, I could always win a fight, even when I lose. With this, I started making a route of the game for real, and then later found all the stats of the bosses I will fight.
By luck, I found out that freezing 0x2C16 in IWRAM allows one to find out the possible max/min hits, when a critical lands, what moves are determined, and more, allowing planning how fights should go much easier. I made a bunch of maps, and tried various different strategies, before starting to TAS for real this year.
While making the run, I realized that the in the process of redoing sections over and over, most areas were actually quite spliceable. I was quite curious on how much does using a secret Denjuu actually even help on this game, and so I decided to try to do 2 runs; one that uses a secret Denjuu, and one that uses the glitch that allowed an early level 28 Denjuu. This game features a lot of running and talking, which while also made it very boring at times, allowed TASing the 2 types of run far easier. Parts of the run were still annoying as hell to manipulate twice, however.
The lack of forced, random encounters in my opinion, is one of the best things about this game compared to the sequel; at least for TASing purposes. I think the run had almost 500 maps/rooms/areas it went around (not different areas; just running around the same places), and within those places, almost 100 of them had NPCs that were affected by luck and could affect the run.
<Explain here things the audience would probably like to see> <Explain also things that could be improved in your movie> <You may also suggest screenshots.>

ThunderAxe31: Judging.
ThunderAxe31: This run takes advantage of using a password in order save time. Since the code itself can't be found by playing the game or by reading the official game manual it counts as cheat, whoose usage is forbidden by the Movie Rules. I also have to note that an exception could be raised in case the usage of a cheat would result in enough entertain and unique movie contents, but that's not the case for this submission.
Rejecting for cheat usage.
Last Edited by adelikat on 10/25/2023 1:54 PM
Page History Latest diff List referrers