BEEF ISLAND RACING — CLOUDFLARE DEPLOYMENT Island Customs 0.3.0 | Hosting package 0.3.0-cloudflare.1 QUICKEST UPLOAD — CLOUDFLARE PAGES 1. In Cloudflare, open Workers & Pages and choose Create application. 2. Choose Pages / Get started / Drag and drop your files (wording may vary). 3. Enter a project name, for example beef-island-racing. 4. Upload Beef_Island_Racing_Cloudflare_Full_Game.zip directly. 5. Select Deploy site / Save and Deploy. Open the published site address. The upload ZIP already has index.html at its root. Do not upload the SOURCE PROJECT ZIP as a static site. If you extract the upload ZIP, select the folder that directly contains index.html. This is a prebuilt game: no build command, framework preset, npm install, R2 bucket, secret or API key is needed for solo play. For an existing Pages project choose Create a new deployment. Dashboard drag/drop is for Direct Upload projects; Git-integrated projects can use Wrangler instead. CLOUDFLARE WORKERS The separate Cloudflare Project ZIP includes public/ and wrangler.jsonc. Extract it, open a terminal in the project root, then: npx wrangler@4 login npx wrangler@4 deploy The configuration deploys public/ only as Workers Static Assets. No Worker script or paid binding is required by this package. It does not deploy the Node server. For local hosting through Wrangler: npx wrangler@4 dev COMPLETE CURRENT GAME CONTENT - Airport Straight / parking / venue, all ten procedural car definitions. - Six boss chapters, 24 career events, 72 mastery stars. - Story progression, practice/time attacks, local saves and records, replay. - Island Customs: tires, tint, colors/finishes, muffler sound/finish presets, engine stages, gearbox upgrades, manual/automatic shift control, NOS, skirt/diffuser kits, underglow, rims, rim fitment and caliper colors. - Keyboard, touch and implemented standard gamepad mappings. - Existing private Spec-duel/WebRTC client code remains in the game. All runtime solo code, car geometry recipes, shading data and embedded typefaces remain in index.html. No loose font files are included. The independent configuration file is deployment-config.js. Research photos and the full editable source/server are preserved in the separate source project, not required for runtime solo play. ONLINE MULTIPLAYER — NOT STARTED BY THE ZIP This upload serves the game, not a running multiplayer service. The unchanged Node WebSocket server is in game-source/server/ in the full project. It must run separately behind HTTPS/WSS. Read its README before controlled private tests. Set BIR_HOST, BIR_PORT and BIR_ALLOWED_ORIGINS appropriately. The allowed origin must exactly match this game's published HTTPS origin. Proxy /ws upgrades. Set multiplayerUrl in public/deployment-config.js (or deployment-config.js in the upload ZIP), for example wss://YOUR_RACE_SERVER/ws, and redeploy. You can also paste the WSS address into the game's Online dialog at runtime. Do not put private tokens or permanent TURN credentials in public files. The legacy local server can be run from game-source/server using npm ci then npm start. It is anonymous unranked private alpha code, not a public production multiplayer platform. Online rules remain Equalized Spec; tuned power/NOS and new custom cosmetics are not synchronized for multiplayer. Peer voice is opt-in and not a production media-server/moderation solution. Secure Internet voice may need TURN configuration; no TURN service or credits are included. GAME SCOPE Performance upgrades apply to tuned time attacks. The career retains its calibrated event tunes/loaners. Saves/credits are local browser data, not cloud accounts. No public accounts, ranked matchmaking, shared cloud saves or global leaderboard service is created by this deployment. No Higgsfield film is included; the game's skippable in-engine introductions remain intact. MOVE YOUR SAVE Before changing from a local HTML or old domain, export your save in Settings. After deploying, import it through Settings on the new domain. Browser saves are origin-specific. Keep a backup. Moving the files does not copy localStorage. SECURITY / CACHING _headers includes a content policy that permits the existing blob-module loader, data images/typefaces and configured WSS networking, plus MIME/referrer and permissions headers. Cache revalidation is used so updates are not permanently pinned in browser caches. No service worker or automatic offline cache was added. Do not enable a new site script-rewriting optimization without testing the game. VALIDATION qa/ in the source project contains this session's evidence. 42 original logic tests and 13 upgrade tests were rerun successfully. Embedded module payloads are unchanged. All deploy files are below Cloudflare's 25 MiB per-file limit; file count and ZIP integrity are checked by the packaging verifier. A real browser smoke test was attempted but localhost navigation was blocked with ERR_BLOCKED_BY_ADMINISTRATOR. This package is not a new visual certification and is not yet deployed. Original AO fallback / visual limitations remain in docs/Garage_Release_Readiness.md. Test the published site on real devices. AFTER UPLOAD Open the homepage, Career, Garage and a time attack. Verify a purchase, tint, rim/body previews, a clean NOS run and a save export/import. Test microphone permission only when a secure external private-duel service is configured. Use the browser's WebGL-enabled mode; if a stale build appears, hard refresh. OFFICIAL DEPLOYMENT REFERENCES (checked 2026-11-03) https://developers.cloudflare.com/pages/get-started/direct-upload/ https://developers.cloudflare.com/pages/platform/limits/ https://developers.cloudflare.com/pages/configuration/headers/ https://developers.cloudflare.com/workers/static-assets/ https://developers.cloudflare.com/workers/static-assets/binding/