mirror of
https://github.com/thepaperpilot/The-Modding-Tree.git
synced 2025-01-31 23:51:37 +00:00
Beta v1.2 Alpha 9
Did stuff (see changelog)
This commit is contained in:
parent
8040846f3d
commit
ae961cfd4f
2 changed files with 46 additions and 12 deletions
11
index.html
11
index.html
|
@ -15,6 +15,13 @@
|
||||||
<div class="vl"></div>
|
<div class="vl"></div>
|
||||||
<div v-if="player.tab=='changelog'" class="col right">
|
<div v-if="player.tab=='changelog'" class="col right">
|
||||||
<button class="back" onclick="showTab('tree')">←</button><br><br>
|
<button class="back" onclick="showTab('tree')">←</button><br><br>
|
||||||
|
<h3>Beta v1.2 Alpha 9</h3>
|
||||||
|
<ul>
|
||||||
|
<li>Added hints for h8 & h10</li>
|
||||||
|
<li>Added a new Magic milestone</li>
|
||||||
|
<li>Reduced offline time to 10% of its original amount</li>
|
||||||
|
<li>Balanced up to 1e6,000,000 Points, 3e12 Magic, and 1e11 Balance Energy</li>
|
||||||
|
</ul><br>
|
||||||
<h3>Beta v1.2 Alpha 8</h3>
|
<h3>Beta v1.2 Alpha 8</h3>
|
||||||
<ul>
|
<ul>
|
||||||
<li>Added a new milestone</li>
|
<li>Added a new milestone</li>
|
||||||
|
@ -239,8 +246,7 @@
|
||||||
Time Played: {{ formatTime(player.timePlayed) }}<br><br><br>
|
Time Played: {{ formatTime(player.timePlayed) }}<br><br><br>
|
||||||
<div id="cl" onclick="showTab('credits')">Credits</div><br>
|
<div id="cl" onclick="showTab('credits')">Credits</div><br>
|
||||||
<div id="cl" onclick="showTab('changelog')">Changelog</div><br>
|
<div id="cl" onclick="showTab('changelog')">Changelog</div><br>
|
||||||
<div id="cl" onclick="window.open('https://discord.gg/wwQfgPa','mywindow')" target="_blank">My Discord</div><br>
|
<div id="cl" onclick="window.open('https://discord.gg/wwQfgPa','mywindow')" target="_blank">My Discord</div><br><br>
|
||||||
<div id="cl" onclick="window.open('https://plaza.dsolver.ca/m/Jacorb90','mywindow')" target="_blank">Plaza dSolver</div><br><br>
|
|
||||||
<h3>Hotkeys</h3><br><br>
|
<h3>Hotkeys</h3><br><br>
|
||||||
P: Prestige reset<br>
|
P: Prestige reset<br>
|
||||||
<span v-if="player.b.unl">B: Booster reset</span><br>
|
<span v-if="player.b.unl">B: Booster reset</span><br>
|
||||||
|
@ -444,6 +450,7 @@
|
||||||
<tr><td v-if="milestoneShown(player.m.best.gte(2))" v-bind:class="{ milestone: player.m.best.lt(2), milestoneDone: player.m.best.gte(2) }">2 Magic<br>Keep Hindrance completions on all resets</td></tr>
|
<tr><td v-if="milestoneShown(player.m.best.gte(2))" v-bind:class="{ milestone: player.m.best.lt(2), milestoneDone: player.m.best.gte(2) }">2 Magic<br>Keep Hindrance completions on all resets</td></tr>
|
||||||
<tr><td v-if="milestoneShown(player.m.best.gte(3))" v-bind:class="{ milestone: player.m.best.lt(3), milestoneDone: player.m.best.gte(3) }">3 Magic<br>Gain 100% of Hindrance Spirit & Quirk gain every second</td></tr>
|
<tr><td v-if="milestoneShown(player.m.best.gte(3))" v-bind:class="{ milestone: player.m.best.lt(3), milestoneDone: player.m.best.gte(3) }">3 Magic<br>Gain 100% of Hindrance Spirit & Quirk gain every second</td></tr>
|
||||||
<tr><td v-if="milestoneShown(player.m.best.gte(4), true)" v-bind:class="{ milestone: player.m.best.lt(4), milestoneDone: player.m.best.gte(4) }">4 Magic<br>Automatically purchase Hyper-Boosters & Subspace <button v-if="player.m.best.gte(4)" class="smallUpg can hb" onclick="toggleAuto('hb')">{{player.hb.auto?"ON":"OFF"}}</button> <button v-if="player.m.best.gte(4)" class="smallUpg can ss" onclick="toggleAuto('ss')">{{player.ss.auto?"ON":"OFF"}}</button></td></tr>
|
<tr><td v-if="milestoneShown(player.m.best.gte(4), true)" v-bind:class="{ milestone: player.m.best.lt(4), milestoneDone: player.m.best.gte(4) }">4 Magic<br>Automatically purchase Hyper-Boosters & Subspace <button v-if="player.m.best.gte(4)" class="smallUpg can hb" onclick="toggleAuto('hb')">{{player.hb.auto?"ON":"OFF"}}</button> <button v-if="player.m.best.gte(4)" class="smallUpg can ss" onclick="toggleAuto('ss')">{{player.ss.auto?"ON":"OFF"}}</button></td></tr>
|
||||||
|
<tr><td v-if="milestoneShown(player.m.best.gte(1000), true)" v-bind:class="{ milestone: player.m.best.lt(1000), milestoneDone: player.m.best.gte(1000) }">1,000 Magic<br>Automatically cast Spells <button v-if="player.m.best.gte(1000)" class="smallUpg can m" onclick="toggleAuto('m')">{{player.m.auto?"ON":"OFF"}}</button></td></tr>
|
||||||
<tr><td v-if="milestoneShown(player.m.best.gte(2.5e9))" v-bind:class="{ milestone: player.m.best.lt(2.5e9), milestoneDone: player.m.best.gte(2.5e9) }">2.5e9 Magic<br>Gain 100% of Hex gain every second, and Spells last 10x longer</td></tr>
|
<tr><td v-if="milestoneShown(player.m.best.gte(2.5e9))" v-bind:class="{ milestone: player.m.best.lt(2.5e9), milestoneDone: player.m.best.gte(2.5e9) }">2.5e9 Magic<br>Gain 100% of Hex gain every second, and Spells last 10x longer</td></tr>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
|
|
47
js/game.js
47
js/game.js
|
@ -131,6 +131,7 @@ function getStartPlayer() {
|
||||||
},
|
},
|
||||||
m: {
|
m: {
|
||||||
unl: false,
|
unl: false,
|
||||||
|
auto: false,
|
||||||
points: new Decimal(0),
|
points: new Decimal(0),
|
||||||
best: new Decimal(0),
|
best: new Decimal(0),
|
||||||
spellTimes: {
|
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())) },
|
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()) },
|
ss: function() { return player.ss.points.pow(2.5).times(getSubspaceGainMult()) },
|
||||||
ba: function() { return {
|
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),
|
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),
|
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" },
|
effDisp: function(x) { return format(x)+"x" },
|
||||||
},
|
},
|
||||||
25: {
|
25: {
|
||||||
desc: "Placeholder",
|
desc: "Subspace is generated faster based on your Quirk Layers.",
|
||||||
cost: new Decimal(1/0),
|
cost: new Decimal(8),
|
||||||
unl: function() { return player.ba.upgrades.includes(24) },
|
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: {
|
m: {
|
||||||
|
@ -1116,13 +1119,13 @@ const LAYER_UPGS = {
|
||||||
effDisp: function(x) { return "+"+format(x) },
|
effDisp: function(x) { return "+"+format(x) },
|
||||||
},
|
},
|
||||||
34: {
|
34: {
|
||||||
desc: "???",
|
desc: "Add 1 free Quirk Layer.",
|
||||||
cost: new Decimal(1/0),
|
cost: new Decimal(4e10),
|
||||||
unl: function() { return false },
|
unl: function() { return player.m.upgrades.includes(32) },
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
ba: {
|
ba: {
|
||||||
rows: 3,
|
rows: 4,
|
||||||
cols: 4,
|
cols: 4,
|
||||||
11: {
|
11: {
|
||||||
desc: "All Balance Energy effects use better formulas.",
|
desc: "All Balance Energy effects use better formulas.",
|
||||||
|
@ -1198,6 +1201,26 @@ const LAYER_UPGS = {
|
||||||
cost: new Decimal(2e6),
|
cost: new Decimal(2e6),
|
||||||
unl: function() { return player.ba.upgrades.includes(32) },
|
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()
|
if (get===null||get===undefined) player = getStartPlayer()
|
||||||
else player = JSON.parse(atob(get))
|
else player = JSON.parse(atob(get))
|
||||||
player.tab = "tree"
|
player.tab = "tree"
|
||||||
offTime.remain = (Date.now()-player.time)/1000
|
offTime.remain = (Date.now()-player.time)/10000
|
||||||
if (!player.offlineProd) offTime.remain = 0
|
if (!player.offlineProd) offTime.remain = 0
|
||||||
player.time = Date.now()
|
player.time = Date.now()
|
||||||
checkForVars();
|
checkForVars();
|
||||||
|
@ -1411,6 +1434,7 @@ function checkForVars() {
|
||||||
if (player.ss === undefined) player.ss = start.ss
|
if (player.ss === undefined) player.ss = start.ss
|
||||||
if (player.ss.auto === undefined) player.ss.auto = false
|
if (player.ss.auto === undefined) player.ss.auto = false
|
||||||
if (player.m === undefined) player.m = start.m
|
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.ba === undefined) player.ba = start.ba
|
||||||
if (player.offlineProd === undefined) player.offlineProd = true
|
if (player.offlineProd === undefined) player.offlineProd = true
|
||||||
}
|
}
|
||||||
|
@ -2335,6 +2359,7 @@ function getQuirkLayerMult() {
|
||||||
function getExtraQuirkLayers() {
|
function getExtraQuirkLayers() {
|
||||||
let layers = new Decimal(0);
|
let layers = new Decimal(0);
|
||||||
if (player.m.upgrades.includes(24)) layers = layers.plus(LAYER_UPGS.m[24].currently())
|
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;
|
return layers;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2436,7 +2461,7 @@ const H_CHALLS = {
|
||||||
},
|
},
|
||||||
42: {
|
42: {
|
||||||
name: "Slowed to a Halt",
|
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) },
|
unl: function() { return player.h.challs.includes(31)&&player.h.challs.includes(32) },
|
||||||
goal: new Decimal("1e16500"),
|
goal: new Decimal("1e16500"),
|
||||||
reward: "Cube the Generator Power effect.",
|
reward: "Cube the Generator Power effect.",
|
||||||
|
@ -2452,7 +2477,7 @@ const H_CHALLS = {
|
||||||
},
|
},
|
||||||
52: {
|
52: {
|
||||||
name: "Anti-Enhancers",
|
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) },
|
unl: function() { return player.h.challs.includes(41)&&player.h.challs.includes(42)&&player.h.challs.includes(51) },
|
||||||
goal: new Decimal("1e440000"),
|
goal: new Decimal("1e440000"),
|
||||||
reward: "Quirk Layers are faster based on your Hindrance Spirit & Quirks.",
|
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(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(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(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())
|
if (player.ba.upgrades.includes(12)) mult = mult.times(LAYER_UPGS.ba[12].currently())
|
||||||
return mult
|
return mult
|
||||||
}
|
}
|
||||||
|
@ -2762,6 +2788,7 @@ function gameLoop(diff) {
|
||||||
if (player.q.auto&&player.ba.best.gte(3)) maxQuirkLayers()
|
if (player.q.auto&&player.ba.best.gte(3)) maxQuirkLayers()
|
||||||
if (player.hb.auto&&player.m.best.gte(4)) doReset("hb")
|
if (player.hb.auto&&player.m.best.gte(4)) doReset("hb")
|
||||||
if (player.ss.auto&&player.m.best.gte(4)) doReset("ss")
|
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) {
|
if (player.hasNaN&&!NaNalert) {
|
||||||
alert("We have detected a corruption in your save. Please visit https://discord.gg/wwQfgPa for help.")
|
alert("We have detected a corruption in your save. Please visit https://discord.gg/wwQfgPa for help.")
|
||||||
|
|
Loading…
Add table
Reference in a new issue