diff --git a/40.png b/40.png new file mode 100644 index 0000000..c35679b Binary files /dev/null and b/40.png differ diff --git a/README.md b/README.md index 329e24e..51f4a6e 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,10 @@ # Maplestory DPM -Currently only updated data for Demon Slayer. Accuracy is not guaranteed. This data is for reference only. +## DPM +![1](/dpm.png) + +## ROR4 +![2](/ror4.png) + +## 40s +![3](/40.png) diff --git a/dpm.png b/dpm.png new file mode 100644 index 0000000..430a920 Binary files /dev/null and b/dpm.png differ diff --git a/functions set/JobFunctions.R b/functions set/JobFunctions.R index fdf240e..a5ec77a 100644 --- a/functions set/JobFunctions.R +++ b/functions set/JobFunctions.R @@ -2429,7 +2429,7 @@ XenonDealCalc <- function(DealCycle, ATKSkillsList, BuffList, SummonedSkillsList } return(Deal) } - Deal <- mcmapply(DealCalcEach, i=1:nrow(DealCycle), SIMPLIFY=T, mc.cores=Cores) + Deal <- mcmapply(DealCalcEach, i=1:nrow(DealCycle), SIMPLIFY=T, mc.cores=1) return(Deal) } XenonDealCalcWithMaxDMR <- function(DealCycle, ATKSkillsList, BuffList, SummonedSkillsList, Specs, Cores=(detectCores(logical=F)-1)) { @@ -2532,7 +2532,7 @@ XenonDealCalcWithMaxDMR <- function(DealCycle, ATKSkillsList, BuffList, Summoned } return(Deal) } - Deal <- mcmapply(DealCalcEach, i=1:nrow(DealCycle), SIMPLIFY=T, mc.cores=Cores) + Deal <- mcmapply(DealCalcEach, i=1:nrow(DealCycle), SIMPLIFY=T, mc.cores=1) return(Deal) } XenonOptimization1 <- function(DealCycle, ATKSkillsList, BuffList, SummonedSkillsList, Specs, UnionBDRIGR, Cores=(detectCores(logical=F)-1)) { @@ -2826,7 +2826,7 @@ SpecMeanXenon <- function(JobName, DealCycle, DealData, ATKSkillsList, BuffList, } return(SpecEach) } - SpecEach <- mcmapply(SpecCalcEach, i=1:nrow(DealCycle), SIMPLIFY=T, mc.cores=Cores) + SpecEach <- mcmapply(SpecCalcEach, i=1:nrow(DealCycle), SIMPLIFY=T, mc.cores=1) SpecEach <- as.data.frame(SpecEach) for(i in 1:ncol(SpecEach)) { SpecEach[, i] <- unlist(SpecEach[, i]) diff --git a/job/Adele.R b/job/Adele.R index 173fad8..13ec4ed 100644 --- a/job/Adele.R +++ b/job/Adele.R @@ -1,3 +1,6 @@ +library(parallel) +options(scipen=999) + ## Adele - Data ## Adele - VMatrix AdeleCoreBase <- CoreBuilder(ActSkills=c("Ruin", "Infinite", "Restore", "Storm", @@ -280,8 +283,8 @@ colnames(info) <- c("option", "value") Creation <- rbind(data.frame(option, value), info) option <- factor(c("IGR", "FDR"), levels=ASkill) -value <- c(ifelse(GetCoreLv(AdeleCore, "Impale_Resonance_Marker")>=40, 20, 0), FDRCalc(c(2 * GetCoreLv(AdeleCore, "Impale_Resonance_Marker"), 75))) -info <- c(510 + 3 * AdeleSpec$SkillLv, 6, 900, NA, NA, NA, NA, F) +value <- c(ifelse(GetCoreLv(AdeleCore, "Impale_Resonance_Marker")>=40, 20, 0), 2 * GetCoreLv(AdeleCore, "Impale_Resonance_Marker")) +info <- c(892 + 3 * AdeleSpec$SkillLv, 6, 900, NA, NA, NA, NA, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") Resonance <- rbind(data.frame(option, value), info) @@ -323,7 +326,7 @@ Divide <- rbind(data.frame(option, value), info) option <- factor(c("IGR", "FDR"), levels=ASkill) value <- c(ifelse(GetCoreLv(AdeleCore, "Blossom")>=40, 20, 0), 2 * GetCoreLv(AdeleCore, "Blossom")) -info <- c(650 + 6 * AdeleSpec$SkillLv, 8, 420, NA, NA, NA, NA, F) +info <- c(650 + 6 * AdeleSpec$SkillLv, 8, 360, NA, NA, NA, NA, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") Blossom1st <- rbind(data.frame(option, value), info) @@ -337,14 +340,14 @@ BlossomRemain <- rbind(data.frame(option, value), info) option <- factor(c("IGR", "FDR"), levels=ASkill) value <- c(ifelse(GetCoreLv(AdeleCore, "Order_Grave")>=40, 20, 0), 2 * GetCoreLv(AdeleCore, "Order_Grave")) -info <- c(800 + 20 * AdeleSpec$SkillLv, 10, 840, NA, 90, T, T, F) +info <- c(220 + 20 * AdeleSpec$SkillLv, 10, 840, NA, 10, T, T, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") Grave <- rbind(data.frame(option, value), info) option <- factor(c("IGR", "FDR"), levels=ASkill) value <- c(ifelse(GetCoreLv(AdeleCore, "Impale_Resonance_Marker")>=40, 20, 0), 2 * GetCoreLv(AdeleCore, "Impale_Resonance_Marker")) -info <- c(2000, 6, 900, NA, 90, F, F, F) +info <- c(2000, 6, 900, NA, 60, F, F, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") Marker <- rbind(data.frame(option, value), info) diff --git a/job/AngelicBuster.R b/job/AngelicBuster.R index 823122b..5a45f87 100644 --- a/job/AngelicBuster.R +++ b/job/AngelicBuster.R @@ -1,3 +1,6 @@ +library(parallel) +options(scipen=999) + ## AngelicBuster - Data ## AngelicBuster - VMatrix AngelicBusterCoreBase <- CoreBuilder(ActSkills=c("EnergeBust", "Spotlight", "MascotFamiliar", "TrinityFusion", @@ -127,7 +130,7 @@ MapleSoldier <- rbind(data.frame(option, value), info) option <- factor(c("FDR"), levels=BSkill) value <- c(25 + 2 * floor(AngelicBusterBase$SkillLv/3)) -info <- c(20, Cooldown(40 - AngelicBusterBase$SkillLv, T, 25 + AngelicBusterBase$UnionChrs$CoolReduceP, AngelicBusterBase$CoolReduce), Delay(1350, 2), F, F, T, F) +info <- c(60, Cooldown(40 - AngelicBusterBase$SkillLv, T, 25 + AngelicBusterBase$UnionChrs$CoolReduceP, AngelicBusterBase$CoolReduce), Delay(870, 2), F, F, T, F) info <- data.frame(BInfo, info) colnames(info) <- c("option", "value") FinituraFettucciaBuff <- rbind(data.frame(option, value), info) @@ -285,21 +288,21 @@ SpiderInMirrorWait <- SIM$SpiderInMirrorWait ## Hyper : Trinity - Reinforce / Split Attack, Soul Seeker - Reinforce / Make Up, Finitura Fettuccia - CoolTime Reduce {option <- factor(c("IGR", "BDR", "FDR"), levels=ASkill) value <- c(IGRCalc(c(30, ifelse(GetCoreLv(AngelicBusterCore, "Trinity")>=40, 20, 0))), 50, 2 * GetCoreLv(AngelicBusterCore, "Trinity")) -info <- c(720 + 12 * AngelicBusterSpec$SkillLv - 70, 3, 480, NA, NA, NA, NA, F) +info <- c(630 + 11 * AngelicBusterSpec$SkillLv, 7, 780, NA, NA, NA, NA, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") Trinity1 <- rbind(data.frame(option, value), info) option <- factor(c("IGR", "BDR", "FDR"), levels=ASkill) value <- c(IGRCalc(c(30, ifelse(GetCoreLv(AngelicBusterCore, "Trinity")>=40, 20, 0))), 50, 2 * GetCoreLv(AngelicBusterCore, "Trinity")) -info <- c(720 + 12 * AngelicBusterSpec$SkillLv - 70, 4, 480, NA, NA, NA, NA, F) +info <- c(0, 0, 0, NA, NA, NA, NA, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") Trinity2 <- rbind(data.frame(option, value), info) option <- factor(c("IGR", "BDR", "FDR"), levels=ASkill) value <- c(IGRCalc(c(30, ifelse(GetCoreLv(AngelicBusterCore, "Trinity")>=40, 20, 0))), 50, 2 * GetCoreLv(AngelicBusterCore, "Trinity")) -info <- c(720 + 12 * AngelicBusterSpec$SkillLv - 70, 5, 450, NA, NA, NA, NA, F) +info <- c(0, 0, 0, NA, NA, NA, NA, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") Trinity3 <- rbind(data.frame(option, value), info) @@ -397,7 +400,7 @@ colnames(AngelicBusterSkipATK) <- c(rownames(ATKFinal), "SkippedDelay") AngelicBusterSkipATK$Trinity2 <- c(T, rep(F, 11)) AngelicBusterSkipATK$Trinity3 <- c(F, T, rep(F, 10)) -AngelicBusterSkipATK$SkippedDelay <- c(Delay(480, AngelicBusterSpec$ATKSpeed), Delay(450, AngelicBusterSpec$ATKSpeed), rep(F, 10)) +AngelicBusterSkipATK$SkippedDelay <- c(Delay(780, AngelicBusterSpec$ATKSpeed), Delay(0, AngelicBusterSpec$ATKSpeed), rep(F, 10)) AngelicBusterSkipATK <- subset(AngelicBusterSkipATK, AngelicBusterSkipATK$SkippedDelay>0) ## Trinity Fusion : Other Logic(Set Time 240 when Making Dealcycle) @@ -485,13 +488,13 @@ AngelicBusterCycle <- function(DealCycle, ATKFinal, BuffFinal, SummonedFinal, Sp if(DealCycle$MascotFamiliarDummy[nrow(DealCycle)-1] >= 0 & DealCycle$MascotFamiliarDummy[nrow(DealCycle)]==0 & DealCycle$MascotFamiliarStack[nrow(DealCycle)] < 8 & DealCycle$MascotFamiliarBuff[nrow(DealCycle)] > 0 & DealCycle$Skills[nrow(DealCycle)]!="MascotFamiliarBuff") { DealCycle$MascotFamiliarStack[nrow(DealCycle)] <- min(8, DealCycle$MascotFamiliarStack[nrow(DealCycle)] + 1) - DealCycle$MascotFamiliarDummy[nrow(DealCycle)] <- ifelse(nrow(DealCycle)==2, 8000 + General$General$Serverlag * 1000, + DealCycle$MascotFamiliarDummy[nrow(DealCycle)] <- ifelse(nrow(DealCycle)==2, 3000 + General$General$Serverlag * 1000, 8000 + General$General$Serverlag * 1000 - (DealCycle$Time[nrow(DealCycle)] - DealCycle$Time[nrow(DealCycle)-1] - DealCycle$MascotFamiliarDummy[nrow(DealCycle)-1])) } else if(DealCycle$Skills[nrow(DealCycle)]=="MascotFamiliarBuff") { - DealCycle$MascotFamiliarDummy[nrow(DealCycle)] <- 8000 + General$General$Serverlag * 1000 + DealCycle$MascotFamiliarDummy[nrow(DealCycle)] <- 3000 + General$General$Serverlag * 1000 } else if(DealCycle$MascotFamiliarStack[nrow(DealCycle)] == 8) { - DealCycle$MascotFamiliarDummy[nrow(DealCycle)] <- 8000 + General$General$Serverlag * 1000 + DealCycle$MascotFamiliarDummy[nrow(DealCycle)] <- 3000 + General$General$Serverlag * 1000 } return(DealCycle) } diff --git a/job/Ark.R b/job/Ark.R index faf0127..ad575f5 100644 --- a/job/Ark.R +++ b/job/Ark.R @@ -1,3 +1,6 @@ +library(parallel) +options(scipen=999) + ## Ark - Data ## Ark - VMatrix ArkCoreBase <- CoreBuilder(ActSkills=c("InfinitySpell", "AbyssalRecall", "DeviousNightmare_Dream", "EndlesslyStarvingBeast", @@ -57,7 +60,7 @@ value <- c(60) PhysicalTraining <- data.frame(option, value) option <- factor(c("FDR", "CRR"), levels=PSkill) -value <- c(10, 20) +value <- c(5, 20) InitateFusion <- data.frame(option, value) option <- factor(c("Mastery", "ATK", "CDMR"), levels=PSkill) @@ -125,7 +128,7 @@ VengefulHateStack <- rbind(data.frame(option, value), info) option <- factor(levels=BSkill) value <- c() -info <- c(30, 0, 0, F, NA, NA, T) +info <- c(18, 0, 0, F, NA, NA, T) info <- data.frame(BInfo, info) colnames(info) <- c("option", "value") AbyssalRecallBuff <- rbind(data.frame(option, value), info) @@ -173,14 +176,14 @@ colnames(info) <- c("option", "value") GustBuff <- rbind(data.frame(option, value), info) option <- factor(c("BDR","IGR"), levels=BSkill) -value <- c(50 + ArkSpec$SkillLv + floor(ArkSpec$SkillLv/2), 20 + floor(ArkSpec$SkillLv/2)) +value <- c(50 + ArkBase$SkillLv + floor(ArkBase$SkillLv/2), 20 + floor(ArkBase$SkillLv/2)) info <- c(60, NA, 0, T, NA, NA, T) info <- data.frame(BInfo, info) colnames(info) <- c("option", "value") AbyssBuff <- rbind(data.frame(option, value), info) option <- factor(c("BDR","IGR"), levels=BSkill) -value <- c(50 + ArkSpec$SkillLv + floor(ArkSpec$SkillLv/2), ifelse(ArkSpec$SkillLv >= 2, 26.582278, 25)) +value <- c(50 + ArkBase$SkillLv + floor(ArkBase$SkillLv/2), ifelse(ArkBase$SkillLv >= 2, 26.582278, 25)) info <- c(60, 120, 0, T, NA, NA, T) info <- data.frame(BInfo, info) colnames(info) <- c("option", "value") @@ -202,7 +205,7 @@ RaceofGod <- rbind(data.frame(option, value), info) option <- factor(levels=BSkill) value <- c() -info <- c(40 + 2 * GetCoreLv(ArkCore, "InfinitySpell"), 240, 720, F, T, F, T) +info <- c(50, 120, 720, F, T, F, T) info <- data.frame(BInfo, info) colnames(info) <- c("option", "value") InfinitySpell <- rbind(data.frame(option, value), info) @@ -443,7 +446,7 @@ UnbridledChaos <- rbind(data.frame(option, value), info) option <- factor(c("IGR", "BDR", "FDR"), levels=ASkill) value <- c(IGRCalc(c(20, ifelse(GetCoreLv(ArkCore, "CreepingTerror_BlissfulRestraint_EndlessAgony")>=40, 20, 0))), 40, 2 * GetCoreLv(ArkCore, "CreepingTerror_BlissfulRestraint_EndlessAgony")) -info <- c(600 + 10 * ArkSpec$SkillLv, 6, 900, NA, 180, T, F, F) +info <- c(600 + 10 * ArkSpec$SkillLv, 6, 900, NA, 120, T, F, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") BlissfulRestraint <- rbind(data.frame(option, value), info) @@ -478,14 +481,14 @@ EndlessAgonyLast <- rbind(data.frame(option, value), info) ## StartATK 180ms option <- factor(levels=ASkill) value <- c() -info <- c(400 + 16 * GetCoreLv(ArkCore, "AbyssalRecall"), 6, 9960, 210, 200, T, F, F) +info <- c(350 + 14 * GetCoreLv(ArkCore, "AbyssalRecall"), 6, 9960, 210, 120, T, F, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") AbyssalRecall <- rbind(data.frame(option, value), info) option <- factor(levels=ASkill) value <- c() -info <- c(1200 + 48 * GetCoreLv(ArkCore, "AbyssalRecall"), 72, 0, NA, NA, NA, NA, F) +info <- c(725 + 29 * GetCoreLv(ArkCore, "AbyssalRecall"), 72, 0, NA, NA, NA, NA, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") AbyssalRecallExplosion <- rbind(data.frame(option, value), info) @@ -619,7 +622,7 @@ ArkCycle <- function(DealCycle, ATKFinal, BuffFinal, SummonedFinal, Spec, SkipSt BuffSummonedPrior <- c("KnuckleBooster", "LuckyDice5", "ContactCaravan", "RaceofGod", "UsefulSharpEyes", "UsefulCombatOrders", "UsefulAdvancedBless", "ChargeSpellAmplification", "MagicCircuitFullDriveBuff", "OverDrive", "BlessofGrandis", "InfinitySpell", "SoulContractLink", "Restraint4") Times180 <- c(0, 0, 1/4, 0, 0, 0, 0, - 1.5, 3/4, 3, 3/4, 3/4, 1.5, 3/4) + 3/2, 3/4, 3, 3/4, 3/2, 3/2, 3/4) if(nrow(BuffFinal[rownames(BuffFinal)=="UsefulAdvancedBless", ]) == 0) { Times180 <- Times180[BuffSummonedPrior!="UsefulAdvancedBless"] BuffSummonedPrior <- BuffSummonedPrior[BuffSummonedPrior!="UsefulAdvancedBless"] @@ -897,7 +900,7 @@ ArkCycle <- function(DealCycle, ATKFinal, BuffFinal, SummonedFinal, Spec, SkipSt DealCycle <- DCATKSkip(DealCycle, "AbyssalRecall", ATKFinal, SkipStructure) DealCycle <- ArkGauge(DealCycle) - DealCycle$AbyssalRecallBuff[nrow(DealCycle)] <- 30000 + General$General$Serverlag * 1000 + DealCycle$AbyssalRecallBuff[nrow(DealCycle)] <- 18000 + General$General$Serverlag * 1000 SCRemain <- max(0, SCRemain - (DealCycle$Time[nrow(DealCycle)] - DealCycle$Time[nrow(DealCycle)-1])) GCRemain <- max(0, GCRemain - (DealCycle$Time[nrow(DealCycle)] - DealCycle$Time[nrow(DealCycle)-1])) ACRemain <- max(0, ACRemain - (DealCycle$Time[nrow(DealCycle)] - DealCycle$Time[nrow(DealCycle)-1])) diff --git a/job/BattleMage.R b/job/BattleMage.R index 028a080..2fe8819 100644 --- a/job/BattleMage.R +++ b/job/BattleMage.R @@ -1,3 +1,6 @@ +library(parallel) +options(scipen=999) + ## BattleMage - Data ## BattleMage - VMatrix BattleMageCoreBase <- CoreBuilder(ActSkills=c("UnionAura", "BlackMagicAltar", "GrimReeper", "AbyssalLightning", CommonV("Wizard", "Resistance")), @@ -72,7 +75,7 @@ value <- c(20, 10, 10) DebuffAura <- data.frame(option, value) option <- factor(c("BDR", "CRR", "CDMR"), levels=PSkill) -value <- c(40 + BattleMageBase$SkillLv, 20 + ceiling(BattleMageBase$SkillLv/3), 10) +value <- c(25 + BattleMageBase$SkillLv, 20 + ceiling(BattleMageBase$SkillLv/3), 10) BattleRage <- data.frame(option, value) option <- factor(c("Mastery", "ATK", "CDMR"), levels=PSkill) @@ -80,7 +83,7 @@ value <- c(70 + ceiling(BattleMageBase$SkillLv/2), 30 + BattleMageBase$SkillLv, StaffExpert <- data.frame(option, value) option <- factor(c("ATKP", "BDR", "IGR"), levels=PSkill) -value <- c(25 + floor(BattleMageBase$SkillLv/2), 10 + ceiling(BattleMageBase$SkillLv/3), 30 + BattleMageBase$SkillLv) +value <- c(10 + floor(BattleMageBase$SkillLv/2), 10 + ceiling(BattleMageBase$SkillLv/3), 30 + BattleMageBase$SkillLv) SpellBoost <- data.frame(option, value) option <- factor(c("ATK"), levels=PSkill) @@ -248,7 +251,7 @@ FinishBlowUAMOD <- rbind(data.frame(option, value), info) option <- factor(c("BDR", "IGR", "FDR"), levels=ASkill) value <- c(60 + BattleMageSpec$SkillLv, ifelse(GetCoreLv(BattleMageCore, "DarkLightning")>=40, 20, 0), 2 * GetCoreLv(BattleMageCore, "DarkLightning")) -info <- c(225, 4, 0, NA, NA, NA, NA, F) +info <- c(100, 4, 0, NA, NA, NA, NA, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") DarkLightning <- rbind(data.frame(option, value), info) @@ -262,7 +265,7 @@ DarkLightningAL <- rbind(data.frame(option, value), info) option <- factor(c("BDR", "IGR", "FDR"), levels=ASkill) value <- c(80 + BattleMageSpec$SkillLv, ifelse(GetCoreLv(BattleMageCore, "DarkLightning")>=40, 20, 0), 2 * GetCoreLv(BattleMageCore, "DarkLightning")) -info <- c(350, 4, 0, NA, NA, NA, NA, F) +info <- c(400, 4, 0, NA, NA, NA, NA, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") DarkLightningMark <- rbind(data.frame(option, value), info) diff --git a/job/Bowmaster.R b/job/Bowmaster.R index bfc6aad..36c721f 100644 --- a/job/Bowmaster.R +++ b/job/Bowmaster.R @@ -1,3 +1,6 @@ +library(parallel) +options(scipen=999) + ## Bowmaster - Data ## Bowmaster - VMatrix BowmasterCoreBase <- CoreBuilder(ActSkills=c("ArrowRain", "AfterimageArrow", "QuiverFullBurst", "SilhouetteMirage", @@ -116,7 +119,7 @@ SharpEyes <- rbind(data.frame(option, value), info) option <- factor(c("BDR", "ATK"), levels=BSkill) value <- c(20, 50) -info <- c(30, 90, 540, F, F, F, T) +info <- c(40, 120, 540, F, F, F, T) info <- data.frame(BInfo, info) colnames(info) <- c("option", "value") Preperation <- rbind(data.frame(option, value), info) @@ -330,7 +333,7 @@ BowmasterATK <- Attack(list(HurricaneArrow=HurricaneArrow, FlashMirage=FlashMira ## Bowmaster - Summoned {option <- factor(c("BDR", "FDR", "IGR"), levels=SSkill) value <- c(30, 2 * GetCoreLv(BowmasterCore, "ArrowPlatter_FlashMirage"), ifelse(GetCoreLv(BowmasterCore, "ArrowPlatter_FlashMirage")>=40, 20, 0)) -info <- c(175, 1, 0, 210, 30, NA, T, NA, NA, F) +info <- c(85 + 90, 1, 0, 180, 60, NA, T, NA, NA, F) info <- data.frame(SInfo, info) colnames(info) <- c("option", "value") ArrowPlatter <- rbind(data.frame(option, value), info) @@ -387,7 +390,7 @@ BowmasterCycle <- function(PreDealCycle, ATKFinal, BuffFinal, SummonedFinal, Spe Period=c(120), CycleTime, SummonSkillPeriod) { BuffSummonedPrior <- c("SharpEyes", "MapleSoldier", "EpicAdventure", "UsefulCombatOrders", "UsefulAdvancedBless", "GuidedArrow", "Evolve", "ArrowPlatter", "MapleWarriors2", "Preperation", "ArrowRainBuff", "SoulContractLink", "QuiverFullBurst", "CriticalReinforce", "Restraint4", "AfterimageArrowBuff") - Times120 <- c(0, 0, 0, 0, 0, 0, 1, 4, 0.5, 1, 1, 1, 1, 1, 0.5, 1) + Times120 <- c(0, 0, 0, 0, 0, 0, 1, 2, 0.5, 1, 1, 1, 1, 1, 0.5, 1) if(nrow(BuffFinal[rownames(BuffFinal)=="UsefulAdvancedBless", ]) == 0) { Times120 <- Times120[BuffSummonedPrior!="UsefulAdvancedBless"] BuffSummonedPrior <- BuffSummonedPrior[BuffSummonedPrior!="UsefulAdvancedBless"] diff --git a/job/DemonAvenger.R b/job/DemonAvenger.R index 533d28c..389c5f2 100644 --- a/job/DemonAvenger.R +++ b/job/DemonAvenger.R @@ -1,3 +1,6 @@ +library(parallel) +options(scipen=999) + ## DemonAvenger - Data ## DemonAvenger - Core DemonAvengerCoreBase <- CoreBuilder(ActSkills=c("DemonFrenzy", "BloodFeast", "DimensionSword", "Revenant", @@ -155,7 +158,7 @@ ExceedStack <- rbind(data.frame(option, value), info) option <- factor(levels=BSkill) value <- c() -info <- c(60, 0, 0, T, F, F, T) +info <- c(90, 0, 0, T, F, F, T) info <- data.frame(BInfo, info) colnames(info) <- c("option", "value") ReleaseOverloadBuff <- rbind(data.frame(option, value), info) @@ -211,7 +214,7 @@ DiabolicRecovery <- rbind(data.frame(option, value), info) option <- factor(c("IGR"), levels=BSkill) value <- c(30 + DemonAvengerBase$SkillLv) -info <- c(30 + DemonAvengerBase$SkillLv, 0, Delay(870, 2), F, T, F, F) +info <- c(60 + DemonAvengerBase$SkillLv, 0, Delay(870, 2), F, T, F, F) info <- data.frame(BInfo, info) colnames(info) <- c("option", "value") ArmorBreakBuff <- rbind(data.frame(option, value), info) @@ -237,7 +240,7 @@ UsefulHyperBody <- Useful$UsefulHyperBody option <- factor(levels=BSkill) value <- c() -info <- c(30, 240, 1530, F, T, F, F) +info <- c(15, 120, 1530, F, T, F, F) info <- data.frame(BInfo, info) colnames(info) <- c("option", "value") Revenant <- rbind(data.frame(option, value), info) @@ -391,21 +394,21 @@ BloodFeast <- rbind(data.frame(option, value), info) option <- factor(c("IGR"), levels=ASkill) value <- c(100) -info <- c(850 + 34 * GetCoreLv(DemonAvengerCore, "DimensionSword"), 8, 660, 3000, 120, T, F, F) +info <- c(925 + 37 * GetCoreLv(DemonAvengerCore, "DimensionSword"), 14, 660, 3000, 120, T, F, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") DimensionSword <- rbind(data.frame(option, value), info) option <- factor(c("IGR"), levels=ASkill) value <- c(100) -info <- c(300 + 12 * GetCoreLv(DemonAvengerCore, "DimensionSword"), 6, 660, 210, 120, T, F, F) +info <- c(450 + 18 * GetCoreLv(DemonAvengerCore, "DimensionSword"), 8, 660, 170, 120, T, F, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") DimensionSwordFast <- rbind(data.frame(option, value), info) option <- factor(c("IGR"), levels=ASkill) value <- c(30) -info <- c(300 + 12 * GetCoreLv(DemonAvengerCore, "Revenant"), 9, 0, NA, 240, T, F, F) +info <- c(450 + 18 * GetCoreLv(DemonAvengerCore, "Revenant"), 12, 0, NA, 240, T, F, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") RevenantAddATK <- rbind(data.frame(option, value), info) @@ -990,7 +993,7 @@ DemonAvengerAddATK <- function(DealCycle, ATKFinal, BuffFinal, SummonedFinal, Sp if(DealCycle$Skills[i]!="ReleaseOverloadBuff") { DealCycle$ReleaseOverloadFDR[i] <- DealCycle$ReleaseOverloadFDR[i-1] } - DealCycle$DemonFrenzyFDR[i] <- min(35, floor((500000 - DealCycle$HP[i]) / 5000 / ifelse(FrenzyLevel < 25, 3, 2))) + DealCycle$DemonFrenzyFDR[i] <- min(20, floor((500000 - DealCycle$HP[i]) / 5000 / ifelse(FrenzyLevel < 25, 3, 2))) } ## Dummy Reduction diff --git a/job/DemonSlayer.R b/job/DemonSlayer.R index a135cd0..9d1bdc4 100644 --- a/job/DemonSlayer.R +++ b/job/DemonSlayer.R @@ -103,14 +103,15 @@ DFMaxForce <- rbind(data.frame(option, value), info) option <- factor("ATKSpeed", levels=BSkill) value <- c(2) -info <- c(180, NA, 0, T, NA, NA, T) +info <- c(999, NA, 0, T, NA, NA, T) info <- data.frame(BInfo, info) colnames(info) <- c("option", "value") DemonBooster <- rbind(data.frame(option, value), info) +# useless shit option <- factor(levels=BSkill) value <- c() -info <- c(180 + 12 * DemonSlayerBase$SkillLv, NA, 810, T, NA, NA, T) +info <- c(999 + 12 * DemonSlayerBase$SkillLv, NA, 0, T, NA, NA, T) info <- data.frame(BInfo, info) colnames(info) <- c("option", "value") VampiricTouch <- rbind(data.frame(option, value), info) @@ -252,34 +253,34 @@ SpiderInMirrorWait <- SIM$SpiderInMirrorWait ## Hyper : Demon Impact - Reinforce / Bonus Attack, Demon Slash - Reduce Force / Reinforce / RemainTime Reinforce {option <- factor(c("BDR", "IGR", "FDR"), levels=ASkill) value <- c(60, ifelse(GetCoreLv(DemonSlayerCore, "DemonSlash")>=40, 20, 0), FDRCalc(c(30, 10, 2 * GetCoreLv(DemonSlayerCore, "DemonSlash")))) -info <- c(190, 2, 510, NA, 0, NA, NA, F) +info <- c(190, 2, 330, NA, 0, NA, NA, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") DemonSlash <- rbind(data.frame(option, value), info) -option <- factor(c("BDR", "IGR", "FDR"), levels=ASkill) -value <- c(110, IGRCalc(c(50, ifelse(GetCoreLv(DemonSlayerCore, "DemonSlash")>=40, 20, 0))), FDRCalc(c(30, 10, 2 * GetCoreLv(DemonSlayerCore, "DemonSlash")))) -info <- c(680, 3, 510, NA, 0, NA, NA, F) +option <- factor(c("CRR", "BDR", "IGR", "FDR"), levels=ASkill) +value <- c(100, 110, IGRCalc(c(50, ifelse(GetCoreLv(DemonSlayerCore, "DemonSlash")>=40, 20, 0))), FDRCalc(c(30, 10, 2 * GetCoreLv(DemonSlayerCore, "DemonSlash")))) +info <- c(680, 3, 330, NA, 0, NA, NA, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") AwakeningSlash1 <- rbind(data.frame(option, value), info) -option <- factor(c("BDR", "IGR", "FDR"), levels=ASkill) -value <- c(110, IGRCalc(c(50, ifelse(GetCoreLv(DemonSlayerCore, "DemonSlash")>=40, 20, 0))), FDRCalc(c(30, 10, 2 * GetCoreLv(DemonSlayerCore, "DemonSlash")))) -info <- c(680, 3, 510, NA, 0, NA, NA, F) +option <- factor(c("CRR", "BDR", "IGR", "FDR"), levels=ASkill) +value <- c(100, 110, IGRCalc(c(50, ifelse(GetCoreLv(DemonSlayerCore, "DemonSlash")>=40, 20, 0))), FDRCalc(c(30, 10, 2 * GetCoreLv(DemonSlayerCore, "DemonSlash")))) +info <- c(680, 3, 330, NA, 0, NA, NA, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") AwakeningSlash2 <- rbind(data.frame(option, value), info) -option <- factor(c("BDR", "IGR", "FDR"), levels=ASkill) -value <- c(110, IGRCalc(c(50, ifelse(GetCoreLv(DemonSlayerCore, "DemonSlash")>=40, 20, 0))), FDRCalc(c(30, 10, 2 * GetCoreLv(DemonSlayerCore, "DemonSlash")))) +option <- factor(c("CRR", "BDR", "IGR", "FDR"), levels=ASkill) +value <- c(100, 110, IGRCalc(c(50, ifelse(GetCoreLv(DemonSlayerCore, "DemonSlash")>=40, 20, 0))), FDRCalc(c(30, 10, 2 * GetCoreLv(DemonSlayerCore, "DemonSlash")))) info <- c(780, 3, 450, NA, 0, NA, NA, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") AwakeningSlash3 <- rbind(data.frame(option, value), info) -option <- factor(c("BDR", "IGR", "FDR"), levels=ASkill) -value <- c(110, IGRCalc(c(50, ifelse(GetCoreLv(DemonSlayerCore, "DemonSlash")>=40, 20, 0))), FDRCalc(c(30, 10, 2 * GetCoreLv(DemonSlayerCore, "DemonSlash")))) +option <- factor(c("CRR", "BDR", "IGR", "FDR"), levels=ASkill) +value <- c(100, 110, IGRCalc(c(50, ifelse(GetCoreLv(DemonSlayerCore, "DemonSlash")>=40, 20, 0))), FDRCalc(c(30, 10, 2 * GetCoreLv(DemonSlayerCore, "DemonSlash")))) info <- c(880, 3, 450, NA, 0, NA, NA, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") @@ -294,14 +295,14 @@ DemonImpact <- rbind(data.frame(option, value), info) option <- factor(c("CRR", "IGR", "FDR"), levels=ASkill) value <- c(ifelse(GetCoreLv(DemonSlayerCore, "DevilCry")>=20, 5, 0), ifelse(GetCoreLv(DemonSlayerCore, "DevilCry")>=40, 20, 0), 2 * GetCoreLv(DemonSlayerCore, "DevilCry")) -info <- c(515 + 5 * DemonSlayerSpec$SkillLv, 7, 842, NA, 14, T, T, F) +info <- c(515 + 5 * DemonSlayerSpec$SkillLv, 7, 840, NA, 14, T, T, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") DevilCry <- rbind(data.frame(option, value), info) option <- factor(c("BDR", "IGR", "FDR"), levels=ASkill) value <- c(50, IGRCalc(c(50, ifelse(GetCoreLv(DemonSlayerCore, "Cerberus")>=40, 20, 0))), 2 * GetCoreLv(DemonSlayerCore, "Cerberus")) -info <- c(450, 6, 783, NA, 5, F, F, F) +info <- c(450, 6, 780, NA, 5, F, F, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") Cerberus <- rbind(data.frame(option, value), info) @@ -336,7 +337,7 @@ OrthrosGeryon <- rbind(data.frame(option, value), info) option <- factor(c("CRR", "IGR", "FDR"), levels=ASkill) value <- c(50, 30, 90) -info <- c(0, 0, 240, NA, 120, T, F, F) ## StartATK : 240ms, 12 Hits(Check Needed) +info <- c(0, 0, 120, NA, 120, T, F, F) ## StartATK : 120ms, 11 Hits info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") DemonBanePre <- rbind(data.frame(option, value), info) @@ -350,14 +351,14 @@ DemonBaneTick <- rbind(data.frame(option, value), info) option <- factor(c("CRR", "IGR", "FDR"), levels=ASkill) value <- c(50, 30, 90) -info <- c(250 + 11 * GetCoreLv(DemonSlayerCore, "DemonBane"), 6, 3000 - 240 * 12, NA, 120, T, F, F) +info <- c(250 + 11 * GetCoreLv(DemonSlayerCore, "DemonBane"), 6, 0, NA, 120, T, F, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") DemonBaneEnd <- rbind(data.frame(option, value), info) option <- factor(c("CRR", "IGR", "FDR"), levels=ASkill) value <- c(50, 30, 90) -info <- c(0, 0, 600, NA, 120, T, F, F) ## StartATK : 600ms, 21 Hits(Check Needed) +info <- c(0, 0, 360, NA, 120, T, F, F) ## StartATK : 360ms, 13 Hits info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") DemonBaneLastPre <- rbind(data.frame(option, value), info) @@ -452,9 +453,9 @@ DemonSlayerDealCycle <- data.frame(DemonSlayerDealCycle) DemonSlayerCycle <- function(DealCycle, ATKFinal, BuffFinal, SummonedFinal, Spec, SkipStructure, Period=240, CycleTime=720, AwakeningOffSlash=T) { BuffSummonedPrior <- c("BlueBlood", "DemonBooster", "UsefulSharpEyes", "UsefulCombatOrders", "UsefulAdvancedBless", "DemonicFortitude", - "CallMastema", "InfinityForce", "VampiricTouch", "Metamorphosis", "AuraWeaponBuff", "BlessofIsekaiGoddess", "OrthrosBuff", "SoulContractLink", "Restraint4") + "CallMastema", "InfinityForce", "Metamorphosis", "AuraWeaponBuff", "BlessofIsekaiGoddess", "OrthrosBuff", "SoulContractLink", "Restraint4") Times240 <- c(0, 0, 0, 0, 0, 0, - 8/5, 2, 0, 1, 4/3, 2, 2, 2, 1) + 8/5, 2, 1, 4/3, 2, 2, 2, 1) if(nrow(BuffFinal[rownames(BuffFinal)=="UsefulAdvancedBless", ]) == 0) { Times240 <- Times240[BuffSummonedPrior!="UsefulAdvancedBless"] BuffSummonedPrior <- BuffSummonedPrior[BuffSummonedPrior!="UsefulAdvancedBless"] @@ -520,7 +521,7 @@ DemonSlayerCycle <- function(DealCycle, ATKFinal, BuffFinal, SummonedFinal, Spec DFBBLogic <- function(DealCycle, DFAbsorb, DFCost) { if(sum(DealCycle$Skills[nrow(DealCycle)]==DFAbsorb$Skills)==1) { Absorb <- subset(DFAbsorb, DFAbsorb$Skills==DealCycle$Skills[nrow(DealCycle)])$Absorb - DealCycle$DF[nrow(DealCycle)] <- min(170, DealCycle$DF[nrow(DealCycle)-1] + Absorb) + DealCycle$DF[nrow(DealCycle)] <- min(230, DealCycle$DF[nrow(DealCycle)-1] + Absorb) } else if(sum(DealCycle$Skills[nrow(DealCycle)]==DFCost$Skills)==1) { Cost <- ifelse(DealCycle$InfinityForce[nrow(DealCycle)] > 0, 0, subset(DFCost, DFCost$Skills==DealCycle$Skills[nrow(DealCycle)])$Cost) Cost <- ifelse(DealCycle$Skills[nrow(DealCycle)]=="InfinityForce", subset(DFCost, DFCost$Skills==DealCycle$Skills[nrow(DealCycle)])$Cost, Cost) @@ -533,17 +534,17 @@ DemonSlayerCycle <- function(DealCycle, ATKFinal, BuffFinal, SummonedFinal, Spec DealCycle$DF[nrow(DealCycle)] <- DealCycle$DF[nrow(DealCycle)-1] } - if(DealCycle$DFMaxForce[nrow(DealCycle)-1] >= 0 & DealCycle$DFMaxForce[nrow(DealCycle)]==0 & DealCycle$DF[nrow(DealCycle)] < 170) { - DealCycle$DF[nrow(DealCycle)] <- min(170, DealCycle$DF[nrow(DealCycle)] + 10) + if(DealCycle$DFMaxForce[nrow(DealCycle)-1] >= 0 & DealCycle$DFMaxForce[nrow(DealCycle)]==0 & DealCycle$DF[nrow(DealCycle)] < 230) { + DealCycle$DF[nrow(DealCycle)] <- min(230, DealCycle$DF[nrow(DealCycle)] + 10) DealCycle$DFMaxForce[nrow(DealCycle)] <- ifelse(nrow(DealCycle)==2, 4000, 4000 - (DealCycle$Time[nrow(DealCycle)] - DealCycle$Time[nrow(DealCycle)-1] - DealCycle$DFMaxForce[nrow(DealCycle)-1])) - } else if(DealCycle$DF[nrow(DealCycle)] == 170) { + } else if(DealCycle$DF[nrow(DealCycle)] == 230) { DealCycle$DFMaxForce[nrow(DealCycle)] <- 4000 } return(DealCycle) } DealCycle <- DCBuff(DealCycle, "MapleSoldier", BuffFinal) - DealCycle$DF[2] <- 120 ; DealCycle$DFMaxForce[2] <- 4000 + DealCycle$DF[2] <- 230 ; DealCycle$DFMaxForce[2] <- 4000 TotalTime <- TotalTime * 1000 for(i in 1:length(BuffList[[1]])) { @@ -710,7 +711,7 @@ DemonSlayerCycle <- function(DealCycle, ATKFinal, BuffFinal, SummonedFinal, Spec CBRemain <- max(0, CBRemain - DealCycle$Time[1]) ## Demon Bane - Tick - for(i in 1:15) { + for(i in 1:10) { DealCycle <- DCATK(DealCycle, "DemonBaneTick", ATKFinal) DealCycle <- DFBBLogic(DealCycle, DFAbsorb, DFCost) CryRemain <- max(0, CryRemain - DealCycle$Time[1]) @@ -769,7 +770,7 @@ DemonSlayerCycle <- function(DealCycle, ATKFinal, BuffFinal, SummonedFinal, Spec CBRemain <- max(0, CBRemain - DealCycle$Time[1]) ## Demon Bane - Last ATK Tick - for(i in 1:20) { + for(i in 1:12) { DealCycle <- DCATK(DealCycle, "DemonBaneLastTick", ATKFinal) DealCycle <- DFBBLogic(DealCycle, DFAbsorb, DFCost) CryRemain <- max(0, CryRemain - DealCycle$Time[1]) @@ -865,7 +866,7 @@ DemonSlayerCycle <- function(DealCycle, ATKFinal, BuffFinal, SummonedFinal, Spec CBRemain <- max(0, CBRemain - DealCycle$Time[1]) ## Demon Bane - Tick - for(i in 1:15) { + for(i in 1:10) { DealCycle <- DCATK(DealCycle, "DemonBaneTick", ATKFinal) DealCycle <- DFBBLogic(DealCycle, DFAbsorb, DFCost) CryRemain <- max(0, CryRemain - DealCycle$Time[1]) @@ -924,7 +925,7 @@ DemonSlayerCycle <- function(DealCycle, ATKFinal, BuffFinal, SummonedFinal, Spec CBRemain <- max(0, CBRemain - DealCycle$Time[1]) ## Demon Bane - Last ATK Tick - for(i in 1:20) { + for(i in 1:12) { DealCycle <- DCATK(DealCycle, "DemonBaneLastTick", ATKFinal) DealCycle <- DFBBLogic(DealCycle, DFAbsorb, DFCost) CryRemain <- max(0, CryRemain - DealCycle$Time[1]) diff --git a/job/Evan.R b/job/Evan.R index 2c60e54..a95c119 100644 --- a/job/Evan.R +++ b/job/Evan.R @@ -1,3 +1,6 @@ +library(parallel) +options(scipen=999) + ## Option Setting EvanWeaponType <- "Staff" EvanDealCycleType <- "DoE-DB-BoW" ## "DoE-DB-BoW", "SoT-DoE-DB" @@ -224,7 +227,7 @@ DiveReturnBuff <- rbind(data.frame(option, value), info) option <- factor(c("BDR"), levels=BSkill) value <- c(20 + 2 * EvanBase$SkillLv) -info <- c(Cooldown(40, T, EvanBase$UnionChrs$CoolReduceP, EvanBase$CoolReduce), Cooldown(40, T, EvanBase$UnionChrs$CoolReduceP, EvanBase$CoolReduce) + 1, Delay(1160, 2), F, F, F, F) +info <- c(9999, 0, 0, F, F, F, F) info <- data.frame(BInfo, info) colnames(info) <- c("option", "value") DarkFogBuff <- rbind(data.frame(option, value), info) @@ -474,21 +477,21 @@ DiveofEarth <- rbind(data.frame(option, value), info) ## 0ms, 900ms, 1380ms, 186 option <- factor(levels=ASkill) value <- c() -info <- c(750 + 30 * GetCoreLv(EvanCore, "ElementalBlast"), 6, 780, NA, 60, T, F, F) +info <- c(650 + 26 * GetCoreLv(EvanCore, "ElementalBlast"), 8, 780, NA, 60, T, F, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") ElementalBlast <- rbind(data.frame(option, value), info) ## ATKs : 0ms, 660ms, 1230ms, 2070ms option <- factor(levels=ASkill) value <- c() -info <- c(450 + 18 * GetCoreLv(EvanCore, "DragonBreak"), 7, 0, 360, 20, T, F, F) +info <- c(475 + 19 * GetCoreLv(EvanCore, "DragonBreak"), 7, 0, 360, 20, T, F, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") DragonBreak <- rbind(data.frame(option, value), info) option <- factor(levels=ASkill) value <- c() -info <- c(550 + 20 * GetCoreLv(EvanCore, "DragonBreak"), 7, 0, 240, NA, NA, NA, F) +info <- c(600 + 24 * GetCoreLv(EvanCore, "DragonBreak"), 7, 0, 240, NA, NA, NA, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") ImperialBreath <- rbind(data.frame(option, value), info) @@ -502,7 +505,7 @@ BreakReturn <- rbind(data.frame(option, value), info) option <- factor(c("IGR"), levels=ASkill) value <- c(100) -info <- c(580 + 16 * GetCoreLv(EvanCore, "JodiacRay"), 6, 780, 180, 180, T, F, F) +info <- c(475 + 19 * GetCoreLv(EvanCore, "JodiacRay"), 8, 780, 170, 180, T, F, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") JodiacRay <- rbind(data.frame(option, value), info) diff --git a/job/Illium.R b/job/Illium.R index 9903ac3..46cd7e4 100644 --- a/job/Illium.R +++ b/job/Illium.R @@ -1,3 +1,6 @@ +library(parallel) +options(scipen=999) + ## Illium - Data ## Illium - VMatrix IlliumCoreBase <- CoreBuilder(ActSkills=c("CrystalIgnition", "Gramholder", "SoulofCrystal", "CrystalGate", @@ -258,42 +261,42 @@ MotalSwing <- rbind(data.frame(option, value), info) option <- factor(c("IGR", "BDR", "FDR"), levels=ASkill) value <- c(ifelse(GetCoreLv(IlliumCore, "Destruction")>=40, 20, 0), 20, FDRCalc(c(2 * GetCoreLv(IlliumCore, "Destruction"), floor(GetCoreLv(IlliumCore, "OverloadMana") / 10) + 8))) -info <- c(710 + 2 * IlliumSpec$SkillLv, 8, 0, NA, 4, T, T, F) +info <- c(745 + 2 * IlliumSpec$SkillLv, 8, 0, NA, 4, T, T, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") Destruction <- rbind(data.frame(option, value), info) option <- factor(c("IGR", "FDR"), levels=ASkill) value <- c(ifelse(GetCoreLv(IlliumCore, "Machina_Domination")>=40, 20, 0), FDRCalc(c(2 * GetCoreLv(IlliumCore, "Machina_Domination"), floor(GetCoreLv(IlliumCore, "OverloadMana") / 10) + 8))) -info <- c(710 + 2 * IlliumSpec$SkillLv, 2, 0, NA, 4, T, T, F) +info <- c(745 + 2 * IlliumSpec$SkillLv, 2, 0, NA, 4, T, T, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") Domination <- rbind(data.frame(option, value), info) option <- factor(c("IGR", "FDR"), levels=ASkill) value <- c(ifelse(GetCoreLv(IlliumCore, "Machina_Domination")>=40, 20, 0), FDRCalc(c(2 * GetCoreLv(IlliumCore, "Machina_Domination"), floor(GetCoreLv(IlliumCore, "OverloadMana") / 10) + 8))) -info <- c((710 + 2 * IlliumSpec$SkillLv) * (0.01 * GetCoreLv(IlliumCore, "SoulofCrystal") + 0.5), 2, 0, NA, 4, T, T, F) +info <- c((745 + 2 * IlliumSpec$SkillLv) * (0.01 * GetCoreLv(IlliumCore, "SoulofCrystal") + 0.5), 2, 0, NA, 4, T, T, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") DominationSoul <- rbind(data.frame(option, value), info) option <- factor(c("IGR", "BDR", "FDR"), levels=ASkill) value <- c(ifelse(GetCoreLv(IlliumCore, "Destruction")>=40, 20, 0), 20, FDRCalc(c(2 * GetCoreLv(IlliumCore, "Destruction"), floor(GetCoreLv(IlliumCore, "OverloadMana") / 10) + 8))) -info <- c((710 + 2 * IlliumSpec$SkillLv) * (0.01 * GetCoreLv(IlliumCore, "SoulofCrystal") + 0.5), 8, 0, NA, 4, T, T, F) +info <- c((745 + 2 * IlliumSpec$SkillLv) * (0.01 * GetCoreLv(IlliumCore, "SoulofCrystal") + 0.5), 8, 0, NA, 4, T, T, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") DestructionSoul <- rbind(data.frame(option, value), info) option <- factor(c("IGR", "BDR", "FDR"), levels=ASkill) value <- c(ifelse(GetCoreLv(IlliumCore, "Javelin_EnhancedJavelin")>=40, 20, 0), 40, FDRCalc(c(2 * GetCoreLv(IlliumCore, "Javelin_EnhancedJavelin"), floor(GetCoreLv(IlliumCore, "OverloadMana") / 10) + 8))) -info <- c(375 + 2 * IlliumSpec$SkillLv, 12, 730, NA, NA, NA, NA, F) +info <- c(395 + 2 * IlliumSpec$SkillLv, 12, 690, NA, NA, NA, NA, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") Javelin <- rbind(data.frame(option, value), info) option <- factor(c("IGR", "BDR", "FDR"), levels=ASkill) value <- c(ifelse(GetCoreLv(IlliumCore, "Javelin_EnhancedJavelin")>=40, 20, 0), 40, FDRCalc(c(2 * GetCoreLv(IlliumCore, "Javelin_EnhancedJavelin"), floor(GetCoreLv(IlliumCore, "OverloadMana") / 10) + 8))) -info <- c(375 + 2 * IlliumSpec$SkillLv, 4, 730, NA, NA, NA, NA, F) +info <- c(395 + 2 * IlliumSpec$SkillLv, 4, 690, NA, NA, NA, NA, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") JavelinAddATK <- rbind(data.frame(option, value), info) @@ -313,8 +316,8 @@ colnames(info) <- c("option", "value") JavelinAddFragment <- rbind(data.frame(option, value), info) option <- factor(c("IGR", "BDR", "FDR"), levels=ASkill) -value <- c(ifelse(GetCoreLv(IlliumCore, "Javelin_EnhancedJavelin")>=40, 20, 0), 40, FDRCalc(c(2 * GetCoreLv(IlliumCore, "Javelin_EnhancedJavelin"), 40, floor(GetCoreLv(IlliumCore, "OverloadMana") / 10) + 8))) -info <- c(465 + 3 * IlliumSpec$SkillLv, 7, 540, NA, NA, NA, NA, F) +value <- c(ifelse(GetCoreLv(IlliumCore, "Javelin_EnhancedJavelin")>=40, 20, 0), 40, FDRCalc(c(2 * GetCoreLv(IlliumCore, "Javelin_EnhancedJavelin"), floor(GetCoreLv(IlliumCore, "OverloadMana") / 10) + 8))) +info <- c(700 + 3 * IlliumSpec$SkillLv, 7, 540, NA, NA, NA, NA, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") EnhancedJavelin <- rbind(data.frame(option, value), info) @@ -328,7 +331,7 @@ MagicMissile <- rbind(data.frame(option, value), info) option <- factor("FDR", levels=ASkill) value <- c(floor(GetCoreLv(IlliumCore, "OverloadMana") / 10) + 8) -info <- c(300 + 4 * IlliumSpec$SkillLv, 1, 730, NA, NA, NA, NA, F) +info <- c(310 + 4 * IlliumSpec$SkillLv, 1, 690, NA, NA, NA, NA, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") Orb <- rbind(data.frame(option, value), info) @@ -370,21 +373,21 @@ CrystalIgnitionPre <- rbind(data.frame(option, value), info) option <- factor(c("BDR", "FDR"), levels=ASkill) value <- c(20, floor(GetCoreLv(IlliumCore, "OverloadMana") / 10) + 8) -info <- c(750 + 30 * GetCoreLv(IlliumCore, "CrystalIgnition"), 4, 9340, 150, 180, T, F, F) +info <- c(1156 + 47 * GetCoreLv(IlliumCore, "CrystalIgnition"), 5, 5340, 150, 180, T, F, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") CrystalIgnition <- rbind(data.frame(option, value), info) option <- factor(levels=ASkill) value <- c() -info <- c(0, 0, 630, NA, 180, T, F, F) +info <- c(0, 0, 720, NA, 180, T, F, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") CrystalIgnitionEnd <- rbind(data.frame(option, value), info) option <- factor(c("BDR", "FDR"), levels=ASkill) value <- c(20, floor(GetCoreLv(IlliumCore, "OverloadMana") / 10) + 8) -info <- c(1000 + 40 * GetCoreLv(IlliumCore, "CrystalIgnition"), 5, 0, 1000, 180, T, F, F) +info <- c(1593 + 63 * GetCoreLv(IlliumCore, "CrystalIgnition"), 6, 0, 1000, 180, T, F, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") ReactionSpectrum <- rbind(data.frame(option, value), info) @@ -1332,8 +1335,8 @@ IlliumDealCycle <- IlliumCycle2(PreDealCycle=IlliumDealCycle, SkipStructure=IlliumSkipATK, Spec=IlliumSpec) IlliumDealCycle <- DealCycleFinal(IlliumDealCycle) -IlliumDealCycle <- RepATKCycle(IlliumDealCycle, "CrystalIgnition", 62, 0, ATKFinal) -IlliumDealCycle <- RepATKCycle(IlliumDealCycle, "ReactionSpectrum", 9, 0, ATKFinal) +IlliumDealCycle <- RepATKCycle(IlliumDealCycle, "CrystalIgnition", 35, 0, ATKFinal) +IlliumDealCycle <- RepATKCycle(IlliumDealCycle, "ReactionSpectrum", 5, 0, ATKFinal) IlliumDealCycle <- MCFCycle(IlliumDealCycle, c("Javelin", "EnhancedJavelin", "Orb", "CrystalIgnition", "Longinus")) IlliumDealCycle <- SoulofCrystalBuffLogic(IlliumDealCycle) IlliumDealCycle <- AddATKCycleIllium(IlliumDealCycle, c("Javelin", "EnhancedJavelin", "Orb", "CrystalIgnition", "Longinus"), diff --git a/job/Kain.R b/job/Kain.R index d2527a5..c13b43d 100644 --- a/job/Kain.R +++ b/job/Kain.R @@ -1,3 +1,6 @@ +library(parallel) +options(scipen=999) + ## Kain - Data ## Kain - Core KainCoreBase <- CoreBuilder(ActSkills=c("DargonBurst", "FatalBlitz", "ThanatosDescent", "GripofAgony", @@ -63,7 +66,7 @@ value <- c(30 + KainBase$PSkillLv) GrindingII <- data.frame(option, value) option <- factor(c("FDR", "CDMR", "IGR"), levels=PSkill) -value <- c(20 + floor(KainBase$PSkillLv/2), 20 + KainBase$PSkillLv, 30 + KainBase$PSkillLv) +value <- c(24 + floor(KainBase$PSkillLv/2), 20 + KainBase$PSkillLv, 30 + KainBase$PSkillLv) Dogma <- data.frame(option, value) option <- factor(c("Mastery", "FDR", "ATK", "CDMR"), levels=PSkill) @@ -116,7 +119,7 @@ colnames(info) <- c("option", "value") DeathBlessingStack <- rbind(data.frame(option, value), info) option <- factor("FDR", levels=BSkill) -value <- c(10 + 10 + floor(KainBase$PSkillLv/2)) +value <- c(10 + 18 + floor(KainBase$PSkillLv/2)) info <- c(5, 10, 0, F, F, F, T) info <- data.frame(BInfo, info) colnames(info) <- c("option", "value") @@ -560,7 +563,7 @@ ThanatosDescentEndEnd <- rbind(data.frame(option, value), info) option <- factor(levels=ASkill) value <- c() -info <- c(600 + 24 * GetCoreLv(KainCore, "GripofAgony"), 6, 660, 330, 90, T, F, F) +info <- c(500 + 20 * GetCoreLv(KainCore, "GripofAgony"), 8, 660, 330, 90, T, F, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") GripofAgony <- rbind(data.frame(option, value), info)} diff --git a/job/Kinesis.R b/job/Kinesis.R index 2b67506..23eb1a1 100644 --- a/job/Kinesis.R +++ b/job/Kinesis.R @@ -1,3 +1,6 @@ +library(parallel) +options(scipen=999) + ## Kinesis - Data ## Kinesis - Core KinesisCoreBase <- CoreBuilder(ActSkills=c("PsychicTornado", "UltimateMovingMatter", "UltimatePsychicBullet", "LawofGravity", @@ -90,7 +93,7 @@ value <- c(50 + 2 * KinesisBase$PSkillLv, 20 + KinesisBase$PSkillLv, 20 + Kinesi ESPBattleOrder <- data.frame(option, value) option <- factor(c("FDR"), levels=PSkill) -value <- c(40 + KinesisBase$PSkillLv) +value <- c(15 + KinesisBase$PSkillLv) Gakseong <- data.frame(option, value) ## Gakseong CDMR -> Buff(Ultimate Skill Only) option <- factor(c("BuffDuration"), levels=PSkill) @@ -154,14 +157,14 @@ colnames(info) <- c("option", "value") GakseongUltimate <- rbind(data.frame(option, value), info) option <- factor(c("FDR", "IGR"), levels=BSkill) -value <- c(13, 16) +value <- c(15, 15) info <- c(0, 1, 0, F, F, F, F) info <- data.frame(BInfo, info) colnames(info) <- c("option", "value") PsychicGroundDebuff <- rbind(data.frame(option, value), info) option <- factor(c("FDR"), levels=BSkill) -value <- c(15) +value <- c(40) info <- c(0, 1, 0, F, F, F, F) info <- data.frame(BInfo, info) colnames(info) <- c("option", "value") @@ -302,16 +305,16 @@ info <- data.frame(AInfo,info) colnames(info) <- c("option", "value") PsychicSmashing <- rbind(data.frame(option, value), info) -option <- factor(c("IGR", "FDR"), levels=ASkill) -value <- c(ifelse(GetCoreLv(KinesisCore, "Telekinesis")>=40, 20, 0), 3 * GetCoreLv(KinesisCore, "Telekinesis")) -info <- c(350, 0.7, 0, NA, 0, NA, NA, F) +option <- factor(c("BDR", "IGR", "FDR"), levels=ASkill) +value <- c(20, ifelse(GetCoreLv(KinesisCore, "Telekinesis")>=40, 20, 0), 3 * GetCoreLv(KinesisCore, "Telekinesis")) +info <- c(350, 2, 0, NA, 0, NA, NA, F) info <- data.frame(AInfo,info) colnames(info) <- c("option", "value") Telekinesis <- rbind(data.frame(option, value), info) option <- factor(levels=ASkill) value <- c() -info <- c(500 + 10 * KinesisSpec$SkillLv, 1, 360, NA, 30, T, T, F) +info <- c(1000 + 10 * KinesisSpec$SkillLv, 4, 360, NA, 30, T, T, F) info <- data.frame(AInfo,info) colnames(info) <- c("option", "value") PsychicGround <- rbind(data.frame(option, value), info) @@ -323,9 +326,10 @@ info <- data.frame(AInfo,info) colnames(info) <- c("option", "value") PsychicCharging <- rbind(data.frame(option, value), info) +# removed option <- factor(c("IGR", "FDR"), levels=ASkill) value <- c(ifelse(GetCoreLv(KinesisCore, "PsychoBreak")>=40, 20, 0), 2 * GetCoreLv(KinesisCore, "PsychoBreak")) -info <- c(1000 + 7 * KinesisSpec$SkillLv, 4, 840, NA, 30, T, T, F) +info <- c(0, 0, 0, NA, 0, T, T, F) info <- data.frame(AInfo,info) colnames(info) <- c("option", "value") PsychoBreak <- rbind(data.frame(option, value), info) @@ -575,7 +579,7 @@ KinesisCycle <- function(DealCycle, ATKFinal, BuffFinal, SummonedFinal, Spec, ## PP By Skill if(DealCycle$Skills[nrow(DealCycle)]=="PsychicSmashing") { DealCycle$PP[nrow(DealCycle)] <- min(40, DealCycle$PP[(nrow(DealCycle)-1)] + 2) - } else if(sum(DealCycle$Skills[nrow(DealCycle)]==c("PsychicGround", "PsychoBreak")) >= 1) { + } else if(sum(DealCycle$Skills[nrow(DealCycle)]==c("PsychicGround")) >= 1) { DealCycle$PP[nrow(DealCycle)] <- min(40, DealCycle$PP[(nrow(DealCycle)-1)] + 1) } else if(sum(DealCycle$Skills[nrow(DealCycle)]==c("EverPsychic")) >= 1) { DealCycle$PP[nrow(DealCycle)] <- ifelse(DealCycle$PsychicOver[nrow(DealCycle)] > 0, 39, 38) diff --git a/job/Lara.R b/job/Lara.R index bef07b6..17ae13f 100644 --- a/job/Lara.R +++ b/job/Lara.R @@ -1,3 +1,6 @@ +library(parallel) +options(scipen=999) + ## Lara - Data ## Lara - Core LaraCoreBase <- CoreBuilder(ActSkills=c("HugeStretch", "SunRiverMountWind", "SurgingSpirit", "RidgeZigzag", @@ -337,53 +340,60 @@ MountainKid <- rbind(data.frame(option, value), info) option <- factor(c("BDR", "IGR", "FDR"), levels=ASkill) value <- c(25 + floor(LaraSpec$SummonedDuration / 2), IGRCalc(c(15, ifelse(GetCoreLv(LaraCore, "EarthVeinEruption")>=40, 20, 0))), 2 * GetCoreLv(LaraCore, "EarthVeinEruption")) -info <- c(215 + 120 + 325, 5, 0, NA, NA, NA, NA, F) +info <- c(750, 5, 0, NA, NA, NA, NA, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") HeavingRiver <- rbind(data.frame(option, value), info) option <- factor(c("BDR", "IGR", "FDR"), levels=ASkill) value <- c(25 + floor(LaraSpec$SummonedDuration / 2), IGRCalc(c(15, ifelse(GetCoreLv(LaraCore, "EarthVeinEruption")>=40, 20, 0))), 2 * GetCoreLv(LaraCore, "EarthVeinEruption")) -info <- c(680, 8, 0, NA, NA, NA, NA, F) +info <- c(860, 8, 0, NA, NA, NA, NA, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") HeavingRiverHuge <- rbind(data.frame(option, value), info) option <- factor(c("BDR", "IGR", "FDR"), levels=ASkill) value <- c(25 + floor(LaraSpec$SummonedDuration / 2), IGRCalc(c(15, ifelse(GetCoreLv(LaraCore, "EarthVeinEruption")>=40, 20, 0))), 2 * GetCoreLv(LaraCore, "EarthVeinEruption")) -info <- c(63 + 35 + 232, 5, 0, NA, NA, NA, NA, F) +info <- c(445, 5, 0, NA, NA, NA, NA, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") WhirlWind <- rbind(data.frame(option, value), info) option <- factor(c("BDR", "IGR", "FDR"), levels=ASkill) value <- c(25 + floor(LaraSpec$SummonedDuration / 2), IGRCalc(c(15, ifelse(GetCoreLv(LaraCore, "EarthVeinEruption")>=40, 20, 0))), 2 * GetCoreLv(LaraCore, "EarthVeinEruption")) -info <- c(120 + 48 + 365, 6, 0, NA, NA, NA, NA, F) +info <- c(750, 6, 0, NA, NA, NA, NA, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") SunriseWellGiant <- rbind(data.frame(option, value), info) option <- factor(c("BDR", "IGR", "FDR"), levels=ASkill) value <- c(25 + floor(LaraSpec$SummonedDuration / 2), IGRCalc(c(15, ifelse(GetCoreLv(LaraCore, "EarthVeinEruption")>=40, 20, 0))), 2 * GetCoreLv(LaraCore, "EarthVeinEruption")) -info <- c(85 + 48 + 205, 1, 0, 1000, NA, NA, NA, F) +info <- c(420, 1, 0, 1000, NA, NA, NA, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") SunriseWellFloor <- rbind(data.frame(option, value), info) option <- factor(c("BDR", "IGR", "FDR"), levels=ASkill) value <- c(25 + floor(LaraSpec$SummonedDuration / 2), IGRCalc(c(15, ifelse(GetCoreLv(LaraCore, "EarthVeinEruption")>=40, 20, 0))), 2 * GetCoreLv(LaraCore, "EarthVeinEruption")) -info <- c(75 + 48 + 250, 3, 0, NA, NA, NA, NA, F) +info <- c(450, 3, 0, NA, NA, NA, NA, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") SunriseWellVolcanicBomb1 <- rbind(data.frame(option, value), info) option <- factor(c("BDR", "IGR", "FDR"), levels=ASkill) value <- c(25 + floor(LaraSpec$SummonedDuration / 2), IGRCalc(c(15, ifelse(GetCoreLv(LaraCore, "EarthVeinEruption")>=40, 20, 0))), 2 * GetCoreLv(LaraCore, "EarthVeinEruption")) -info <- c((75 + 48 + 250) * 0.9, 3 * 4, 0, NA, NA, NA, NA, F) +info <- c(450 * 0.9, 3 * 4, 0, NA, NA, NA, NA, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") SunriseWellVolcanicBomb2 <- rbind(data.frame(option, value), info) +option <- factor(c("BDR", "IGR", "FDR"), levels=ASkill) +value <- c(25 + floor(LaraSpec$SummonedDuration / 2), IGRCalc(c(15, ifelse(GetCoreLv(LaraCore, "EarthVeinEruption")>=40, 20, 0))), 2 * GetCoreLv(LaraCore, "EarthVeinEruption")) +info <- c(125, 5 * 5, 0, NA, NA, NA, NA, F) +info <- data.frame(AInfo, info) +colnames(info) <- c("option", "value") +SunriseWellVolcanicBombDot <- rbind(data.frame(option, value), info) + option <- factor(c("BDR", "IGR", "FDR"), levels=ASkill) value <- c(0, ifelse(GetCoreLv(LaraCore, "SeedofMountain")>=40, 20, 0), 2 * GetCoreLv(LaraCore, "SeedofMountain")) info <- c(55 + 75 + 265 + 7 * LaraSpec$PSkillLv, 1, 510, 2000, NA, NA, NA, F) @@ -393,14 +403,14 @@ SeedofMountain <- rbind(data.frame(option, value), info) ## StartATK : 2720ms option <- factor(c("IGR", "FDR"), levels=ASkill) value <- c(ifelse(GetCoreLv(LaraCore, "Awakening")>=40, 20, 0), 2 * GetCoreLv(LaraCore, "Awakening")) -info <- c(105 + 45 + LaraSpec$PSkillLv, 4, 720, 90, Cooldown(11, T, LaraSpec$CoolReduceP, LaraSpec$CoolReduce), F, T, F) +info <- c(105 + 95 + LaraSpec$PSkillLv, 4, 720, 90, Cooldown(9, T, LaraSpec$CoolReduceP, LaraSpec$CoolReduce), F, T, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") Awakening1 <- rbind(data.frame(option, value), info) option <- factor(c("IGR", "FDR"), levels=ASkill) value <- c(ifelse(GetCoreLv(LaraCore, "Awakening")>=40, 20, 0), 2 * GetCoreLv(LaraCore, "Awakening")) -info <- c((105 + 45 + LaraSpec$PSkillLv) * 0.6, 4, 0, 90, Cooldown(11, T, LaraSpec$CoolReduceP, LaraSpec$CoolReduce), F, T, F) +info <- c((105 + 95 + LaraSpec$PSkillLv) * 0.6, 4, 0, 90, Cooldown(9, T, LaraSpec$CoolReduceP, LaraSpec$CoolReduce), F, T, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") Awakening2 <- rbind(data.frame(option, value), info) @@ -414,28 +424,35 @@ EarthVeinTrace <- rbind(data.frame(option, value), info) option <- factor(c("BDR", "IGR", "FDR"), levels=ASkill) value <- c(25, IGRCalc(c(15, ifelse(GetCoreLv(LaraCore, "EarthVeinAbsorb")>=40, 20, 0))), 2 * GetCoreLv(LaraCore, "EarthVeinAbsorb")) -info <- c(590 + 12 * LaraSpec$PSkillLv, 6, 0, 0, 2.5, F, F, F) +info <- c(510 + 12 * LaraSpec$PSkillLv, 10, 0, 0, 2.5, F, F, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") RiverPuddle <- rbind(data.frame(option, value), info) option <- factor(c("BDR", "IGR", "FDR"), levels=ASkill) value <- c(25, IGRCalc(c(15, ifelse(GetCoreLv(LaraCore, "EarthVeinAbsorb")>=40, 20, 0))), 2 * GetCoreLv(LaraCore, "EarthVeinAbsorb")) -info <- c(255 + 5 * LaraSpec$PSkillLv, 2, 0, 0, 2.5, F, F, F) +info <- c(250 + 5 * LaraSpec$PSkillLv, 3, 0, 0, 2.5, F, F, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") ChillyBleakWind <- rbind(data.frame(option, value), info) option <- factor(c("BDR", "IGR", "FDR"), levels=ASkill) value <- c(25, IGRCalc(c(15, ifelse(GetCoreLv(LaraCore, "EarthVeinAbsorb")>=40, 20, 0))), 2 * GetCoreLv(LaraCore, "EarthVeinAbsorb")) -info <- c(230 + 5 * LaraSpec$PSkillLv, 5 * 6, 0, 0, 2.5, F, F, F) +info <- c(265 + 5 * LaraSpec$PSkillLv, 5, 0, 0, 2.5, F, F, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") SunlightSphere <- rbind(data.frame(option, value), info) +option <- factor(c("BDR", "IGR", "FDR"), levels=ASkill) +value <- c(25, IGRCalc(c(15, ifelse(GetCoreLv(LaraCore, "EarthVeinAbsorb")>=40, 20, 0))), 2 * GetCoreLv(LaraCore, "EarthVeinAbsorb")) +info <- c((265 + 5 * LaraSpec$PSkillLv) * 0.6, 5 * 5, 0, 0, 2.5, F, F, F) +info <- data.frame(AInfo, info) +colnames(info) <- c("option", "value") +SunlightSphere2 <- rbind(data.frame(option, value), info) + option <- factor(levels=ASkill) value <- c() -info <- c(0, 0, 300, 0, Cooldown(3, T, LaraSpec$CoolReduceP, LaraSpec$CoolReduce) + 7, F, F, F) +info <- c(0, 0, 300, 0, Cooldown(3, T, LaraSpec$CoolReduceP, LaraSpec$CoolReduce) + 4, F, F, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") EarthVeinSwitch <- rbind(data.frame(option, value), info) ## ATKSpeed Not Applied @@ -492,9 +509,9 @@ RidgeZigzag <- rbind(data.frame(option, value), info) ## Minimum Delay 240ms, St LaraATK <- Attack(list(SpiritSeeding=SpiritSeeding, MountainKid=MountainKid, HeavingRiver=HeavingRiver, HeavingRiverHuge=HeavingRiverHuge, WhirlWind=WhirlWind, SunriseWellGiant=SunriseWellGiant, SunriseWellFloor=SunriseWellFloor, - SunriseWellVolcanicBomb1=SunriseWellVolcanicBomb1, SunriseWellVolcanicBomb2=SunriseWellVolcanicBomb2, + SunriseWellVolcanicBomb1=SunriseWellVolcanicBomb1, SunriseWellVolcanicBomb2=SunriseWellVolcanicBomb2, SunriseWellVolcanicBombDot=SunriseWellVolcanicBombDot, SeedofMountain=SeedofMountain, Awakening1=Awakening1, Awakening2=Awakening2, EarthVeinTrace=EarthVeinTrace, - RiverPuddle=RiverPuddle, ChillyBleakWind=ChillyBleakWind, SunlightSphere=SunlightSphere, + RiverPuddle=RiverPuddle, ChillyBleakWind=ChillyBleakWind, SunlightSphere=SunlightSphere, SunlightSphere2=SunlightSphere2, EarthVeinSwitch=EarthVeinSwitch, FreeEarthVein=FreeEarthVein, HugeStretch1=HugeStretch1, HugeStretch2=HugeStretch2, SunRiverMountWind1=SunRiverMountWind1, SunRiverMountWind2=SunRiverMountWind2, SurgingSpirit=SurgingSpirit, RidgeZigzag=RidgeZigzag, SpiderInMirror=SpiderInMirror)) diff --git a/job/Luminous.R b/job/Luminous.R index e5dda96..90d4e51 100644 --- a/job/Luminous.R +++ b/job/Luminous.R @@ -1,3 +1,6 @@ +library(parallel) +options(scipen=999) + ## Luminous - Data ## Luminous - VMatrix LuminousCoreBase <- CoreBuilder(ActSkills=c("DoorofTruth", "PunishingResonator", "BaptismofLightandDarkness", "LiberationOrb", @@ -61,7 +64,7 @@ value <- c(40) HighWisdom <- data.frame(option, value) option <- factor(c("FDR", "BDR"), levels=PSkill) -value <- c(30 + LuminousBase$SkillLv, 15 + floor(LuminousBase$SkillLv / 2)) +value <- c(36 + LuminousBase$SkillLv, 15 + floor(LuminousBase$SkillLv / 2)) MorningStarfall <- data.frame(option, value) option <- factor(c("BDR"), levels=PSkill) @@ -223,14 +226,14 @@ SpiderInMirrorWait <- SIM$SpiderInMirrorWait ## Luminous - Attacks {option <- factor(c("IGR", "BDR", "FDR"), levels=ASkill) value <- c(ifelse(GetCoreLv(LuminousCore, "LightReflection")>=40, 20, 0), 20, 2 * GetCoreLv(LuminousCore, "LightReflection")) -info <- c(440 + 4 * LuminousSpec$SkillLv, 4, 900, NA, NA, NA, NA, F) +info <- c(440 + 4 * LuminousSpec$SkillLv, 4, 810, NA, NA, NA, NA, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") LightReflection <- rbind(data.frame(option, value), info) option <- factor(c("IGR", "BDR", "FDR"), levels=ASkill) value <- c(ifelse(GetCoreLv(LuminousCore, "LightReflection")>=40, 20, 0), 20, 2 * GetCoreLv(LuminousCore, "LightReflection")) -info <- c((440 + 4 * LuminousSpec$SkillLv) * 0.5, 4, 900, NA, NA, NA, NA, F) +info <- c((440 + 4 * LuminousSpec$SkillLv) * 0.5, 4, 810, NA, NA, NA, NA, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") LightReflectionAdd <- rbind(data.frame(option, value), info) @@ -251,28 +254,28 @@ ApocalypseAdd <- rbind(data.frame(option, value), info) option <- factor(c("IGR", "BDR", "FDR", "CRR"), levels=ASkill) value <- c(IGRCalc(c(40 + LuminousSpec$SkillLv, ifelse(GetCoreLv(LuminousCore, "AbsoluteKill")>=40, 20, 0))), 20, FDRCalc(c(2 * GetCoreLv(LuminousCore, "AbsoluteKill"), 5)), 100) -info <- c(425 + 4 * LuminousSpec$SkillLv, 7, 810, NA, NA, NA, NA, F) +info <- c(455 + 4 * LuminousSpec$SkillLv, 7, 780, NA, NA, NA, NA, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") AbsoluteKill <- rbind(data.frame(option, value), info) option <- factor(c("IGR", "BDR", "FDR", "CRR"), levels=ASkill) value <- c(IGRCalc(c(40 + LuminousSpec$SkillLv, ifelse(GetCoreLv(LuminousCore, "AbsoluteKill")>=40, 20, 0))), 20, FDRCalc(c(2 * GetCoreLv(LuminousCore, "AbsoluteKill"), 5)), 100) -info <- c(425 + 4 * LuminousSpec$SkillLv, 7, 810, NA, NA, NA, NA, F) +info <- c(455 + 4 * LuminousSpec$SkillLv, 7, 780, NA, NA, NA, NA, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") AbsoluteKillEq <- rbind(data.frame(option, value), info) option <- factor(c("IGR", "BDR", "FDR", "CRR"), levels=ASkill) value <- c(IGRCalc(c(40 + LuminousSpec$SkillLv, ifelse(GetCoreLv(LuminousCore, "AbsoluteKill")>=40, 20, 0))), 20, FDRCalc(c(2 * GetCoreLv(LuminousCore, "AbsoluteKill"), 5)), 100) -info <- c((425 + 4 * LuminousSpec$SkillLv) * 0.5, 7, 810, NA, NA, NA, NA, F) +info <- c((455 + 4 * LuminousSpec$SkillLv) * 0.5, 7, 780, NA, NA, NA, NA, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") AbsoluteKillAdd <- rbind(data.frame(option, value), info) option <- factor(c("CRR"), levels=ASkill) value <- c(15) -info <- c(400 + 16 * GetCoreLv(LuminousCore, "PunishingResonator"), 6, 990, 180, 30, T, F, F) +info <- c(425 + 17 * GetCoreLv(LuminousCore, "PunishingResonator"), 6, 990, 180, 30, T, F, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") PunishingResonator <- rbind(data.frame(option, value), info) diff --git a/job/Marksman.R b/job/Marksman.R index 543e62c..761254a 100644 --- a/job/Marksman.R +++ b/job/Marksman.R @@ -1,3 +1,6 @@ +library(parallel) +options(scipen=999) + ## Marksman - Data ## Marksman - VMatrix MarksmanCoreBase <- CoreBuilder(ActSkills=c("TrueSnipe", "SplitArrow", "ChargedArrow", "FullbustShot", @@ -143,7 +146,7 @@ EpicAdventure <- rbind(data.frame(option, value), info) option <- factor(c("CRR", "CDMR", "IGR", "BDR"), levels=BSkill) value <- c(20, 10, 20, 20) -info <- c(30, 90, 960, F, F, F, T) +info <- c(40, 120, 960, F, F, F, T) info <- data.frame(BInfo, info) colnames(info) <- c("option", "value") Bullseye <- rbind(data.frame(option, value), info) @@ -291,7 +294,7 @@ Snipe <- rbind(data.frame(option, value), info) option <- factor(c("IGR", "BDR", "CRR", "FDR"), levels=ASkill) value <- c(IGRCalc(c(25 + ceiling(MarksmanSpec$SkillLv/3)* 2, ifelse(GetCoreLv(MarksmanCore, "Snipe")>=40, 20, 0))), 30, 100, 2 * GetCoreLv(MarksmanCore, "Snipe")) -info <- c(535 + MarksmanSpec$SkillLv * 7, 11, 840, NA, NA, NA, NA, F) +info <- c(535 + MarksmanSpec$SkillLv * 7, 11, 780, NA, NA, NA, NA, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") EnhanceSnipe <- rbind(data.frame(option, value), info) @@ -303,8 +306,8 @@ info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") EnhanceSnipeAddATK <- rbind(data.frame(option, value), info) -option <- factor(levels=ASkill) -value <- c() +option <- factor(c("IGR"), levels=ASkill) +value <- c(25) info <- c(600 + 24 * GetCoreLv(MarksmanCore, "SplitArrow"), 6, 0, NA, NA, NA, NA, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") @@ -333,14 +336,14 @@ ChargedArrowUncharged <- rbind(data.frame(option, value), info) option <- factor(c("IGR", "BDR", "CRR"), levels=ASkill) value <- c(100, 100, 100) -info <- c(0, 0, 150, NA, 180, T, F, F) +info <- c(0, 0, 120, NA, 60, T, F, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") TrueSnipeStart <- rbind(data.frame(option, value), info) option <- factor(c("IGR", "BDR", "CRR"), levels=ASkill) value <- c(100, 100, 100) -info <- c(950 + 30 * GetCoreLv(MarksmanCore, "TrueSnipe"), 15, 900, NA, 180, T, F, F) +info <- c(950 + 30 * GetCoreLv(MarksmanCore, "TrueSnipe"), 60, 900, NA, 60, T, F, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") TrueSnipe <- rbind(data.frame(option, value), info) @@ -415,7 +418,7 @@ MarksmanCycle <- function(PreDealCycle, ATKFinal, BuffFinal, SummonedFinal, Spec BuffSummonedPrior <- c("SharpEyes", "MapleSoldier", "EpicAdventure", "UsefulCombatOrders", "UsefulAdvancedBless", "GuidedArrow", "Evolve", "FullbustShotBuff", "MapleWarriors2", "Bullseye", "SplitArrowBuff", "SoulContractLink", "CriticalReinforce", "Restraint4") Times120 <- c(0, 0, 1, 0, 0, - 0, 1, 1, 0.5, 1, 1, 1, 1, 0.5) + 0, 1, 1, 0.5, 2, 1, 1, 1, 0.5) if(nrow(BuffFinal[rownames(BuffFinal)=="UsefulAdvancedBless", ]) == 0) { Times120 <- Times120[BuffSummonedPrior!="UsefulAdvancedBless"] BuffSummonedPrior <- BuffSummonedPrior[BuffSummonedPrior!="UsefulAdvancedBless"] @@ -639,13 +642,6 @@ MarksmanCycle <- function(PreDealCycle, ATKFinal, BuffFinal, SummonedFinal, Spec DealCycle$EnhanceArrowStack[nrow(DealCycle)] <- DealCycle$EnhanceArrowStack[nrow(DealCycle)-1] CARemain <- max(0, CARemain - DealCycle$Time[1]) - for(i in 1:6) { - DealCycle <- DCATK(DealCycle, "TrueSnipe", ATKFinal) - DealCycle$EnhanceArrowStack[nrow(DealCycle)] <- DealCycle$EnhanceArrowStack[nrow(DealCycle)-1] - DealCycle$FocusOnBuff[nrow(DealCycle)] <- 15000 - CARemain <- max(0, CARemain - DealCycle$Time[1]) - } - DealCycle <- DCATK(DealCycle, "TrueSnipe", ATKFinal) DealCycle$EnhanceArrowStack[nrow(DealCycle)] <- DealCycle$EnhanceArrowStack[nrow(DealCycle)-1] DealCycle$FocusOnBuff[nrow(DealCycle)] <- 15000 diff --git a/job/Mechanic.R b/job/Mechanic.R index b89902a..996ee8e 100644 --- a/job/Mechanic.R +++ b/job/Mechanic.R @@ -1,3 +1,6 @@ +library(parallel) +options(scipen=999) + ## Mechanic - Data ## Mechanic - VMatrix MechanicCoreBase <- CoreBuilder(ActSkills=c("MultipleOption", "MicroMissileContainer", "MetalArmorFullburst", "MechCarrier", @@ -61,7 +64,7 @@ value <- c(30) MetalArmorTank <- data.frame(option, value) option <- factor(c("FDR", "CRR", "IGR"), levels=PSkill) -value <- c(25, 20, 30) +value <- c(34, 20, 30) OverTuning <- data.frame(option, value) option <- factor(c("Mastery", "ATK"), levels=PSkill) @@ -69,7 +72,7 @@ value <- c(70 + ceiling(MechanicBase$PSkillLv/2), 55 + ceiling(MechanicBase$PSki MetalArmorExtreme <- data.frame(option, value) option <- factor(c("BDR", "SummonDuration"), levels=PSkill) -value <- c((6 + ceiling(MechanicBase$PSkillLv/5)) * 3, 40 + MechanicBase$PSkillLv) +value <- c((5 + ceiling(MechanicBase$PSkillLv/5)) * 3, 40 + MechanicBase$PSkillLv) RobotMastery <- data.frame(option, value) option <- factor(c("ATK"), levels=PSkill) @@ -105,7 +108,7 @@ SupportWaiver <- rbind(data.frame(option, value), info) option <- factor("BDR", levels=BSkill) value <- c((6 + ceiling(MechanicBase$PSkillLv/5))) -info <- c(30 * (100 + MechanicBase$MonsterLife$SummonedDuration + MechanicPassive$SummonDuration + MechanicBase$UnionChrs$SummonedDuration) / 100, 60, 0, F, T, T, F) +info <- c(70 * (100 + MechanicBase$MonsterLife$SummonedDuration + MechanicPassive$SummonDuration + MechanicBase$UnionChrs$SummonedDuration) / 100, 60, 0, F, T, T, F) info <- data.frame(BInfo, info) colnames(info) <- c("option", "value") RM1Buff <- rbind(data.frame(option, value), info) @@ -119,7 +122,7 @@ OpenGate <- rbind(data.frame(option, value), info) option <- factor("BDR", levels=BSkill) value <- c((6 + ceiling(MechanicBase$PSkillLv/5))) -info <- c(60 * (100 + MechanicPassive$SummonDuration) / 100 + 10, 160 * (100 - MechanicBase$UnionChrs$CoolReduceP - 25) / 100 - MechanicBase$CoolReduce, 630, F, F, F, F) +info <- c(70 * (100 + MechanicPassive$SummonDuration) / 100 + 10, 80 * (100 - MechanicBase$UnionChrs$CoolReduceP - 25) / 100 - MechanicBase$CoolReduce, 630, F, F, F, F) info <- data.frame(BInfo, info) colnames(info) <- c("option", "value") MagneticFieldBuff <- rbind(data.frame(option, value), info) diff --git a/job/Xenon.R b/job/Xenon.R index 3d9350a..b78a8a8 100644 --- a/job/Xenon.R +++ b/job/Xenon.R @@ -1,3 +1,6 @@ +library(parallel) +options(scipen=999) + ## Xenon - Data ## Xenon - Core XenonCoreBase <- CoreBuilder(ActSkills=c("MegaSmasher", "OverloadMode", "HologramGrafityFusion", "PhotonRay", @@ -204,7 +207,7 @@ MapleSoldier <- rbind(data.frame(option, value), info) option <- factor(levels=BSkill) value <- c() -info <- c(10, 90, 900, F, F, F, F) +info <- c(10, 90, 780, F, F, F, F) info <- data.frame(BInfo, info) colnames(info) <- c("option", "value") AmaranthGenerator <- rbind(data.frame(option, value), info) @@ -374,7 +377,7 @@ TriangleFormation <- rbind(data.frame(option, value), info) option <- factor(c("BDR", "IGR", "FDR"), levels=ASkill) value <- c(20, IGRCalc(c(30 + XenonSpec$SkillLv, 10, ifelse(GetCoreLv(XenonCore, "FuzzylopMasquerade")>=40, 20, 0))), 2 * GetCoreLv(XenonCore, "FuzzylopMasquerade")) -info <- c(345 + 2 * XenonSpec$SkillLv, 7, 870, NA, NA, NA, NA, F) +info <- c(360 + 2 * XenonSpec$SkillLv, 7, 840, NA, NA, NA, NA, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") FuzzylopMasquerade <- rbind(data.frame(option, value), info) @@ -395,7 +398,7 @@ ExtraSupply <- rbind(data.frame(option, value), info) option <- factor(levels=ASkill) value <- c() -info <- c(275 + 10 * GetCoreLv(XenonCore, "MegaSmasher"), 6, 1000, 150, 165, T, F, F) +info <- c(300 + 12 * GetCoreLv(XenonCore, "MegaSmasher"), 6, 1000, 120, 165, T, F, F) info <- data.frame(AInfo, info) colnames(info) <- c("option", "value") MegaSmasher <- rbind(data.frame(option, value), info) diff --git a/jobdata/Adele/AdeleDealTL_C_L.png b/jobdata/Adele/AdeleDealTL_C_L.png index 5faca63..e7e76ac 100644 Binary files a/jobdata/Adele/AdeleDealTL_C_L.png and b/jobdata/Adele/AdeleDealTL_C_L.png differ diff --git a/jobdata/Adele/AdeleDealTL_L.png b/jobdata/Adele/AdeleDealTL_L.png index 40775dd..006cd15 100644 Binary files a/jobdata/Adele/AdeleDealTL_L.png and b/jobdata/Adele/AdeleDealTL_L.png differ diff --git a/jobdata/Adele/AdeleRestraintTL_L.png b/jobdata/Adele/AdeleRestraintTL_L.png index 8eca920..86e7bce 100644 Binary files a/jobdata/Adele/AdeleRestraintTL_L.png and b/jobdata/Adele/AdeleRestraintTL_L.png differ diff --git a/jobdata/AngelicBuster/AngelicBusterDealTL_C_L.png b/jobdata/AngelicBuster/AngelicBusterDealTL_C_L.png index c104d77..6bcbcb9 100644 Binary files a/jobdata/AngelicBuster/AngelicBusterDealTL_C_L.png and b/jobdata/AngelicBuster/AngelicBusterDealTL_C_L.png differ diff --git a/jobdata/AngelicBuster/AngelicBusterDealTL_L.png b/jobdata/AngelicBuster/AngelicBusterDealTL_L.png index ee1a67b..bbb1111 100644 Binary files a/jobdata/AngelicBuster/AngelicBusterDealTL_L.png and b/jobdata/AngelicBuster/AngelicBusterDealTL_L.png differ diff --git a/jobdata/AngelicBuster/AngelicBusterRestraintTL_L.png b/jobdata/AngelicBuster/AngelicBusterRestraintTL_L.png index 7596626..adb50c7 100644 Binary files a/jobdata/AngelicBuster/AngelicBusterRestraintTL_L.png and b/jobdata/AngelicBuster/AngelicBusterRestraintTL_L.png differ diff --git a/jobdata/Aran/AranDealTL_C_L.png b/jobdata/Aran/AranDealTL_C_L.png index 9380eda..b917b9d 100644 Binary files a/jobdata/Aran/AranDealTL_C_L.png and b/jobdata/Aran/AranDealTL_C_L.png differ diff --git a/jobdata/Aran/AranDealTL_L.png b/jobdata/Aran/AranDealTL_L.png index c8d5300..dc856fe 100644 Binary files a/jobdata/Aran/AranDealTL_L.png and b/jobdata/Aran/AranDealTL_L.png differ diff --git a/jobdata/Aran/AranRestraintTL_L.png b/jobdata/Aran/AranRestraintTL_L.png index 7c73469..a637159 100644 Binary files a/jobdata/Aran/AranRestraintTL_L.png and b/jobdata/Aran/AranRestraintTL_L.png differ diff --git a/jobdata/ArchMageFP/ArchMageFPDealTL_C_L.png b/jobdata/ArchMageFP/ArchMageFPDealTL_C_L.png index 8b7fa2f..db4958f 100644 Binary files a/jobdata/ArchMageFP/ArchMageFPDealTL_C_L.png and b/jobdata/ArchMageFP/ArchMageFPDealTL_C_L.png differ diff --git a/jobdata/ArchMageFP/ArchMageFPDealTL_L.png b/jobdata/ArchMageFP/ArchMageFPDealTL_L.png index 0321733..f78cee3 100644 Binary files a/jobdata/ArchMageFP/ArchMageFPDealTL_L.png and b/jobdata/ArchMageFP/ArchMageFPDealTL_L.png differ diff --git a/jobdata/ArchMageFP/ArchMageFPRestraintTL_L.png b/jobdata/ArchMageFP/ArchMageFPRestraintTL_L.png index 839fe35..5b4c7e6 100644 Binary files a/jobdata/ArchMageFP/ArchMageFPRestraintTL_L.png and b/jobdata/ArchMageFP/ArchMageFPRestraintTL_L.png differ diff --git a/jobdata/ArchMageTC/ArchMageTCDealTL_C_L.png b/jobdata/ArchMageTC/ArchMageTCDealTL_C_L.png index 0e2a64b..c048943 100644 Binary files a/jobdata/ArchMageTC/ArchMageTCDealTL_C_L.png and b/jobdata/ArchMageTC/ArchMageTCDealTL_C_L.png differ diff --git a/jobdata/ArchMageTC/ArchMageTCDealTL_L.png b/jobdata/ArchMageTC/ArchMageTCDealTL_L.png index 7311772..2e004c7 100644 Binary files a/jobdata/ArchMageTC/ArchMageTCDealTL_L.png and b/jobdata/ArchMageTC/ArchMageTCDealTL_L.png differ diff --git a/jobdata/ArchMageTC/ArchMageTCRestraintTL_L.png b/jobdata/ArchMageTC/ArchMageTCRestraintTL_L.png index c3e09e4..c374440 100644 Binary files a/jobdata/ArchMageTC/ArchMageTCRestraintTL_L.png and b/jobdata/ArchMageTC/ArchMageTCRestraintTL_L.png differ diff --git a/jobdata/Ark/ArkDealTL_C_L.png b/jobdata/Ark/ArkDealTL_C_L.png index 7c62b9e..4d89016 100644 Binary files a/jobdata/Ark/ArkDealTL_C_L.png and b/jobdata/Ark/ArkDealTL_C_L.png differ diff --git a/jobdata/Ark/ArkDealTL_L.png b/jobdata/Ark/ArkDealTL_L.png index ae21a3f..5b78311 100644 Binary files a/jobdata/Ark/ArkDealTL_L.png and b/jobdata/Ark/ArkDealTL_L.png differ diff --git a/jobdata/Ark/ArkRestraintTL_L.png b/jobdata/Ark/ArkRestraintTL_L.png index ebe6cfa..1b5cda5 100644 Binary files a/jobdata/Ark/ArkRestraintTL_L.png and b/jobdata/Ark/ArkRestraintTL_L.png differ diff --git a/jobdata/BattleMage/BattleMageDealTL_C_L.png b/jobdata/BattleMage/BattleMageDealTL_C_L.png index 454ea53..75bd59f 100644 Binary files a/jobdata/BattleMage/BattleMageDealTL_C_L.png and b/jobdata/BattleMage/BattleMageDealTL_C_L.png differ diff --git a/jobdata/BattleMage/BattleMageDealTL_L.png b/jobdata/BattleMage/BattleMageDealTL_L.png index 8935a92..203a8cc 100644 Binary files a/jobdata/BattleMage/BattleMageDealTL_L.png and b/jobdata/BattleMage/BattleMageDealTL_L.png differ diff --git a/jobdata/BattleMage/BattleMageRestraintTL_L.png b/jobdata/BattleMage/BattleMageRestraintTL_L.png index dd90a9f..4af388d 100644 Binary files a/jobdata/BattleMage/BattleMageRestraintTL_L.png and b/jobdata/BattleMage/BattleMageRestraintTL_L.png differ diff --git a/jobdata/Bishop/BishopDealTL_C_L.png b/jobdata/Bishop/BishopDealTL_C_L.png index 6a4eba9..c8457ff 100644 Binary files a/jobdata/Bishop/BishopDealTL_C_L.png and b/jobdata/Bishop/BishopDealTL_C_L.png differ diff --git a/jobdata/Bishop/BishopDealTL_L.png b/jobdata/Bishop/BishopDealTL_L.png index ddd1b62..e4bc01a 100644 Binary files a/jobdata/Bishop/BishopDealTL_L.png and b/jobdata/Bishop/BishopDealTL_L.png differ diff --git a/jobdata/Bishop/BishopRestraintTL_L.png b/jobdata/Bishop/BishopRestraintTL_L.png index 0d04944..9a207ad 100644 Binary files a/jobdata/Bishop/BishopRestraintTL_L.png and b/jobdata/Bishop/BishopRestraintTL_L.png differ diff --git a/jobdata/Blaster/BlasterDealTL_C_L.png b/jobdata/Blaster/BlasterDealTL_C_L.png index 24d9054..ee74590 100644 Binary files a/jobdata/Blaster/BlasterDealTL_C_L.png and b/jobdata/Blaster/BlasterDealTL_C_L.png differ diff --git a/jobdata/Blaster/BlasterDealTL_L.png b/jobdata/Blaster/BlasterDealTL_L.png index 972b96a..3f278ce 100644 Binary files a/jobdata/Blaster/BlasterDealTL_L.png and b/jobdata/Blaster/BlasterDealTL_L.png differ diff --git a/jobdata/Blaster/BlasterRestraintTL_L.png b/jobdata/Blaster/BlasterRestraintTL_L.png index 51814da..9a287e8 100644 Binary files a/jobdata/Blaster/BlasterRestraintTL_L.png and b/jobdata/Blaster/BlasterRestraintTL_L.png differ diff --git a/jobdata/Bowmaster/BowmasterDealTL_C_L.png b/jobdata/Bowmaster/BowmasterDealTL_C_L.png index 6f96359..13cf294 100644 Binary files a/jobdata/Bowmaster/BowmasterDealTL_C_L.png and b/jobdata/Bowmaster/BowmasterDealTL_C_L.png differ diff --git a/jobdata/Bowmaster/BowmasterDealTL_L.png b/jobdata/Bowmaster/BowmasterDealTL_L.png index ff0ed45..1eced44 100644 Binary files a/jobdata/Bowmaster/BowmasterDealTL_L.png and b/jobdata/Bowmaster/BowmasterDealTL_L.png differ diff --git a/jobdata/Bowmaster/BowmasterRestraintTL_L.png b/jobdata/Bowmaster/BowmasterRestraintTL_L.png index 94984e5..5324229 100644 Binary files a/jobdata/Bowmaster/BowmasterRestraintTL_L.png and b/jobdata/Bowmaster/BowmasterRestraintTL_L.png differ diff --git a/jobdata/Cadena/CadenaDealTL_C_L.png b/jobdata/Cadena/CadenaDealTL_C_L.png index 5d1dd83..a6e9173 100644 Binary files a/jobdata/Cadena/CadenaDealTL_C_L.png and b/jobdata/Cadena/CadenaDealTL_C_L.png differ diff --git a/jobdata/Cadena/CadenaDealTL_L.png b/jobdata/Cadena/CadenaDealTL_L.png index d30ed47..fd4f94b 100644 Binary files a/jobdata/Cadena/CadenaDealTL_L.png and b/jobdata/Cadena/CadenaDealTL_L.png differ diff --git a/jobdata/Cadena/CadenaRestraintTL_L.png b/jobdata/Cadena/CadenaRestraintTL_L.png index 29bcfc9..c4bd599 100644 Binary files a/jobdata/Cadena/CadenaRestraintTL_L.png and b/jobdata/Cadena/CadenaRestraintTL_L.png differ diff --git a/jobdata/CannonMaster/CannonMasterDealTL_C_L.png b/jobdata/CannonMaster/CannonMasterDealTL_C_L.png index 5ff5d45..90e05ab 100644 Binary files a/jobdata/CannonMaster/CannonMasterDealTL_C_L.png and b/jobdata/CannonMaster/CannonMasterDealTL_C_L.png differ diff --git a/jobdata/CannonMaster/CannonMasterDealTL_L.png b/jobdata/CannonMaster/CannonMasterDealTL_L.png index 31c0aa6..bb6f6cf 100644 Binary files a/jobdata/CannonMaster/CannonMasterDealTL_L.png and b/jobdata/CannonMaster/CannonMasterDealTL_L.png differ diff --git a/jobdata/CannonMaster/CannonMasterRestraintTL_L.png b/jobdata/CannonMaster/CannonMasterRestraintTL_L.png index 686ce52..a50cc73 100644 Binary files a/jobdata/CannonMaster/CannonMasterRestraintTL_L.png and b/jobdata/CannonMaster/CannonMasterRestraintTL_L.png differ diff --git a/jobdata/Captain/CaptainDealTL_C_L.png b/jobdata/Captain/CaptainDealTL_C_L.png index 22571f2..518aa4e 100644 Binary files a/jobdata/Captain/CaptainDealTL_C_L.png and b/jobdata/Captain/CaptainDealTL_C_L.png differ diff --git a/jobdata/Captain/CaptainDealTL_L.png b/jobdata/Captain/CaptainDealTL_L.png index ebf1767..30fa7f0 100644 Binary files a/jobdata/Captain/CaptainDealTL_L.png and b/jobdata/Captain/CaptainDealTL_L.png differ diff --git a/jobdata/Captain/CaptainRestraintTL_L.png b/jobdata/Captain/CaptainRestraintTL_L.png index 3f9c62b..ec1560d 100644 Binary files a/jobdata/Captain/CaptainRestraintTL_L.png and b/jobdata/Captain/CaptainRestraintTL_L.png differ diff --git a/jobdata/DarkKnight/DarkKnightDealTL_C_L.png b/jobdata/DarkKnight/DarkKnightDealTL_C_L.png index 6ff8e5a..c66ca86 100644 Binary files a/jobdata/DarkKnight/DarkKnightDealTL_C_L.png and b/jobdata/DarkKnight/DarkKnightDealTL_C_L.png differ diff --git a/jobdata/DarkKnight/DarkKnightDealTL_L.png b/jobdata/DarkKnight/DarkKnightDealTL_L.png index 2883df1..7a420ae 100644 Binary files a/jobdata/DarkKnight/DarkKnightDealTL_L.png and b/jobdata/DarkKnight/DarkKnightDealTL_L.png differ diff --git a/jobdata/DarkKnight/DarkKnightRestraintTL_L.png b/jobdata/DarkKnight/DarkKnightRestraintTL_L.png index cec46d8..e2c3e90 100644 Binary files a/jobdata/DarkKnight/DarkKnightRestraintTL_L.png and b/jobdata/DarkKnight/DarkKnightRestraintTL_L.png differ diff --git a/jobdata/DemonAvenger/DemonAvengerDealTL_C_L.png b/jobdata/DemonAvenger/DemonAvengerDealTL_C_L.png index d9c2b58..9a8401f 100644 Binary files a/jobdata/DemonAvenger/DemonAvengerDealTL_C_L.png and b/jobdata/DemonAvenger/DemonAvengerDealTL_C_L.png differ diff --git a/jobdata/DemonAvenger/DemonAvengerDealTL_L.png b/jobdata/DemonAvenger/DemonAvengerDealTL_L.png index 4ad6c04..cb2f137 100644 Binary files a/jobdata/DemonAvenger/DemonAvengerDealTL_L.png and b/jobdata/DemonAvenger/DemonAvengerDealTL_L.png differ diff --git a/jobdata/DemonAvenger/DemonAvengerRestraintTL_L.png b/jobdata/DemonAvenger/DemonAvengerRestraintTL_L.png index 84fe787..24d1241 100644 Binary files a/jobdata/DemonAvenger/DemonAvengerRestraintTL_L.png and b/jobdata/DemonAvenger/DemonAvengerRestraintTL_L.png differ diff --git a/jobdata/DemonSlayer/DemonSlayerDealTL_C_L.png b/jobdata/DemonSlayer/DemonSlayerDealTL_C_L.png index 5775a52..60efa77 100644 Binary files a/jobdata/DemonSlayer/DemonSlayerDealTL_C_L.png and b/jobdata/DemonSlayer/DemonSlayerDealTL_C_L.png differ diff --git a/jobdata/DemonSlayer/DemonSlayerDealTL_L.png b/jobdata/DemonSlayer/DemonSlayerDealTL_L.png index 6b99864..d6df60b 100644 Binary files a/jobdata/DemonSlayer/DemonSlayerDealTL_L.png and b/jobdata/DemonSlayer/DemonSlayerDealTL_L.png differ diff --git a/jobdata/DemonSlayer/DemonSlayerRestraintTL_L.png b/jobdata/DemonSlayer/DemonSlayerRestraintTL_L.png index 3fa54a3..233a83f 100644 Binary files a/jobdata/DemonSlayer/DemonSlayerRestraintTL_L.png and b/jobdata/DemonSlayer/DemonSlayerRestraintTL_L.png differ diff --git a/jobdata/DualBlader/DualBladerDealTL_C_L.png b/jobdata/DualBlader/DualBladerDealTL_C_L.png index c7bd4fd..a79ac0d 100644 Binary files a/jobdata/DualBlader/DualBladerDealTL_C_L.png and b/jobdata/DualBlader/DualBladerDealTL_C_L.png differ diff --git a/jobdata/DualBlader/DualBladerDealTL_L.png b/jobdata/DualBlader/DualBladerDealTL_L.png index 9b06075..c11b476 100644 Binary files a/jobdata/DualBlader/DualBladerDealTL_L.png and b/jobdata/DualBlader/DualBladerDealTL_L.png differ diff --git a/jobdata/DualBlader/DualBladerRestraintTL_L.png b/jobdata/DualBlader/DualBladerRestraintTL_L.png index 93bd825..c4b8b29 100644 Binary files a/jobdata/DualBlader/DualBladerRestraintTL_L.png and b/jobdata/DualBlader/DualBladerRestraintTL_L.png differ diff --git a/jobdata/Eunwol/EunwolDealTL_C_L.png b/jobdata/Eunwol/EunwolDealTL_C_L.png index 0d67752..7e82331 100644 Binary files a/jobdata/Eunwol/EunwolDealTL_C_L.png and b/jobdata/Eunwol/EunwolDealTL_C_L.png differ diff --git a/jobdata/Eunwol/EunwolDealTL_L.png b/jobdata/Eunwol/EunwolDealTL_L.png index e5dca02..81cc27f 100644 Binary files a/jobdata/Eunwol/EunwolDealTL_L.png and b/jobdata/Eunwol/EunwolDealTL_L.png differ diff --git a/jobdata/Eunwol/EunwolRestraintTL_L.png b/jobdata/Eunwol/EunwolRestraintTL_L.png index 02e3d7d..74b6eb0 100644 Binary files a/jobdata/Eunwol/EunwolRestraintTL_L.png and b/jobdata/Eunwol/EunwolRestraintTL_L.png differ diff --git a/jobdata/Evan/EvanDealTL_C_L.png b/jobdata/Evan/EvanDealTL_C_L.png index cf9dffb..2d5e8fc 100644 Binary files a/jobdata/Evan/EvanDealTL_C_L.png and b/jobdata/Evan/EvanDealTL_C_L.png differ diff --git a/jobdata/Evan/EvanDealTL_L.png b/jobdata/Evan/EvanDealTL_L.png index fe0a686..df83ecc 100644 Binary files a/jobdata/Evan/EvanDealTL_L.png and b/jobdata/Evan/EvanDealTL_L.png differ diff --git a/jobdata/Evan/EvanRestraintTL_L.png b/jobdata/Evan/EvanRestraintTL_L.png index 0a09d34..ece06c5 100644 Binary files a/jobdata/Evan/EvanRestraintTL_L.png and b/jobdata/Evan/EvanRestraintTL_L.png differ diff --git a/jobdata/FlameWizard/FlameWizardDealTL_C_L.png b/jobdata/FlameWizard/FlameWizardDealTL_C_L.png index e4a235b..f58c8f8 100644 Binary files a/jobdata/FlameWizard/FlameWizardDealTL_C_L.png and b/jobdata/FlameWizard/FlameWizardDealTL_C_L.png differ diff --git a/jobdata/FlameWizard/FlameWizardDealTL_L.png b/jobdata/FlameWizard/FlameWizardDealTL_L.png index ff349fa..18d6902 100644 Binary files a/jobdata/FlameWizard/FlameWizardDealTL_L.png and b/jobdata/FlameWizard/FlameWizardDealTL_L.png differ diff --git a/jobdata/FlameWizard/FlameWizardRestraintTL_L.png b/jobdata/FlameWizard/FlameWizardRestraintTL_L.png index 3955974..ea4960d 100644 Binary files a/jobdata/FlameWizard/FlameWizardRestraintTL_L.png and b/jobdata/FlameWizard/FlameWizardRestraintTL_L.png differ diff --git a/jobdata/Hero/HeroDealTL_C_L.png b/jobdata/Hero/HeroDealTL_C_L.png index 4f0782f..564d12e 100644 Binary files a/jobdata/Hero/HeroDealTL_C_L.png and b/jobdata/Hero/HeroDealTL_C_L.png differ diff --git a/jobdata/Hero/HeroDealTL_L.png b/jobdata/Hero/HeroDealTL_L.png index 1efcc5c..28f19ed 100644 Binary files a/jobdata/Hero/HeroDealTL_L.png and b/jobdata/Hero/HeroDealTL_L.png differ diff --git a/jobdata/Hero/HeroRestraintTL_L.png b/jobdata/Hero/HeroRestraintTL_L.png index b26a95a..9e01dcf 100644 Binary files a/jobdata/Hero/HeroRestraintTL_L.png and b/jobdata/Hero/HeroRestraintTL_L.png differ diff --git a/jobdata/Hoyeong/HoyeongDealTL_C_L.png b/jobdata/Hoyeong/HoyeongDealTL_C_L.png index caa9e75..9f58c41 100644 Binary files a/jobdata/Hoyeong/HoyeongDealTL_C_L.png and b/jobdata/Hoyeong/HoyeongDealTL_C_L.png differ diff --git a/jobdata/Hoyeong/HoyeongDealTL_L.png b/jobdata/Hoyeong/HoyeongDealTL_L.png index 45ca15e..fbc62e0 100644 Binary files a/jobdata/Hoyeong/HoyeongDealTL_L.png and b/jobdata/Hoyeong/HoyeongDealTL_L.png differ diff --git a/jobdata/Hoyeong/HoyeongRestraintTL_L.png b/jobdata/Hoyeong/HoyeongRestraintTL_L.png index b524ea3..6deefd7 100644 Binary files a/jobdata/Hoyeong/HoyeongRestraintTL_L.png and b/jobdata/Hoyeong/HoyeongRestraintTL_L.png differ diff --git a/jobdata/Illium/IlliumDealTL_C_L.png b/jobdata/Illium/IlliumDealTL_C_L.png index 0eb866b..b965760 100644 Binary files a/jobdata/Illium/IlliumDealTL_C_L.png and b/jobdata/Illium/IlliumDealTL_C_L.png differ diff --git a/jobdata/Illium/IlliumDealTL_L.png b/jobdata/Illium/IlliumDealTL_L.png index 3e6dc11..8551f77 100644 Binary files a/jobdata/Illium/IlliumDealTL_L.png and b/jobdata/Illium/IlliumDealTL_L.png differ diff --git a/jobdata/Illium/IlliumRestraintTL_L.png b/jobdata/Illium/IlliumRestraintTL_L.png index 8db8edf..8209b1e 100644 Binary files a/jobdata/Illium/IlliumRestraintTL_L.png and b/jobdata/Illium/IlliumRestraintTL_L.png differ diff --git a/jobdata/Kain/KainDealTL_C_L.png b/jobdata/Kain/KainDealTL_C_L.png index b6a793b..5054b84 100644 Binary files a/jobdata/Kain/KainDealTL_C_L.png and b/jobdata/Kain/KainDealTL_C_L.png differ diff --git a/jobdata/Kain/KainDealTL_L.png b/jobdata/Kain/KainDealTL_L.png index 8db724e..c2d0e20 100644 Binary files a/jobdata/Kain/KainDealTL_L.png and b/jobdata/Kain/KainDealTL_L.png differ diff --git a/jobdata/Kain/KainRestraintTL_L.png b/jobdata/Kain/KainRestraintTL_L.png index 1ab34d5..9a08336 100644 Binary files a/jobdata/Kain/KainRestraintTL_L.png and b/jobdata/Kain/KainRestraintTL_L.png differ diff --git a/jobdata/Kaiser/KaiserDealTL_C_L.png b/jobdata/Kaiser/KaiserDealTL_C_L.png index f20c96e..d5b2962 100644 Binary files a/jobdata/Kaiser/KaiserDealTL_C_L.png and b/jobdata/Kaiser/KaiserDealTL_C_L.png differ diff --git a/jobdata/Kaiser/KaiserDealTL_L.png b/jobdata/Kaiser/KaiserDealTL_L.png index 4e8aceb..64959cf 100644 Binary files a/jobdata/Kaiser/KaiserDealTL_L.png and b/jobdata/Kaiser/KaiserDealTL_L.png differ diff --git a/jobdata/Kaiser/KaiserRestraintTL_L.png b/jobdata/Kaiser/KaiserRestraintTL_L.png index e90bb92..6175cf0 100644 Binary files a/jobdata/Kaiser/KaiserRestraintTL_L.png and b/jobdata/Kaiser/KaiserRestraintTL_L.png differ diff --git a/jobdata/Kinesis/KinesisDealTL_C_L.png b/jobdata/Kinesis/KinesisDealTL_C_L.png index 10d68fa..150aed9 100644 Binary files a/jobdata/Kinesis/KinesisDealTL_C_L.png and b/jobdata/Kinesis/KinesisDealTL_C_L.png differ diff --git a/jobdata/Kinesis/KinesisDealTL_L.png b/jobdata/Kinesis/KinesisDealTL_L.png index ba06b06..05bf769 100644 Binary files a/jobdata/Kinesis/KinesisDealTL_L.png and b/jobdata/Kinesis/KinesisDealTL_L.png differ diff --git a/jobdata/Kinesis/KinesisRestraintTL_L.png b/jobdata/Kinesis/KinesisRestraintTL_L.png index cc85734..8dda4d2 100644 Binary files a/jobdata/Kinesis/KinesisRestraintTL_L.png and b/jobdata/Kinesis/KinesisRestraintTL_L.png differ diff --git a/jobdata/Lara/LaraDealTL_C_L.png b/jobdata/Lara/LaraDealTL_C_L.png index 5dcb156..de02eba 100644 Binary files a/jobdata/Lara/LaraDealTL_C_L.png and b/jobdata/Lara/LaraDealTL_C_L.png differ diff --git a/jobdata/Lara/LaraDealTL_L.png b/jobdata/Lara/LaraDealTL_L.png index 0449cd1..84aa1e5 100644 Binary files a/jobdata/Lara/LaraDealTL_L.png and b/jobdata/Lara/LaraDealTL_L.png differ diff --git a/jobdata/Lara/LaraRestraintTL_L.png b/jobdata/Lara/LaraRestraintTL_L.png index becc847..f4f155b 100644 Binary files a/jobdata/Lara/LaraRestraintTL_L.png and b/jobdata/Lara/LaraRestraintTL_L.png differ diff --git a/jobdata/Luminous/LuminousDealTL_C_L.png b/jobdata/Luminous/LuminousDealTL_C_L.png index 9d00d42..f495d6b 100644 Binary files a/jobdata/Luminous/LuminousDealTL_C_L.png and b/jobdata/Luminous/LuminousDealTL_C_L.png differ diff --git a/jobdata/Luminous/LuminousDealTL_L.png b/jobdata/Luminous/LuminousDealTL_L.png index a918542..80fd4f3 100644 Binary files a/jobdata/Luminous/LuminousDealTL_L.png and b/jobdata/Luminous/LuminousDealTL_L.png differ diff --git a/jobdata/Luminous/LuminousRestraintTL_L.png b/jobdata/Luminous/LuminousRestraintTL_L.png index f0d642f..baa65eb 100644 Binary files a/jobdata/Luminous/LuminousRestraintTL_L.png and b/jobdata/Luminous/LuminousRestraintTL_L.png differ diff --git a/jobdata/Marksman/MarksmanDealTL_C_L.png b/jobdata/Marksman/MarksmanDealTL_C_L.png index 8ecf1b6..5ee7678 100644 Binary files a/jobdata/Marksman/MarksmanDealTL_C_L.png and b/jobdata/Marksman/MarksmanDealTL_C_L.png differ diff --git a/jobdata/Marksman/MarksmanDealTL_L.png b/jobdata/Marksman/MarksmanDealTL_L.png index 6d21557..8852f40 100644 Binary files a/jobdata/Marksman/MarksmanDealTL_L.png and b/jobdata/Marksman/MarksmanDealTL_L.png differ diff --git a/jobdata/Marksman/MarksmanRestraintTL_L.png b/jobdata/Marksman/MarksmanRestraintTL_L.png index b4d1247..9ecfd22 100644 Binary files a/jobdata/Marksman/MarksmanRestraintTL_L.png and b/jobdata/Marksman/MarksmanRestraintTL_L.png differ diff --git a/jobdata/Mechanic/MechanicDealTL_C_L.png b/jobdata/Mechanic/MechanicDealTL_C_L.png index d0f568d..91b8c7c 100644 Binary files a/jobdata/Mechanic/MechanicDealTL_C_L.png and b/jobdata/Mechanic/MechanicDealTL_C_L.png differ diff --git a/jobdata/Mechanic/MechanicDealTL_L.png b/jobdata/Mechanic/MechanicDealTL_L.png index bfdafea..a844f92 100644 Binary files a/jobdata/Mechanic/MechanicDealTL_L.png and b/jobdata/Mechanic/MechanicDealTL_L.png differ diff --git a/jobdata/Mechanic/MechanicRestraintTL_L.png b/jobdata/Mechanic/MechanicRestraintTL_L.png index 7df432a..35c4505 100644 Binary files a/jobdata/Mechanic/MechanicRestraintTL_L.png and b/jobdata/Mechanic/MechanicRestraintTL_L.png differ diff --git a/jobdata/Mercedes/MercedesDealTL_C_L.png b/jobdata/Mercedes/MercedesDealTL_C_L.png index 5e71f32..927cc92 100644 Binary files a/jobdata/Mercedes/MercedesDealTL_C_L.png and b/jobdata/Mercedes/MercedesDealTL_C_L.png differ diff --git a/jobdata/Mercedes/MercedesDealTL_L.png b/jobdata/Mercedes/MercedesDealTL_L.png index 2764688..e21bac3 100644 Binary files a/jobdata/Mercedes/MercedesDealTL_L.png and b/jobdata/Mercedes/MercedesDealTL_L.png differ diff --git a/jobdata/Mercedes/MercedesRestraintTL_L.png b/jobdata/Mercedes/MercedesRestraintTL_L.png index 174e9ce..0d27c6c 100644 Binary files a/jobdata/Mercedes/MercedesRestraintTL_L.png and b/jobdata/Mercedes/MercedesRestraintTL_L.png differ diff --git a/jobdata/Mikhail/MikhailDealTL_C_L.png b/jobdata/Mikhail/MikhailDealTL_C_L.png index 3df2665..03777e3 100644 Binary files a/jobdata/Mikhail/MikhailDealTL_C_L.png and b/jobdata/Mikhail/MikhailDealTL_C_L.png differ diff --git a/jobdata/Mikhail/MikhailDealTL_L.png b/jobdata/Mikhail/MikhailDealTL_L.png index 169582d..e7a1e30 100644 Binary files a/jobdata/Mikhail/MikhailDealTL_L.png and b/jobdata/Mikhail/MikhailDealTL_L.png differ diff --git a/jobdata/Mikhail/MikhailRestraintTL_L.png b/jobdata/Mikhail/MikhailRestraintTL_L.png index e286823..2d79c33 100644 Binary files a/jobdata/Mikhail/MikhailRestraintTL_L.png and b/jobdata/Mikhail/MikhailRestraintTL_L.png differ diff --git a/jobdata/NightLord/NightLordDealTL_C_L.png b/jobdata/NightLord/NightLordDealTL_C_L.png index a303016..477ea69 100644 Binary files a/jobdata/NightLord/NightLordDealTL_C_L.png and b/jobdata/NightLord/NightLordDealTL_C_L.png differ diff --git a/jobdata/NightLord/NightLordDealTL_L.png b/jobdata/NightLord/NightLordDealTL_L.png index e7848dd..6ecf2d5 100644 Binary files a/jobdata/NightLord/NightLordDealTL_L.png and b/jobdata/NightLord/NightLordDealTL_L.png differ diff --git a/jobdata/NightLord/NightLordRestraintTL_L.png b/jobdata/NightLord/NightLordRestraintTL_L.png index 80b233d..c458a87 100644 Binary files a/jobdata/NightLord/NightLordRestraintTL_L.png and b/jobdata/NightLord/NightLordRestraintTL_L.png differ diff --git a/jobdata/NightWalker/NightWalkerDealTL_C_L.png b/jobdata/NightWalker/NightWalkerDealTL_C_L.png index d7460b0..f1d3ee6 100644 Binary files a/jobdata/NightWalker/NightWalkerDealTL_C_L.png and b/jobdata/NightWalker/NightWalkerDealTL_C_L.png differ diff --git a/jobdata/NightWalker/NightWalkerDealTL_L.png b/jobdata/NightWalker/NightWalkerDealTL_L.png index 5336db3..ab7254d 100644 Binary files a/jobdata/NightWalker/NightWalkerDealTL_L.png and b/jobdata/NightWalker/NightWalkerDealTL_L.png differ diff --git a/jobdata/NightWalker/NightWalkerRestraintTL_L.png b/jobdata/NightWalker/NightWalkerRestraintTL_L.png index a1df73c..541be67 100644 Binary files a/jobdata/NightWalker/NightWalkerRestraintTL_L.png and b/jobdata/NightWalker/NightWalkerRestraintTL_L.png differ diff --git a/jobdata/Palladin/PalladinDealTL_C_L.png b/jobdata/Palladin/PalladinDealTL_C_L.png index e6cf35f..fbda6df 100644 Binary files a/jobdata/Palladin/PalladinDealTL_C_L.png and b/jobdata/Palladin/PalladinDealTL_C_L.png differ diff --git a/jobdata/Palladin/PalladinDealTL_L.png b/jobdata/Palladin/PalladinDealTL_L.png index e62d3dc..90ac369 100644 Binary files a/jobdata/Palladin/PalladinDealTL_L.png and b/jobdata/Palladin/PalladinDealTL_L.png differ diff --git a/jobdata/Palladin/PalladinRestraintTL_L.png b/jobdata/Palladin/PalladinRestraintTL_L.png index 79ff296..e33639c 100644 Binary files a/jobdata/Palladin/PalladinRestraintTL_L.png and b/jobdata/Palladin/PalladinRestraintTL_L.png differ diff --git a/jobdata/PathFinder/PathFinderDealTL_C_L.png b/jobdata/PathFinder/PathFinderDealTL_C_L.png index b551f67..5c0ba52 100644 Binary files a/jobdata/PathFinder/PathFinderDealTL_C_L.png and b/jobdata/PathFinder/PathFinderDealTL_C_L.png differ diff --git a/jobdata/PathFinder/PathFinderDealTL_L.png b/jobdata/PathFinder/PathFinderDealTL_L.png index d43b1e8..65816ef 100644 Binary files a/jobdata/PathFinder/PathFinderDealTL_L.png and b/jobdata/PathFinder/PathFinderDealTL_L.png differ diff --git a/jobdata/PathFinder/PathFinderRestraintTL_L.png b/jobdata/PathFinder/PathFinderRestraintTL_L.png index aa9727c..9e133d4 100644 Binary files a/jobdata/PathFinder/PathFinderRestraintTL_L.png and b/jobdata/PathFinder/PathFinderRestraintTL_L.png differ diff --git a/jobdata/Phantom/PhantomDealTL_C_L.png b/jobdata/Phantom/PhantomDealTL_C_L.png index 6a715ba..95f7dbc 100644 Binary files a/jobdata/Phantom/PhantomDealTL_C_L.png and b/jobdata/Phantom/PhantomDealTL_C_L.png differ diff --git a/jobdata/Phantom/PhantomDealTL_L.png b/jobdata/Phantom/PhantomDealTL_L.png index 525c6c3..20e296a 100644 Binary files a/jobdata/Phantom/PhantomDealTL_L.png and b/jobdata/Phantom/PhantomDealTL_L.png differ diff --git a/jobdata/Phantom/PhantomRestraintTL_L.png b/jobdata/Phantom/PhantomRestraintTL_L.png index 87e66b1..fff8ae0 100644 Binary files a/jobdata/Phantom/PhantomRestraintTL_L.png and b/jobdata/Phantom/PhantomRestraintTL_L.png differ diff --git a/jobdata/Shadower/ShadowerDealTL_C_L.png b/jobdata/Shadower/ShadowerDealTL_C_L.png index 4999a33..a040eec 100644 Binary files a/jobdata/Shadower/ShadowerDealTL_C_L.png and b/jobdata/Shadower/ShadowerDealTL_C_L.png differ diff --git a/jobdata/Shadower/ShadowerDealTL_L.png b/jobdata/Shadower/ShadowerDealTL_L.png index 911bb43..72b2ebf 100644 Binary files a/jobdata/Shadower/ShadowerDealTL_L.png and b/jobdata/Shadower/ShadowerDealTL_L.png differ diff --git a/jobdata/Shadower/ShadowerRestraintTL_L.png b/jobdata/Shadower/ShadowerRestraintTL_L.png index 3f51781..29c1baf 100644 Binary files a/jobdata/Shadower/ShadowerRestraintTL_L.png and b/jobdata/Shadower/ShadowerRestraintTL_L.png differ diff --git a/jobdata/SoulMaster/SoulMasterDealTL_C_L.png b/jobdata/SoulMaster/SoulMasterDealTL_C_L.png index ae848ac..e8f4307 100644 Binary files a/jobdata/SoulMaster/SoulMasterDealTL_C_L.png and b/jobdata/SoulMaster/SoulMasterDealTL_C_L.png differ diff --git a/jobdata/SoulMaster/SoulMasterDealTL_L.png b/jobdata/SoulMaster/SoulMasterDealTL_L.png index 8bd5c74..720628f 100644 Binary files a/jobdata/SoulMaster/SoulMasterDealTL_L.png and b/jobdata/SoulMaster/SoulMasterDealTL_L.png differ diff --git a/jobdata/SoulMaster/SoulMasterRestraintTL_L.png b/jobdata/SoulMaster/SoulMasterRestraintTL_L.png index fbd196e..e6bcbaa 100644 Binary files a/jobdata/SoulMaster/SoulMasterRestraintTL_L.png and b/jobdata/SoulMaster/SoulMasterRestraintTL_L.png differ diff --git a/jobdata/Striker/StrikerDealTL_C_L.png b/jobdata/Striker/StrikerDealTL_C_L.png index 5c42c00..1a6a8e7 100644 Binary files a/jobdata/Striker/StrikerDealTL_C_L.png and b/jobdata/Striker/StrikerDealTL_C_L.png differ diff --git a/jobdata/Striker/StrikerDealTL_L.png b/jobdata/Striker/StrikerDealTL_L.png index 1c4f693..f1e8e7c 100644 Binary files a/jobdata/Striker/StrikerDealTL_L.png and b/jobdata/Striker/StrikerDealTL_L.png differ diff --git a/jobdata/Striker/StrikerRestraintTL_L.png b/jobdata/Striker/StrikerRestraintTL_L.png index ccefc99..65d5ee3 100644 Binary files a/jobdata/Striker/StrikerRestraintTL_L.png and b/jobdata/Striker/StrikerRestraintTL_L.png differ diff --git a/jobdata/Viper/ViperDealTL_C_L.png b/jobdata/Viper/ViperDealTL_C_L.png index 5c3902e..3479872 100644 Binary files a/jobdata/Viper/ViperDealTL_C_L.png and b/jobdata/Viper/ViperDealTL_C_L.png differ diff --git a/jobdata/Viper/ViperDealTL_L.png b/jobdata/Viper/ViperDealTL_L.png index 5ef9d5a..f9068de 100644 Binary files a/jobdata/Viper/ViperDealTL_L.png and b/jobdata/Viper/ViperDealTL_L.png differ diff --git a/jobdata/Viper/ViperRestraintTL_L.png b/jobdata/Viper/ViperRestraintTL_L.png index be0ed73..c636ae7 100644 Binary files a/jobdata/Viper/ViperRestraintTL_L.png and b/jobdata/Viper/ViperRestraintTL_L.png differ diff --git a/jobdata/WildHunter/WildHunterDealTL_C_L.png b/jobdata/WildHunter/WildHunterDealTL_C_L.png index 62892a9..e8841de 100644 Binary files a/jobdata/WildHunter/WildHunterDealTL_C_L.png and b/jobdata/WildHunter/WildHunterDealTL_C_L.png differ diff --git a/jobdata/WildHunter/WildHunterDealTL_L.png b/jobdata/WildHunter/WildHunterDealTL_L.png index 145fd16..bbac71c 100644 Binary files a/jobdata/WildHunter/WildHunterDealTL_L.png and b/jobdata/WildHunter/WildHunterDealTL_L.png differ diff --git a/jobdata/WildHunter/WildHunterRestraintTL_L.png b/jobdata/WildHunter/WildHunterRestraintTL_L.png index 02edad4..a489a57 100644 Binary files a/jobdata/WildHunter/WildHunterRestraintTL_L.png and b/jobdata/WildHunter/WildHunterRestraintTL_L.png differ diff --git a/jobdata/WindBreaker/WindBreakerDealTL_C_L.png b/jobdata/WindBreaker/WindBreakerDealTL_C_L.png index 52441ba..d64b489 100644 Binary files a/jobdata/WindBreaker/WindBreakerDealTL_C_L.png and b/jobdata/WindBreaker/WindBreakerDealTL_C_L.png differ diff --git a/jobdata/WindBreaker/WindBreakerDealTL_L.png b/jobdata/WindBreaker/WindBreakerDealTL_L.png index ded847b..d93ae6a 100644 Binary files a/jobdata/WindBreaker/WindBreakerDealTL_L.png and b/jobdata/WindBreaker/WindBreakerDealTL_L.png differ diff --git a/jobdata/WindBreaker/WindBreakerRestraintTL_L.png b/jobdata/WindBreaker/WindBreakerRestraintTL_L.png index 67444bc..148bdc2 100644 Binary files a/jobdata/WindBreaker/WindBreakerRestraintTL_L.png and b/jobdata/WindBreaker/WindBreakerRestraintTL_L.png differ diff --git a/jobdata/Xenon/XenonDealTL_C_L.png b/jobdata/Xenon/XenonDealTL_C_L.png index c20b628..b017453 100644 Binary files a/jobdata/Xenon/XenonDealTL_C_L.png and b/jobdata/Xenon/XenonDealTL_C_L.png differ diff --git a/jobdata/Xenon/XenonDealTL_L.png b/jobdata/Xenon/XenonDealTL_L.png index 246f0e2..7756679 100644 Binary files a/jobdata/Xenon/XenonDealTL_L.png and b/jobdata/Xenon/XenonDealTL_L.png differ diff --git a/jobdata/Xenon/XenonRestraintTL_L.png b/jobdata/Xenon/XenonRestraintTL_L.png index 3e467c9..64f80c1 100644 Binary files a/jobdata/Xenon/XenonRestraintTL_L.png and b/jobdata/Xenon/XenonRestraintTL_L.png differ diff --git a/jobdata/Zero/ZeroDealTL_C_L.png b/jobdata/Zero/ZeroDealTL_C_L.png index 58cd899..54aee13 100644 Binary files a/jobdata/Zero/ZeroDealTL_C_L.png and b/jobdata/Zero/ZeroDealTL_C_L.png differ diff --git a/jobdata/Zero/ZeroDealTL_L.png b/jobdata/Zero/ZeroDealTL_L.png index 64a5702..1c75c1d 100644 Binary files a/jobdata/Zero/ZeroDealTL_L.png and b/jobdata/Zero/ZeroDealTL_L.png differ diff --git a/jobdata/Zero/ZeroRestraintTL_L.png b/jobdata/Zero/ZeroRestraintTL_L.png index 136e561..fe09c76 100644 Binary files a/jobdata/Zero/ZeroRestraintTL_L.png and b/jobdata/Zero/ZeroRestraintTL_L.png differ diff --git a/ror4.png b/ror4.png new file mode 100644 index 0000000..7260c60 Binary files /dev/null and b/ror4.png differ