Sissejuhatus lobbysse¶
Lobby on ootamisala mitmikmängus, kuhu mängijad satuvad enne mängu algust. See toimib ooteruumina, kus mängijad saavad mitte ainult koguneda ja teisi mängijaid näha, vaid ka valida erinevaid sätteid, näiteks kaarti või raskustaset, ning moodustada meeskondi. Lisaks saavad mängijad seal otsustada, millal mängu alustada.
Milleks lobby vajalik on?¶
Lobby võimaldab:
mitut mängu korraga
mängijate eraldamist erinevatesse mängudesse
mängijatel liituda ja lahkuda enne mängu algust
Ilma lobbita oleks kõik mängijad samas mängus.
Mängija olek serveris¶
Server peab teadma, kuhu mängija saadetud andmed suunata. Tavaliselt kasutatakse selleks identifikaatorit, näiteks gameId, mis näitab mängija hetkeolekut.
Serveri poolel eristatakse mängijaid oleku järgi:
gameId = 0— mängija on lobbisgameId > 0— mängija on mängus
See aitab serveril kiiresti otsustada, kuidas kliendi paketti töödelda.
Näiteks: server saab paketi, loeb sealt gameId väärtuse ning suunab selle vastavalt kas lobby-sse
(gameId = 0) või mänguinstantsi (gameId > 0).
Peamised osad lobby süsteemis¶
Lobby süsteem koosneb kolmest põhiosast:
Lobby— hoiab mängijaid, kes ootavad mängu algust ja tegeleb uute mängude loomisegaGame— esindab ühte aktiivset mänguServer— võtab vastu paketid ja suunab need õigesse kohta
Kasuta järgmisi peatükke. Lõpuks peaks olema täiesti töötav lobbi, kuhu saavad mängijad siseneda ja väljuda sellest.
Kui tekkivad probleemid, siis saab avada originaalkoodi ja otsida mis läks valesti.