Friday, April 12, 2013

The Burning Plague

The Burning Plague is the working title of a CRPG game that I've started working on and will be blogging about as a way of keeping my coding motivation up and also as a way of documenting my progress - already my collection of screenshots is making me laugh as I look back at how it was all looking just a few weeks ago.

The basic idea for the game is that I wanted to focus on a no-frills RPG similar in style to the Spiderweb Software series of games - in particular the Exile and probably Avernum series. I'm definitely in the camp of being a hobby programmer and my most recent experience in game writing was putting together a few roguelike prototypes before participating in the last three Seven Day Roguelike competitions where I made a few games:

2011 - Defender of the Deep
2012 - Mujahid
2013 -  Rasatala

Each of those games is ascii based and relatively simple in scope. They are written in python and rely on the libtcod library for rendering and a whole lot of behind the scenes algorithms such as field of views calculations and other labour intensive programming tasks like that. I'll probably post about each of those games in turns so I can talk about the goals I had with each in relation to gameplay and scope but that's enough about them for now.

Because of my experience with that library and python, I decided that the fastest way to get me up and running with a more structured RPG would be to stick to what I know. Originally I was going to keep the ascii graphics throughout because it helps with the speed of programming so much if you don't have to worry about graphics, but libtcod supports graphical tiles and I was tempted to make the switch and looking back now, I'm very glad that I did.

Beyond the style inspiration of aiming for a Vogel-esque RPG, my initial content is loosely based on the Dungeons and Dragons module for low-level players - The Burning Plague. The initial goal is to release an alpha version of the game which fleshes out a short RPG covering an expanded adventure based on that module. Gameplay is intended to be based on roguelikes to a certain extent in that you will only control a single character and rely on providing orders to your companions to boss them around so that it becomes more of a party oriented experience.

Data in relation to the content of the game itself and the various maps to be used is stored in simple plain text with the idea being that once the initial module is completed, the content will be highly moddable and also extremely quick to extend. Building a map is as simple as typing in the characters in a plain text editor. Adding monsters and objects to the map takes just a couple of short lines and is very easy to understand in its current state.

Developmet has been going for around about a month now I'd say and I'll post up a series of screenshots to give you an idea of where the game has come from and the direction it is heading in.

First up, we have one of the basic views of what the game world looks like. You can obviously see the hangover of the ascii environment I was planning with just the actors in the game being displayed graphically. Looming ominously before our intrepid group of adventurers is the mouth of a forbidding cave. To be honest, looking back on this I do enjoy the clean simplicity of the appearance of the game map but I understand that it's probably not for everyone and it would end up being audience limiting in the long term.

Of course, what's a world to explore without enemies. We've still got the rudimentary walls, trees and water reminiscent of the original planned visual style.

 From those slightly more humble beginnings, a fair few tiled graphics were added in to represent the world and the appearance below is roughly what the game looks like currently.

And with those extended graphics, work began on implenting a clear user interface as you can see with the message console at the bottom and the status console on the right hand side, complete with regrettable placeholder names for our loyal companions.

RIP Weird Tony, you will be remembered.

The most current build looks like the screenshot below with a few more visual frills, the addition of a mysterious stone which is a simple placeholder item the player can pick up to the test out the inventory system, and more exciting for me is the behind the scenes additions with the carnage being shown resulting from the player issuing a command to his companion Dilly to attack an innocent peasant and Dilly in turn responding by calling his companion Weird Tony to arms to assist him in his evil deeds. The player can't control Weird Tony directly under this system and while that might not seem like much, it's the groundwork for a more complicated monster AI system where a group of monsters will have a leader and followers tracking around awaiting orders. 

Likewise it adds a bit of complexity where if your good friend Dilly meets an untimely end, then loyal Weird Tony will stand by Dilly's corpse and mourn while ignoring the player's frantic cries for help.

No comments:

Post a Comment