Will output optimal graduation mark based on current students, phi, and tau values. Instructions on how to run are found in Introduction to Graduation.
Leaderboards for highest τ and publication multi of each theory, highest positive and negative ρ of each lemma, highest overall and minigame stars, and a monthly updated cross platform F(t) rankings.
Get confused with all the variables in T1-T8, MF, BaP, FP, and TC? Get tired in calculating the ratio of to other variables? Tired of checking the sim for purchasing variable? Here introduce a convenient tool to instantly check which variables to buy next! All u need is the levels of the variables at the current stage, and it will calculate automatically for u! Made by Hackzzzzzz.
Get lost which theory you should push next for T1-8 and the CTs? Use the Next Theory to Push Calculator to help you decide. Originally made by d4Nf6Bg5.
Centralized sheet with all currently finished and in-development Custom Theories. All future official Custom Theories will be on this sheet before they become official. Message @a_spiralist or @jooo_1265 on the Exponential Idle Discord for updating, fixing, and general sheet editing.
If you want to track your daily tau gains and contribute to daily tau rates graphs, request for access on this sheet. F(t) and Tau graphs available.
Will output optimal graduation mark based on current students, phi, and tau values. Instructions on how to run are found in Introduction to Graduation.
Leaderboards for highest τ and publication multi of each theory, highest positive and negative ρ of each lemma, highest overall and minigame stars, and a monthly updated cross platform F(t) rankings.
Get confused with all the variables in T1-T8, MF, BaP, FP, and TC? Get tired in calculating the ratio of to other variables? Tired of checking the sim for purchasing variable? Here introduce a convenient tool to instantly check which variables to buy next! All u need is the levels of the variables at the current stage, and it will calculate automatically for u! Made by Hackzzzzzz.
Get lost which theory you should push next for T1-8 and the CTs? Use the Next Theory to Push Calculator to help you decide. Originally made by d4Nf6Bg5.
Centralized sheet with all currently finished and in-development Custom Theories. All future official Custom Theories will be on this sheet before they become official. Message @a_spiralist or @jooo_1265 on the Exponential Idle Discord for updating, fixing, and general sheet editing.
If you want to track your daily tau gains and contribute to daily tau rates graphs, request for access on this sheet. F(t) and Tau graphs available.
Across your window, a man wearing a blue head scarf is waving at you. You may recognise him from your maths textbooks - his name is Leonardo Bonacci (maybe), also known as Fibonacci! Today, we are going to make a new upgrade based on his famous Fibonacci sequence. But first, we need publications for our theory.
We have two upgrades, with their individual personalities. While this alone might make for some interesting conversations within your player base, without some sort of reset mechanic - a staple of many idle games - you’ll be stuck tapping the same buttons forever. And in Exponential Idle, the reset mechanic available to theories is called Publications.
Let’s introduce publications to our theory, by defining several key functions:
const pubPower = 0.1;
var getPublicationMultiplier = (tau) => tau.pow(pubPower);
var getPublicationMultiplierFormula = (symbol) => `{${symbol}}^{${pubPower}}`;
var getTau = () => currency.value;
var getCurrencyFromTau = (tau) =>
[
tau.max(BigNumber.ONE),
currency.symbol
];
For this theory, the tau value shall simply be the maximum currency reached, with 1-to-1 conversion. Then, we shall define publication power as 0.1 (10%). This will be important later, when we try to balance the theory. For now, let’s simply understand that with 1-to-1 tau conversion, a publication power of 0.1 means that publications make up around 10% of rho’s growing power, logarithmically speaking, while the upgrades make up the rest.
To enable publications, let’s implement our publication upgrade. It is a permanent upgrade, so their identifier set is different from regular upgrades, which means we can start from 0 again:
The scarved man throws you a marble across the window. You catch it swiftly. He throws another. And then two at the same time, and then three, then five… You realise what he wants from you, and so you sprint back to your desk and start implementing his idea - the Fibonacci sequence.
Let’s define this upgrade as f (), and set its identifier to 2:
let f;
let init = () =>
{
...
{
f = theory.createUpgrade(2, currency, new ExponentialCost(200, 1.618034));
let getDesc = (level) => `f = ${getf(level).toString(0)}`;
f.getDescription = (amount) => Utils.getMath(getDesc(f.level));
f.getInfo = (amount) => Utils.getMathTo(getDesc(f.level),
getDesc(f.level + amount));
}
}
Let’s also define the value of for each level, which should be the n-th Fibonacci number. Remember, the Fibonacci numbers are a type of recurrence relation, in which a term is defined as the sum of previous terms:
Oops. It seems like we’ve caused all progress to halt. Why is this the case?
Our currency () growth equation is defined by . But it seems like since equals zero on the 0th level, 's growth always ends up being zero. There are many ways to fix this, but we shall go with the cheesiest one: adding one. Let’s modify our equation:
Even with the new Fibonacci upgrade, the theory still grows very slowly. Let’s give it and another friend, c2 (), with an identifier of 3, and grows according to the powers of 2:
let c2;
let init = () =>
{
...
{
c2 = theory.createUpgrade(3, currency, new ExponentialCost(500, 3));
let getDesc = (level) => `c_2 = ${getc2(level).toString(0)}`;
c2.getDescription = (amount) => Utils.getMath(`c_2 = 2^{${c2.level}}`);
c2.getInfo = (amount) => Utils.getMathTo(getDesc(c2.level),
getDesc(c2.level + amount));
}
}
let getc2 = (level) => BigNumber.TWO.pow(level);
c2’s value function uses BigNumber’s native pow method, which raises it to the power of the argument. BigNumber has more of these methods, such as abs, which will come in handy soon.
Hopefully, with , we should get a bit stronger now. Note that you may see the upgrade being listed below on the screen, which is quite annoying. The order of upgrades is determined by the order in which they were declared in the code (their IDs do not matter, so don’t try to change them). Let’s move the declaration block of to make it show below and above :
As you play the theory, you may notice that the game is starting to slow down. Spooky! What could be the cause? If you feel paranoid, let’s switch to another theory to run for now, or use these two commands from the SDK to pause and unpause the theory: