220f70d342
shared/tile-inventory.json + shared/roll-tables.json + shared/GAME-REVIEW.md
+ shared/BRANCHING-TEMPLATE.md were parsed from the design doc in a separate
session and were already sitting untracked in this repo. This is the real,
authoritative game content — 211 tiles across 12 segments, 5 player stats
(cash/love/education/wealth/age), 48 placeholder roll tables — far more
complete than the hand-sketch-inspired board built earlier.
Adds shared/tileInventory.js and shared/rollTables.js: mechanical
`export default {...}` wrappers around the same JSON (kept as-is alongside
them as the raw source reference), so the content is importable both by the
server and by the browser fetching shared/*.js with zero bundler — the same
pattern every other file in shared/ already uses. Avoids relying on JSON
module import-attribute syntax, whose support is uncertain on node:20-alpine
(the Dockerfile's base image).
Also includes assets/colors.json and assets/tile_types.json (an apparently
separate, incomplete transcription of the hand sketch) — not wired into
anything yet, just brought into version control.
Appends integration-gap TODOs to GAME-REVIEW.md: 85 inline_table tiles have
a die size but no table content anywhere in the parsed files; payday/
cash_bonus amounts are undefined everywhere; multi-table roll_table_ref
tiles (2-3 tables at once, 22 of them) have no documented combination rule.
15 KiB
15 KiB
Life Journey — Game Content Review
A readable summary of everything parsed from the design doc, for checking and filling in. The game tracks five things per player: cash ($), Love, Education, Wealth, Age.
211 tiles across 12 segments, referencing 48 roll tables that still need real content.
Board segments and tiles
Starting Strip (7 tiles)
- Graduation party — event
- Action space — action_space · D100 · ⤷ roll table
- First Paycheck — choice
- Dice roll — dice_space · ⤷ roll table
- Underground poker — choice · D20
- New job — roll_table_ref · ⤷ roll table
- STOP — stop · D8
Career Path (22 tiles)
- PAY DAY — payday
- RECRUITER CALLS — choice
- PERFORMANCE REVIEW — roll_table_ref · ⤷ roll table
- NEW HIRE — roll_table_ref · D100 · ⤷ roll table
- START A BUSINESS — roll_table_ref · ⤷ roll table
- OFFICE BAR TRIVIA — roll_table_ref · ⤷ roll table
- DICE SPACE — dice_space · D100 · ⤷ roll table
- COMPANY PERKS — roll_table_ref · D100 · ⤷ roll table
- THE NEWS — event · D20
- NEW JOB — roll_table_ref · ⤷ roll table
- COMPANY RACE DAY — inline_table · D10
- OPPORTUNITY KNOCKS — roll_table_ref · ⤷ roll table
- CLIENT DINNER — roll_table_ref · ⤷ roll table
- SHENANIGANS — roll_table_ref · ⤷ roll table
- OFFICE CHRISTMAS PARTY — roll_table_ref · ⤷ roll table
- MENTORSHIP — choice
- BIG CAREER MOMENT — event
- ACTION SPACE — action_space · D100 · ⤷ roll table
- DICE SPACE — dice_space · D100 · ⤷ roll table
- PERFORMANCE REVIEW — roll_table_ref · ⤷ roll table
- START A BUSINESS — roll_table_ref · ⤷ roll table
- STOP — stop · D8
Investment Path (20 tiles)
- PAY DAY — payday
- ACTION SPACE — action_space · D100 · ⤷ roll table
- SIDE INVESTMENT — inline_table · D20
- BUY A HOUSE — roll_table_ref · D100 · ⤷ roll table
- DICE SPACE — dice_space · D100 · ⤷ roll table
- ESTATE AUCTION — roll_table_ref · ⤷ roll table
- MARKET CRASH — inline_table · D20
- FORCED PARTNERSHIP — choice
- 401k — cash_bonus · D20
- SEMINAR — inline_table · D20
- ANGEL INVESTOR — inline_table · D20
- BUY A HOUSE — roll_table_ref · D100 · ⤷ roll table
- ACTION SPACE — action_space · D100 · ⤷ roll table
- BLIND INVESTMENT — inline_table · D6
- DICE SPACE — dice_space · D100 · ⤷ roll table
- BANKRUPTCY — inline_table · D20
- MARKET MAYHEM — choice
- FINANCIAL ADVISOR — inline_table · D20
- PAY DAY — payday
- DICE SPACE — dice_space · D100 · ⤷ roll table
Investment Path (Bottom) (23 tiles)
- PAY DAY — payday
- ACTION SPACE — action_space · D100 · ⤷ roll table
- SIDE INVESTMENT — inline_table · D20
- BUY A HOUSE — roll_table_ref · D100 · ⤷ roll table
- DICE SPACE — dice_space · D100 · ⤷ roll table
- START A BUSINESS — roll_table_ref · ⤷ roll table
- MARKET CRASH — inline_table · D20
- ESTATE AUCTION — roll_table_ref · ⤷ roll table
- 401k — cash_bonus · D20
- BUY A HOUSE — roll_table_ref · D100 · ⤷ roll table
- ANGEL INVESTOR — inline_table · D20
- FORCED PARTNERSHIP — choice
- ACTION SPACE — action_space · D100 · ⤷ roll table
- BANKRUPTCY — inline_table · D20
- BLIND INVESTMENT — inline_table · D6
- PAY DAY — payday
- BET AGAINST ANOTHER PLAYER — choice
- DICE SPACE — dice_space · D100 · ⤷ roll table
- MARKET MAYHEM — event
- FORCE SALE — inline_table · D20
- START A BUSINESS — roll_table_ref · ⤷ roll table
- ACTION SPACE — action_space · D100 · ⤷ roll table
- DICE SPACE — dice_space · D100 · ⤷ roll table
High Risk Path (11 tiles)
- DICE SPACE — dice_space · D100 · ⤷ roll table
- BUY A HOUSE — roll_table_ref · D100 · ⤷ roll table
- BET AGAINST ANOTHER PLAYER — choice
- PAY DAY — payday
- LEVERAGED BUYOUT — inline_table · D20
- 100K — cash_bonus
- INVESTEGATION — inline_table · D20
- BLIND INVESTMENT — inline_table · D6
- ROUGE TRADER — inline_table · D20
- 10K — cash_bonus
- DICE SPACE — dice_space · D100 · ⤷ roll table
Gap Year Path (17 tiles)
- PAY DAY — payday
- SHENANIGANS — roll_table_ref · ⤷ roll table
- DICE SPACE — dice_space · D100 · ⤷ roll table
- TREASURE HUNT (NEED TO MAKE TREASURE MAP) — roll_table_ref · ⤷ roll table
- LOST IN TRANSLATION — event
- MEXICO — roll_table_ref · ⤷ roll table
- AIRPORT SECURITY — inline_table · D20
- AUSTRALIA — roll_table_ref · ⤷ roll table
- PAY DAY — payday
- JAPAN — roll_table_ref · ⤷ roll table
- ACCENT ROULETTE — event
- IRELAND — roll_table_ref · ⤷ roll table
- ACTION SPACE — action_space · D100 · ⤷ roll table
- GERMANY — roll_table_ref · ⤷ roll table
- DICE SPACE — dice_space · D100 · ⤷ roll table
- ITALY — roll_table_ref · ⤷ roll table
- STOP — stop · D8
Education Path (12 tiles)
- PAY DAY — payday
- SCHOLARSHIP — inline_table · D20
- 4 YEAR DAGREE — event
- COMMUNITY COLLAGE — event
- APPRENTICESHIP — inline_table · D20
- DICE SPACE — dice_space · D100 · ⤷ roll table
- STUDY ABROD — inline_table · D20
- POP QUIZ — event
- EXTRACURRICULAR — roll_table_ref · D20 · ⤷ roll table
- ONLINE COURSE — inline_table · D20
- ACTION SPACE — action_space · D100 · ⤷ roll table
- GRADUATION GIFT — inline_table · D20
Relationship/Family (Top) (20 tiles)
- PAY DAY — payday
- DICE SPACE — dice_space · D100 · ⤷ roll table
- ADOPT A PET — roll_table_ref · D100 · ⤷ roll table
- UNCLES CONDO — inline_table · D20
- NEW CITY — roll_table_ref · D100 · ⤷ roll table
- ACTION SPACE — action_space · D100 · ⤷ roll table
- HAVE A BABY — inline_table · D2
- DINNER PARTY — inline_table · D20
- MARRIGE — choice
- WHITE ELEPHANT — inline_table · D6
- FRIENDS WEDDING — inline_table · D20
- NEW JOB — roll_table_ref · ⤷ roll table
- PODCAST — inline_table · D20
- HOBBY — roll_table_ref · D100 · ⤷ roll table
- PERFECT IMPRESSION — inline_table · D20
- BUY A HOUSE — roll_table_ref · D100 · ⤷ roll table
- FAMILY REUNION — inline_table · D20
- HAVE A BABY — inline_table · D2
- ACTION SPACE — action_space · D100 · ⤷ roll table
- AGING PARENTS — inline_table · D20
Relationship/Family (Bottom) (26 tiles)
- PAY DAY — payday
- UNCLES CONDO — inline_table · D20
- ADOPT A PET — roll_table_ref · D100 · ⤷ roll table
- RISKY MOVE — inline_table · D20
- NEW CITY — roll_table_ref · D100 · ⤷ roll table
- ACTION SPACE — action_space · D100 · ⤷ roll table
- HAVE A BABY — inline_table · D2
- DICE SPACE — dice_space · D100 · ⤷ roll table
- SIBLINGS WEDDING — inline_table · D20
- NEIGHBORS PET — inline_table · D20
- SIDE HUSTLE — roll_table_ref · D100 · ⤷ roll table
- BUY A HOUSE — roll_table_ref · D100 · ⤷ roll table
- HOBBY — roll_table_ref · D100 · ⤷ roll table
- HAVE A BABY — inline_table · D2
- PODCAST — inline_table · D20
- MARRIGE — choice
- PAY DAY — payday
- DICE SPACE — dice_space · D100 · ⤷ roll table
- FAMILY VACATION — inline_table · D20
- ADOPT A PET — roll_table_ref · D100 · ⤷ roll table
- FAMILY REUNION — inline_table · D20
- NEW JOB — roll_table_ref · ⤷ roll table
- ACTION SPACE — action_space · D100 · ⤷ roll table
- HOUSE MAINTENANCE — inline_table · D20
- HAVE A BABY — inline_table · D2
- AGING PARENTS — inline_table · D20
Retirement Path (Top) (11 tiles)
- PAY DAY — payday
- INVESTMENT PAID OFF — inline_table · D20
- START A BAND — inline_table · D20
- ACTION SPACE — action_space · D100 · ⤷ roll table
- JURY DUTY — inline_table · D20
- HOBBY — roll_table_ref · D100 · ⤷ roll table
- THE RACES — inline_table · D10
- NEW JOB — roll_table_ref · ⤷ roll table
- BUCKET LIST TRIP — inline_table · D20
- HOME RENOVATIONS — inline_table · D20
- HOSTED THANKSGIVING — inline_table · D20
Retirement Path (Middle) (22 tiles)
- ½ LIFE CRISIS — inline_table · D20
- HORRIBLE HANGOVER — inline_table · D20
- 40TH BIRTHDAY — inline_table · D20
- MYSTERY TATTOO — roll_table_ref · D100 · ⤷ roll table
- UNEXPECTED JOY — inline_table · D20
- PAY DAY — payday
- HOBBY — roll_table_ref · D100 · ⤷ roll table
- HOST CHRISTMAS — inline_table · D20
- BUCKET LIST — inline_table · D20
- RETIREMENT PARTY — inline_table · D20
- SELL HOUSE — roll_table_ref · ⤷ roll table
- DID YOU HEAR? — inline_table · D20
- LOTTERY — inline_table · D20
- FANTASY FOOTBALL — inline_table · D20
- HIGH SCHOOL REUNION — inline_table · D20
- POKER NIGHT — inline_table · D20
- PICKEL BALL — inline_table · D20
- BOWLING NIGHT — inline_table · D20
- INVESTMENT PAID OFF — inline_table · D20
- DICE SPACE — dice_space · D100 · ⤷ roll table
- PAY DAY — payday
- RETIREMENT PARTY — inline_table · D20
Retirement Path (Bottom) (20 tiles)
- PAY DAY — payday
- HOBBY — roll_table_ref · D100 · ⤷ roll table
- FANTASY FOOTBALL — inline_table · D20
- HOSTED THANKSGIVING — inline_table · D20
- HIGH SCHOOL REUNION — inline_table · D20
- SPEEDING TICKET — inline_table · D20
- BOWLING NIGHT — inline_table · D20
- JURY DUTY — inline_table · D20
- PICKEL BALL — inline_table · D20
- THE RACES — inline_table · D10
- NEW JOB — roll_table_ref · ⤷ roll table
- POKER NIGHT — inline_table · D20
- HOME RENOVATIONS — inline_table · D20
- BUCKET LIST TRIP — inline_table · D20
- JOINED FACEBOOK — inline_table · D20
- GOLF TRIP — inline_table · D20
- DENTAL WORK — inline_table · D20
- ACTION SPACE — action_space · D100 · ⤷ roll table
- START A BAND — inline_table · D20
- INVESTMENT PAID OFF — inline_table · D20
Roll tables needed (all PLACEHOLDER)
Sorted by how many tiles use them. Each has banded stand-in entries so the game is playable now.
| Table | Die | Used by # tiles |
|---|---|---|
| DICE SPACE TABLE | D100 | 18 |
| ACTION SPACE TABLE | D100 | 15 |
| your current property | D100 | 8 |
| property table | D100 | 7 |
| JOBS TABLE | D100 | 6 |
| hobby | D100 | 5 |
| D100 BUSINESS TABLE | D100 | 4 |
| Profited Or lost | D100 | 4 |
| sell your | ||
| Pet Table | D100 | 3 |
| Bring the data | D100 | 2 |
| Charm the boss | D100 | 2 |
| item being auctioned | D100 | 2 |
| new city | D100 | 2 |
| shenanigan | D20 | 2 |
| Throw a someone under the bus | D100 | 2 |
| Accept a local recommendation | D100 | 1 |
| Accept a local recommendation | D100 | 1 |
| Accept a local recommendation | D100 | 1 |
| Accept a local recommendation | D100 | 1 |
| Accept a local recommendation | D100 | 1 |
| Accept a local recommendation | D100 | 1 |
| applicant's | D100 | 1 |
| company perk | D100 | 1 |
| Explore the city | D100 | 1 |
| Explore the city | D100 | 1 |
| Explore the city | D100 | 1 |
| Explore the city | D100 | 1 |
| Explore the city | D100 | 1 |
| Explore the city | D100 | 1 |
| gift exchange! | D100 | 1 |
| Go into nature | D100 | 1 |
| Go into nature | D100 | 1 |
| Go into nature | D100 | 1 |
| Go into nature | D100 | 1 |
| Go into nature | D100 | 1 |
| Go into nature | D100 | 1 |
| Karaoke bar | D100 | 1 |
| Mystery Tattoo Table | D100 | 1 |
| Play it safe | D100 | 1 |
| Roll D20. | D100 | 1 |
| Roll D20. | D100 | 1 |
| Side Hustle Table | D100 | 1 |
| Sporting event | D100 | 1 |
| Take the risk | D100 | 1 |
| treasure | D100 | 1 |
| trivia question | D100 | 1 |
| Upscale steakhouse | D100 | 1 |
Open questions for you / your sister
- Win condition isn't stated in the doc — how does the game end and who wins? (Most Wealth? A blend of cash + Love + Wealth at retirement?)
- Age — the D8 at each STOP adds years; is there a maximum age that ends the game?
- Stat meaning — is Wealth a separate point score from cash ($)? Treated that way here.
- Country sub-tables (Explore city / Nature / Local rec) are separate per country (Mexico, Australia, Japan, Ireland, Germany, Italy) — 18 small tables in total.
- Several tables are all-players mini-games (trivia, White Elephant, races) — these need special handling in an async game; worth flagging for Phase 3.
Additional gaps found while integrating this into the game engine
inline_tabletiles have no table content anywhere. 85 of the 211 tiles (40% of the board) are typeinline_table— they carry a die size (e.g.COMPANY RACE DAY, D10) but reference zero external tables, and none of the 48 tables in roll-tables.json are inline (all 48 have asource_doc_id). Whatever content was inline in the original design doc next to these tiles wasn't captured during parsing. Currently these resolve against a generic synthesized placeholder table (same banded shape as the real 48, one per die size, obviously fake numbers) — real content for all 85 is still needed.payday/cash_bonusamounts are undefined. PAY DAY (16 tiles), 100K, 10K, and 401k have no amount specified anywhere in tile-inventory.json or roll-tables.json. Currently using invented placeholder amounts ($2,000 payday; $100,000/$10,000 for the named bonuses; 401k falls into the synthesized-table bucket above) — these are 100% guesses, not derived from anything in the doc.- Multi-table
roll_table_reftiles have no documented combination rule. 22 tiles reference 2–3 tables at once (e.g.PERFORMANCE REVIEWreferences 3), and nothing in the parsed content says how they combine. Currently implemented as "roll and apply every referenced table's effect, summed" — a reasonable guess, but unconfirmed against the actual design doc. - The tile-type vocabulary actually has 9 types, not 7 —
inline_tableandcash_bonusexist alongside payday/action_space/dice_space/roll_table_ref/choice/event/stop.