Skip to content
← back to writing

Media Psychology / Gamedev

The Honest Idle Game: an idle game that gives away its own tricks

An idle game that applies 31 documented retention mechanics and then discloses them — with a citation, a measurable effect, and a switch to turn it off.

One HTML file, no server 31 mechanics, 30 countermeasures ~20 min read

My entry into the genre was Cookie Clicker, and with it the observation this project rests on: idle games hold attention with methods you can name. A daily bonus. A countdown that costs nothing but your own return. A reward at unpredictable intervals.

What is remarkable is less that these methods work than that they keep working after you have recognised them. Knowing a mechanism does not switch it off. From that came the question: can you build a game that is good enough to be played, and that continuously discloses what it is using to achieve exactly that?

The result is The Honest Idle Game — one HTML file, 31 mechanics, 30 countermeasures you can buy, no server. What follows is the construction, the effects used, and the audit of the cited literature.

The idea: the package insert

The rule of the project is simple and fits in one sentence: every mechanic acts first, then it is disclosed. Not the other way round. A warning before the game would be inconsequential — you read it, nod, and play anyway. A notice after the mechanism has already worked on you is something else: you can check it against your own experience.

That is why the text type in the game is called a package insert. It looks different from everything else: paper instead of machine, serif type, right angles, no colour but ink. Three to five sentences, a header with the running number in the catalogue (“Leaflet 17 / 31”), a source line below the rule, and where possible the player's own statistic, set in bold.

A package-insert modal in the game: a light paper sheet headed “The Almost. is built in”, with explanatory text, a source line and the player's personal statistic.
The leaflet for the near-miss. The bold line is not a claim from the literature but measured from your own clicking: the game counts the clicks in the ten seconds after each outcome, separately for “Almost.” and “Nothing.”

That measurement is the methodological core of the project. The text does not claim that near-misses raise the action rate — it demonstrates it on the reader's behaviour: 3.4 clicks after an “Almost”, 1.6 after a clear “Nothing”. You can argue with the literature. Arguing with your own click rate is harder.

How it plays

Underneath the disclosure layer sits a complete idle game. That is a condition, not decoration: a game nobody plays demonstrates nothing. The resource is impulses, there is a click button and six generators with genre-typical costs (15 / 100 / 1,100 / 12,000 / 130,000 / 1.4 M) and a growth factor of 1.15 — deliberately the Cookie Clicker curve, so the mechanics sit on familiar ground.

The game after a few minutes: impulse counter, gold click button, three purchased generators and a running calibration bar.
The first minutes. The bar at the top is the first mechanic coming at me: a “calibration” running for four minutes that does nothing except sit there visibly.

Two balance parameters deviate from the template and are marked as decisions in the source: one click equals one second of production, and every ten copies of a generator double its output. A numerical simulation of the first ten minutes shows that the 1.15 cost spiral is not catchable without both; with them, a normally active player reaches the third generator tier after about nine minutes.

The 31 effects, briefly

What follows is the actual catalogue: what the mechanism does, and how it binds. I grouped them by mode of action rather than by the order they were built in.

Perception

Number rush Weber–Fechner

From 1,000 on, the game shows three digits and a letter: 1.20 K, later 1.20 B. The jump looks identical although it is a million times larger.

Binds The feeling of progress stays constant while the real increase runs away exponentially. Every session feels equally productive — including the three-hundredth.

Reward and chance

Variable reward Ferster & Skinner 1957

Every 45 to 120 seconds a gift button appears for eight seconds. In 30 % of cases there is a bonus; in 70 % it says: Nothing.

Binds Reward yes, timing unpredictable. If any attempt could be the right one, there is no good moment to stop — the uncertainty keeps the action going, not the reward.

Ratio schedule Ferster & Skinner 1957

A second, invisible counter pays out every eight to twenty clicks — not every few seconds.

Binds On a time schedule, acting faster gains nothing. On a ratio schedule it brings the reward closer. That is why it produces the highest and most extinction-resistant rate of all reinforcement schedules.

Near-miss with a faked rate Chase & Clark 2010 · Harrigan & Dixon 2009

55 % of all failures are displayed as “● ● ○ Almost.” Honest randomness would produce 6 % — two of 32 reel positions sit next to the hit.

Binds A loss that looks like progress. Slot machines have been steering the position next to the jackpot artificially often via virtual reels since the 1980s.

A loss dressed as a win Dixon et al. 2010

The “compressor” pays back 0.3 to 1.6 times the stake and celebrates every payout with confetti — including the 54 % that are a net loss.

Binds The mental balance ends up better than the real one. Across all 259 million outcomes of a multi-line machine, skin conductance responded to disguised losses as strongly as to real wins.

Gacha with a pity counter Zendle & Cairns 2018

One percent base chance for a rare badge; from draw 75 it rises, at draw 90 the hit is guaranteed. Duplicates refund sparks.

Binds The guaranteed hit turns chance into a debt you are paying off. Past a certain counter value, stopping feels like giving something away.

Quiet difficulty adjustment Csikszentmihalyi 1975 · Hunicke 2005

The gift's hit rate follows your own history: up after bad luck, down after a lucky streak, clamped to 20–42 %.

Binds Neither frustration nor boredom — you stay in the flow channel. This is the only mechanic in the game you cannot notice without disclosure, which is why it pays more Clarity than the others.

Time and rhythm

The oven glance Ovsiankina 1928

The first generator purchase starts a visible four-minute bar. The bonus equals 60 seconds of production — you would have got it by waiting, too.

Binds A visibly interrupted action creates the urge to resume it. The point is not the 60 seconds; the point is that you leave the tab open.

Energy Zagal, Björk & Lewis 2013

Five units, one every eight minutes. It does not limit production, only how often you may intervene yourself.

Binds Playing by appointment: a slowly regrowing resource turns a game into a scheduled obligation. Full energy also feels like something you are wasting.

Login calendar Nunes & Drèze 2006 · Lally et al. 2010

Seven days with rising rewards. One missed day resets you to day 1.

Binds The reset inverts the logic: it does not feel like showing up is rewarded, but like staying away is punished.

Streak Cialdini 1984

A day counter with a bonus of one percent per day, capped at 14.

Binds The bonus is the smaller part. The larger part is the number itself: it turns individual decisions into a running commitment.

Loss timer Kahneman & Tversky 1979

After the first rewiring: “Your calibration expires in 23:59:59.” On expiry, minus ten percent for an hour.

Binds A bonus you can win motivates moderately. One you can lose motivates about twice as much. The penalty is deliberately mild — it only has to exist.

FOMO event Worchel, Lee & Adewole 1975

“TODAY ONLY: double production.” The countdown is real; the event returns every Sunday. Afterwards the leaflet lists the next four dates.

Binds Announced scarcity raises attractiveness without changing value. The same cookies are rated higher when only a few are left in the jar.

Season pass Zagal et al. 2013 · Arkes & Blumer 1985

Fourteen days, ten tiers, unclaimed tiers expire. A second track costs sparks and unlocks retroactively.

Binds Progress with an expiry date becomes a deadline. And the incentive to pay grows with the progress you already made without paying.

Artificial waiting time Zagal et al. 2013

Expansion tiers cost impulses and take effect only after 20, then 30, then 45 minutes. A button skips that for sparks.

Binds The artificial brake is what creates the need the speed-up button satisfies. Incidentally, the running clock is another open loop.

Overflowing buffer

Five percent of production runs into a tank that overflows after about 15 minutes. Anything after that is gone.

Binds This defeats the core idea of the genre. An idle game runs without you — an overflowing tank turns it back into something that demands your presence.

Progress and ownership

Pre-filled loyalty card Nunes & Drèze 2006

Ten fields, two of them filled from the start. You need eight real purchases — exactly as many as an empty eight-field card.

Binds In a field experiment with 300 car-wash customers, 34 % redeemed the pre-stamped ten-field card but only 19 % the empty eight-field one. Whoever stands at zero has not begun; whoever stands at two of ten is already under way.

Goal gradient Kivetz, Urminsky & Zheng 2006

All progress bars show not the progress but the progress to the power of 1.35. They lag in the middle and catch up at the end.

Binds The closer the goal, the greater the effort — in the coffee-card study, customers bought faster the nearer the free coffee came. After redemption comes the slump, and that is exactly when the next goal is ready.

Catalogue with gaps McIntosh & Schmeichel 2004

24 collection slots, visibly empty. Once the catalogue is full, eight new ones appear. The badges are called Ringtone, Red Dot, Countdown, Autoplay.

Binds The gap nags harder than the possession pleases. The counter “17 of 24” is the actual mechanic, not the collection.

Achievement list Ovsiankina 1928

Fourteen achievements with a percentage. Not one of them changes production, cost or flow.

Binds What works is the unfinished list alone. “86 percent” pulls you back without anything being at stake.

IKEA effect Norton, Mochon & Ariely 2012

Generators and the plant can be named. Your own name then appears in the header. It changes no values.

Binds Self-built things are systematically valued higher than identical ready-made ones. That is exactly why prestige systems work: they demand something that costs nothing arithmetically and feels like a loss.

Sunk cost Arkes & Blumer 1985

After three hours of play: a modal with your own time curve, drawn from local telemetry, and the question whether that is a reason to keep playing.

Binds Time already invested feels like an argument. Both answer buttons have no game consequence — the answer only resurfaces in the Mirror.

Social (entirely simulated)

Invented fellow players Asch 1951 · Cialdini 1984

“Currently active: 14,203 players.” The number comes from a base value, a table of 24 hourly weights and a seeded random value derived from the date.

Binds Social proof answers the question “is this worthwhile?” without answering it. The purchase recommendation below it is computed from your own save.

The neighbour Festinger 1954

Next to your own production stands a neighbour's. His value is yours times 1.1.

Binds An upward comparison you cannot win: because his value is derived from yours, progress never closes the gap. You get faster and stay exactly as far behind.

Leaderboard with rubber banding Festinger 1954 · Hunicke 2005

Eight names at fixed multiples. Whoever currently sits directly above you is continuously adjusted to a three to eight percent lead.

Binds The formula manufactures the state in which giving up is least likely: just behind. Catching up impossible, being dropped impossible too.

Parasocial character Horton & Wohl 1956

“Klara, the machinist” greets you, remembers the name you entered yourself and occasionally gives you something. She consists of about fifteen sentences and a timer.

Binds One-sided attention creates connectedness, gifts create reciprocity. That is why she gives small things instead of simply crediting them.

Attention and money

Premium currency Prelec & Loewenstein 1998

You buy “sparks” with impulses, and everything else with sparks. Packs get cheaper per unit, and prices always leave a remainder.

Binds The detour separates paying from buying. The unpleasant moment sits at the pack purchase; the buying moment hours later feels free.

Feedback / juice Juul & Begy 2016 · Kao 2020

Every purchase shakes, every payout celebrates, every click throws a number upward. None of it changes a value.

Binds It rewards every single action and thereby invites repetition. Comparing two mechanically identical versions, testers rated the juicy one higher — and scored lower in it.

Title trigger Fogg 2009

Once the tab is in the background, its title alternates between the game name and a notice with a red one. The icon gets a red dot, drawn via canvas.

Binds An external trigger for a behaviour that is easy anyway. The notice is usually empty: “your factory keeps running” is the normal state.

Endless history Lopez et al. 2024

The event log keeps loading as long as you scroll. Past the end of the real entries, a formula generates new ones.

Binds It is not continuing that gets rewarded — it is stopping that stays unmarked. No stop cue, no obvious moment to leave.

Need frustration Przybylski, Rigby & Ryan 2010

Every 45 minutes a generator fails for five minutes. Repair costs twenty clicks or sixty sparks.

Binds First the sense of competence is deliberately frustrated, then the relief is offered. Taking something away binds more strongly than giving something.

The Plant tab with Klara, compressor, stamp card, season, daily bonus, expansion, buffer, leaderboard and history. The store with spark packs, volume discounts and the disclosed prices in impulses.
Left, the Plant tab: nine systems all wanting something from you at the same time. Right, the store, here with the countermeasure “all prices in impulses” bought — you can see that every item returns less than it costs.

Two materials

The first version of the interface was a quiet dark dashboard with one muted accent — tasteful, tidy, and precisely for that reason wrong. A game that dissects seduction while not itself seducing is only making a claim. The reader would have to take my word that these mechanics pull, instead of noticing it on themselves. The interface is now split into two materials, and the break between them is the actual design.

Layer 1 · the machine

Factory, plant and store perform as the genre they demonstrate: saturated violet with gradients, a gold click button with a bevel, a plinth and a sheen travelling across it every three seconds, currency pills, a counter larger than any piece of information on the page. None of it is carelessness. The button is deliberately the most attractive object in view although it does the least important thing.

Layer 2 · the report

Clarity, archive, mirror, leaflets and credits are paper: serif type, hairlines, right angles, black and nothing else. No gradient, no shadow, no rounded corner, no colour that wants something. Purchased countermeasures are struck through like finished items on a list, not priced like goods.

The Clarity tab: the violet machine chrome at the top with a red FOMO banner, and directly below it the report on paper with hairlines, serif type and struck-through purchased entries.
The break in one frame: above, the machine still shouting “TODAY ONLY”; below, the report on paper. The strip labelled “switched off 3 / 30” sits in the machine's own dashboard — every purchased tick turns to paper.

You can tell from the material whether the game is taking or reporting before you have read a word. The two worlds meet in exactly two places. The shutdown meter shows one tick per countermeasure, and each purchased tick becomes paper; when the strip is full, the readout consists only of paper. And the Glass Box finally strips the machine of its cosmetics — the gradients fall away, the gold turns to paper, the corners go straight, the sheen stops. That is the only path on which the two materials come together, and you have to earn it.

The project draws one boundary that looks like a contradiction at first. “Turn off pulsing and animated lures” costs Clarity — you have to earn your quiet, and that is the point of the exercise. The system setting prefers-reduced-motion, by contrast, is respected for free, regardless of the shop. A game that overrode an explicitly stated preference in order to sell it back afterwards would be doing exactly what it accuses others of. The line runs between a habit meant to be demonstrated and a statement that must be honoured.

The counter-currency: Clarity

A game that only explains would be a lecture. The counter-currency closes that gap: you receive Clarity for every leaflet you read, and you buy no production with it — you switch parts of the game off.

The economy follows one invariant: each mechanic's leaflet finances at least its own countermeasure. Whoever has understood how the loss timer works can switch it off. Whoever never experienced a mechanic does not need its antidote — those entries stay hidden. In total, 73 earnable points face 63 spendable ones.

The most telling entry is the autoclicker: five clicks per second, automatic, described as “the most honest idle mechanic of them all”. The most expensive is Glass Box mode.

The Glass House: the formulas lie open

In the footer sits a link called “source code of the probabilities”. It unfolds a table showing every active probability, every timer and every formula live from the game state — over 200 rows.

The Glass House panel: a table with quantity, formula and current value for each mechanic.
Quantity, formula, current value. No marketing, no rounding. The panel is 210 rows long; this is the top of it.

So that this is not an empty gesture, all invented numbers are deterministic: player count, leaderboard and the gacha draws come from a seeded pseudo-random generator. The panel can therefore predict which badge the next draw will produce. A table that claims disclosure but cannot name the next draw would itself only be a claim.

This is also the one place where the game genuinely misinforms the player, and the deviation is built in so that it is noticed later. The gift button shows the nominal 30 percent rate until the corresponding leaflet is read; afterwards it shows the actual one.

The Mirror: telemetry that belongs to nobody

The game records sessions, clicks, empty clicks, leaflets read, streak history and the answer to the sunk-cost question. Not one byte leaves the device. There is no server, no outbound request, no identifier. That statement also appears in the interface and is the only one in the project that asks for trust — the rest is verifiable in the source.

The Mirror tab: a heatmap of play times by weekday and hour, a table of numbers and dry commentary, all set on paper.
The heatmap shows when you played. With a cluster between 10 pm and midnight it says underneath: “You play before falling asleep. You are not alone in that.”

The ending: winning by leaving

Glass Box mode ends the game. What follows is a closing sequence with two buttons: “delete save and leave” and “keep playing anyway”. Neither is framed as the correct choice.

The closing screen on paper: “You won by leaving”, the player's statistics and two buttons — delete save and leave, or keep playing anyway.
Two buttons, both real. The second one is a deliberate decision: a project that prescribed when to stop would only be the other kind of paternalism.

Technical, briefly

1

HTML file, no build

31

mechanics with a leaflet

30

countermeasures you can buy

0

network requests

Everything sits in one index.html with embedded CSS and vanilla JavaScript: no frameworks, no build tools, no external dependencies. A double click is enough; a server is not needed. Persistence and telemetry live in localStorage, auto-save every ten seconds and on leaving the tab, offline progress up to eight hours.

The mechanics live in a declarative registry object: each with unlock, tick, zettelReady, the leaflet text, the Clarity reward, its countermeasure and its rows for the Glass House. New mechanics are therefore an array entry rather than surgery on the game logic — at 31 of them that was a precondition, not a flourish.

Both materials live in a single stylesheet: one set of variables describes surface, edge, type, radius and shadow, and the report tabs rewrite exactly that set. Card, row and button therefore work in both worlds without duplicate rules — round, bevelled and gold in the machine; square, flat and black on paper. Typefaces come exclusively from the system: the shipped Content-Security-Policy forbids every network request with connect-src 'none', and a webfont would be one. The privacy promise is also a typography brief.

Four observations

A critique of seduction has to seduce. The tidy first version of the interface was the project's actual mistake, and it went unnoticed for a long time because the result looked orderly. An interface that names the methods without applying them shifts the burden of proof onto the text — and text can be skimmed past. Only when the click button turned gold and the report moved onto paper did the thesis stop living solely in the leaflet and start living in the material. The same rule that governs the mechanics governs the design: act first, disclose second.

The mechanics are individually unremarkable and collectively crushing. After the full build I had eleven cards on one page demanding actions at the same time: collect the daily bonus, claim the season tier, empty the buffer, start the compression, energy is full. The systems needed their own tab, otherwise the core of the game would have been unreachable. Commercial mobile games look exactly like this, and the reason is structural: none of these mechanics is ever weighed against the others. Each is added individually, because individually it works.

Transparency has to apply to your own metrics too. The “per second” readout initially counted only the generators, while the autoclicker contributed five clicks per second — each worth one second of production. Measured factor between display and actual growth: 5.75. In a game whose subject is disclosure, a wrong metric of your own is not a marginal bug. The line now names total income with the autoclicker's share below it.

The most robust sentence in the project is not written but measured. The line the game assembles from the player's own data — 3.4 clicks after an “Almost” against 1.6 after a “Nothing” — carries further than any citation. It is the only part of the text that cannot be argued with.

The finding that carries the project applies to its author as well: knowing the formulas changes nothing about the effect. Understanding switches no mechanic off — you have to switch it off.

Sources

All works cited in the game, looked up and verified. Where a finding is contested or has been replicated, that is stated with it.

Reinforcement, chance and gambling

  1. Ferster, C. B. & Skinner, B. F. (1957). Schedules of Reinforcement. Appleton-Century-Crofts.
  2. Chase, H. W. & Clark, L. (2010). Gambling severity predicts midbrain response to near-miss outcomes. Journal of Neuroscience 30(18), 6180–6187.
  3. Harrigan, K. & Dixon, M. (2009). PAR Sheets, probabilities, and slot machine play. Journal of Gambling Issues 23, 81–110.
  4. Dixon, M. J. et al. (2010). Losses disguised as wins in modern multi-line video slot machines. Addiction 105(10), 1819–1824.
  5. Zendle, D. & Cairns, P. (2018). Video game loot boxes are linked to problem gambling. PLOS ONE 13(11).

Decision, loss and value

  1. Kahneman, D. & Tversky, A. (1979). Prospect Theory: An Analysis of Decision under Risk. Econometrica 47, 263–291.
  2. Arkes, H. R. & Blumer, C. (1985). The psychology of sunk cost. Organizational Behavior and Human Decision Processes 35, 124–140.
  3. Prelec, D. & Loewenstein, G. (1998). The Red and the Black: Mental Accounting of Savings and Debt. Marketing Science 17(1), 4–28.
  4. Worchel, S., Lee, J. & Adewole, A. (1975). Effects of supply and demand on ratings of object value. JPSP 32(5), 906–914.
  5. Norton, M. I., Mochon, D. & Ariely, D. (2012). The IKEA effect: When labor leads to love. Journal of Consumer Psychology 22(3), 453–460.

Goals, progress and interruption

  1. Ovsiankina, M. (1928). Die Wiederaufnahme unterbrochener Handlungen. Psychologische Forschung 11, 302–379.
  2. Nunes, J. C. & Drèze, X. (2006). The Endowed Progress Effect. Journal of Consumer Research 32(4), 504–512.
  3. Kivetz, R., Urminsky, O. & Zheng, Y. (2006). The Goal-Gradient Hypothesis Resurrected. Journal of Marketing Research 43(1), 39–58.
  4. McIntosh, W. D. & Schmeichel, B. (2004). Collectors and Collecting: A Social Psychological Perspective. Leisure Sciences 26(1), 85–97.
  5. Csikszentmihalyi, M. (1975). Beyond Boredom and Anxiety. Jossey-Bass.

Habit, motivation and behaviour design

  1. Lally, P. et al. (2010). How are habits formed: Modelling habit formation in the real world. European Journal of Social Psychology 40(6), 998–1009.
  2. Cialdini, R. B. (1984). Influence: The Psychology of Persuasion. Harper & Row.
  3. Fogg, B. J. (2009). A Behavior Model for Persuasive Design. Persuasive '09.
  4. Przybylski, A. K., Rigby, C. S. & Ryan, R. M. (2010). A Motivational Model of Video Game Engagement. Review of General Psychology 14(2), 154–166.
  5. Festinger, L. (1954). A Theory of Social Comparison Processes. Human Relations 7(2), 117–140.
  6. Asch, S. E. (1951). Effects of group pressure upon the modification and distortion of judgments.
  7. Horton, D. & Wohl, R. R. (1956). Mass Communication and Para-Social Interaction. Psychiatry 19(3), 215–229.

Game design

  1. Zagal, J. P., Björk, S. & Lewis, C. (2013). Dark Patterns in the Design of Games. FDG 2013.
  2. Hunicke, R. (2005). The case for dynamic difficulty adjustment in games. ACE '05.
  3. Juul, J. & Begy, J. (2016). Good Feedback, Bad Influence. DiGRA/FDG.
  4. Kao, D. (2020). The effects of juiciness in an action RPG. Entertainment Computing 34.
  5. Lopez, C. et al. (2024). A pre-registered replication of the bottomless bowl. Appetite.

Stack