v0.5.0: many balance changes

This commit is contained in:
Evan Debenham 2017-02-04 13:10:03 -05:00
parent 2f0f4fb0fa
commit 040607c927
8 changed files with 14 additions and 14 deletions

View File

@ -962,7 +962,7 @@ public class Hero extends Char {
//TODO improve this when I have proper damage source logic
if (belongings.armor != null && belongings.armor.hasGlyph(AntiMagic.class)
&& RingOfElements.FULL.contains(src.getClass())){
dmg -= Random.NormalIntRange(belongings.armor.DRMin(), belongings.armor.DRMax())/2;
dmg -= Random.NormalIntRange(belongings.armor.DRMin(), belongings.armor.DRMax())/3;
}
if (subClass == HeroSubClass.BERSERKER && berserk == null){

View File

@ -233,7 +233,7 @@ public class Armor extends EquipableItem {
public int DRMin(int lvl){
if (glyph != null && glyph instanceof Stone)
return 2 + 2*lvl;
return 2*lvl;
else
return lvl;
}

View File

@ -42,10 +42,10 @@ public class Entanglement extends Glyph {
int level = Math.max( 0, armor.level() );
if (Random.Int( 3 ) == 0) {
if (Random.Int( 4 ) == 0) {
Buff.prolong( defender, Roots.class, 5 );
Buff.affect( defender, Earthroot.Armor.class ).level( 5 + level );
Buff.affect( defender, Earthroot.Armor.class ).level( 5 + 2*level );
CellEmitter.bottom( defender.pos ).start( EarthParticle.FACTORY, 0.05f, 8 );
Camera.main.shake( 1, 0.4f );

View File

@ -118,7 +118,7 @@ public class Viscosity extends Glyph {
public boolean act() {
if (target.isAlive()) {
int damageThisTick = Math.max(1, damage/10);
int damageThisTick = Math.max(1, (int)(damage*0.15f));
target.damage( damageThisTick, this );
if (target == Dungeon.hero && !target.isAlive()) {

View File

@ -205,7 +205,7 @@ public class DriedRose extends Artifact {
LockedFloor lock = target.buff(LockedFloor.class);
if (charge < chargeCap && !cursed && (lock == null || lock.regenOn())) {
partialCharge += 1/5f; //500 turns to a full charge
partialCharge += 1/4f; //400 turns to a full charge
if (partialCharge > 1){
charge++;
partialCharge--;
@ -376,14 +376,14 @@ public class DriedRose extends Artifact {
@Override
public int damageRoll() {
int lvl = (HT-10)/3;
return Random.NormalIntRange( lvl/2, 5+lvl);
int lvl = (HT-10)/4;
return Random.NormalIntRange( 3+lvl/2, 8+lvl);
}
@Override
public int drRoll() {
//defence is equal to the level of rose.
return Random.NormalIntRange(0, (HT-10)/3);
int lvl = (HT-10)/4;
return Random.NormalIntRange(0, 2+lvl);
}
@Override

View File

@ -72,7 +72,7 @@ public class WandOfFrost extends DamageWand {
if (ch.buff(Chill.class) != null){
//7.5% less damage per turn of chill remaining
float chill = ch.buff(Chill.class).cooldown();
damage = (int)Math.round(damage * Math.pow(0.925f, chill));
damage = (int)Math.round(damage * Math.pow(0.9f, chill));
} else {
ch.sprite.burst( 0xFF99CCFF, level() / 2 + 2 );
}

View File

@ -35,8 +35,8 @@ public class Exhausting extends Weapon.Enchantment {
@Override
public int proc(Weapon weapon, Char attacker, Char defender, int damage ) {
if (attacker == Dungeon.hero && Random.Int(20) == 0) {
Buff.affect(attacker, Weakness.class, Random.Float(5f, 25f));
if (attacker == Dungeon.hero && Random.Int(15) == 0) {
Buff.affect(attacker, Weakness.class, Random.NormalIntRange(5, 20));
}
return damage;

View File

@ -39,6 +39,6 @@ public class Quarterstaff extends MeleeWeapon {
@Override
public int defenseFactor(Hero hero) {
return 2; //2 extra defence
return 3; //3 extra defence
}
}