Quest for Progress
The Math and Design of Idle Games
Anthony Pecorella
Kongregate.com
Who Am I?
At Kongregate for 7 years,
directing our browser-based
F2P virtual goods business
Producer for
AdVenture Capitalist mobile
Also an indie designer,
cofounder of Level Up Labs
Kongregate.com
Kongregate Publishing
Opening Disclaimers
This is a design and math talk, not a data and
monetization talk
There is some calculus, but you don’t need to
remember how it works
If you don’t like graphs, numbers, and formulas
you’re not going to like this talk
Interactive Charts and Sheets
All of the graphs generated in this talk come from
sheets that are publicly available as both Google
Sheets and .xls files
You can access these sheets here:
http://kon.gg/idle-math-spreadsheets
Genre Terminology
Incremental Games
A game in which the primary goal is to continually increase
a number
Often grows in complexity over time
When the scope of a game change substantially it is can referred
to as an “unfolding game”
Examples: A Dark Room, Candy Box, Frog Fractions
Genre Terminology
Idle Games
Subset of Incrementals
Progress or income is made without player interaction
Player choices impact growth rates
It is expected that players leave the game alone regularly
Typically do not have an “end”
Genre Terminology
Clicker Games
Emphasis on clicking or tapping to progress
Ex. Feed Your Monster, Football Clicker
Can, but does not necessarily, have idle elements
Clicker Heroes is an “idle clicker
Physicality of the game can be fun but also tiring
Essential Reading
Cookie Clicker-likes
AdVenture Capitalist
Realm Grinder
Pocket Politics
Essential Reading
Clicker Heroes-likes
Tap Titans
Crusaders of the
Lost Idols
Essential Reading
Assorted Others
Number (Tyler Glaiel)
Swarm Simulator
Sandcastle Builder
The Dwarf Fortress of
idle games
Terminology
Primary Currency
The central number that is being incremented and typically
used to purchase most moment-to-moment improvements
Terminology
Generator
The buildings, investments, characters, etc. that a player
amasses
They automatically generate Primary Currency (or
Exchange Currency) over time
Costs grow magnitude faster than value
Terminology
Primary Exchange Currency
A special case worth mentioning, in some cases generators
produce an exchange currency
The most common example is damage / DPS in RPG idlers
Damage is not the primary currency but is tied directly to it
Gives designer a little more control over primary currency
accumulation since you can gate or buff conversion at certain
points in the progression
Terminology
Multiplier
Typically a fixed multiple on a generator, or set of
generators, in terms of production value or speed
These help offset cost growth speed
Provide bumps and local victories
Terminology
Multiplier
More complex ones might have dependencies on:
Its target (e.g. this generator count)
Other generators (e.g. total generator count)
Meta statistics (e.g. total time played, count of lifetime skills used,
lifetime currency earned, seconds since last reset, etc.)
External data (e.g. time of day, holidays/events, concurrent player
count, etc.)
Incentivized ads are often implemented as a multiplier
Terminology
Active Skill
Powerful abilities players can initiate
Typically have a long cooldown (5 minutes a few hours)
Increases player agency, letting them burst income or get
over a hump
In more complex situations, players can strategize around
best selection, order, and timing of skill usage
Terminology
Prestige
Player resets game with a bonus to
production
Similar to the “new game+” concept
Meta Prestige
Prestiges can be nested
Terminology
Prestige Currency
Provides player with Prestige Currency that controls the
production bonus
This currency typically grows at a slower order of magnitude than
Primary Currency – we’ll look into examples later
In some cases this currency can also be spent for boosts (at
the loss of the relative Prestige Currency boost)
Idle Player Motivation Profile
Quantic Foundry surveyed
players of 3 idle games
70% identified as “core
gamers”, 20% as “hardcore”
Top motivators were
Completion and Power
From Nick Yee’s gamer motivation profiling
Idle Player Motivation Profile
This can help guide your design process
Players of this genre want to collection and
complete, and they want to grow in power
Power growth is central to the genre but you want to make
sure players “feel” that growth
Can you incorporate collection or completionism into your
idle game design?
Super quick review of exp growth curves
Costs grow exponentially
cost
next
= cost
base
x (rate
growth
)
owned
Production grows linearly
prod
total
= prod
base
x n
owned
Note: x
k
is not exponential growth and will always be
outpaced by k
x
(with k > 1) eventually.
Exponential Growth Rates in AdCap
For AdCap, here are the values for a few generators:
Lemonade Stand growth with doubling at 25, 50 owned
Exponential Growth Rates in AdCap
More Lemonade Stand graphs, with 2x at every 100
and each prestige giving a 5x boost
Optimal Decisions
Due to how costs and value grow, players will
regularly be deciding what to buy next
We can model optimal choice to see if we
While players likely won’t optimize perfectly, overall
patterns will be similar for savvy players
Sometimes tiny generators are optimal but negligible in
impact players will most-likely ignore these
Optimal Purchase Decisions
Do you want optimal purchasing to be an interesting
choice for players?
If so and you see optimal patterns always favoring the
highest tier generator, you may have a balance problem
If not then you likely have other game elements that are
interesting and don’t need to balance this carefully
Optimal Purchase Decisions
Optimal Purchase Decisions
Total Cost of Bulk Purchases
Bulk-buying of generators is often a necessary
function, but what is the cost of such a purchase?
To buy n generators:
With base price b
With exponent r
Owning k already
Total Cost of Bulk Purchases
Whats the max number of generators you can buy?
With base price b
With exponent r
Owning k already
Having c currency
Non-Cookie Clicker Growth
Cookie Clicker set standard for growth patterns of
generators
Other options exist though and can be explored
Non-Cookie Clicker Growth
What if generators produced generators?
Generator 1 produces Primary Currency
Generator 2 produces Generator 1’s
Generator 3 produces Generator 2’s
etc.
These are actually
Derivatives
DERIVATIVES!
Each parent generator is the
rate of change of the child
Generator 1 = f(x)
Generator 2 = f’(x)
Generator 3 = f’’(x)
etc.
Derivative Clicker
Educational!
People don’t even realize theyre working with
derivatives!
Great way to conceptualize relationship of higher-
order derivatives
Physics: Location, Speed, Acceleration, Jerk, …?
Here: Each is just the rate of change of the one above it
Derivative Growth In Action
But what does this actually look like?
Derivative Growth In Action
But what does this actually look like?
Derivative Growth In Action
But what does this actually look like?
Approaching Exponential Growth
While different in formulation, the growth rate turns
out to be similar
Lets assume each parent produces 1 child, and we have 4
tiers
Tier 4 would be a constant f(x) = 1
Tier 3 is ∫(1) = x
Tier 2 is ∫(x) = x
2
/ 2
Tier 1 is ∫(x
2
/ 2) = x
3
/ 6
Approaching Exponential Growth
Anyone remember Taylor series?
The Taylor series expansion of e
x
is
As we get more tiers, we approach actual exponential
growth!
Intermission: On Big Numbers
Think of the biggest number you know of
googol? = 10
100
googolplex? = 10
googol
(Special thanks to Eclipse1agg on Reddit)
Intermission: On Big Numbers
Operator Progression
a++ = a + 1 (unary increment)
a + b = a++ (b times)
a * b = a + a + ... + a (b times)
a ^ b = a * a * ... * a (b times)
a ↑↑ b = a ^ a ^ … ^ a (b times)
a ↑↑↑ b = a ↑↑ a ↑↑ ↑↑ a (b times)
Intermission: On Big Numbers
Example Values
3++ = 4
3 + 4 = 7
3 * 4 = 12
3 ^ 4 = 81
3 ↑↑ 4 = 7,625,597,484,987
Note: 3 ↑↑ 5 is > googolplex
3 ↑↑↑ 4 = ?!?!?!
Intermission: On Big Numbers
Sample values for ↑↑
2 ↑↑↑ 2 = 2 ↑↑ 2 = 4 (always!!)
2 ↑↑↑ 3 = 256
3 ↑↑↑ 2 = 7,625,597,484,987
4 ↑↑↑ 2 = a number with over 10
153
digits
2 ↑↑↑ 4 = far too big to count digits in scientific notation
3 ↑↑↑ 3 = FML
Intermission: On Big Numbers
Graham’s number!
G = g
64
g
1
= 3 ↑↑↑↑ 3
g
2
= 3 …{g
1
times} 3
We do know it ends in ...262464195387.
Used as an upper bound in a mathematical proof
Keeping All Generators Relevant
A common problem is keeping smaller generators
relevant to the player
Production is generally dwarfed, especially with
exponential growth of cost
This is an even bigger problem for derivative-style growth
Keeping All Generators Relevant
Do you care if lower generators are relevant for your
players?
It adds a layer of complexity to both game balance and
player understanding and may not be necessary depending
on your target audience, play style goals, and other
elements
If however you do care
Keeping All Generators Relevant
Possible Solutions
Aggressive multipliers to force relevance
Base bonuses on ownership of these generators
Even if direct generation is low, impact of purchasing is high
Example: Newspapers in AdVenture Capitalist multiply other
investments
Note: track purchased and earned generators separately in
derivative growth systems (Derivative Clicker example)
Keeping All Generators Relevant
Possible Solutions
Tie prestige currency to ownership
Clicker Heroes gives one prestige currency for every 2000
generators owned
Use ownership multipliers to compound on cheaper
generators
Clicker Heroes gives a x4 bonus for every 25 of a generator
Prestige Cycles
When will players prestige?
Common rule of thumb is to reset when you would gain
somewhere in the range of +50% to +200% prestige
currency
What formula will you use for prestige currency?
Take a log or a fractional exponent (like square root) to
scale back growth rates
Ensure that players reach a valuable prestige point
regularly
Prestige Cycles
What does the next cycle look like for players?
Will their progress through the early part be quick? This is
an important feeling of growth of power.
Will they be able to get noticeably farther than last time?
Do you want the cycles to get faster, slower, or vary?
Faster: players will shift prestige point to be a lot higher
Slower: could get tiresome, must have a meta prestige too
Varied: prestige provides surprises, harder to design
Prestige Cycles
Simple model of a
single generator
Can estimate player
behavior based on
value of generator
Multipliers based on
number owned allow
for variable times
between prestiges
Prestige Cycles
Zooming out we can
see a lot of variation in
time to prestige
Other Growth Patterns
Combinatorics
Pizza store game, income based on how many different types of
pizza you can make
n
C
r
= n! / (n-r)!r!
Upgrade to use more ingredients per pizza (r) and have larger
variety of ingredients to use (n)
Node connections
City-builder with a prestige to found a new city, trade routes
between all cities [(n)(n-1)/2]
Notable New Genre Additions
Egg Inc.
Slick, minimalist visual design
Egg theme is cute and humorous
Dual limiters (egg rate and sale rate)
provide for some interesting decisions
over time
Has a 2 hour limit on offline earning I
think this was a mistake, I churned out
myself largely because of this
Notable New Genre Additions
Nonstop Knight
Clicker Heroes-like-like
Idle game that looks and feels like a
dungeon crawler
Armor and hitpoints of hero are
important
Skills have short cooldowns, playing
more like Diablo skills
Clever speed-up system to get through
early, trivial content when prestiging
Notable New Genre Additions
War Tortoise
Visually very strong
with really cool
visualization of
combat and upgrades
Player interaction is
powerful and
thankfully requires no
rapid tapping
Notable New Genre Additions
AbyssRium
Very pretty, relaxing design
Milestone multipliers are tied
to buying fish, creates a great
collection system built into
the mechanics
Thank You!
Check out developers.kongregate.com
Browser games: apps@kongregate.com
Mobile games: bd@kongregate.com
Me: anthony@kongregate.com
Slides will be available at
developers.kongregate.com/blog