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

Tuesday, March 29, 2011

Rebirth + Robots

Well, geakStudios has finally flat-lined (heh) and its members unceremoniously disbanded. We had a promising group there, and it's sad to think of what we could have accomplished with more time and better communication. But there's no time for eulogizing: let's start picking that corpse! In accordance with Native American tradition, I like to use every part of my kill.




"...What is that?" you might ask me, with good reason. What you're looking at now is a peek into the geakStudios creative process. When I first started this blog, I promised that it would be showing all my projects from an inside perspective, that you would get to see the game built from the ground up. I wasn't able to stick to my word for last few months because geakStudios required some degree of secrecy, but now anything is fair game. This arcane collection of symbols and geometry is a level editor I built to ease the level creation process of our new game, both for me and for the non-programmers. As you can probably see, this was never intended to be released publicly. It doesn't make any sense and it looks awful (I can't draw things in top-down perspective even in a "charmingly primitive" sort of way. Any graphic designers out there wanna do some charity work? eh?). Can you unravel the mystery? Can you decipher the plot and objective of the game?? Can you make THE GREATEST LEVEL OF ALL TIME??? Now is your chance to find out! Or you can just wait until I post the beta version of the game and explain it all later this week, but come on, just humor me.

p.s. The hint is that the game involves lots and lots of robots.

Monday, November 8, 2010

Play the "Don't Drown" Game

I haven't made any changes to Ahab's Revenge in a while, but I had a breakthrough idea that was so easy to implement and obvious that I've been kicking myself for not thinking of it sooner.

The awkward, incongruous "3 strikes, you're out" system is gone. Ahab doesn't have "lives" anymore. What you have instead is a slowly decreasing oxygen supply. This makes sense thematically, since Ahab is underwater. When you're in the coral, your oxygen supply decreases much more rapidly, because it's...er... smothering you, or something. Okay, it doesn't make 100% sense, but this is fantasy, and I think this approach is a lot more intuitive than having the coral steal a life.

The scoring now makes more sense. You can't just camp out on the first level and destroy coral for eternity to get the high score, since you're now on a timer, and your score after killing Moby is now bigger depending on how much oxygen you had left when you finished.

And finally, a new power-up has been added. It, rather predictably, gives you a small oxygen boost.

Try it out:

AHAB'S REVENGE: OXYGEN EDITION

As usual, tell me what you think. Really, do not hesitate to leave a comment if you feel that there are balance issues; it's always incredibly helpful. Another question: do you think it would be too frustrating to lose a bit of oxygen when a whale hits Ahab?

nathan

Saturday, November 6, 2010

AHAB'S REVENGE NEEDS A TIME LIMIT.

...

Why didn't I think of this before?

nathan

Tuesday, August 17, 2010

New Banner!

Hey! Look at my fancy new banner! Go ahead, click it!

As you can see, I've been working on the look of the blog. I'm not sure how my "aesthetic" sensibilities go over with the general populace, so if the color scheme assaults your eyes, just tell me and I'll try to accrue some taste.

As far as projects go, I'll soon be working with Kevin Chen of geakStudios on expanding "Stealth Robot Programmer." Namely, we want to make a level editor for it. So, that should be cool.

For a while, I was really eager to keep blasting through projects really quickly, but in the grand scheme of things I haven't been working on Ahab's Revenge for very long, and it wouldn't hurt to flesh it out a bit. What I really want to do is demonstrate level variety -- several people have pointed out that the constant upward climb can get a little monotonous. And with full 360-degree firing range and the mobility of a side-scrolling platformer, why not take advantage of the flexibility?

At the moment, there are two primary level concepts that I want to try out. The first, and most obvious one, is to take this in the direction of a platformer. Ahab jumps around dodging and shooting enemies  while moving horizontally toward the end goal, with the destructible blocks thrown in as obstacles along the way. It's pretty simple, but with enough interesting elements added in, it could be fun.

The second concept would lead Ahab's Revenge in a more purist puzzle-game direction. In the "painter" levels, Ahab is in a single room with a solid block of corals in the center, and a fixed number of whales strewn about the stage. The corals are not moving, and the aim of the level in this case is not to destroy all the corals, but to destroy the right corals to make them form a specific pattern. As if you're chiseling out a sculpture. The tricky part is that the colors of the coral are not initially set so that it is possible to achieve your goal; instead you must use a fixed arsenal of "paintbrush harpoons." These are fired from your back like regular harpoons, but are giant paintbrushes that will change one or more of the corals to whatever color it is equipped with. Once you have the colors set up, right, you can switch back to normal harpoons and start clearing the correct corals by hitting them with whales.

If developing Ahab's Revenge has taught me one thing, it's that nobody has any idea what I'm talking about. So here's an example of what such a level might look like:


And you would be given an objective at the beginning of the level to use the right combination of paintbrushes and whales to carve the chunk of corals into, say, an "H" shape.

Anyway, give feedback! Tell me if this is an interesting path to follow, or offer your own ideas.

nathan

Sunday, August 15, 2010

Taking Care of Business

NOTICE: All of my games have officially been moved! They are now neatly categorized in the "GAMES" tab that you see above.

A new game level that I made is up on geakStudios! It's called "Stealth Robot Programmer." The level itself sucks and is boring, but try to concentrate on the core mechanic: you get to sneak up on robots and reprogram them to do whatever you want (within reason)! The game itself is not my idea, but one formed before I even started collaborating with geakStudios. However, I sincerely think that it's one of the coolest ideas for a puzzle game imaginable.

I know I've posted this link about five times, but you can play the demo here at the geakStudios site. Make sure to read the instructions!

nathan

Wednesday, August 11, 2010

This will be the next "Robot Unicorn Attack," I guarantee it.

[SORRY! The game has been moved here: Ahab's Revenge]

In case the start-screen instructions aren't explicit enough, A is left, D is right, W is jump (hold it longer to jump higher), and S makes you drop a level if possible. Oh, also ENTER pauses the game. I accidentally left that out.

It's finally here! My first game coded from scratch, Ahab's Revenge. There are definitely some things I can change up in the future -- I want to improve the scoring system, add some cool scenery underneath the coral, and make the boss a bit more interesting -- but it's finally reached a point where I feel like I can call it a "complete" game. Of course, feel free to leave me feedback. Particularly if it has to do with the speeds of all the game elements or their hit-boxes, since those are things I'm still experimenting with in order to tweak the difficulty.

In case anybody is curious, the background music is "Heiße Lippen" by Cluster. The rest of the audio I made with a combination of my mouth and Audacity.

You may have noticed that the name of the blog changed once again. Aside from choosing to make the title more gaming-related, I also had to decide whether to make it a Bowie or an ABBA reference. Yes, it was stressful. Next order of business: make the blog not look awful.

EDIT: Do you like game prototypes, but hate my taste in music? Then go play Ahab's Revenge at the geakStudios site, where they've been kind enough to publish the game minus the copyright infringement-tastic soundtrack.

nathan