diff --git a/index.html b/index.html index 28550ff..166a639 100644 --- a/index.html +++ b/index.html @@ -15,6 +15,11 @@


+

v1.0 Beta 3

+

v1.0 Beta 2

diff --git a/js/game.js b/js/game.js index e72293a..c0a18af 100644 --- a/js/game.js +++ b/js/game.js @@ -346,7 +346,9 @@ const LAYER_UPGS = { unl: function() { return player.p.upgrades.includes(11) }, currently: function() { if (tmp.hcActive ? tmp.hcActive[32] : true) return new Decimal(1) - return player.p.points.plus(1).pow(player.g.upgrades.includes(24)?1.1:(player.g.upgrades.includes(14)?0.75:0.5)) + let ret = player.p.points.plus(1).pow(player.g.upgrades.includes(24)?1.1:(player.g.upgrades.includes(14)?0.75:0.5)) + if (ret.gte("1e20000000")) ret = ret.sqrt().times("1e10000000") + return ret; }, effDisp: function(x) { return format(x)+"x" }, }, @@ -393,7 +395,9 @@ const LAYER_UPGS = { unl: function() { return player.e.upgrades.includes(33) }, currently: function() { let ret = player.p.points.plus(1).log10().plus(1).pow(player.p.points.plus(1).log10().div(200).plus(1)).pow(player.p.upgrades.includes(32) ? LAYER_UPGS.p[32].currently() : 1) - if (ret.gte("1e1000")) ret = ret.log10().times("1e997") + let capStart = new Decimal("1e1000") + if (player.sp.upgrades.includes(32)) capStart = capStart.times(LAYER_UPGS.sp[32].currently()) + if (ret.gte(capStart)) ret = ret.log10().times(capStart.div(1e3)) if (player.sp.upgrades.includes(11)) ret = ret.pow(100) return ret; }, @@ -403,7 +407,10 @@ const LAYER_UPGS = { desc: "The upgrade to the left is stronger based on your Points.", cost: new Decimal("1e5140"), unl: function() { return player.e.upgrades.includes(33) }, - currently: function() { return player.points.plus(1).log10().plus(1).root(16) }, + currently: function() { + let ret = player.points.plus(1).log10().plus(1).root(16); + return ret; + }, effDisp: function(x) { return format(x.sub(1).times(100))+"% stronger" }, }, 33: { @@ -464,7 +471,11 @@ const LAYER_UPGS = { desc: "Add free Boosters based on your Generator Power.", cost: new Decimal(1261), unl: function() { return player.hb.upgrades.includes(14) }, - currently: function() { return player.g.power.plus(1).log10().sqrt().floor() }, + currently: function() { + let ret = player.g.power.plus(1).log10().sqrt().floor(); + if (ret.gte(1e3)) ret = ret.log10().times(1e3/3) + return ret; + }, effDisp: function(x) { return "+"+formatWhole(x) }, }, 33: { @@ -506,7 +517,11 @@ const LAYER_UPGS = { desc: "Prestige Upgrade 3 is stronger based on your Generators.", cost: new Decimal(15), unl: function() { return player.g.upgrades.includes(13) }, - currently: function() { return player.g.points.sqrt().plus(1).times((player.e.upgrades.includes(32)&&!(tmp.hcActive?tmp.hcActive[12]:true)) ? LAYER_UPGS.e[32].currently() : 1) }, + currently: function() { + let ret = player.g.points.sqrt().plus(1).times((player.e.upgrades.includes(32)&&!(tmp.hcActive?tmp.hcActive[12]:true)) ? LAYER_UPGS.e[32].currently() : 1) + if (ret.gte(400)) ret = ret.cbrt().times(Math.pow(400, 2/3)) + return ret; + }, effDisp: function(x) { return "^"+format(x) }, }, 21: { @@ -1354,7 +1369,7 @@ const LAYER_UPGS = { }, }, sp: { - rows: 2, + rows: 3, cols: 4, 11: { desc: "The Prestige Upgrade 3, 6, & 7 effects are raised to the power of 100.", @@ -1410,6 +1425,28 @@ const LAYER_UPGS = { currently: function() { return player.sp.points.plus(1).sqrt() }, effDisp: function(x) { return format(x)+"x" }, }, + 31: { + desc: "Super-Generators are 45% cheaper.", + cost: new Decimal(1000), + unl: function() { return player.sp.upgrades.includes(22) }, + }, + 32: { + desc: "Prestige Upgrade 7 softcaps later based on your Super-Prestige Points.", + cost: new Decimal(4000), + unl: function() { return player.sp.upgrades.includes(23)&&player.sp.upgrades.includes(31) }, + currently: function() { return player.sp.points.plus(1).log10().plus(1).pow(1e4) }, + effDisp: function(x) { return format(x.pow(player.sp.upgrades.includes(11)?100:1))+"x later" }, + }, + 33: { + desc: "???", + cost: new Decimal(1/0), + unl: function() { return false }, + }, + 34: { + desc: "???", + cost: new Decimal(1/0), + unl: function() { return false }, + }, }, } @@ -1838,6 +1875,9 @@ function getLayerGainMult(layer) { case "sb": if (player.ss.upgrades.includes(14)) mult = mult.div(1.0825) break; + case "sg": + if (player.sp.upgrades.includes(31)) mult = mult.div(1.45) + 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) @@ -2617,13 +2657,16 @@ function getQuirkLayerCostBase() { } function getQuirkLayerCost() { - let cost = Decimal.pow(tmp.qCB, Decimal.pow(tmp.qCB, player.q.layers)).sub(1) + let layers = player.q.layers + if (layers.gte(20)) layers = Decimal.pow(1.05, layers.sub(20)).times(20) + let cost = Decimal.pow(tmp.qCB, Decimal.pow(tmp.qCB, layers)).sub(1) return cost.max(1); } function getQuirkLayerTarg() { - let targ = player.q.points.plus(1).log(tmp.qCB).plus(1).log(tmp.qCB).plus(1).floor() - return targ + let targ = player.q.points.plus(1).log(tmp.qCB).plus(1).log(tmp.qCB) + if (targ.gte(20)) targ = targ.div(20).log(1.05).plus(20) + return targ.plus(1).floor() } function getQuirkLayerMult() { @@ -2968,8 +3011,13 @@ function getSpellPower(x) { if (player.m.upgrades.includes(11)) power = power.times(LAYER_UPGS.m[11].currently()) if (player.m.upgrades.includes(21) && (x==2||x==3)) power = power.times(LAYER_UPGS.m[21].currently()) if (player.m.upgrades.includes(22) && (x==2)) power = power.times(10) - if (player.m.upgrades.includes(41)) power = power.times(player.m.casted[x].max(1).log10().plus(1).log10().div(5).plus(1)) + if (player.m.upgrades.includes(41)) { + let casted = player.m.casted[x] + power = power.times(casted.max(1).log10().plus(1).log10().div(5).plus(1)) + } if (player.sp.upgrades.includes(23)) power = power.times(LAYER_UPGS.sp[23].currently()) + + if (power.gte(50)) power = power.log10().times(50/Math.log10(50)).min(power) return power.max(1); } @@ -3198,13 +3246,16 @@ document.onkeydown = function(e) { if (player.ss.unl) doReset("ss") break; case "1": - if (player.ba.unl) activateSpell(1) + if (player.m.unl) activateSpell(1) break; case "2": - if (player.ba.unl) activateSpell(2) + if (player.m.unl) activateSpell(2) break; case "3": - if (player.ba.unl) activateSpell(3) + if (player.m.unl) activateSpell(3) + break; + case "4": + if (player.m.unl&&player.sp.upgrades.includes(13)) activateSpell(4) break; case "P": if (player.sp.unl) doReset("sp")