Thursday, September 28, 2006

Source Code Extravaganza (+Extra)

Today is the day for a very special exclusive event: I'm going to provide the full source code to every game that I've talked about on this blog. That's Extinguish, Zi, Vertical, RRRRRPG, Zombie City 2, Zombie City 3, and Zombie City Tactics.

For those who wish to skip all my incoherent ranting and get to the files, you can download all seven of them in one dandy package right here:

7 Games Source Code

All games but one are coded in C++ (Zi is in Python), using OpenGL and SDL for graphics. If you're not the type to be interested in programming, skip to the end and there's a picture.

Okay, now to talk about each one in a little more (self-depreciating) detail (in roughly chronological order):

Zombie City II
This is the oldest program in the lot, and it shows. Biggest uncool thing here is the lack of a dedicated Display object. If you want to change the visual scheme of the game, then you have to go shuffling around in half a dozen different files. What a pain!
I'm rather fond of the AI code here, even if it is VERY closely tied to the original Zombie Infection Simulator's AI code. Also note: some of the map-drawing functions used here will also be used in all future Zombie City games!

RRRRRPG
Another old one, still no Display object. Pretty crude code overall - all special techniques (and virtually everything else) are hard-coded. Not much to talk about here.

Zombie City III
Same problems as the previous entries, but now with a ludicrously complex lighting algorithm! Hit detection is also handled horribly, too - every being checks its distance from every other being every frame. If (when) I make the next non-grid-based Zombie City, I'll definitely improve on this.

Extinguish
Ahh, the ill-fated NaViGaWriMo project. This only got to version 0.1, and it is very heavily based on the ZC3 code, and it crashes pretty frequently, but I am including it in here for posterity's sake.

Vertical
This one is a little bit more elegantly coded than most of the above projects. Included is my very own hand-coded Sprite class, simple but it works. Also look within for alarmingly complex collision detection code!

Zi
This project is particularly unique in being the only one not coded in C++. It is, in fact, coded in Python, and coded pretty awkwardly at that. I was trying to cram Python into my C++-shaped programming mind, and this is the result. Works... mostly!

Zombie City Tactics
And this brings us to my latest creation. Coded decently well all around, no huge complaints. Zombie Lord code a tad buggy, and my implementation of the A* Algorithm is wince-worthy. Also packaged is ZCTEDIT, a simple program I used to create the 100 maps packaged with the game.

And that's that. All .zip files come with all .DLLs and data files required to compile and run the program. Recently, I've been listening to my CompSci professor rave about how great Scheme is, and it sounds pretty interesting. After this is all over, I may try to make a game in it.

Feel free to use this code to make your own games/mods/whatever, under two conditions: Credit me for my work, and send me a link to it so I can check it out.


On an almost-but-not-quite-entirely unrelated note, I recently recieved the first ever piece of Zombie City Survivors fanart, from artist Mike Yi! Check it out:

Ajax Turtledove: The Fanart

Lookin' good, Ajax!

Sunday, September 24, 2006

Numbers and Jumping

I wasn't planning on talking about these, but they've been causing a bit of a stir, so here I go. This post is about two of my older projects, which I just recently touched up a bit and released: Vertical and RRRRRPG.


Vertical is incomplete. It is an engine that lacks a game. As it is, the only goal is to go upwards, using jumping, walljumping, and a grappling hook. The tower is randomly generated and infinitely tall. Consider it a work of zen if you'd like. Once you get used to the controls, it really is a very relaxing and engaging experience.

RRRRRPG, on the other hand, is an actual complete game! It is, in some superficial sense, an RPG (as the title would suggest). However, one crucial change has been made: There is no content in the game. Every plot event, pre-rendered background, elaborate dungeon, and block puzzle has been cut out to streamline the experience. All PCs and NPCs are simple polygons, and the world is shaped like a series of concentric circles. All that remains is a set of numbers that go up. Frankly, I have no idea how this manages to be fun, but it does!

For those who like to see before they play:
Vertical screenshot
RRRRRPG screenshot

Okay, it's really time for me to get back to ZCS. To hell with college, social life, food, and sleep!

Saturday, September 23, 2006

iZombie

Brief news update: Zombie City Tactics has been ported to mac!
Zombie City Tactics v1.0 (mac)

Should work on OS X versions 10.2 and later on PPCs and any version on Intels. Exact same game as the PC version, only with an HTML help file and a snazzy icon.
There is one other implication of this announcement: Zombie City Survivors will also be available to mac users. Apple geeks rejoice!

Wednesday, September 13, 2006

Blogging of the Dead

Sorry for the vast dearth of updates recently. This hasn't been from lack of activity on my end - on the contrary, there's so much to discuss that I don't know where to start.

Zombie City Survivors is gradually creeping towards the light of day. Barely any actual work has been done yet, but I've been making steady progress in assembling my team. I have two artists and a writer for sure, and am almost positive in my choice of a musician. I still need one more artist, but I have plenty of applications to sift through and choose one from. Which brings me to this message: With the exception of sound design, all positions are currently closed for application. Feel free to email me about your talents, but you will face the very real threat of being ignored.

As a side note on this subject, I would like to thank Insert Credit, GameSetWatch, and Kotaku for linking Zombie City Tactics on their frontpages. Their support has been a great help in raising awareness and hype for my future projects!

Anyways, enough blabber. Let's talk about SURVIVORS.

Zombie City Survivors will follow the parallel stories of two characters: Ajax Turtledove, and Vanessa James. Both of them stumble unintentionally into an unnamed city in the midst of a zombie outbreak, and are then trapped in by a military quarantine. The player chooses one of these two characters, and leads them to survival, banding together, and taking back the city.

The game will be divided into smallish regions, varying in size from a city block to a single house. If you destroy all the zombies in a region, then you get to upgrade one character, and all adjacent regions are unlocked for you to travel to. If you lack the firepower, you can also run through an area, avoiding confrontation and getting safely to the other side. However, doing so only unlocks one adjacent region, rather than all of them. Human survivors will be found throughout the city, and can be rescued and recruited to join your team. Day and night will pass as regions are completed, allowing the player to tackle the more difficult areas during the day and push through the safer regions at night, when visibility is limited.

Man, the planning for this game is evolving at a mile a minute, and I really don't know what to say about it. So instead, I am going to share some EXCLUSIVE ZOMBIE CITY SURVIVORS CONCEPT ART with you:

Ajax Turtledove
Vanessa James
Assorted Zombies
Some more zombies
A couple special enemies from the late game

That is all for ZCS for the moment. Questions are encouraged for the comments section, and I will try my best to answer them!

In other news: Zi was featured in Bravo Screenfun, as I announced earlier! It had a fairly minor appearance - no mention in the actual magazine, just on the included DVD. The description, translated into English, was approximately as follows:

At first, "Zi" reminded me a little of "Tetris," but the game plays completely differently. Blocks fall towards the center from above and below, and must be pushed together so that three or more similarly colored blocks are together. Only then can you remove the blocks with a right-click. The more blocks the group contains, the more points you get. If a column reaches the edge, it's game over! There are four different play modes: Three difficulty levels and a Fun mode. Control is with the mouse.

Not bad, aside from a couple factual errors (only two difficulty levels, and the game can be controlled entirely with the left mouse button)! I haven't gotten any crazy German fan mail yet, though.

Stay tuned for more undead updates!