From f03a3bf1ded6baccaff32b55546c522dc266c1bb Mon Sep 17 00:00:00 2001 From: Jacorb90 <39597610+Jacorb90@users.noreply.github.com> Date: Sat, 5 Sep 2020 13:11:53 -0400 Subject: [PATCH 1/3] Beta v1.2 Alpha 7 --- index.html | 15 ++++++++--- js/canvas.js | 1 + js/game.js | 70 ++++++++++++++++++++++++++++++++++++++++++++-------- js/temp.js | 1 + 4 files changed, 74 insertions(+), 13 deletions(-) diff --git a/index.html b/index.html index 3d2f845..b6ee3ca 100644 --- a/index.html +++ b/index.html @@ -15,6 +15,10 @@


+

Beta v1.2 Alpha 7

+

Beta v1.2 Alpha 6

@@ -419,14 +428,14 @@
- +


You have {{formatWhole(player.m.hexes)}} Hexes, which are multiplying Hindrance Spirit & Quirk gain by {{format(tmp.hexEff)}}

- +
1 Magic
Keep row 4 milestones on all resets
2 Magic
Keep Hindrance completions on all resets
3 Magic
Gain 1% of Hindrance Energy & Quirk gain every second
3 Magic
Gain 1% of Hindrance Spirit & Quirk gain every second
4 Magic
Automatically purchase Hyper-Boosters & Subspace      
diff --git a/js/canvas.js b/js/canvas.js index 3ad675c..5ca17b6 100644 --- a/js/canvas.js +++ b/js/canvas.js @@ -48,6 +48,7 @@ function drawTree() { if (layerUnl('m')) { drawTreeBranch("hb", "m") drawTreeBranch("h", "m") + drawTreeBranch("q", "m") } if (layerUnl('ba')) { drawTreeBranch("q", "ba") diff --git a/js/game.js b/js/game.js index 95f8e0a..871b2e1 100644 --- a/js/game.js +++ b/js/game.js @@ -1090,13 +1090,15 @@ const LAYER_UPGS = { unl: function() { return player.m.upgrades.includes(21) }, }, 24: { - desc: "???", - cost: new Decimal(1/0), - unl: function() { return false }, + desc: "Add free Quirk Layers based on your Boosters.", + cost: new Decimal(80000), + unl: function() { return player.m.upgrades.includes(22) }, + currently: function() { return player.b.points.plus(1).log10().times(0.9) }, + effDisp: function(x) { return "+"+format(x) }, }, }, ba: { - rows: 2, + rows: 3, cols: 4, 11: { desc: "All Balance Energy effects use better formulas.", @@ -1148,6 +1150,30 @@ const LAYER_UPGS = { cost: new Decimal(2e4), unl: function() { return player.ba.upgrades.includes(22) }, }, + 31: { + desc: "The Quirk Layer cost is adjusted based on your Balance Upgrades bought.", + cost: new Decimal(4e5), + unl: function() { return player.ba.upgrades.includes(23) }, + currently: function() { return Decimal.div(0.8, Math.pow(player.ba.upgrades.length+1, 0.1)).plus(1.2) }, + effDisp: function(x) { return "2 -> "+format(x) }, + }, + 32: { + desc: "Enhancers are stronger based on your Positivity.", + cost: new Decimal(5e5), + unl: function() { return player.ba.upgrades.includes(24) }, + currently: function() { return player.ba.positivity.plus(1).log10().plus(1).log10().plus(1).pow(2) }, + effDisp: function(x) { return format(x.sub(1).times(100))+"% stronger" }, + }, + 33: { + desc: "The Balance Power effect is squared.", + cost: new Decimal(1e6), + unl: function() { return player.ba.upgrades.includes(31) }, + }, + 34: { + desc: "The Positivity & Negativity effect uses a better formula.", + cost: new Decimal(2e6), + unl: function() { return player.ba.upgrades.includes(32) }, + }, }, } @@ -1961,6 +1987,7 @@ function getEnhancerPow() { if (player.e.upgrades.includes(31)&&!(tmp.hcActive?tmp.hcActive[12]:true)) pow = pow.times(LAYER_UPGS.e[31].currently()) if (player.h.challs.includes(31)) pow = pow.times(2) if (player.q.upgrades.includes(42)) pow = pow.times(1.4) + if (player.ba.upgrades.includes(32)) pow = pow.times(LAYER_UPGS.ba[32].currently()) return pow } @@ -2253,13 +2280,19 @@ function addToSBBase() { return toAdd } +function getQuirkLayerCostBase() { + let base = new Decimal(2) + if (player.ba.upgrades.includes(31)) base = LAYER_UPGS.ba[31].currently() + return base +} + function getQuirkLayerCost() { - let cost = Decimal.pow(2, Decimal.pow(2, player.q.layers)).sub(1) + let cost = Decimal.pow(tmp.qCB, Decimal.pow(tmp.qCB, player.q.layers)).sub(1) return cost.max(1); } function getQuirkLayerTarg() { - let targ = player.q.points.plus(1).log2().plus(1).log2().plus(1).floor() + let targ = player.q.points.plus(1).log(tmp.qCB).plus(1).log(tmp.qCB).plus(1).floor() return targ } @@ -2273,10 +2306,16 @@ function getQuirkLayerMult() { return mult } +function getExtraQuirkLayers() { + let layers = new Decimal(0); + if (player.m.upgrades.includes(24)) layers = layers.plus(LAYER_UPGS.m[24].currently()) + return layers; +} + function getQuirkEnergyGainExp() { let mult = new Decimal(1) if (spellActive(3)) mult = mult.times(tmp.spellEffs[3]) - return player.q.layers.sub(1).times(mult) + return player.q.layers.plus(getExtraQuirkLayers()).sub(1).times(mult) } function getQuirkEnergyEff() { @@ -2509,6 +2548,7 @@ function getHyperBoosterPow() { function getBalancePowerEff() { let eff = player.ba.power.plus(1).sqrt() if (player.ba.upgrades.includes(14)) eff = eff.pow(5) + if (player.ba.upgrades.includes(33)) eff = eff.pow(2) return eff; } @@ -2516,6 +2556,7 @@ function getBalanceTypesEff() { let mod = player.ba.positivity.plus(1).log10().plus(1).div(player.ba.negativity.plus(1).log10().plus(1)).log10().abs().plus(1).pow(-1) let pos = player.ba.positivity.plus(1).log10().plus(1) let neg = player.ba.negativity.plus(1).log10().plus(1) + if (player.ba.upgrades.includes(34)) mod = mod.times(1.5) let eff = pos.times(neg).pow(mod) return eff; } @@ -2539,9 +2580,9 @@ function getNegGainMult() { } const SPELL_NAMES = { - 1: "Spell 1", - 2: "Spell 2", - 3: "Spell 3", + 1: "Booster Launch", + 2: "Time Warp", + 3: "Quirk Amplification", } const SPELL_DESCS = { @@ -2734,6 +2775,15 @@ document.onkeydown = function(e) { case "S": if (player.ss.unl) doReset("ss") break; + case "1": + if (player.ba.unl) activateSpell(1) + break; + case "2": + if (player.ba.unl) activateSpell(2) + break; + case "3": + if (player.ba.unl) activateSpell(3) + break; } } else if (player[key].unl) doReset(key) } \ No newline at end of file diff --git a/js/temp.js b/js/temp.js index f6a2071..19247b3 100644 --- a/js/temp.js +++ b/js/temp.js @@ -47,6 +47,7 @@ function updateTemp() { tmp.sbUnl = getSpaceBuildingsUnl() tmp.quirkEff = getQuirkEnergyEff() + tmp.qCB = getQuirkLayerCostBase() tmp.ssEff1 = getSubspaceEff1() tmp.ssEff2 = getSubspaceEff2() From 8040846f3dfe360f11076580e3fa4d2e77e2aba9 Mon Sep 17 00:00:00 2001 From: Jacorb90 <39597610+Jacorb90@users.noreply.github.com> Date: Sat, 5 Sep 2020 16:00:21 -0400 Subject: [PATCH 2/3] Beta v1.2 Alpha 8 --- index.html | 14 +++++++++++--- js/game.js | 52 +++++++++++++++++++++++++++++++++++++++++++++++++--- style.css | 3 +++ 3 files changed, 63 insertions(+), 6 deletions(-) diff --git a/index.html b/index.html index b6ee3ca..1ffa714 100644 --- a/index.html +++ b/index.html @@ -15,6 +15,12 @@


+

Beta v1.2 Alpha 8

+

Beta v1.2 Alpha 7

diff --git a/js/game.js b/js/game.js index 871b2e1..9505077 100644 --- a/js/game.js +++ b/js/game.js @@ -282,7 +282,7 @@ const LAYER_EFFS = { limit: Decimal.pow(2, player.t.points.plus(player.t.extCapsules.plus(tmp.freeExtCap).times(getFreeExtPow())).times(getCapPow())).sub(1).times(100).times(getTimeEnergyLimitMult()), }}, sb: function() { return Decimal.pow(Decimal.add(1.5, addToSBBase()), player.sb.points.times(getSuperBoosterPow())) }, - sg: function() { return Decimal.pow(Decimal.add(2, addToSGBase()), player.sg.points).times(getSuperGenPowerGainMult()).max(0) }, + sg: function() { return Decimal.pow(Decimal.add(2, addToSGBase()), player.sg.points).sub(1).times(getSuperGenPowerGainMult()).max(0) }, h: function() { let ret = player.h.points.plus(1).times(player.points.times(player.h.points).plus(1).log10().plus(1).log10().plus(1)).log10().times(5).root(player.q.upgrades.includes(12)?1.25:2); if (player.h.challs.includes(61)) ret = ret.times(1.2); @@ -1044,7 +1044,7 @@ const LAYER_UPGS = { }, }, m: { - rows: 2, + rows: 3, cols: 4, 11: { desc: "Hexes boost all Spells.", @@ -1096,6 +1096,30 @@ const LAYER_UPGS = { currently: function() { return player.b.points.plus(1).log10().times(0.9) }, effDisp: function(x) { return "+"+format(x) }, }, + 31: { + desc: "Unlock a new Hindrance.", + cost: new Decimal(2.5e6), + unl: function() { return player.m.upgrades.includes(23)&&player.sg.unl }, + }, + 32: { + desc: "Hyper-Boosters add free Space Buildings.", + cost: new Decimal(5e9), + unl: function() { return player.m.upgrades.includes(24) }, + currently: function() { return player.hb.points.plus(1).pow(3) }, + effDisp: function(x) { return "+"+formatWhole(x) }, + }, + 33: { + desc: "Hindrance Spirit adds to the Hyper-Booster base.", + cost: new Decimal(2e10), + unl: function() { return player.m.upgrades.includes(31) }, + currently: function() { return player.h.points.plus(1).log10().plus(1).log10().plus(1).log10().div(2) }, + effDisp: function(x) { return "+"+format(x) }, + }, + 34: { + desc: "???", + cost: new Decimal(1/0), + unl: function() { return false }, + }, }, ba: { rows: 3, @@ -1584,6 +1608,7 @@ function getLayerGainMult(layer) { if (player.ss.upgrades.includes(14)) mult = mult.div(1.0825) break; case "h": + if (player.h.challs.includes(71)) mult = mult.times(H_CHALLS[71].currently()) if (player.q.upgrades.includes(22)) mult = mult.times(LAYER_UPGS.q[22].currently().h) if (player.q.upgrades.includes(34)) mult = mult.times(LAYER_UPGS.q[34].currently()) if (player.q.upgrades.includes(44)) mult = mult.times(LAYER_UPGS.q[44].currently()) @@ -2161,6 +2186,7 @@ function getExtraBuildingLevels(x) { if (player.s.upgrades.includes(14)&&!(tmp.hcActive?tmp.hcActive[12]:true)) lvl = lvl.plus(1); if (player.q.upgrades.includes(31)) lvl = lvl.plus(1); if (x<5) lvl = lvl.plus(tmp.spaceBuildEff[5]) + if (player.m.upgrades.includes(32)) lvl = lvl.plus(LAYER_UPGS.m[32].currently()) return lvl } @@ -2353,7 +2379,7 @@ function maxQuirkLayers() { } const H_CHALLS = { - rows: 6, + rows: 7, cols: 2, 11: { name: "Skip the Second", @@ -2453,9 +2479,26 @@ const H_CHALLS = { goal: new Decimal("1e134000"), reward: "Unlock Super-Generators.", }, + 71: { + name: "The Final Stockade", + desc: 'All previous Hindrances (except "Slowed to a Halt" and "Anti-Enhancers") are applied at once.', + unl: function() { return player.m.upgrades.includes(31) }, + goal: new Decimal("1e1150"), + reward: "Gain more Hindrance Spirit based on your Quirk Energy.", + currently: function() { return player.q.energy.plus(1).sqrt() }, + effDisp: function(x) { return format(x)+"x" }, + }, + 72: { + name: "You shouldn't be seeing this", + desc: "Never gonna give you up, never gonna let you down, never gonna run around and dessert you", + unl: function() { return false }, + goal: new Decimal(1/0), + reward: "???", + }, } function HCActive(x) { + if (x<71&&x!=42&&x!=52) if (HCActive(71)) return true if (x==11||x==41) if (HCActive(51)) return true if (x==31||x==32) if (HCActive(61)) return true return player.h.active==x; @@ -2530,6 +2573,7 @@ function getSubspaceGainMult() { function addToHBBase() { let toAdd = new Decimal(0) if (player.m.upgrades.includes(13)) toAdd = toAdd.plus(LAYER_UPGS.m[13].currently()) + if (player.m.upgrades.includes(33)) toAdd = toAdd.plus(LAYER_UPGS.m[33].currently()) return toAdd } @@ -2620,6 +2664,7 @@ function getSpellDesc(x) { function getSpellTime() { let time = 20 + if (player.m.best.gte(2.5e9)) time *= 10 return time } @@ -2703,6 +2748,7 @@ function gameLoop(diff) { player.h.points = player.h.points.plus(tmp.resetGain.h.times(diff)).max(0) player.q.points = player.q.points.plus(tmp.resetGain.q.times(diff)).max(0) } + if (player.m.best.gte(2.5e9)) player.m.hexes = player.m.hexes.plus(getHexGain().times(diff)).max(0) if (player.b.auto&&player.t.best.gte(5)) doReset("b") if (player.g.auto&&player.s.best.gte(5)) doReset("g") diff --git a/style.css b/style.css index 2ab8bed..c0daa79 100644 --- a/style.css +++ b/style.css @@ -301,8 +301,11 @@ h1, h2 { font-size: 20px; color: white; cursor: pointer; + width: 100%; + min-width: 100%; -webkit-text-stroke-width: 1px; -webkit-text-stroke-color: #02f2f2; + text-decoration: none; } #cl:hover { From ae961cfd4f43a51b7bb078421db67718857beddc Mon Sep 17 00:00:00 2001 From: Jacorb90 <39597610+Jacorb90@users.noreply.github.com> Date: Sun, 6 Sep 2020 22:17:10 -0400 Subject: [PATCH 3/3] Beta v1.2 Alpha 9 Did stuff (see changelog) --- index.html | 11 +++++++++-- js/game.js | 47 +++++++++++++++++++++++++++++++++++++---------- 2 files changed, 46 insertions(+), 12 deletions(-) diff --git a/index.html b/index.html index 1ffa714..5359b5a 100644 --- a/index.html +++ b/index.html @@ -15,6 +15,13 @@


+

Beta v1.2 Alpha 9

+

Beta v1.2 Alpha 8

diff --git a/js/game.js b/js/game.js index 9505077..472d39e 100644 --- a/js/game.js +++ b/js/game.js @@ -131,6 +131,7 @@ function getStartPlayer() { }, m: { unl: false, + auto: false, points: new Decimal(0), best: new Decimal(0), spellTimes: { @@ -292,7 +293,7 @@ const LAYER_EFFS = { hb: function() { return Decimal.pow(Decimal.add(1.6, addToHBBase()), player.hb.points.pow(getHyperBoosterExp()).times(getHyperBoosterPow())) }, ss: function() { return player.ss.points.pow(2.5).times(getSubspaceGainMult()) }, ba: function() { return { - power: player.ba.points.pow(0.2).pow(tmp.baExp ? tmp.baExp : 1), + power: player.ba.points.pow(0.2).pow(tmp.baExp ? tmp.baExp : 1).pow(player.ba.upgrades.includes(41)?2:1), pos: player.ba.points.pow(0.7).pow(tmp.baExp ? tmp.baExp : 1), neg: player.ba.points.pow(0.65).times(0.4).pow(tmp.baExp ? tmp.baExp : 1), }}, @@ -1038,9 +1039,11 @@ const LAYER_UPGS = { effDisp: function(x) { return format(x)+"x" }, }, 25: { - desc: "Placeholder", - cost: new Decimal(1/0), + desc: "Subspace is generated faster based on your Quirk Layers.", + cost: new Decimal(8), unl: function() { return player.ba.upgrades.includes(24) }, + currently: function() { return Decimal.pow(10, player.q.layers.sqrt()) }, + effDisp: function(x) { return format(x)+"x" }, }, }, m: { @@ -1116,13 +1119,13 @@ const LAYER_UPGS = { effDisp: function(x) { return "+"+format(x) }, }, 34: { - desc: "???", - cost: new Decimal(1/0), - unl: function() { return false }, + desc: "Add 1 free Quirk Layer.", + cost: new Decimal(4e10), + unl: function() { return player.m.upgrades.includes(32) }, }, }, ba: { - rows: 3, + rows: 4, cols: 4, 11: { desc: "All Balance Energy effects use better formulas.", @@ -1198,6 +1201,26 @@ const LAYER_UPGS = { cost: new Decimal(2e6), unl: function() { return player.ba.upgrades.includes(32) }, }, + 41: { + desc: "The first Balance Energy effect is squared.", + cost: new Decimal(2e10), + unl: function() { return player.ba.upgrades.includes(33)&&player.ba.upgrades.includes(34) }, + }, + 42: { + desc: "???", + cost: new Decimal(1/0), + unl: function() { return false }, + }, + 43: { + desc: "???", + cost: new Decimal(1/0), + unl: function() { return false }, + }, + 44: { + desc: "???", + cost: new Decimal(1/0), + unl: function() { return false }, + }, }, } @@ -1314,7 +1337,7 @@ function load() { if (get===null||get===undefined) player = getStartPlayer() else player = JSON.parse(atob(get)) player.tab = "tree" - offTime.remain = (Date.now()-player.time)/1000 + offTime.remain = (Date.now()-player.time)/10000 if (!player.offlineProd) offTime.remain = 0 player.time = Date.now() checkForVars(); @@ -1411,6 +1434,7 @@ function checkForVars() { if (player.ss === undefined) player.ss = start.ss if (player.ss.auto === undefined) player.ss.auto = false if (player.m === undefined) player.m = start.m + if (player.m.auto === undefined) player.m.auto = false if (player.ba === undefined) player.ba = start.ba if (player.offlineProd === undefined) player.offlineProd = true } @@ -2335,6 +2359,7 @@ function getQuirkLayerMult() { function getExtraQuirkLayers() { let layers = new Decimal(0); if (player.m.upgrades.includes(24)) layers = layers.plus(LAYER_UPGS.m[24].currently()) + if (player.m.upgrades.includes(34)) layers = layers.plus(1) return layers; } @@ -2436,7 +2461,7 @@ const H_CHALLS = { }, 42: { name: "Slowed to a Halt", - desc: "Time slows down over time, halting to a stop after 10 seconds.", + desc: "Time slows down over time, halting to a stop after 10 seconds. Hint: This also impacts auto Enhance Point generation, so make sure to manually press E!", unl: function() { return player.h.challs.includes(31)&&player.h.challs.includes(32) }, goal: new Decimal("1e16500"), reward: "Cube the Generator Power effect.", @@ -2452,7 +2477,7 @@ const H_CHALLS = { }, 52: { name: "Anti-Enhancers", - desc: "You lose Enhancers over time, which can make your Enhancer amount get below 0.", + desc: "You lose Enhancers over time, which can make your Enhancer amount get below 0. Hint: Maybe it's best to not have any Time Capsules or Space Energy?", unl: function() { return player.h.challs.includes(41)&&player.h.challs.includes(42)&&player.h.challs.includes(51) }, goal: new Decimal("1e440000"), reward: "Quirk Layers are faster based on your Hindrance Spirit & Quirks.", @@ -2566,6 +2591,7 @@ function getSubspaceGainMult() { if (player.ss.upgrades.includes(12)) mult = mult.times(LAYER_UPGS.ss[12].currently()) if (player.ss.upgrades.includes(22)) mult = mult.times(LAYER_UPGS.ss[22].currently()) if (player.ss.upgrades.includes(24)) mult = mult.times(LAYER_UPGS.ss[24].currently()) + if (player.ss.upgrades.includes(25)) mult = mult.times(LAYER_UPGS.ss[25].currently()) if (player.ba.upgrades.includes(12)) mult = mult.times(LAYER_UPGS.ba[12].currently()) return mult } @@ -2762,6 +2788,7 @@ function gameLoop(diff) { if (player.q.auto&&player.ba.best.gte(3)) maxQuirkLayers() if (player.hb.auto&&player.m.best.gte(4)) doReset("hb") if (player.ss.auto&&player.m.best.gte(4)) doReset("ss") + if (player.m.auto&&player.m.best.gte(1000)) for (let i=1;i<=3;i++) activateSpell(i) if (player.hasNaN&&!NaNalert) { alert("We have detected a corruption in your save. Please visit https://discord.gg/wwQfgPa for help.")