5 Multiplayer server skabelon

Lad os med udgangspunkt i skabelonen med websockets, prøve at sætte noget funktionalitet op til et lille multiplayer spil.

Her skal vi holde tungen lige i munden i begyndelsen. Hvad gør serveren – og hvad gør klienterne? Vi er jo vant til at programmere javascript således, at klienten gør alt arbejdet. Hvis vi vil bevæge en cirkel på skærmen, bruger vi fx mouseX og mouseY. Hvis vi ville lave en two-player på samme tastatur, kunne vi bruge tasterne WASD osv.

Den går ikke her. For at gøre det så enkelt som muligt, er det bedre at lade serveren håndtere alle input fra alle klienter. Serveren modtager altså input fra klienterne og sender dem tilbage og rundt. Klienterne på deres side, sørger for at bruge disse input til at vise alle spilleres bevægelser. Ja?

Man kan kort sagt sige, at

  • vi bruger server.js til at holde styr på spilmekanikken – alle controls (også brugernes egne bevægelser) broadcastes fra serveren
  • klienterne skal vise spillet til brugerne vha beskeder fra serveren
  • klienterne skal sende comand-controls (fx brugerens tastatur input) til serveren
  • serveren skal broadcaste disse tastaturinput, så klienterne kan vise hvad der sker i spillet

Kod videre på dit projekt fra de første indlæg, eller…

Hent færdigt projekt her

Leave a comment

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *