Page 1 of 2

Reorganizing Timed Effects

Posted: Tue Sep 20, 2011 4:45 pm
by edge2054
I'd like to go through all the timed effects, break them down into four categories, and give them subtypes where appropriate (and necessary). The idea is to move everything into Magical, Mental, and Physical based upon which saving throw the effect uses and clump all non-removable effects into the Other type. More specific things like poisons would become type = physical, subtype = poison, and stuff like the poison tree would then look for the poison subtype rather then the type to determine it's effects.

The reasoning behind this is mostly foresight. This current beta we have an effect type that can only be removed by blanket stuff like Providence and Body Reversion. This effect I believe was written with it's own type so the spell it comes from couldn't apply more then one random effect (it checks for it's own type and if that type exists doesn't apply a new effect). Merging current effects and in the future only using these four effect types will insure things don't get introduced into the game that aren't removable unless that's specifically the designers intent (by putting it in the Other effect type). It will also provide a template for easily coding mutually exclusive effects without having to worry about rather or not that effect type should be added to wild infusions or other debuff removal effects.

Another reason for this change is so that players can easily tell what type of saving throw is associated with which effect. Right now if you get poisoned or cursed it's not very clear which saving throw you used for the effect. For instance physical saves protect against physical effects, that's easy enough to deduce, but is stoning poison physical or magical? Are curses magical? Mousing over the effect doesn't really say and without spoilers it's hard to know exactly what your saves are doing.

Finally we could take this change a step further and save ourselves some hassle in the future by adding subtypes based on immunity type. In other words stun, daze, paralyze, and frozen could all be given a stun subtype. Stun immunity could check for this subtype every time an effect with the appropriate subtype gets applied rather then needing an "if target:canBe("stun") then" statement built into every application effect. (Though something like this would probably be something I'd want to do later if at all. It's not really needed but could be nice.)

Now all of that said this change will be bigger then just reorganizing the timed effects file so there's some other things to consider...

Wild Infusions will need to be rewritten and probably rebalanced so they're not to powerful. Starting players would most likely get a Wild Infusion that removes physical effects (a much bigger blanket then just poisons). High level wild infusions should probably just remove 2 random effect types max (magical + mental for instance or physical + mental but never all three). This would let players shore up poor saving throws rather then just finding Wild Infusions for the effects they fear the most.

Many checks for type will need to be changed to subtype (epidemic and stuff in the poison tree for instance though that's just the tip of the iceberg).

Thoughts? Feedback? It there any big reason not to do this that I didn't think of?

Re: Reorganizing Timed Effects

Posted: Tue Sep 20, 2011 5:44 pm
by bricks
This sounds like a great change, and I think the physical/magical/mental/other split is comprehensive and intuitive enough to group all effects together. Your points about effect-removal abilities are really important. We currently have an abundance of magical effects and an equally large (if not so accessible) means of removing said effects. Diversifying into the other categories, making useful distinctions (magical blind vs. physical blind, for example), and adding greater effect removal skills would make a big difference.

I've noticed that (offensive) dispel continues to be a very useful and powerful effect, and we've started seeing it as greater egos. What do others think; should this be more available? less powerful? more limited in scope (timed effects vs. sustains, the latter usually being the more important)?

Re: Reorganizing Timed Effects

Posted: Tue Sep 20, 2011 6:12 pm
by edge2054
For now I'm thinking most effects won't need a distinction between magical and physical. For instance Illuminate and Sand Breath are both Blind effects. However they both hit the actor in a similar way even if the source is different. Illuminate overloads the optic nerves. Sand Breath literally puts sand in your eyes. Both of these effects have their durations reduced with spell saves in the SVN and both apply a magical effect (this should probably become a physical effect in most cases).

On the other hand stuff like slow has less clear distinctions. Slime is basically being covered in slime and thus slowed (I think is the idea anyway) while congeal time and the slow spell manipulate time in such a way that the actor slows down. Crippling Shot cripples the target and thus slows them. So in this respect I can see a physical slow and a magical slow being appropriate (currently there's just one magical slow effect).

All of this is something I'll look at as I'm going through the timed effects. Figure out where new timed effects are needed and where old ones should most appropriately fall. A lot of them are blanket right now and often don't make sense.

Here's a gross overgeneralization of how I feel most effects should be organized.

Physical
poisons
diseases
stuns
cuts
some dazes
some slows
most pins
sunders
grapples

Magical
hexes
banes
curses
frozen
most slows
some silence
elemental dots (flame, acid, etc. not sure if physical is more appropriate)

Mental
Doomed and Cursed stuff
Confusion
some silence
Battle Cry (currently physical)
most of the new horror spells
some dazes

Re: Reorganizing Timed Effects

Posted: Tue Sep 20, 2011 6:37 pm
by edge2054
Actually I think Hexes could be mental (the only one that doesn't really fit is burning hex but all of the others effect the mind).

Re: Reorganizing Timed Effects

Posted: Tue Sep 20, 2011 7:28 pm
by Rectifier
+1 on organizing them, there are many times where I have no idea what my saves are doing [or if I should swap equipment for certain saves against a boss].

Re: Reorganizing Timed Effects

Posted: Tue Sep 20, 2011 7:37 pm
by edge2054
Sus has actually done a lot of the grunt work already and there's a pretty big saving throw change in the SVN right now. The changes to the saving throw tooltips make it pretty easy to tell what's saving against what. I just want to take it a step further to pre-empt any bloat in timed effects. If we have three base types and someone wants to add a new subtype that's easy enough. Classify it according to it's general type and then give it a subtype. Under the current system, even with Sus's changes, adding a new type means going in, changing the saving throw tooltips, deciding if wild infusions should clear it, etc.

Re: Reorganizing Timed Effects

Posted: Tue Sep 20, 2011 10:25 pm
by marvalis
I played with the idea for a little while to also have nature, but two or 3 categories is more than enough really. So the choice magical/mental/physical looks good.

Blind as a physical effect makes a lot of sense, especially when you also consider that fighters will probably have higher resistances against this.
About slow, I would just put it in physical for simplicity sake (but it probably doesn't matter if there is also a magical slow).

Wild infusion re-balance I can only applaud. In addition to limiting them to two categories, I would make sure the recharge is more around 30 seconds and make it consume a turn instead of being instant.

Re: Reorganizing Timed Effects

Posted: Wed Sep 21, 2011 2:11 am
by Sradac
How can we tell the difference? Say like with a magical blind and a physical blind. If you have a lot go on in a turn you may not notice what exactly blinded you, however in your status list it will just say "blinded" so then you have to guess which type of blind you have and hope you use the right thing to cure it.

I think it should be less about what CAUSED it, and what you NEED to do to protect against it. Look to DND for great examples.

Fireball: Causes 1d6 dmg per level (max 10d6). An enemy may make a reflex save to take half damage. This makes sense. They make the reflex save and if they succeed, they duck to the ground, roll out of the way, or do some other maneuver that needs reflexes to save against this ability. Just becaues its a spell that caused it, it wouldnt make sense to make it a spell save. Theres nothing magical about doing a quick duck and cover. Substitute Reflex for Physical in tome4.

Thus, blindness should be a physical effect. Your physical constitution, is it strong enough to fight through that blindness?

Eh unfortunatly that wouldnt really work though I just realized... Physical is a good example and so is mental, mental save to fight through daze or confusion, but magic dosent really fit.

Still though, if a type of status can fall under multiple types, how will we know the difference?

Re: Reorganizing Timed Effects

Posted: Wed Sep 21, 2011 2:33 am
by edge2054
Got started with this and when in doubt I mostly went with physical.

An important question though. Can you guys think of any times a timed effect type might get called in the code that's not physical, mental, magical, or other that myself and the other folks on IRC may have missed?

Penitence, the poisons and plague trees, circle of death, wild infusions, waters of life, the restoration npc talent, and cleansing from the wildfire tree.

Re: Reorganizing Timed Effects

Posted: Wed Sep 21, 2011 1:23 pm
by Sradac
martyrdom? not really sure what that would fall under. some of the chronomancy effects like turn back the clock. Not sure if that should be spell of physical, a spell caused it, but its your entire body becomming younger.

also impending doom, that spell can be a downright death sentance if you dont get a regen or shield up.

Re: Reorganizing Timed Effects

Posted: Wed Sep 21, 2011 2:18 pm
by marvalis
Sradac wrote:Fireball: Causes 1d6 dmg per level (max 10d6). An enemy may make a reflex save to take half damage. This makes sense. They make the reflex save and if they succeed, they duck to the ground, roll out of the way, or do some other maneuver that needs reflexes to save against this ability. Just because its a spell that caused it, it wouldn't make sense to make it a spell save. Theres nothing magical about doing a quick duck and cover. Substitute Reflex for Physical in tome4.
Yes, I have thought about a simular feature that would make balancing the classes very easy when it comes to effects. Just give them a static reflex / mental resist /magic resist value that rolls against these effects and reduces duration of these effects (saving throws at end of turn with most effects, like in D&D).

BTW edge, will this saving throw system change that is also going to happen replace resistance and immunities or are those going to stay in the game?

The change that you are making is great, but I fear that after putting all effects in 2-3 categories we are just going to get more items and talents that counter, for example, _all_ physical effects. Currently there are only two such spells commonly in the game for all classes (afaik): providence and wild infusion. The problem with skills that counter a very large number of effects is that it turns combat into something very binary: You are slowed -> use physical cleanse. You are pinned -> use physical cleanse, etc. etc. etc. . Rather than having the player fight his way out of a freeze, rather than make him use a shield when pinned to the ground, or drop his equipment when he is encumbered because of weakness, said player will just have on solution to all these different effects: press the cleanse effect button. If such items get added to the game, then this will further trivialize many effects.

Re: Reorganizing Timed Effects

Posted: Wed Sep 21, 2011 3:07 pm
by edge2054
Nothing's final till release Marvalis but in the SVN the saving throw change operates along side immunities and they now serve separate functions. Saving throws reduce effect durations and immunities operate much as they do now (though they no longer reduce durations).

Your concerns are valid about cleansing bloat. On the other hand I nerfed Body Reversion, Timeless, and Providence (the former more then the other two) because nothing can remove 'other' effects unless it specifically targets them (and all saturations got moved into other effects) and because with things better organized it makes more sense for Body Reversion to only target physical effects. The same could easily go for Providence (it could just target one or two effect types instead of all three).

Re: Reorganizing Timed Effects

Posted: Wed Sep 21, 2011 7:44 pm
by benli
On a related topic, I was looking into changing cursed equipment into acting like a set of stackable sustained talents and came across a number of talents that cancel sustained talents and put them on cooldown. They mostly say they cancel "magical" sustains but the code generally cancels all sustains. It seems to me that sustained talents would be a good candidate for the same treatment of "magical", "physical", "mental", "other". Its not as big of an issue but its not a lot to change either.

I suppose you could make an argument that it would be good for active talents to have the same groupings since they can be put on cooldown and such.

Re: Reorganizing Timed Effects

Posted: Wed Sep 21, 2011 7:53 pm
by edge2054
There's already an is_spell field for talents (or something like that) which is what disperse magic is calling (or should be calling if the talent description is correct). It could be taken a step further, like an is_psionic field (for afflicted and psionic classes). Everything else could default to physical I think.

Re: Reorganizing Timed Effects

Posted: Thu Sep 22, 2011 1:48 pm
by marvalis
Edge, I have another question:

Suppose I wanted to make an skill that prevents the target from using skills, but he can still move.
And I want that effect to cannot be resisted.
I also want that this effect cannot be removed.

What category should I put it in then?
I think you said that I should put it in the 'other' category then?
But I think you also said that there will be skills that remove 'other' effects?

I am a bit confused. Can you tell me what it should be? Thanks.