Queensberry & Capital
-
I'm very excited about this game! Much more now that I have an idea how it works. I have a few questions and suggestions.
CONCEPTS__________
If you hit $0, is it going to be like one of those games where you have no real hope of winning but you drag yourself along for the sake of the other players? I think the promoters should be lifting themselves out of the gutter. The bookies should have minimum bets on all fights and going bankrupt at least once should be common. Then give players the loan shark option. I really think betting, bribing and borrowing would be a nice trinity of transgression.Under Venues & Bribes it says "Requires $50 bribe" and "Requires $150 bribe". Then under Fouls & Exceptions, it says 50/50 chance of raid if bribe was not paid. So I guess it's not required?
Here's an idea: It would be cool if both promoters had the option to pay the bribe but neither of them knew if the other had paid it unless/until the place gets raided.
Can I bribe your fighters to take a dive?
Can you bet on a fight between two fighters from your own stable?
You can't train for Chin. Can you train for Draw?
Can a Tomato Can become a Champion or are Champions born?
CLARIFICATIONS__________
I'm not clear on how the cards work. You use 30 or 36 cards but only one card per round (so 10 or 12) cards? Then it says, "The game draws one cards." Huh?Here's a more concise way to describe the 'ducking' aspect:
If you offer at least 65% in a title challenge to a rival promoter and they decline, your fighter receives a bump (+1) to his Draw as this is considered 'ducking' by the champion.I think "Venues have three tiers." is wrong. Shouldn't it be something like, "Each venue is at one of three tiers."?
Is TKO an actual outcome? Is that marked the same as a KO on a fighter's record?
Does high score after 10 rounds constitute a third win condition?
Is Hall of Fame 10LP or 3LP? The manual says both.
It mentions that hype increases the gate but it doesn't say how much. Knowing that would help make informed decisions.
NITS__________
Could use some page numbers here. FYI, 16 pages is a perfect number for printing booklet style.The 'Scouting Phase' is mentioned once. Should that be the Marketing Phase?
Little things like 'Click' would only apply to the online version.
Under the phase breakdowns where it says 'Elibible Players', it's always 'All Players'
"But Blue is a long shot..." doesn't need the 'But'.
"Can't train a chin." maybe doesn't need the 'a'.
"Wager is incorect" is a strange way to describe losing a bet.
It should be 'versus' or 'vs.' not 'verses'.
@Josh said in Queensberry & Capital:
Does high score after 10 rounds constitute a third win condition?
Oh, Maybe I misunderstood your question to mean win condition for a fight. But now I think you meant win condition for the entire game after 10 years. If that's the case, I'm not sure yet. The game has only been played once and only for a single year by three players. We probably need many, many sessions to find the sweet spot for win conditions. For now, the game has the win conditions in the manual coded in, and then 10 years as the limit to get that done. Let's talk about this on Dev Meet day.
-
@Josh said in Queensberry & Capital:
If you hit $0, is it going to be like one of those games where you have no real hope of winning but you drag yourself along for the sake of the other players? I think the promoters should be lifting themselves out of the gutter.
One difference between this game and those that leave you in a hopeless financial hole is that even if you have $0, as long as you have fighters in your stable, you're just one fight away from a decent payday. In fact, this game should regularly see promoters spend their last dollar, even several times a game. Just remember that fighters are investments. They are walking money trees if you invest in their training and promoting.
@Josh said in Queensberry & Capital:
The bookies should have minimum bets on all fights and going bankrupt at least once should be common. Then give players the loan shark option. I really think betting, bribing and borrowing would be a nice trinity of transgression.
I do have the "loan shark" feature in my back pocket. I'm not going to implement it yet. I want to thoroughly see how well the base balancing works before I add this kind of safety net. The "loan shark" idea came up last Sunday and it's in my notes.
@Josh said in Queensberry & Capital:
Under Venues & Bribes it says "Requires $50 bribe" and "Requires $150 bribe". Then under Fouls & Exceptions, it says 50/50 chance of raid if bribe was not paid. So I guess it's not required?
Bribes are required is you want to be sure the gate $$ income doesn't get confiscated. I just thought "Optional Bribe" didn't sound edgy enough. Thus, I went with "Requires". I want players to feel it's non-negotiable, even though it isn't.
@Josh said in Queensberry & Capital:
Here's an idea: It would be cool if both promoters had the option to pay the bribe but neither of them knew if the other had paid it unless/until the place gets raided.
I get what you're saying. But right now, as it currently is, when you are the organizing promoter selecting the venue, you don't have to tell other promoters whether or not you've paid the bribe and all they see is that you've selected a venue. I think this could already make for some strategies to hurt other promoters. Remember all gate money is confiscated so if you don't have a whole lot to lose in any of the fights, you might want to screw the other promoters out of money they're counting on. Let me see how much Cody exploits the no-pay-bribe and how it works for everyone else. LOL. If we need to add more problems with police raids, we'll do it!
@Josh said in Queensberry & Capital:
Can I bribe your fighters to take a dive?
Not yet. But I'm gonna put this into my back pocket. This might get into the game! Thanks! But bribes to fighters can never be a sure thing. I mean, historically, fighters often reneged when they were bribed. On the promoter's Front Office screen, there could be an option to bribe the fighter, which depending on the amount, adds "Took a Dive" cards to the deck of 30/36 cards (so the deck size grows). The cards get shuffled so you never know if it will actually come up during the fight. As an example, minimum bribe is $100 and adds 5 "Took a Dive" cards to the deck. Cross your fingers and hope it comes up. Every $25 on top of that adds another "Took a Dive" card. $200 would get you 9 cards which makes for a significant chance of the dive.
@Josh said in Queensberry & Capital:
Can you bet on a fight between two fighters from your own stable?
Yes.
@Josh said in Queensberry & Capital:
You can't train for Chin. Can you train for Draw?
Draw just means how well the fighter "draws" a crowd. Although you can spend $75 on "Hype" to increase "Draw", basically that's just paying the printing press guys to print big posters making your fighter look appealing and then paying people to nail those posters all over town. Nothing to do with "training".
@Josh said in Queensberry & Capital:
Can a Tomato Can become a Champion or are Champions born?
There's nothing preventing Tomato Cans from becoming a champion. Their older age, lack of skills and low draw just makes them massive projects requiring a huge $$ investment, probably not affordable for several years unless you win big on a $500 bet on a 3 to 1 underdog and spend what they would need to compete against other contenders for a championship.
@Josh said in Queensberry & Capital:
I'm not clear on how the cards work. You use 30 or 36 cards but only one card per round (so 10 or 12) cards? Then it says, "The game draws one cards." Huh?
Thanks. The wording was wrong in the manual. I fixed it. Here is the correction:
The Fight Deck
A standard fight deck has 30 cards for a 10-round bout (1 card per round, not including
foul cards, with the rest not used).
Title fight decks have 36 cards for a 12-round bout (1 card per round, not including foul
cards, with the rest not used).
Each card shows an outcome: round winner, spectacle or foul (with occasional dice rolls)
Round Resolution
In each round, the game draws 1 card at a time. Based on the deck balance determined by the
fighter stats, the game determines:
Knockdowns: Dice rolls based on chin and power determine knockdowns, knockouts or
survival of both.
Fouls: Rabbit punches, hitting below the belt, etc. are determined by dice rolls
Judges' Scores: After each round, judges score 10–9 or 10–8 (if a knockdown or point
deduction from a foul occurred). The fighter with more accumulated points wins on
decision.@Josh said in Queensberry & Capital:
Here's a more concise way to describe the 'ducking' aspect:
If you offer at least 65% in a title challenge to a rival promoter and they decline, your fighter receives a bump (+1) to his Draw as this is considered 'ducking' by the champion.Nice. I added "champion" to your wording. Other than that, I used your suggestion verbatim.
@Josh said in Queensberry & Capital:
I think "Venues have three tiers." is wrong. Shouldn't it be something like, "Each venue is at one of three tiers."?
Yep.
@Josh said in Queensberry & Capital:
Is TKO an actual outcome? Is that marked the same as a KO on a fighter's record?
On a fighter's record, there is no differentiation. As a side note, TKO's aren't in the card decks yet. That's coming. Basically, a TKO is when: a. the ref stops the fight due to the fighter taking on too much punishment, b. The fighter's corner throws in the white towel. Neither have been coded into the cards/dice rolls yet.
@Josh said in Queensberry & Capital:
Does high score after 10 rounds constitute a third win condition?
Yes. Winning a fight, your fighter can either knockout his opponent or win on the scorecard. The scoring system the game is called the 10-point MUST system. The judges MUST award 10 points to the fighter they think kicked the most ass in that round...even if there wasn't all that much action. 9 points goes to the other fighter. Points deductions (-1 point) come when the fighter is knocked down but gets up OR if the ref, after a previous warning, deducts a point for fouling (head butts, rabbit punches, hitting below the belt, etc.). This is when you see rounds that are scored 10-8 or 10-7...or even 9-9 (when the fighter that wins the round loses a point for getting caught hitting below the belt).
If there was no knockout, all points are tallied and the fighter with the highest point total wins the fight.
@Josh said in Queensberry & Capital:
Is Hall of Fame 10LP or 3LP? The manual says both.
Good catch! It's 3 points. Fixed in the manual.
@Josh said in Queensberry & Capital:
It mentions that hype increases the gate but it doesn't say how much. Knowing that would help make informed decisions.
Not sure how or if I should spell this out in the manual but here it is for you...
The Revenue Formula
The total revenue for a single fight is calculated as follows:
({Red Draw} + {Blue Draw}) X {Venue Multiplier} X 10 {Title Multiplier}
1. Combined Draw: The Draw stats (1–10) of both fighters are added together.
2. Venue Multiplier: Based on where the fight happens:
◦ The Barge: 1x
◦ The Saloon: 2x
◦ The Theater: 3x
3. Base Factor: A constant multiplier of 10 used by the engine.
4. Title Multiplier: If it is a Championship Title fight, the entire revenue is doubled (2x).So if you had a champion with a 10 draw fighting a challenger with a 10 draw at the theater...
{10 + 10} X 3 X 10 X 2 = $ 1,200 total revenue to be split between the two promoters. This is the absolute MAX.
Two low level Tomato cans with 1 "draw" fighting at The Barge...
{1 + 1} X 1 X 10 X 0 = $20 to be split between two promoters, if promoter owned. This is the absolute LOWEST.
@Josh said in Queensberry & Capital:
Could use some page numbers here.
Gotcha. Fixed.
@Josh said in Queensberry & Capital:
The 'Scouting Phase' is mentioned once. Should that be the Marketing Phase?
Fixed. Now correctly says "Market Phase"
@Josh said in Queensberry & Capital:
Little things like 'Click' would only apply to the online version.
@Josh said in Queensberry & Capital:
Little things like 'Click' would only apply to the online version.
Yes. This is the manual for the online version. The physical version will one day have its own manual. There's tons of stuff in this manual that will have to be discarded modified or added to when humans get their dirty hands on the decks of fighter cards and bout cards, LOL.
@Josh said in Queensberry & Capital:
Under the phase breakdowns where it says 'Elibible Players', it's always 'All Players'
I think you meant to say "Eligible", LOL. But yeah. That's on purpose. One of the things I'm proud of in this game is that it is not "turn-based". Literally every minute playing the game players can do shit...or at least have an active interest in. There is not a single part of the game where all players are not involved. I wanted to emphasize this in each and every phase overview.
@Josh said in Queensberry & Capital:
"But Blue is a long shot..." doesn't need the 'But'.
Okay. Removed "but".
@Josh said in Queensberry & Capital:
"Can't train a chin." maybe doesn't need the 'a'.
On purpose to have a sprinkling of humor. I meant "a chin" as in giving it agency. Haha.
@Josh said in Queensberry & Capital:
"Wager is incorect" is a strange way to describe losing a bet.
Fixed.
@Josh said in Queensberry & Capital:
It should be 'versus' or 'vs.' not 'verses'.
Fixed.
said in Queensberry & Capital:
The Revenue Formula
The total revenue for a single fight is calculated as follows:
({Red Draw} + {Blue Draw}) X {Venue Multiplier} X 10 {Title Multiplier}- Combined Draw: The Draw stats (1–10) of both fighters are added together.
- Venue Multiplier: Based on where the fight happens:
◦ The Barge: 1x
◦ The Saloon: 2x
◦ The Theater: 3x - Base Factor: A constant multiplier of 10 used by the engine.
- Title Multiplier: If it is a Championship Title fight, the entire revenue is doubled (2x).
So if you had a champion with a 10 draw fighting a challenger with a 10 draw at the theater...
{10 + 10} X 3 X 10 X 2 = $ 1,200 total revenue to be split between the two promoters. This is the absolute MAX.
Two low level Tomato cans with 1 "draw" fighting at The Barge...
{1 + 1} X 1 X 10 X 0 = $20 to be split between two promoters, if promoter owned. This is the absolute LOWEST.
Forgot to mention that on TOP OF THIS, there's a bonus $$ to the winner.
-
Something I wanted to articulate before we continue tweaks and improvements to the game is that there are some things we can easily add and improve in the online version that would just make for complications and headaches when we translate everything into the physical world. As an example, it may be cool to add Lone Shark feature where you get loans and suffer some sort of consequences when you can't pay it back. Online it is totally doable. But it adds a layer of complexity and becomes an extra thing that, in a physical game, requires the players' attention and maybe some additional actions. Right now, everything mechanics-wise that is currently in the online game can translate to a fairly reasonable representation in a physical version.
Just wanted to say that now so when we meet up this weekend you all can keep this in mind when making suggestions and giving feedback. If you think it can translate to the physical version, it's not complicated and adds to the enjoyment factor, by all means yap away. I think we all want to hear good ideas!!
I pretty much implemented all of Josh's recommendations except this one:
Josh recommended changing the damage, which, at current, increases from 0 ~, to instead start at a specified number and go down, sort of like Health Points (HP) work in games where characters die when it reaches zero.The problem:
The game needs to allow for what I call "damaged beyond use" where the fighter is basically unable to fight. Josh's idea would not translate to the physical version because you could never go negative HP. HP would be represented by little cubes (I'd prefer red ones) like the ones in Pandemic. If you have a starting number of cubes on a fighter card, with enough fights, eventually you have nothing to represent a -2 or -4, whereas the current "damage" system allows you to add more than the 9 damage(DMG) limit with colored cubes. Each one costing $100 to remove from your fighter's card. And since fighters don't die, (with enough money they can get back under 9 damage) I ended up opting for status quo on HP vs DMG. -
Ok dudez, I’m trying to think of the best way to implement the “bribe police to raid” feature. Here are some options…
A. Bribing police for a sure raid of an event costs $_____ (I don’t know what a good price would be). It causes everyone but you to lose 3 LP, wagers and gate revenue. I’m wary that this could get abused and slow down the game’s pace, so what should the price be?
B. No bribing police to raid. Instead, when promoters notice that the Saloon or the Theater have been chosen by the organizing promoter (who doesn’t say if he’s paid the bribe or not), all promoters, including the organizing promoter are given the discreet option to buy insurance at 20% of what it costs to bribe the coppers ($10 for Saloon, $30 for Theater). If a raid should occur, those who bought insurance protect their LP, gate rev and wagers, at the cost of the insurance of course.
C. Bribing police for a sure raid of an event costs $_____. Everyone loses 3 LP, gate revenue and wagers.
On the “bribing a fighter to take a dive” feature, how about for events taking place at…
The Barge – bribe is $100 for your own fighter $125 for an opposing promoter’s
The Saloon – bribe is $500 for your own fighter $625 for an opposing promoter’s
The Theater – bribe is $1500 for your own fighter $1875 for an opposing promoter’s(These seem reasonable, considering a few of you had over $1200)
The bribing promoter loses 1 LP for a successful bribe (the fighter actually takes the dive). Bribing a fighter should come with consequences beyond the bribe money alone. This 1 LP loss could be worth it when a bribe nets you a championship belt (totaling 8 LP) plus a large wager you place on the underdog.
How it would work: depending on the deck balance, for 10 round bouts, when bribing the blue corner fighter in an even 50/50 fight, 6 of the 15 blue cards are removed and replaced with 6 “Take a Dive” cards. Then these are shuffled with the 15 cards of the red fighter.
-
I don’t think you should be allowed to pay the cops to raid the fight. That seems like a very uncommon and counterproductive thing to do. Just abstaining from paying them off is good enough and that way, even if you try to fuck everyone over (like I did), it’s not guaranteed to work (like it didn’t).
Bribing a fighter should be a very rare thing to want to do and a very rare thing to actually succeed in doing. Like you should put up a bunch of money to bribe the fighter to take a dive in a specific round. You shuffle one “take a dive” card into the deck and, if the dive card comes up in the round that you bet on them losing, then it’s a successful bribe. Otherwise, the card is ignored and another is drawn.
-
I don’t think you should be allowed to pay the cops to raid the fight. That seems like a very uncommon and counterproductive thing to do. Just abstaining from paying them off is good enough and that way, even if you try to fuck everyone over (like I did), it’s not guaranteed to work (like it didn’t).
Bribing a fighter should be a very rare thing to want to do and a very rare thing to actually succeed in doing. Like you should put up a bunch of money to bribe the fighter to take a dive in a specific round. You shuffle one “take a dive” card into the deck and, if the dive card comes up in the round that you bet on them losing, then it’s a successful bribe. Otherwise, the card is ignored and another is drawn.
@Josh said in Queensberry & Capital:
I don’t think you should be allowed to pay the cops to raid the fight. That seems like a very uncommon and counterproductive thing to do. Just abstaining from paying them off is good enough and that way, even if you try to fuck everyone over (like I did), it’s not guaranteed to work (like it didn’t).
Bribing a fighter should be a very rare thing to want to do and a very rare thing to actually succeed in doing. Like you should put up a bunch of money to bribe the fighter to take a dive in a specific round. You shuffle one “take a dive” card into the deck and, if the dive card comes up in the round that you bet on them losing, then it’s a successful bribe. Otherwise, the card is ignored and another is drawn.
Sounds to me not worth it to add bribing a fighter. 1 card in the deck for a bunch of money is astronomical odds against getting the dive in a specified round. I'd rather not add it at all. Plus, would we allow all promoters to bribe the same fighter to take a dive in the same fight? This starts to get stupid. LOL. I think it's best we not add this until someone comes up with a mathematically based proposal based on the 30/36 card system and the economic foundation the game has and how it can or should affect LP.
-
Here are the E2E test results. The game appears to be almost in tip-top shape and ready for prime time...
E2E Test Report — Queensberry & Capital
Date: 2026-02-26
Tool: Playwright (Chromium, headless)
Method: Dual browser contexts (Host + Guest) simulating real multiplayer sessions
Summary
Metric Value Journeys Tested 9 / 9 Screenshots Captured 91 E2E Issues Found 3 (0H / 2M / 1L) Code Analysis Issues 13 (5H / 5M / 3L)
Test Results by Journey
Journey Steps Passed Failed Status Lobby Creation & Join 15 14 1* PASS Scouting Draft 15 15 0 PASS Management (no fights) 17 17 0 PASS Wagering 6 6 0 PASS Main Event (with fight) 12 12 0 PASS Newspaper / Gazette 4 4 0 PASS Off-Season 4 4 0 PASS Final Standings 2 2 0 PASS Responsive (3 viewports) 18 18 0 PASS *Lobby "verify confirm dialog" failure was a test selector issue, not an app bug — screenshot confirms dialog rendered correctly with both player names.
Journey Details
1. Lobby Creation & Join
- Host creates lobby, PIN generated (6 uppercase alphanumeric chars)
- Guest joins with PIN, both see each other in waiting room
- Host clicks "Start Game" → confirm dialog shows player count
- Host clicks "Confirm & Start" → both transition to Scouting phase
- Key screenshots:
lobby/host-05-verify-guest-in-lobby.png,lobby/host-06-click-start-game.png
2. Scouting Draft
- Both players see "The Prospect Market" with shuffle animation
- Fighter cards display with portraits, stats, tier, cost, and "Sign for $X" buttons
- Stable breakdown sidebar shows weight class counts
- After drafting, players see "AWAITING ROTATION" waiting state
- Both players leave market and transition to Management
- Key screenshots:
scouting/host-02-fighter-cards-displayed.png,scouting/host-06-waiting-after-pick.png
3. Management (No Fights Path)
- "The Front Office" renders with stable list, management actions, and matchmaking panel
- Host sees "YOU MUST SELECT A VENUE" banner
- Guest sees "WAITING FOR VENUE SELECTION" banner
- Venue selected ("The Barge"), confirmed
- Both click "Proceed (No Fights)" → transitions to Newspaper
- Key screenshots:
management/host-03-select-venue.png,management/guest-02-management-after-venue.png
4. Management (With Fights Path)
- Fighter selected from stable, opponent found in rival list
- "Fight" button (navy blue) clicked → "Confirm Bout" dialog appears
- Bout scheduled, "START THE SHOW" button appears
- Both players proceed → transitions to Wagering
- Key screenshots:
management/host-03-confirm-bout.png
5. Wagering
- "THE BETTING RING" displays with fight card
- Bout shows fighter portraits, names, odds (e.g., x2.36 blue, x2.36 red, x13.02 draw)
- "BET BLUE" / "BET RED" / "DRAW" buttons per bout
- Wager placed: "$25 on Henry Sharkey at x2.36 — payout: $59"
- Cash tracker shows "CASH: $425 | 1 bet placed - $25 total"
- "DONE WAGERING / SKIP TO BOUT" button advances both players
- Key screenshots:
wagering/host-05-wagering-check.png
6. Main Event
- Fight screen shows blue/red corners with fighter names and portraits
- "Round 1 of 10" counter, deck with 30 cards remaining
- Host sees "SOUND THE BELL!" button to advance
- Guest sees "SPECTATING BOUT..." (cannot control fight)
- Combat log shows: "NON-TITLE BOUT. Battling Weaver vs Henry Sharkey. Scheduled for 10 rounds"
- Key screenshots:
main-event/host-07-fight-phase.png,main-event/guest-03-final-state.png
7. Newspaper / Gazette
- "THE PUGILIST GAZETTE" renders with period-appropriate typography
- Header: "Est. 1890 | Vol. 1 | Event 1 of 3 | Price: 2 Cents"
- No-fights headline: "A QUIET YEAR IN THE FIGHT GAME"
- Sections: "Stable Report", "Financial Ledger", "Division Rankings"
- Both Host and Guest see identical content
- Key screenshots:
newspaper/host-05-summary-loaded.png
8. Off-Season
- Phase reached after Newspaper
- "Finish Off-Season" button available
- Both players can proceed
- Key screenshots:
off-season/host-07-current-phase-check.png
9. Responsive Testing
Tested at three viewports: Mobile (375x812), Tablet (768x1024), Desktop (1440x900)
Viewport Home Lobby Scouting Management Status Mobile (375px) OK OK OK (1 card) Layout issues WARN Tablet (768px) OK OK OK (2 cards stacked) OK PASS Desktop (1440px) OK OK OK (3 cards side-by-side) OK PASS - Key screenshots:
responsive/mobile-*.png,responsive/tablet-*.png,responsive/desktop-*.png
Issues Found (E2E Testing)
# Severity Journey Description File Screenshot 1 medium responsive Mobile (375px) header bar text overlaps — "YEAR 1 OF 10" and player name overlap logo area components/HeaderBar.tsxresponsive/mobile-05-scouting-phase.png2 medium responsive Mobile (375px) management layout: "MANAGEMENT" and "MATCHMAKING" column headers crush together, text truncated to unreadable components/PhaseManagement.tsxresponsive/mobile-06-management-phase.png3 low responsive Mobile (375px) scouting: "Funds:" label truncated, dollar amount partially hidden components/PhaseScouting.tsxresponsive/mobile-05-scouting-phase.png
Bug Hunt Findings (Code Analysis)
HIGH Severity
# Description File:Line Impact 1 FightConfig Venue serialization — no validation on guest rejoin; if venueobject is malformed after deserialization, accessingvenue.revenueMultipliercrasheshooks/useGameSync.ts:19-21Guest rejoin crash 2 Race condition in freelance market generation — freelanceMarket.length === 0check is insufficient in multiplayer; guests may get different freelance market if state updates arrive mid-generationapplication/ManagementProvider.tsx:98-111Desync between host/guest 3 Poll filter for FINISH_WAGERING — gte('created_at', wageringStartTimeRef)may pick up stale actions from previous events ifwageringStartTimeRefis set too lateapplication/ArenaProvider.tsx:273-310Premature phase transition 4 Stale closure in isFighterCommitted— refs updated via useEffect have timing gap; two players could accept overlapping purse offers for same fighter within ~50ms windowapplication/ManagementProvider.tsx:74-82, 120-122Duplicate fights with same fighter 5 Missing input validation on purse offer — splitPercenthas no range check (0-100); malicious or buggy client could send invalid valuesapplication/ManagementProvider.tsx:196-211Corrupted game state MEDIUM Severity
# Description File:Line Impact 6 No user-facing error feedback on lobby creation/join failures — Supabase errors logged to console but UI shows no error state; user sees infinite loading context/LobbyContext.tsx:119-122, 141-144UX: silent hang 7 Missing null check in PhaseScouting — when playeris null butmarkethas items, accessingmarket[0].idcould errorcomponents/PhaseScouting.tsx:59-60Potential crash 8 Missing scoutingDoneIdsin dependency array — useEffect at line 78 usesscoutingDoneIdsin logic but doesn't depend on it; "all done" condition may not triggerapplication/ScoutingProvider.tsx:78, 93Stuck scouting phase 9 Venue confirmation override — if no venue is confirmed by management end, code auto-confirms first fight's venue, silently overriding user's selected venue application/ArenaProvider.tsx:194-199Wrong venue for fights 10 Missing belt holder validation in title fight claims — when belt is vacant, claim is queued as "pending" instead of auto-approved application/ManagementProvider.tsx:166-179Confusing UI LOW Severity
# Description File:Line Impact 11 Floating-point wager amounts not validated — amount > player.cashcheck allows non-integer bets; cumulative rounding errors possiblecomponents/PhaseWagering.tsx:62Minor accounting errors 12 No retry logic for failed wager placement — if emitAction('PLACE_WAGER')fails silently (network error), guest thinks bet was placed but host never receives itapplication/WageringProvider.tsx:99-109Lost wagers 13 Missing accessibility attributes on fight cards — no aria-label,role, or keyboard navigation for screen readerscomponents/PhaseFight.tsxAccessibility non-compliance
Screenshots
All saved to:
e2e-screenshots/e2e-screenshots/ ├── lobby/ (15 screenshots) ├── scouting/ (15 screenshots) ├── management/ (12 screenshots) ├── wagering/ (8 screenshots) ├── main-event/ (8 screenshots) ├── newspaper/ (4 screenshots) ├── off-season/ (4 screenshots) ├── standings/ (4 screenshots) └── responsive/ (18 screenshots — 6 per viewport)
Supabase Validation
Supabase tables (
lobbies,game_states,game_actions,players) returned empty results when queried post-test. This is expected behavior — Row Level Security (RLS) policies restrict reads to authenticated users matching the session context. During testing, each browser context had its own anonymous auth session, confirming proper RLS isolation.
Tested Multiplayer Flows
Flow Host Action Guest Action Sync Verified Lobby join Creates lobby + PIN Joins with PIN Both see each other in waiting room Game start Clicks "Confirm & Start" Auto-starts when status=ACTIVE Both enter Scouting simultaneously Scouting draft Drafts fighter Drafts fighter (own pack) Pack rotation syncs between players Venue selection Selects + confirms venue Sees venue confirmed Guest unblocked for management Fight scheduling Schedules bout vs rival N/A (rival stable) Fight card synced to both players Management proceed Clicks "Start the Show" Clicks "Proceed" Both advance to Wagering Wagering Places bet, clicks Done Clicks Done Both advance to Main Event Fight spectating Controls fight (Sound the Bell) Spectates (read-only) Both see same fight state Newspaper Views gazette Views gazette Identical content confirmed Off-season Finishes Finishes Both advance to next year
Report generated by Claude Code E2E Testing Skill
91 screenshots captured across 9 test journeys -
After addressing issues highlighted in the E2E test...
Here's a summary of all changes made:
HIGH SEVERITY- #2 (ManagementProvider.tsx): Added freelanceGeneratedRef guard to prevent double-generation of freelance market. The ref resets when phase leaves MANAGEMENT. - #3 (ArenaProvider.tsx): wageringStartTimeRef now resets to null when phase leaves WAGERING, preventing stale timestamps from carrying over.
- #4 (ManagementProvider.tsx): Changed useEffect to useLayoutEffect for purseOffersRef, venueSelectorIndexRef, and scheduledFightsRef syncing — tighter synchronous updates minimize the
stale-closure gap in isFighterCommitted. - #5 (ManagementProvider.tsx): Added input validation for splitPercent (must be 0-100 number) and fighter IDs (must be present) before processing SEND_PURSE_OFFER actions.
MEDIUM SEVERITY
- #9 (ArenaProvider.tsx): Added console.warn to the venue fallback auto-selection path for debugging visibility.
- #10 (ManagementProvider.tsx): Added validation that the claiming player actually has fighters in the requested weight class before allowing a title claim.
LOW SEVERITY
- #11 (PhaseWagering.tsx): Wager amounts are now floored to integers via Math.floor() before validation and placement.
- #13 (PhaseFight.tsx): Added aria-live="polite" to the combat log, role="status" to the round counter, and aria-label to the fight action button.
RESPONSIVE UI
- #14 (HeaderBar.tsx): Header bar now uses flex-wrap with smaller gap/text on mobile (gap-2 md:gap-6, text-[10px] md:text-sm). Volume slider hidden on mobile.
- #15 (PhaseManagement.tsx): Grid switches from grid-cols-12 to grid-cols-1 on mobile with md: prefixed column spans. Overflow switches to overflow-y-auto on mobile.
- #16 (PhaseScouting.tsx): Info bar now wraps on mobile with smaller text (text-sm md:text-lg). Labels hidden on very small screens via hidden sm:inline.
Skipped (per plan): #1, #6, #7, #8 (already handled/no change needed), #12 (requires deeper emitAction refactor).
-
Update for March 4th 2026
- Added bets on draws
- Added details and fighter types to trade screen fighter lists so you know what you're trading away/to get
- Added more fighter images. There are currently more than 150 unique images with more to come
- Did several end to end tests, identified issues and addressed them
- Refactored the code base again. These have been frequent so they've gone rather smoothly without introducing any bugs or orphaning variables or other issues. E2E tests run after refactoring just to be sure.
- Training costs for speed, power and stamina now tell you the odds of success, which is tied to age. So if you click to spend money and the training fails, the game tells you so.
- There is now no negative cash. Even if you lose all money, the floor is zero dollars. However, if after the last event of a year you are unable to pay stable upkeep(see rule book for costs), you lose 1 Legacy Point.
- Bell sound effect added to the start of a fight in the fight screen
-
Queensberry & Capital
Mini Strategies & Tips
Building Your Stable
Before signing fighters in the prospect market, have a plan. Ask yourself: Do you want to concentrate resources on one or two elite fighters? Do you want representation across multiple weight classes? The answer shapes every decision you make as a promoter.
Consider the value of stablemates — fighters who exist primarily to fill out your bouts, letting you keep most of the gate revenue and all of the Legacy Points earned. Not every fighter needs to be a contender.
In the off-season, explore trades with other promoters. If you're missing fighters in certain weight classes, a well-timed deal can round out your stable without dipping into the prospect market. A promoter willing to let go of redundant talent may be just the partner you need. A well-rounded stable puts you in position to challenge for championship belts across more divisions.
Scouting & Matchmaking
Never underestimate the power of scouting. Knowing the skills and chin of both your own fighters and those in rival stables gives you a decisive edge when arranging bouts. Smart matchmaking means putting your fighters in the best position to win — and winning earns Legacy Points.
That said, a strategically lopsided bout isn't always a waste. You can make money betting against your own overmatched fighter — just remember that losses don't earn LP, and too many can set your stable back.
Training & Development
Investing in training is never a guarantee of improvement, but it's one of the best bets in the business. The younger the fighter, the better the odds that hard work in the gym pays off. Prioritize development early, and the dividends will come.
Managing Your Finances
Everyone's cash on hand is kept secret — including yours. Be aware that rival promoters may be quietly stockpiling cash and converting it into Legacy Points that don't appear in the standings. Don't be caught off guard.
Bribes & the Police
You are never required to disclose whether you've paid off the police. Use this to your advantage — but don't burn that trust early. A well-timed police raid can deal serious damage to an opponent's operation right when it hurts them most. Patience here can be a powerful weapon.
Choosing Your Venue
If you select the Saloon or Theater as your venue, make sure the fighters in the main event and co-main event have a high Draw rating. The bigger the names, the bigger the gate. Booking low-draw fighters into premium venues is money left on the table.
Protecting Your Fighters
Keep a close eye on accumulated damage. Any fighter who enters the new year carrying 9 or more Damage is forced into retirement. Losing a popular fighter — one with a Draw of 7 or higher — doesn't just hurt your roster, it costs you Legacy Points. Manage wear and tear carefully, especially for your top draws.
The Underdog Gambit
Underdogs always have a puncher's chance.
If an opposing promoter holds a championship belt and is closing in on 50 LP, consider sending your best fighter as a challenger and betting big on him as the underdog. The odds won't be in your favor, but the math can be compelling: a win earns up to 8 Legacy Points for claiming the belt, and your wager pays out at long-odds — potentially equaling even more LP. Meanwhile, your opponent drops 5 LP when the championship changes hands.
It's an all-or-nothing play. But when your back is against the wall, sometimes a long shot is exactly what you need.
Good luck at the fights.
-
(This was written by Gemini 3 Flash. I checked it for accuracy) This is CURRENTLY how the fight decks are built and how the fighter's attributes interact with the cards to determine outcomes, whether by round or throughout the fight...
How Skills Work in Queensberry Capital
In Queensberry Capital, a fighter's skills aren't just numbers on a profile; they are the mathematical blueprints that build the Bout Deck. Understanding how Speed, Power, and Stamina interact is critical for building a championship roster and predicting the flow of a fight.
️ The Foundation: The Bout DeckEvery fight is driven by a deck of cards (30 for non-title bouts, 36 for Championship fights).
- Action Cards: The owner wins the round (scored 10-9).
- Spectacle Cards: Triggers a "Big Moment" — a 3d6 dice roll that can result in a KO, Knockdown, or an Escape.
- Foul Cards: The referee checks for rule-breaking (warnings or point deductions).
Speed & Power: Dominating the DeckWhile Speed and Power serve different tactical purposes, they both contribute to your Deck Share (how many cards in the deck "belong" to you).
The Formula:
Total Skill = Speed + Power
A fighter's share of the deck is determined by their skill relative to their opponent.- Floor: 30% (You will always own at least 30% of the deck, regardless of how outclassed you are).
- Ceiling: 70% (You can never own more than 70%, ensuring the opponent always has a puncher's chance).
Speed: The Decision MakerSpeed's primary role is increasing your volume without necessarily increasing the danger. High speed ensures you own more cards than your opponent, making you the favorite to win on the judges' scorecards if the fight goes the distance.
Power: The Game ChangerPower is a double-threat. Like Speed, it increases your share of the deck, but it also determines the lethality of your cards. High Power converts your "Action" cards into "Spectacle" cards.
Power Stat Spectacle Cards (KO Chances) 1–2 0 3–4 1 5–6 2 7–8 3 9–10 4
🫁 Stamina: The Late Round Trap
Stamina is unique because it doesn't affect the deck at the start of the fight. Instead, it acts as a Fatigue Guard in the second half of the deck (representing the "championship rounds").
The Fatigue Rule:
If a fighter has low stamina, their own Action cards have a chance to "flip" into Opponent Spectacle Cards.The Math:
(10 - Stamina) * 3% chance per cardStamina Chance to Flip per Card 10 0% (Iron Lungs) 5 15% 2 24% (Gasping for air) This means a tired fighter literally creates openings for their opponent, even if that opponent has low Power.
Visualizing with Sample FightsCase 1: The Out-Boxer vs. The Puncher
Red Corner (Speed 9, Power 3) vs. Blue Corner (Speed 3, Power 9)
- The Deck: Both have 12 total skill points, so they split the deck 15-15.
- Red's Advantage: Red has only 1 Spectacle card. They are content to jab and move. They will likely win the majority of the "Action" cards and take a 10-9 lead in most rounds.
- Blue's Advantage: Blue has 4 Spectacle cards. Even though they own the same number of cards as Red, Blue's cards are 4x as likely to end the fight instantly.
- The Outcome: Red is the favorite for a Decision, but Blue is the favorite for a KO.
Case 2: The "Burn-Out" Prospect
Red Corner (Speed 5, Power 5, Stamina 10) vs. Blue Corner (Speed 9, Power 9, Stamina 2)
- Early Fight: Blue is a nightmare. With 18 skill points against Red's 10, Blue hit the 70% ceiling. Blue owns 21 cards to Red's 9. Blue will likely dominate the first 5 rounds and score at least one knockdown.
- Late Fight: Blue hits the floor with 2 Stamina. In the second half of the deck, Blue's 21 cards start flipping. Statistically, ~5 of Blue's winning rounds will turn into KO opportunities for Red.
- The Outcome: If Red can survive the early "storm," Blue will gas out, and Red will have multiple chances to steal a comeback KO against a defenseless opponent.
Summary TableStat Increases Deck Volume Increases KO Threat Protects Late Game Speed
Yes
No
NoPower
Yes
Yes
NoStamina
No
No
YesNote: Chin is your final layer of defense. It doesn't change the deck, but it determines the "Difficulty" of the 3d6 roll when a Spectacle card is flipped. High Chin makes it harder for the opponent to find the KO.
-
How Skills Work in Queensberry Capital
In Queensberry Capital, a fighter's skills aren't just numbers on a profile; they are the mathematical blueprints that build the Bout Deck. Understanding how Speed, Power, and Stamina interact is critical for building a championship roster and predicting the flow of a fight.
️ The Foundation: The Bout DeckEvery fight is driven by a deck of cards (30 for non-title bouts, 36 for Championship fights).
- Action Cards: The owner wins the round (scored 10-9).
- Spectacle Cards: Triggers a "Big Moment" — a 3d6 dice roll that can result in a KO, Knockdown, or an Escape.
- Foul Cards: The referee checks for rule-breaking (warnings or point deductions).
Speed & Power: Dominating the DeckWhile Speed and Power serve different tactical purposes, they both contribute to your Deck Share (how many cards in the deck "belong" to you).
The Formula:
Total Skill = Speed + Power
A fighter's share of the deck is determined by their skill relative to their opponent.- Floor: 30% (You will always own at least 30% of the deck, regardless of how outclassed you are).
- Ceiling: 70% (You can never own more than 70%, ensuring the opponent always has a puncher's chance).
Speed: The Decision MakerSpeed's primary role is increasing your volume without necessarily increasing the danger. High speed ensures you own more cards than your opponent, making you the favorite to win on the judges' scorecards if the fight goes the distance.
Power: The Game ChangerPower is a double-threat. Like Speed, it increases your share of the deck, but it also determines the lethality of your cards. High Power converts your "Action" cards into "Spectacle" cards.
Power Stat Spectacle Cards (KO Chances) 1–2 0 3–4 1 5–6 2 7–8 3 9–10 4
🫁 Stamina: The Fatigue Guard
Stamina determines how long a fighter can maintain their full defensive capability. Once the current round exceeds a fighter's Stamina stat, their Chin degrades by 1 point per extra round.
The Fatigue Rule:
Chin Penalty = max(0, Current Round - Stamina)Effective Chin = max(1, Base Chin - Chin Penalty)
Stamina Full Chin Through Round 8 Chin (Base 
Round 10 Chin (Base 
10 Round 10 8 8 7 Round 7 7 5 5 Round 5 5 3 This means a tired fighter becomes increasingly vulnerable to knockouts in late rounds, even against opponents with lower Power. A fighter with Stamina 10 stays at full effectiveness for a standard 10-round bout, only losing Chin in Rounds 11-12 of a Championship fight.
Visualizing with Sample FightsCase 1: The Out-Boxer vs. The Puncher
Red Corner (Speed 9, Power 3) vs. Blue Corner (Speed 3, Power 9)
- The Deck: Both have 12 total skill points, so they split the deck 15-15.
- Red's Advantage: Red has only 1 Spectacle card. They are content to jab and move. They will likely win the majority of the "Action" cards and take a 10-9 lead in most rounds.
- Blue's Advantage: Blue has 4 Spectacle cards. Even though they own the same number of cards as Red, Blue's cards are 4x as likely to end the fight instantly.
- The Outcome: Red is the favorite for a Decision, but Blue is the favorite for a KO.
Case 2: The "Burn-Out" Prospect
Red Corner (Speed 5, Power 5, Stamina 10) vs. Blue Corner (Speed 9, Power 9, Stamina 2)
- Early Fight: Blue is a nightmare. With 18 skill points against Red's 10, Blue hit the 70% ceiling. Blue owns 21 cards to Red's 9. Blue will likely dominate the first 5 rounds and score at least one knockdown.
- Late Fight: Blue's 2 Stamina catches up. Starting Round 3, Blue's Chin degrades by 1 per round. By Round 8, Blue's effective Chin has dropped by 6 points, making them extremely vulnerable to knockouts — even from Red's modest Power.
- The Outcome: If Red can survive the early "storm," Blue's collapsing Chin means even a weak punch can end the fight in the championship rounds.
Summary TableStat Increases Deck Volume Increases KO Threat Protects Late Game Speed
Yes
No
NoPower
Yes
Yes
NoStamina
No
No
YesNote: Chin is your final layer of defense. It determines the "Difficulty" of the 3d6 roll when a Spectacle card is flipped. High Chin makes it harder for the opponent to find the KO. However, Chin degrades in late rounds once a fighter exceeds their Stamina — making Stamina the key to maintaining that defense.
-
How Skills Work in Queensberry Capital
In Queensberry Capital, a fighter's skills aren't just numbers on a profile; they are the mathematical blueprints that build the Bout Deck. Understanding how Speed, Power, and Stamina interact is critical for building a championship roster and predicting the flow of a fight.
️ The Foundation: The Bout DeckEvery fight is driven by a deck of cards (30 for non-title bouts, 36 for Championship fights).
- Action Cards: The owner wins the round (scored 10-9).
- Spectacle Cards: Triggers a "Big Moment" — a 3d6 dice roll that can result in a KO, Knockdown, or an Escape.
- Foul Cards: The referee checks for rule-breaking (warnings or point deductions).
Speed & Power: Dominating the DeckWhile Speed and Power serve different tactical purposes, they both contribute to your Deck Share (how many cards in the deck "belong" to you).
The Formula:
Total Skill = Speed + Power
A fighter's share of the deck is determined by their skill relative to their opponent.- Floor: 30% (You will always own at least 30% of the deck, regardless of how outclassed you are).
- Ceiling: 70% (You can never own more than 70%, ensuring the opponent always has a puncher's chance).
Speed: The Decision MakerSpeed's primary role is increasing your volume without necessarily increasing the danger. High speed ensures you own more cards than your opponent, making you the favorite to win on the judges' scorecards if the fight goes the distance.
Power: The Game ChangerPower is a double-threat. Like Speed, it increases your share of the deck, but it also determines the lethality of your cards. High Power converts your "Action" cards into "Spectacle" cards.
Power Stat Spectacle Cards (KO Chances) 1–2 0 3–4 1 5–6 2 7–8 3 9–10 4
🫁 Stamina: The Fatigue Guard
Stamina determines how long a fighter can maintain their full defensive capability. Once the current round exceeds a fighter's Stamina stat, their Chin degrades by 1 point per extra round.
The Fatigue Rule:
Chin Penalty = max(0, Current Round - Stamina)Effective Chin = max(1, Base Chin - Chin Penalty)
Stamina Full Chin Through Round 8 Chin (Base 
Round 10 Chin (Base 
10 Round 10 8 8 7 Round 7 7 5 5 Round 5 5 3 This means a tired fighter becomes increasingly vulnerable to knockouts in late rounds, even against opponents with lower Power. A fighter with Stamina 10 stays at full effectiveness for a standard 10-round bout, only losing Chin in Rounds 11-12 of a Championship fight.
Visualizing with Sample FightsCase 1: The Out-Boxer vs. The Puncher
Red Corner (Speed 9, Power 3) vs. Blue Corner (Speed 3, Power 9)
- The Deck: Both have 12 total skill points, so they split the deck 15-15.
- Red's Advantage: Red has only 1 Spectacle card. They are content to jab and move. They will likely win the majority of the "Action" cards and take a 10-9 lead in most rounds.
- Blue's Advantage: Blue has 4 Spectacle cards. Even though they own the same number of cards as Red, Blue's cards are 4x as likely to end the fight instantly.
- The Outcome: Red is the favorite for a Decision, but Blue is the favorite for a KO.
Case 2: The "Burn-Out" Prospect
Red Corner (Speed 5, Power 5, Stamina 10) vs. Blue Corner (Speed 9, Power 9, Stamina 2)
- Early Fight: Blue is a nightmare. With 18 skill points against Red's 10, Blue hit the 70% ceiling. Blue owns 21 cards to Red's 9. Blue will likely dominate the first 5 rounds and score at least one knockdown.
- Late Fight: Blue's 2 Stamina catches up. Starting Round 3, Blue's Chin degrades by 1 per round. By Round 8, Blue's effective Chin has dropped by 6 points, making them extremely vulnerable to knockouts — even from Red's modest Power.
- The Outcome: If Red can survive the early "storm," Blue's collapsing Chin means even a weak punch can end the fight in the championship rounds.
Experience Milestones: Free Skill PointsTraining costs money — but there's nothing like hands-on ring experience. Every 3 fights (win, lose, or draw), a fighter earns a free skill point that the promoter can assign to Speed, Power, or Stamina.
Rules
Rule Detail Trigger Every 3rd fight (3rd, 6th, 9th, etc.) Cost FREE — no cash required Max Cap If Speed, Power, and Stamina are all at 10, no point is awarded Age Gate Fighters over 30 cannot use the point on Speed — only Power or Stamina Non-Transferable The point must be used on the fighter who earned it How You'll Know
- The Pugilist Gazette announces the milestone after each qualifying fight
- A prominent banner appears at the top of the Front Office when a fighter has earned a skill point
- A
badge appears on the fighter's card in your stable until the point is spent - The Experience Reward panel appears above the Training Camp, showing three FREE buttons for Power, Speed, and Stamina
Strategic Implications
- Signing young fighters with a long career ahead means more free skill points over time
- Tomato Cans and Journeymen who survive 3 fights become meaningfully better — a prospect builder's dream
- Old fighters (31+) can still improve Power and Stamina, but Speed is locked — plan accordingly
Summary TableStat Increases Deck Volume Increases KO Threat Protects Late Game Speed
Yes
No
NoPower
Yes
Yes
NoStamina
No
No
YesNote: Chin is your final layer of defense. It determines the "Difficulty" of the 3d6 roll when a Spectacle card is flipped. High Chin makes it harder for the opponent to find the KO. However, Chin degrades in late rounds once a fighter exceeds their Stamina — making Stamina the key to maintaining that defense.
-
Changelog — March 7, 2026
Post-playtest fixes addressing 10 issues identified during manual testing.
Changes
-
PIN: Exclude confusing characters + copy button — Lobby PINs now use
23456789ABCDEFGHJKLMNPQRSTUVWXYZ(no 0/O/1/I). Added "Copy PIN" button to the waiting room. -
Scouting: Show who we're waiting for — "AWAITING ROTATION" replaced with player names, e.g. "Waiting for Josh, Fidel and Cody".
-
Gazette: Pre-fight odds — Odds now appear next to fighter names in the Gazette (e.g.
1.56 James Tunney vs. Wayne O'Leary 2.72). AddedredOdds/blueOddstoFightResultSchema. -
Trade rejection: More visible — Rejection modal is now larger with pulsing border. Bell sound plays when an offer is rejected.
-
Bell sound reliability —
soundManager.warmup()called during wagering interactions (corner selection, placing bets) to unlock browser AudioContext before fight phase. Bell trigger retries once after 300ms if first attempt is blocked by autoplay policy. -
All modes: 3 events per year — Removed player-count scaling (was 4 for 3p, 5 for 4p). All modes now run exactly 3 events per year.
-
Bribe auto-confirms venue — Clicking "Pay Bribe" now automatically confirms the venue, skipping the separate "Confirm Venue Choice" step.
-
Free skill bonus: 3-player fix — Fixed shallow copy bug in fight result processing —
recordandstatsobjects are now deep-copied to prevent mutation of original fighter references across sequential bouts. Added console logging for experience milestone checks. -
9+ DMG fighters fully blocked from competition — Own-stable fighters with 9+ DMG excluded from sparring opponent lists. Incoming challenge offers for 9+ DMG fighters show warning and disable the Accept button. Stable panel shows "Too Damaged" badge on broken fighters.
-
"You are in charge" banner — Multiplayer fight controller sees a dismissible gold banner on the first bout: "You Are In Charge of Running the Bouts!" with instructions to use Sound the Bell or Auto-Play.
Files Modified
context/LobbyContext.tsx— PIN generationcomponents/PhaseSetupMultiplayer.tsx— Copy PIN buttoncomponents/PhaseScouting.tsx— Waiting-for namesdomain/schemas/game.schema.ts— redOdds/blueOdds fieldsapplication/ArenaProvider.tsx— Odds in fight results, deep copy fix, milestone loggingcomponents/PhaseSummary.tsx— Odds display in Gazettecomponents/PhaseManagement.tsx— Rejection sound/styling, bribe auto-confirm, 9+ DMG guardscomponents/PhaseWagering.tsx— Audio warmup during interactionscomponents/PhaseFight.tsx— Bell retry, controller bannerapplication/PhaseProvider.tsx— Fixed events to 3
-
Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better 💗
Register Login