mirror of
https://github.com/bitburner-official/bitburner-src.git
synced 2024-12-19 12:45:45 +01:00
made skill calculation smoother
This commit is contained in:
parent
f5be9e5da7
commit
cab8dbf5d9
16
src/Gang.js
16
src/Gang.js
@ -336,17 +336,17 @@ function GangMember(name) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
//Same formula for Player
|
//Same formula for Player
|
||||||
GangMember.prototype.calculateSkill = function(exp) {
|
GangMember.prototype.calculateSkill = function(exp, mult=1) {
|
||||||
return Math.max(Math.floor(32 * Math.log(exp + 534.5) - 200), 1);
|
return Math.max(Math.floor(mult*(32 * Math.log(exp + 534.5) - 200)), 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
GangMember.prototype.updateSkillLevels = function() {
|
GangMember.prototype.updateSkillLevels = function() {
|
||||||
this.hack = Math.floor(this.calculateSkill(this.hack_exp) * this.hack_mult);
|
this.hack = this.calculateSkill(this.hack_exp, this.hack_mult);
|
||||||
this.str = Math.floor(this.calculateSkill(this.str_exp) * this.str_mult);
|
this.str = this.calculateSkill(this.str_exp, this.str_mult);
|
||||||
this.def = Math.floor(this.calculateSkill(this.def_exp) * this.def_mult);
|
this.def = this.calculateSkill(this.def_exp, this.def_mult);
|
||||||
this.dex = Math.floor(this.calculateSkill(this.dex_exp) * this.dex_mult);
|
this.dex = this.calculateSkill(this.dex_exp, this.dex_mult);
|
||||||
this.agi = Math.floor(this.calculateSkill(this.agi_exp) * this.agi_mult);
|
this.agi = this.calculateSkill(this.agi_exp, this.agi_mult);
|
||||||
this.cha = Math.floor(this.calculateSkill(this.cha_exp) * this.cha_mult);
|
this.cha = this.calculateSkill(this.cha_exp, this.cha_mult);
|
||||||
}
|
}
|
||||||
|
|
||||||
GangMember.prototype.calculatePower = function() {
|
GangMember.prototype.calculatePower = function() {
|
||||||
|
@ -422,17 +422,17 @@ PlayerObject.prototype.receiveInvite = function(factionName) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
//Calculates skill level based on experience. The same formula will be used for every skill
|
//Calculates skill level based on experience. The same formula will be used for every skill
|
||||||
PlayerObject.prototype.calculateSkill = function(exp) {
|
PlayerObject.prototype.calculateSkill = function(exp, mult=1) {
|
||||||
return Math.max(Math.floor(32 * Math.log(exp + 534.5) - 200), 1);
|
return Math.max(Math.floor(mult*(32 * Math.log(exp + 534.5) - 200)), 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
PlayerObject.prototype.updateSkillLevels = function() {
|
PlayerObject.prototype.updateSkillLevels = function() {
|
||||||
this.hacking_skill = Math.max(1, Math.floor(this.calculateSkill(this.hacking_exp) * this.hacking_mult * BitNodeMultipliers.HackingLevelMultiplier));
|
this.hacking_skill = Math.max(1, Math.floor(this.calculateSkill(this.hacking_exp, this.hacking_mult) * BitNodeMultipliers.HackingLevelMultiplier));
|
||||||
this.strength = Math.floor(this.calculateSkill(this.strength_exp) * this.strength_mult);
|
this.strength = this.calculateSkill(this.strength_exp, this.strength_mult);
|
||||||
this.defense = Math.floor(this.calculateSkill(this.defense_exp) * this.defense_mult);
|
this.defense = this.calculateSkill(this.defense_exp, this.defense_mult);
|
||||||
this.dexterity = Math.floor(this.calculateSkill(this.dexterity_exp) * this.dexterity_mult);
|
this.dexterity = this.calculateSkill(this.dexterity_exp, this.dexterity_mult);
|
||||||
this.agility = Math.floor(this.calculateSkill(this.agility_exp) * this.agility_mult);
|
this.agility = this.calculateSkill(this.agility_exp, this.agility_mult);
|
||||||
this.charisma = Math.floor(this.calculateSkill(this.charisma_exp) * this.charisma_mult);
|
this.charisma = this.calculateSkill(this.charisma_exp, this.charisma_mult);
|
||||||
|
|
||||||
if (this.intelligence > 0) {
|
if (this.intelligence > 0) {
|
||||||
this.intelligence = Math.floor(this.calculateSkill(this.intelligence_exp));
|
this.intelligence = Math.floor(this.calculateSkill(this.intelligence_exp));
|
||||||
|
Loading…
Reference in New Issue
Block a user