Indie Dev

Hello Guest!. Register a free account today to become a member! Once signed in, you'll be able to participate on this site by adding your own topics and posts, sell your games, upload content, as well as connect with other members through your own private inbox!

Ultimate Skill Easy Custom Damage Formula

Arekushisu

Villager
Xy$
0.00
Someone can tell me what did i do wrong ?

variables :
var hittype = 0; (If 0 : 'atk', 'def' and 'pdr' based damages ; else: 'mat', 'mdf' and 'mdr' based dmg)

var mindmg = 10; (base damage for the skill)
var maxdmg = 20; (damage range)
var docri = 6; (critical base damage bonus)


var minheal = 0; (base heal ammount)
var maxheal = 0; (heal range ammount)
car criheal = 0; (critical heal ammount)

var paminus = 3; (How many Mana Points will be removed by the skill to the enemy)

Skill TAG :

<damage formula>

var hittype = 0;

var mindmg = 10;
var maxdmg = 20;
var docri = 6;

var minheal = 0;
var maxheal = 0;
car criheal = 0;

var paminus = 3;

if (target.isActor() === user.isActor()) {
value = minheal + Math.random(maxheal-minheal+1);
if (target.result().critical) {
value = criheal;
}
value *= 1 + a.mat/100;
value += a.pha;
if (value < 0) {
value = 0;
}
value = -1 * Math.abs(value);
} else {
value = mindmg + Math.random(maxdmg-mindmg+1);
if (target.result().critical) {
value += docri;
}
if (hittype = 0) {
value *= 1 + a.atk/100;
value += a.def - b.pdr;
} else {
value *= 1 + a.mat/100;
value += a.mdf - b.mdr;
}
if (target.result().critical) {
value += a.cnt - b.cev;
}
if (value < 0) {
value = 0;
}
}

if (paminus > 0) {
var malus = 0;
var ret = a.mev;
var esc = b.mrf;
var items = [];
for (var i = 1; i <= paminus; i++) {
var tenta = 50*(ret/esc)*(b.mp/b.mmp);
tenta = Math.max(10, Math.min(90, tenta));
var rndm = Math.randomInt(100)+1;
if(rndm < tenta) {
malus += 1;
}
items.push(i);
}
b.gainMp(-malus);
}

</damage formula>
 
Top