The game boy TAS library had 2 of the 3 batman games completed, so I figured why not complete the set.
Apparently I forgot about Batman Forever, so there are 4 games on the game boy. Oops.
To those who are wondering (and will undoubtedly complain) why I've not chosen the hard difficulty: let me explain. Hard difficulty simply increases the amount of damage enemies will do to batman (2 on hard, 1 on normal). Every level design is the same and the number of enemies are the same. The enemies/bosses have the same hp values. The only other difference is that some obstacles are slightly faster (the drips in the poison ivy stage). Since damage boosting off of enemies gives a unique method of moving and saving time, I felt like it was a lot more interesting to find as many ways to boost myself through the stages. That is pretty much the only difference you would see is less damage boosting on Hard mode, resulting in a slightly longer movie.
The first thing to note about this game is that Batman moves incredibly slow, and has a giant hitbox. Both of these make manuevering through the obstacles a bit tricky. While not being super fast paced, the game does have a few time saving tricks that might go unnoticed to the untrained eye.
First of all let's talk about the basics of Batman. Movement speed while walking is 1 px/f. Taking damage from an enemy or projectile that knocks you forward or backward allows batman to move at a rate of 3px/f for 5 frames. If you take damage in the air some of that time is lost because for some reason your momentum is reset to 0 as soon as the damage animation ends. This is also true for just walking off of ledges, it resets your momentum. For that reason it is best to jump over every single ledge, even if you're only moving to the right. It is also important to note that every time you land on the ground you are halted for 1 frame. For this reason minimizing the number of jumps was also something to be aware of.
Because this game has a building momentum system if you're ever stopped in the air, it introduces a subpixel value to your x-position that makes certain things trickier. Subpixel count increments by 32 every time you accelerate or decelerate, to a max of 256. If it reaches 256 you gain a pixel, if it reaches lower than 0 you lose a pixel. Subpixel incremental values: 1.0 -> 1.125 -> 1.250 -> 1.375 -> 1.50 -> 1.625 -> 1.750 -> 1.875 -> 2.0
Because of these subpixel values, certain things require slight adjustments to subpixel values (explained in grappling gun section).
Next we have the grappling gun, one of the faster methods of movement in the game. If you're on the ground and press up+A, batman will fire the grappling hook directly above but it will halt your horizontal movement as well. Luckily if you're in the air, this is not the case. If the grappling hook comes into contact with a ceiling it will also halt you in place and you have 2 choices: press Down to release and drop yourself back down, or press A and pull yourself up to the ceiling. There are also special ledges that allow you to pass through them from above or below. If you're below you have to grapple to the bottom of the platform and then press up to pull yourself onto it. Because of the subpixel positioning I mentioned earlier, sometimes you need to shorten or extend your jump to get a lower subpixel value. Because of this, you will be lower to the ground when the animation is in progress thus causing it to end 1 frame earlier.
Batman also has a punch attack, which is essential for clearing enemies out of the way. If you punch while on the ground you will halt in place for the duration, but it's not always possible to avoid this because of some enemy placements. Similar to the grappling gun however: if you punch in the air you are not halted and in general you want to jump if you have to punch something. Ducking while punching always forces you into the ducking animation until the punch ends as well.
There is also a Batarang powerup you can acquire by collecting the item that looks like a batarang. Each time you collect one of these it will grant you 5 projectile attacks that deploy whenever you punch. Luckily you don't have to waste them as the game has a toggle feature. Unfortunately batarangs do 1/2 the damage to bosses than your regular fist (fist does 2 damage to bosses, batarang does 1) so I was only able to find use for them in the poison ivy stage. You don't even keep your batarang count from stage to stage, so it's pretty much never worth it to go out of the way to collect them.
The final movement tech we have in the game is wall jumps. If you're pressing a direction towards a wall and press A after coming into contact with it, batman will jump away from the wall in the opposite direction after clinging to it for a small amount of time. Because of the length of the clings it's generally faster to use the grappling gun if you have a convenient ceiling overhead.
There are health pickups as well, and since the game has plenty of damage boosting it's important to grab the ones that aren't too far out of the way.
Now let's talk about the stages:

Episode 1 "The Joke's On You"

The first thing you'll notice in this stage is that you can get 2 quick hits on these enemies while in the air, thus killing them. While it is possible to bypass them with 1 punch, I felt it more entertaining to just kill them because it costs 0 frames.
Near the end of the first room I show off a backwards jump technique that does absolutely nothing. If you press L+A and then let go of all directions batman will jump backwards, and not lose any momentum while in the air. Again, just did it for entertainment, it really doesn't do anything else.
I fall into the pit around frame 3830 to take damage from the spikes. This was necessary to jump through the water that pours out of the pipe. Taking damage from spikes yields no momentum boost but is useful for bypassing things like this.
Jumping at around frame 5929 for some reason allows me to land on the edge of this ledge. I'm not sure why but Batman slips right behind the backdrop here, making him almost invisible. Just left it in for the cool effect, doesn't lose or gain any time.
At frame 8264 you'll see the first use of jumping into the boss room trigger. I really have no clue why, but doing this usually loads the boss room 3-4 frames earlier than just walking into the trigger. That said, this boss is one of the only ones with RNG based on when he first reappears after being hit the first time. Also the explosives that fall are rng dependent. After you hit him the second time, he always has the same pattern for reappearing.

Episode 2 "The Chill of a Lifetime"

The first section of this lengthy stage has us playing batman, and there's nothing to really note here. Just taking damage from the bullets the enemies fire to get a boost in several locations. Once we clear this room however we're introduced to the first section with Robin as the playable character.
Robin sucks compared to batman, there is no other way to put it. Everything about him is clunky and he doesnt have the utility batman has because he has no grappling gun. Instead, when you jump into a ceiling he will grab it, freezing you in place for a while before it allows you to climb along the ceiling, but at a slower rate than regular walking. Because of this we want to avoid it as much as possible, but some of these enemies are placed in unavoidable areas. Because he grabs the ceiling just by jumping into it, this limits how often you're able to jump, whether it be to drop down a ledge quicker or get over an enemy.
The next thing you'll notice about robin is that when he drops through one of those grappling ledges mentioned earlier he will automatically grab the ceiling after falling through it. This is frustrating because the game does not let you drop from it for quite a while.
Luckily this is a rather short section of the level, and there's not too much to say about it. The boss here is very easily tricked simply by standing to his right.
But wait, there's more! After this you're back in control of batman in a section that introduces freezing projectiles. Every time batman is hit by one of these projectiles he gets frozen and you must spam the punch of jump button to break out. This is never a good option as it takes entirely too long to break out.
At around frame 16500, I found a trick that bypasses these energy balls (which also freeze you if hit) by grappling to the ceiling and pulling myself up as soon as it comes into contact with batman. This makes the projectile disappear but doesnt freeze or even damage batman.
Unfortunately the same cannot be said for the projectiles of these cannon dudes. If you try to grapple through them you get frozen. The only other option I found was to duck under them, which is slower but there really is no good way to deal with these.
Near the end of this stage I found that you can grapple through the final rock projectile, thus getting a rightwards damage boost. It turned out exactly the same amount of frames as the previous solution I had but it looks a lot cooler to me.
Now for the boss: his projectiles and the giant laser also freeze you so you can't really come into contact with anything here. I did find a way to loop the boss back and forth which cuts out a lot of running time. Usually he runs all the way left or right but by damaging him while he's about to jump from the middle platform he suddenly turns around and goes back.

Episode 3 "The Green Menace"

Finally we are introduced to Catwoman. In this first set of rooms she serves as a couple of minibosses for the stage.
For the first encounter with catwoman, I stayed left of her so that I could exit the stage as soon as the door opens.
The oil drums (or whatever they are) have a very weird hitbox. To punch them you have to be pretty far in front of them, so unfortunately I have to wait at one of them to punch it.
For the second encounter of catwoman, well... There used to be a second encounter. I found that if you jump at the exact pixel you bypass the door you can get around the trigger that shuts the door and loads the boss. Because of this we can just walk to the left and exit the room. This happens at around frame 26280.
The third and final encounter of catwoman serves as the final boss of this section. Pretty standard boss, all you have to do is stay out of range of her kick attack and you can easily get frame perfect hits on her.
After this comes the realization that.. this was not the whole stage, and indeed your health actually carries over to the poison ivy portion of the stage. That's kind of brutal because this is a somewhat tough stage. This is why I only took 1 hit during the catwoman section, I can only take 3 hits of damage before the poison ivy boss. This is only because there's a relatively quick health pickup rather early on in that portion of the stage. The 3 damage boosts before collecting the powerup outweigh the time loss for collecting the health powerup.
It's kind of unfortunate that it is absolutely necessary to damage boost for the poison ivy boss because during the actual stage there were quite a few interesting options for damage boosting. None of them saved enough time to make up for the giant time saving on the boss though.
Luckily this stage has a rather generous batarang powerup location, as it costs very little time to collect and there are actually several areas where it is crucial to saving time.
The wavy grass areas serve as conveyor belts similar to the ones in the first stage even though they dont really look like they should. Therefore you need to maximize your time of contact with them, all of them are going in the direction you're travelling in this stage.
At around frame 32748 I found that if you're standing on one of the platforms that lowers the longer you stand on it, and then grapple to the ceiling, the platform thinks you are not on it anymore and starts moving back to it's original position. Because of this you can release from the grapple the moment your feet stick through the top of the platform and you can essentially fall through it.
And then finally we come to the boss and here's why we needed to have full health when reaching her. Every time you hit the boss the plant will spawn a bunch of tentacles that protrude from the ground all the way to the ceiling. There is no other way to by pass these, even if you're grappled to the ceiling. The only way is to take damage. If not you would have to wait at the left for all the tentacles to descend back to the ground and then run back to the boss. This is very slow each time and adds up to a lot of time.

Episode 4 "Bank Robbing is a Gas"

The first part of this stage is particularly confusing because you have to enter the rooms from a specific direction in order for the question blocks to activate the correct doors.
In several locations I found that using the grapple to stop your vertical momentum as you're punching a green question block could allow you to fall back down faster and save a little bit of time. Other than that, just some damage boosting and platforming optimization and nothing else to really say here.
Then we come to the boss. Every time you hit the boss he will spawn into 4 phantoms that rotate and move around the room. The ones that spawn on the right side move counterclockwise while the ones that spawn on the left side move clockwise. Because of this, we go over the ledge for the ones on the right and under the ledge for the ones on the left. After you've killed all 4 phantoms the real boss will spawn again. Oddly enough the boss has 17 hp, and since each punch does 2 damage you will need 9 hits to kill him.
The next phase of the stage has us taking control of Robin again (ugh). The first section is relatively simple platforming.
The second section is a timed vertical climb where the background music will give you anxiety. Managing where to damage boost is essential in this stage as these explosive umbrellas are constantly in places you don't want them to be. The only way you can sometimes manipulate them is by jumping in a previous section in order to trigger it earlier so that's it's out of the way when you climb up (that's what the jump at frame 49387 is for if you're wondering).
After you've cleared that, we're back to controlling batman, thank god. Not really much to say about the next section though, used some damage boosts to get through certain areas quicker. It's possible to get a positive damage boost through most of the giant mechanical swans(?) by grappling the ceiling but the amount of time not moving during the grapple makes it not worth it.
After this section we come to the Penguin boss. Luckily this boss is very easy to manipulate simply by hitting him from the direction he is and he will fly to the opposite side of the screen. Very easy to get optimal hits on this boss.

Episode 5 "The Joker's Last Laugh?"

Now for the final level, which is simply just a boss. It's not even a very interesting boss really as it only does 2 things: throw cards at you and dive down at you.
The boss begins with a dive down which is slower than all the subsequent dives. Because it is slower you can get 2 hits in the first time he does it. After that the boss is just a timer for when to throw 4 cards and then duck down. You can only get 1 hit in on each of these dives so it's pretty repetitive. There isn't even a Joker boss once this thing is dead either, so it's kind of unsatisfactory to me. Anyway once he's down, the game is over and you can enjoy the lackluster ending sequence.

There you have it, the last remaining batman game for the original game boy completed. It's not the most technical or entertaining game in existence but as far as TASing goes it was one of the more pleasant games to work on. There is very little RNG in the game, making the stages fairly easy to sync up. Because of this I was able to go back and make several improvements easily. So if some other trick is found it can easily be added to the TAS.
Thanks to anyone following progress on the forums or on discord when I posted my WIPs.

CasualPokePlayer: Claiming for judgement.
CasualPokePlayer: Replaced file with one with the correct cycle count.
CasualPokePlayer: I should admit, I was one of the ones who was following the progress of this TAS on Discord. And I am not disappointed in the final result. Very good optimization as should be expected, and clever use of damage boosting. Great job!
Accepting.
EZGames69: Processing!


TASVideoAgent
They/Them
Moderator
Joined: 8/3/2004
Posts: 15579
Location: 127.0.0.1
This topic is for the purpose of discussing #7184: Exonym's GB Batman: The Animated Series in 16:36.16
Skilled player (1672)
Joined: 7/1/2013
Posts: 448
Yes vote!
Post subject: Movie published
TASVideoAgent
They/Them
Moderator
Joined: 8/3/2004
Posts: 15579
Location: 127.0.0.1
This movie has been published. The posts before this message apply to the submission, and posts after this message apply to the published movie. ---- [4507] GB Batman: The Animated Series by Exonym in 16:36.16