One Piece Card Game · data · rules · engine

A card game database that shows its working.

Every card and every printing, the Comprehensive Rules and the official Q&A, a deck builder that argues from real tournament lists, a game engine that is checked against the rules while it plays, and a ledger of the cards you own. Where the data is thin, this site says so on the page — it does not round the gap away.

One of these doors is a program rather than a page: the board plays a real game in this tab, against a CPU, with no server and no sign-in. The doors themselves are drawn — every real card on this site has its picture.

What is in the database

reading docs/data/meta.json…
Cards
Printings
Sets
Abilities
Decklists
Tournaments
Rules clauses
Official Q&A
Engine coverage of printed card text

The share of card abilities the simulation engine can actually execute. The rest are parsed, stored and shown — they simply do nothing when played, and the card page and the play board both flag them.

The counts are not loaded

What this can and cannot do

It can

  • Give you every card and printing in the game, with the printed text and the ability text broken into structured triggers, conditions and effects.
  • Quote the Comprehensive Rules by clause id, and connect each official ruling to the clauses it depends on.
  • Play a full game against a CPU with an independent rules checker running alongside the engine — the checker asks the engine nothing, so when they disagree you learn something.
  • Recommend deck changes from tournament decklists across events.
  • Value a collection one printing at a time, and report the total split by how well each row is known instead of as a single figure.

It cannot, yet

  • of abilities are stored but not executable by the engine. Those cards are playable as bodies; their text does nothing. Every place one appears is marked.
  • Report a winrate it cannot justify. Where the sample or the engine's coverage will not support a number, the number is suppressed rather than printed with a shrug.
  • Watch someone else's game, or run the benchmark. Play runs a full game against the CPU in your browser AND hosts a table for two people on this site's own room server — but a spectator needs a seatless view the room does not serve, and the benchmark writes to a database it cannot reach. Those two are switched off here and say why.
  • Put a price on every printing individually. TCGplayer does not sell a separate product for every art Bandai prints, so some printings can only be valued as a group. My collection marks those rows and leaves them out of its confident total.
  • Tell you what the next set will do. Nothing here is predicted — it is all read out of the database or the published rules.

Where the numbers come from. Cards, printings and abilities are ingested from the official card lists and stored in data/optcg.db. Rules come from the Comprehensive Rules v1.2.0 and the published Q&A. Decklists and results come from tournament coverage. Printing-level prices are TCGplayer market prices via TCGCSV, regenerated by npm run collection:data, and My collection shows how old they are. The JSON this page reads is regenerated by npm run site; the timestamp above is that run, not today.