Related with topic Is it possible to be immune to Decrease Agility?
New Bonuses
bonus2 bResSC,sc,n; Adds a n/100% relative tolerance to status change specified by SC constants.
bonus2 bResSC2,sc,n; Adds a n/100% absolute tolerance to status change specified by SC constants.
bonus2 bResSC,sc,n;
This rate adds the 'relative' rate, only reduce from current player's resistance, not as total resistance rate. Example player's total resistance is 5000 (50%), so if it's added by 5000 (50%) from this bonus, now the total resistance is 2500 (25%).
As note, bonus bResEff works with same behavior, as relative resistance rate. This thing that makes you think the bonus bResEff is buggy.
bonus2 bResSC2,sc,n;
This is maybe the mostly bonus you wanted. Unlike the 'relative' rate, this 'absolute' rate adds total resistance. For same example, player has 5000 (50%) resistance then added by 5000 (50%) from the bonus, player now has 10000 (100%) resistance in total.
How to use as item bonus
2115,Valkyrja's_Shield,Valkyrja's Shield,4,30000,,500,,80,,1,0xFFFFFFFE,63,2,32,,65,1,4,{ bonus2 bResSC2,SC_DECREASEAGI,5000; bonus2 bResSC,SC_DECREASEAGI,2500; bonus2 bSubEle,Ele_Water,20; bonus2 bSubEle,Ele_Fire,20; bonus2 bSubEle,Ele_Dark,20; bonus2 bSubEle,Ele_Undead,20; bonus bMdef,5; },{},{}
2357,Valkyrie_Armor,Valkyrian Armor,4,0,,2800,,55,,1,0xFFFFFFFE,18,2,16,,1,1,0,{ bonus2 bResSC2,SC_AETERNA,5000; bonus2 bResSC,SC_AETERNA,2500; bonus bAllStats,1; bonus bUnbreakableArmor,1; if(BaseClass==Job_Mage||BaseClass==Job_Archer||BaseClass==Job_Acolyte) bonus2 bResEff,Eff_Silence,5000; else if(BaseClass==Job_Swordman||BaseClass==Job_Merchant||BaseClass==Job_Thief) bonus2 bResEff,Eff_Stun,5000; },{},{}
2421,Valkyrie_Shoes,Valkyrian Shoes,4,0,,500,,13,,1,0xFFFFFFFE,18,2,64,,1,1,0,{ bonus2 bResSC2,SC_QUAGMIRE,10000; bonus2 bResSC,SC_QUAGMIRE,2500; bonus bUnbreakableShoes,1; if(BaseClass==Job_Mage||BaseClass==Job_Archer||BaseClass==Job_Acolyte) bonus bMaxHP,(BaseLevel*5); else if(BaseClass==Job_Swordman||BaseClass==Job_Merchant||BaseClass==Job_Thief) bonus bMaxSP,(JobLevel*2); },{},{}
Links
Branch
Just download from this pull request's link or add .diff so you can get the diff file