Difference between revisions of "User:Caledor92/Sandbox3/doc"

From Dragalia Lost Wiki
Jump to navigation Jump to search
>Caledor92
(Created page with "{{doc/start}} ==Current Items Icon Template Works With== * Adventurer {{Icon|Adventurer|Melsa|size=32px|text=1}} * Wyrmprint {{Icon|Wyrmprint|Flash of Genius|size=32px|text=1}...")
>Caledor92
Line 1: Line 1:
 
{{doc/start}}
 
{{doc/start}}
==Current Items Icon Template Works With==
+
==Current Items User:Caledor92/Sandbox3 Template Works With==
* Adventurer {{Icon|Adventurer|Melsa|size=32px|text=1}}
+
* Adventurer {{User:Caledor92/Sandbox3|Adventurer|Melsa|size=32px|text=1}}
* Wyrmprint {{Icon|Wyrmprint|Flash of Genius|size=32px|text=1}}
+
* Wyrmprint {{User:Caledor92/Sandbox3|Wyrmprint|Flash of Genius|size=32px|text=1}}
* Dragon {{Icon|Dragon|Juggernaut|size=32px|text=1}}
+
* Dragon {{User:Caledor92/Sandbox3|Dragon|Juggernaut|size=32px|text=1}}
* Weapon {{Icon|Weapon|Big Boy|size=32px|text=1}}
+
* Weapon {{User:Caledor92/Sandbox3|Weapon|Big Boy|size=32px|text=1}}
* Material {{Icon|Material|Renown|size=32px|text=1}}
+
* Material {{User:Caledor92/Sandbox3|Material|Renown|size=32px|text=1}}
* Gift {{Icon|Gift|Golden Chalice|size=32px|text=1}}
+
* Gift {{User:Caledor92/Sandbox3|Gift|Golden Chalice|size=32px|text=1}}
* Resource {{Icon|Resource|Mana|size=32px|text=1}}
+
* Resource {{User:Caledor92/Sandbox3|Resource|Mana|size=32px|text=1}}
* Consumable {{Icon|Consumable|Skip Ticket|size=32px|text=1}}
+
* Consumable {{User:Caledor92/Sandbox3|Consumable|Skip Ticket|size=32px|text=1}}
 
* Facility  
 
* Facility  
** {{Icon|Facility|Sweet Retreat|size=32px|text=1}}
+
** {{User:Caledor92/Sandbox3|Facility|Sweet Retreat|size=32px|text=1}}
** {{Icon|Facility|Red Flowers‎|size=32px|text=1}}
+
** {{User:Caledor92/Sandbox3|Facility|Red Flowers‎|size=32px|text=1}}
** {{Icon|Facility|Magma Slime Statue‎|size=32px|text=1}}
+
** {{User:Caledor92/Sandbox3|Facility|Magma Slime Statue‎|size=32px|text=1}}
* Skill {{Icon|Skill|Howling Meteor|size=32px|text=1}}
+
* Skill {{User:Caledor92/Sandbox3|Skill|Howling Meteor|size=32px|text=1}}
* CoAbility {{Icon|CoAbility|Dragon Haste +2% (Co-ability)|size=32px|text=1}}
+
* CoAbility {{User:Caledor92/Sandbox3|CoAbility|Dragon Haste +2% (Co-ability)|size=32px|text=1}}
* Ability {{Icon|Ability|Broken Punisher +20%|size=32px|text=1}}
+
* Ability {{User:Caledor92/Sandbox3|Ability|Broken Punisher +20%|size=32px|text=1}}
* Afflictions {{Icon|Afflictions|Poison|size=32px|text=1}}
+
* Afflictions {{User:Caledor92/Sandbox3|Afflictions|Poison|size=32px|text=1}}
* Condition {{Icon|Condition|Bleeding|size=32px|text=1}}
+
* Condition {{User:Caledor92/Sandbox3|Condition|Bleeding|size=32px|text=1}}
  
 
==Examples==
 
==Examples==
<pre>{{Icon|Adventurer|Lily}}</pre>
+
<pre>{{User:Caledor92/Sandbox3|Adventurer|Lily}}</pre>
{{Icon|Adventurer|Lily}}
+
{{User:Caledor92/Sandbox3|Adventurer|Lily}}
  
<pre>{{Icon|Adventurer|Lily|text=1}}, {{Icon|Adventurer|Lily|text=1}}, {{Icon|Adventurer|Lily|text=1}}</pre>
+
<pre>{{User:Caledor92/Sandbox3|Adventurer|Lily|text=1}}, {{User:Caledor92/Sandbox3|Adventurer|Lily|text=1}}, {{User:Caledor92/Sandbox3|Adventurer|Lily|text=1}}</pre>
{{Icon|Adventurer|Lily|text=1}}, {{Icon|Adventurer|Lily|text=1}}, {{Icon|Adventurer|Lily|text=1}}
+
{{User:Caledor92/Sandbox3|Adventurer|Lily|text=1}}, {{User:Caledor92/Sandbox3|Adventurer|Lily|text=1}}, {{User:Caledor92/Sandbox3|Adventurer|Lily|text=1}}
  
<pre>{{Icon|Adventurer|Lily|size=42px}}</pre>
+
<pre>{{User:Caledor92/Sandbox3|Adventurer|Lily|size=42px}}</pre>
{{Icon|Adventurer|Lily|size=42px}}
+
{{User:Caledor92/Sandbox3|Adventurer|Lily|size=42px}}
  
 
{{doc/end}}
 
{{doc/end}}

Revision as of 12:29, 28 October 2019

50px Documentation

Current Items User:Caledor92/Sandbox3 Template Works With

  • Adventurer <script type="text/javascript">

// Constants const LB_COUNT = ; const MIN_LEVEL = 1; const MAX_LEVEL = 80; const LB_MAX_LEVEL = 100; const MIN_HP = [,,]; const MAX_HP = ; const MIN_STR = [,,]; const MAX_STR = ; const NAT_RARITY = ;;

// Load modules, init, etc. document.addEventListener("DOMContentLoaded", function(event) {

 init();
 calcStats();

});

// Initialize the empty divs with content function init() {

 if (NAT_RARITY == 3) {
   document.getElementById("adv-rarity-input-3").innerHTML = '<input type="radio" value=3 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-3">3★</label>';
   document.getElementById("adv-rarity-input-4").innerHTML = '<input type="radio" value=4 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-4">4★</label>';
 } else if (NAT_RARITY == 4) {
   document.getElementById("adv-rarity-input-4").innerHTML = '<input type="radio" value=4 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-4">4★</label>';
 }
 document.getElementById("adv-rarity-input-5").innerHTML = '<input type="radio" value=5 name="rarity" oninput="calcStats()" checked=1><label for="adv-rarity-input-5">5★</label>';
 if (LB_COUNT > 4) {
   document.getElementById("adv-rarity-input-s").innerHTML = '<input type="radio" value=s name="rarity" oninput="calcStats()" checked=1><label for="adv-rarity-input-s">S★</label>';
   document.getElementById("adv-level-input").innerHTML = '<label for="adv-level-input-field" style="font-weight:bold;">Level</label><input type="number" id="adv-level-input-field" value=100 min=1 max=100 style="width:40px; text-align:center; margin-left:5px;" oninput="calcStats()">';
 } else {
   document.getElementById("adv-level-input").innerHTML = '<label for="adv-level-input-field" style="font-weight:bold;">Level</label><input type="number" id="adv-level-input-field" value=80 min=1 max=80 style="width:40px; text-align:center; margin-left:5px;" oninput="calcStats()">';
 }

}

// Calculate the HP and STR stats function calcStats() {

 // Get the level and rarity
 var levelInput = document.getElementById('adv-level-input-field');
 var level = levelInput.value;
 var rarity = document.querySelector('input[name = "rarity"]:checked').value;
 // Manually set the level cap if we're dealing with a lower rarity
 switch (rarity) {
   case "3":
     if (level > 60) {
       level = 60;
       levelInput.value = "60";
     }
     break;
   case "4":
     if (level > 70) {
       level = 70;
       levelInput.value = "70";
     }
     break;
   case "5":
     if (level > MAX_LEVEL) {
       level = MAX_LEVEL;
       levelInput.value = MAX_LEVEL;
     }
     break;
   case "s":
     if (level > LB_MAX_LEVEL) {
       level = LB_MAX_LEVEL;
       levelInput.value = LB_MAX_LEVEL;
     }
 }
 
 // Validate the level and rarity before calculating HP and Str
 if(validateLevel(level) && validateRarity(rarity)) {
   setHP(calculateHP(level, rarity), level)
   setStr(calculateStr(level, rarity), level)
 } else {
   setHP("-");
   setStr("-");
 }

}

// Check if level is a number we can calculate with function validateLevel(value) {

 if(isNaN(value) || value == "") {
   return false;
 }
 return true;

}

// Check if rarity is either 3, 4, or 5 function validateRarity(rarity) {

 if(rarity == 3 || rarity == 4 || rarity == 5 || rarity == "3" || rarity == "4" || rarity == "5" || rarity == "s" || rarity == "S") {
   return true;
 }
 return false;

}

// Set the HP value in the display function setHP(value, level) {

 if (value != "-") {
   document.getElementById("adv-hp-label").innerHTML = "Level " + level + " HP"
 } else {
   document.getElementById("adv-hp-label").innerHTML = "HP"
 }
 document.getElementById("adv-hp").innerHTML = value;

}

// Set the Str value in the display function setStr(value, level) {

 if (value != "-") {
   document.getElementById("adv-str-label").innerHTML = "Level " + level + " Str"
 } else {
   document.getElementById("adv-str-label").innerHTML = "Str"
 }
 document.getElementById("adv-str").innerHTML = value;

}

// Calculate the HP function calculateHP(level, rarity) {

 var levelDiff = MAX_LEVEL - MIN_LEVEL;
 var steps = (MAX_HP - MIN_HP[2]) / levelDiff;
 var statGain = (level-1) * steps;
 return Math.ceil(MIN_HP[rarity-3] + statGain);

}

// Calculate the Str function calculateStr(level, rarity) {

 var levelDiff = MAX_LEVEL - MIN_LEVEL;
 var steps = (MAX_STR - MIN_STR[2]) / levelDiff;
 var statGain = (level-1) * steps;
 return Math.ceil(MIN_STR[rarity-3] + statGain);

} </script>

 <form id="adv-rarity-select" style="display:inline;">
 </form>
Max 5★ HP:
Max 5★ Str:
  • Wyrmprint <script type="text/javascript">

// Constants const LB_COUNT = ; const MIN_LEVEL = 1; const MAX_LEVEL = 80; const LB_MAX_LEVEL = 100; const MIN_HP = [,,]; const MAX_HP = ; const MIN_STR = [,,]; const MAX_STR = ; const NAT_RARITY = ;;

// Load modules, init, etc. document.addEventListener("DOMContentLoaded", function(event) {

 init();
 calcStats();

});

// Initialize the empty divs with content function init() {

 if (NAT_RARITY == 3) {
   document.getElementById("adv-rarity-input-3").innerHTML = '<input type="radio" value=3 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-3">3★</label>';
   document.getElementById("adv-rarity-input-4").innerHTML = '<input type="radio" value=4 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-4">4★</label>';
 } else if (NAT_RARITY == 4) {
   document.getElementById("adv-rarity-input-4").innerHTML = '<input type="radio" value=4 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-4">4★</label>';
 }
 document.getElementById("adv-rarity-input-5").innerHTML = '<input type="radio" value=5 name="rarity" oninput="calcStats()" checked=1><label for="adv-rarity-input-5">5★</label>';
 if (LB_COUNT > 4) {
   document.getElementById("adv-rarity-input-s").innerHTML = '<input type="radio" value=s name="rarity" oninput="calcStats()" checked=1><label for="adv-rarity-input-s">S★</label>';
   document.getElementById("adv-level-input").innerHTML = '<label for="adv-level-input-field" style="font-weight:bold;">Level</label><input type="number" id="adv-level-input-field" value=100 min=1 max=100 style="width:40px; text-align:center; margin-left:5px;" oninput="calcStats()">';
 } else {
   document.getElementById("adv-level-input").innerHTML = '<label for="adv-level-input-field" style="font-weight:bold;">Level</label><input type="number" id="adv-level-input-field" value=80 min=1 max=80 style="width:40px; text-align:center; margin-left:5px;" oninput="calcStats()">';
 }

}

// Calculate the HP and STR stats function calcStats() {

 // Get the level and rarity
 var levelInput = document.getElementById('adv-level-input-field');
 var level = levelInput.value;
 var rarity = document.querySelector('input[name = "rarity"]:checked').value;
 // Manually set the level cap if we're dealing with a lower rarity
 switch (rarity) {
   case "3":
     if (level > 60) {
       level = 60;
       levelInput.value = "60";
     }
     break;
   case "4":
     if (level > 70) {
       level = 70;
       levelInput.value = "70";
     }
     break;
   case "5":
     if (level > MAX_LEVEL) {
       level = MAX_LEVEL;
       levelInput.value = MAX_LEVEL;
     }
     break;
   case "s":
     if (level > LB_MAX_LEVEL) {
       level = LB_MAX_LEVEL;
       levelInput.value = LB_MAX_LEVEL;
     }
 }
 
 // Validate the level and rarity before calculating HP and Str
 if(validateLevel(level) && validateRarity(rarity)) {
   setHP(calculateHP(level, rarity), level)
   setStr(calculateStr(level, rarity), level)
 } else {
   setHP("-");
   setStr("-");
 }

}

// Check if level is a number we can calculate with function validateLevel(value) {

 if(isNaN(value) || value == "") {
   return false;
 }
 return true;

}

// Check if rarity is either 3, 4, or 5 function validateRarity(rarity) {

 if(rarity == 3 || rarity == 4 || rarity == 5 || rarity == "3" || rarity == "4" || rarity == "5" || rarity == "s" || rarity == "S") {
   return true;
 }
 return false;

}

// Set the HP value in the display function setHP(value, level) {

 if (value != "-") {
   document.getElementById("adv-hp-label").innerHTML = "Level " + level + " HP"
 } else {
   document.getElementById("adv-hp-label").innerHTML = "HP"
 }
 document.getElementById("adv-hp").innerHTML = value;

}

// Set the Str value in the display function setStr(value, level) {

 if (value != "-") {
   document.getElementById("adv-str-label").innerHTML = "Level " + level + " Str"
 } else {
   document.getElementById("adv-str-label").innerHTML = "Str"
 }
 document.getElementById("adv-str").innerHTML = value;

}

// Calculate the HP function calculateHP(level, rarity) {

 var levelDiff = MAX_LEVEL - MIN_LEVEL;
 var steps = (MAX_HP - MIN_HP[2]) / levelDiff;
 var statGain = (level-1) * steps;
 return Math.ceil(MIN_HP[rarity-3] + statGain);

}

// Calculate the Str function calculateStr(level, rarity) {

 var levelDiff = MAX_LEVEL - MIN_LEVEL;
 var steps = (MAX_STR - MIN_STR[2]) / levelDiff;
 var statGain = (level-1) * steps;
 return Math.ceil(MIN_STR[rarity-3] + statGain);

} </script>

 <form id="adv-rarity-select" style="display:inline;">
 </form>
Max 5★ HP:
Max 5★ Str:
  • Dragon <script type="text/javascript">

// Constants const LB_COUNT = ; const MIN_LEVEL = 1; const MAX_LEVEL = 80; const LB_MAX_LEVEL = 100; const MIN_HP = [,,]; const MAX_HP = ; const MIN_STR = [,,]; const MAX_STR = ; const NAT_RARITY = ;;

// Load modules, init, etc. document.addEventListener("DOMContentLoaded", function(event) {

 init();
 calcStats();

});

// Initialize the empty divs with content function init() {

 if (NAT_RARITY == 3) {
   document.getElementById("adv-rarity-input-3").innerHTML = '<input type="radio" value=3 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-3">3★</label>';
   document.getElementById("adv-rarity-input-4").innerHTML = '<input type="radio" value=4 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-4">4★</label>';
 } else if (NAT_RARITY == 4) {
   document.getElementById("adv-rarity-input-4").innerHTML = '<input type="radio" value=4 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-4">4★</label>';
 }
 document.getElementById("adv-rarity-input-5").innerHTML = '<input type="radio" value=5 name="rarity" oninput="calcStats()" checked=1><label for="adv-rarity-input-5">5★</label>';
 if (LB_COUNT > 4) {
   document.getElementById("adv-rarity-input-s").innerHTML = '<input type="radio" value=s name="rarity" oninput="calcStats()" checked=1><label for="adv-rarity-input-s">S★</label>';
   document.getElementById("adv-level-input").innerHTML = '<label for="adv-level-input-field" style="font-weight:bold;">Level</label><input type="number" id="adv-level-input-field" value=100 min=1 max=100 style="width:40px; text-align:center; margin-left:5px;" oninput="calcStats()">';
 } else {
   document.getElementById("adv-level-input").innerHTML = '<label for="adv-level-input-field" style="font-weight:bold;">Level</label><input type="number" id="adv-level-input-field" value=80 min=1 max=80 style="width:40px; text-align:center; margin-left:5px;" oninput="calcStats()">';
 }

}

// Calculate the HP and STR stats function calcStats() {

 // Get the level and rarity
 var levelInput = document.getElementById('adv-level-input-field');
 var level = levelInput.value;
 var rarity = document.querySelector('input[name = "rarity"]:checked').value;
 // Manually set the level cap if we're dealing with a lower rarity
 switch (rarity) {
   case "3":
     if (level > 60) {
       level = 60;
       levelInput.value = "60";
     }
     break;
   case "4":
     if (level > 70) {
       level = 70;
       levelInput.value = "70";
     }
     break;
   case "5":
     if (level > MAX_LEVEL) {
       level = MAX_LEVEL;
       levelInput.value = MAX_LEVEL;
     }
     break;
   case "s":
     if (level > LB_MAX_LEVEL) {
       level = LB_MAX_LEVEL;
       levelInput.value = LB_MAX_LEVEL;
     }
 }
 
 // Validate the level and rarity before calculating HP and Str
 if(validateLevel(level) && validateRarity(rarity)) {
   setHP(calculateHP(level, rarity), level)
   setStr(calculateStr(level, rarity), level)
 } else {
   setHP("-");
   setStr("-");
 }

}

// Check if level is a number we can calculate with function validateLevel(value) {

 if(isNaN(value) || value == "") {
   return false;
 }
 return true;

}

// Check if rarity is either 3, 4, or 5 function validateRarity(rarity) {

 if(rarity == 3 || rarity == 4 || rarity == 5 || rarity == "3" || rarity == "4" || rarity == "5" || rarity == "s" || rarity == "S") {
   return true;
 }
 return false;

}

// Set the HP value in the display function setHP(value, level) {

 if (value != "-") {
   document.getElementById("adv-hp-label").innerHTML = "Level " + level + " HP"
 } else {
   document.getElementById("adv-hp-label").innerHTML = "HP"
 }
 document.getElementById("adv-hp").innerHTML = value;

}

// Set the Str value in the display function setStr(value, level) {

 if (value != "-") {
   document.getElementById("adv-str-label").innerHTML = "Level " + level + " Str"
 } else {
   document.getElementById("adv-str-label").innerHTML = "Str"
 }
 document.getElementById("adv-str").innerHTML = value;

}

// Calculate the HP function calculateHP(level, rarity) {

 var levelDiff = MAX_LEVEL - MIN_LEVEL;
 var steps = (MAX_HP - MIN_HP[2]) / levelDiff;
 var statGain = (level-1) * steps;
 return Math.ceil(MIN_HP[rarity-3] + statGain);

}

// Calculate the Str function calculateStr(level, rarity) {

 var levelDiff = MAX_LEVEL - MIN_LEVEL;
 var steps = (MAX_STR - MIN_STR[2]) / levelDiff;
 var statGain = (level-1) * steps;
 return Math.ceil(MIN_STR[rarity-3] + statGain);

} </script>

 <form id="adv-rarity-select" style="display:inline;">
 </form>
Max 5★ HP:
Max 5★ Str:
  • Weapon <script type="text/javascript">

// Constants const LB_COUNT = ; const MIN_LEVEL = 1; const MAX_LEVEL = 80; const LB_MAX_LEVEL = 100; const MIN_HP = [,,]; const MAX_HP = ; const MIN_STR = [,,]; const MAX_STR = ; const NAT_RARITY = ;;

// Load modules, init, etc. document.addEventListener("DOMContentLoaded", function(event) {

 init();
 calcStats();

});

// Initialize the empty divs with content function init() {

 if (NAT_RARITY == 3) {
   document.getElementById("adv-rarity-input-3").innerHTML = '<input type="radio" value=3 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-3">3★</label>';
   document.getElementById("adv-rarity-input-4").innerHTML = '<input type="radio" value=4 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-4">4★</label>';
 } else if (NAT_RARITY == 4) {
   document.getElementById("adv-rarity-input-4").innerHTML = '<input type="radio" value=4 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-4">4★</label>';
 }
 document.getElementById("adv-rarity-input-5").innerHTML = '<input type="radio" value=5 name="rarity" oninput="calcStats()" checked=1><label for="adv-rarity-input-5">5★</label>';
 if (LB_COUNT > 4) {
   document.getElementById("adv-rarity-input-s").innerHTML = '<input type="radio" value=s name="rarity" oninput="calcStats()" checked=1><label for="adv-rarity-input-s">S★</label>';
   document.getElementById("adv-level-input").innerHTML = '<label for="adv-level-input-field" style="font-weight:bold;">Level</label><input type="number" id="adv-level-input-field" value=100 min=1 max=100 style="width:40px; text-align:center; margin-left:5px;" oninput="calcStats()">';
 } else {
   document.getElementById("adv-level-input").innerHTML = '<label for="adv-level-input-field" style="font-weight:bold;">Level</label><input type="number" id="adv-level-input-field" value=80 min=1 max=80 style="width:40px; text-align:center; margin-left:5px;" oninput="calcStats()">';
 }

}

// Calculate the HP and STR stats function calcStats() {

 // Get the level and rarity
 var levelInput = document.getElementById('adv-level-input-field');
 var level = levelInput.value;
 var rarity = document.querySelector('input[name = "rarity"]:checked').value;
 // Manually set the level cap if we're dealing with a lower rarity
 switch (rarity) {
   case "3":
     if (level > 60) {
       level = 60;
       levelInput.value = "60";
     }
     break;
   case "4":
     if (level > 70) {
       level = 70;
       levelInput.value = "70";
     }
     break;
   case "5":
     if (level > MAX_LEVEL) {
       level = MAX_LEVEL;
       levelInput.value = MAX_LEVEL;
     }
     break;
   case "s":
     if (level > LB_MAX_LEVEL) {
       level = LB_MAX_LEVEL;
       levelInput.value = LB_MAX_LEVEL;
     }
 }
 
 // Validate the level and rarity before calculating HP and Str
 if(validateLevel(level) && validateRarity(rarity)) {
   setHP(calculateHP(level, rarity), level)
   setStr(calculateStr(level, rarity), level)
 } else {
   setHP("-");
   setStr("-");
 }

}

// Check if level is a number we can calculate with function validateLevel(value) {

 if(isNaN(value) || value == "") {
   return false;
 }
 return true;

}

// Check if rarity is either 3, 4, or 5 function validateRarity(rarity) {

 if(rarity == 3 || rarity == 4 || rarity == 5 || rarity == "3" || rarity == "4" || rarity == "5" || rarity == "s" || rarity == "S") {
   return true;
 }
 return false;

}

// Set the HP value in the display function setHP(value, level) {

 if (value != "-") {
   document.getElementById("adv-hp-label").innerHTML = "Level " + level + " HP"
 } else {
   document.getElementById("adv-hp-label").innerHTML = "HP"
 }
 document.getElementById("adv-hp").innerHTML = value;

}

// Set the Str value in the display function setStr(value, level) {

 if (value != "-") {
   document.getElementById("adv-str-label").innerHTML = "Level " + level + " Str"
 } else {
   document.getElementById("adv-str-label").innerHTML = "Str"
 }
 document.getElementById("adv-str").innerHTML = value;

}

// Calculate the HP function calculateHP(level, rarity) {

 var levelDiff = MAX_LEVEL - MIN_LEVEL;
 var steps = (MAX_HP - MIN_HP[2]) / levelDiff;
 var statGain = (level-1) * steps;
 return Math.ceil(MIN_HP[rarity-3] + statGain);

}

// Calculate the Str function calculateStr(level, rarity) {

 var levelDiff = MAX_LEVEL - MIN_LEVEL;
 var steps = (MAX_STR - MIN_STR[2]) / levelDiff;
 var statGain = (level-1) * steps;
 return Math.ceil(MIN_STR[rarity-3] + statGain);

} </script>

 <form id="adv-rarity-select" style="display:inline;">
 </form>
Max 5★ HP:
Max 5★ Str:
  • Material <script type="text/javascript">

// Constants const LB_COUNT = ; const MIN_LEVEL = 1; const MAX_LEVEL = 80; const LB_MAX_LEVEL = 100; const MIN_HP = [,,]; const MAX_HP = ; const MIN_STR = [,,]; const MAX_STR = ; const NAT_RARITY = ;;

// Load modules, init, etc. document.addEventListener("DOMContentLoaded", function(event) {

 init();
 calcStats();

});

// Initialize the empty divs with content function init() {

 if (NAT_RARITY == 3) {
   document.getElementById("adv-rarity-input-3").innerHTML = '<input type="radio" value=3 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-3">3★</label>';
   document.getElementById("adv-rarity-input-4").innerHTML = '<input type="radio" value=4 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-4">4★</label>';
 } else if (NAT_RARITY == 4) {
   document.getElementById("adv-rarity-input-4").innerHTML = '<input type="radio" value=4 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-4">4★</label>';
 }
 document.getElementById("adv-rarity-input-5").innerHTML = '<input type="radio" value=5 name="rarity" oninput="calcStats()" checked=1><label for="adv-rarity-input-5">5★</label>';
 if (LB_COUNT > 4) {
   document.getElementById("adv-rarity-input-s").innerHTML = '<input type="radio" value=s name="rarity" oninput="calcStats()" checked=1><label for="adv-rarity-input-s">S★</label>';
   document.getElementById("adv-level-input").innerHTML = '<label for="adv-level-input-field" style="font-weight:bold;">Level</label><input type="number" id="adv-level-input-field" value=100 min=1 max=100 style="width:40px; text-align:center; margin-left:5px;" oninput="calcStats()">';
 } else {
   document.getElementById("adv-level-input").innerHTML = '<label for="adv-level-input-field" style="font-weight:bold;">Level</label><input type="number" id="adv-level-input-field" value=80 min=1 max=80 style="width:40px; text-align:center; margin-left:5px;" oninput="calcStats()">';
 }

}

// Calculate the HP and STR stats function calcStats() {

 // Get the level and rarity
 var levelInput = document.getElementById('adv-level-input-field');
 var level = levelInput.value;
 var rarity = document.querySelector('input[name = "rarity"]:checked').value;
 // Manually set the level cap if we're dealing with a lower rarity
 switch (rarity) {
   case "3":
     if (level > 60) {
       level = 60;
       levelInput.value = "60";
     }
     break;
   case "4":
     if (level > 70) {
       level = 70;
       levelInput.value = "70";
     }
     break;
   case "5":
     if (level > MAX_LEVEL) {
       level = MAX_LEVEL;
       levelInput.value = MAX_LEVEL;
     }
     break;
   case "s":
     if (level > LB_MAX_LEVEL) {
       level = LB_MAX_LEVEL;
       levelInput.value = LB_MAX_LEVEL;
     }
 }
 
 // Validate the level and rarity before calculating HP and Str
 if(validateLevel(level) && validateRarity(rarity)) {
   setHP(calculateHP(level, rarity), level)
   setStr(calculateStr(level, rarity), level)
 } else {
   setHP("-");
   setStr("-");
 }

}

// Check if level is a number we can calculate with function validateLevel(value) {

 if(isNaN(value) || value == "") {
   return false;
 }
 return true;

}

// Check if rarity is either 3, 4, or 5 function validateRarity(rarity) {

 if(rarity == 3 || rarity == 4 || rarity == 5 || rarity == "3" || rarity == "4" || rarity == "5" || rarity == "s" || rarity == "S") {
   return true;
 }
 return false;

}

// Set the HP value in the display function setHP(value, level) {

 if (value != "-") {
   document.getElementById("adv-hp-label").innerHTML = "Level " + level + " HP"
 } else {
   document.getElementById("adv-hp-label").innerHTML = "HP"
 }
 document.getElementById("adv-hp").innerHTML = value;

}

// Set the Str value in the display function setStr(value, level) {

 if (value != "-") {
   document.getElementById("adv-str-label").innerHTML = "Level " + level + " Str"
 } else {
   document.getElementById("adv-str-label").innerHTML = "Str"
 }
 document.getElementById("adv-str").innerHTML = value;

}

// Calculate the HP function calculateHP(level, rarity) {

 var levelDiff = MAX_LEVEL - MIN_LEVEL;
 var steps = (MAX_HP - MIN_HP[2]) / levelDiff;
 var statGain = (level-1) * steps;
 return Math.ceil(MIN_HP[rarity-3] + statGain);

}

// Calculate the Str function calculateStr(level, rarity) {

 var levelDiff = MAX_LEVEL - MIN_LEVEL;
 var steps = (MAX_STR - MIN_STR[2]) / levelDiff;
 var statGain = (level-1) * steps;
 return Math.ceil(MIN_STR[rarity-3] + statGain);

} </script>

 <form id="adv-rarity-select" style="display:inline;">
 </form>
Max 5★ HP:
Max 5★ Str:
  • Gift <script type="text/javascript">

// Constants const LB_COUNT = ; const MIN_LEVEL = 1; const MAX_LEVEL = 80; const LB_MAX_LEVEL = 100; const MIN_HP = [,,]; const MAX_HP = ; const MIN_STR = [,,]; const MAX_STR = ; const NAT_RARITY = ;;

// Load modules, init, etc. document.addEventListener("DOMContentLoaded", function(event) {

 init();
 calcStats();

});

// Initialize the empty divs with content function init() {

 if (NAT_RARITY == 3) {
   document.getElementById("adv-rarity-input-3").innerHTML = '<input type="radio" value=3 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-3">3★</label>';
   document.getElementById("adv-rarity-input-4").innerHTML = '<input type="radio" value=4 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-4">4★</label>';
 } else if (NAT_RARITY == 4) {
   document.getElementById("adv-rarity-input-4").innerHTML = '<input type="radio" value=4 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-4">4★</label>';
 }
 document.getElementById("adv-rarity-input-5").innerHTML = '<input type="radio" value=5 name="rarity" oninput="calcStats()" checked=1><label for="adv-rarity-input-5">5★</label>';
 if (LB_COUNT > 4) {
   document.getElementById("adv-rarity-input-s").innerHTML = '<input type="radio" value=s name="rarity" oninput="calcStats()" checked=1><label for="adv-rarity-input-s">S★</label>';
   document.getElementById("adv-level-input").innerHTML = '<label for="adv-level-input-field" style="font-weight:bold;">Level</label><input type="number" id="adv-level-input-field" value=100 min=1 max=100 style="width:40px; text-align:center; margin-left:5px;" oninput="calcStats()">';
 } else {
   document.getElementById("adv-level-input").innerHTML = '<label for="adv-level-input-field" style="font-weight:bold;">Level</label><input type="number" id="adv-level-input-field" value=80 min=1 max=80 style="width:40px; text-align:center; margin-left:5px;" oninput="calcStats()">';
 }

}

// Calculate the HP and STR stats function calcStats() {

 // Get the level and rarity
 var levelInput = document.getElementById('adv-level-input-field');
 var level = levelInput.value;
 var rarity = document.querySelector('input[name = "rarity"]:checked').value;
 // Manually set the level cap if we're dealing with a lower rarity
 switch (rarity) {
   case "3":
     if (level > 60) {
       level = 60;
       levelInput.value = "60";
     }
     break;
   case "4":
     if (level > 70) {
       level = 70;
       levelInput.value = "70";
     }
     break;
   case "5":
     if (level > MAX_LEVEL) {
       level = MAX_LEVEL;
       levelInput.value = MAX_LEVEL;
     }
     break;
   case "s":
     if (level > LB_MAX_LEVEL) {
       level = LB_MAX_LEVEL;
       levelInput.value = LB_MAX_LEVEL;
     }
 }
 
 // Validate the level and rarity before calculating HP and Str
 if(validateLevel(level) && validateRarity(rarity)) {
   setHP(calculateHP(level, rarity), level)
   setStr(calculateStr(level, rarity), level)
 } else {
   setHP("-");
   setStr("-");
 }

}

// Check if level is a number we can calculate with function validateLevel(value) {

 if(isNaN(value) || value == "") {
   return false;
 }
 return true;

}

// Check if rarity is either 3, 4, or 5 function validateRarity(rarity) {

 if(rarity == 3 || rarity == 4 || rarity == 5 || rarity == "3" || rarity == "4" || rarity == "5" || rarity == "s" || rarity == "S") {
   return true;
 }
 return false;

}

// Set the HP value in the display function setHP(value, level) {

 if (value != "-") {
   document.getElementById("adv-hp-label").innerHTML = "Level " + level + " HP"
 } else {
   document.getElementById("adv-hp-label").innerHTML = "HP"
 }
 document.getElementById("adv-hp").innerHTML = value;

}

// Set the Str value in the display function setStr(value, level) {

 if (value != "-") {
   document.getElementById("adv-str-label").innerHTML = "Level " + level + " Str"
 } else {
   document.getElementById("adv-str-label").innerHTML = "Str"
 }
 document.getElementById("adv-str").innerHTML = value;

}

// Calculate the HP function calculateHP(level, rarity) {

 var levelDiff = MAX_LEVEL - MIN_LEVEL;
 var steps = (MAX_HP - MIN_HP[2]) / levelDiff;
 var statGain = (level-1) * steps;
 return Math.ceil(MIN_HP[rarity-3] + statGain);

}

// Calculate the Str function calculateStr(level, rarity) {

 var levelDiff = MAX_LEVEL - MIN_LEVEL;
 var steps = (MAX_STR - MIN_STR[2]) / levelDiff;
 var statGain = (level-1) * steps;
 return Math.ceil(MIN_STR[rarity-3] + statGain);

} </script>

 <form id="adv-rarity-select" style="display:inline;">
 </form>
Max 5★ HP:
Max 5★ Str:
  • Resource <script type="text/javascript">

// Constants const LB_COUNT = ; const MIN_LEVEL = 1; const MAX_LEVEL = 80; const LB_MAX_LEVEL = 100; const MIN_HP = [,,]; const MAX_HP = ; const MIN_STR = [,,]; const MAX_STR = ; const NAT_RARITY = ;;

// Load modules, init, etc. document.addEventListener("DOMContentLoaded", function(event) {

 init();
 calcStats();

});

// Initialize the empty divs with content function init() {

 if (NAT_RARITY == 3) {
   document.getElementById("adv-rarity-input-3").innerHTML = '<input type="radio" value=3 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-3">3★</label>';
   document.getElementById("adv-rarity-input-4").innerHTML = '<input type="radio" value=4 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-4">4★</label>';
 } else if (NAT_RARITY == 4) {
   document.getElementById("adv-rarity-input-4").innerHTML = '<input type="radio" value=4 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-4">4★</label>';
 }
 document.getElementById("adv-rarity-input-5").innerHTML = '<input type="radio" value=5 name="rarity" oninput="calcStats()" checked=1><label for="adv-rarity-input-5">5★</label>';
 if (LB_COUNT > 4) {
   document.getElementById("adv-rarity-input-s").innerHTML = '<input type="radio" value=s name="rarity" oninput="calcStats()" checked=1><label for="adv-rarity-input-s">S★</label>';
   document.getElementById("adv-level-input").innerHTML = '<label for="adv-level-input-field" style="font-weight:bold;">Level</label><input type="number" id="adv-level-input-field" value=100 min=1 max=100 style="width:40px; text-align:center; margin-left:5px;" oninput="calcStats()">';
 } else {
   document.getElementById("adv-level-input").innerHTML = '<label for="adv-level-input-field" style="font-weight:bold;">Level</label><input type="number" id="adv-level-input-field" value=80 min=1 max=80 style="width:40px; text-align:center; margin-left:5px;" oninput="calcStats()">';
 }

}

// Calculate the HP and STR stats function calcStats() {

 // Get the level and rarity
 var levelInput = document.getElementById('adv-level-input-field');
 var level = levelInput.value;
 var rarity = document.querySelector('input[name = "rarity"]:checked').value;
 // Manually set the level cap if we're dealing with a lower rarity
 switch (rarity) {
   case "3":
     if (level > 60) {
       level = 60;
       levelInput.value = "60";
     }
     break;
   case "4":
     if (level > 70) {
       level = 70;
       levelInput.value = "70";
     }
     break;
   case "5":
     if (level > MAX_LEVEL) {
       level = MAX_LEVEL;
       levelInput.value = MAX_LEVEL;
     }
     break;
   case "s":
     if (level > LB_MAX_LEVEL) {
       level = LB_MAX_LEVEL;
       levelInput.value = LB_MAX_LEVEL;
     }
 }
 
 // Validate the level and rarity before calculating HP and Str
 if(validateLevel(level) && validateRarity(rarity)) {
   setHP(calculateHP(level, rarity), level)
   setStr(calculateStr(level, rarity), level)
 } else {
   setHP("-");
   setStr("-");
 }

}

// Check if level is a number we can calculate with function validateLevel(value) {

 if(isNaN(value) || value == "") {
   return false;
 }
 return true;

}

// Check if rarity is either 3, 4, or 5 function validateRarity(rarity) {

 if(rarity == 3 || rarity == 4 || rarity == 5 || rarity == "3" || rarity == "4" || rarity == "5" || rarity == "s" || rarity == "S") {
   return true;
 }
 return false;

}

// Set the HP value in the display function setHP(value, level) {

 if (value != "-") {
   document.getElementById("adv-hp-label").innerHTML = "Level " + level + " HP"
 } else {
   document.getElementById("adv-hp-label").innerHTML = "HP"
 }
 document.getElementById("adv-hp").innerHTML = value;

}

// Set the Str value in the display function setStr(value, level) {

 if (value != "-") {
   document.getElementById("adv-str-label").innerHTML = "Level " + level + " Str"
 } else {
   document.getElementById("adv-str-label").innerHTML = "Str"
 }
 document.getElementById("adv-str").innerHTML = value;

}

// Calculate the HP function calculateHP(level, rarity) {

 var levelDiff = MAX_LEVEL - MIN_LEVEL;
 var steps = (MAX_HP - MIN_HP[2]) / levelDiff;
 var statGain = (level-1) * steps;
 return Math.ceil(MIN_HP[rarity-3] + statGain);

}

// Calculate the Str function calculateStr(level, rarity) {

 var levelDiff = MAX_LEVEL - MIN_LEVEL;
 var steps = (MAX_STR - MIN_STR[2]) / levelDiff;
 var statGain = (level-1) * steps;
 return Math.ceil(MIN_STR[rarity-3] + statGain);

} </script>

 <form id="adv-rarity-select" style="display:inline;">
 </form>
Max 5★ HP:
Max 5★ Str:
  • Consumable <script type="text/javascript">

// Constants const LB_COUNT = ; const MIN_LEVEL = 1; const MAX_LEVEL = 80; const LB_MAX_LEVEL = 100; const MIN_HP = [,,]; const MAX_HP = ; const MIN_STR = [,,]; const MAX_STR = ; const NAT_RARITY = ;;

// Load modules, init, etc. document.addEventListener("DOMContentLoaded", function(event) {

 init();
 calcStats();

});

// Initialize the empty divs with content function init() {

 if (NAT_RARITY == 3) {
   document.getElementById("adv-rarity-input-3").innerHTML = '<input type="radio" value=3 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-3">3★</label>';
   document.getElementById("adv-rarity-input-4").innerHTML = '<input type="radio" value=4 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-4">4★</label>';
 } else if (NAT_RARITY == 4) {
   document.getElementById("adv-rarity-input-4").innerHTML = '<input type="radio" value=4 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-4">4★</label>';
 }
 document.getElementById("adv-rarity-input-5").innerHTML = '<input type="radio" value=5 name="rarity" oninput="calcStats()" checked=1><label for="adv-rarity-input-5">5★</label>';
 if (LB_COUNT > 4) {
   document.getElementById("adv-rarity-input-s").innerHTML = '<input type="radio" value=s name="rarity" oninput="calcStats()" checked=1><label for="adv-rarity-input-s">S★</label>';
   document.getElementById("adv-level-input").innerHTML = '<label for="adv-level-input-field" style="font-weight:bold;">Level</label><input type="number" id="adv-level-input-field" value=100 min=1 max=100 style="width:40px; text-align:center; margin-left:5px;" oninput="calcStats()">';
 } else {
   document.getElementById("adv-level-input").innerHTML = '<label for="adv-level-input-field" style="font-weight:bold;">Level</label><input type="number" id="adv-level-input-field" value=80 min=1 max=80 style="width:40px; text-align:center; margin-left:5px;" oninput="calcStats()">';
 }

}

// Calculate the HP and STR stats function calcStats() {

 // Get the level and rarity
 var levelInput = document.getElementById('adv-level-input-field');
 var level = levelInput.value;
 var rarity = document.querySelector('input[name = "rarity"]:checked').value;
 // Manually set the level cap if we're dealing with a lower rarity
 switch (rarity) {
   case "3":
     if (level > 60) {
       level = 60;
       levelInput.value = "60";
     }
     break;
   case "4":
     if (level > 70) {
       level = 70;
       levelInput.value = "70";
     }
     break;
   case "5":
     if (level > MAX_LEVEL) {
       level = MAX_LEVEL;
       levelInput.value = MAX_LEVEL;
     }
     break;
   case "s":
     if (level > LB_MAX_LEVEL) {
       level = LB_MAX_LEVEL;
       levelInput.value = LB_MAX_LEVEL;
     }
 }
 
 // Validate the level and rarity before calculating HP and Str
 if(validateLevel(level) && validateRarity(rarity)) {
   setHP(calculateHP(level, rarity), level)
   setStr(calculateStr(level, rarity), level)
 } else {
   setHP("-");
   setStr("-");
 }

}

// Check if level is a number we can calculate with function validateLevel(value) {

 if(isNaN(value) || value == "") {
   return false;
 }
 return true;

}

// Check if rarity is either 3, 4, or 5 function validateRarity(rarity) {

 if(rarity == 3 || rarity == 4 || rarity == 5 || rarity == "3" || rarity == "4" || rarity == "5" || rarity == "s" || rarity == "S") {
   return true;
 }
 return false;

}

// Set the HP value in the display function setHP(value, level) {

 if (value != "-") {
   document.getElementById("adv-hp-label").innerHTML = "Level " + level + " HP"
 } else {
   document.getElementById("adv-hp-label").innerHTML = "HP"
 }
 document.getElementById("adv-hp").innerHTML = value;

}

// Set the Str value in the display function setStr(value, level) {

 if (value != "-") {
   document.getElementById("adv-str-label").innerHTML = "Level " + level + " Str"
 } else {
   document.getElementById("adv-str-label").innerHTML = "Str"
 }
 document.getElementById("adv-str").innerHTML = value;

}

// Calculate the HP function calculateHP(level, rarity) {

 var levelDiff = MAX_LEVEL - MIN_LEVEL;
 var steps = (MAX_HP - MIN_HP[2]) / levelDiff;
 var statGain = (level-1) * steps;
 return Math.ceil(MIN_HP[rarity-3] + statGain);

}

// Calculate the Str function calculateStr(level, rarity) {

 var levelDiff = MAX_LEVEL - MIN_LEVEL;
 var steps = (MAX_STR - MIN_STR[2]) / levelDiff;
 var statGain = (level-1) * steps;
 return Math.ceil(MIN_STR[rarity-3] + statGain);

} </script>

 <form id="adv-rarity-select" style="display:inline;">
 </form>
Max 5★ HP:
Max 5★ Str:
  • Facility
    • <script type="text/javascript">

// Constants const LB_COUNT = ; const MIN_LEVEL = 1; const MAX_LEVEL = 80; const LB_MAX_LEVEL = 100; const MIN_HP = [,,]; const MAX_HP = ; const MIN_STR = [,,]; const MAX_STR = ; const NAT_RARITY = ;;

// Load modules, init, etc. document.addEventListener("DOMContentLoaded", function(event) {

 init();
 calcStats();

});

// Initialize the empty divs with content function init() {

 if (NAT_RARITY == 3) {
   document.getElementById("adv-rarity-input-3").innerHTML = '<input type="radio" value=3 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-3">3★</label>';
   document.getElementById("adv-rarity-input-4").innerHTML = '<input type="radio" value=4 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-4">4★</label>';
 } else if (NAT_RARITY == 4) {
   document.getElementById("adv-rarity-input-4").innerHTML = '<input type="radio" value=4 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-4">4★</label>';
 }
 document.getElementById("adv-rarity-input-5").innerHTML = '<input type="radio" value=5 name="rarity" oninput="calcStats()" checked=1><label for="adv-rarity-input-5">5★</label>';
 if (LB_COUNT > 4) {
   document.getElementById("adv-rarity-input-s").innerHTML = '<input type="radio" value=s name="rarity" oninput="calcStats()" checked=1><label for="adv-rarity-input-s">S★</label>';
   document.getElementById("adv-level-input").innerHTML = '<label for="adv-level-input-field" style="font-weight:bold;">Level</label><input type="number" id="adv-level-input-field" value=100 min=1 max=100 style="width:40px; text-align:center; margin-left:5px;" oninput="calcStats()">';
 } else {
   document.getElementById("adv-level-input").innerHTML = '<label for="adv-level-input-field" style="font-weight:bold;">Level</label><input type="number" id="adv-level-input-field" value=80 min=1 max=80 style="width:40px; text-align:center; margin-left:5px;" oninput="calcStats()">';
 }

}

// Calculate the HP and STR stats function calcStats() {

 // Get the level and rarity
 var levelInput = document.getElementById('adv-level-input-field');
 var level = levelInput.value;
 var rarity = document.querySelector('input[name = "rarity"]:checked').value;
 // Manually set the level cap if we're dealing with a lower rarity
 switch (rarity) {
   case "3":
     if (level > 60) {
       level = 60;
       levelInput.value = "60";
     }
     break;
   case "4":
     if (level > 70) {
       level = 70;
       levelInput.value = "70";
     }
     break;
   case "5":
     if (level > MAX_LEVEL) {
       level = MAX_LEVEL;
       levelInput.value = MAX_LEVEL;
     }
     break;
   case "s":
     if (level > LB_MAX_LEVEL) {
       level = LB_MAX_LEVEL;
       levelInput.value = LB_MAX_LEVEL;
     }
 }
 
 // Validate the level and rarity before calculating HP and Str
 if(validateLevel(level) && validateRarity(rarity)) {
   setHP(calculateHP(level, rarity), level)
   setStr(calculateStr(level, rarity), level)
 } else {
   setHP("-");
   setStr("-");
 }

}

// Check if level is a number we can calculate with function validateLevel(value) {

 if(isNaN(value) || value == "") {
   return false;
 }
 return true;

}

// Check if rarity is either 3, 4, or 5 function validateRarity(rarity) {

 if(rarity == 3 || rarity == 4 || rarity == 5 || rarity == "3" || rarity == "4" || rarity == "5" || rarity == "s" || rarity == "S") {
   return true;
 }
 return false;

}

// Set the HP value in the display function setHP(value, level) {

 if (value != "-") {
   document.getElementById("adv-hp-label").innerHTML = "Level " + level + " HP"
 } else {
   document.getElementById("adv-hp-label").innerHTML = "HP"
 }
 document.getElementById("adv-hp").innerHTML = value;

}

// Set the Str value in the display function setStr(value, level) {

 if (value != "-") {
   document.getElementById("adv-str-label").innerHTML = "Level " + level + " Str"
 } else {
   document.getElementById("adv-str-label").innerHTML = "Str"
 }
 document.getElementById("adv-str").innerHTML = value;

}

// Calculate the HP function calculateHP(level, rarity) {

 var levelDiff = MAX_LEVEL - MIN_LEVEL;
 var steps = (MAX_HP - MIN_HP[2]) / levelDiff;
 var statGain = (level-1) * steps;
 return Math.ceil(MIN_HP[rarity-3] + statGain);

}

// Calculate the Str function calculateStr(level, rarity) {

 var levelDiff = MAX_LEVEL - MIN_LEVEL;
 var steps = (MAX_STR - MIN_STR[2]) / levelDiff;
 var statGain = (level-1) * steps;
 return Math.ceil(MIN_STR[rarity-3] + statGain);

} </script>

 <form id="adv-rarity-select" style="display:inline;">
 </form>
Max 5★ HP:
Max 5★ Str:
    • <script type="text/javascript">

// Constants const LB_COUNT = ; const MIN_LEVEL = 1; const MAX_LEVEL = 80; const LB_MAX_LEVEL = 100; const MIN_HP = [,,]; const MAX_HP = ; const MIN_STR = [,,]; const MAX_STR = ; const NAT_RARITY = ;;

// Load modules, init, etc. document.addEventListener("DOMContentLoaded", function(event) {

 init();
 calcStats();

});

// Initialize the empty divs with content function init() {

 if (NAT_RARITY == 3) {
   document.getElementById("adv-rarity-input-3").innerHTML = '<input type="radio" value=3 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-3">3★</label>';
   document.getElementById("adv-rarity-input-4").innerHTML = '<input type="radio" value=4 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-4">4★</label>';
 } else if (NAT_RARITY == 4) {
   document.getElementById("adv-rarity-input-4").innerHTML = '<input type="radio" value=4 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-4">4★</label>';
 }
 document.getElementById("adv-rarity-input-5").innerHTML = '<input type="radio" value=5 name="rarity" oninput="calcStats()" checked=1><label for="adv-rarity-input-5">5★</label>';
 if (LB_COUNT > 4) {
   document.getElementById("adv-rarity-input-s").innerHTML = '<input type="radio" value=s name="rarity" oninput="calcStats()" checked=1><label for="adv-rarity-input-s">S★</label>';
   document.getElementById("adv-level-input").innerHTML = '<label for="adv-level-input-field" style="font-weight:bold;">Level</label><input type="number" id="adv-level-input-field" value=100 min=1 max=100 style="width:40px; text-align:center; margin-left:5px;" oninput="calcStats()">';
 } else {
   document.getElementById("adv-level-input").innerHTML = '<label for="adv-level-input-field" style="font-weight:bold;">Level</label><input type="number" id="adv-level-input-field" value=80 min=1 max=80 style="width:40px; text-align:center; margin-left:5px;" oninput="calcStats()">';
 }

}

// Calculate the HP and STR stats function calcStats() {

 // Get the level and rarity
 var levelInput = document.getElementById('adv-level-input-field');
 var level = levelInput.value;
 var rarity = document.querySelector('input[name = "rarity"]:checked').value;
 // Manually set the level cap if we're dealing with a lower rarity
 switch (rarity) {
   case "3":
     if (level > 60) {
       level = 60;
       levelInput.value = "60";
     }
     break;
   case "4":
     if (level > 70) {
       level = 70;
       levelInput.value = "70";
     }
     break;
   case "5":
     if (level > MAX_LEVEL) {
       level = MAX_LEVEL;
       levelInput.value = MAX_LEVEL;
     }
     break;
   case "s":
     if (level > LB_MAX_LEVEL) {
       level = LB_MAX_LEVEL;
       levelInput.value = LB_MAX_LEVEL;
     }
 }
 
 // Validate the level and rarity before calculating HP and Str
 if(validateLevel(level) && validateRarity(rarity)) {
   setHP(calculateHP(level, rarity), level)
   setStr(calculateStr(level, rarity), level)
 } else {
   setHP("-");
   setStr("-");
 }

}

// Check if level is a number we can calculate with function validateLevel(value) {

 if(isNaN(value) || value == "") {
   return false;
 }
 return true;

}

// Check if rarity is either 3, 4, or 5 function validateRarity(rarity) {

 if(rarity == 3 || rarity == 4 || rarity == 5 || rarity == "3" || rarity == "4" || rarity == "5" || rarity == "s" || rarity == "S") {
   return true;
 }
 return false;

}

// Set the HP value in the display function setHP(value, level) {

 if (value != "-") {
   document.getElementById("adv-hp-label").innerHTML = "Level " + level + " HP"
 } else {
   document.getElementById("adv-hp-label").innerHTML = "HP"
 }
 document.getElementById("adv-hp").innerHTML = value;

}

// Set the Str value in the display function setStr(value, level) {

 if (value != "-") {
   document.getElementById("adv-str-label").innerHTML = "Level " + level + " Str"
 } else {
   document.getElementById("adv-str-label").innerHTML = "Str"
 }
 document.getElementById("adv-str").innerHTML = value;

}

// Calculate the HP function calculateHP(level, rarity) {

 var levelDiff = MAX_LEVEL - MIN_LEVEL;
 var steps = (MAX_HP - MIN_HP[2]) / levelDiff;
 var statGain = (level-1) * steps;
 return Math.ceil(MIN_HP[rarity-3] + statGain);

}

// Calculate the Str function calculateStr(level, rarity) {

 var levelDiff = MAX_LEVEL - MIN_LEVEL;
 var steps = (MAX_STR - MIN_STR[2]) / levelDiff;
 var statGain = (level-1) * steps;
 return Math.ceil(MIN_STR[rarity-3] + statGain);

} </script>

 <form id="adv-rarity-select" style="display:inline;">
 </form>
Max 5★ HP:
Max 5★ Str:
    • <script type="text/javascript">

// Constants const LB_COUNT = ; const MIN_LEVEL = 1; const MAX_LEVEL = 80; const LB_MAX_LEVEL = 100; const MIN_HP = [,,]; const MAX_HP = ; const MIN_STR = [,,]; const MAX_STR = ; const NAT_RARITY = ;;

// Load modules, init, etc. document.addEventListener("DOMContentLoaded", function(event) {

 init();
 calcStats();

});

// Initialize the empty divs with content function init() {

 if (NAT_RARITY == 3) {
   document.getElementById("adv-rarity-input-3").innerHTML = '<input type="radio" value=3 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-3">3★</label>';
   document.getElementById("adv-rarity-input-4").innerHTML = '<input type="radio" value=4 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-4">4★</label>';
 } else if (NAT_RARITY == 4) {
   document.getElementById("adv-rarity-input-4").innerHTML = '<input type="radio" value=4 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-4">4★</label>';
 }
 document.getElementById("adv-rarity-input-5").innerHTML = '<input type="radio" value=5 name="rarity" oninput="calcStats()" checked=1><label for="adv-rarity-input-5">5★</label>';
 if (LB_COUNT > 4) {
   document.getElementById("adv-rarity-input-s").innerHTML = '<input type="radio" value=s name="rarity" oninput="calcStats()" checked=1><label for="adv-rarity-input-s">S★</label>';
   document.getElementById("adv-level-input").innerHTML = '<label for="adv-level-input-field" style="font-weight:bold;">Level</label><input type="number" id="adv-level-input-field" value=100 min=1 max=100 style="width:40px; text-align:center; margin-left:5px;" oninput="calcStats()">';
 } else {
   document.getElementById("adv-level-input").innerHTML = '<label for="adv-level-input-field" style="font-weight:bold;">Level</label><input type="number" id="adv-level-input-field" value=80 min=1 max=80 style="width:40px; text-align:center; margin-left:5px;" oninput="calcStats()">';
 }

}

// Calculate the HP and STR stats function calcStats() {

 // Get the level and rarity
 var levelInput = document.getElementById('adv-level-input-field');
 var level = levelInput.value;
 var rarity = document.querySelector('input[name = "rarity"]:checked').value;
 // Manually set the level cap if we're dealing with a lower rarity
 switch (rarity) {
   case "3":
     if (level > 60) {
       level = 60;
       levelInput.value = "60";
     }
     break;
   case "4":
     if (level > 70) {
       level = 70;
       levelInput.value = "70";
     }
     break;
   case "5":
     if (level > MAX_LEVEL) {
       level = MAX_LEVEL;
       levelInput.value = MAX_LEVEL;
     }
     break;
   case "s":
     if (level > LB_MAX_LEVEL) {
       level = LB_MAX_LEVEL;
       levelInput.value = LB_MAX_LEVEL;
     }
 }
 
 // Validate the level and rarity before calculating HP and Str
 if(validateLevel(level) && validateRarity(rarity)) {
   setHP(calculateHP(level, rarity), level)
   setStr(calculateStr(level, rarity), level)
 } else {
   setHP("-");
   setStr("-");
 }

}

// Check if level is a number we can calculate with function validateLevel(value) {

 if(isNaN(value) || value == "") {
   return false;
 }
 return true;

}

// Check if rarity is either 3, 4, or 5 function validateRarity(rarity) {

 if(rarity == 3 || rarity == 4 || rarity == 5 || rarity == "3" || rarity == "4" || rarity == "5" || rarity == "s" || rarity == "S") {
   return true;
 }
 return false;

}

// Set the HP value in the display function setHP(value, level) {

 if (value != "-") {
   document.getElementById("adv-hp-label").innerHTML = "Level " + level + " HP"
 } else {
   document.getElementById("adv-hp-label").innerHTML = "HP"
 }
 document.getElementById("adv-hp").innerHTML = value;

}

// Set the Str value in the display function setStr(value, level) {

 if (value != "-") {
   document.getElementById("adv-str-label").innerHTML = "Level " + level + " Str"
 } else {
   document.getElementById("adv-str-label").innerHTML = "Str"
 }
 document.getElementById("adv-str").innerHTML = value;

}

// Calculate the HP function calculateHP(level, rarity) {

 var levelDiff = MAX_LEVEL - MIN_LEVEL;
 var steps = (MAX_HP - MIN_HP[2]) / levelDiff;
 var statGain = (level-1) * steps;
 return Math.ceil(MIN_HP[rarity-3] + statGain);

}

// Calculate the Str function calculateStr(level, rarity) {

 var levelDiff = MAX_LEVEL - MIN_LEVEL;
 var steps = (MAX_STR - MIN_STR[2]) / levelDiff;
 var statGain = (level-1) * steps;
 return Math.ceil(MIN_STR[rarity-3] + statGain);

} </script>

 <form id="adv-rarity-select" style="display:inline;">
 </form>
Max 5★ HP:
Max 5★ Str:
  • Skill <script type="text/javascript">

// Constants const LB_COUNT = ; const MIN_LEVEL = 1; const MAX_LEVEL = 80; const LB_MAX_LEVEL = 100; const MIN_HP = [,,]; const MAX_HP = ; const MIN_STR = [,,]; const MAX_STR = ; const NAT_RARITY = ;;

// Load modules, init, etc. document.addEventListener("DOMContentLoaded", function(event) {

 init();
 calcStats();

});

// Initialize the empty divs with content function init() {

 if (NAT_RARITY == 3) {
   document.getElementById("adv-rarity-input-3").innerHTML = '<input type="radio" value=3 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-3">3★</label>';
   document.getElementById("adv-rarity-input-4").innerHTML = '<input type="radio" value=4 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-4">4★</label>';
 } else if (NAT_RARITY == 4) {
   document.getElementById("adv-rarity-input-4").innerHTML = '<input type="radio" value=4 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-4">4★</label>';
 }
 document.getElementById("adv-rarity-input-5").innerHTML = '<input type="radio" value=5 name="rarity" oninput="calcStats()" checked=1><label for="adv-rarity-input-5">5★</label>';
 if (LB_COUNT > 4) {
   document.getElementById("adv-rarity-input-s").innerHTML = '<input type="radio" value=s name="rarity" oninput="calcStats()" checked=1><label for="adv-rarity-input-s">S★</label>';
   document.getElementById("adv-level-input").innerHTML = '<label for="adv-level-input-field" style="font-weight:bold;">Level</label><input type="number" id="adv-level-input-field" value=100 min=1 max=100 style="width:40px; text-align:center; margin-left:5px;" oninput="calcStats()">';
 } else {
   document.getElementById("adv-level-input").innerHTML = '<label for="adv-level-input-field" style="font-weight:bold;">Level</label><input type="number" id="adv-level-input-field" value=80 min=1 max=80 style="width:40px; text-align:center; margin-left:5px;" oninput="calcStats()">';
 }

}

// Calculate the HP and STR stats function calcStats() {

 // Get the level and rarity
 var levelInput = document.getElementById('adv-level-input-field');
 var level = levelInput.value;
 var rarity = document.querySelector('input[name = "rarity"]:checked').value;
 // Manually set the level cap if we're dealing with a lower rarity
 switch (rarity) {
   case "3":
     if (level > 60) {
       level = 60;
       levelInput.value = "60";
     }
     break;
   case "4":
     if (level > 70) {
       level = 70;
       levelInput.value = "70";
     }
     break;
   case "5":
     if (level > MAX_LEVEL) {
       level = MAX_LEVEL;
       levelInput.value = MAX_LEVEL;
     }
     break;
   case "s":
     if (level > LB_MAX_LEVEL) {
       level = LB_MAX_LEVEL;
       levelInput.value = LB_MAX_LEVEL;
     }
 }
 
 // Validate the level and rarity before calculating HP and Str
 if(validateLevel(level) && validateRarity(rarity)) {
   setHP(calculateHP(level, rarity), level)
   setStr(calculateStr(level, rarity), level)
 } else {
   setHP("-");
   setStr("-");
 }

}

// Check if level is a number we can calculate with function validateLevel(value) {

 if(isNaN(value) || value == "") {
   return false;
 }
 return true;

}

// Check if rarity is either 3, 4, or 5 function validateRarity(rarity) {

 if(rarity == 3 || rarity == 4 || rarity == 5 || rarity == "3" || rarity == "4" || rarity == "5" || rarity == "s" || rarity == "S") {
   return true;
 }
 return false;

}

// Set the HP value in the display function setHP(value, level) {

 if (value != "-") {
   document.getElementById("adv-hp-label").innerHTML = "Level " + level + " HP"
 } else {
   document.getElementById("adv-hp-label").innerHTML = "HP"
 }
 document.getElementById("adv-hp").innerHTML = value;

}

// Set the Str value in the display function setStr(value, level) {

 if (value != "-") {
   document.getElementById("adv-str-label").innerHTML = "Level " + level + " Str"
 } else {
   document.getElementById("adv-str-label").innerHTML = "Str"
 }
 document.getElementById("adv-str").innerHTML = value;

}

// Calculate the HP function calculateHP(level, rarity) {

 var levelDiff = MAX_LEVEL - MIN_LEVEL;
 var steps = (MAX_HP - MIN_HP[2]) / levelDiff;
 var statGain = (level-1) * steps;
 return Math.ceil(MIN_HP[rarity-3] + statGain);

}

// Calculate the Str function calculateStr(level, rarity) {

 var levelDiff = MAX_LEVEL - MIN_LEVEL;
 var steps = (MAX_STR - MIN_STR[2]) / levelDiff;
 var statGain = (level-1) * steps;
 return Math.ceil(MIN_STR[rarity-3] + statGain);

} </script>

 <form id="adv-rarity-select" style="display:inline;">
 </form>
Max 5★ HP:
Max 5★ Str:
  • CoAbility <script type="text/javascript">

// Constants const LB_COUNT = ; const MIN_LEVEL = 1; const MAX_LEVEL = 80; const LB_MAX_LEVEL = 100; const MIN_HP = [,,]; const MAX_HP = ; const MIN_STR = [,,]; const MAX_STR = ; const NAT_RARITY = ;;

// Load modules, init, etc. document.addEventListener("DOMContentLoaded", function(event) {

 init();
 calcStats();

});

// Initialize the empty divs with content function init() {

 if (NAT_RARITY == 3) {
   document.getElementById("adv-rarity-input-3").innerHTML = '<input type="radio" value=3 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-3">3★</label>';
   document.getElementById("adv-rarity-input-4").innerHTML = '<input type="radio" value=4 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-4">4★</label>';
 } else if (NAT_RARITY == 4) {
   document.getElementById("adv-rarity-input-4").innerHTML = '<input type="radio" value=4 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-4">4★</label>';
 }
 document.getElementById("adv-rarity-input-5").innerHTML = '<input type="radio" value=5 name="rarity" oninput="calcStats()" checked=1><label for="adv-rarity-input-5">5★</label>';
 if (LB_COUNT > 4) {
   document.getElementById("adv-rarity-input-s").innerHTML = '<input type="radio" value=s name="rarity" oninput="calcStats()" checked=1><label for="adv-rarity-input-s">S★</label>';
   document.getElementById("adv-level-input").innerHTML = '<label for="adv-level-input-field" style="font-weight:bold;">Level</label><input type="number" id="adv-level-input-field" value=100 min=1 max=100 style="width:40px; text-align:center; margin-left:5px;" oninput="calcStats()">';
 } else {
   document.getElementById("adv-level-input").innerHTML = '<label for="adv-level-input-field" style="font-weight:bold;">Level</label><input type="number" id="adv-level-input-field" value=80 min=1 max=80 style="width:40px; text-align:center; margin-left:5px;" oninput="calcStats()">';
 }

}

// Calculate the HP and STR stats function calcStats() {

 // Get the level and rarity
 var levelInput = document.getElementById('adv-level-input-field');
 var level = levelInput.value;
 var rarity = document.querySelector('input[name = "rarity"]:checked').value;
 // Manually set the level cap if we're dealing with a lower rarity
 switch (rarity) {
   case "3":
     if (level > 60) {
       level = 60;
       levelInput.value = "60";
     }
     break;
   case "4":
     if (level > 70) {
       level = 70;
       levelInput.value = "70";
     }
     break;
   case "5":
     if (level > MAX_LEVEL) {
       level = MAX_LEVEL;
       levelInput.value = MAX_LEVEL;
     }
     break;
   case "s":
     if (level > LB_MAX_LEVEL) {
       level = LB_MAX_LEVEL;
       levelInput.value = LB_MAX_LEVEL;
     }
 }
 
 // Validate the level and rarity before calculating HP and Str
 if(validateLevel(level) && validateRarity(rarity)) {
   setHP(calculateHP(level, rarity), level)
   setStr(calculateStr(level, rarity), level)
 } else {
   setHP("-");
   setStr("-");
 }

}

// Check if level is a number we can calculate with function validateLevel(value) {

 if(isNaN(value) || value == "") {
   return false;
 }
 return true;

}

// Check if rarity is either 3, 4, or 5 function validateRarity(rarity) {

 if(rarity == 3 || rarity == 4 || rarity == 5 || rarity == "3" || rarity == "4" || rarity == "5" || rarity == "s" || rarity == "S") {
   return true;
 }
 return false;

}

// Set the HP value in the display function setHP(value, level) {

 if (value != "-") {
   document.getElementById("adv-hp-label").innerHTML = "Level " + level + " HP"
 } else {
   document.getElementById("adv-hp-label").innerHTML = "HP"
 }
 document.getElementById("adv-hp").innerHTML = value;

}

// Set the Str value in the display function setStr(value, level) {

 if (value != "-") {
   document.getElementById("adv-str-label").innerHTML = "Level " + level + " Str"
 } else {
   document.getElementById("adv-str-label").innerHTML = "Str"
 }
 document.getElementById("adv-str").innerHTML = value;

}

// Calculate the HP function calculateHP(level, rarity) {

 var levelDiff = MAX_LEVEL - MIN_LEVEL;
 var steps = (MAX_HP - MIN_HP[2]) / levelDiff;
 var statGain = (level-1) * steps;
 return Math.ceil(MIN_HP[rarity-3] + statGain);

}

// Calculate the Str function calculateStr(level, rarity) {

 var levelDiff = MAX_LEVEL - MIN_LEVEL;
 var steps = (MAX_STR - MIN_STR[2]) / levelDiff;
 var statGain = (level-1) * steps;
 return Math.ceil(MIN_STR[rarity-3] + statGain);

} </script>

 <form id="adv-rarity-select" style="display:inline;">
 </form>
Max 5★ HP:
Max 5★ Str:
  • Ability <script type="text/javascript">

// Constants const LB_COUNT = ; const MIN_LEVEL = 1; const MAX_LEVEL = 80; const LB_MAX_LEVEL = 100; const MIN_HP = [,,]; const MAX_HP = ; const MIN_STR = [,,]; const MAX_STR = ; const NAT_RARITY = ;;

// Load modules, init, etc. document.addEventListener("DOMContentLoaded", function(event) {

 init();
 calcStats();

});

// Initialize the empty divs with content function init() {

 if (NAT_RARITY == 3) {
   document.getElementById("adv-rarity-input-3").innerHTML = '<input type="radio" value=3 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-3">3★</label>';
   document.getElementById("adv-rarity-input-4").innerHTML = '<input type="radio" value=4 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-4">4★</label>';
 } else if (NAT_RARITY == 4) {
   document.getElementById("adv-rarity-input-4").innerHTML = '<input type="radio" value=4 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-4">4★</label>';
 }
 document.getElementById("adv-rarity-input-5").innerHTML = '<input type="radio" value=5 name="rarity" oninput="calcStats()" checked=1><label for="adv-rarity-input-5">5★</label>';
 if (LB_COUNT > 4) {
   document.getElementById("adv-rarity-input-s").innerHTML = '<input type="radio" value=s name="rarity" oninput="calcStats()" checked=1><label for="adv-rarity-input-s">S★</label>';
   document.getElementById("adv-level-input").innerHTML = '<label for="adv-level-input-field" style="font-weight:bold;">Level</label><input type="number" id="adv-level-input-field" value=100 min=1 max=100 style="width:40px; text-align:center; margin-left:5px;" oninput="calcStats()">';
 } else {
   document.getElementById("adv-level-input").innerHTML = '<label for="adv-level-input-field" style="font-weight:bold;">Level</label><input type="number" id="adv-level-input-field" value=80 min=1 max=80 style="width:40px; text-align:center; margin-left:5px;" oninput="calcStats()">';
 }

}

// Calculate the HP and STR stats function calcStats() {

 // Get the level and rarity
 var levelInput = document.getElementById('adv-level-input-field');
 var level = levelInput.value;
 var rarity = document.querySelector('input[name = "rarity"]:checked').value;
 // Manually set the level cap if we're dealing with a lower rarity
 switch (rarity) {
   case "3":
     if (level > 60) {
       level = 60;
       levelInput.value = "60";
     }
     break;
   case "4":
     if (level > 70) {
       level = 70;
       levelInput.value = "70";
     }
     break;
   case "5":
     if (level > MAX_LEVEL) {
       level = MAX_LEVEL;
       levelInput.value = MAX_LEVEL;
     }
     break;
   case "s":
     if (level > LB_MAX_LEVEL) {
       level = LB_MAX_LEVEL;
       levelInput.value = LB_MAX_LEVEL;
     }
 }
 
 // Validate the level and rarity before calculating HP and Str
 if(validateLevel(level) && validateRarity(rarity)) {
   setHP(calculateHP(level, rarity), level)
   setStr(calculateStr(level, rarity), level)
 } else {
   setHP("-");
   setStr("-");
 }

}

// Check if level is a number we can calculate with function validateLevel(value) {

 if(isNaN(value) || value == "") {
   return false;
 }
 return true;

}

// Check if rarity is either 3, 4, or 5 function validateRarity(rarity) {

 if(rarity == 3 || rarity == 4 || rarity == 5 || rarity == "3" || rarity == "4" || rarity == "5" || rarity == "s" || rarity == "S") {
   return true;
 }
 return false;

}

// Set the HP value in the display function setHP(value, level) {

 if (value != "-") {
   document.getElementById("adv-hp-label").innerHTML = "Level " + level + " HP"
 } else {
   document.getElementById("adv-hp-label").innerHTML = "HP"
 }
 document.getElementById("adv-hp").innerHTML = value;

}

// Set the Str value in the display function setStr(value, level) {

 if (value != "-") {
   document.getElementById("adv-str-label").innerHTML = "Level " + level + " Str"
 } else {
   document.getElementById("adv-str-label").innerHTML = "Str"
 }
 document.getElementById("adv-str").innerHTML = value;

}

// Calculate the HP function calculateHP(level, rarity) {

 var levelDiff = MAX_LEVEL - MIN_LEVEL;
 var steps = (MAX_HP - MIN_HP[2]) / levelDiff;
 var statGain = (level-1) * steps;
 return Math.ceil(MIN_HP[rarity-3] + statGain);

}

// Calculate the Str function calculateStr(level, rarity) {

 var levelDiff = MAX_LEVEL - MIN_LEVEL;
 var steps = (MAX_STR - MIN_STR[2]) / levelDiff;
 var statGain = (level-1) * steps;
 return Math.ceil(MIN_STR[rarity-3] + statGain);

} </script>

 <form id="adv-rarity-select" style="display:inline;">
 </form>
Max 5★ HP:
Max 5★ Str:
  • Afflictions <script type="text/javascript">

// Constants const LB_COUNT = ; const MIN_LEVEL = 1; const MAX_LEVEL = 80; const LB_MAX_LEVEL = 100; const MIN_HP = [,,]; const MAX_HP = ; const MIN_STR = [,,]; const MAX_STR = ; const NAT_RARITY = ;;

// Load modules, init, etc. document.addEventListener("DOMContentLoaded", function(event) {

 init();
 calcStats();

});

// Initialize the empty divs with content function init() {

 if (NAT_RARITY == 3) {
   document.getElementById("adv-rarity-input-3").innerHTML = '<input type="radio" value=3 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-3">3★</label>';
   document.getElementById("adv-rarity-input-4").innerHTML = '<input type="radio" value=4 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-4">4★</label>';
 } else if (NAT_RARITY == 4) {
   document.getElementById("adv-rarity-input-4").innerHTML = '<input type="radio" value=4 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-4">4★</label>';
 }
 document.getElementById("adv-rarity-input-5").innerHTML = '<input type="radio" value=5 name="rarity" oninput="calcStats()" checked=1><label for="adv-rarity-input-5">5★</label>';
 if (LB_COUNT > 4) {
   document.getElementById("adv-rarity-input-s").innerHTML = '<input type="radio" value=s name="rarity" oninput="calcStats()" checked=1><label for="adv-rarity-input-s">S★</label>';
   document.getElementById("adv-level-input").innerHTML = '<label for="adv-level-input-field" style="font-weight:bold;">Level</label><input type="number" id="adv-level-input-field" value=100 min=1 max=100 style="width:40px; text-align:center; margin-left:5px;" oninput="calcStats()">';
 } else {
   document.getElementById("adv-level-input").innerHTML = '<label for="adv-level-input-field" style="font-weight:bold;">Level</label><input type="number" id="adv-level-input-field" value=80 min=1 max=80 style="width:40px; text-align:center; margin-left:5px;" oninput="calcStats()">';
 }

}

// Calculate the HP and STR stats function calcStats() {

 // Get the level and rarity
 var levelInput = document.getElementById('adv-level-input-field');
 var level = levelInput.value;
 var rarity = document.querySelector('input[name = "rarity"]:checked').value;
 // Manually set the level cap if we're dealing with a lower rarity
 switch (rarity) {
   case "3":
     if (level > 60) {
       level = 60;
       levelInput.value = "60";
     }
     break;
   case "4":
     if (level > 70) {
       level = 70;
       levelInput.value = "70";
     }
     break;
   case "5":
     if (level > MAX_LEVEL) {
       level = MAX_LEVEL;
       levelInput.value = MAX_LEVEL;
     }
     break;
   case "s":
     if (level > LB_MAX_LEVEL) {
       level = LB_MAX_LEVEL;
       levelInput.value = LB_MAX_LEVEL;
     }
 }
 
 // Validate the level and rarity before calculating HP and Str
 if(validateLevel(level) && validateRarity(rarity)) {
   setHP(calculateHP(level, rarity), level)
   setStr(calculateStr(level, rarity), level)
 } else {
   setHP("-");
   setStr("-");
 }

}

// Check if level is a number we can calculate with function validateLevel(value) {

 if(isNaN(value) || value == "") {
   return false;
 }
 return true;

}

// Check if rarity is either 3, 4, or 5 function validateRarity(rarity) {

 if(rarity == 3 || rarity == 4 || rarity == 5 || rarity == "3" || rarity == "4" || rarity == "5" || rarity == "s" || rarity == "S") {
   return true;
 }
 return false;

}

// Set the HP value in the display function setHP(value, level) {

 if (value != "-") {
   document.getElementById("adv-hp-label").innerHTML = "Level " + level + " HP"
 } else {
   document.getElementById("adv-hp-label").innerHTML = "HP"
 }
 document.getElementById("adv-hp").innerHTML = value;

}

// Set the Str value in the display function setStr(value, level) {

 if (value != "-") {
   document.getElementById("adv-str-label").innerHTML = "Level " + level + " Str"
 } else {
   document.getElementById("adv-str-label").innerHTML = "Str"
 }
 document.getElementById("adv-str").innerHTML = value;

}

// Calculate the HP function calculateHP(level, rarity) {

 var levelDiff = MAX_LEVEL - MIN_LEVEL;
 var steps = (MAX_HP - MIN_HP[2]) / levelDiff;
 var statGain = (level-1) * steps;
 return Math.ceil(MIN_HP[rarity-3] + statGain);

}

// Calculate the Str function calculateStr(level, rarity) {

 var levelDiff = MAX_LEVEL - MIN_LEVEL;
 var steps = (MAX_STR - MIN_STR[2]) / levelDiff;
 var statGain = (level-1) * steps;
 return Math.ceil(MIN_STR[rarity-3] + statGain);

} </script>

 <form id="adv-rarity-select" style="display:inline;">
 </form>
Max 5★ HP:
Max 5★ Str:
  • Condition <script type="text/javascript">

// Constants const LB_COUNT = ; const MIN_LEVEL = 1; const MAX_LEVEL = 80; const LB_MAX_LEVEL = 100; const MIN_HP = [,,]; const MAX_HP = ; const MIN_STR = [,,]; const MAX_STR = ; const NAT_RARITY = ;;

// Load modules, init, etc. document.addEventListener("DOMContentLoaded", function(event) {

 init();
 calcStats();

});

// Initialize the empty divs with content function init() {

 if (NAT_RARITY == 3) {
   document.getElementById("adv-rarity-input-3").innerHTML = '<input type="radio" value=3 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-3">3★</label>';
   document.getElementById("adv-rarity-input-4").innerHTML = '<input type="radio" value=4 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-4">4★</label>';
 } else if (NAT_RARITY == 4) {
   document.getElementById("adv-rarity-input-4").innerHTML = '<input type="radio" value=4 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-4">4★</label>';
 }
 document.getElementById("adv-rarity-input-5").innerHTML = '<input type="radio" value=5 name="rarity" oninput="calcStats()" checked=1><label for="adv-rarity-input-5">5★</label>';
 if (LB_COUNT > 4) {
   document.getElementById("adv-rarity-input-s").innerHTML = '<input type="radio" value=s name="rarity" oninput="calcStats()" checked=1><label for="adv-rarity-input-s">S★</label>';
   document.getElementById("adv-level-input").innerHTML = '<label for="adv-level-input-field" style="font-weight:bold;">Level</label><input type="number" id="adv-level-input-field" value=100 min=1 max=100 style="width:40px; text-align:center; margin-left:5px;" oninput="calcStats()">';
 } else {
   document.getElementById("adv-level-input").innerHTML = '<label for="adv-level-input-field" style="font-weight:bold;">Level</label><input type="number" id="adv-level-input-field" value=80 min=1 max=80 style="width:40px; text-align:center; margin-left:5px;" oninput="calcStats()">';
 }

}

// Calculate the HP and STR stats function calcStats() {

 // Get the level and rarity
 var levelInput = document.getElementById('adv-level-input-field');
 var level = levelInput.value;
 var rarity = document.querySelector('input[name = "rarity"]:checked').value;
 // Manually set the level cap if we're dealing with a lower rarity
 switch (rarity) {
   case "3":
     if (level > 60) {
       level = 60;
       levelInput.value = "60";
     }
     break;
   case "4":
     if (level > 70) {
       level = 70;
       levelInput.value = "70";
     }
     break;
   case "5":
     if (level > MAX_LEVEL) {
       level = MAX_LEVEL;
       levelInput.value = MAX_LEVEL;
     }
     break;
   case "s":
     if (level > LB_MAX_LEVEL) {
       level = LB_MAX_LEVEL;
       levelInput.value = LB_MAX_LEVEL;
     }
 }
 
 // Validate the level and rarity before calculating HP and Str
 if(validateLevel(level) && validateRarity(rarity)) {
   setHP(calculateHP(level, rarity), level)
   setStr(calculateStr(level, rarity), level)
 } else {
   setHP("-");
   setStr("-");
 }

}

// Check if level is a number we can calculate with function validateLevel(value) {

 if(isNaN(value) || value == "") {
   return false;
 }
 return true;

}

// Check if rarity is either 3, 4, or 5 function validateRarity(rarity) {

 if(rarity == 3 || rarity == 4 || rarity == 5 || rarity == "3" || rarity == "4" || rarity == "5" || rarity == "s" || rarity == "S") {
   return true;
 }
 return false;

}

// Set the HP value in the display function setHP(value, level) {

 if (value != "-") {
   document.getElementById("adv-hp-label").innerHTML = "Level " + level + " HP"
 } else {
   document.getElementById("adv-hp-label").innerHTML = "HP"
 }
 document.getElementById("adv-hp").innerHTML = value;

}

// Set the Str value in the display function setStr(value, level) {

 if (value != "-") {
   document.getElementById("adv-str-label").innerHTML = "Level " + level + " Str"
 } else {
   document.getElementById("adv-str-label").innerHTML = "Str"
 }
 document.getElementById("adv-str").innerHTML = value;

}

// Calculate the HP function calculateHP(level, rarity) {

 var levelDiff = MAX_LEVEL - MIN_LEVEL;
 var steps = (MAX_HP - MIN_HP[2]) / levelDiff;
 var statGain = (level-1) * steps;
 return Math.ceil(MIN_HP[rarity-3] + statGain);

}

// Calculate the Str function calculateStr(level, rarity) {

 var levelDiff = MAX_LEVEL - MIN_LEVEL;
 var steps = (MAX_STR - MIN_STR[2]) / levelDiff;
 var statGain = (level-1) * steps;
 return Math.ceil(MIN_STR[rarity-3] + statGain);

} </script>

 <form id="adv-rarity-select" style="display:inline;">
 </form>
Max 5★ HP:
Max 5★ Str:

Examples

{{User:Caledor92/Sandbox3|Adventurer|Lily}}

<script type="text/javascript"> // Constants const LB_COUNT = ; const MIN_LEVEL = 1; const MAX_LEVEL = 80; const LB_MAX_LEVEL = 100; const MIN_HP = [,,]; const MAX_HP = ; const MIN_STR = [,,]; const MAX_STR = ; const NAT_RARITY = ;;

// Load modules, init, etc. document.addEventListener("DOMContentLoaded", function(event) {

 init();
 calcStats();

});

// Initialize the empty divs with content function init() {

 if (NAT_RARITY == 3) {
   document.getElementById("adv-rarity-input-3").innerHTML = '<input type="radio" value=3 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-3">3★</label>';
   document.getElementById("adv-rarity-input-4").innerHTML = '<input type="radio" value=4 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-4">4★</label>';
 } else if (NAT_RARITY == 4) {
   document.getElementById("adv-rarity-input-4").innerHTML = '<input type="radio" value=4 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-4">4★</label>';
 }
 document.getElementById("adv-rarity-input-5").innerHTML = '<input type="radio" value=5 name="rarity" oninput="calcStats()" checked=1><label for="adv-rarity-input-5">5★</label>';
 if (LB_COUNT > 4) {
   document.getElementById("adv-rarity-input-s").innerHTML = '<input type="radio" value=s name="rarity" oninput="calcStats()" checked=1><label for="adv-rarity-input-s">S★</label>';
   document.getElementById("adv-level-input").innerHTML = '<label for="adv-level-input-field" style="font-weight:bold;">Level</label><input type="number" id="adv-level-input-field" value=100 min=1 max=100 style="width:40px; text-align:center; margin-left:5px;" oninput="calcStats()">';
 } else {
   document.getElementById("adv-level-input").innerHTML = '<label for="adv-level-input-field" style="font-weight:bold;">Level</label><input type="number" id="adv-level-input-field" value=80 min=1 max=80 style="width:40px; text-align:center; margin-left:5px;" oninput="calcStats()">';
 }

}

// Calculate the HP and STR stats function calcStats() {

 // Get the level and rarity
 var levelInput = document.getElementById('adv-level-input-field');
 var level = levelInput.value;
 var rarity = document.querySelector('input[name = "rarity"]:checked').value;
 // Manually set the level cap if we're dealing with a lower rarity
 switch (rarity) {
   case "3":
     if (level > 60) {
       level = 60;
       levelInput.value = "60";
     }
     break;
   case "4":
     if (level > 70) {
       level = 70;
       levelInput.value = "70";
     }
     break;
   case "5":
     if (level > MAX_LEVEL) {
       level = MAX_LEVEL;
       levelInput.value = MAX_LEVEL;
     }
     break;
   case "s":
     if (level > LB_MAX_LEVEL) {
       level = LB_MAX_LEVEL;
       levelInput.value = LB_MAX_LEVEL;
     }
 }
 
 // Validate the level and rarity before calculating HP and Str
 if(validateLevel(level) && validateRarity(rarity)) {
   setHP(calculateHP(level, rarity), level)
   setStr(calculateStr(level, rarity), level)
 } else {
   setHP("-");
   setStr("-");
 }

}

// Check if level is a number we can calculate with function validateLevel(value) {

 if(isNaN(value) || value == "") {
   return false;
 }
 return true;

}

// Check if rarity is either 3, 4, or 5 function validateRarity(rarity) {

 if(rarity == 3 || rarity == 4 || rarity == 5 || rarity == "3" || rarity == "4" || rarity == "5" || rarity == "s" || rarity == "S") {
   return true;
 }
 return false;

}

// Set the HP value in the display function setHP(value, level) {

 if (value != "-") {
   document.getElementById("adv-hp-label").innerHTML = "Level " + level + " HP"
 } else {
   document.getElementById("adv-hp-label").innerHTML = "HP"
 }
 document.getElementById("adv-hp").innerHTML = value;

}

// Set the Str value in the display function setStr(value, level) {

 if (value != "-") {
   document.getElementById("adv-str-label").innerHTML = "Level " + level + " Str"
 } else {
   document.getElementById("adv-str-label").innerHTML = "Str"
 }
 document.getElementById("adv-str").innerHTML = value;

}

// Calculate the HP function calculateHP(level, rarity) {

 var levelDiff = MAX_LEVEL - MIN_LEVEL;
 var steps = (MAX_HP - MIN_HP[2]) / levelDiff;
 var statGain = (level-1) * steps;
 return Math.ceil(MIN_HP[rarity-3] + statGain);

}

// Calculate the Str function calculateStr(level, rarity) {

 var levelDiff = MAX_LEVEL - MIN_LEVEL;
 var steps = (MAX_STR - MIN_STR[2]) / levelDiff;
 var statGain = (level-1) * steps;
 return Math.ceil(MIN_STR[rarity-3] + statGain);

} </script>

 <form id="adv-rarity-select" style="display:inline;">
 </form>
Max 5★ HP:
Max 5★ Str:
{{User:Caledor92/Sandbox3|Adventurer|Lily|text=1}}, {{User:Caledor92/Sandbox3|Adventurer|Lily|text=1}}, {{User:Caledor92/Sandbox3|Adventurer|Lily|text=1}}

<script type="text/javascript"> // Constants const LB_COUNT = ; const MIN_LEVEL = 1; const MAX_LEVEL = 80; const LB_MAX_LEVEL = 100; const MIN_HP = [,,]; const MAX_HP = ; const MIN_STR = [,,]; const MAX_STR = ; const NAT_RARITY = ;;

// Load modules, init, etc. document.addEventListener("DOMContentLoaded", function(event) {

 init();
 calcStats();

});

// Initialize the empty divs with content function init() {

 if (NAT_RARITY == 3) {
   document.getElementById("adv-rarity-input-3").innerHTML = '<input type="radio" value=3 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-3">3★</label>';
   document.getElementById("adv-rarity-input-4").innerHTML = '<input type="radio" value=4 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-4">4★</label>';
 } else if (NAT_RARITY == 4) {
   document.getElementById("adv-rarity-input-4").innerHTML = '<input type="radio" value=4 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-4">4★</label>';
 }
 document.getElementById("adv-rarity-input-5").innerHTML = '<input type="radio" value=5 name="rarity" oninput="calcStats()" checked=1><label for="adv-rarity-input-5">5★</label>';
 if (LB_COUNT > 4) {
   document.getElementById("adv-rarity-input-s").innerHTML = '<input type="radio" value=s name="rarity" oninput="calcStats()" checked=1><label for="adv-rarity-input-s">S★</label>';
   document.getElementById("adv-level-input").innerHTML = '<label for="adv-level-input-field" style="font-weight:bold;">Level</label><input type="number" id="adv-level-input-field" value=100 min=1 max=100 style="width:40px; text-align:center; margin-left:5px;" oninput="calcStats()">';
 } else {
   document.getElementById("adv-level-input").innerHTML = '<label for="adv-level-input-field" style="font-weight:bold;">Level</label><input type="number" id="adv-level-input-field" value=80 min=1 max=80 style="width:40px; text-align:center; margin-left:5px;" oninput="calcStats()">';
 }

}

// Calculate the HP and STR stats function calcStats() {

 // Get the level and rarity
 var levelInput = document.getElementById('adv-level-input-field');
 var level = levelInput.value;
 var rarity = document.querySelector('input[name = "rarity"]:checked').value;
 // Manually set the level cap if we're dealing with a lower rarity
 switch (rarity) {
   case "3":
     if (level > 60) {
       level = 60;
       levelInput.value = "60";
     }
     break;
   case "4":
     if (level > 70) {
       level = 70;
       levelInput.value = "70";
     }
     break;
   case "5":
     if (level > MAX_LEVEL) {
       level = MAX_LEVEL;
       levelInput.value = MAX_LEVEL;
     }
     break;
   case "s":
     if (level > LB_MAX_LEVEL) {
       level = LB_MAX_LEVEL;
       levelInput.value = LB_MAX_LEVEL;
     }
 }
 
 // Validate the level and rarity before calculating HP and Str
 if(validateLevel(level) && validateRarity(rarity)) {
   setHP(calculateHP(level, rarity), level)
   setStr(calculateStr(level, rarity), level)
 } else {
   setHP("-");
   setStr("-");
 }

}

// Check if level is a number we can calculate with function validateLevel(value) {

 if(isNaN(value) || value == "") {
   return false;
 }
 return true;

}

// Check if rarity is either 3, 4, or 5 function validateRarity(rarity) {

 if(rarity == 3 || rarity == 4 || rarity == 5 || rarity == "3" || rarity == "4" || rarity == "5" || rarity == "s" || rarity == "S") {
   return true;
 }
 return false;

}

// Set the HP value in the display function setHP(value, level) {

 if (value != "-") {
   document.getElementById("adv-hp-label").innerHTML = "Level " + level + " HP"
 } else {
   document.getElementById("adv-hp-label").innerHTML = "HP"
 }
 document.getElementById("adv-hp").innerHTML = value;

}

// Set the Str value in the display function setStr(value, level) {

 if (value != "-") {
   document.getElementById("adv-str-label").innerHTML = "Level " + level + " Str"
 } else {
   document.getElementById("adv-str-label").innerHTML = "Str"
 }
 document.getElementById("adv-str").innerHTML = value;

}

// Calculate the HP function calculateHP(level, rarity) {

 var levelDiff = MAX_LEVEL - MIN_LEVEL;
 var steps = (MAX_HP - MIN_HP[2]) / levelDiff;
 var statGain = (level-1) * steps;
 return Math.ceil(MIN_HP[rarity-3] + statGain);

}

// Calculate the Str function calculateStr(level, rarity) {

 var levelDiff = MAX_LEVEL - MIN_LEVEL;
 var steps = (MAX_STR - MIN_STR[2]) / levelDiff;
 var statGain = (level-1) * steps;
 return Math.ceil(MIN_STR[rarity-3] + statGain);

} </script>

 <form id="adv-rarity-select" style="display:inline;">
 </form>
Max 5★ HP:
Max 5★ Str:
, <script type="text/javascript">

// Constants const LB_COUNT = ; const MIN_LEVEL = 1; const MAX_LEVEL = 80; const LB_MAX_LEVEL = 100; const MIN_HP = [,,]; const MAX_HP = ; const MIN_STR = [,,]; const MAX_STR = ; const NAT_RARITY = ;;

// Load modules, init, etc. document.addEventListener("DOMContentLoaded", function(event) {

 init();
 calcStats();

});

// Initialize the empty divs with content function init() {

 if (NAT_RARITY == 3) {
   document.getElementById("adv-rarity-input-3").innerHTML = '<input type="radio" value=3 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-3">3★</label>';
   document.getElementById("adv-rarity-input-4").innerHTML = '<input type="radio" value=4 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-4">4★</label>';
 } else if (NAT_RARITY == 4) {
   document.getElementById("adv-rarity-input-4").innerHTML = '<input type="radio" value=4 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-4">4★</label>';
 }
 document.getElementById("adv-rarity-input-5").innerHTML = '<input type="radio" value=5 name="rarity" oninput="calcStats()" checked=1><label for="adv-rarity-input-5">5★</label>';
 if (LB_COUNT > 4) {
   document.getElementById("adv-rarity-input-s").innerHTML = '<input type="radio" value=s name="rarity" oninput="calcStats()" checked=1><label for="adv-rarity-input-s">S★</label>';
   document.getElementById("adv-level-input").innerHTML = '<label for="adv-level-input-field" style="font-weight:bold;">Level</label><input type="number" id="adv-level-input-field" value=100 min=1 max=100 style="width:40px; text-align:center; margin-left:5px;" oninput="calcStats()">';
 } else {
   document.getElementById("adv-level-input").innerHTML = '<label for="adv-level-input-field" style="font-weight:bold;">Level</label><input type="number" id="adv-level-input-field" value=80 min=1 max=80 style="width:40px; text-align:center; margin-left:5px;" oninput="calcStats()">';
 }

}

// Calculate the HP and STR stats function calcStats() {

 // Get the level and rarity
 var levelInput = document.getElementById('adv-level-input-field');
 var level = levelInput.value;
 var rarity = document.querySelector('input[name = "rarity"]:checked').value;
 // Manually set the level cap if we're dealing with a lower rarity
 switch (rarity) {
   case "3":
     if (level > 60) {
       level = 60;
       levelInput.value = "60";
     }
     break;
   case "4":
     if (level > 70) {
       level = 70;
       levelInput.value = "70";
     }
     break;
   case "5":
     if (level > MAX_LEVEL) {
       level = MAX_LEVEL;
       levelInput.value = MAX_LEVEL;
     }
     break;
   case "s":
     if (level > LB_MAX_LEVEL) {
       level = LB_MAX_LEVEL;
       levelInput.value = LB_MAX_LEVEL;
     }
 }
 
 // Validate the level and rarity before calculating HP and Str
 if(validateLevel(level) && validateRarity(rarity)) {
   setHP(calculateHP(level, rarity), level)
   setStr(calculateStr(level, rarity), level)
 } else {
   setHP("-");
   setStr("-");
 }

}

// Check if level is a number we can calculate with function validateLevel(value) {

 if(isNaN(value) || value == "") {
   return false;
 }
 return true;

}

// Check if rarity is either 3, 4, or 5 function validateRarity(rarity) {

 if(rarity == 3 || rarity == 4 || rarity == 5 || rarity == "3" || rarity == "4" || rarity == "5" || rarity == "s" || rarity == "S") {
   return true;
 }
 return false;

}

// Set the HP value in the display function setHP(value, level) {

 if (value != "-") {
   document.getElementById("adv-hp-label").innerHTML = "Level " + level + " HP"
 } else {
   document.getElementById("adv-hp-label").innerHTML = "HP"
 }
 document.getElementById("adv-hp").innerHTML = value;

}

// Set the Str value in the display function setStr(value, level) {

 if (value != "-") {
   document.getElementById("adv-str-label").innerHTML = "Level " + level + " Str"
 } else {
   document.getElementById("adv-str-label").innerHTML = "Str"
 }
 document.getElementById("adv-str").innerHTML = value;

}

// Calculate the HP function calculateHP(level, rarity) {

 var levelDiff = MAX_LEVEL - MIN_LEVEL;
 var steps = (MAX_HP - MIN_HP[2]) / levelDiff;
 var statGain = (level-1) * steps;
 return Math.ceil(MIN_HP[rarity-3] + statGain);

}

// Calculate the Str function calculateStr(level, rarity) {

 var levelDiff = MAX_LEVEL - MIN_LEVEL;
 var steps = (MAX_STR - MIN_STR[2]) / levelDiff;
 var statGain = (level-1) * steps;
 return Math.ceil(MIN_STR[rarity-3] + statGain);

} </script>

 <form id="adv-rarity-select" style="display:inline;">
 </form>
Max 5★ HP:
Max 5★ Str:
, <script type="text/javascript">

// Constants const LB_COUNT = ; const MIN_LEVEL = 1; const MAX_LEVEL = 80; const LB_MAX_LEVEL = 100; const MIN_HP = [,,]; const MAX_HP = ; const MIN_STR = [,,]; const MAX_STR = ; const NAT_RARITY = ;;

// Load modules, init, etc. document.addEventListener("DOMContentLoaded", function(event) {

 init();
 calcStats();

});

// Initialize the empty divs with content function init() {

 if (NAT_RARITY == 3) {
   document.getElementById("adv-rarity-input-3").innerHTML = '<input type="radio" value=3 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-3">3★</label>';
   document.getElementById("adv-rarity-input-4").innerHTML = '<input type="radio" value=4 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-4">4★</label>';
 } else if (NAT_RARITY == 4) {
   document.getElementById("adv-rarity-input-4").innerHTML = '<input type="radio" value=4 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-4">4★</label>';
 }
 document.getElementById("adv-rarity-input-5").innerHTML = '<input type="radio" value=5 name="rarity" oninput="calcStats()" checked=1><label for="adv-rarity-input-5">5★</label>';
 if (LB_COUNT > 4) {
   document.getElementById("adv-rarity-input-s").innerHTML = '<input type="radio" value=s name="rarity" oninput="calcStats()" checked=1><label for="adv-rarity-input-s">S★</label>';
   document.getElementById("adv-level-input").innerHTML = '<label for="adv-level-input-field" style="font-weight:bold;">Level</label><input type="number" id="adv-level-input-field" value=100 min=1 max=100 style="width:40px; text-align:center; margin-left:5px;" oninput="calcStats()">';
 } else {
   document.getElementById("adv-level-input").innerHTML = '<label for="adv-level-input-field" style="font-weight:bold;">Level</label><input type="number" id="adv-level-input-field" value=80 min=1 max=80 style="width:40px; text-align:center; margin-left:5px;" oninput="calcStats()">';
 }

}

// Calculate the HP and STR stats function calcStats() {

 // Get the level and rarity
 var levelInput = document.getElementById('adv-level-input-field');
 var level = levelInput.value;
 var rarity = document.querySelector('input[name = "rarity"]:checked').value;
 // Manually set the level cap if we're dealing with a lower rarity
 switch (rarity) {
   case "3":
     if (level > 60) {
       level = 60;
       levelInput.value = "60";
     }
     break;
   case "4":
     if (level > 70) {
       level = 70;
       levelInput.value = "70";
     }
     break;
   case "5":
     if (level > MAX_LEVEL) {
       level = MAX_LEVEL;
       levelInput.value = MAX_LEVEL;
     }
     break;
   case "s":
     if (level > LB_MAX_LEVEL) {
       level = LB_MAX_LEVEL;
       levelInput.value = LB_MAX_LEVEL;
     }
 }
 
 // Validate the level and rarity before calculating HP and Str
 if(validateLevel(level) && validateRarity(rarity)) {
   setHP(calculateHP(level, rarity), level)
   setStr(calculateStr(level, rarity), level)
 } else {
   setHP("-");
   setStr("-");
 }

}

// Check if level is a number we can calculate with function validateLevel(value) {

 if(isNaN(value) || value == "") {
   return false;
 }
 return true;

}

// Check if rarity is either 3, 4, or 5 function validateRarity(rarity) {

 if(rarity == 3 || rarity == 4 || rarity == 5 || rarity == "3" || rarity == "4" || rarity == "5" || rarity == "s" || rarity == "S") {
   return true;
 }
 return false;

}

// Set the HP value in the display function setHP(value, level) {

 if (value != "-") {
   document.getElementById("adv-hp-label").innerHTML = "Level " + level + " HP"
 } else {
   document.getElementById("adv-hp-label").innerHTML = "HP"
 }
 document.getElementById("adv-hp").innerHTML = value;

}

// Set the Str value in the display function setStr(value, level) {

 if (value != "-") {
   document.getElementById("adv-str-label").innerHTML = "Level " + level + " Str"
 } else {
   document.getElementById("adv-str-label").innerHTML = "Str"
 }
 document.getElementById("adv-str").innerHTML = value;

}

// Calculate the HP function calculateHP(level, rarity) {

 var levelDiff = MAX_LEVEL - MIN_LEVEL;
 var steps = (MAX_HP - MIN_HP[2]) / levelDiff;
 var statGain = (level-1) * steps;
 return Math.ceil(MIN_HP[rarity-3] + statGain);

}

// Calculate the Str function calculateStr(level, rarity) {

 var levelDiff = MAX_LEVEL - MIN_LEVEL;
 var steps = (MAX_STR - MIN_STR[2]) / levelDiff;
 var statGain = (level-1) * steps;
 return Math.ceil(MIN_STR[rarity-3] + statGain);

} </script>

 <form id="adv-rarity-select" style="display:inline;">
 </form>
Max 5★ HP:
Max 5★ Str:
{{User:Caledor92/Sandbox3|Adventurer|Lily|size=42px}}

<script type="text/javascript"> // Constants const LB_COUNT = ; const MIN_LEVEL = 1; const MAX_LEVEL = 80; const LB_MAX_LEVEL = 100; const MIN_HP = [,,]; const MAX_HP = ; const MIN_STR = [,,]; const MAX_STR = ; const NAT_RARITY = ;;

// Load modules, init, etc. document.addEventListener("DOMContentLoaded", function(event) {

 init();
 calcStats();

});

// Initialize the empty divs with content function init() {

 if (NAT_RARITY == 3) {
   document.getElementById("adv-rarity-input-3").innerHTML = '<input type="radio" value=3 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-3">3★</label>';
   document.getElementById("adv-rarity-input-4").innerHTML = '<input type="radio" value=4 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-4">4★</label>';
 } else if (NAT_RARITY == 4) {
   document.getElementById("adv-rarity-input-4").innerHTML = '<input type="radio" value=4 name="rarity" oninput="calcStats()"><label for="adv-rarity-input-4">4★</label>';
 }
 document.getElementById("adv-rarity-input-5").innerHTML = '<input type="radio" value=5 name="rarity" oninput="calcStats()" checked=1><label for="adv-rarity-input-5">5★</label>';
 if (LB_COUNT > 4) {
   document.getElementById("adv-rarity-input-s").innerHTML = '<input type="radio" value=s name="rarity" oninput="calcStats()" checked=1><label for="adv-rarity-input-s">S★</label>';
   document.getElementById("adv-level-input").innerHTML = '<label for="adv-level-input-field" style="font-weight:bold;">Level</label><input type="number" id="adv-level-input-field" value=100 min=1 max=100 style="width:40px; text-align:center; margin-left:5px;" oninput="calcStats()">';
 } else {
   document.getElementById("adv-level-input").innerHTML = '<label for="adv-level-input-field" style="font-weight:bold;">Level</label><input type="number" id="adv-level-input-field" value=80 min=1 max=80 style="width:40px; text-align:center; margin-left:5px;" oninput="calcStats()">';
 }

}

// Calculate the HP and STR stats function calcStats() {

 // Get the level and rarity
 var levelInput = document.getElementById('adv-level-input-field');
 var level = levelInput.value;
 var rarity = document.querySelector('input[name = "rarity"]:checked').value;
 // Manually set the level cap if we're dealing with a lower rarity
 switch (rarity) {
   case "3":
     if (level > 60) {
       level = 60;
       levelInput.value = "60";
     }
     break;
   case "4":
     if (level > 70) {
       level = 70;
       levelInput.value = "70";
     }
     break;
   case "5":
     if (level > MAX_LEVEL) {
       level = MAX_LEVEL;
       levelInput.value = MAX_LEVEL;
     }
     break;
   case "s":
     if (level > LB_MAX_LEVEL) {
       level = LB_MAX_LEVEL;
       levelInput.value = LB_MAX_LEVEL;
     }
 }
 
 // Validate the level and rarity before calculating HP and Str
 if(validateLevel(level) && validateRarity(rarity)) {
   setHP(calculateHP(level, rarity), level)
   setStr(calculateStr(level, rarity), level)
 } else {
   setHP("-");
   setStr("-");
 }

}

// Check if level is a number we can calculate with function validateLevel(value) {

 if(isNaN(value) || value == "") {
   return false;
 }
 return true;

}

// Check if rarity is either 3, 4, or 5 function validateRarity(rarity) {

 if(rarity == 3 || rarity == 4 || rarity == 5 || rarity == "3" || rarity == "4" || rarity == "5" || rarity == "s" || rarity == "S") {
   return true;
 }
 return false;

}

// Set the HP value in the display function setHP(value, level) {

 if (value != "-") {
   document.getElementById("adv-hp-label").innerHTML = "Level " + level + " HP"
 } else {
   document.getElementById("adv-hp-label").innerHTML = "HP"
 }
 document.getElementById("adv-hp").innerHTML = value;

}

// Set the Str value in the display function setStr(value, level) {

 if (value != "-") {
   document.getElementById("adv-str-label").innerHTML = "Level " + level + " Str"
 } else {
   document.getElementById("adv-str-label").innerHTML = "Str"
 }
 document.getElementById("adv-str").innerHTML = value;

}

// Calculate the HP function calculateHP(level, rarity) {

 var levelDiff = MAX_LEVEL - MIN_LEVEL;
 var steps = (MAX_HP - MIN_HP[2]) / levelDiff;
 var statGain = (level-1) * steps;
 return Math.ceil(MIN_HP[rarity-3] + statGain);

}

// Calculate the Str function calculateStr(level, rarity) {

 var levelDiff = MAX_LEVEL - MIN_LEVEL;
 var steps = (MAX_STR - MIN_STR[2]) / levelDiff;
 var statGain = (level-1) * steps;
 return Math.ceil(MIN_STR[rarity-3] + statGain);

} </script>

 <form id="adv-rarity-select" style="display:inline;">
 </form>
Max 5★ HP:
Max 5★ Str: