Page 1 of 1

Simplification of felid extra-lives mechanics

PostPosted: Friday, 7th February 2020, 04:26
by Psymania
Hi all,

With all respect to anyone who contributed to, or is a fan of, the current extra-lives mechanics for felids, I personally feel and submit that they are overly complicated, which causes both 1) confusing, difficult-to-understand source code, and 2) players being confused trying to understand exactly how the rules work, and perhaps potentially even feeling treated unfairly by the mechanics. A simplification would be very much in line with the "Clarity" subtopic of DCSS's "Philosophy."

I propose the following mechanics: At every 3rd level, starting at level 4, you gain an extra life – same as the way it is now. Difference: there is no maximum to the number of extra lives you possess. However, upon death and revival, you have a condition placed upon you, maybe “NoRevive” or maybe a snazzier name can be conjured up. This condition goes away after some appropriately-determined amount of XP gain, similar to stat drain or skill drain. If you are killed with the condition active, game over. Once the condition is lifted, you again have the privilege of being able to revive – assuming, of course, that you still have at least one extra life in reserve. The benefits of this are as follows:

• It is far more straightforward, less complicated, and less confusing than the current mechanics.
• There is no danger of a player feeling cheated by being in the situation of having 0 extra lives when a felid at the same experience level, and who has arguably done a poorer job of survival and should be closer to game-over, might still have 1 or more extra lives.
• It still prohibits dying multiple times in quick succession by way of the NoRevive condition.
• Not only is it much simpler and easier to understand, but it can also make sense thematically. Try coming up with a thematic explanation for the current ruleset, vs. trying to explain that you simply cannot revive too soon after your most recent revival.

I'd be willing to work on the required code changes myself, but before investing the time and work I'd like to see what other people think of this idea. Thoughts? Like? Dislike? Questions? Criticisms?

Thanks in advance!

Re: Simplification of felid extra-lives mechanics

PostPosted: Friday, 7th February 2020, 04:50
by chequers
I like this idea.

1.
Players should have a clear idea of how much time they need to spend in NoRevive state. (Presumably it would last 1k-10k+ turns.)

Here's one idea: when you die, your progress to the next XL is set to 0%. You need to gain an XL to lose the NoRevive status.
a. This would be a variable death cost based on how close to leveling up you are. I'm not sure that's a big problem, but it is a little odd
b. The system could extend beyond XL 27 following the same XP curve (as Felid lives do now). You couldn't see your progress though. Again not sure if this is a major issue. An alternative implementation: never remove NoRevive once you die at XL27.

2.
It's sort of like having two different systems in one. The first system is the lives accumulator. The second is the NoRevive timer. Is it necessary to have both? Or could you combine them?

Example proposal: when you die, you ALWAYS revive unless you are in NoRevive state. When you respawn you gain NoRevive and lose it when you level up. (Variant: reset to 0% XL progress on death as per above)

Re: Simplification of felid extra-lives mechanics

PostPosted: Friday, 7th February 2020, 05:16
by amalloy
chequers wrote:a. This would be a variable death cost based on how close to levelling up you are. I'm not sure that's a big problem, but it is a little odd


My two cents on this are that there's nothing wrong with a variable cost, but a variable cost with obvious huge player-controlled breakpoints may encourage undesirable behaviour.

On the other hand, maybe some of those behaviours are fun? "I'm at 90% XP and don't want to waste a revive chance by levelling up, so I'll risk diving into Elf now."

Another thing which occurs to me is something you mention in passing, which perhaps deserves further thought. You don't like the current system because it advantages a felid who dies early, compared to one who dies later, and that seems backward. I agree, and would suggest that one of your goals should be finding a system where it's always better, all else equal, to die later rather than sooner. Maybe you'll have to compromise on that goal, but it's a good goal.

Your current proposal does not have this property. A player who dies with -Revive status at 1% remaining will lament, "Ugh, if only I had died earlier so I could work off this penalty faster. This is so unfair, the game is punishing me for playing well!"

Re: Simplification of felid extra-lives mechanics

PostPosted: Friday, 7th February 2020, 12:49
by damerell
amalloy wrote:Another thing which occurs to me is something you mention in passing, which perhaps deserves further thought. You don't like the current system because it advantages a felid who dies early, compared to one who dies later, and that seems backward. I agree, and would suggest that one of your goals should be finding a system where it's always better, all else equal, to die later rather than sooner. Maybe you'll have to compromise on that goal, but it's a good goal.


I'm not sure it's an achievable goal. It seems to me that if kitties continue to gain lives every 3 levels, and kitties don't have access to all their earned lives at once, and gaining access to an earned life is in some way kicked off by dying - and all these things are true of Psymania's proposal - then it's necessarily the case that dying later will sometimes be worse than dying earlier.

Psymania's proposal also seems to me to have the downside that mostly it represents increased access to lives, but with the potential to make some exasperating situations (stomped twice by the same unique without being able to get off the level) even more exasperating.

If we accept that goal is unachievable and the objective is just to simplify the lives mechanic, what about the following; kitty lives work just as they do now, except that getting access to an earned life is just XP-gated (requiring about a level of XP) rather than hanging on this slightly inobvious mechanism of reaching an XP level you never reached before (which can represent widely variable difficulty in getting access to that earned life)? I'd be interested to know if Psymania would regard that as an improvement.

Re: Simplification of felid extra-lives mechanics

PostPosted: Friday, 7th February 2020, 19:56
by Psymania
Thanks for all the feedback!

chequers wrote:Here's one idea: when you die, your progress to the next XL is set to 0%. You need to gain an XL to lose the NoRevive status.
a. This would be a variable death cost based on how close to leveling up you are. I'm not sure that's a big problem, but it is a little odd


Interesting idea. I'm not sure how I feel about the variable-cost death either. When I first read the idea, that was the first facet of it that I noticed, and my first instinct was "No." But the more I think about it, the more mixed my thoughts become. More on that in response to the following comment:

amalloy wrote:My two cents on this are that there's nothing wrong with a variable cost, but a variable cost with obvious huge player-controlled breakpoints may encourage undesirable behaviour.

On the other hand, maybe some of those behaviours are fun? "I'm at 90% XP and don't want to waste a revive chance by levelling up, so I'll risk diving into Elf now."


With this system, if you're at 90% XP and aren't in NoRevive, taking a larger gamble than you normally would is a two-sided coin. In one regard it's a good idea because, as amalloy points out, one of your chances to revive is certainly (well, at least hopefully) going to go unused if you don't take the gamble. On the other hand, there's a lot at stake in terms of your progress to the next level-up. If you *do* get killed, you've lost that 90%! (*And*, besides that, you must progress through all of it again *without* dying.)

Let's look at the same analysis on taking a risk when you're at *low* progress toward next level and aren't in NoRevive. It's a bad idea in the regard that you've got a lot of time left for your current revival chance to apply, and you don't want to blow that. On the other hand, it's a good idea in the regard that you haven't got a whole lot of XP to lose by dying. So, maybe the benefits and risks do a good job of canceling each other out? Taking a gamble is either good because you haven't got much XP to lose, and also bad because you're throwing away a revival chance early, *OR* it's good because you're about to lose a revival chance, and also bad because you'd be losing a lot of XP if you die.

It should be noted that in saying all this, I am inferring and assuming that chequers' proposal involves ditching the one-XL loss of the current system, and merely resetting the XP progress to 0% at the *same* XL. Otherwise you have quite a lot to lose in both scenarios -- an XL lost *and* 0% progress back towards the XL you had *already* obtained. chequers, can you confirm or correct my interpretation of what you're saying?

chequers wrote:An alternative implementation: never remove NoRevive once you die at XL27.


Not sure how I feel about this one, but also not sure how much it matters. How long do felids typically get played past maxing out their XL? Are there a lot of felids running around in Pan, Hell, and Tomb? I don't know -- I only noticed my gripes with the system because I've spent a bit of time just trying to get my first rune with a felid. :)

chequers wrote:Example proposal: when you die, you ALWAYS revive unless you are in NoRevive state. When you respawn you gain NoRevive and lose it when you level up. (Variant: reset to 0% XL progress on death as per above)


That's interesting too. Just do away with the lives counter and have revival solely based on when you last died. I'm curious what other people think about that. Not sure what I think about losing it when you level up / resetting level progress. I'm still fond of the idea of having an XP requirement calculated to do away with it, like stat/skill drain. Regarding the player's need to know how long it will be until it goes away, what about a percentage counter, similar to the one towards the next level? i.e. you come back from death at "NoRevive:0%" and when you've gotten half the XP the game has decided you need before it's lifted, then you're at "NoRevive:50%", etc. Or is this getting too messy?

amalloy wrote:You don't like the current system because it advantages a felid who dies early, compared to one who dies later, and that seems backward. I agree, and would suggest that one of your goals should be finding a system where it's always better, all else equal, to die later rather than sooner. Maybe you'll have to compromise on that goal, but it's a good goal.


That's true to a degree, but there's another facet to that. My goal is *either* to "fix" that "backwardsness"... *or* alternatively to make it clearer and more straightforward for the player why and how the privilege of reviving is throttled. If the idea is to disallow too many quick-succession deaths (for example, maybe 3 deaths with a lot of XLs and time between them is more "forgivable" than 2 deaths to the same enemy five minutes apart), then the current system isn't so unfair after all, but my proposal still makes it much simpler and easier to understand: the rule is that you can't die and revive multiple times too quickly, and so, straightforwardly, there is a condition for some time after reviving that prevents you from reviving.

damerell wrote:Psymania's proposal also seems to me to have the downside that mostly it represents increased access to lives, but with the potential to make some exasperating situations (stomped twice by the same unique without being able to get off the level) even more exasperating.


That scenario is only "more" exasperating than with the current system if, with the current system, you have been playing wisely+fortunately enough to have both of your allowed 2 extra lives in hand before the first kill by said unique. If you only have 1 (let alone zero), two kills from the same unique in a short span of time *already* results in game-over. So my proposal doesn't make that situation very much more punishing, IMO.

damerell wrote:If we accept that goal is unachievable and the objective is just to simplify the lives mechanic, what about the following; kitty lives work just as they do now, except that getting access to an earned life is just XP-gated (requiring about a level of XP) rather than hanging on this slightly inobvious mechanism of reaching an XP level you never reached before (which can represent widely variable difficulty in getting access to that earned life)? I'd be interested to know if Psymania would regard that as an improvement.


I *would* regard that as a *small* improvement -- it would take away the confusion about how to get what's supposed to be coming to you. It doesn't completely do away with the "Hey, why is my number of extra lives available capped? That means I'm punished for dying long after reaching the cap instead of dying right when I reach the cap" factor, though.

Re: Simplification of felid extra-lives mechanics

PostPosted: Saturday, 8th February 2020, 03:02
by duvessa
An issue with restoring your revive upon leveling up, whether you take away the XP progress or not, is that each XL is more expensive than the last. This means you're incentivized to keep your XL low, so that you can get your revive back faster if you die.

Re: Simplification of felid extra-lives mechanics

PostPosted: Saturday, 8th February 2020, 12:48
by damerell
Psymania wrote:It doesn't completely do away with the "Hey, why is my number of extra lives available capped? That means I'm punished for dying long after reaching the cap instead of dying right when I reach the cap" factor, though.

I think what I'm getting at is that that factor is a specific case of the general problem "sometimes you are punished for dying later rather than earlier", which your proposal does not eliminate.

Re: Simplification of felid extra-lives mechanics

PostPosted: Saturday, 8th February 2020, 18:13
by sanka
Maybe I misunderstand something in the OP. I did not see that the required XP to restoring revive is necessarily tied to the character XP. A better solution would be to simply base it on the number of previous deaths: with 0 deaths it is cheap, with 8 deaths it is expensive. So it is clear that not dying is always better than dying, and there is no incentive to keep your XP low, etc.

Re: Simplification of felid extra-lives mechanics

PostPosted: Saturday, 8th February 2020, 18:23
by petercordia
sanka wrote:Maybe I misunderstand something in the OP. I did not see that the required XP to restoring revive is necessarily tied to the character XP. A better solution would be to simply base it on the number of previous deaths: with 0 deaths it is cheap, with 8 deaths it is expensive. So it is clear that not dying is always better than dying, and there is no incentive to keep your XP low, etc.


I agree, this would be a neat solution.
It would allow you to keep being able to have 2 lives.
There's a slight danger that it would feel unfair if you don't know when you're going to get your next life, but as long as it is clear you'll earn a new live within 3XL I think it'll be ok.

Re: Simplification of felid extra-lives mechanics

PostPosted: Sunday, 9th February 2020, 04:53
by damerell
sanka wrote:Maybe I misunderstand something in the OP. I did not see that the required XP to restoring revive is necessarily tied to the character XP. A better solution would be to simply base it on the number of previous deaths: with 0 deaths it is cheap, with 8 deaths it is expensive. So it is clear that not dying is always better than dying

That's not clear. Two deaths in sufficiently quick succession will still end the game; you would be better off if you had died more often, but your deaths were more evenly spaced.

(That's not to reject this proposal, since unless I am mistaken, every proposal here still has the characteristic that sometimes it's better to die more often or earlier.)

Re: Simplification of felid extra-lives mechanics

PostPosted: Sunday, 9th February 2020, 13:48
by sanka
damerell: I do not really get this logic. How is dying more often makes it less likely to die in quick succession? That is, of course you can permanently die with two deaths or live with 8 evenly spaced deaths, but if you actually died earlier your chances to permanently die (by two quick deaths) are increased compared to not dying earlier at all.

Re: Simplification of felid extra-lives mechanics

PostPosted: Sunday, 9th February 2020, 19:52
by Psymania
duvessa wrote:An issue with restoring your revive upon leveling up, whether you take away the XP progress or not, is that each XL is more expensive than the last. This means you're incentivized to keep your XL low, so that you can get your revive back faster if you die.

I'm not sure whether I agree that that's much of an incentive to keep your XL low. A low XL might mean a faster revive, but it seems to me that it also means a weak character -- indeed, relative to your environment, weaker and weaker as you progress into more and more dangerous areas -- who will have more and more trouble progressing as the dangers ramp up. Ultimately the goal is to win. Can a catto who's trying *not* to level up and get stronger possibly make it to the Orb, let alone escape with it?

At the very least, though, I do think it means that you're incentivized to take bigger gambles earlier on, because dying earlier is, indeed, less costly than dying later. So ultimately I agree with duvessa's point and I don't think I like the idea of an XL gain being what restores access to revival.

damerell wrote:I think what I'm getting at is that that factor is a specific case of the general problem "sometimes you are punished for dying later rather than earlier", which your proposal does not eliminate.

That's true. In thinking about this issue, though, I asked myself "Why have the cap at all? If the cap on the number of extra lives were simply not there in the first place, it would solve the problem of a later death sometimes being more costly than an earlier death." And my self's answer was "It seems like it must be to prohibit getting away with multiple deaths in quick succession, which seems like poor playing, even as a cat." Then I thought, "Well, okay, that makes sense, but could we at least have a simpler and more straightforward way of prohibiting that, instead of this nonsense where you can only have 2 extra lives on hand at a time and are sometimes 'owed' extra lives that you were supposed to have earned already?" And that's how I arrived at my proposal. So, from my perspective, the goal ended up being not *necessarily* to eliminate the "sometimes you are punished more for dying later than for dying earlier" problem, but at least to increase the simplicity and clarity of the prohibition against getting away with dying multiple times in quick succession.

sanka wrote:A better solution would be to simply base it on the number of previous deaths: with 0 deaths it is cheap, with 8 deaths it is expensive. So it is clear that not dying is always better than dying, and there is no incentive to keep your XP low, etc.

This makes me want to say, why not just give all extra lives at the beginning, and do away with everything else? Why not just have cats start with 8 extra lives (for 9 total, hearkening of course to the idea that cats have 9 lives), and you can use one of them any time you need to? Dying then does indeed become more and more expensive as you progress through them, in the sense that if you have 8 left, then dying only uses 1/8 of your supply, if you have 3 left, dying uses 1/3 of your supply, and if you have none left, dying is game over.

I assume (please correct me if I'm wrong) the reasons for not doing it this way are that 1) It would simply be too strong of a buff, and 2) It allows, again, for dying multiple times in quick succession, which seems to me to be what the current system tries, in a very complicated and roundabout way, to prohibit.

Re: Simplification of felid extra-lives mechanics

PostPosted: Monday, 10th February 2020, 00:41
by Sprucery
Psymania wrote:This makes me want to say, why not just give all extra lives at the beginning, and do away with everything else? Why not just have cats start with 8 extra lives (for 9 total, hearkening of course to the idea that cats have 9 lives), and you can use one of them any time you need to?

I agree, as I posted on 23 Dec 2014 in the thread "If I were asked to redesign felids...":

...I'd give them 9 lives straight up. No xp loss when losing an extra life but also no teleport. Revival would happen on the same square as death and with first action guaranteed.

Also, I would disallow wands again.

Re: Simplification of felid extra-lives mechanics

PostPosted: Monday, 10th February 2020, 10:56
by damerell
sanka wrote:damerell: I do not really get this logic. How is dying more often makes it less likely to die in quick succession? That is, of course you can permanently die with two deaths or live with 8 evenly spaced deaths, but if you actually died earlier your chances to permanently die (by two quick deaths) are increased compared to not dying earlier at all.

I didn't say it makes it less likely; I just said your proposal has the unwanted characteristic that you can be punished for dying later rather than earlier (and indeed that someone can be better off after having died both earlier and more often).

Re: Simplification of felid extra-lives mechanics

PostPosted: Monday, 10th February 2020, 11:03
by damerell
Psymania wrote:That's true. In thinking about this issue, though, I asked myself "Why have the cap at all? If the cap on the number of extra lives were simply not there in the first place, it would solve the problem of a later death sometimes being more costly than an earlier death." And my self's answer was "It seems like it must be to prohibit getting away with multiple deaths in quick succession, which seems like poor playing, even as a cat." Then I thought, "Well, okay, that makes sense, but could we at least have a simpler and more straightforward way of prohibiting that, instead of this nonsense where you can only have 2 extra lives on hand at a time and are sometimes 'owed' extra lives that you were supposed to have earned already?"

Except, I'm afraid, your proposal _does_ have that nonsense, or something very akin to it - because when I'm in the NoRevive state but have at least one earned life, I am effectively "owed" an extra life which I'm not allowed to use just yet even though I earned it. The terminology is different but the effect is the same - I earned the life but it can't do me any good.

Here's a more radical proposal. No restriction on number of usable lives. Earn lives at XL 4, 7, 10, and whenever you get a rune.

Re: Simplification of felid extra-lives mechanics

PostPosted: Monday, 10th February 2020, 19:49
by Psymania
Sprucery wrote:Also, I would disallow wands again.

Ouch! Wands have *really* helped my cattos out in a lot of situations...

damerell wrote:Except, I'm afraid, your proposal _does_ have that nonsense, or something very akin to it - because when I'm in the NoRevive state but have at least one earned life, I am effectively "owed" an extra life which I'm not allowed to use just yet even though I earned it. The terminology is different but the effect is the same - I earned the life but it can't do me any good.

What is sensical and nonsensical is subjective. This complicated system where the number of extra lives is capped at 2, and if you're down to 1 or 0 and you "should" have more but don't because you first arrived at the level that was "supposed" to grant one at a moment when you already possessed 2, then in order to get another one you must reach an XL that you *never* reached before, which means at least 1) progressing back to the XL that you had already attained *and* 2) progressing then to a brand-new XL for you...*takes a breath*...is far more nonsensical in my personal opinion than "When you revive, you get a temporary status during which you can't revive again." I was hoping a fair number of folks would be in agreement.

Re: Simplification of felid extra-lives mechanics

PostPosted: Tuesday, 11th February 2020, 10:17
by petercordia
Your system doesn't have *very complicated rules nonsense*, but it does have *dying later is worse than dying earlier* nonsense. (Which is what I think damerell meant.)

Btw, I think that it is good that dying later is sometimes better than dying earlier, because of you had 9 lives to survive the last 2 levels of Zot it would be an uninteresting chore.
Equally if you started the game with 9 lives and lost most of them pre-lair, you'd basically have lost, and trying to play or the rest of the game would be frustrating. So it's better that the game just tells you "you dead".

Re: Simplification of felid extra-lives mechanics

PostPosted: Tuesday, 11th February 2020, 12:38
by damerell
petercordia wrote:Your system doesn't have *very complicated rules nonsense*, but it does have *dying later is worse than dying earlier* nonsense. (Which is what I think damerell meant.)

Psymania and I are also both on IRC and so have been having this conversation in two places, and they have clarified what they're getting at. I think there are now three gripes we might have with a kitty lives system:

Overly complex and confusing. This is quite subjective, but I think we generally agree the current system is not ideal from this point of view.

Lets you bank many lives which can be used in rapid succession without, in some way, unlocking them. This is a downside to the "rune->life" proposal.

Sometimes it's better to die earlier rather than later. As discussed upthread, it's very hard to get away from this without falling afoul of the previous gripe.

Btw, I think that it is good that dying later is sometimes better than dying earlier, because of you had 9 lives to survive the last 2 levels of Zot it would be an uninteresting chore.

I'm not sure that's quite true - every time you lose one you're losing the max HP and MP, and becoming less happy about your ongoing prospects. We don't worry about a player feeling complacent because they enter Zot with a huge supply of heal wounds or any other useful consumable - they're enjoying a reward for good play (or blind luck, ahem) earlier.

I think we might rexamine the idea that "Sometimes it's better to die earlier rather than later" is a major downside, and that dying earlier represents worse play. (Incidentally, Pysmania's proposal falls foul of it not just in the minor case of two deaths in rapid succession, but for the more obvious case that if you die earlier you consume less of the total XP in the game getting the level back. Of course this isn't a criticism of the proposal because it's just as true in the current system.)

Suppose Alice and Bob take kitties to the Lair. Alice dies on Lair:1. Now, as they work down through the Lair, we would agree Alice is playing worse than Bob - she has died and he has not. But then Bob dies on Lair:6. After that it's not really clear to me that Alice was playing worse - they had much the same level of error, but at different times. As such, perhaps we shouldn't worry about this and either Pysmania's NoRevive proposal or my "gain one level's XP to unlock an earned life" one shouldn't be seen as having this downside.

Re: Simplification of felid extra-lives mechanics

PostPosted: Tuesday, 11th February 2020, 14:16
by Sorcerous
Is there a possibility to make the -NoRevive status tied to a compound of current PC level and a random number with low variance, instead of relegating it to XL progression being dropped to 0% or the like. Instead of using XP to "work off" the status, one could use the HD of slain enemies. In this sense, the status could be lifted by progressing through the game while also being at least nominally linear: dying early would require comparably less HD to neutralise, but the kitty would be less able to do so. Dying in the endgame or extended would require much more HD, but the tools and targets for this would be abundant in comparison to the earlier sections. Stuff in between like O: or E: wouldn't feel to spiky, maybe.

For the sheer lore of it, the felids are stated to be familiars who presumably gained sentience and other capabilities by hanging around witches and their ilk. Why not bring that up into a siphon that feeds off other strange beings (ie dungeon residents) that grants felids the unique power to survive what nobody else could? Just thinking here, but it could make some weird thematic sense while also making the mechanics simple(r).

Re: Simplification of felid extra-lives mechanics

PostPosted: Tuesday, 11th February 2020, 21:43
by chequers
Dying multiple times in quick succession is really unfun from a player perspective, so I think any system integrating NoRevive is good.