v0.7.1b: various item balance changes
This commit is contained in:
parent
f840e5b2f0
commit
fe2025e334
|
@ -55,7 +55,7 @@ public class Bleeding extends Buff {
|
|||
level = bundle.getFloat( LEVEL );
|
||||
}
|
||||
|
||||
public void set( int level ) {
|
||||
public void set( float level ) {
|
||||
this.level = Math.max(this.level, level);
|
||||
}
|
||||
|
||||
|
|
|
@ -39,7 +39,7 @@ public class Potential extends Glyph {
|
|||
int level = Math.max( 0, armor.level() );
|
||||
|
||||
if (defender instanceof Hero) {
|
||||
int wands = ((Hero) defender).belongings.charge(0.1f + level*0.05f);
|
||||
int wands = ((Hero) defender).belongings.charge(0.12f + level*0.06f);
|
||||
if (wands > 0) {
|
||||
defender.sprite.centerEmitter().burst(EnergyParticle.FACTORY, wands * (level + 2));
|
||||
}
|
||||
|
|
|
@ -44,8 +44,8 @@ public class Stone extends Armor.Glyph {
|
|||
hitChance = 1f - (evasion/accuracy)/2f;
|
||||
}
|
||||
|
||||
//60% of dodge chance is applied as damage reduction
|
||||
hitChance = (2f + 3f*hitChance)/5f;
|
||||
//75% of dodge chance is applied as damage reduction
|
||||
hitChance = (1f + 3f*hitChance)/4f;
|
||||
|
||||
damage = (int)Math.ceil(damage * hitChance);
|
||||
|
||||
|
|
|
@ -48,9 +48,9 @@ public class RingOfElements extends Ring {
|
|||
|
||||
public String statsInfo() {
|
||||
if (isIdentified()){
|
||||
return Messages.get(this, "stats", new DecimalFormat("#.##").format(100f * (1f - Math.pow(0.875f, soloBonus()))));
|
||||
return Messages.get(this, "stats", new DecimalFormat("#.##").format(100f * (1f - Math.pow(0.84f, soloBonus()))));
|
||||
} else {
|
||||
return Messages.get(this, "typical_stats", new DecimalFormat("#.##").format(12.5f));
|
||||
return Messages.get(this, "typical_stats", new DecimalFormat("#.##").format(16f));
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -77,6 +77,7 @@ public class RingOfElements extends Ring {
|
|||
RESISTS.add( ToxicGas.class );
|
||||
RESISTS.add( Electricity.class );
|
||||
|
||||
//FIXME currently this affects all attacks, not just longranged magic
|
||||
RESISTS.add( Shaman.class );
|
||||
RESISTS.add( Warlock.class );
|
||||
RESISTS.add( Eye.class );
|
||||
|
@ -88,7 +89,7 @@ public class RingOfElements extends Ring {
|
|||
|
||||
for (Class c : RESISTS){
|
||||
if (c.isAssignableFrom(effect)){
|
||||
return (float)Math.pow(0.875, getBonus(target, Resistance.class));
|
||||
return (float)Math.pow(0.84, getBonus(target, Resistance.class));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -30,9 +30,9 @@ public class RingOfEnergy extends Ring {
|
|||
|
||||
public String statsInfo() {
|
||||
if (isIdentified()){
|
||||
return Messages.get(this, "stats", new DecimalFormat("#.##").format(100f * (Math.pow(1.2f, soloBonus()) - 1f)));
|
||||
return Messages.get(this, "stats", new DecimalFormat("#.##").format(100f * (Math.pow(1.25f, soloBonus()) - 1f)));
|
||||
} else {
|
||||
return Messages.get(this, "typical_stats", new DecimalFormat("#.##").format(20f));
|
||||
return Messages.get(this, "typical_stats", new DecimalFormat("#.##").format(25f));
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -42,7 +42,7 @@ public class RingOfEnergy extends Ring {
|
|||
}
|
||||
|
||||
public static float wandChargeMultiplier( Char target ){
|
||||
return (float)Math.pow(1.2, getBonus(target, Energy.class));
|
||||
return (float)Math.pow(1.25, getBonus(target, Energy.class));
|
||||
}
|
||||
|
||||
public class Energy extends RingBuff {
|
||||
|
|
|
@ -40,9 +40,9 @@ public class RingOfWealth extends Ring {
|
|||
|
||||
public String statsInfo() {
|
||||
if (isIdentified()){
|
||||
return Messages.get(this, "stats", new DecimalFormat("#.##").format(100f * (Math.pow(1.15f, soloBonus()) - 1f)));
|
||||
return Messages.get(this, "stats", new DecimalFormat("#.##").format(100f * (Math.pow(1.2f, soloBonus()) - 1f)));
|
||||
} else {
|
||||
return Messages.get(this, "typical_stats", new DecimalFormat("#.##").format(15f));
|
||||
return Messages.get(this, "typical_stats", new DecimalFormat("#.##").format(20f));
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -52,7 +52,7 @@ public class RingOfWealth extends Ring {
|
|||
}
|
||||
|
||||
public static float dropChanceMultiplier( Char target ){
|
||||
return (float)Math.pow(1.15, getBonus(target, Wealth.class));
|
||||
return (float)Math.pow(1.2, getBonus(target, Wealth.class));
|
||||
}
|
||||
|
||||
public static ArrayList<Item> tryRareDrop(Char target, int tries ){
|
||||
|
|
|
@ -53,14 +53,14 @@ public class WandOfFireblast extends DamageWand {
|
|||
collisionProperties = Ballistica.STOP_TERRAIN;
|
||||
}
|
||||
|
||||
//1x/1.5x/2.25x damage
|
||||
//1x/2x/3x damage
|
||||
public int min(int lvl){
|
||||
return (int)Math.round((1+lvl) * Math.pow(1.5f, chargesPerCast()-1));
|
||||
return (1+lvl) * chargesPerCast();
|
||||
}
|
||||
|
||||
//1x/1.5x/2.25x damage
|
||||
//1x/2x/3x damage
|
||||
public int max(int lvl){
|
||||
return (int)Math.round((5+3*lvl) * Math.pow(1.5f, chargesPerCast()-1));
|
||||
return (6+2*lvl) * chargesPerCast();
|
||||
}
|
||||
|
||||
//the actual affected cells
|
||||
|
@ -143,8 +143,8 @@ public class WandOfFireblast extends DamageWand {
|
|||
affectedCells = new HashSet<>();
|
||||
visualCells = new HashSet<>();
|
||||
|
||||
// 4/6/9 distance
|
||||
int maxDist = (int)(4 * Math.pow(1.5,(chargesPerCast()-1)));
|
||||
// 4/6/8 distance
|
||||
int maxDist = 2 + 2*chargesPerCast();
|
||||
int dist = Math.min(bolt.dist, maxDist);
|
||||
|
||||
for (int i = 0; i < PathFinder.CIRCLE8.length; i++){
|
||||
|
|
|
@ -43,7 +43,7 @@ public class Vorpal extends Weapon.Enchantment {
|
|||
|
||||
if (Random.Int( level + 3 ) >= 2) {
|
||||
|
||||
Buff.affect(defender, Bleeding.class).set(damage/4);
|
||||
Buff.affect(defender, Bleeding.class).set(damage/5f);
|
||||
Splash.at( defender.sprite.center(), -PointF.PI / 2, PointF.PI / 6,
|
||||
defender.sprite.blood(), 10 );
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user