I haven't posted here in a couple of months, so I thought I'd drop a line to say why: there hasn't been anything I wanted to play (other than JA2 for the 5th or 6th time) in a looong time, so while waiting for Eschalon I decided to make my own game in Flash, in order to learn something about scripting in Action Script 2.0. I'm a 3D graphics guy so I figured a simple language like this would be a good place to start.
The original concept was a pirate game which would incorporate a dozen or so different mini-games, including ship-to-ship turn-based combat. But the more I discovered one could do in a Flash game, the more I started to think about a turn-based RPG, heavy on combat, like Helherron or POWS, but with more dialogue, quests and purpose. And better graphics.
I started scribbling down ideas, especially for various new monster types. Like any kid who grew loving the C-64, I fantasized about making my own game. After a couple of days I convinced myself the amount of work to be done was just too staggering and that I should put it aside. My knowledge of if/else statements was basically the limit of what I knew about coding.
In any case, I told myself, if the player can't save his game it would never work. I investigated how I could implement a saved game in Flash. Turns out there is a kludgy way to do it.
I started working on one level of a dungeon. Since graphics is my thing it was a lot of fun, and not very frustrating. Soon I had a level where my PC could roam around, open doors, not walk through walls and the rooms would light up as he went.
Then I got discouraged again at the shear scope of the project. I wasn't worried that it would take too long (although it most certainly will), I was worried that eventually I would meet an obstacle that I just couldn't overcome, a limit of either Flash or my complete ignorance of coding. I thought to myself What would be the single hardest part of developing this game?
The combat. So I started working on combat, which would pop-up in a new screen with a similar but zoomed-in layout, so you can't just run off through the entire dungeon. My sprite already had a slate of statistics I determined, a barebones system derived from the usual inspirations. I got my sprite running around, attacking enemies, hitting or missing and wounding them according to numbers built from his stats and held weapon.
But what about enemy AI? I had to build a template class for every possible monster statistic, establish an initiative order based on stats, have the enemy identify targets and move toward them, and work out a logical combat system. With some suggestions from a friend doing a PhD in Computer Science, I wrote some very simple pathfinding. They already knew not to run over their friends or the walls, now they could do workarounds for a square or two.
Since then I've implemented classes for weapons and armour, a routine for adding an NPC, and a functioning inventory with character class-based weapon and armour restrictions, and a multiple-choice dialogue interface. To come: ranged combat, world map navigation, quest arrays and content. Ohhh, the content.
Anyhoo, since I donâ€™t have a website up yet for the game, this was the only place I could think of to spout off about it. There wonâ€™t be a functioning demo for a long time yet, long after Eschalon is out Iâ€™m sure. Or maybe never at that. Here are a few screenshot. The interface isnâ€™t finished and it isnâ€™t pretty, so donâ€™t cringe.The only dungeon, at presentInventoryCombat