Det har projektet kor nu med en enkel multiplayer-v1:
- Frontend: Vite + Three.js
- Hosting: Cloudflare Pages
- Realtime-backend: Cloudflare Worker + Durable Object
- Lobbys: tva fasta rum,
mainochsecondary
- Installera beroenden:
npm install- Starta multiplayer-backenden:
npm run worker:dev- Starta frontenden i en ny terminal:
npm run dev- Frontenden letar efter
VITE_MULTIPLAYER_ORIGINi denna ordning:
import.meta.env.VITE_MULTIPLAYER_ORIGIN- annars
http://127.0.0.1:8787lokalt - annars samma origin som sidan
Om du vill vara explicit kan du skapa en .env fil utifran .env.example.
Worker-koden ligger i worker/ och Durable Object-bindningen finns i worker/wrangler.toml.
Deploy:
npx wrangler login
npm run worker:deployEfter deploy far du en Worker-URL i stil med:
https://s25-ultra-poop-multiplayer.<ditt-subdomain>.workers.dev
API som frontenden anvander:
GET /api/lobbiesGET /connect/mainGET /connect/secondary
- Lagg projektet i GitHub.
- Skapa ett nytt Pages-projekt via Git integration.
- Anvand dessa build-installningar:
- Build command:
npm run build - Build output directory:
dist - Root directory: repo-roten
- Lagg till denna env-var i både
PreviewochProduction:
VITE_MULTIPLAYER_ORIGIN=https://s25-ultra-poop-multiplayer.<ditt-subdomain>.workers.dev
- Spara och trigga en ny deploy.
Det viktiga ar ordningen:
- Deploya Workern forst.
- Kopiera Worker-URL:en.
- Satt
VITE_MULTIPLAYER_ORIGINi Pages. - Deploya Pages igen.
- Startmeny med
HuvudlobbyochSekundar lobby - Lobby-counts via
/api/lobbies - WebSocket-anslutning till Durable Object per lobby
- Fargkodade remote-spelare
- Minecraft-liknande spelare med egna namn och uppladdade klassiska 64x64-skins
- Realtime synk av position, yaw och move amount
- Interpolation av remote-spelare for mjukare rorelse
- Reset av lobby-state nar sista spelaren lamnar
npm run buildnpx wrangler deploy --dry-run --config worker/wrangler.toml- Lokalt test av
/api/lobbies - Lokalt WebSocket-test for
welcome, pose-broadcast och clean disconnect