Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - Rusty

Pages: [1]
1
Programming / Knockbacks
« on: August 25, 2009, 07:08:46 PM »
I'm about having knock-backs in my game, where attacks can move characters back a tile.  This would be usefull for giving characters, especially the player, more breathing space as well as convey the mighty warrior image.

Here I'm assuming that knock-backs happen randomly.  One-tile knock-backs would seem to work fairly well.  However, since I want my game to work with superhero-esque settings and characters, part of me wants to allow multi-tile knock-backs that send characters careering through the air and crashing through walls until they land or hit a cliff.  This kind of action works in cartoons and comic books, but in a roguelike it would seem to translate into giving a character a free, albeit painfull, escape.  This could be even more annoying if the character focuses on ranged attacks.

I'm thinking of a couple of ways to balance this kind of knock-back.  One way would be to not make it random, but allow the player to choose when to make a knock-back attack and maybe control the force.  I'm a little worried that this might complicate the interface though, and that since it's an active effect it might not see as much use in battle, reducing the overall quantity of "cinematic action" I was hoping for.

Another way would be to give more advantages to these knock-backs.  On top of the damage caused by the blow, the hit character could also receive bonus damage based on how far he flew and how many things he ran/crashed into on the way.  A knocked-backed character could run into another character, which knocks him back causing damage, who could knock other characters back, and so on for a Newton's cradle effect that ends up dealing damage to multiple characters.

A final set of improvements would be to make it easier to close the gap between the attacker and the knocked-back target.  The knocked-backed character could be "unconscious" for the number of tiles he flew, giving the attacker time to either catch up or focus on other enemies.  Characters could also have "run" or "leap" abilities that they'd use to cross multiple tiles in one turn, which would be usefull here.

2
Programming / Re: Representing agility
« on: August 24, 2009, 10:04:51 PM »
I'm still skeptical about speed systems. As I said previously, it seems that their effects are only noticeable and controllable when you have a low enough speed resolution, like say 1-4. How many people would notice the difference between a character with a speed of 11 and character with a speed of 12?

I think, really, what I'm looking for is a dodging system that isn't random, so that I don't have to suffer through "miss, miss, miss" sequences. I also want the damage reduction from dodging/agility differentiable from armour/toughness.

Also, I was talking about agility in a defensive context, which in most games means a random chance to take no damage when hit.

I was sort of inspired by this usenet thread. I'm not sure if it reached a conclusion or not. One interesting idea though was to turn dodging from a chance to take zero damage into a chance to take half damage. This would probably make "missing" less annoying since progress in terms of damage to the enemy is still being made.

3
Programming / Re: Representing agility
« on: August 22, 2009, 02:01:27 PM »
So, the ideas presented so far have been:

  • Increasing agility unlocks special moves and skills like jumping and speed boosts (george)
  • Use speed system, but also implement facing so that characters get free attacks against other characters that try to "hack-and-back" (AgingMinotaur)

I'm not sure about george's idea since that means I'd have to spend time coming up with a bunch of skills and moves, which is problematic since this would be my first game that I'd really like to release for once. ::) Also, I'd have a finite set of skills mapped to a possibly unlimited range of agility values. I was sort of hoping for a system that lets agility affect your overall performance.

AgingMinotaur's idea is interesting, but I'm worried that it might have a bunch of weird effects. As exploitive as I made speed systems out to be, they sort of make sense on their own. Faster characters would be about to outrun and outmanoeuvre slower opponents. Also, this still doesn't address the level of granularity I'll probably have for agility values.

4
Programming / Representing agility
« on: August 21, 2009, 02:51:14 PM »
I want to have an "agility" stat that can be used to distinguish "fast" and "agile" characters from "slow" and "sluggish" characters, like the difference between the Scout and the Heavy in Team Fortress 2.  I'm interpreting agility as mainly a defensive* stat that allows a character to dodge attacks and circle around his opponents more easily.  However, I can't figure out a mechanic for agility that doesn't conflict with a bunch of requirements I have.

I don't want agility to just increase a character's "defense" stat; that's what constitution and armour is for.  I also don't want a random to-hit chance that agility affects like it does in many other games.  I'm going to have all attacks always hit and hit for full damage, modified by defense, to encourage a bit more strategic play.  Any randomness in combat will instead be introduced through critical hits and other effects.

The only other way of expressing agility that I can think of is by introducing a speed/time system, where more agile characters get more turns to move than others, but I'm not really satisfied by this either.  I made a prototype once that had a speed system, where there was a type of monster that moved half as fast as my character (I had two turns per turn the monster had).  I found it a little cheap when I figured out how to damage the monster without getting hit myself.  As for the monsters faster than myself, I think the only reason those were tolerable is because the AI wasn't smart enough to take advantage of their speed, not because the speed system itself was "balanced."  On top of that, my stats are going to be in the range 5-20**, which is probably too high a resolution for speed differences to be noticeable.

So, what do you guys think is a good way of representing "agile" characters?

* I'm also going to have an offensive equivalent to agility that represents how precisely aimed a character's attacks are.  This will probably manifest as affecting the character's critical hits.
* 5-20 is actually a range for "mortal" characters.  I hope to make my game balanced for any power level, even up to the hundreds, for when I make my Dragon Ball Z roguelike.

Pages: [1]