It's for a video game RPG, but still related to game mechanics.
I need to have a list of status effect like "Poisoned", "Paralysed", "Confused", etc in my game
But on the other hand, I also needed a system to manage active effects like in Skyrim for if I cast a spell that gives me +2 on stat X for the battle, the spell effect must be in a list somewhere.
But I have an hard time deciding what status effects I am going to use, because they are somewhat "Standardised" active effects. On the other hand I cannot remove an active effect system because the game needs it for spells.
So I am questioning the existence of status effects. Why not implement them as active effect and have more variety of effects possible.
Else I need to draw a line to determine what makes the difference between an active effect and a status effect. Maybe an active effect stay for the duration of a battle, while status effects are permanent until cured.
Can you think of other differences?
A copy of a reply on BGG
That is what I was thinking in the beginning. The only drawback I found with a list is decrementing the duration of all effects each turn, but I found a solution by specifying a target time instead and removing the effect once the time exceed the effect duration.
As for curing, I already solved the problem by creating 6 effect categories and allowing cures to remove effects of that category. The categories are: Skin, Body, Bloodstream, Neural, Psychic and Soul.
Else the only thing I could see is that designing monsters could be more complex because you'll have to search for the effect in a predefined list of effects.
The other restriction I though is the impossibility to have multiple effects applied at the same time. Like this attack does Poison, Paralyse and Confuse. But that kind of situation does not happen very often.
I also have a double effect situation, where a fear spell could lower enemy defense and the fear status could do the same.
Else I thought that status effect could only affect what is not a stat modification. Like prevent to attack, skip action, prevent the target to dodge, prevent casting spells or other skill, etc. I'll need to use a bit field to manage that anyway, so why not link it directly to the status effects. Also those effect will be hard coded anyway.