From b451c6d82de31aa45e11ef2b4af6908a2fd6f3e4 Mon Sep 17 00:00:00 2001 From: "sigonasr2, Sig, Sigo" Date: Mon, 19 Jul 2021 15:08:25 +0900 Subject: [PATCH] Create combos.js This file calculates all possible driver elemental blade combinations vs all the blade combo combinations in the game to figure out the maximum efficient blade combo combinations. --- combos.js | 137 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 137 insertions(+) create mode 100644 combos.js diff --git a/combos.js b/combos.js new file mode 100644 index 0000000..7bb363b --- /dev/null +++ b/combos.js @@ -0,0 +1,137 @@ +const FIRE=0; + const WATER=1; + const LIGHT=2; + const DARK=3; + const EARTH=4; + const ELECTRIC=5; + const WIND=6; + const ICE=7; + + var prettyNames={ + 0:"FIRE", + 1:"WATER", + 2:"LIGHT", + 3:"DARK", + 4:"EARTH", + 5:"ELECTRIC", + 6:"WIND", + 7:"ICE" + } + + var combos=[ + [FIRE,FIRE,FIRE], + [FIRE,WATER,FIRE], + [FIRE,WATER,FIRE], + [LIGHT,ELECTRIC,FIRE], + [WATER,WATER,WATER], + [ELECTRIC,ELECTRIC,WATER], + [LIGHT,LIGHT,WATER], + [FIRE,FIRE,LIGHT], + [LIGHT,LIGHT,LIGHT], + [WATER,WATER,DARK], + [ICE,ICE,DARK], + [WIND,WIND,EARTH], + [EARTH,FIRE,EARTH], + [ICE,ICE,EARTH], + [DARK,DARK,EARTH], + [EARTH,EARTH,ELECTRIC], + [WIND,WIND,ELECTRIC], + [DARK,LIGHT,ELECTRIC], + [WATER,EARTH,WIND], + [EARTH,FIRE,WIND], + [ICE,WATER,WIND], + [ELECTRIC,FIRE,WIND], + [FIRE,WATER,ICE], + [ELECTRIC,FIRE,ICE], + [WIND,ICE,ICE], + ] + + var maxcode="" + + var maxcombos=0 + var combolist=[] + + for (var i=0;i<=9;i++) { + maxcode+=String(ICE) + } + + maxcode=Number(maxcode) + + function ConvertCodeTo9Digit(code) { + var str = String(code) + if (str.includes('8')||str.includes('9')) { + return undefined + } + var incre = 9-str.length + for (var i=0;i{document.getElementById("console").value+=JSON.stringify(code)},50) + //Evaluate all combos. + if (code%1000000==0) { + console.log(code+" entries done ("+Math.round(((code/maxcode)*100))+"%)") + } + var temp=ConvertCodeTo9Digit(code) + if (!temp) { + continue + } + var combinations=0 + for (var combo of combos) { + var driver1=ConvertDriver(temp.substr(0,3)) + var driver2=ConvertDriver(temp.substr(3,3)) + var driver3=ConvertDriver(temp.substr(6,3)) + //See if any elements match up. If they do, then add 1 to the max combo count. + var matches=0; + for (var ind=0;ind<3;ind++) { + if (driver1.includes(combo[ind])) { + matches++; + driver1=[] + } else + if (driver2.includes(combo[ind])) { + matches++; + driver2=[] + } else + if (driver3.includes(combo[ind])) { + matches++; + driver3=[] + } + } + if (matches==3) { + combinations++ + } + } + if (maxcombos