v0.7.1b: various hero balance changes

This commit is contained in:
Evan Debenham 2018-12-29 20:08:46 -05:00
parent fe2025e334
commit 4737fb60b0
6 changed files with 10 additions and 8 deletions

View File

@ -554,7 +554,7 @@ public class Hero extends Char {
}
if( subClass == HeroSubClass.WARDEN && Dungeon.level.map[pos] == Terrain.FURROWED_GRASS){
Buff.affect(this, Barkskin.class).set( lvl, 1 );
Buff.affect(this, Barkskin.class).set( lvl + 5, 1 );
}
return actResult;

View File

@ -107,7 +107,7 @@ public class BrokenSeal extends Item {
@Override
public synchronized boolean act() {
if (shielding() < maxShield()) {
partialShield += 1/(35*Math.pow(0.885f, (maxShield() - shielding() - 1)));
partialShield += 1/(35*Math.pow(0.9f, (maxShield() - shielding() - 1)));
}
while (partialShield >= 1){

View File

@ -179,8 +179,9 @@ public class CloakOfShadows extends Artifact {
if (charge < chargeCap) {
LockedFloor lock = target.buff(LockedFloor.class);
if (!stealthed && (lock == null || lock.regenOn())) {
float turnsToCharge = (50 - (chargeCap - charge));
if (level() > 7) turnsToCharge -= 10*(level() - 7)/3f;
float missing = (chargeCap - charge);
if (level() > 7) missing += 5*(level() - 7)/3f;
float turnsToCharge = (45 - missing);
partialCharge += (1f / turnsToCharge);
}

View File

@ -145,7 +145,8 @@ public abstract class Wand extends Item {
protected void processSoulMark(Char target, int chargesUsed){
if (target != Dungeon.hero &&
Dungeon.hero.subClass == HeroSubClass.WARLOCK &&
Random.Float() > Math.pow(0.9f, (level()*chargesUsed)+1)){
//standard 1 - 0.92^x chance, plus 7%. Starts at 15%
Random.Float() > (Math.pow(0.92f, (level()*chargesUsed)+1) - 0.7f)){
SoulMark.prolong(target, SoulMark.class, SoulMark.DURATION + level());
}
}

View File

@ -126,12 +126,12 @@ public class SpiritBow extends Weapon {
@Override
public int min(int lvl) {
return 1 + Dungeon.hero.lvl/6 + RingOfSharpshooting.levelDamageBonus(Dungeon.hero);
return 1 + Dungeon.hero.lvl/5 + RingOfSharpshooting.levelDamageBonus(Dungeon.hero);
}
@Override
public int max(int lvl) {
return 6 + Dungeon.hero.lvl/3 + 2*RingOfSharpshooting.levelDamageBonus(Dungeon.hero);
return 6 + (int)(Dungeon.hero.lvl/2.5f) + 2*RingOfSharpshooting.levelDamageBonus(Dungeon.hero);
}
private int targetPos;

View File

@ -36,7 +36,7 @@ public class Gloves extends MeleeWeapon {
@Override
public int max(int lvl) {
return (int)(2.5f*(tier+1)) + //5 base, down from 10
return (int)(3f*(tier+1)) + //6 base, down from 10
lvl*tier; //+1 per level, down from +2
}