So on another note, I want to discuss a little more about status effects and elemental effects as well.
These are a familiar mechanic in RPGs, and our old designs had plans for this as well. Fire-based enemies are weak to water attacks, for example. Normally elemental effects only applied to magic-based attacks, but in Allacrost we have physical-based elementals as well as ethereal (magical) elementals. There are four of each.
Physical: Slashing, Piercing, Mauling, Smashing
Ethereal: Fire, Water, Volt, Earth
An enemy may be weak to or strong against any of these eight elements. Our idea was to have a sort of paired relationship for the ethereal types that would be familiar to RPG players: enemies strong against fire are weak against water, for instance. So we have a cyclic chain of "strong against/weak against" that looks like this: "Water -> Fire -> Earth -> Volt ->". We don't have this sort of relationship for the physical types, mostly because it wouldn't be intuitive. Instead, we just say that an enemy may be weak to both piercing and smashing, but strong against slashing, for instance. We also plan to have the same levels of intensity for elemental effects that we do for status effects (essentially, a higher intensity just increases the resistance or weakness to that element).
We've purposely put elemental effects on hold and didn't plan to begin introducing them until the next chapter of the game (to keep the amount of learning material in the first chapter down). We can use these properties to make battles a little more interesting, and make certain characters/abilities better against specific types of enemies. That's all I really want to say about this for now. This is just a FYI as this is in the game plan.
I want to brainstorm some status effects both for the future (next year), and what we could begin using immediately in our releases this year. Right now we have available the following:
- Poison (currently being developed)
- Stun (enemy doesn't move on action bar until it passes)
- Attribute modifiers (temporary increase or decrease to a single attribute for an actor, like strength or agility)
One thing I want to avoid is having multiple status effects that are nearly identical. For example, many RPGs have Sleep, Stone, and Paralyze which do basically the same thing (prevent the character from taking actions) and only differ in the means in which you heal them. I also want status effects to all be useful. In other words, if we give access to a skill for a character that applies a status effect and the player never finds a good use for it, we failed with this effect.
I also want to address the current attribute modifier stats. We have a lot of different attributes (strength, vigor, fortitude, protection, stamina, resilience, agility, evade). That's 8 right there, and would be 10 if we add HP and SP to this list as well. Having a status effect for each attribute feels like a bit much, so I'm wondering if we can combine similar stats into a single effect to make the list a little more manageable. Here's a proposal:
- Modify attack power (changes both strength and vigor by the same amount, or apply a multiplier to the normal damage dealt for attacks)
- Modify defense power (changes both fortitude and protection, similar to above)
- Modify fatigue generation rate (changes both stamina and resilience, similar to above)
- Haste/Slow (basically the same as modifying agility stat, maybe this could apply to evade as well?)
Note that some status effects are "opposites". In other words, you can't have both a Haste and a Slow status active at the same time. Casting a Haste spell on a character that has Slow active reduces the intensity of Slow and may cause the character to have a less intense haste effect. For example, let's say we have a powerful haste skill that applies a 3rd degree intensity to the target. A character currently has a 2nd degree intensity Slow status active. Casting this haste skill would remove Slow and apply a Haste status of 1st degree intensity (because Haste^3 - Slow^2 = Haste^1). Make sense?
Finally, another issue to consider is how to determine how long a status remains active for (recall that status effects gradually reduce in intensity over time until they dissipate completely). At the moment, status effects have a customizable duration in real time. For example, the stun effect could have a duration of 2 seconds per intensity level (ie 4th degree intensity stuns for 8 seconds total until the status is completely cured). A poison status may stay active for 10 seconds per intensity level. Should we continue to use a real-time based approach, or instead use a turn-based approach to status effects? In other words, poison remains active for 3 turns for a character. (Stun wouldn't work with a turn-based approach though, since it literally prevents the actor from taking turns).
I know that's a lot to take in. I think that the current mechanics for status effects are okay, but wanted to throw the whole design on the table in case there are issues we need to consider. For now, I'd like to toss around ideas of different status effects we could have that would make battles more interesting and strategic without also being an annoyance to deal with. I'll throw out some very quick ideas that I haven't thought much about to get things started.
- Stasis: actor is not able to be targeted or take any action
- Nullify Fatigue: temporarily removes some or all fatigue effects, allowing HP/SP to be restored to a higher max for a period of time
- Confusion: characters select random action and players can not control them (unsure what this status effect would do for enemies though)
- Exhaustion: Skills require more SP to use while active (which likewise produces more fatigue)
- Vendetta: attack power increases and defense power decreases by the same degree