yeelp / Scaling-Feast

A simple, balanced way to increase your maximum hunger in Minecraft over the course of a world.
MIT License
0 stars 1 forks source link

[Suggestion] Configurable damage taken if the Starvation Loss Frequency reaches the cap. #103

Closed SonicX8000 closed 3 years ago

SonicX8000 commented 3 years ago

I was wondering if after taking oh-so-much damage via starving that you will take an increased amount of damage when you take damage after reaching the Starvation Loss Frequency Cap.

This idea came up mainly since Botania's Ring of Odin item prevents the player from taking starve damage but you can still lose max hunger if you let the Starvation Loss Frequency reach the cap. Something like...

If below the SLF cap... damage is just like regular starve damage. 1, 1, 1, 1, 1...

If at the SLF cap & config increases the damage by +1 each time you take damage... 2, 3, 4, 5, 6...

If at the SLF cap & config increases the damage by x2 each time you take damage... 2, 4, 8, 16, 32...

If at the SLF cap & config is set to deal 9999999 damage for being at the cap each time you take damage... meaning that you instantly die for reaching the cap, unless you have items that can revive you. 9999999, 9999999, 9999999...

This damage would reset once you recovered at least one hunger point. One more thing to mention... is if it was possible to apply a custom damage source like some sort of super-starve damage for taking the increased damage if SLF was at the cap, just so that the Ring of Odin or some other mod item made you immune to the starve damage source.

yeelp commented 3 years ago

So this is an interesting idea. The scaling starvation damage sounds cool, so I'll see what's possible there. However, for the custom damage source, while it is possible, this is a blanket solution. Any and all mods that hook into AppleCore for managing starve damage are effectively bypassed and I could potentially see that breaking some mods in unintended ways (because you're still taking starve damage, but nothing else is really notified of that).

What I could do is set any bonus starvation damage to be a different damage source. So the base amount is still inflicted and can be blocked/reduced normally but the bonus damage amount is applied differently and thus can't be blocked by conventional ways. This does work, but does sort of defeat the point of using AppleCore's StarveEvent (Or whatever the event is called when starvation happens). I could make a config bonusStarveDamageUnblockable or something, which does give the best of both worlds there, so I'll probably go with that.

Sorry, just thinking out loud here