Help and problem reports
Settings has a Help button at the left of the account row (src/game/menu/helpButton.ts). It opens a dialog with two choices:
- Read the FAQ opens https://nitrolegend.com/faq (
site/src/routes/faq.tsx, answers insite/src/components/faq/faqItems.tsx). When a system an answer describes changes (fuel, linking, gold), update the answer too. - Report a problem gathers a report and hands it to a sender.
The report
Section titled “The report”src/game/player/support/problemReport.ts builds a ProblemReport:
| Field | Source |
|---|---|
| Player | the race server’s user id (/api/profile through player/account/userId.ts); “not signed in” offline or in a build without the server |
| Game | VITE_BUILD, the commit count and short hash set by vite/config.prod.mjs (the count is also the Android versionCode), then the build target; “dev” under npm run dev |
| Device | the browser’s user agent and screen size |
A ReportSender takes the report. The only one today is mailSender.ts: it opens the player’s mail app to info@nitrolegend.com with the report under a line asking what happened. Both native shells pass a mailto: link to the system. The player can add a screenshot and gets an answer by mail.
The button never knows which sender runs, so a sender that posts reports to the race server (and later to a Claude connector that triages them) can replace the mail one without touching Settings (docs/TODO.md).