(Link to video)

Emulator and game files

  • ruffle_ab - fork of Ruffle with a patch for this game. Discussed in the original submission and here.
  • bootstrap.swf - original MD5: d7f070c6b0a1aeca6aeb542c35b08288
  • AstroBarrier.swf - original MD5: 4902abc3997f3cfa2401948314c7f747
  • locale.swf - MD5: 54a2fa6128751ed089e8832d1ae1d999
File names must match.
With FFDEC:
  • bootstrap.swf has been modified by removing line 1 of scripts>frame 1>DoAction
  • AstroBarrier.swf has been modified by removing line 14 of scripts>frame 1>DoAction, and changing the value of the isMember variable on line 15 of scripts>DefineSprite (51)>frame 1>DoAction to true.
locale.swf is stored in /lang/en/.
Please let me know if you have any problems replicating this.

Comments

Astro Barrier (or Astro-Barrier) is one of Club Penguin's original minigames, released in August 2005. The final 10 levels (31-40) were added in July 2006. It's quite a simple game: Move your ship left-to-right, and shoot at the moving targets. Only one shot may be active at a time. Later levels introduce additional mechanics like extending targets and turrets.
Ruffle is running bootstrap.swf in order to properly load the text, as this is how it was in Club Penguin. It completes levels 1-40, which is the fastest possible completion without using the level skip hotkeys (see section Why does it start at level 30?). I TASed almost all of this last year on the 2006 version, but didn't submit due to the fork of Ruffle being necessary. As it was recently deemed acceptable, I synced it for the modern (2014) version which saved 11 frames.

Techniques

The bulk of optimisation is figuring out the best order and time to shoot the targets. Your position between levels isn't reset, so finishing a level on one side of the screen may be slightly slower, but make the next level much faster due to the better starting position. There is also a fake "next level loading" screen that can be skipped with Enter. Sometimes it's better to leave this up for a few frames to be in a better position for the next level.

Transition shots

Any active shot at the end of a level carries over to the next level. Usually this isn't possible, but there are a few places it can be used: on level 5's continue screen, on tutorial screens, and with turrets, which shoot at the same time as the player. These shots add a lot of possibilities to routing, especially in the later levels.

Improvements

I don't know of any improvements. I'd very much like this game to be frame perfect. Maybe brute forcing it would be a possibility in future.

Special thanks

Thanks to site staff for accepting the Ruffle fork, and feos for guidance on movie branches. And to whoever judges this one.

feos: Claiming for judging.
feos: fsvgm777 confirmed that the problem I'm having is uncommon, so it should be okay to accept this run as a standard branch.
fsvgm777: Processing.

TASVideoAgent
They/Them
Moderator
Joined: 8/3/2004
Posts: 14881
Location: 127.0.0.1
This topic is for the purpose of discussing #8365: Randomno's Flash Astro Barrier in 01:35.63
CoolHandMike
He/Him
Editor, Reviewer, Experienced player (636)
Joined: 3/9/2019
Posts: 582
Yes, Short but good.
discord: CoolHandMike#0352
Site Admin, Skilled player (1236)
Joined: 4/17/2010
Posts: 11268
Location: RU
This submission seems to aim for the same thing as #7570: Randomno & TheAmazingYucemu's Flash Astro Barrier in 00:21.21 but does so properly because it doesn't skip initial levels which is not allowed. 7570S was sent to Playground with a clause that it would be obsoleted by the full game run, but on PG we don't obsolete, we just reject if the same goal is achieved properly by an acceptable movie. I also wonder if there's a way to run this on an unmodified game (like is it possible with some tweaks, or not at all)?
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.
Editor, Active player (391)
Joined: 2/11/2018
Posts: 186
I'm not fussed if the original submission gets removed from Playground, unless you're proposing something else. It would be nice to have the level skip record noted somewhere.
feos wrote:
I also wonder if there's a way to run this on an unmodified game (like is it possible with some tweaks, or not at all)?
I experimented a bit with the ruffle parameters but couldn't get anything to work. Definitely might be possible though. The modifications remove the domain check from each swf, and the member check (checking if you have paid membership on Club Penguin) from the main swf.
Site Admin, Skilled player (1236)
Joined: 4/17/2010
Posts: 11268
Location: RU
Randomno wrote:
It would be nice to have the level skip record noted somewhere.
I guess that's an option too.
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.
Site Admin, Skilled player (1236)
Joined: 4/17/2010
Posts: 11268
Location: RU
I'm getting broken text no matter what I try. Can someone else try this?
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.
Editor, Active player (391)
Joined: 2/11/2018
Posts: 186
1080p version. There's only one mouse input.
Site Admin, Skilled player (1236)
Joined: 4/17/2010
Posts: 11268
Location: RU
I missed the part where I needed to launch bootstrap.swf, not the main game file. The text works correctly that way.
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.
Post subject: Movie published
TASVideoAgent
They/Them
Moderator
Joined: 8/3/2004
Posts: 14881
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. ---- [5406] Flash Astro Barrier by Randomno in 01:35.63