Sunday, April 3, 2011



Though facing great adversity (okay, mostly a solitary bug that ended up being caused by a rounding error... sigh) I now present the first iteration of my next project: STEALTH ROBOT PROGRAMMER!!!

First, let me stress that this is far from a complete version of the game; the logic of the primary game mechanic has yet to be written, and the levels still need to be created, along with other general polishing. Everything is in a very 'symbolic' stage right now.

SRP is a "get to the finish" style puzzle game in which you play some guy trying to escape from some place filled with murderous robots (the mechanics kinda came before the plot on this one...). Your only hope of survival is to sneak up on the robots and reprogram them with a complex set of commands to solve puzzles and exit the level. For example, you can program robots to turn on a force field to protect you from lasers electric fences, you can force them to walk into lava to create a safe platform, you can have them flip switches, or you can have them attack other robots.

This reprogramming ability is the next stage in the process, and isn't currently functional. Right now, what we've got is the general mechanics and interaction of all the elements in the game. Robots patrol around the level and attack the player when in vision range. switches turn on and off electric fences (for now, the player can activate these with the space bar, though in the final version you will need to program robots to carry out this task). Bots caught in another bot's crossfire explode, and can trigger chain reactions on other nearby bots and gun turrets. And so on. Play with it!

Now, to explain how the level editor works. The elements in the right-most window of the level editor are, from left to right, top to bottom:

lava
wall
hero (the player)
exit (doesn't really do much, currently)
robot
turret (stationary, single direction enemy)
green electric fence generator (generates the fence in the direction of its arrow)
green switch
etc...

The button at the very top which says 'color' toggles between two electric fence / switch relationship modes. In 'color' mode, a switch of one color will toggle all electric fences of the corresponding color. If you click the button, it will change to 'switch' mode, in which after placing an electric fence you are prompted to select the switch that will control it. The 'Robo Switch' button (yeah, I know, brilliant naming scheme) toggles the selected robot through three different modes. The default mode has it patrol back and forth in a straight line. The second mode has the robot turn in a random direction whenever it comes to a wall, and the third mode has the robot patrol around a selected object.

The 'On/Off' button toggles electric fence generators between on and off mode when the level begins (red arrow means it's on, black means it's off). The button with two crudely drawn arrows in a circle rotates the selected object on the stage. And finally, the 'Done' button shows you the code for your level, which you can then enter into the game above and play.

Whew. That was a lot. Be aware that, since the editor was meant to be used only by geakStudios developers, there is NO safety net on it. If you put bad code into the textbox, it WILL break and you WILL have to refresh your page. Okay. That's it, I guess? If you have any questions, ask away in the comments. Here's a sample level:

CLRAAA0$$UBAA0$$UCAA0$$UDAA0$$UEAA0$$UFAA0$$UGAA0$$UHAA0$$UIAA0$$UJAA0$$UKAA0$$ULAA0$$UMAA0$$UNAA0$$UOAA0$$UPAA0$$UQAA0$$URAA0$$USAA0$$UTAA0$$UABA0$$ULBA0$$URBA1$$USBD0$$UTBA0$$UACA0$$UDCA1$$UICD0$$ULCA1$$UTCA0$$UADA0$$UDDD0$$UGDA5$$UIDA1$$ULDA1$$UODA5$$URDA0$$UTDA0$$UAEA0$$UBEA1$$ULEA0$$UOED0$$UTEA0$$UAFA1$$UBFC0$$UFFA1$$UTFA0$$UAGA0$$UBGA1$$UFGD0$$UKGA1$$UNGA1$$UQGA1$$URGD0$$UTGA0$$UAHA0$$UKHD0$$UNHA1$$UTHA0$$UAIA0$$UEIA0$$UHIB0$$RJIB0$$UNIA0$$UTIA0$$UAJA0$$UIJA3$$UNJA1$$UTJA0$$UAKA0$$UBKD0$$UEKA1$$UHKB0$$DJKB0$$LLKA1$$URKA1$$UTKA0$$UALA0$$UELD0$$ULLD0$$UQLD0$$UTLA0$$UAMA0$$UFMA1$$UGMA5$$UHMA1$$UIMA0$$UOMA5$$URMA1$$USMA1$$UTMA0$$UANA0$$UCNA1$$UDNA1$$USNA1$$UTNA0$$UAOA0$$UDOA0$$UKOA1$$UMOA1$$UTOA0$$UAPA0$$UGPA1$$UJPD0$$UNPA1$$USPA2$$LTPA0$$UAQA0$$UCQA1$$UDQA1$$UFQD0$$UNQA1$$UTQA0$$UARA0$$UBRA0$$UCRA0$$UDRA0$$UERA0$$UFRA0$$UGRA0$$UHRA0$$UIRA0$$UJRA0$$UKRA0$$ULRA0$$UMRA0$$UNRA0$$UORA0$$UPRA0$$UQRA0$$URRA0$$USRA0$$UTRA0$$U

No comments:

Post a Comment