some new studies and make the tree look different

This commit is contained in:
IvarK 2018-01-17 00:32:43 +02:00
parent 6006606f57
commit 5ff2ebe612
2 changed files with 39 additions and 14 deletions

View File

@ -118,10 +118,16 @@
<td><button class="timestudy" id="21" onclick="buyTimeStudy(21, 3)">Replicanti multiplier formula is better (log2(x)^2 -> x^0.032)<span>Cost: 3 Time Theorems</button></td>
<td><button class="timestudy" id="22" onclick="buyTimeStudy(22, 2)">Replicanti interval limit 50ms -> 1ms<span>Cost: 2 Time Theorems</button></td>
</tr>
</table>
<table class="table" id="studytable">
<tr>
<td><button class="timestudy" id="33" onclick="buyTimeStudy(33, 2)">You keep half of your replicanti galaxies on infinity<span>Cost: 2 Time Theorems</button></td>
<td><button class="timestudy" id="31" onclick="buyTimeStudy(31, 3)">Powers up existing upgrades based on infinitied stat (to the power of 4)<span>Cost: 3 Time Theorems</button></td>
<td><button class="timestudy" id="32" onclick="buyTimeStudy(32, 2)">You gain x1 more infinitied stat (based on soft resets)<span>Cost: 2 Time Theorems</button></td>
<td style="opacity: 0;"><button class="timestudylocked"></button></td>
</tr>
</table>
<table class="table" id="studytable">
<tr>
<td><button class="timestudy" id="41" onclick="buyTimeStudy(41, 4)">Each galaxy gives a 1.2x multiplier on IP gained. <span>Cost: 4 Time Theorems</button></td>
<td><button class="timestudy" id="42" onclick="buyTimeStudy(42, 6)">Galaxy requirement goes up 52 8ths instead of 60.<span>Cost: 6 Time Theorems</button></td>
@ -137,7 +143,9 @@
</table>
<table class="table" id="studytable">
<tr>
<td style="opacity: 0;"><button class="timestudylocked"></button></td>
<td><button class="timestudy" id="61" onclick="buyTimeStudy(61, 3)">You gain 10x more EP<span>Cost: 3 Time Theorems</button></td>
<td><button class="timestudy" id="62" onclick="buyTimeStudy(62, 3)">You gain replicanti 3 times faster<span>Cost: 3 Time Theorems</button></td>
</tr>
</table>
<br>
@ -167,8 +175,10 @@
<table class="table" id="studytable">
<tr>
<td><button class="eternitychallengestudy" id="ec7unl">Eternity Challenge 7<span>Requirement: Some amount of antimatter in IC4<span>Cost: 140 Time Theorems</button></td>
<td style="opacity: 0;"><button class="timestudylocked"></button></td>
<td><button class="timestudy" id="111" onclick="buyTimeStudy(111, 12)">Make the IP formula better<span>Cost: 12 Time Theorems</button></td>
<td style="opacity: 0;"><button class="timestudylocked"></button></td>
<td style="opacity: 0;"><button class="timestudylocked"></button></td>
</tr>
</table>
<br>
@ -198,8 +208,10 @@
<br>
<table class="table" id="studytable">
<tr>
<td style="opacity: 0;"><button class="timestudylocked"></button></td>
<td style="opacity: 0;"><button class="timestudylocked"></button></td>
<td><button class="timestudy" id="151" onclick="buyTimeStudy(151, 8)">1e4x multiplier on all Time Dimensions<span>Cost: 8 Time Theorems</button></td>
<td style="opacity: 0;"><button class="timestudylocked"></button></td>
<td><button class="eternitychallengestudy" id="ec4unl">Eternity Challenge 4<span>Requirement: 100,000,000 infinities<span>Cost: 85 Time Theorems</button></td>
</tr>
</table>
@ -1595,7 +1607,7 @@
<br>
<br>
<div class="outer">
<button id="eterc6" class="challengesbtn" onclick="startEternityChallenge('eterc6', new Decimal('1e3000'), new Decimal('1e300'))">Start</button>
<button id="eterc6" class="challengesbtn" onclick="startEternityChallenge('eterc6', new Decimal('1e600'), new Decimal('1e100'))">Start</button>
<br>
<span id="eterc6completed">Completed 0 Times.</span><br>
<span id="eterc6goal" >Goal: 1e1500</span><br>

View File

@ -507,12 +507,14 @@ function drawStudyTree() {
drawTreeBranch("11", "21");
drawTreeBranch("11", "22");
drawTreeBranch("21", "31");
drawTreeBranch("21", "33");
drawTreeBranch("22", "32");
drawTreeBranch("31", "41");
drawTreeBranch("32", "42");
drawTreeBranch("41", "51");
drawTreeBranch("42", "51");
drawTreeBranch("51", "61");
drawTreeBranch("ec5unl", "62")
drawTreeBranch("61", "71");
drawTreeBranch("61", "72");
drawTreeBranch("61", "73");
@ -2193,7 +2195,12 @@ function hasRow(row) {
function canBuyStudy(name) {
var row = Math.floor(name/10)
var col = name%10
if (name == 33) {
if (player.timestudy.studies.includes(21)) return true; else return false
}
if (name == 62) {
if (player.eternityChalls.eterc5 !== undefined && player.timestudy.studies.includes(42)) return true; else return false
}
switch(row) {
case 1: return true
@ -2219,15 +2226,18 @@ function canBuyStudy(name) {
if (player.timestudy.studies.includes((row-1)*10 + col)) return true; else return false
break;
case 7:
case 12:
if (hasRow(row-1) && !hasRow(row)) return true; else return false
break;
case 7:
if (player.timestudy.studies.includes(61) && !hasRow(row)) return true; else return false
break;
}
}
var all = [11, 21, 22, 31, 32, 41, 42, 51, 61, 71, 72, 73, 81, 82 ,83, 91, 92, 93, 101, 102, 103, 111, 121, 122, 123, 131, 132, 133, 141, 142, 143, 151, 161, 162, 171]
var studyCosts = [1, 3, 2, 3, 2, 4, 6, 3, 3, 4, 6, 5, 4, 6, 5, 4, 5, 7, 4, 6, 6, 12, 9, 9, 9, 5, 5, 5, 4, 4, 4, 8, 7, 7, 15]
var all = [11, 21, 22, 33, 31, 32, 41, 42, 51, 61, 62, 71, 72, 73, 81, 82 ,83, 91, 92, 93, 101, 102, 103, 111, 121, 122, 123, 131, 132, 133, 141, 142, 143, 151, 161, 162, 171]
var studyCosts = [1, 3, 2, 2, 3, 2, 4, 6, 3, 3, 3, 4, 6, 5, 4, 6, 5, 4, 5, 7, 4, 6, 6, 12, 9, 9, 9, 5, 5, 5, 4, 4, 4, 8, 7, 7, 15]
function updateTimeStudyButtons() {
for (var i=0; i<all.length; i++) {
if (!player.timestudy.studies.includes(all[i])) {
@ -3807,7 +3817,7 @@ function upgradeReplicantiInterval() {
function upgradeReplicantiGalaxy() {
if (player.infinityPoints.gte(player.replicanti.galCost) && player.eterc8repl !== 0) {
player.infinityPoints = player.infinityPoints.minus(player.replicanti.galCost)
if (player.currentEternityChall == "eterc6") player.replicanti.galCost = player.replicanti.galCost.times(Decimal.pow(1e2, player.replicanti.gal)).times(1e5)
if (player.currentEternityChall == "eterc6") player.replicanti.galCost = player.replicanti.galCost.times(Decimal.pow(1e2, player.replicanti.gal)).times(1e2)
else player.replicanti.galCost = player.replicanti.galCost.times(Decimal.pow(1e5, player.replicanti.gal)).times(1e25)
player.replicanti.gal += 1
if (player.currentEternityChall == "eterc8") player.eterc8repl-=1
@ -5264,7 +5274,8 @@ document.getElementById("bigcrunch").onclick = function () {
}
if (player.replicanti.unl && !player.achievements.includes("r95")) player.replicanti.amount = 1
player.replicanti.galaxies = 0
player.replicanti.galaxies = (player.timestudy.studies.includes(33)) ? Math.floor(player.replicanti.galaxies/2) :0
player.firstPow = getDimensionBoostPower().pow(player.resets + 1)
player.secondPow = getDimensionBoostPower().pow(player.resets)
@ -6575,7 +6586,7 @@ setInterval(function() {
document.getElementById("eterc5goal").innerHTML = "Goal: "+shortenCosts(new Decimal("1e675").times(new Decimal("1e125").pow(ECTimesCompleted("eterc5"))).max(new Decimal("1e675"))) + " IP"
document.getElementById("eterc5completed").innerHTML = "Completed "+ECTimesCompleted("eterc5")+" times."
document.getElementById("eterc6goal").innerHTML = "Goal: "+shortenCosts(new Decimal("1e3000").times(new Decimal("1e300").pow(ECTimesCompleted("eterc6"))).max(new Decimal("1e3000"))) + " IP"
document.getElementById("eterc6goal").innerHTML = "Goal: "+shortenCosts(new Decimal("1e600").times(new Decimal("1e100").pow(ECTimesCompleted("eterc6"))).max(new Decimal("1e600"))) + " IP"
document.getElementById("eterc6completed").innerHTML = "Completed "+ECTimesCompleted("eterc6")+" times."
document.getElementById("eterc7goal").innerHTML = "Goal: "+shortenCosts(new Decimal("1e1100").times(new Decimal("1e110").pow(ECTimesCompleted("eterc7"))).max(new Decimal("1e1500"))) + " IP"
@ -6789,11 +6800,13 @@ function gameLoop() {
updateChallenges()
}
}
var est = player.replicanti.chance * 1000 / player.replicanti.interval
let interval = player.replicanti.interval
if (player.timestudy.studies.includes(62)) interval = interval/3
var est = player.replicanti.chance * 1000 / interval
var current = Math.log(player.replicanti.amount)
if (player.timestudy.studies.includes(133)) est /= 10
if (diff > 5 || player.replicanti.interval < 50) {
if (diff > 5 || interval < 50) {
var gained = Math.pow(Math.E, current+diff*est/10)
player.replicanti.amount = Math.min(Number.MAX_VALUE, gained)
} else {
@ -6808,12 +6821,12 @@ function gameLoop() {
for (var i=0; i<100; i++) {
if (player.replicanti.chance > Math.random()) {
if (player.replicanti.interval > 50) player.replicanti.amount = Math.min(Number.MAX_VALUE, temp+player.replicanti.amount)
else player.replicanti.amount = Math.min(Number.MAX_VALUE, (Math.pow(Math.E, 50/player.replicanti.interval)-1)*temp+player.replicanti.amount)
if (interval > 50) player.replicanti.amount = Math.min(Number.MAX_VALUE, temp+player.replicanti.amount)
else player.replicanti.amount = Math.min(Number.MAX_VALUE, (Math.pow(Math.E, 50/interval)-1)*temp+player.replicanti.amount)
}
}
}
replicantiTicks -= player.replicanti.interval
replicantiTicks -= interval
}
}
if (player.replicanti.amount !== 0) replicantiTicks += 50