Impossible Mission is an adventure platformer originally released in 1984 for the Commodore 64 and ported to many systems including the Sega Master System in 1988. An evil scientist, Elvin Atombender, has set up an operation to tamper with national security computers. The player must search rooms in a building connected by an elevator system for 36 puzzle pieces and combine them to decrypt the password protecting the control room of Elvin’s operation.

Randomisation

To ensure that every playthrough is unique, many gameplay elements are randomized when the game starts including building layout, puzzle piece locations, and puzzle piece rotation & colour. Random numbers are also used to control robot movement, but this is calculated upon entering each room rather than when the game starts.
This run uses heavy luck manipulation to confine all 36 puzzle pieces to just 16 rooms, and to ensure optimal robot movement patterns inside those rooms.
Faster patterns exist, but so far we have not found one that would be faster than the pattern we chose when taking into account the extra time required to manipulate for it. We have developed a bot that searches for fast patterns which is available through the ScriptHawk repository on GitHub.

Movement

Interestingly, the game only accepts movement inputs every 3 frames. In most situations it’s faster to jump rather than walk.
When walking off an edge it is possible to turn around in mid-air and narrowly miss the floor if the walking animation is at the correct position in the cycle. This allows the player to start moving in the direction that they need to much earlier.
Four frames after starting a search, it is possible to perform an extra movement input without cancelling the search or losing time. This technique was used with every search that benefitted from it. In at least one location it was faster not to perform this technique because of the walking animation cycle interfering with an edge turnaround slightly afterwards.

Puzzles

After the 36 puzzle pieces are collected, the player must fit them together to solve 9 puzzles in total, each consisting of 4 pieces. This involves flipping the pieces and changing the colour to match with other pieces that belong to the same set of 4. There are 4 spots to place pieces, so 4 puzzles can be solved simultaneously.
Our approach was to solve 4 puzzles at a time, then another 4 puzzles at a time, then the last puzzle by itself. This is to minimise scrolling through puzzle memory as solving the puzzles one by one would mean that we have to scroll through puzzle memory 9 times whereas this route scrolls through memory 3 times. The downside is that there is more lag when doing the final move of a puzzle if there are more pieces on the board, but the time saved on scrolling quickly makes up for that time loss.
When finishing one of the 9 puzzles, the scroller on the left returns to the start of puzzle memory and removes the 4 pieces you just used for the solution from memory. To finish a puzzle, the pieces must be in the correct orientation, so we delay solving any one of a set of 4 puzzles until we have all of the pieces for all 4 solutions in place.
Picking up and putting down pieces is used throughout the solve to move the cursor quicker. Usually when scrolling across a piece, the cursor must travel all the way across, but if you pick up the piece and put it back down the cursor snaps to the middle of the piece. This can be done on any piece in the solving area or in the list on the left. If the piece in the solving area is not selected, then it takes 3 presses to snap to the middle (one to select, one to pick up, and one to put down). 3 presses is still faster than scrolling across. Sometimes when all 4 slots are full, putting down pieces can cause some lag, so occasionally this technique is slower and hence not used.
Another technique that was attempted was using the undo button before solving the last of the 9 puzzles. This would put a piece on the board to help to scroll across quicker. Unfortunately this caused more frames of lag than it saved in movement, so it wasn’t used.
When scrolling through puzzle memory we minimise cursor movement where possible by performing an extra scroll if it will result in 2 pieces that we need being shown in memory at once. This is faster because scrolling once between every piece we place would require more cursor movement than scrolling twice before placing two pieces.
One last observation is that it is faster to place as many pieces as possible, then flip them/change their colour to the next piece in bulk rather than flipping/changing colour every time a piece is placed.
The first four puzzles solved are puzzles 3, 6, 1, and 2 (internal piece labelling). Because these are the first four groups in puzzle memory, this route requires the least scrolling. The next lot of four are 5, 8, 4, and 0. This is counterintuitive since four is the puzzle that requires the most scrolling through memory, but this is only one position further down in memory than the alternative set of four (5, 8, 7, and 0). The reason for this choice is to leave puzzle seven until last. The first and third pieces of puzzle seven match in orientation, as do the second and fourth pieces. By solving puzzle seven last, we can solve it in the order 1-3-2-4 rather than the usual 1-2-3-4. This drastically reduces the number of flips required, saving a lot of time in cursor movement and lag. The reason that we need to leave seven until last to do this is because usually there are many pieces in the list that come between the second and third pieces of puzzle seven, so scrolling down through all of these only to scroll back up again would be impractical.
Played on BizHawk 2.2 with ScriptHawk and TAStudio. The game was released in Brazil, so the 60hz option was selected.

Noxxa: Judging.
Noxxa: There's some decent front-flipping jumping action in there, and the objective of searching for puzzle pieces across the rooms adds a bit of diversity to the action. On the other hand, the lack of music, not so great audio quality and lack of significant diversity in environments makes the action drag on a bit over time. That said, viewer response was reasonably good for this run, so I'll follow the audience this time. Accepting for Moons.
thecoreyburton: Processing.


TASVideoAgent
They/Them
Moderator
Joined: 8/3/2004
Posts: 15585
Location: 127.0.0.1
This topic is for the purpose of discussing #5676: Isotarge & The8bitbeast's SMS Impossible Mission in 07:44.26
Skilled player (1672)
Joined: 7/1/2013
Posts: 448
Good! Though I am a bit disappointed by the audio quality of this version compared to the Commodore 64.
Post subject: Re: #5676: Isotarge & The8bitbeast's SMS Impossible Mission in 07:44.26
Player (26)
Joined: 8/29/2011
Posts: 1206
Location: Amsterdam
Oh wow, I've played so much of this game as a child and it's every bit as hard as the name suggests. It's hilarious to see a character that knows exactly where he's going. Definitely a yes vote, and I would also love to see a run of the C64 original.
PCachu
He/Him
Joined: 10/1/2009
Posts: 166
"Another visitor! Stay a while! Stay FOREVoh bugger, he's already found me."
Skilled player (1416)
Joined: 10/27/2004
Posts: 1978
Location: Making an escape
Holy cow, with how awful that voice sampling is, it's amazing they decided to keep it in.
A hundred years from now, they will gaze upon my work and marvel at my skills but never know my name. And that will be good enough for me.
Joined: 1/13/2007
Posts: 343
THe c64 version is MUHC better. Better speec,h better frame rate, better control, better everything. I would love to see it TASed.
Post subject: Movie published
TASVideoAgent
They/Them
Moderator
Joined: 8/3/2004
Posts: 15585
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. ---- [3539] SMS Impossible Mission by Isotarge & The8bitbeast in 07:44.26
Joined: 10/14/2013
Posts: 335
Location: Australia
Here are some extra encodes of this run. Higher resolutions are based on the game's native resolution and are scaled at 2x, 3x and 4x respectively: Direct Downloads: 10bit444 MKV: 244p, 488p, 732p, 976p Compatibility MP4: 244p, 488p, 732p, 976p Torrents: 10bit444 MKV: 244p, 488p, 732p, 976p Compatibility MP4: 244p, 488p, 732p, 976p To download the direct download links, you may have to right click on the link and select "save link as" (this option may be named differently depending on your web browser).
I'm not as active as I once was, but I can be reached here if I should be needed.
Editor, Player (123)
Joined: 8/3/2014
Posts: 204
Location: USA
The TAS itself is extremely technically impressive, but the entertainment quality is a bit on the mediocre side. From what I understand, the routing and the RNG manipulation was extremely intense and complex, and was done very well. It looks like a pretty hard and good game, too. The audience above seems to primarily consist of people who have played the game in the past, which is probably due to my experience theory. The theory states that anyone who has had experience with a game in the past and is at least somewhat unaware of the TAS capabilities of the game will find a TAS of that game enjoyable to watch, no matter what the game is, in most cases. I, however, had no experience with the game Impossible Mission. The flip jumps are fairly cool, and some of the movements are fun to watch. However, the action in the game gets sort of repetitive as the run goes on. The game does have a bit of variety in it, but the environments look very similar to one another in most respects. The music in the game is quite dull. Of course, none of those are the fault of the authors. The TAS is extremely well done. I'm sorry, but I had to vote meh as far as entertainment goes.
Joined: 11/25/2022
Posts: 2
I really enjoyed seeing this. I was trying to remember whether in normal play there was some sort of acknowledgement that you'd found a piece of the puzzle that was being skipped here - as the view here is very much as if you searched and found nothing. Maybe the puzzle piece appeared on the screen? So long ago... Thanks for the video!