Submission Text Full Submission Page
Tobu Tobu Girl is a homebrew Gameboy game released in 2017. It is available for free from the Developers itch.io page. https://tangramgames.itch.io/tobutobugirl
Tobu Tobu Girl stands out as a homebrew title due to its rock solid presentation. With its cute graphics, tight gameplay, catchy chiptunes, and professional menus it would hold up as a solid entry in the Gameboy library even when compared with professionally developed titles of the platforms heyday. It certainly conveys a sense of speed rarely seen on the Gameboy. (Probably due to the original console's blurry screen.) On the other hand it is rather short, with only three main levels and a single bonus level. The game is difficult enough to alleviate this somewhat in real time play, but here I use Tobu Girl's fast movement options to complete all four levels in just under three minutes.
In-Game Times & Scores
  • LV1 : PLAINS 0:09 14100 S
  • LV2 : CLOUDS 0:14 13200 S
  • LV3 : SPACE 0:19 14400 S
  • LV4 : DREAM 0:24 12900 S
Crappy Encode:
This game seemed like a good candidate for my fist run due to its shortness, simple controls, ease of emulation, and great disparity between unassisted play and TAS due to how quickly actions can be entered. Also I wanted to see a speedrun of it and was disappointed that as far as I could tell no one had attempted it yet. Though it is a Homebrew game, I feel the quality of the game makes up for it, and it's such a short run, with quick fun to watch movements that it doesn't overstay its welcome, even though the gameplay strategy isn't that complex.
Movement
Tobu Girl has three main ways to move (other than falling due to gravity.) Bouncing, Dashing, and Flying.
Bouncing: When bouncing off an enemy Tobu Girl is propelled upwards. The height is the same for all enemies except Jellyfish. Tobu girl continues upwards for around 20 frames after a regular bounce, but to keep up speed, it's better to start a new action before frame 10. After a low jellyfish bounce, a dash should be input immediately.
Dashing: Tobu Girl can dash in all 8 directions, 3 times before she needs to bounce again. The remaining dashes are indicated above her head. This is Tobu Girl's burst movement option and the primary navigation tool for most of the game. A Dash can interrupt most of Tobu Girl's other actions including a previous dash. Frame Perfect, Max length Dashes have 6 empty frames between them. These are used heavily throughout the run. Note that Tobu Girl cannot drift left or right during a dash. The end also must be canceled into another action to prevent a slow animation before she starts to fall.
Flying: Flying propels Tobu Girl upwards based on her momentum. It can be held for a while, but uses up the meter on the lower right. Due to its variable nature, I have a lot of uncertainty about it, but its generally slower than dashing, and faster than bouncing after about 7-10 frames. This will be my primary search area if I look for improvements. The low momentum from a jellyfish bounce means it's pretty slow to fly afterwards, thus low jellyfish bounces are only used if the next enemy can be reached with dashes alone.
Stomping: By Dashing Downwards, Tobu girl can stomp. This destroys the enemy, gets a regular height bounce out of a jellyfish, and restores some of her flight meter. In this run mostly the extra jellyfish height is useful, the only non-jellyfish to be stomped is a bird near the end of level 4 because I needed some more flight meter. Stomping usually takes an extra frame because you need to be a bit higher.
Enemies
  • Bats: Hang in place and do nothing.
  • Birds: Move slowly left and right, turning around at the edge of the screen.
  • Jellyfish: Hang in place and do nothing. Low bounces.
  • Ghosts: Zigzag left and right quickly. Disappear even after a normal bounce.
  • Spikes: Hang in place and do nothing. Can't be bounced off of.
  • Blades: Move slowly left and right, turning around at the edge of the screen. Can't be bounced off of.
Strategy:
Keep upwards momentum as much as possible. After a bounce I plan to get to the next enemy as fast as possible. The Next enemy or the one after that are ideal. If both are out of place horizontally or Spikes/Blades I go for the third. Late in level 4 there are longer stretches. In general the strategy is Bounce > Fly (after 7 - 10 frames) > Dash Upwards (or upwards Diagonally) > 6 empty frames > Dash Upwards > 6 empty frames > Dash Horizontally into a bounce. The horizontal dash takes advantage of the fact that the game is more lenient about what counts as a bounce instead of being killed during a horizontal dash, provided you start far enough away. Also it terminates Tobu Girl's vertical speed, so we can get to the next bounce as quick as possible. (I Have so far been unable to get a bounce while moving upwards.)
Alternating A and Start is used to advance the menus. Curiously, the High score table can only be closed with Start, so the correct button to start on must be picked.
Note:
As the ending sequence plays after level 3, I choose to stop at the high score table for level 4. Pressing start here just sends you back to the main menu.

ThunderAxe31: Judging.
Eltrion: Multiple improvements found. Cancelling, will submit a new version when I've completed one that implements the improvements.


TASVideoAgent
They/Them
Moderator
Joined: 8/3/2004
Posts: 15585
Location: 127.0.0.1
This topic is for the purpose of discussing #6282: Eltrion's GB Tobu Tobu Girl in 02:50.19
BigBoct
He/Him
Editor, Former player
Joined: 8/9/2007
Posts: 1692
Location: Tiffin/Republic, OH
Looks great! Especially impressive for a first outing. Voting Yes. EDIT: Reminiscent of Booster 2.0 flying in Cave Story, to some degree.
Previous Name: boct1584
mklip2001
He/Him
Editor
Joined: 6/23/2009
Posts: 2227
Location: Georgia, USA
This is impressive for a homebrew game, and the run is pretty fun to watch. Is there any randomness you can manipulate for the enemy placement?
Used to be a frequent submissions commenter. My new computer has had some issues running emulators, so I've been here more sporadically. Still haven't gotten around to actually TASing yet... I was going to improve Kid Dracula for GB. It seems I was beaten to it, though, with a recent awesome run by Hetfield90 and StarvinStruthers. (http://tasvideos.org/2928M.html.) Thanks to goofydylan8 for running Gargoyle's Quest 2 because I mentioned the game! (http://tasvideos.org/2001M.html) Thanks to feos and MESHUGGAH for taking up runs of Duck Tales 2 because of my old signature! Thanks also to Samsara for finishing a Treasure Master run. From the submission comments:
Shoutouts and thanks to mklip2001 for arguably being the nicest and most supportive person on the forums.
Eltrion
He/Him
Player (56)
Joined: 3/1/2019
Posts: 7
Not really without killing yourself. The enemy ID number order is the same every time, then the ID is matched with a table for each section of a level. Around 3 tables for each level. As far as I can tell there is no way to advance the list without loading enemies. The one I submitted is actually my third attempt, I had two earlier attempts that I abandoned because I knew I could do better. I just checked my 2nd run which is a bit slower, but complete through level 2, and the enemy type and placement is exactly the same. I can't see the time lost in a death ever being worth it in such a short game with the time lost due to a single bad enemy placement being only a couple frames.
nymx
He/Him
Editor, Judge, Expert player (2235)
Joined: 11/14/2014
Posts: 932
Location: South Pole, True Land Down Under
I abstained on voting until now...because there weren't any votes and I would have been the first to comment. My first impression was that it seemed to run without any loss of time, but because I didn't know this game...I wasn't sure. The positive voting has supported my original thoughts and I'm along with it. One other thing I see that is a positive is the ratio of re-records to the full length of the movie. Roughly 25% is a very good effort for a TAS. Yes vote.
I recently discovered that if you haven't reached a level of frustration with TASing any game, then you haven't done your due diligence. ---- SOYZA: Are you playing a game? NYMX: I'm not playing a game, I'm TASing. SOYZA: Oh...so its not a game...Its for real? ---- Anybody got a Quantum computer I can borrow for 20 minutes? Nevermind...eien's 64 core machine will do. :) ---- BOTing will be the end of all games. --NYMX
Editor, Reviewer, Skilled player (1359)
Joined: 9/12/2016
Posts: 1646
Location: Italy
nymx wrote:
I abstained on voting until now...because there weren't any votes and I would have been the first to comment. My first impression was that it seemed to run without any loss of time, but because I didn't know this game...I wasn't sure. The positive voting has supported my original thoughts and I'm along with it.
Wait wait wait wait... Are you saying that you didn't want to speak out your mind unless people showed similar opinions?... You see, if you let others influence your opinion, then it's not your opinion anymore. I see that you was initially unconfident about the validity of your opinion, but (in my humbly opinion) you should work on your doubts by yourself. If, for example, you lack the necessary familiarity with this game, then you try out the game and see it yourself; it really takes just 5 minutes of playing. If that still isn't enough to get confident of your opinion, then don't vote. I myself abstain from voting many submissions, due to uncertain about the validity of my opinion; it's just natural, as it would be foolish to think that my opinion is valuable in the 100% of the cases. Also, don't be afraid of going against the trend. The only thing you need to do in that case, is to explain with a post why your point of view is different. And if you begin to think that your vote was wrong, no worries: everyone can make mistakes, and everyone can learn. There is this extremely interesting video that I think explains it perfectly: Link to video By the way, please don't consider this post as a lecture. For this case I'm really just trying to share my opinion as a person in general, rather than a staff member. I also aknowledge that maybe I'm overestimating your doubts in voting, yet I think that this was a good moment for bringing up this subject. I apologize for the off topic, though it's not really that off...
my personal page - my YouTube channel - my GitHub - my Discord: thunderaxe31 <Masterjun> if you look at the "NES" in a weird angle, it actually clearly says "GBA"
Editor, Reviewer, Skilled player (1359)
Joined: 9/12/2016
Posts: 1646
Location: Italy
I discovered that it's possible to skip the ending cutscene about two seconds earlier than what has be done in the submitted movie, though it causes the rest of the movie to desync. It wouldn't take too many efforts to fix these desyncs, and the movie file could be replaced without having to make a new submission. Eltrion, what do you want to do?
my personal page - my YouTube channel - my GitHub - my Discord: thunderaxe31 <Masterjun> if you look at the "NES" in a weird angle, it actually clearly says "GBA"
Eltrion
He/Him
Player (56)
Joined: 3/1/2019
Posts: 7
Really? Damn I must of missed it. I guess I should have been more methodical at looking through that cutscene. 2 seconds is a pretty big save for a movie this short. I'll redo level 4. Should I cancel this submission then?
Editor, Reviewer, Skilled player (1359)
Joined: 9/12/2016
Posts: 1646
Location: Italy
Well, if you do just a basic resync job for level 4, then there is no need. However, if you're planning to implement new optimizations, then you should cancel.
my personal page - my YouTube channel - my GitHub - my Discord: thunderaxe31 <Masterjun> if you look at the "NES" in a weird angle, it actually clearly says "GBA"
Eltrion
He/Him
Player (56)
Joined: 3/1/2019
Posts: 7
Closing this for now, as I'm working on an improvement that saves a couple seconds, and implements closing the ending cutscene earlier, as pointed out by ThunderAxe31.
TASVideosGrue
They/Them
Joined: 10/1/2008
Posts: 2785
Location: The dark corners of the TASVideos server
om, nom, nom... crunchy!