Guide updated
Cloud save conflicts and confirmed balances
The current original client retains Firebase sign-in but reads and writes cloud saves through the original account service instead of loading direct Firestore/Realtime Database clients. This describes the public client transport, not undisclosed backend storage. A missing-save response means no save was found for that request; a failed request is not an empty account or a successful sync. Local saves, signed-copy preservation and cross-tab protection remain relevant.
A successful save can return authoritative economy corrections, including coins, both tickets, ledger, removals, permanent upgrades, bag and TMs. On revision conflict the client merges the returned copy and retries a newer revision. A rate-limit response with a gap keeps the save pending and waits the returned seconds (20 by default), plus half a second. A rejected save can explicitly leave the newest changes only in this browser. Keep that browser's data and wait for an actual accepted sync before changing device or clearing storage.
Requests require a current signed-in user. The wrapper refreshes the authentication token once after a 401 response; repeated authentication failure is not successful saving. Its usual timeout is 12 seconds (15 for pulls), and network failures, server errors and unreadable responses are treated as unavailable. Reconnect and confirm the account's sync state; the Wiki cannot repair credentials or infer accepted balances from a spinner.
Candy: drop budget, collection and shop cost
The shared ambient budget is floor(run seconds ÷ 60 × 1.25). Ghost defeats and broken pumpkins need at least 1 unspent unit; other non-Judgment enemies need a backlog of 3, but each successful drop consumes only 1 and drops 1 candy. Defeating more enemies cannot bypass the time budget. Drops still need collecting. Pumpkins also give 8 XP and a 50% chance of 2 coins. Entering the great Gengar fight grants 60 candy; in co-op the host grants it to everyone. Judgment enemies do not produce ambient candy. At a 30:00 transition, 37 ambient drops + 60 bonus = at most 97, so three such runs give 291, short of a 300-candy skin. A delayed transition can change that budget; the planner asks for its actual start time and whether the fight was reached.
Three permanent witch skins
Kecleon sells Witch Gengar, Witch Pikachu and Witch Umbreon for 300 candy each while Halloween is open. Gengar has a hat and cape; Pikachu and Umbreon have a hat only. These are cosmetic sprite sheets, including shiny variants, not new species, moves or stat boosts. A purchase is permanent and cannot be bought twice. You may buy before owning the species; automatic equipping requires ownership. Equip or remove it from that Pokémon's card later. Candy is stored in bag.candy, purchased skins in skins and the most recently selected outfit in pskin. Kecleon's own shop hat is decoration, not a fourth purchasable skin. Candy is earned, not a free coin-shop purchase.
Original source preview · spoilers
Original d667c216 extends Halloween to October 30–November 2 inclusive in Europe/Madrid, ending November 3 at 00:00. In 2026: October 29 at 23:00 through November 2 at 23:00 UTC. The same window covers the map, candy shop and witch skins, Ghost banner and great Gengar. This is the scheduled original-game window, not proof that the event is active now; the source preview below describes its rewards.
Tools
Related pages
Game data & sources
The linked game files show where these stats, costs and rules come from. Updates to the game may change them.
Data version: d567c6da
- https://pokesurvivor.com/en/news/
- https://pokesurvivor.com/version.json
- https://pokesurvivor.com/js/app.min.js?v=eae98df1a1
- https://github.com/JPTER78/pokesurvivor/blob/c121040ff0278383e4ae67bc24f17e4cfd141a24/js/app.min.js
- https://github.com/JPTER78/pokesurvivor/commit/ad6c025958a2feb39345874673da845c57546681
- https://github.com/JPTER78/pokesurvivor/commit/c121040ff0278383e4ae67bc24f17e4cfd141a24
- https://github.com/JPTER78/pokesurvivor-live/blob/639adaf9dc019cdcfe54b16c21a5fcfe33b9e2fa/README.md
- https://github.com/JPTER78/pokesurvivor-live/blob/639adaf9dc019cdcfe54b16c21a5fcfe33b9e2fa/.github/workflows/live.yml
- https://github.com/JPTER78/pokesurvivor/blob/23c0d653dfd215690d4a617d6e0593231b9dccd3/js/app.min.js
- https://github.com/JPTER78/pokesurvivor/blob/23c0d653dfd215690d4a617d6e0593231b9dccd3/sw.js
- https://github.com/JPTER78/pokesurvivor/blob/23c0d653dfd215690d4a617d6e0593231b9dccd3/en/news/index.html
- https://github.com/JPTER78/pokesurvivor/commit/23c0d653dfd215690d4a617d6e0593231b9dccd3
- https://github.com/JPTER78/pokesurvivor/blob/90cdd941da04793e3023b4a28aff552819c70f21/js/app.min.js
- https://github.com/JPTER78/pokesurvivor/commit/90cdd941da04793e3023b4a28aff552819c70f21
- https://github.com/JPTER78/pokesurvivor/blob/b742e43772e37d077549bf2fad3d615d60f42961/js/app.min.js
- https://github.com/JPTER78/pokesurvivor/blob/b742e43772e37d077549bf2fad3d615d60f42961/css/style.css
- https://github.com/JPTER78/pokesurvivor/blob/b742e43772e37d077549bf2fad3d615d60f42961/en/news/index.html
- https://github.com/JPTER78/pokesurvivor/commit/e5997d563fd271168d4c801fbe46274622f92c13
- https://github.com/JPTER78/pokesurvivor/commit/b742e43772e37d077549bf2fad3d615d60f42961
- https://github.com/JPTER78/pokesurvivor/blob/f7fbcfc4c278080c74af9538e5efc2fe7e3709a9/js/systems/halloween.js
- https://github.com/JPTER78/pokesurvivor/blob/f7fbcfc4c278080c74af9538e5efc2fe7e3709a9/js/systems/gacha.js
- https://github.com/JPTER78/pokesurvivor/blob/f7fbcfc4c278080c74af9538e5efc2fe7e3709a9/js/data/shop.js
- https://github.com/JPTER78/pokesurvivor/blob/f7fbcfc4c278080c74af9538e5efc2fe7e3709a9/js/core/skins.js
- https://github.com/JPTER78/pokesurvivor/blob/f7fbcfc4c278080c74af9538e5efc2fe7e3709a9/js/systems/judgment.js
- https://github.com/JPTER78/pokesurvivor/blob/f7fbcfc4c278080c74af9538e5efc2fe7e3709a9/js/data/enemies.js
- https://github.com/JPTER78/pokesurvivor/blob/f7fbcfc4c278080c74af9538e5efc2fe7e3709a9/js/world/world.js
- https://github.com/JPTER78/pokesurvivor/blob/f7fbcfc4c278080c74af9538e5efc2fe7e3709a9/js/core/db.js
- https://github.com/JPTER78/pokesurvivor/blob/f7fbcfc4c278080c74af9538e5efc2fe7e3709a9/js/game.js
- https://github.com/JPTER78/pokesurvivor/blob/f7fbcfc4c278080c74af9538e5efc2fe7e3709a9/js/data/changelog.js
- https://github.com/JPTER78/pokesurvivor/blob/d667c216ddc99ee7bbb16a0ca0528f25461f037e/js/systems/halloween.js
- https://github.com/JPTER78/pokesurvivor/blob/d667c216ddc99ee7bbb16a0ca0528f25461f037e/js/game.js
- https://github.com/JPTER78/pokesurvivor/blob/d667c216ddc99ee7bbb16a0ca0528f25461f037e/js/ui/shop-ui.js
- https://github.com/JPTER78/pokesurvivor/blob/d667c216ddc99ee7bbb16a0ca0528f25461f037e/js/ui/gacha-ui.js