Submission #4580: t0ast's SNES Pocky & Rocky in 18:40.17

Super Nintendo Entertainment System
baseline
BizHawk 1.7.2
67321
60.0988138974405
59565
Unknown
Pocky & Rocky (U) [!].smc
Submitted by t0ast on 2/5/2015 5:31:14 PM
Submission Comments

Game Information

Pocky & Rocky is a 1993 SNES top-down action shooter from Natsume. It features Pocky, a shrine maiden with no relation to the snack, and Rocky, the tanuki that Mario wishes he could be. Their quest is to save the Nopino Goblins by beating them down once again (see 1986 arcade game “KiKi KaiKai”) until the source of their insanity can be discovered and defeated. The game travels through 6 unique levels, each featuring a plethora of lag frames and dozens of creatures inspired by Japanese mythology.

TAS Information

  • Emulator used: Bizhawk 1.7.2
  • Genre: Shooter
  • Genre: Action
  • 2 Players
  • Uses hardest difficulty
  • Contains speed/entertainment tradeoffs
  • Aims for maximum tanuki
Time: 18:40.17
Frames: 67321
Rerecords: 59565
To my knowledge, there has yet to be a proper TAS of this game, so for what it’s worth, here are the closest comparisons I could find:

TAS Comments

This game was chosen not only for its familiarity to me, but for it’s lack of an accepted TAS, despite being well-suited for one. I feel it provides an entertaining amount of speed and difficulty, plenty of instances to apply superhuman feats, and occasional opportunities to play around with little to no time cost. The game also features some excellent visuals and a wide range of diversity between levels to help keep things from feeling repetitive.
Two players are used in this TAS because it improves the run in many ways. It speeds up the run significantly, largely through the use of movement mechanics not available in solo play, and also provides more opportunities for entertainment. Hard difficulty is selected in keeping with TASVideos guidelines and for the challenge of not having enough bombs to shrug off every single boss.
The “contains speed/entertainment tradeoffs” classification is applied here largely on account of the game’s auto-scrollers and scripted waits. In these areas, a TAS basically has two options: kill everything ASAP without moving a whole lot, which sacrifices entertainment for lag reduction, or take a more entertaining approach at the cost of lag. I chose the later. Some glitches and oddities exhibited throughout the game also require a small amount of additional time, like walking instead of dashing over a small amount of distance. With some care, the cost of these things can be kept very low, but it still adds up to a few extra seconds by the end of the run.
Finally, I avoid any non-self-inflicted damage that doesn’t provide practical gains in progress speed or entertainment. This may not sound like it’s worth mentioning in and of itself, but in the interest of full disclosure, it does come with a minor drawback at the end of each stage. There is a health bonus which counts down through each half heart at 16 frames each. Unfortunately, the available means of self-inflicted damage (Super Dash, falling off an edge, etc.) and the sum of practical damage boosting result in only being able to get down to one full heart by the end of most stages. As such, this aspect of the run is not as fast as it could be, but I felt the alternative was less ideal overall. Taking that extra damage arbitrarily from an enemy would potentially detract from entertainment while only providing a small speed benefit in a non-skill-based area of the game. I’m not sure if this would qualify as “forgoes time-saving damage” since I do still damage boost in a few places and “speed/entertainment tradeoffs” already describes it pretty well.
Suggested Screenshot: 64752

Important Game Mechanics

Difficulty Differences
Starting number of bombs is easily the most significant difference, with Easy providing 3, Normal 1, and Hard 0 for each character. Beyond that, damage and health is increased for some minor enemies, but bosses and the game’s ending remain unchanged.
Enemy Invincibility Frames
After taking damage, enemies are invincible for 3 frames before they can take damage again. Multiple simultaneous hits will not add any additional damage.
Melee Attacks
Deals 4 damage per frame and deflects or destroys nearly any projectile it hits. Deflected projectiles usually do 32 damage, but can vary depending on the type of projectile and how it hits. The angle of deflection can be aimed to a certain extent with careful position, facing, and timing of the melee attack.
Special Attacks
If the melee button is held for several seconds and then released, it will execute a special attack. Pocky spins around with properties similar to repeated melee, but is allowed to move. Rocky turns into a silly statue, rendering him both invulnerable and immobile.
Projectile Attacks
Deals 16 damage per shot. There is a limit of 6 projectile attacks per player on screen at a time. Blue and red orb items are available to power up as a spread shot or fireballs that split upon impact respectively. Unfortunately, neither of these increase the damage per individual bullet. Between that, enemy invincibility frames, and their non-zero additional contribution towards lag, their usefulness in a TAS is severely limited at best.
Move Canceling
Normal projectile shots occur during an 8 frame animation with one shot per cycle appearing early in its sequence. If the facing or standing/walking state of the character is changed, the animation will be canceled. By simultaneously canceling the animation as the projectile is about to appear and attacking again, the rate of fire can be drastically increased or synchronized around enemy invincibility frames.
Bombs
Bombs deal 200 damage per frame for approximately 45 frames while they blast through most of the screen. This turns them into a very broken means of dealing with bosses, considering that most of them have 2048 HP or less. Rocky’s bomb is the more effective of the two, since his spirals outward while Pocky’s only travels along the cardinal directions. On Normal and Hard difficulty, bosses and minibosses outnumber the bombs to be gained from each stage, so they must be managed carefully.
Respawning
After falling off of an edge or fully expending a life, a character will drop back down into the middle of the screen and deal 64 damage to all enemies. This is the only type of damage in the game that will ignore enemy invincibility frames.
Sages
Hidden in every stage except for the last one is a background object that produces 1 of 7 sages when shot twice. Each sage drops a specific combination of 3 items that can include health, shields, weapon powerups, bombs, or a dog-like creature which a character can briefly ride around. The sage that appears is determined by the frame on which the cutscene is skipped before each level. Only 3 of the 7 sages provide bombs, but one of them is duplicated in the RNG table to make a nice “round” 8 values and provide a 50% chance of receiving a bomb.
Dashing
An individual dash slides quickly in a single direction. Even though it stops for a few frames to recover at the end, it is faster than walking if not obstructed. Also, the small hop at its start can be used to avoid some projectiles and damaging obstacles. Should a dash collide with the other character, the dashing character will stop with no recovery and the other will be forced into a “Super Dash” in the same direction as the original dash.
Super Dash
This bounces a character around the screen for several seconds, renders them invincible to all non-crushing damage, and has properties similar to melee when coming into contact with enemies or projectiles. One full heart is consumed at the end of the Super Dash.
Double Dash
When both characters dash into each other, both will go into a Super Dash and bounce all over the screen. Normally, both characters will bounce off in different directions, but if Rocky starts his dash first, both characters will almost always travel together in the direction opposite of Pocky’s dash. The only drawback to this move is that it can potentially cause additional lag which might make it slower overall than normal dashes.
Zombie Hover
The Super Dash doesn’t check to see if a heart is available to spend until the initial “hit” animation finishes. With a character having one heart or less, this translates into approximately 15 frames of the exact same fast movement, invulnerability, and enemy bypassing/damaging awesomeness without consequence before it stops prematurely.
Screen Speed vs. Character Speed
The screen has a relatively low movement speed cap which can be quickly outpaced by the Super/Double Dash or repeated Zombie Hovers. Unfortunately, it does not appear possible to increase the scrolling speed or travel beyond the edge with any of these moves. If a Super/Double Dash or Zombie Hover hits the edge of the screen, it will simply bounce off.
Lag
This is a very visually heavy game for the SNES and the system just can’t handle very much of it at full speed. The threshold for lag is very low and EVERYTHING counts toward that limit. Even the seemingly insignificant act of walking around with a single character at certain times can cause or worsen lag. Lag seems to be capped at every other frame, so any additional load beyond that point will not significantly influence overall speed.
Input Slop
While not nearly as bad as some other games, there’s still some minor input delay, inconsistent movement inertia, some inputs which are wholly ignored under certain circumstances, and some projectiles which just decide to disappear. All of this combined with the lag creates an environment where reliable input patterns are rare (often thrown off by +/-2 frames each time) and makes the game very prone to desync in several ways if earlier inputs are changed.
Sprite Delay Glitch
When the game pauses momentarily to load bosses, it doesn’t always finish switching its sprites over to the correct set until a frame or two afterwards. At that point, controls are no longer lag-locked and player character sprite processing happens to take a higher priority. This means that rapid alternating movement to change both player sprites on every frame can indefinitely delay the boss’s sprites from switching. The result is a boss monster composed of segments of other sprites from various enemies previously encountered in the level. This glitch is purely visual in nature and the boss will still start attacking at the same time and behave as normal. It works for almost every boss that has a scripted introduction sequence.

Memory Addresses

AddressValue
000002Final value at cutscene end mod 8 = sage RNG.
Normally, values of 2, 4, 5, and 7 give bombs.
On Stage 2, only a value of 2 will give a bomb.
000024Screen X
000022Screen Y
000063Pocky X position
000062Pocky X position sub
000065Pocky Y position
000064Pocky Y position sub
0000A3Rocky X position
0000A2Rocky X position sub
0000A5Rocky Y position
0000A4Rocky Y position sub
0000E7Pocky Weapon HP
0000E9Rocky Weapon HP
001F18BOSS HP (unless listed below)
001898Stage 2 Cyclops #1 HP
001D18Stage 2 Bamboo boss HP
001C18Stage 2 Cyclops #2 HP
001818Stage 2 Raft Bomber / Stage 3 Genie HP
000FAEStage 4 Bird Boss HP
001F38Stage 6 Left Statue HP
001F58Stage 6 Right Statue HP
Non-boss enemy HP addresses are best sought out on a case-by-case basis since they are too numerous to list here. They're always stored individually and at face value, so they're pretty easy to track down with RAM Search.

Stage By Stage

Stage 1 - The Haunted Shrine

The start of this stage is simply a mad dash. The enemies are simple but numerous and cause a modest amount of lag. Just enough of them are killed to clear a path on the way to the first double dash.
After that double dash, the next two and this stage’s sage occur in difficult and laggy area. Depending on how that area approached, a well-timed lag frame can result in one or more skeletons not spawning. The one I despawned leaves a safe exit for the double dash and a clear path to shoot the frog for the sage right away. Following that, both the enemies and the sage need to be manipulated to avoid the health item, pick up the bomb, and set up the next double dash without getting hit. Skeletons cause a lot of lag in this area, but if too many are killed, more will spawn and the total lag will be even worse.
Pocky appears to waste a few frames moving to the right upon completing the last double dash, but moving that far is actually required to advance the level. The thresholds for many stage direction changes throughout the game tend to be much further out than one would reasonably expect.
With all but one heart spent on each character at the end of that double dash, it becomes possible to zombie hover all the way to the boss, pausing only for the chest with the bomb on the bridge.
The first boss has 2048 HP and is quickly eliminated with a pixel and frame perfect 2000 damage bomb from Rocky and just a few shots from Pocky. Hitting this boss’s shell as it bounces around the screen after the fight spawns a special sage. This sage is unique because it drops a 1UP instead of normal items and, as far as I know, appears nowhere else in the game. It’s not part of the sage RNG table for any stage and no other boss seems to provide a similar opportunity to spawn it.

Stage 2 - Enchanted Forest

Enemies in the first stretch of this stage are fairly scarce, so it can be freely dashed through. The monkeys like to chase and tend to cause lag, so I kill most of them between dashes. The creepy pagoda geisha snake things are best left alone because they will spray a wide arc of of laggy projectiles if hit.
Once the level starts moving upward, things get a bit more complicated. It introduces the tengu, which like to move quickly, spend lots of time unable to be damaged while off-screen or up in the air, and of course, cause lag. It’s best to kill them as soon as possible, but with this section dropping them in very inconvenient locations facing directions which lead them quickly off the screen, it wasn’t reasonable to do so. Double dashes are used to bypass the bamboo seedlings which would take a substantial amount of time to clear with normal shots.
The first cyclops miniboss has 1024 HP and is a fairly straightforward kill. Repeatedly shooting the tengu off the edge of the screen minimizes their effect on lag, but after a certain amount of time, they stop getting knocked back and swoop in to shoot. Fortunately this didn’t happen until both they and the boss were very nearly dead.
The next section has the bamboo seedlings and monkeys out in force, so I progressed just far enough to set up a solid double dash and pass the final seedling blockade. The tengu (and other enemies) near the bomb are best dispatched as soon as possible to reduce lag. The next miniboss will not appear if they are still alive.
There is 1792 HP of bamboo miniboss to burn through. Since I can only deal 1600 bomb damage to its skinny, stationary hitbox and it has an abnormally long invincible recovery after taking the first hit, Pocky deals the remainder of the damage first.
After the bamboo boss goes down, another tengu trio appears and needs to be immediately dispatched for lag reduction purposes. A tight canyon section follows and is best dealt with by one more well-aimed double dash. The cyclops at the end is the same as before, but with some added movement to complicate things.
Finishing out this stage is the raft auto-scroller. There’s not much to do here but provide some entertainment. As mentioned in the “TAS comments” section, some additional lag does occur here for that purpose.
The bomb thrower has 2048 HP and will eventually leave if not defeated within a certain amount of time. Reflecting his bombs back at him for 32 damage each helps to take him out slightly faster. A sage is the reward for taking him down. While getting the right sage is a non-issue for a TAS, it is worth noting that one greedy sage in particular (who doesn’t drop a bomb) has taken over half of the RNG table in this instance. This is the only stage with the sages skewed in this manner.
The octopus-hydra boss has 1280 HP and likes to waste a lot of time going in and out of the water every time you do 128 damage or more. However, by landing a specific number of melee and/or projectile hits and then damaging him one last time by forcing a character to respawn, the damage per cycle can be increased to 188. This effectively reduces the number of cycles to kill from 10 to 7.

Stage 3 - The Cemetery Mystery

Right away this level is another exercise in lag management. Zombies cause the most lag followed closely by the pumpkin head ghosts. My first double dash is somewhat indirect because the zombies, if not despawned, would make a more direct dash slower due to lag. Also, it lands the characters very close to the next sage.
The sage on this level requires shooting the back side of a grave, so it requires a little more time than usual, but gaining a bomb is always too valuable to pass up.
While it is possible to double dash through the next crowded area, it is prohibitively laggy to do so. Instead, walking through and killing a few zombies and bats along the way is a faster balance of movement and lag reduction.
The double dash leading up to the first encounter with the boss is executed to not only approach as fast as possible, but to also skip part of the intro. Normally, the characters would be forced to walk towards the door and get knocked back before the boss appears. The thresholds to begin and end that walk are based on vertical position and only apply when the screen stops scrolling. Double dashing into the recessed areas on either side of the door is beyond both thresholds, so no time is wasted on the forced walk before the boss starts to appear.
The first encounter with this stage’s boss has him at 1280 HP, but he actually retreats after more than 1024 damage is dealt. Character positioning is used to manipulate his attack pattern. Unfortunately I could not get a sprite delay glitch to occur on either fight with this boss.
The following room has a set wait time before the last few enemies which eventually trigger the door start to spawn, so I took the opportunity to have some fun with the bats. Once the room is cleared, a very small number of frames are saved by double dashing into the door and bumping past the screen transition threshold a little early.
The genie miniboss loses all 1536 of his HP to a single bomb, so there’s not much to say about the battle. He may seem a little low on HP to warrant a bomb, but to kill him with normal projectiles would require at least one wait through a brief period of invulnerability while he warps between corners. This makes the overall time savings from the bomb a little more substantial.
The last area of this stage is the shifting canyon. Rocky is intentionally super dashed off a ledge early to enable zombie hovers. Those zombie hovers and later sacrificing Pocky off of a cliff allows one cycle of the canyon shifting to be skipped. Other shift cycles do not provide such an opportunity, so there is some spare time to spend on waiting and stutter-stepping around the lag that frequently occurs during the shifts.
The other significant lag contributor in the canyon is the projectile attack from the two jester enemies. Fortunately, they follow a global timer of sorts which means a brief pause before approaching can circumvent their attack. This is only put to use on the second jester because the first can’t be killed while speeding by for the cycle skip. The time saved from the skip is far greater than the loss from that particular lag.
Some other points of interest here are the health peculiarities exhibited in this stage. Both Pocky and Rocky appear to lose more health than normal when falling off the edges in the canyon. Normally, they should lose 1 heart from the super dash cost or bumping into an enemy and then 2 more from falling off the edge. Instead, they lose 4 hearts total. This is because the double dash executed right before the first boss fight was interrupted by its intro sequence. The health cost was actually paid at that point, but the health displays did not update, rendering them incorrect until something else could trigger another change.
Rocky also loses all of his health right before the last boss but does not die due to the interrupt properties of the green slime enemy’s projectiles. When transitioning into hitting a character, those projectiles have a 1-2 frame window where they can still be stopped by melee, but are guaranteed to cause an interrupt regardless. Rocky executes a melee attack which stops the projectile in its transitional phase but also causes him to take damage from the melee sprite’s hitbox growing/shifting into the slime at the same time. Rocky starts to die, but the still-pending interrupt effect puts a stop to that, allowing him to complete the rest of the stage with 0 health. This is confirmed later by him receiving no health bonus points.
The second and final encounter with the boss is the same as before but with more health this time, so a bomb is deployed to take out all 1664 of it at once.

Stage 4 - Battle in the Sky

The first double dash is executed early in this level because the lightning cloud blocks the bridge with constant attacks, unblockable projectiles, and too much health to be worth killing. The second may not appear optimal, but it is actually slightly faster than the other forms of movement. This is because it cleanly triggers the vertical to horizontal screen transition threshold and accurately deposits both characters very close to the falcon that hides this stage’s sage.
As always, the sage requires some waiting to pick up the bomb. Up through this point, the stage has been remarkably light on lag, but that quickly changes at the next set of bridges. It quickly gets bogged down by a group of respawning bats, two lightning clouds, the same laggy jester from Stage 3, and a sizeable cluster of tornadoes and fireballs at the end. It’s bad enough that it can’t effectively be mitigated by the usual means of walking and killing enemies. Between that and the other time and/or health sacrifices that would be needed to get through there normally, there’s not much choice but to just double dash and suffer the lag.
The first area of the stage concludes with a small gauntlet of bats and tornadoes. Even with little to no action from the players and only a few enemies appearing in each wave, this area runs abnormally close to the lag threshold at all times. Again, some lag frames are sacrificed here in the name of entertainment.
The flying ship auto-scroller is relatively uneventful, but entertainment is still provided where possible. Fortunately, lag in this area is basically non-existent if enemies are killed in a reasonable amount of time, so no lag penalty is required to accomplish entertainment here. The large flying pirate can’t be permanently killed, but knocking him out helps to prevent lag in some areas and spawn the boss as fast as possible following his last appearance.
The bird boss has 2048 HP and is normally very mobile and difficult to hit. However, by using Pocky’s position to carefully manipulate its flight pattern, Rocky’s bomb becomes capable of dealing an unprecedented 2200 damage and immediately killing the boss.

Stage 5 - The Forbidden Castle

From the start, explosive barrels hinder progress by requiring close proximity or several shots to trigger, forcing a wait through its pre-detonation animation, and exploding over a very large area. A double dash will get through them the fastest in spite of the additional lag it causes, so several are executed to get through the first part of this area.
The second vertical section’s barrel throwers put a stop to double dash possibilities by way of crushing damage. Even though the barrels appear to bounce, they will still crush any character that passes below them all the same. There’s barely enough time to kill the first thrower between barrels, but not the second, so a damage boost is used to get past him with minimal delay.
While the last door in this area is the only thing stopping a transition to the next area, it is substantially faster to cut down on lag by killing all of the nearby enemies first. Food is grabbed both here and at the start of the next screen to provide fuel for upcoming double dashes and damage boosts.
Those double dashes start up again right away with two durable, fire-spewing demon head blockade things needing to be bypassed. Enemies are killed prior to the dashes to improve overall speed by reducing lag.
What follows at the next screen transition is far and away the most difficult area in the game. Spiky balls, which crush, frequently roll down each of the 3 paths at intervals determined by a combination of screen position and time. They can be manipulated to some extent, but there are several other factors limiting opportunities to do so.
The first of those limiting factors is the solo dash. While the hop at its start allows characters to safely jump over the spiky balls, it still forces both a lengthy travel distance and recovery period. Unless a safe area outside of the paths is nearby or the resulting screen position happens to manipulate in a favorable way, the next ball quickly becomes difficult or even impossible to avoid. Diagonal dashes provide a slight alternative to distance, and therefore manipulation, but with only two options like this available, there’s still a possibility that some routes or sequences of actions will result in an unavoidable crushing.
As if the spiky balls weren’t enough, there are also skeletons to deal with. They target one character at a time, switch their target occasionally, and will attack immediately when that character comes into line with them horizontally. If a targeted character happens to be in an adjacent path, it becomes nearly impossible to avoid taking damage. They can be killed, but considering that they take several hits and are only vulnerable from directions which are at risk from both their attacks and the balls, it is not a practical option here. The only good thing about them is that their damage can be used to boost through the balls without being crushed.
The last thing limiting route options here is character health. An upcoming double dash requires Rocky to preserve his health by eventually moving over to the left path to avoid taking several points of damage from the skeletons. There is also a health item available on that path which, in addition to providing more health, grants a brief period invincibility which was required to set a viable pace for manipulation of the last few balls. If Rocky had instead dashed over the next ball, the last one would have appeared too early and become inescapable. Since Pocky had health to spare for the skeletons and there wasn’t quite enough room for two characters to safely share the left path, she switched over and proceed by way of damage boosting.
It’s also worth noting here that the game decided to be kind and let Pocky shrug off what would have been two hits from spiky balls earlier in this area. It is not known why this happens at this time.
Following the spiky ball area is another fire-spewing blockade. It’s possible to double dash through this one, but it would land the characters too far past the sage and become extremely laggy from triggering the next small set of balls. Instead, it’s best to kill it normally so the sage can be spawned as soon as possible without having any additional lag.
Since a wait is required to obtain the bomb from the sage, the spark enemies will eventually catch up. The two chasing at this point needed to be killed before approaching the next set of spiky balls because they make the large amount of lag present in that area even worse. Also, there’s a third spark which spawns right next to the balls, so it must be dealt with immediately. Pocky takes up a position that both handles the spark and receives the bomb while Rocky heads off first into the balls. No active manipulation of the balls is needed this time since the area is considerably smaller and easier.
A double dash to avoid the next blockade is again possible, but slower overall due to the lag of the blockade and the spark remaining on screen for too long. It’s much faster to kill them both before proceeding.
While Pocky catches up, hand enemies are killed to reduce the lag of the next double dash. That double dash still suffers from a bunch of lag, but the area it passes through would require a large amount of time to clear a safe path and lag nearly as much while doing so. It’s also at this point where Pocky and Rocky expose the sage’s weak speedrunning skills and zip past her on the way to the boss. Her contribution to lag in this section is negligible because the game is already at its lag limit and waiting for her to despawn is slower overall.
The rest of the path to the boss is just simple dashing. One dash is withheld right before the boss spawns to enable the sprite delay glitch. This is only slightly slower and provides additional entertainment for the boss intro that would not be possible otherwise.
The boss, if not for bombs, would be one of the most annoying in the game. He has two phases, both of which move around frequently and quickly. Beyond that, he occasionally spends time off-screen in Phase 1 and surrounds himself with a rotating shield of individual bat enemies in Phase 2. Phase 1 claims to have 32767 HP, but thankfully, that’s a just big lie. After more than 512 damage is dealt, Phase 2 begins and his HP adjusts down to 1536. The transition of HP between phases has a chance of being delayed if the boss is in the middle of certain actions. Any additional damage dealt beyond the initial 512 before the HP changes for Phase 2 will be wasted. The boss’s HP mechanics and smaller size limit bomb effectiveness, but his difficult nature demands that at least one is used regardless.
Rocky’s bomb is positioned and timed such that no “clicks” of damage are wasted. The total damage dealt is 600 to Phase 1 and 1000 to Phase 2. Fortunately, the boss takes some time to transform before moving and attacking again, and that amount of time is just barely long enough for Pocky to deal the remaining 536 damage with normal shots.
Unfortunately, the two extra full hearts left in reserve for each character extend the health bonus time slightly compared to other stages. This is due to the additional health gained as part of routing earlier parts in this level and not being able to find enough practical or entertaining means to lose the excess. As mentioned in the “TAS Comments” section, arbitrarily taking the damage would potentially detract from entertainment and cost nearly as much time, so I decided to let it go.

Stage 6 - Battle with Black Mantle

To the best of my knowledge, there is no sage hidden in this stage. As such, its cutscene is skipped immediately.
With the start of this stage being one long, straight hallway, one might think it’s a great candidate for double dashing everywhere. Unfortunately this is not the case. The enemies being bypassed at each point are just laggy enough to make it slightly slower than single dashes and selective killing in nearly every case. While this makes the stage harder overall, it does at least make obtaining a bomb from one of the chests very easy.
The enemies in this area are some of the most difficult in the game. There are floating liches that track your movement with both their sizeable fireballs and movement. There are knights who like to dash in to you horizontally as you attempt to pass them by. There are spiders which fire lasers and start moving and shooting incredibly fast if they take any damage. Finally, there are giant beasts which drop down from the ceiling and can jump to block your path or shoot massive projectiles.
All of these enemies have different ways to manipulate them and can be safely bypassed or killed as needed. However, there’s one particular area in the middle which surrounds one of the few physical obstructions in the stage with two spiders and a giant beast. Dealing with that combination requires too much time, so a double dash is used instead.
Again, a small amount of time is sacrificed by walking instead of dashing to enable the sprite delay glitch on the armor miniboss. It’s the best one in the game, but entirely too short-lived since it doesn’t waste any time with a dialog in the intro.
The armor miniboss chases characters and attacks with lightning from its chest orb, fireballs from the shield, or by throwing its sword. All of this would make things fairly difficult if not for one major flaw: its center. Both characters can stand near the center of the torso and not have to worry about collision or lightning damage. The fire and sword attacks still pose a threat when using that tactic, but it never gets that far when a bomb takes out 2000 of its 2560 HP and normal shots quickly finish off the rest.
Through the next doorway is the final battle against Black Mantle. The sprite delay glitch is exhibited for a brief while, but since the Pocky and Rocky still have a ton of health in reserve, they put the rest of the intro time towards attacking his shield with their faces in sync with the music.
That aside, Black Mantle has 4096 HP and begins the fight accompanied by two statues which shoot projectiles and provide him with a shield. The statues have 640 HP and at least one must be destroyed to lower the shield and get Black Mantle to enter the fight. Black Mantle himself is not totally invincible while the shield is still up and can still be damaged by bombs.
Rocky’s first bomb takes advantage of that vulnerability, destroying both the statues and eating away 1200 points of Black Mantle’s life in the process. After waiting through a brief period of invincibility, bombs from both characters in close proximity deal a combined 3000 damage and bring the final battle to an end.

Possible Improvements

I’m pretty confident in this run’s optimization in terms of gameplay fundamentals and basic route choices. However, there are almost certainly some gains yet to be realized in lag reduction. There are a bunch of nuances unique to each situation in which lag occurs and little changes can have sizeable downstream effects. I gave this aspect of the game a lot of attention, but could only take it so far with my current skillset and maintaining sanity over the course of creating this TAS.
As mentioned in the initial set of comments, I do trade a small amount of speed in various ways to improve entertainment, so those instances too could potentially be adjusted in future revisions based on how well they are received. The same can be said of how most non-self-inflicted damage was avoided.

Special Thanks

  • Mr_K, for providing a ton of technical information about this game (about 90% of what I cover in the “Important Game Mechanics” section), his part in the co-op RTA which made for some great reference material, and his TAS demo of Stage 1 which helped to get me started with this playthrough.
  • PJ, for his part in the same co-op RTA, along with providing constant encouragement, feedback, and suggestions throughout the development of this TAS.
  • Everyone else who participated in the TASVideos Forum discussion.

feos: Accepting to Moons.
AntyMew: Processing...
Last Edited by adelikat on 10/12/2023 11:28 PM
Page History Latest diff List referrers