Het ontwerpen van spellen met Game Maker
Opzetten en joinen van sessies
Als je verbinding hebt met een netwerk, kunnen daar meerdere spellenbezig zijn. Deze spellen noemen we sessies. Deze verschillende sessies kunnen van hetzelfde spel of van verschillende spellen zijn. Een spelmoet zichzelf uniek kunnen identificeren. Gelukkig doet Game Maker dit voor je. Het enige dat je moet weten is dat als je de game-id in het opties scherm veranderd, ook de identificatie word veranderd. Op deze manier kun je voorkomen dat mensen met oude versies tegen mensen met nieuwe versies gaan spelen.Als je een nieuw multiplayer spel start, moet je een sessie maken. Hiervoor gebruik je de volgende functie:
mplay_session_create(sesname, playnumb, playername) Maakt een nieuwe sessie op de huidige verbinding. sesname is een regel die de naam van de sessie bevat. playnumb is het maximale aantal spelers (gebruik 0 voor onbeperkt). playername is je naam als speler. Geeft terug of het succesvol was.
Eén speler moet een spel opzetten. De andere speler(s) van het spelmoeten bij deze sessie komen (joinen). Dit is iets gecompliceerder. Je moet eerst kijken welke sessies er beschikbaar zijn, en er dan één kiezen om te joinen. Er zijn hiervoor drie belangrijke functies:
mplay_session_find() Zoekt alle sessies die nog steeds spelers accepteren en geeft het aantal sessies terug.
mplay_session_name(numb) Geeft de naam terug van het sessie nummer opgeslagen in 'numb' (0 is de eerste sessie). Deze functie kan alleen gebruikt worden nadat de vorige functie is gebruikt.
mplay_session_join(numb, playername) Laat je de sessie 'numb' joinen (0 is de eerste sessie). playername is je naam als speler. Geeft terug of het succesvol was.
Er is nog één functie die de sessie modus kan veranderen. Deze moet gebruikt worden voordat een sessie gemaakt wordt:
mplay_session_mode(move) Stelt in of de sessie naar een andere 'host' moet worden verplaatst als de eerste 'host' stopt. move moet true of false zijn (false is normaal).
Om de status van je huidige sessie te checken kun je de volgende functie gebruiken
mplay_session_status() Geeft de status van de huidige sessie terug. 0 = geen sessie, 1 = sessie gemaakt, 2 = sessie gejoint.
Een speler kan stoppen met de huidige sessie met de volgende functie:
mplay_session_end() Beëindigt de sessie voor deze speler.
« Een verbinding maken | Spelers »