Archive for September, 2010

Visuals Mockup

DAMMIT for some reasons my previous post overrode my visual mockup post. So now I’ll need to post them again.

Anyway I just received a list of initial artwork from my contract artist, and I’ll be showcasing them here:


Day time


Night time


Dawn & Sunset

There are a whole lot of effects possible with fragment shaders, but the main goal in my first milestone is to create a seamless transition from day time to night time, going from normal to orange to dark blue and then back again.

Following the previous post about striking combat, in this post I’ll lay out the framework for grappling combat.

Grappling

There’s some fundamental difference between striking and grappling in real life. Striking requires good judgement and control of distance, where each technique requires a certain minimum distance of travel to be able to impart an effective amount of kinetic energy upon impact. In grappling however, the key success factor is to get in close, disable the opponent’s range of responses, and then maneuver into a dominating position where one can deliver attacks without fear of retribution.

This is what I’ll be trying to model for grappling combat in Splintered Core. There are 3 phases: (1) closing the distance; (2) takedown; and (3) follow-up technique. Maneuver modes and stances determine the techniques used in the first phase, attack stances and

Maneuver Modes

  1. Walk
  2. Run
  3. Charge

Like both ranged combat and striking, there’s not much changes to maneuvering modes. Like striking, walking would default to sneak mode; and both run and charge can have engagement mode turned on at the same time. Keybindings don’t change (they are “Q” for engagement mode toggle and “W” for maneuver mode cycle”).

Stances

  1. Offensive
  2. Defensive
  3. Counter

Like striking, character shifts between different preparation mentality with different stances. If a stance is set to offensive, the grappler will intend to shoot the opponent (shoot as in shoot wrestling) and forcefully perform a takedown; in the counter mindset however, the grappler will try to make the opponent over-commit and then use that opportunity to counter-attack.

Weapon Positions

  1. High
  2. Normal
  3. Low

Again, like striking, this sets the character to a specific attack vector. For example, in an offensive stance and a high weapon position, when the character engages an enemy he will attempt to takedown the opponent from a standing position. If however the weapon position is set to normal, the character will instead perform a shoot towards the opponent’s waist. Finally, if the weapon position is set to low, a tackle to the legs would be executed instead.

Attack Stances

  1. Close Range
  2. Normal Range
  3. Shooting Range

Like striking, attack stances are basically engagement range. This is to determine from what range would a character execute the grappling techniques. The general rule-of-thumb is that the closer the distance, the higher chances of successfully grappling the opponent but at the same time the higher the chances that the opponent can resist (or even reverse) the takedown.

Attack Mode

  1. Joints
  2. Limbs
  3. Circulatory System

Again, like striking, attack mode mainly determines the attack type. For example, on a high weapon position, close range, and with the attack mode: “joints”, the grappler would close the distance and attempt to perform a neck snap maneuver. On the same position and range but with attack mode at “limbs”, the grappler would instead execute a arm bar or arm lock maneuver. Each of the attack mode will provide different status ailments if executed successfully: joints mode will cause sustained pain and temporary loss of mobility; limbs mode will cause paralysis or disability; while circulatory system will cause blackouts and even death.

Primitive Weapons

Primitive weapons, which comes in two categories – light and heavy, defines a character’s skills in using melee weapons like batons, sledgehammers, knives, axes, maces and so on. To break it down:

Light Weapons

Knives, Batons, Switchblades, Knuckles, Maces, Machetes and Hammers. They are generally fast but do not have a long reach.

Heavy Weapons

Shovels, Staffs, Spears, Sledgehammers, Axes, and Flails. They generally have a longer reach and more damage but are slow to wield.

The only difference in combat model for primitive weapons is the Attack Stances and Attack Modes:

Attack Stances

  1. Short Range
  2. Medium Range
  3. Extended Range

This is pretty much self explanatory. The shorter the range, the easier it is to hit an enemy, but the lesser the damage.

Attack Modes:

  1. Flurry Attack
  2. Normal Attack
  3. Power Attack

Mainly this is the speed of the attack used, or the level of commitment. The faster it is, the more attacks per round at the cost of damage, while the slower it is the more damage it deals.

Summary

I’ve pretty much covered all possible aspects of the combat model, and I’m quite happy at this model. While things might change in the future (as always), I don’t think it’ll stray too far apart from this.

One concern is that it might be too complex. Which is true. It IS a little too much to manage all these parameters in the heat of combat, especially in a tactical-heavy environment like what I envisioned. So in my next post I’ll talk about streamlining the game mechanics into pre-packaged techniques.

Until next time!

Visuals Are Not Cheap?

Okay, I know, I need to finish up the combat model series of articles, but after reading this piece about “same engine different content maketh a new game“, I felt that I needed to elaborate on this more, but from an indie angle.

Let’s take the most notorious example here: Jeff Vogel’s games. Avernum 4-6 basically had the same graphics. Other than minor UI and layout changes, most art assets are reused from game to game:


Avernum 4


Avernum 5


Avernum 6

Well, spot any big difference? No? Didn’t stop his selling his games though. Now let’s take a look at Basilisk Games’ (funny how I remember Avernum was made by a person – Jeff Vogel while I can’t for the love of the unicorn remember who’s that dude behind Basilisk…) Eschalon series, currently on Book 2:


Eschalon Book I


Eschalon Book II

Other than slight UI changes, there’s virtually no difference. Again, art assets were reused for the next game, which featured one of the most anticipated improvement to the series: faster walking speed. Okay, jokes aside, this seems to be a trend in successful indie RPGs – same art assets, different game.

And why is it so surprising? In the era where people rise to the call to stop global warming, where plastic bag users are staked and burned in public and water usage are counted by milliliters, is that so hard to imagine indie devs recycling artwork to keep the cost down? And if it works for indie devs, why not commercial game companies too?

Creating art assets take time. I spent close to 8 hours just to do one character’s sprite for my InfestedRL, and many more to fine-tune it so that it blends well into the background. Animating a 3D model takes much more effort. If you’re going the mocap (motion-capture) route, you need to set up the equipment, schedule the actor, and then start capturing animation which alone could take a whole day per set. And then after that you need to clean up the animation, which takes time too. While there are mocap libraries for sale on the internet, they are friggin’ expensive (think $30,000 per animation set) and inaccessible for indie developers and small production studios.

PS: Friggin’ rats having a disco party on my roof…

But back to the point. The industry reuses art assets all the time, mostly in sequels. Mass Effect 2 don’t look that much different from Mass Effect 1 considering that a lot of textures, models, animations and even UI elements are recycled from the first game. There’s not much difference between Gears of War 2 and its predecessor too.

So why the big fuss? Calling a sequel a mod is just stupid considering that it is smart business sense to recycle assets to squeeze the most out of them. The thing that players should be complaining about is the move towards more fluffy cutscenes than spending those extra dollars on extra content.

Jeez, people bark up the wrong trees all the time.

Continuing from the previous post about ranged combat, I’ll be splitting melee combat into two distinct sections: Unarmed (Hand-to-hand) and Melee Weapons (Primitive Weapons).

To recap from the STEN Character System, there are two distinct schools in melee: striking and grappling, both of which attempts to accomplish vastly different goals. But before we begin, I should take some time to explain the reason of expanded melee combat in a modern setting with firearms.

Conventional wisdom would question the effectiveness of melee combat in a setting where firearms are lethal. How do you play a martial artist when a bullet or two could seriously cripple your character? The answer lies in the general economics of the setting.

Good quality firearms are rare, and match ammunitions are even rarer. I’ve made it a point to have make decent military grade firearms extremely rare (the current estimate is about 100 of them of various make scattered in the game world, all owned by important NPCs). This way, players have to rely on sub-par firearms in ranged combat, if they choose to specialize in it. They are equally deadly, but leaves much to be desired in terms of accuracy and reliability. Weapon jams will not be an uncommon thing in combat.

This is not done to open avenues for martial artists to shine. Rather, this design decision was made during the world creation process, where we decided to go for a low-economy post-apocalyptic world where high-tech stuff are extremely precious just because they are rare.

To add to the woes of a ranged character, every gun has a minimum range. If an opponent gets too close, you suffer massive penalties to your accuracy. This is where a melee character can shine: melee characters need to focus on stealth and speed, while ranged characters need to focus on reaction and perception.

Now having said that, let’s rip apart the mechanics of Hand-to-hand Combat.

Striking

For those not familiar with martial art jargons, the term striking arts refer to techniques that have you on your feet, at a comfortable distance, using your elbow, forehead, fists, knees, legs, etc to land hits on your opponent. The goal is to cause enough damage through striking impact.

Taking a cue from our unified combat model discussed earlier, we have 5 major categories of actions: Maneuver Modes, Stances, Weapon Positions, Attack Modes, and Attack Stances. The same applies to striking too.

Maneuver Modes

  1. Walk
  2. Run
  3. Charge

There’s some difference between maneuver modes between ranged and melee mode. In melee, walk always triggers sneak mode. In addition, the engagement option can be turned on for charge. The same key binding of “W” and “Q” applies here too.

Stances

  1. Offensive
  2. Defensive
  3. Counter

Stances are completely different from ranged combat. Here, offensive stance prepares a character to launch attacks (increase in accuracy and speed at the cost of defense and evasion), defensive stance prepares a character to parry or block attacks (increase in defense and evasion at the cost of accuracy and speed), while counter stance prepares a character to launch a counter attack following a successful parry (increase in evasion and speed at the cost of accuracy and defense).

Like ranged combat, the key SHIFT works the same here too, shifting from offensive to defensive to counter.

Weapon Position

  1. High
  2. Normal
  3. Low

It should be called preparation vector rather than weapon position, because the effect depends on the stance. If a high position is set on an offensive stance, the character will launch a high attack (kick to the head, uppercut, etc) which has high damage but slow in execution. High position on a defensive stance however, allows the character to focus his guard on his head, increasing his chances of stopping attacks launched towards him in that direction/vector. Finally, high position on a counter stance works the same as a high defense, except that a high attack is thrown right after parrying.

Like ranged combat, CTRL + mouse move cycles through the three stances.

Attack Stance

  1. Clinching Range
  2. Short Range
  3. Long Range

Like weapon position, it should be called attack range instead, because this determines what kind of attack (or defense against) the character will throw. Attacks in the clinching range involve headbutts, knees, elbows, etc; attacks in the short range involve punches, low kicks, etc; while attacks in the long range involve roundhouse kicks, side kicks, flying punches, and so on. The shorter the range the faster the execution, higher the accuracy, but lesser damage and knock out capability.

Like ranged combat, the button “A” cycles through the three modes.

Attack Mode

  1. Body
  2. Arms
  3. Legs

Unlike ranged combat, attack mode determines the exact body part used in the striking, defending or counter technique. Body attacks include headbutts, shoulder bashes, and so on. Arms include elbows, fists, palms and backhands, while legs include knees, heel strikes, kicks and front kicks.

Like ranged combat too, the button “S” cycles through the three modes.

Summary

So as you can see, the UI remains the same for striking. It’s just the definitions that have changed. In my next post I will talk about Grappling.

Splintered Core Ranged Combat

A while ago I briefly dipped into ranged combat and over time the concept kind of matured after long hours of discussions and debates. Right now our combat system is more unified, so I’ll take some time to talk about how ranged combat works in Splintered Core.

Tic Timeline

In the past, melee and ranged pretty much operated differently, making it difficult to memorize the details of each without going back to long winded design documents. So we decided to turn it into something more intuitive and easy to understand.

Firstly, we have ditched turn-based combat for tic-based combat. In tic-based combat, a round is defined in a number of tics. Let’s say for now 1 tic = 100 milliseconds. This means that there are 10 tics in a second, and assuming a round is 10 seconds long, you’d have 100 tics per round.

Each action costs a number of tics. Readying a weapon for instance takes 70 tics, which is equivalent to 0.7 seconds. Moving from one tile to another in run mode takes 50 tics per tile, translating to 0.5 seconds to traverse a tile, etc.

Tics are represented as a segmented bar on the top of the window, looking a little like this:


Splintered Core UI prototype

Notice the white dots along the bar. Those are committed actions for the currently selected character. The first dot might be a command to pull out his rifle; the second dot is where he readies the weapon; the third dot is where he runs towards a cover; the fourth dot is where he goes into a kneeling position; the fifth is where he readies a claymore; the sixth is where he plants it on the ground; the seventh is where he sneaks to another cover and the eight is where he readies the rifle again.

Each dot corresponds to an action, and as every action costs a certain amount of tics, the distance between the dots on the timeline varies too. How does the player set this sequence of events up? Well first he clicks on a character to select it; click on a rifle to ready it; press “W” twice to cycle from the walk action to the run action and then to the charge action, then right-click on the map to note the destination; press “SHIFT” and move the mouse down to select the kneeling position; click on a claymore to ready the weapon; right-click on the ground to plant the weapon; right-click on the map to move to a new location; and finally click on the rifle again to ready it.

This is call a commit chain, which is basically the planned tactical movement for that particular character. If a commit chain successfully completes and fulfills a certain criteria (e.g. successfully score hits on the enemy), the character’s rush meter fills up, reducing the tic-cost for his actions. Note that the player can click on the dots and drag them to the right to lengthen the duration of the action, which is similar to the action of having a character wait in between actions. This can be used to coordinate maneuvers between party members.

Once the player completes the commitment, he presses the “GO” button and the game is unpaused. A time marker begins to move from left to right, and all characters in the world performs the actions according to the timeline. Once the marker reaches the end, a new round begins.

The commit chain can be broken if the character is intercepted successfully. This usually happens when a character runs into another’s field-of-fire or attack range, and the other character rolls an intercept check successfully (whether the character is hit or not doesn’t matter – as long as the intercept check is successful, the commit chain is broken). This is called a stumble, which causes the rest of the planned action to be discarded.

When a stumble happens for any player-controlled character, the time marker is stopped, and the player is given the chance for course correction. Note that during this intercept period, only the intercepted character can be chosen and ordered around.

Let’s say the character suffers a stumble when planting the claymore. So happens that when he reached the first destination, and halfway through the act of planting the claymore an enemy steps into view and snapshoots at him, scoring no hits but successfully breaking the chain of action. All further actions are dropped and the game is paused, while control returns to the player, with the intercepted character selected. Now the player can click on the rifle to ready it, and then right-click on the enemy to shoot back.

Note that the player can press the SPACEBAR key anytime when the game is unpaused to pause it, and from there the player can change the commitments of each party character at the cost of breaking the command chain and abandoning previously earned rush points for that round.

As as you can see, the combat model in Splintered Core is pretty much a paused real-time system, with much emphasis placed on streamlining the controls to make it easier to plan tactical maneuvers.

Maneuver Modes

There are 3 kinds of movements that a character can perform, cycled using the “W” key. They are:

  1. Walk
  2. Run
  3. Charge

On each mode, there’s an engagement option to fire at targets of opportunities along the way. To toggle this, press the “Q” button. If engagement is turned on, the character will open fire along the way if an enemy presents itself as a target of opportunity. This is disabled in the charge mode however.

The difference between the three options is speed, and resistance against stumbles. Walking is the slowest and the most dangerous, as you get virtually zero defenses against intercepts. The advantage however is that in engagement mode you don’t get penalized in accuracy as much as the other maneuver modes.

Run is the middle-ground, where you suffer a moderate amount of accuracy penalty to reach your destination faster and gain a little resistance against intercept, while charge disables engagement mode but gets you to your destination in the shortest time, and has the highest resistance against intercepts.

Stances

In ranged combat, stances are extremely important. There are 3 stances available:

  1. Standing
  2. Kneeling
  3. Prone

The higher the stance the faster one can maneuver as well as the farther one can see, at the cost of a larger target profile. Note that when in prone, the charge maneuver mode is disabled. Pressing and holding down the SHIFT key while moving the mouse up and down changes the stance.

Weapon Position

Weapon position refers to how the weapon is used. There are 3 positions available for most ranged weapons:

  1. Free
  2. Hip
  3. Shoulder

Having the weapon at hip level allows a fast target acquisition rate, at the cost of lousy accuracy. This is good when you want to fire on the move with the intention of suppressing the enemy. For instance, you have a M240 equipped, and want to pin down an enemy behind a cover so that you can move safely from one location to another. Firing from the shoulder gives a larger accuracy boost, at the cost of slower target acquisition in the sense that your character takes a slightly longer time to shift fire from one target to another. Free position on the other hand, offers the fastest target acquisition at the cost of horrific accuracy. One thing to note about the free position is that you can shoot around corners or cover using this position.

Pressing and holding CTRL while moving the mouse up and down changes the weapon position.

Attack Mode

Attack mode determines the kind of attack that you will perform with a weapon, and comes in three flavors for ranged weapons:

  1. Snap Shot
  2. Aimed Shot
  3. Suppressive Fire

Snap shots are less accurate, but has the shortest target acquisition rate. Aimed shot take longer to acquire a target, but has a significant accuracy bonus. Suppressive fire has zero target acquisition rate because you will be firing at a location regardless of the existence of targets or not, but suffers from having the worst accuracy. Pressing “A” cycles through the modes.

In each mode, if the character is carrying an automatic weapon, he can cycle through three fire modes:

  1. Single-shot
  2. Short Burst
  3. Long Burst

Single-shots does not incur an accuracy penalty, but provides a low volume of fire too. Long bursts offers a high volume of fire (more bullets flying down the range) at the cost of a high accuracy penalty. Short bursts is the in-between. Pressing “S” cycles through the fire modes.

Summary

So in summary, this is how the toolbar might look like:


Toolbar UI layout

I think this would be a great framework to work from. The nice thing about this model is that you can apply the same things for melee combat as well, which I will cover in detail in a future post. In melee you too have maneuver modes, stances, weapon positions (high, medium and low), attack stances (fast, normal and cautious), and attack types (parry, riposte, all-out). This is what I meant by a unified combat model.

Phew, this is a long post. I hope I haven’t been too long winded lately!

While browsing through the Rampant Coyote‘s blog, I discovered this challenge: Make a game, sell 1 copy.

Ooooohhhhhh boy, this is tempting! Should I? Should I? Ah fuck it, I’ll bite! I got a quick idea floating in my mind, and I think this is the best time to realize it. So what game am I going to do?

Well, for starters, InfestedRL is still on track. It should be finished around 4-5th of October, which gives me plenty of time to work on this challenge. Alright, it’s on! Here’s the premise:

Evolution Chamber

Evolution Chamber is a game where you are in control of a bacterial culture. You can adjust the environment parameters to breed certain characteristics into a certain population of your culture (largely through natural mutations and natural selection), or you can spray them with a mutagen to accelerate (and randomize) the mutation process.

The fun thing about Evolution Chamber is that you can “join” your culture with another friend’s culture, and watch them duke it out. Turn your bacterias into acid spore spitting monsters with a hard carapace that is highly resistant against fire, and watch them slaughter your friend’s fire breathing bacterias!

This would be an interesting exercise in programming large scale decentralized AI, and a nice way to learn how to commercialize a game. I’m excited! Here’s a screen mockup of how it would look like:


Evolution Chamber mockup

Wish me luck!

This is partly an Avernum post, and partly a post on the lessons I learnt from playing the demo. First off, I must say that Jeff Vogel is somewhat of a role model to me. I enjoyed Geneforge, but not enough for me to buy it. I tried Avernum 6, and decided that the setting and story was well worth the money, but the interface leaves much to be desired.

In fact, the only thing holding me back seemed to be the extremely clunky interface.

I’ll explain. Avernum 6 is a primarily mouse-driven game, with keyboard helpers to give you quick access to various UI panels. But this is where it all falls apart, at least from my point of view. First off, item management.

Item Management

I might be mistaken, but in order to bring up the inventory screen, you either click on the bag icon on a character, or press 1-4 to select a character and then press “i” to bring up the inventory screen. All is well, until you want to close it. Pressing “i” again does nothing at all. You have to press the ESC key, or click on the close button to get rid of the screen.


Click on the bag to open the inventory panel

In my opinion, I find this counter-intuitive. I would expect the “i” key to be a toggle key in this case, and to be honest I don’t think this is a technical issue because the difference between a toggle key and an activate key are trivial to say the least.

Next, is the way items are picked up from the ground. First you have to press the “g” key, which brings up the loot menu. Thing is, the loot menu is exactly the same as the inventory panel, so I don’t understand the need for a redundant key binding. Secondly, like the inventory key, it should have been a toggle key instead.


Loot panel

Also, the looting mechanism isn’t really well laid out. Picking items from chests are done correctly, in my opinion. Click on a chest, and a window pops up with with the loot in the top right corner. It even reuses the inventory/loot panel, which is fine, but the problem crops up when trying to pick up items from the ground. You just don’t know if there are items on the ground or not – the world tiles doesn’t show. If I understand it correctly, you are supposed to pull up the inventory panel from time to time to find out what’s on the ground.

I think if Jeff managed to implement a clickable chest, why not implement clickable tiles as well when there are some loot-able items on the tile? I suspect that Jeff chose this way to reduce clutter on the screen, because as far as I understand there are a lot of loot-able items scattered around the world.

Finally, I need to whine about Equipment Management. There are 12 equipment slots on the paper doll, and the only hint you get as to which item type belongs to which slot is the tiny icon on it. There’s no tooltips, no quickhelp, not even a visual indication of which slot the item belongs to when you click on it. Below is a mockup that shows what I would have expected in the screen when I click on an item that I can equip:


Clicking on a sword would show the correct slot

I’ll stop here and reflect a little on what I learnt from this. There are many people who are turned away from indie games because of the sub-par graphics and old-school gameplay, but I think in general indie products should put more thought into UI and user experience design. For me a UI should simplify the tasks that I would perform frequently in the game and not get in my way instead. For Avernum 6, the rooms for improvements are obvious.

So what should I do with Splintered Core?

Lessons Learnt

Good UI should be designed from a user’s standpoint, instead of being built as an afterthought. Not that I’m saying Jeff did not put enough effort into UI and UX design though.

A good UI should simplify tasks, and the best UIs are usually those that look familiar and understandable at one glance. Granted, most games have their own UI and interaction method, but I think there must be common denominators amongst them.

Tooltips for one. Yes, Avernum 6 is an old-school game. Doesn’t mean that it shouldn’t include tooltips though. They are non-intrusive and goes a long way to helping the player understand the UI without the need of reading through long winded manuals or playing boring tutorials, so I don’t see any reason to exclude them from my UI design.

Next up, toggle keys. I play Avernum 6 with my index finger on the “g” key and my pinky on the “ESC” key. Try holding that for an hour and you’ll understand how tiring and unnecessary that is.

Starcraft 2 is a good example in this case. In Starcraft 1, hotkeys were spread all over the keyboard. Now, all hotkeys are binded to keys around the WASD area, making them easy to access without needing the left hand to traverse all over the keyboard. While some might argue that such arrangement wa primarily meant for speed, which is a critical factor in a real-time strategy game where there is a metric called actions-per-minute, I don’t see why the same philosophy shouldn’t be adopted to CRPGs too. It is convenient, keeps the left hand in one area, and keeps the players’ eyes on the screen instead of having him shift his sight from screen to keyboard and back again.

Therefore in Splintered Core, here are the default keybindings:

TAB = Next party member
SHIFT + TAB = Previous party member
1-6 = Select individual party member
A = Action menu toggle (lockpick, examine, disarm trap, steal, etc)
S or C = Stats panel (character stat sheet, game statistics) toggle (press to cycle)
D or I = Equipment panel (inventory) toggle
X or J = Journal toggle
Z or M = World Map/Local Map toggle (press to cycle)

As you can see, there are bindings for convenience (S, D, Z and X) and conventional bindings too (C, I, J and M). This means that for new players, the keys would exist where they expect it to be (conventional bindings), and when they finally take time to read the manual (or play the tutorial), they will be introduced to the convenience keys and hopefully would use them for the rest of the game.

I know, I know, I’m just theorizing and making a hell lot of assumptions about the user’s expected behavior. What I’m saying right now is that this would be my guiding philosophy when it comes to key binding placement and UI design, which would be supported by blind tests during the alpha and beta stage. It’s still a long way to go, but I think by defining what I want to achieve with my UI system, it’ll go a long way towards building an easy and convenient to use interface.

Character Creation Design

Character creation is half the fun in playing an RPG. At least, that is for me. Before we begin, let me do a quick rundown of some of my favorite character creations.

Darklands


Darklands Character Generation Screen

I have not played this game, but watching the let’s play videos on youtube I fell in love with the character generation sequence. Here’s how it works: First you choose a background, which modifies your base stats, and then distribute your stat points. After that, you choose a profession, which further modifies your stats and skill points, and then you get to distribute those points into your skills. This is interesting because it wouldn’t be hard to imagine players spending hours just min/maxing the values. I’m not sure how the background affects the game however. It’d be nice if there are specific plot branches that caters to different backgrounds or professions.

Darksun: Shattered Lands


Darksun Character Generation

While the character creation sequence is pretty typical, where you choose a race, sex, and a few other attributes, it stood out at that time due to the wide variety of interesting races and unique classes to choose from. Gladiators? Psionics? Elemental Clerics? Half-giants? Thri-Kreens?

The system itself is not outstanding, but the theme itself was.

Fallout 1 & 2


Fallout character generation

The first two Fallouts had outstanding character creation mainly due to the SPECIAL system. Since your seven attributes do not improve naturally through the course of the game, you had to make hard decisions even before the game begins. It’s pretty hard to power-game the attributes. Well, that’s until Fallout 2 was released, and then Fallout 3 had to take it to the “next level” where anybody can become a master of every fucking thing.

But back to character creation. After setting your attributes, you get to choose traits. Most traits provided gave both benefits and penalties, which is a brilliant touch. Then you get to tag skills, which doubles their rate of improvement.

So many things to do, so many different kinds of characters to choose from!

Splintered Core

As we can see, character creation could be fun in various ways. Darklands was fun because the backgrounds and classes that you chose were not just thematic flavors but had a real impact to your actual stats. Darksun was fun because of the fresh races and classes introduced. And finally, Fallout was amazing because there was so much to do, and none of them confusing at all.

Time to take cues from past masterpieces. Taking into account that our plot revolves around one single character (like Fallout and Baldur’s Gate) and that said character has a surprising background which is gradually revealed to the player (like Baldur’s Gate and Planescape: Torment) through the plot, we couldn’t really use Darkland’s backgrounds and professions. And since our stat system has been streamlined to only feature stats where attributes and skills are grouped together in one single term, we had to think out of the box to inject more fun into the character creation process.

This is what we came up with:

First you enter the character’s bios. Name, sex, body, and portrait. The body selection are not just aesthetic options; they have an impact in the game world. Choose to be a fat chick and you won’t expect to charm those who likes skinny girls.

Then you are given a bunch of stat points to distribute amongst the 30 general and specialized stats. Here, you can tag a few of the stats to reduce their stat point cost, which effectively means it can be improved at a much faster rate compared to the rest.

Finally, you get to choose traits, which are divided into two categories: positive and negatives. For every positive trait you choose, you will need to choose a negative trait too to balance it out. Also, traits directly modify your stats. Positive traits will raise certain stats while negative traits will reduce them.

How about that? A combination of Darklands and Fallout.

The eventual goal in the game is to create towns with realistic economies. This means each town produces and consumes commodities, exports the surplus and imports the deficiencies. While the basic parameters are all streamlined and simplified, I believe the implementation of such an economic model would greatly contribute to the immersion and believability factor of the game’s environments.

Commodities & Consumption

First off, let’s talk about consumption and commodities. There are 10 commodities in the game, 5 of which are raw commodities and 5 are manufactured commodities. The difference between the two is that manufactured commodities are tied to two parameters while raw commodities are tied to only one parameter:

  1. Medicine (Manufactured)
  2. Munitions (Manufactured)
  3. Clothes (Manufactured)
  4. Alcohol (Manufactured)
  5. Parts (Manufactured)
  6. Food (Raw)
  7. Energy (Raw)
  8. Fabrics (Raw)
  9. Materials (Raw)
  10. Metals (Raw)

Depending on the needs of the respective town, the consumption rate for the commodities would fluctuate. Here are the factors governing consumption for each commodity:

Medicine
Population Health & Wealth

Medicine consumption depends on the population’s health and wealth. It is consumed at a small amount daily, and the consumption rate increases with the population’s general wealth. Health levels that dip below average would result in an exponential growth in medicine consumption rate.

Munitions
Town Culture & Security Level

Munitions like weapons and ammunition are first and foremost governed by the town’s culture. Security level plays a significant role too, and when it dips below average munitions consumption would grow exponentially.

Clothes
Population Count & Wealth

Clothes (including armor) are consumed daily, and the rate of consumption depends on population count and wealth. As with medicine, when population wealth goes above the average, consumption rate increases too at an exponential rate.

Alcohol
Town Culture & Population Count

Alcohol consumption is similar to food, albeit at a lower level. Town culture affects it too. For instance, Spike, which is controlled by the Saberions, have zero need for alcohol due to their religious belief against its consumption.

Parts
Town Technological Level & Population Count

Parts refer to spare parts for all kinds of things, including electrical devices, vehicles and machinery. The higher the town’s technological level, the higher the consumption of parts.

Food
Population Count

Food consumption increases at a linear rate with population count, although the rate can be affected by various factors such as weather, culture, events, and so on.

Energy
Town Technology Level

Energy can refer to fossil fuels or Hydroplasma, both of which are needed to power machinery, vehicles and devices.

Fabrics
Population Count

Fabrics are used for a variety of general purposes, and is used to make ropes, tapestries, clothing, backpacks, and so forth. They are also used to make tourniquets. It increases at an exponential rate, but is less affected by external factors.

Materials
Population Count

Materials are used to build and repair houses, warehouses, factories, containers and so forth. Their consumption rate grows at an exponential rate too.

Metals
Town Technology Level

Metal consumption increases at an exponential rate to the town’s technological level. It’s used in machineries, munitions, and in most other things in moderate amounts.

More to come in part 2!

In-game Editor Design Part 1

This is what I have in mind for the in-game editor, built completely with the game’s engine and UI framework:

To the top are tabs showing major functionality of the editor. Clicking on each will change the panels available on the main window, except for the debug window and minimap.

Holding down the right click and moving the mouse in the map screen will pan the map according to the mouse movement, while left clicking will select the particular tile.

More to come tomorrow!