Blog | Games | About | Contact | Links

Fri, Jan 11th 2013, 19:13
Progress Potpourri  

This week's post briefly explains a few systems and the recent improvements to them.


Previously, items that gave protection from damage had two relevant values: damage reduction (the amount by which it would reduce incoming damage) and defense (the item's "health"). As an item took damage, both its defense and damage reduction would lower in proportion to each other. After sustaining sufficient damage, it would provide no protection at all.

Enter the "Boolean Defense" system. Now, an item retains its full damage reduction until its defense is reduced to zero, at which point it is "broken" and no longer provides any protection. While I liked the complexity of the old, slow-deterioration system (which had been in place since the very first prototype!), I don't think it actually suited the game. The new system is much simpler and leads to quicker, smarter decisions. This is good.


These allow the player to tailor the game to their taste. Some are simply stat boosts, but others offer new mechanics or adjusted rules. At the outset, the player selects a few Traits that (hopefully) work well together and then begins the game.

Several traits were revised this week. Most of them were related to equipment and how it was used. There are quite a few of these and rather than go through them all, I'll just talk about one as an example. Ambidextrous used to allow you to equip two weapons instead of a weapon and a shield. It also granted you two attacks while wielding two weapons, effectively doubling your damage. Its utility has been expanded, allowing you to dual-wield shields as well as weapons. It still retains its two attack behavior, but the damage for each attack has been halved to prevent insane damage inflation; any "on attack" effects, however, still benefit from there being two attacks.

I also added 9 brand new traits this week, bringing the total up to 63. I don't expect all of them to make the final cut (and certainly many will need to be changed too), but I think it's good to work from a large pool and cull it as needed later. The new traits are a pretty random mix, but they do include 2 traits that build off of the recently implemented throwing weapons, which I really wanted to have.


Randomly generated names are used for enemies, items, locations, and some other things. These aren't critical, but they do add a bit of flavor and there's something fun about not seeing the same names every time you play.

The old name generator was perfectly adequate, but lacked variety, consistency, and, well, just created too much gobbledygook. So, it has been expanded from 3 "flavors" to 9, and uses a system that is more flexible, expandable, and produces more consistent results. The names are still gibberish, but it's largely pronounceable gibberish. Hopefully, this superficial change yields a more consistent and believable game world.


Sat, Dec 8th 2012, 05:14
Throwing A Fit  

This week was spent making background changes to some item subsystems and implementing a new type of item.

Throwing Weapons

While it has been possible to throw items via the Heave trait for a quite a while, I decided it would be worth adding a dedicated class of throwable weapons. Enter boomerangs. And shurikens. And, yes, even bombs. These fill the previous void of consumable, offensive items; consumable recovery (food) and utility (potions) items are already well established.

Because thrown weapons are generated (using materials and quality levels) like equipment, the way an item's throwing starts are calculated needed to be changed. This was a great opportunity to try a new approach to stat calculation that I've been wanting to use. So, the throwing stats were set up using the new system. It worked exactly as intended (yay!) and I went ahead and added it for equippable items as well.

Old Stat Approach -- Some lazy thing I did at a gamejam

Previously, items derived their stats by multiplying the different factors of their components (quality, material, etc) together to get a composite value. This works well enough for easily adding a lot of variety to items, but it also produced a lot of "underpowered" items. This is undesirable. Junk items should be bad because they don't fit a player's needs / build / playstyle, not because they are numerically inferior. So, rather than just adjusting the component values to create a glut of bland, "balanced" items, the entire system was rebuilt.

New Stat Approach -- Items as Unit Vectors (Sort of)

Individual components are now looked at as a whole and weighted according to what they provide. Then the component weights are combined to create a set of percentages that make up the item as a whole. These percentages are then multiplied by a stat-specific scale, yielding the final value.

The end result is that items of a given quality will always be on par with other items of the same quality (even if the specific distribution of values isn't useful to the player). In a game that revolves around maximizing the quality of items you receive, this consistency is crucial. Without it, the player's success is simply too random.


Fri, Nov 30th 2012, 23:10
The Story So Far  

A while back, I started working on a simple game with some RPG elements. It was dubbed Roguelite (working title) and I whipped up a quick prototype:

Since then, I have been slowly improving on it and putting some meat on its bones. I even have proof! Here is a screen from the latest version:

While it looks largely the same, there's a quite a bit more going on there. Not exhaustively and in no particular order:
  • Quests
  • Traits
  • Time
  • Status Effects
  • Scenic Locations
  • More of.. everything!
There's still a lot of work yet to be done, but it's getting there. So let's touch briefly on the game itself and why I think it's interesting.

The Standard Stuff: You are a hero. You kill monsters. You collect items. The difficulty increases over the course of the game. The quality of items increases to compensate for the increasing difficulty.

Important Details: You have limited recovery options while out adventuring, but returning to town will completely restore your character and items to top condition. Inevitably, you must return to town to avoid death.

The Big Wrinkle: Returning to town also permanently lowers the quality of items that you find (by a small amount). Take too many trips to town and you will find the monsters are outpacing your equipment and you will die. This press-your-luck arrangement exploits your greed and forces you to play outside of your comfort zone. "Can you survive another battle? What if it's a werewolf? Or a dragon?" Also, there is permadeath.

So that's it in a nutshell. Future posts will address new additions, improvements, existing features that were un(der)explored in this post, and just be more detail-centric in general.


Tue, Nov 27th 2012, 20:48
In the Navy  

Ben McGraw recently posted about reviving an old blog Pact. I have elected, against my better judgment, to participate in said Pact.

Posting will commence with a brief summary of my current project, Roguelite, and continue with weekly updates on its progress until release.


Fri, May 13th 2011, 13:10
Blueberry Intervention  

I spent about 3 hours on this:

I would've spent even more had it not be for Overkill. He helped me figure out what needed fixing (the lighting) and how to do it. There just wasn't a lot of room to put in a specular highlight and a crown on each while having them in different orientations so they didn't look like a bunch of clones. I am mostly pleased with the results.

Overkill was also helpful in another way: He told me to knock it off and stop wasting time on something so trivial. He is cool like that. Anyhow, there are more little fruits, but those will be showcased along with (and in) proper screenshots once I have these implemented in the game. With any luck I won't miss the next Gruedorf deadline.