14 Jan, 2010, Tonitrus wrote in the 1st comment:
Votes: 0
Hi, I'm thinking about durations. Namely, I don't like them.

Anyway, I have up until now never had any reason to care about the duration of something. I suppose if you're doing timered triggers, that might be a reason, but I don't really consider that worth taking into account as it's not something I'd like to encourage. When something lapses, I either see its wearoff message or highlight it in such a way that I do see it, therefore it doesn't matter.

Anyway, recently I've been using a 6-second-duration power (regeneration) a lot, and knowing the duration is sort of important in this case, so I can be ready to restart it when it lapses for maximum effectiveness.

So my actual question is:

Is being able to judge the duration of an effect important, and, if so, how often?

What I'd like to do is set up a system where on-going effects simply give a sort of "save" to see if they lapse, and they last until the person makes a save to remove them. This allows stat adjustments to affect durations in real-time without a lot of stupid recalculation.

If you get poisoned, you might not have a "remove poison" spell or potion handy, but you could still cast a spell to raise your constitution in the hopes of causing the poison to lapse sooner.

This system would have the side-effect of giving durations a lot of randomness and unpredictability.

A fly spell for example could get unpleasant if it usually lasts for 20 rounds, but you get unlucky and it lapses at round 2 (over the chasm of doom). This one instance can be worked around by having something like a long-duration float after, or even giving a few grace rounds after something lapses (and notifying the person in question), but I'm not sure there aren't other issues with this approach.
14 Jan, 2010, Lyanic wrote in the 2nd comment:
Votes: 0
So what you're looking for is a system where various magics and ailments applied to characters don't wear off naturally, but have to be actively prolonged or resisted by some means?
15 Jan, 2010, Tonitrus wrote in the 3rd comment:
Votes: 0
I'm not sure what you mean by "actively".

Lets say you get poisoned and the poison has a difficulty of 15 to remove. At the end of the first round or minute or whatever, you'd make a saving throw, d20 + your con + ???. If you roll over a 15, you remove the effect. This is all automated, but you could take actions to raise your constitution to increase the likelihood of the effect removing. If you failed to remove it, you'd get another check at the next interval, and so on. It'd remain on you until you made a successful save to remove it.

Beneficial effects would work similarly, except that you'd make a save to keep the effect. I'm not sure how to handle effects that are neither beneficial nor harmful. I think I'll assume beneficial in case of doubt.

Different skills/spells/whatever could have different amounts of time between saves.
15 Jan, 2010, Lyanic wrote in the 4th comment:
Votes: 0
No offense, but that system sounds like it has some inherent problems. If A) the rolls are all automated, B) everything is entirely based on probability and C) you assume anything not obviously harmful is beneficial, then you get issues where a player gets stuck with Spell X that is assumed by the system to be beneficial, but may not be beneficial for the specific scenario/circumstances. Even if the player knows that the rolls are based on Stat Y and takes measures to manipulate that stat such that the spell is more likely to wear off, what happens if the player gets a number of unlucky rolls in a row? That could seem frustrating and will leave the player with the options of either sitting there and waiting, which is boring, or trying to progress while being hindered by a spell that is supposed to be beneficial. Additionally, since the system is probabilistic in nature, a smart player will be able to figure out an average duration based on the current relevant stat anyway.
15 Jan, 2010, Tonitrus wrote in the 5th comment:
Votes: 0
Assuming that spells are beneficial may be flawed, yes. Perhaps a player could designate what is or isn't beneficial.

"resist fireshield"
"relent blindness"

As for the rest of that, how is it any different than waiting out the duration on an effect? If the duration is set, you have no chance of influencing it at all, so I don't see how it's more frustrating to have the possibility of reducing the duration. Expecting it to lapse at any given point would be a bit optimistic, though. Increasing the chance of lapsing will decrease the probable duration, not necessarily cause it to lapse immediately.
15 Jan, 2010, Lyanic wrote in the 6th comment:
Votes: 0
The idea of allowing a player to designate what is beneficial or harmful is good. That fixes part of it. As for waiting on it to wear off, most games that use straight duration also have ways to clear it - antidotes, dispel magic, etc. Would you be keeping these sorts of things as an option, too?
15 Jan, 2010, Tonitrus wrote in the 7th comment:
Votes: 0
Lyanic said:
The idea of allowing a player to designate what is beneficial or harmful is good. That fixes part of it. As for waiting on it to wear off, most games that use straight duration also have ways to clear it - antidotes, dispel magic, etc. Would you be keeping these sorts of things as an option, too?

Yes. I can't see any reason to remove them. The purpose of this system is to make durations flexible/alterable. Perhaps even unpredictable, although that's more of a side-effect. I'm still not entirely sure what to do with things like "fly", though.

And I don't know if there are other effects that are similarly time-sensitive.
15 Jan, 2010, elanthis wrote in the 8th comment:
Votes: 0
Quote
Is being able to judge the duration of an effect important, and, if so, how often?


Predictability is ALWAYS important. Otherwise it's just random, annoying, frustrating, and pisses off players. Even for random skill uses (e.g., attacking/combat), predictable chances are very important. The foundation of a game is knowing its rules and learning the strategies of those rules. If the rules are unpredictable, you can't learn them, and you can't develop strategies around them. You might as well just replace your whole MUD with a single random number with a 50% chance that it prints "you win" and a 50% chance it prints "you lose." (Okay, maybe I'm oversimplifying a teensy bit.)

Quote
What I'd like to do is set up a system where on-going effects simply give a sort of "save" to see if they lapse, and they last until the person makes a save to remove them. This allows stat adjustments to affect durations in real-time without a lot of stupid recalculation.


D&D 4ed uses such a system. I have not seen particularly positive responses to it, other than that is simplifies combat effect tracking (a problem in pen-and-paper games but not computer games). The attackers feel gyped when their high-level spell wears off after a single round, and the victims get frustrated when they keep failing saves and get screwed over by a low-level spell.

RPGs in general are kind of funny because they are built around this idea of random skill resolution, and then you go and add a ton of systems on top of it to FIX the randomization. Like hit points, which are basically your way of saying, "I know I can't die right now because I gots a lot of hps." And then game designers decide they want a more gritty feel with more deadly combat and add insta-death poison or magic that circumvents the hit point buffer. And then gamers find the game unfun and the designers go in and add protections against insta-death effects. And eventually you end up with a system where the entire meta-play is to collect a series of "mandatory" buffs and protective items to make the game continue to revolve around hit points.

But yeah, unpredictability sucks. if you want a really gritty "be ready to roll up a new character every day" kind of game, go for it, but if you want a fun game that people want to play for years and years, you need to design a game, not a random-lose machine.
15 Jan, 2010, Runter wrote in the 9th comment:
Votes: 0
Elanthis said:
Predictability is ALWAYS important. Otherwise it's just random, annoying, frustrating, and pisses off players. Even for random skill uses (e.g., attacking/combat), predictable chances are very important. The foundation of a game is knowing its rules and learning the strategies of those rules. If the rules are unpredictable, you can't learn them, and you can't develop strategies around them. You might as well just replace your whole MUD with a single random number with a 50% chance that it prints "you win" and a 50% chance it prints "you lose." (Okay, maybe I'm oversimplifying a teensy bit.)


Yes. Also, slightly different subject but in the same vein. I find it quite annoying when abilities mechanics are hidden from the players. This can feel random. As in, you may only know the chance is "good" an effect will be applied according to a description. I find this unacceptable. Hiding the gameplay mechanics is usually a poor attempt to guard from minmaxers and quite annoying.
15 Jan, 2010, Sandi wrote in the 10th comment:
Votes: 0
Runter said:
Elanthis said:
Predictability is ALWAYS important. Otherwise it's just random, annoying, frustrating, and pisses off players. Even for random skill uses (e.g., attacking/combat), predictable chances are very important. The foundation of a game is knowing its rules and learning the strategies of those rules. If the rules are unpredictable, you can't learn them, and you can't develop strategies around them. You might as well just replace your whole MUD with a single random number with a 50% chance that it prints "you win" and a 50% chance it prints "you lose." (Okay, maybe I'm oversimplifying a teensy bit.)


Yes. Also, slightly different subject but in the same vein. I find it quite annoying when abilities mechanics are hidden from the players. This can feel random. As in, you may only know the chance is "good" an effect will be applied according to a description. I find this unacceptable. Hiding the gameplay mechanics is usually a poor attempt to guard from minmaxers and quite annoying.

QFT

Of course, there's a larger market for "it's ALL random, everyone's got an equal chance" games, and probably most MUDs fall into that category, but you can see where that's gotten us.
15 Jan, 2010, KaVir wrote in the 11th comment:
Votes: 0
Runter said:
I find it quite annoying when abilities mechanics are hidden from the players. This can feel random.

I'm generally a fan of transparency as well, but some players do actually enjoy exploring and learning mechanics for themselves, so I think there is some merit in concealing certain things.
15 Jan, 2010, Skol wrote in the 12th comment:
Votes: 0
Tonitrus, are you just trying to achieve a 'variable' duration here? If you you can always just look at where potions/spells etc apply the duration of affected time, and put variance there.

I'm actually revamping a few things that way due to PVE vs PVP in my game (like sleep is great on a mob for 10 minutes irl, but vs another player?).

You could vary based off the victims constitution (assuming your game has it), willpower etc.
Again, that's if you just want it NOT to be 'level 15 giant strength lasts 15 minutes, period' type thing.

I do find that almost _all_ players want things that they can nail down as far as durations and effects etc. While some variance is good and ok, they want to know what it is (ie, score shows how long each affect has in mine, per RoM). Even replacing that with a scale like 'very strong/strong/medium/mild affect' gives people an idea of 'how much'.
15 Jan, 2010, Tonitrus wrote in the 13th comment:
Votes: 0
Skol said:
Tonitrus, are you just trying to achieve a 'variable' duration here? If you you can always just look at where potions/spells etc apply the duration of affected time, and put variance there.

I want dynamic durations. I want to avoid a static number that says you have 5 seconds left. I don't just mean avoid displaying such a number, I wouldn't display it anyway. I want such a number to not exist.

The method I mentioned above is not the only way of doing this, however, just the one I'm currently entertaining. I have two basic reasons for wanting to do this:

Philosophy

I've become quite sick of static numbers. I'm tired of hearing mud administrators say things like "that would break current characters" and "we wouldn't be able to reimburse them because we wouldn't know what they had". When I was hacking Smaug, for example, I stripped out all the leveling code, so that when you "leveled" (which didn't even happen), you got no message or anything for it. Instead, the update code would determine your level based off your exp, and check to make sure you had the appropriate number of spent and unspent trains and practices, and the appropriate number of hitpoints and what not. If you were low, it'd toss you a few at random. If you had too many, it'd strip some at random, or the least-recently-used skill. It also scaled up its efforts based off of how "off" you were from the expected result. There were basically no set numbers that weren't defined at character creation that were modified, so that everything could be corrected on the fly in char_update(). I also made it so that all immortal commands couldn't make permanent adjustments to characters in this same way. If an immortal set all your stats to 1, you'd start getting a lot of them back on the first tick, then progressively fewer each, etc, etc. I did this originally as a system of preventative maintainance, so I could tweak everything as I saw fit (and so I could have immortals as active, killable players), but after doing so I realized the hilarious flexibility of it. I could easily make a potion that gave you +2000000 xp. It'd have to have a decent duration to work, but basically you'd drink it, nothing would happen, and then each tick you'd start getting hp and practices and trains. And you'd basically go up however many levels. When it wore off, the reverse would begin to occur.

The point of all that nonsense above is that static numbers are useless. You can't do anything with them, they simply are. If you get hit with a spell that lasts for a duration based on your current wisdom, and you unluckily have a 1 wisdom at the time it hits, it affects you as if you had 1 wisdom the entire time. If that wisdom penalty wears off and you jump 39 wisdom, the duration is unaffected. This is the main aspect that bugs me. You could consider it a question of realism. Who cares about realism? Mostly not me, but if you don't pay at least a token effort to realism, you end up with a system where it's difficult for people to intelligently experiment, bringing us to:

Explorers

I like Explorers. Explorers like messing with things. Explorers like experimenting with how things work. An Explorer might try something like raising their wisdom after getting hit with a spell that they suspect wisdom protects against to see what would happen. The static duration system doesn't allow anything to happen, whether their assumption is correct or not.

A dynamic, variable system allows people to try things and not be wholly certain if their assumptions were accurate, this fosters a spirit of exploration.

Contrariwise, if the system is too random, it's pretty much a kick in the balls for everyone, Explorer or otherwise.

Skol said:
I'm actually revamping a few things that way due to PVE vs PVP in my game (like sleep is great on a mob for 10 minutes irl, but vs another player?).

Why would you need 10 minutes for a mob, either? I played a mud that had sleep as a PvP spell, it was pretty great. Lasted 1 or 2 ticks, I forget. People would cast sleep on you, then cast a bunch of malediction spells on you while you typed "aff" incessantly and grimaced. Good times.

Skol said:
I do find that almost _all_ players want things that they can nail down as far as durations and effects etc. While some variance is good and ok, they want to know what it is (ie, score shows how long each affect has in mine, per RoM). Even replacing that with a scale like 'very strong/strong/medium/mild affect' gives people an idea of 'how much'.

I favor a system of clearly demarking permanent effects, temporary effects, and effects that are about to lapse. I think I gave a 3 round warning on each of my effects on my Smaug hackery. That "about to lapse" thing is one thing I can't see working well with the system I mentioned above, which irks me.

As alternatives to what I mentioned above, I could also set durations similar to the method that smaugspells do and calculate whether they lapsed on the fly, or I could increment/decrement them as floating point numbers modified by stats or simply have the incrementation/decrementation require a random die roll based on stats so that certain rounds they wouldn't increase/decrease, or they might increase/decrease twice as often, and so on. I also have a few other variations of the "save each interval" system that I don't really see a point in going into.

The goal is to have dynamic durations mainly, although I think fostering uncertainty would be healthy as well, for reasons I mentioned above.
15 Jan, 2010, Tyche wrote in the 14th comment:
Votes: 0
Tonitrus said:
I've become quite sick of static numbers. I'm tired of hearing mud administrators say things like "that would break current characters" and "we wouldn't be able to reimburse them because we wouldn't know what they had". When I was hacking Smaug, for example, I stripped out all the leveling code, so that when you "leveled" (which didn't even happen), you got no message or anything for it. Instead, the update code would determine your level based off your exp, and check to make sure you had the appropriate number of spent and unspent trains and practices, and the appropriate number of hitpoints and what not. If you were low, it'd toss you a few at random. If you had too many, it'd strip some at random, or the least-recently-used skill. It also scaled up its efforts based off of how "off" you were from the expected result. There were basically no set numbers that weren't defined at character creation that were modified, so that everything could be corrected on the fly in char_update(). I also made it so that all immortal commands couldn't make permanent adjustments to characters in this same way. If an immortal set all your stats to 1, you'd start getting a lot of them back on the first tick, then progressively fewer each, etc, etc. I did this originally as a system of preventative maintainance, so I could tweak everything as I saw fit (and so I could have immortals as active, killable players), but after doing so I realized the hilarious flexibility of it. I could easily make a potion that gave you +2000000 xp. It'd have to have a decent duration to work, but basically you'd drink it, nothing would happen, and then each tick you'd start getting hp and practices and trains. And you'd basically go up however many levels. When it wore off, the reverse would begin to occur.

The point of all that nonsense above is that static numbers are useless. You can't do anything with them, they simply are. If you get hit with a spell that lasts for a duration based on your current wisdom, and you unluckily have a 1 wisdom at the time it hits, it affects you as if you had 1 wisdom the entire time. If that wisdom penalty wears off and you jump 39 wisdom, the duration is unaffected. This is the main aspect that bugs me.


15 Jan, 2010, David Haley wrote in the 15th comment:
Votes: 0
Tonitrus said:
If you get hit with a spell that lasts for a duration based on your current wisdom, and you unluckily have a 1 wisdom at the time it hits, it affects you as if you had 1 wisdom the entire time. If that wisdom penalty wears off and you jump 39 wisdom, the duration is unaffected. This is the main aspect that bugs me.

This seems easy enough to fix. Don't make the duration depend on wisdom. Give it a fixed number of ticks, and have those ticks decrease with time with wisdom as some kind of multiplier.
More generally speaking, don't fix the units at effect time, but always have the same number of units, and make the character's handling of those units depend on current attributes.
15 Jan, 2010, elanthis wrote in the 16th comment:
Votes: 0
Listen to David. He will make you strong.
16 Jan, 2010, Sandi wrote in the 17th comment:
Votes: 0
Strong enough to wear a pancake?
16 Jan, 2010, elanthis wrote in the 18th comment:
Votes: 0
… yes?
0.0/18