ElvinRL Notes

ElvinRL is my first ever attempt at the 7DRL Challenge.

Overall, I consider the effort a success. I didn’t get in quite all the features that I wanted, but nothing of critical importance was left out. I think there are still some bugs with robot movement/attack. Bugs notwithstanding, they are still very challenging opponents.

Another Visitor.

If you had a Commodore 64 back in the day, you probably remember a game called Impossible Mission. If not, you may want to review a video of game play.

In Impossible Mission, you are Super Agent 4125, tasked with infiltrating the underground complex of the evil Dr. Elvin Atombender.

Elvin is going to blow up the whole world in six hours unless you can find the password to his control room. Because he is so absent-minded, he leaves fragments of his password scattered in 36 pieces all over his fortress. Your job is to evade the robot guards, search the furniture for the pieces to his password, find his control room, and stop him from blowing up the world.

Stay Awhile…

ElvinRL (my entry for the 7DRL Challenge) is an Impossible Mission themed roguelike with the same goals: evade the robot guards, search the furniture for the pieces to the password, find the control room, and stop Elvin from blowing up the world.

http://pages.cs.wisc.edu/~meade/elvin/ElvinRL.html

Controls

Arrow Keys = Movement
Space Bar  = Use / Search

Additional Commands (Main Gameplay Screen)

H = Hack for Passwords (must stand on Security Terminal)
M = Access MIA9366b Pocket Computer
S = Scan for nearby pit traps

Nominally, you have six hours to find all of the puzzle pieces. Every time you fall down a pit or get zapped by a robot, you lose 10 minutes.  Every time you scan for pit traps or hack security terminals for passwords you also lose time. Will you have enough time left to stop Elvin Atombender?

Stay Forever!

The source code for ElvinRL is located in a public GitHub Repository:
https://github.com/blinkdog/elvin-atombender

ElvinRL uses Ondřej Žára‘s brilliant rot.js library. This enabled me to make the game using a relatively modern browser as a platform. No download required, just navigate to the page and start playing. Note: Microsoft Internet Explorer users will need to use a different browser in order to play the game.

The game itself was written in CoffeeScript, a nice little language that compiles down to JavaScript. Using some packages available from npm (the package manager for Node.js), particularly browserify, it was easy to write the code in CoffeeScript modules, and still get it all bundled up into one simple download for the browser.

I was a little disappointed that I didn’t have enough time to make assembling the password from the puzzle pieces into a mini-game, as in the original Impossible Mission. I was little surprised to discover that ElvinRL is quite a difficult game! I haven’t been able to win it since I removed the cheat keys, although a co-worker informed me that he had won.

If you have played the original Impossible Mission, you’ll be in for a nostalgic treat, especially if you play with sound enabled. If you haven’t played the original, you may find my roguelike a little boring and repetitive. There isn’t much to do beyond avoiding robot guards and searching a garishly colored sprawling fortress for puzzle pieces to a mad man’s control room.

Good Luck Super Agent 4125!