Syncen

Gestart door Speace_Gamer_
Ik ben nieuw bij GameMaker Server en ik weet niet hoe ik objecten moet syncen naar de server. Ik heb alle tutorials al doorgelezen maar ik weet nog steeds niet hoe je moet syncen en waar/wanneer je dat moet doen.

Reacties (5)

Laatste bericht op 27 Jan 2020

Size43 (Beheerder) op 17 Jan 2020, 19:11:39
Zou je kunnen uitleggen hoe je het nu precies hebt opgezet? Met andere woorden, waar gebruik je instance sync, waar gebruik je de player sync, en hoe heb je die geconfigureerd?
Speace_Gamer_ (Topicstarter) op 18 Jan 2020, 13:49:48
IK heb tot nu toe alleen gms_self_set gebruikt omdat ik als ik een andere instance wil gaan syncen dan gaat hij duplicaten. IK heb namelijk nu in mijn room een metro gemaakt. Die volgt bepaalde paths. Alles werkt behalve dat de andere spelers ten eerst glitchen. Als een spelere later in de game komt en de metro is weg dan spawned hij nog een setje metro. Voor de rest is het enige wat ik nu sync de image_angle van de speler zelf. Ik weet niet hoe ik dit nu moet fixen. Als je wilt dan kan ik een kopie naar jou toe sturen.
Size43 (Beheerder) op 24 Jan 2020, 17:48:40
Begrijp ik dan goed dat je in ieder geval het syncen van het spelerobject al wel werkend hebt?

Voor het spawnen van objecten is het het handigste om een "spawner" object te maken die eerst controleert of er niet al een gesynct object bestaat voordat je een (tweede) instantie van de metro spawnt. Iets simpels als een alarm bij de room start op .5 seconden, en zodra dat afgaat een check of er al een instantie van het metro-object in de room staat zou al voldoende kunnen zijn.
Speace_Gamer_ (Topicstarter) op 25 Jan 2020, 10:22:33
Het probleem is dat de speler die later komt de andere metro niet detecteert, ook al is die is_full. Ik laat in het draw event bepaalde waardes drawen zodat ik kan checken hoeveel instances van een bepald object in de room staan alleen hij zegt dat er steeds 1 object in de room staat. En ik heb nu ook het probleem dat de andere speler gaat glitchen als die in de metro zit want de speed en de direction worden op de een of andere manier niet gesynced. Als je wilt dan kan ik ook een kopie naar jou toe sturen.
Size43 (Beheerder) op 27 Jan 2020, 13:15:58
Heb je misschien nog bijvoorbeeld een destroy-event in het metro-object dat af kan gaan als de instantie op een andere client aangemaakt wordt?

Bij gesyncte objecten wordt inderdaad de speed en direction niet geupdatet, zodat de movement beter "gesmooth" kan worden. Je kan wel de daadwerkelijke speed en direction waardes uitlezen met gms_other_get(player_id, "speed") of gms_instance_get(sync_id, "speed"), en idem voor direction.

Je mag het project naar gamemakerserver@outlook.com mailen, maar het kan even duren voordat ik daar naar kan kijken omdat dat veel meer tijd kost.