(Link to video)
Submission Text Full Submission Page
Simple, any%, fastest-possible TAS for the arcade release of Shinobi in 9:28. No glitches exploited or codes used.

Game objectives

  • Emulator used: FBA-RR v007 (from tasvideos.org)
  • ROM: shinobi.zip (system 16A, set 6, unprotected)
  • fastest-possible, any%

Premise

This game is a 1987 sidescroller by Sega. There are 5 missions where each mission has 3 stages plus a boss fight. In each stage, the player needs to save all the hostages (ninjas in pink) in order to finish and move on. Each credit gives the player 3 lives. After each boss fight, there's a bonus stage which gives the player a (low) chance of earning an extra life.
The stages often have multiple platforms (eg: upper and lower) which the player can jump between. Only enemies on the same platform can attack/be attacked.
The player has three weapons:
  • shirukens/bullets: shoots straight left/right. The player always starts the stage with shirukens but is upgraded to a gun/bullets after saving a certain number of hostages in the stage (indicated by a "POW"). Bullets deliver more damage, as well as a bit of splash damage, and lasts until the end of the stage
  • close-range/melee: delivers more damage than shirukens and can take out multiple enemies per strike
  • special: a clear-the-screen power which can only be used once per stage and delivers about 4-5 shirukens worth of damage to all enemies in the screen
The player can actually bounce off most enemies provided there's no contact with the enemies' weapons (bullets, knives, some enemies themselves).
Can be played in single or two-player mode but the game simply alternates between players in two-player mode. This TAS was done as a single-player run. The game appears to allow unlimited continues up until mission 5. Continues are no longer allowed after that.

Comments

Regarding all the jumping, shooting/attacking while in the air allows you to keep moving forward during the attack's cool-down. Otherwise, attacking while on the ground forces you to stand still during the cool-down.
The bonus stages are shortened as much as possible by just letting the enemies jump at you. The bonus stages are deterministic so it's always the same guy who jumps at you first. As long as you don't kill that particular guy, you can kill any of the others while still allowing the bonus stage to finish as quickly as possible.
This game used to kick my ass at the corner-stores and laundromats so this run was some kind of vengeance for me. Originally, I was looking for a TAS of this game to watch but surprisingly, there are very few runs of the arcade version (that I can find) so I decided to give it a shot myself. This is my first attempt at TAS so I appreciate any patience and/or feedback that can be spared.

Samsara: File replaced with a version trimming out all the blank input (plus the name entry screen). Also, judging.
Samsara: I took a close look at the file and I'm unfortunately seeing a number of optimization issues. The two that stand out the most to me are the title screen and the boss of the first area. The title screen can be cleared 6 frames earlier, and that first boss isn't being hit as soon as possible once his invulnerability runs out. The boss can also be hit for the first time much earlier: Overall, it seems like more than a second can be gained on the boss alone, with another second coming from the prior screens.
For some general advice: Always try to see if things can be done earlier, even if you're on a black screen the game could still be accepting input. If you're clearing text boxes or windows or menu screens, you should always keep pushing it back until you're absolutely sure you find the first frame. Don't be afraid to try out as many things as possible: You have a good handle on optimization already, but there are some iffy moments and smaller things that you need to pay attention to. One of the smaller things is that when you're jumping between upper and lower areas, you can jump into enemies to bounce off of them and cancel part of the jumping animation, allowing you to move sooner. On a similar note, you should minimize the distance of those jumps as much as possible since you can't move left or right while you're doing them. Jumping down onto crates or higher platforms (or jumping up from them) will let you move some frames sooner than you otherwise would have.
When fighting bosses, try a variety of different strategies and make sure you're always hitting them on the earliest possible frame. That first boss can be hit once every 31 frames, so you should always be hitting it that often. If one strategy doesn't allow for this, try a different approach and see if it works. One I found is that if you stand a certain distance away, you can throw a shuriken on the way up, then throw one on the way back down, and if you time it right and keep adjusting your position accordingly, you should be able to get each one hitting every 31 frames.
I've uploaded a userfile that contains the title screen optimization and some work on the first two areas, stopping just before the boss, and as for the boss, I made a quick GfyCat [dead link removed] of a potential strategy. I highly recommend you study these and work on an improved run.
I don't mean to discourage you with this at all. I think you already have a good grasp on TASing, you just need to slow down, take your time and keep trying things to make absolutely sure you're optimizing everything to the highest extent. Take a second pass through the game and make sure you're improving as many things as you possibly can, both over this submission and my own improvements (I'm pretty sure both screens in my userfile can be improved by a few frames, so definitely take a look at those), and I can almost guarantee that the improvement will be accepted.
I'm looking forward to your next submission. Good luck!

TASVideoAgent
They/Them
Moderator
Joined: 8/3/2004
Posts: 14876
Location: 127.0.0.1
This topic is for the purpose of discussing #5163: V's Arcade Shinobi in 09:27.38
Spikestuff
They/Them
Editor, Publisher, Expert player (2292)
Joined: 10/12/2011
Posts: 6337
Location: The land down under.
Due to me being unable to edit .fbm files... The TAS does indeed have blank input at the end. So if the author can provide a fix of their input, or if someone can provide an edit to remove the input please do it so it can be replaced.
WebNations/Sabih wrote:
+fsvgm777 never censoring anything.
Disables Comments and Ratings for the YouTube account. Something better for yourself and also others.
mklip2001
He/Him
Editor
Joined: 6/23/2009
Posts: 2224
Location: Georgia, USA
Pretty neat run. It is a bit more polished of a game in the Arcade version, compared to some of the Genesis games. I see now how the end boss of Alex Kidd in Shinobi World is styled like this game's final boss. (Also, on the subject of the ending, "TAS" might be a more appropriate name for the high-score list. I don't personally mind what you used, but I forget if there are any judging restrictions based on... less-polite words.) ;) I do have a few questions and comments though. 1. How do you avoid dying on the third boss when you walk through all the heads (or whatever they are)? You sound like you get hit a lot there. 2. There's one very laggy section in Mission 4 with a big gang of ninjas hopping behind you. Would it save time to turn around briefly and kill a few before moving on, to reduce lag? 3. In bosses 1, 2, and 4, you mainly keep throwing jumping shurikens. Can you save any time by jumping closer to the boss between attacks? That way, you get sort of a Doppler effect where each shot takes less time to connect. (It also seems like you can hit boss 2 a little earlier than you do as it's coming down).
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.
Skilled player (1650)
Joined: 7/1/2013
Posts: 433
Spikestuff, here is the .FBM file, edited to remove the blank input files at the end http://triplepointwx.org/George/Shinobi.zip
V
Player (48)
Joined: 7/5/2016
Posts: 6
Hi everyone... thanks for the feedback.
The TAS does indeed have blank input at the end. So if the author can provide a fix of their input, or if someone can provide an edit to remove the input please do it so it can be replaced.
Sorry about that Spikestuff... I wasn't quite sure what that "blank input" meant. Is it simply a matter of adding some input up until the last frame? Or should I not include the credits and such? Thanks Nécroyeur for fixing that.
How do you avoid dying on the third boss when you walk through all the heads (or whatever they are)? You sound like you get hit a lot there.
The game allows contact with most enemies as long as you don't touch their weapon (sword, knife, bullet, etc) and so you can just bounce off them without getting killed. If you touch the enemy on its left half, you bounce towards the left and vice-versa with the right. You're invincible during the bounce so you can actually bounce past/through enemies so long as you're not touching a weapon when the bounce finishes. For the third boss' spinning buddhas, you might notice that they're slowly moving to the left. If you get close to them and use your special, the first buddha can actually move past you enough for you to bounce to the right and you eventually bounce all the way through. Input does seem to matter here but I find that just holding right does the trick.
There's one very laggy section in Mission 4 with a big gang of ninjas hopping behind you. Would it save time to turn around briefly and kill a few before moving on, to reduce lag?
I never thought of that actually... I'll definitely give that a shot. I'm also trying to do a 100% run so that would have to be in there. I've got enough to go on to make several improvements to this any% run already.
In bosses 1, 2, and 4, you mainly keep throwing jumping shurikens. Can you save any time by jumping closer to the boss between attacks? That way, you get sort of a Doppler effect where each shot takes less time to connect. (It also seems like you can hit boss 2 a little earlier than you do as it's coming down).
With the exception of the third boss, the bosses have a period of invincibility after you score a hit (the duration varies between bosses) so you can only hit them so quickly. The second boss (chopper) starts dropping yellow ninjas and shooting rockets if its door and/or rocket launcher is in screen so I stay to the left to keep those things off screen. But you are right that I could've hit it a bit sooner when it started to come down. The forth boss is easier to hit when he's charging at you, which he'll do when his invincibility wears off and you're far enough away from him (you might notice that he just starts to charge each time I hit him). Thanks for all the suggestions Mklip... I'll definitely apply all of that in the next run I make.
Spikestuff
They/Them
Editor, Publisher, Expert player (2292)
Joined: 10/12/2011
Posts: 6337
Location: The land down under.
£e Nécroyeur wrote:
Spikestuff, here is the .FBM file, edited to remove the blank input files at the end: http://triplepointwx.org/George/Shinobi.zip
Sadly, that fix is similar to my fix. The time hasn't changed from 10:06.8.
WebNations/Sabih wrote:
+fsvgm777 never censoring anything.
Disables Comments and Ratings for the YouTube account. Something better for yourself and also others.
Former player
Joined: 6/30/2010
Posts: 1093
Location: Zurich, Switzerland
V wrote:
No glitches exploited or codes used
Are there any glitches that could save time? If so, can you explain why you chose to not use them?
Current project: Gex 3 any% Paused: Gex 64 any% There are no N64 emulators. Just SM64 emulators with hacky support for all the other games.
V
Player (48)
Joined: 7/5/2016
Posts: 6
andypanther wrote:
Are there any glitches that could save time? If so, can you explain why you chose to not use them?
Other than bouncing through the spinning buddhas on the third boss (if you can call that a glitch), I don't know of any other glitches. I did some searching but I was a bit surprised at how little (if anything) there is available on the arcade release. I'd be happy to try if someone can let me know of anything.
Former player
Joined: 6/30/2010
Posts: 1093
Location: Zurich, Switzerland
V wrote:
andypanther wrote:
Are there any glitches that could save time? If so, can you explain why you chose to not use them?
Other than bouncing through the spinning buddhas on the third boss (if you can call that a glitch), I don't know of any other glitches. I did some searching but I was a bit surprised at how little (if anything) there is available on the arcade release. I'd be happy to try if someone can let me know of anything.
Thanks for explaining this, I wasn't sure from the submission text if the TAS just happened to not include any glitches or if they were deliberately avoided.
Current project: Gex 3 any% Paused: Gex 64 any% There are no N64 emulators. Just SM64 emulators with hacky support for all the other games.
Skilled player (1650)
Joined: 7/1/2013
Posts: 433
Spikestuff
They/Them
Editor, Publisher, Expert player (2292)
Joined: 10/12/2011
Posts: 6337
Location: The land down under.
£e Nécroyeur wrote:
Let's try that again: http://triplepointwx.org/George/Shinobi.zip
Yup, that indeed is a time update: 09:56.42 There's an increase of 40 rerecords in your fix. Which shouldn't be an issue. However. It doesn't match the 9:28 the author mentions still... unless something's up. Should probably get an admin's assistance. Or probably look into porting fbm input into TAS Movie Editor as it was something that was planned (Alternately YAIFE). And it would make life in the future much easier.
WebNations/Sabih wrote:
+fsvgm777 never censoring anything.
Disables Comments and Ratings for the YouTube account. Something better for yourself and also others.
mklip2001
He/Him
Editor
Joined: 6/23/2009
Posts: 2224
Location: Georgia, USA
Spikestuff: Could 9:28 be referring to in-game time, if such a concept exists for this game? V: Thanks for the responses. I was most concerned about the boss fights, but I think you've clarified enough.
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.
Joined: 7/2/2007
Posts: 3960
V wrote:
Sorry about that Spikestuff... I wasn't quite sure what that "blank input" meant. Is it simply a matter of adding some input up until the last frame? Or should I not include the credits and such? Thanks Nécroyeur for fixing that.
You should end input as soon as the game is finished so that it will proceed to the "ending" of the game. There is no need to extend input to cover non-gameplay stuff like credits. The encode that the publisher makes of the run will include these anyway. Adding blank input makes your movie longer, because TASVideos judges movie length based on the length of input. Hence why its time shows as 10:06 in this thread's subject.
Pyrel - an open-source rewrite of the Angband roguelike game in Python.
Skilled player (1650)
Joined: 7/1/2013
Posts: 433
This input file is edited to also remove the input to enter the player's initials http://triplepointwx.org/George/Shinobi.zip The time is 927. This may be the time to which the Submission Text refers. Please forgive the extraneous re-records.
V
Player (48)
Joined: 7/5/2016
Posts: 6
Derakon wrote:
You should end input as soon as the game is finished so that it will proceed to the "ending" of the game. There is no need to extend input to cover non-gameplay stuff like credits. The encode that the publisher makes of the run will include these anyway. Adding blank input makes your movie longer, because TASVideos judges movie length based on the length of input. Hence why its time shows as 10:06 in this thread's subject.
Thanks Derakon for the clarification. I didn't realize that that was how TAS times were calculated. I could've easily just stopped the movie before entering the initials but I'll keep that in mind for the next run I make.
£e Nécroyeur wrote:
This input file is edited to also remove the input to enter the player's initials: http://triplepointwx.org/George/Shinobi.zip The time is 9:27. This may be the time to which the Submission Text refers. Please forgive the extraneous re-records.
Thanks for all your troubles Nécroyeur. I've noticed that speedruns in general are timed up until no more input is required from the player but I always thought that the timing was done by observation. It never occurred to me that additional inputs would affect the run time.
Samsara
She/They
Senior Judge, Site Admin, Expert player (2121)
Joined: 11/13/2006
Posts: 2793
Location: Northern California
Technically, we judge from power on to the last piece of input that finishes the game. Blank or extra input at the end is ultimately ignored and usually removed. I'll verify/update the fixed input file tomorrow. EDIT: V, would you prefer the 9:56 file with the naming or the 9:27 file without? They will both be judged exactly the same, entering initials is an allowed cosmetic choice for the run. If published, the time discrepancy will be noted in the publication: See the recent publication of Osman for an example of that.
TASvideos Admin and acting Senior Judge 💙 | Cohost
warmCabin wrote:
You shouldn't need a degree in computer science to get into this hobby.
V
Player (48)
Joined: 7/5/2016
Posts: 6
Samsara wrote:
Technically, we judge from power on to the last piece of input that finishes the game. Blank or extra input at the end is ultimately ignored and usually removed. I'll verify/update the fixed input file tomorrow. EDIT: V, would you prefer the 9:56 file with the naming or the 9:27 file without? They will both be judged exactly the same, entering initials is an allowed cosmetic choice for the run. If published, the time discrepancy will be noted in the publication: See the recent publication of Osman for an example of that.
I can do without the naming/signing so the 9:27 time would be fine. As Mklip mentioned, I probably should've entered something else for that anyways. Thanks Samsara.
Editor, Experienced player (894)
Joined: 1/23/2008
Posts: 529
Location: Finland
Seems like a fairly simplistic game, but on the other hand the simplicity adds certain visual clarity - a trait that is often helpful with a speed game's entertainment value. What else... Shinobi's animations look dainty, but I guess that suits the whole being ninja thing. Still doesn't explain why he technically speedwalks through the entire game, but maybe he is just so confident in his skills that he knows he can save the day even if he just walks at a frisk pace. At first it felt like the game is a bit overlong for what it is, but then the later levels start featuring really big crowds of enemies and the action looks more impressive. So yeah, I kind of liked this run in the end. Would give it a mild-mannered 'yes' vote.
Site Admin, Skilled player (1236)
Joined: 4/17/2010
Posts: 11268
Location: RU
Fantastic ending theme, absolutely amazing. The game itself - not so much. Meh.
Warning: When making decisions, I try to collect as much data as possible before actually deciding. I try to abstract away and see the principles behind real world events and people's opinions. I try to generalize them and turn into something clear and reusable. I hate depending on unpredictable and having to make lottery guesses. Any problem can be solved by systems thinking and acting.
Samsara
She/They
Senior Judge, Site Admin, Expert player (2121)
Joined: 11/13/2006
Posts: 2793
Location: Northern California
EDIT: User movie #32248620080809586 Title screen can be bypassed 6 frames earlier, couple of small optimizations on the first area take off another 21 frames, more optimizations in the second area take off another 24 frames.
TASvideos Admin and acting Senior Judge 💙 | Cohost
warmCabin wrote:
You shouldn't need a degree in computer science to get into this hobby.
TASVideosGrue
They/Them
Joined: 10/1/2008
Posts: 2738
Location: The dark corners of the TASVideos server
om, nom, nom... crunchy!
V
Player (48)
Joined: 7/5/2016
Posts: 6
I apologize for the late reply but I've been away for a little bit. Thanks Samsara for all your feedback in the submission page. I'll be sure to try those techniques you mentioned. I was under the impression that if there was no existing TAS record for a particular game, the run could be accepted. I've also made a 100% run of the same game but I imagine that one would also be rejected for the same optimization reasons. I was already in the middle of that run when I got the feedback for this run so I had already made the same mistakes there. I figure I'd submit it anyways to get some additional feedback but let me know if that's not a good idea. Can I also ask what program you used to edit the .fbm file? The best I could find was TAS Editor but that doesn't seem to be able to open .fbm files. Thanks Samsara.
Spikestuff
They/Them
Editor, Publisher, Expert player (2292)
Joined: 10/12/2011
Posts: 6337
Location: The land down under.
V wrote:
Can I also ask what program you used to edit the .fbm file? The best I could find was TAS Editor but that doesn't seem to be able to open .fbm files. Thanks Samsara.
There's 3 ways: Modify TAS Movie Editor to support fbm (I attempted this, but I was unsuccessful) Hex Edit: See Here (We attempted this method, didn't work) And the final method. If you noticed the rerecord count it went up to what it originally was. The method which was used was to load up the emulator and do it manually by loading the state on last frame of input.
WebNations/Sabih wrote:
+fsvgm777 never censoring anything.
Disables Comments and Ratings for the YouTube account. Something better for yourself and also others.
Site Admin, Skilled player (1236)
Joined: 4/17/2010
Posts: 11268
Location: RU
There's a setup for libtretro cores in bizhawk, the fba one was reported to be working, so you could use tastudio on this game. But you'd have to figure out the setup yourself, by reading bizhawk docs on the wiki and asking questions in its forum section.
Warning: When making decisions, I try to collect as much data as possible before actually deciding. I try to abstract away and see the principles behind real world events and people's opinions. I try to generalize them and turn into something clear and reusable. I hate depending on unpredictable and having to make lottery guesses. Any problem can be solved by systems thinking and acting.