Hey everyone, after a bit longer of a wait that I initially planned, Shattered Pixel Dungeon v2.5.0 is now ready for beta! In this post I’m going to share some more of the new things coming in this update!

Read the Full Post Here

  • Mr. Semi@lemmy.world
    link
    fedilink
    English
    arrow-up
    0
    ·
    edit-2
    3 months ago

    Chalice does NOT provide its own separate healing, except under artifact recharging buff.

    What it does is reduce the interval between natural regeneration that occurs when not starving.

    The salt cube acts in the opposite manner, increasing the delay or eliminating it entirely. Unless there’s new code to change the function of the chalice of blood, the artifact and trinket act in opposition to each other, and the question is if one overrides the other.

    Here’s the relevant code for how health passive non-starving regeneration works:

    private static final float
    REGENERATION_DELAY = 10;
    
    @Override
    public boolean act() {
    	if (target.isAlive()) {
    
    		if (target.HP < regencap() && !((Hero)target).isStarving()) {
    			if (regenOn()) {
    				target.HP += 1;
    

    Further down is where the chalice takes effect:

    ChaliceOfBlood.chaliceRegen regenBuff = Dungeon.hero.buff( ChaliceOfBlood.chaliceRegen.class);
    
    		float delay = REGENERATION_DELAY;
    		if (regenBuff != null && target.buff(MagicImmune.class) == null) {
    			if (regenBuff.isCursed()) {
    				delay *= 1.5f;
    			} else {
    				//15% boost at +0, scaling to a 500% boost at +10
    				delay -= 1.33f + regenBuff.itemLevel()*0.667f;
    

    You can see the chalice just modifies the passive regen delay directly. The code for extra healing from recharging is separate.