Releases: DeliriumPulse/CardShopCoop
Release list
CardShopCoop v1.0.33
Hotfix: the endless "custom-card database differed - RESTART" loop (thanks joshepi89 for the report).
The database check compared the registry file byte-for-byte - but the prefab loader REWRITES that file on every game boot (same content, different bytes). So two players whose card databases genuinely matched could mismatch forever: sync, restart, rejoin, rejected again - no number of restarts escaped it. The "already synced" message was the same bug's other half.
The check now compares what the registry actually MEANS (every card/item name and its ID, order-independent - validated against a real 838-entry registry), so:
- identical databases match on the first rejoin
- genuinely different databases still sync + fix in ONE restart, as designed
Both players must update - the launcher does it automatically.
CardShopCoop v1.0.32
Hotfix: the guest's serve key going permanently dead ("guest can't interact with npc" - thanks Coke, and thanks for the logs).
A safety guard added in 1.0.29 (don't fire the serve key while typing in a text box) checked whether a game text field was selected rather than actively being edited. Unity keeps the last-clicked UI element "selected" forever - so after touching any price box, phone app, or website input, the serve key silently died for the rest of the session. The logs showed it perfectly: trade offers arriving, zero key presses registering.
- The guard now only suppresses while you are genuinely typing
- The co-op window can no longer leave a stale focus behind when closed
- A suppressed press is now LOGGED instead of silently eaten - if a key ever dies again, the log will say exactly why
Both players must update - the launcher does it automatically.
CardShopCoop v1.0.31
New in-game look. The co-op window (F2) got a full visual overhaul:
- A proper themed panel matching the game's cozy style - rounded corners, soft shadow, title bar with version badge
- HOST YOUR SHOP / JOIN A FRIEND section cards with clear primary buttons
- Colored status chips (green = hosting/connected, amber = card-database notice, red = problem) with the raw status text still shown for bug reports
- A cleaner lobby browser with alternating rows
- The on-screen prompts (serve hints, host clock, co-op errors) are now readable dark pills instead of floating text that vanished against a bright shop
No gameplay or sync changes - this is 1.0.30 with a much better face. Both players must update (the launcher does it automatically).
CardShopCoop v1.0.30
Fixes for everything reported this week - thank you Bytelocker, SerDakota, dereck, Kamun, Elvundil, Latch, and everyone posting logs. Both players must update (the launcher does it automatically) - the network format changed, so 1.0.30 only connects to 1.0.30.
Your solo saves
- Fixed: solo modded saves showing "data lost" after playing co-op. Joining a host with a different custom-card database installs the host's registry over yours (with a backup) and there was no way back. The co-op window now warns you whenever your registry is the host's copy and has a one-click "Restore MY card database" button (restart afterwards). Nothing was ever deleted - the backups have always been kept next to the file (
PrefabLoader\enum_values.json.coopbak-...), so saves that broke this way are recoverable TODAY, even before updating: rename the newest.coopbakback overenum_values.jsonand restart. - The host's real save slot is no longer touched by join snapshots.
Joining
- Fixed: a guest joining mid-day could WIPE everyone's shelf stock (also behind "our third joined and we lost all our stock" and "the shelves were erased after we restarted"). Join any time of day now; item stock also self-heals every 12s like card displays do.
- The "mod set differs" rejection now names exactly which mods differ - missing, extra, and version mismatches (same for custom cards).
1.0.29 regressions (Latch was right - thanks for the nudge)
- Guest purchases were delayed ~1.5s and a purchase the wallet couldn't cover still went through. Rebuilt properly.
- Boxes could freeze solid in the warehouse ("clogging up our shelving").
Boxes & items
- Opened boxes refilling endlessly ("unlimited items") - fixed.
- Boxes a guest trashed silently surviving on the host and "respawning the next day" - fixed.
- Host box moves snapping back to the delivery area or the guest's old placement - fixed.
- Boxes can no longer end up (or reappear) under the floor.
Guests
- Clicking near the register no longer soft-locks you into cash-counter mode ("can't interact with anything until they leave") - serve with the serve key (V).
- The shop name now updates the first time a friend joins.
- 3-player: furniture can no longer vanish/teleport from a stale index, and fresh joiners no longer re-report every object.
New option: HostServeKey (off by default) lets the HOST use quick-serve at the register too.
As always: if something misbehaves, BepInEx\CardShopCoop_<number>.log from BOTH PCs is what cracks it. Every fix in this release came from your logs.
CardShopCoop v1.0.29
Preemptive fixes from a full audit of the game against the mod. Every game system was swept for 2-player coverage gaps before anyone got burned (full audit in the repo: docs/audit-2026-07-07.md - 134 systems confirmed covered, 10 real gaps found and fixed). Adds a new network message, so 1.0.29 only connects to 1.0.29 - both players must update (the launcher does it automatically).
Duplication & money exploits (found by the audit, never reported)
- Packs sitting in an auto pack opener duplicated on the host every time a guest joined (same for deodorant cans in the auto cleanser). Fixed.
- A guest could sell a boxed-up shelf the host placed - the shared wallet got the money while the shelf survived, repeatably. Guest furniture selling is blocked (with a message) until a fully-validated version ships.
- A purchase whose charge the host declined (wallet short) still delivered the product free. Purchases are now held the split-second until their charge clears, then delivered or cancelled.
Guest actions that silently did nothing (or worse)
- The guest's deodorant spray never actually cleaned a smelly customer. Now it does.
- A guest placing a decoration lost it for good (and could teleport a different decoration). Blocked with a message for now.
- Pulling a shelf item into an empty box destroyed the item. Fixed.
Robustness
- A host worker could take or drain the box a guest was carrying, right out of their hands. Fixed.
- Disconnecting while carrying a box left it invisible and untouchable for everyone until the session restarted. Fixed for item, card, and furniture boxes.
- A guest loading their own save from the pause menu left a broken half-session. The session now ends cleanly.
- Re-grading a card could delete a duplicate graded card on every player who owned one. Fixed.
Everything above was traced against the game's own code and adversarially re-verified before release. If anything misbehaves, grab BepInEx\CardShopCoop_<number>.log from BOTH PCs.
CardShopCoop v1.0.28
Fixes for all 9 bugs from the latest two-player test. Both players must update (the launcher does it automatically) - this build changes the network format, so 1.0.28 only connects to 1.0.28.
Storage & deliveries (the big one)
- Guest-ordered deliveries only showing on the host - root-caused: the box sync only carried the first 250 boxes, and a well-stocked warehouse blows past that; new delivery boxes were exactly the ones past the cap. Worse, the guest deleted its copies of boxes past the cap. Cap is now 1000 and a capped snapshot can never delete boxes.
- Storage boxes floating in the air - a box the guest's rack refused to store was left loose at rack-slot height. It now pins in place on the rack, looking just like the host's.
- Items in storage boxes differing between players - stored-box contents could clamp to zero on the guest; fixed, plus the rack rejections themselves now self-heal (stale "ghost" occupants get evicted) and log full diagnostics.
Graded cards & grading (Grading Overhaul)
- Graded card price changes by the guest now reach the host (regular cards already worked; graded ones were being filed under the wrong key due to a patch-ordering race).
- The grading bill now charges what the screen showed - the $200,000 2-day bill that only took $12k happened because the host recomputed the fee with the vanilla flat formula. The host now charges the guest's actual on-screen total.
- Grading Overhaul's extra service tiers (beyond the vanilla 4) no longer get truncated to tier 3.
- Graded card names in trade offers show the real grade (e.g. "[grade 9]"), not a ten-digit code.
Trading counter
- "NPC walks away while the trade screen is still up" - two fixes: the host now pauses the customer's patience timer while a guest has the trade screen open, and a trade screen that loses its connection to the counter (the source of silently-eaten Accept clicks and the wrong-card-name popup) now re-binds to the customer you're standing at instead of doing nothing.
- Typing a haggle price no longer triggers the serve key.
Binder
- "Total value differs between host and guest" - the binder's total-value text only updated when you opened it; it now refreshes live as cards come and go. Also, the guest no longer generates its own card market prices (it uses the host's, always).
- Cards bought from NPCs by the guest were arriving all along - this same stale-total bug hid them; both fixed.
If anything still misbehaves, grab BepInEx\CardShopCoop_<number>.log from BOTH PCs - this build logs much more detail around storage rejects and deliveries.
CardShopCoop v1.0.27
Graded cards now sync (Grading Overhaul).
The mod was throwing away every graded card. With Grading Overhaul installed, a graded card's grade is an encoded value (grading company + grade + certificate number), not a plain 1–10 — and an old safety guard treated anything above 10 as "corrupt" and dropped it. That's why graded cards never showed up in the other player's binder, showed only the red "!", or turned "fake" (the game's grading anti-cheat was re-stamping them because they arrived un-registered).
- The guard is gone; graded cards now register properly with Grading Overhaul on arrival (binding the host's certificate), so they appear with the correct grade and stop churning.
- Graded-card prices sync too (routed through Grading Overhaul's own price store).
- Both players still need the same grading mods (the join handshake enforces matching mods). Without a grading mod, nothing changes.
This is the first build that actually attempts modded-grade sync — if a graded card looks wrong, grab a BepInEx\CardShopCoop_<number>.log from both PCs. Includes everything from 1.0.26.
Both players must update — the launcher does it automatically.
CardShopCoop v1.0.26
Big field-report batch from live co-op testing. Thanks to everyone reporting bugs in the Discord.
Placement, boxes & machines
- Fixed: placed machines/objects snapping back to their old spot when the host moved them, and objects landing a few degrees off the rotation grid (couldn't align, showed red). Same underlying bug — an object-move tug-of-war where the guest kept re-asserting the old pose. The host is now authoritative over an object it's moving.
- Fixed the auto card opener: the guest couldn't add packs after collecting once ("no empty slot"), and its UI panel floated at the old spot after the host moved it. Both fixed — you no longer have to leave it in one place.
- Fixed a guest soft-lock: a box consumed on the host's side while you held it left you stuck holding an invisible box, unable to interact with anything. Fixed, plus a safety net that auto-frees anyone already stuck.
- Fixed furniture placing diagonally, boxes floating frozen on storage shelves, and a box taken off a rack staying stuck on the other player's screen.
Customers, prices & world
- Fixed: the host pausing froze everything for the guest — the world now keeps running under the pause menu during a session.
- Fixed: the guest couldn't answer trade / sell-in customers (the red "!" ones) — a walk-up hint now tells the guest to go to the counter and press the serve key (V).
- Fixed: card prices on a display not showing for the other player (they now re-send so a dropped update self-corrects). Note: play tables can't hold priced cards — use the glass display counter.
- Fixed grading showing "-1 day" for the joiner.
Grading (partial): guarded a crash from modded un-clamped grades. Full graded-card sync with grading mods is still WIP — both players must run the identical grading mods.
Both players must update — the launcher does it automatically.
CardShopCoop v1.0.24
Fixed: the guest was autosaving the host's world into its own save slot.
We claimed a joiner never saves, but a hole let it through: the save guard only blocked while you were actively connected. After the host left — or the day rolled over, or you quit — you were still standing in the host's shop but no longer "a client," so the game's autosave wrote the host's world over your save slot (the "saves get bundled together" reports).
The guard now tracks a borrowed-world state, set the moment you join and held through a disconnect until you return to the title screen — so no autosave, day-end save, or quit-save can touch your own saves while you're in someone else's shop.
Builds on 1.0.23's big verified bug-fix pass (haggle $0, guest furniture money-loss, pack-open freeze, fake graded cards, empty-box pickup, money desync, customer blink, light switch, decorations, tutorial/task progression, and more — see CHANGELOG.md).
Both players must run 1.0.24 — the launcher updates automatically.
CardShopCoop v1.0.23
Big verified bug-fix pass. A multi-agent audit of every subsystem against the decompiled game, with each finding adversarially verified. 25 fixes.
Trades & money
- Haggle price no longer reads $0 (it committed only on focus-loss; now force-committed on Accept).
- A guest buying furniture the host's catalog lacks is now refunded instead of silently charged with nothing delivered.
- Shared wallet can't be overspent negative; wallet/XP now re-send every 15s so a dropped packet self-heals.
- Traded/donated/re-graded graded cards no longer ghost as "fake" on the other side.
Packs, binder & customers
- Guest no longer freezes on the first card when opening a pack.
- A traded/pulled card shows in an already-open binder immediately.
- Customers stop blinking out for the guest; the red "!" trade prompt is visible; female workers show as female.
Boxes, furniture & world
- Empty boxes can be taken again (count no longer strands); loose boxes stop scattering to the wrong spot.
- Generic furniture no longer duplicates, and an unresolved box no longer blocks selling/unpacking furniture.
- Shop light switch now syncs; decorations appear for the guest.
- Tutorial/task progression now syncs — the guest's task panel advances instead of sticking on "Set the shop sign to OPEN."
Networking: a single oversized reliable packet can no longer freeze all guest state; population sync no longer stops past 250 objects.
Both players must run 1.0.23 — the launcher updates automatically. Full details in CHANGELOG.md.