Feature - Implemented Make "burn" spend MP buffing even when buffs >1000 turns

Xande1

Member
I get why the "HP/MP usage" buff recasting option stops recasting buffs when all effects are over 1000 turns, and while that behavior isn't always what I want, it's what I want most of the time, so I'm happy with it. On the other hand, when I issue an explicit "burn" command in the CLI, I'm always trying to get rid of MP for some reason, and it would be nice if mafia burned the mana, even if it thinks I already have plenty of turns of buffs.

For "burn *" it's not a big deal, as I can always pick a random effect, and use "maxcast". But when I want to burn a specific amount of mp, it means I have to do math, and I have been bitten more than once by a mental arithmetic error, or a typo while trying to use up X mp (or all but X mp). Which are things "burn" should be taking care of for me.

On the other hand, if the internal logic of the automatic MP usage and burn commands are sufficiently entangled, it may be more work to implement this than it's worth. I have no idea what the internals look like, but I thought I'd at least make the suggestion. Thanks for your attention.

EDIT: I realize that the title should say "buffs > maxManaBurn", but I didn't think through fully when I was writing it, and now there's no way to edit the title. I apologize for that.
 
Last edited:

Xande1

Member
The answer is because changing the max affects both auto-rebuffing and the burn command. I want the auto-rebuffing to stop when I'm at ~1000 turns of buffs (or whatever maxManaBurn is set to), but I want an explicit burn command to do what I tell it to, regardless of how many turns of buffs I have.

Also, I think the default behavior is unexpected for most people. For auto-rebuffing to stop when you have "enough" turns of buffs makes a certain amount of sense. But for an explicit "use up my MP" command to do nothing when your buff duration is high is rather surprising.

A work-around would be to set something like the following:
Code:
alias myburn => ashq set_property("maxManaBurn", "999999"); cli_execute("burn %%"); set_property("maxManaBurn", "1000");
Which gives the desired behavior via the myburn command. It's rather kludgy, and makes another place I have to change if I want a different maxManaBurn over the long term, but it works. Also, even with a working alias, I still stand by my claim that changing the behavior of burn makes sense.
 
Last edited:
Also, I think the default behavior is unexpected for most people.

Personally I'd expect burning to work the same way whether automated or manual. Any difference in behaviour would be surprising to me.

Here's an alternative alias that takes account of the property's initial value, and should restore it even if something wacky happens during burning:
Code:
alias myburn => ashq string prop = "maxManaBurn"; int old = to_int(get_property(prop)); set_property(prop,999999); try cli_execute("burn %%"); finally set_property(prop,old);
 

lostcalpolydude

Developer
Staff member
I think it's weird to care so much about wasted MP when you're already generating enough MP to get all your buffs to 1000 turns.

For me personally, I want all my buffs to run out as I finish using turns because half of the PvP seasons have a purity mini, so I have a hard time having any interest in how this works...
 

Bale

Minion
Xande1, are you aware that you override burn limits for different skills independently? I'm not sure what problem you are trying to fix, but perhaps that is the solution.

There's a script to let you set your burn limits from the relay browser HERE.
 

Xande1

Member
Bale, that's not the solution I had in mind, but it's better than what I had in mind, so consider me satisfied. Thanks very much. (It also incidentally solves my problem of "how do I blacklist Frigidalmatian from buff extension?" that I was never worried enough about to dig for the answer to.)

One question, though (I can't experiment since I'm in an AWoL run at the moment): Pyromania seems to indicate that the percentages can only have the range 0-100. Is that true? Hopefully not, as it would be really convenient (and more intuitive) to set a single buff to 1000%, rather than needing to raise the global limit by a factor of 10, and then set all other buffs to 10%.
 

Bale

Minion
Unfortunately the commit message implies it won't work that way...

r8871

Added some hidden prefs to fine-tune the mana burning process:
"skillBurnXXXX" (where XXXX is the skill number) sets the priority of this
skill: -100 or lower disables it for extension, numbers from -99 to 0 enable
it for extension up to (N+100)% of the burn limit, normally 1000+turns
remaining. The value is offset like this so that missing prefs read as 100%
by default. All previously hard-coded unextendable buffs (like combat rate
modifiers) now simply have a default skillBurnX of -100, so they can be
overridden if desired. Values greater than 0 are reserved for possible
future use to indicate that the skill should be auto-cast if there's nothing
else to spend burned MP on.

Please note that very last sentence. Jason suggested exactly the feature that you desire. I'd recommend that you request that feature and if it is granted, then Jason's ancient suggestion would finally be actualized.
 
Top