Multiplay
ZEPETO Multiplay est un module qui permet à plusieurs utilisateurs de se connecter et de jouer au Monde en même temps.
Il fournit le développement serveur/client et l'environnement de test local.
📘 Exemple de Monde Multiplay Officiel
Sélectionnez ZEPETO → Serveur Multiplay dans le menu [+] en haut à gauche du panneau [Projet], ou allez à Assets → Créer → ZEPETO → Serveur Multiplay.
Le package World.multiplay se compose des éléments suivants, et est automatiquement mis à jour lorsque le Monde est publié.
- index.ts : Code principal du serveur
- schemas : Structure de données pour la communication serveur/client
❗️ Avertissement
Un seul package World.multiplay peut être créé par jeu.
Cliquez sur [Ouvrir les paramètres du monde] comme indiqué dans l'image ci-dessous pour définir les paramètres du monde.
Propriété | Description |
---|---|
Version | Entrez la version de votre fichier à enregistrer. |
MaxClients | Définissez le nombre maximum de personnes pouvant accéder à la salle. |
Orientation | Choisissez l'orientation de l'écran. |
Désactiver l'invitation | Désactive la fonction d'invitation à la salle. |
Désactiver la liste des salles | Désactive la possibilité de vérifier la liste des salles. |
Désactiver la salle privée | Désactive la possibilité de créer une salle privée. |
👍 Désactiver l'invitation
Même si la fonction d'invitation à la salle est désactivée, vous pouvez envoyer des invitations via le lien de test.
ZEPETO Multiplay fournit un environnement de serveur local où le créateur peut tester des serveurs/clients pendant le développement.
Pour vérifier les actions du serveur local, sélectionnez le menu supérieur Unity → Fenêtre → ZEPETO → Serveur Multijoueur pour ouvrir la fenêtre d'état du serveur.
Cliquez sur le bouton serveur à côté du bouton [▶︎(Jouer)] au centre de l'écran de l'éditeur.
Vous verrez le journal du serveur suivant dans le panneau État du serveur.
Le composant ZepetoWorldMultiplay est une classe de gestionnaire Multiplay utilisée du côté client.
Créez un GameObject dans la fenêtre Hiérarchie, et ajoutez un composant ZepetoWorldMultiplay. Le composant ZepetoWorldMultiplay se connectera automatiquement au package Multiplay.
Cliquez sur le bouton [▶︎(Lecture)] au centre de l'écran de l'éditeur pour voir le journal de connexion du client dans la fenêtre du journal du serveur.
Le serveur de développement fonctionne sur localhost(127.0.0.1), et le port est défini lorsque le projet est chargé pour la première fois.
Lors de la connexion via multi-projet, définissez l'environnement de connexion comme suit
📘 Veuillez vous référer au guide suivant Accéder aux adresses IP Multiplay
👍 Après que le monde soit distribué, il fonctionnera sur le serveur ZEPETO.
Mise en œuvre de la logique du serveur
Le fichier index.ts dans le package World.multiplay est le code responsable de la logique principale du serveur.
Ouvrez le fichier index.ts et ajoutez la logique qui est envoyée au client après avoir reçu le type de message, echo, dans l'événement onCreate().
📘 Veuillez vous référer au guide suivant [Zepeto.Multiplay(Server) API]
Mise en œuvre de la logique client
Créez et ajoutez le script ZEPETO dans l'objet ZepetoWorldMultiplay utilisé pour envoyer/recevoir des événements serveur comme suit :
📘 Veuillez vous référer au guide suivant [err] Message de la salle multijoueur
Cliquez sur le [▶︎(Jouer)] au centre de l'écran de l'éditeur pour exécuter le serveur/client. Vous devriez voir un exemple d'un message de type 'echo' comme indiqué ci-dessous :
① Journal de la sortie lorsque les messages du client sont reçus sur le serveur.
② Journal du message reçu du serveur par le client.
❗️ Attention
[Utilisation de variables dans le code serveur]
- Les variables peuvent également être déclarées dans le code serveur.
- Cependant, la mémoire cache disponible sur le serveur est actuellement limitée à 512 Ko. (Cela peut changer plus tard.)
- Si cela dépasse 512 Ko, la salle peut être cachée, donc veuillez le développer en gardant cela à l'esprit.
[Utilisation de boucles dans le code serveur]
- La limite de temps de boucle est fixée à 2 secondes (2000 ms) dans le code serveur.
- Veuillez en tenir compte lors du développement, car l'utilisation de code bloquant ou de boucles de longue durée peut entraîner un échec de l'exécution correcte du programme en raison de la limite de temps de boucle.