Bonjour à tous,
Je viens vers vous aujourd'hui car j'essaye de comprendre dans les moindres détails le multijoueur unity qui est assez complexe et je me frotte à une interrogation.
J'ai déjà quelques années à mon actif sur unity alors n'ayez crainte, je n'arrive pas avec un projet mirobolant sans avoir de connaissances
Donc je m'explique : Après avoir assimilé une bonne grosse partie du logiciel j'ai commencé à m’intéresser au côté multijoueur, j'ai créer des petits jeux dans le but de réaliser un apprentissage.
Aujourd'hui je m’intéresse aux principes des MMORPG (je ne souhaite pas réaliser le MMORPG de l'année avec plein d'animations et une map énorme, je veux juste assimiler le principe de fonctionnement en connectant pleins de joueurs armés de cubes qui peuvent bouger de gauche à droite).
La est ma vraie question, Unity fournit des serveur en ligne pour tester le jeu sur internet avec des amis et d'autres services fournissent également d'autres serveurs mais voila, j'aimerais savoir comment je pourrais créer mon propre serveur dédié, comme cela fonctionnerait-il avec Unity? Puis-je utiliser les protocoles UNET natifs à unity ou alors dois-je créer mes propres syntaxes en coalition avec mon serveur?
Si quelqu'un aurait une expérience dans le domaine, un tuto, une documentation ou même ne serait-ce qu'un morceau de code à analyser, je lui en serais très reconnaissant
[RESOLU]UNET et serveur dédié Personnel
-
- Messages : 21
- Inscription : 23 Août 2016 13:30
[RESOLU]UNET et serveur dédié Personnel
Dernière édition par casp3r97417 le 11 Août 2017 12:06, édité 1 fois.
Re: UNET et serveur dédié Personnel
Salut,
J'ai testé quelques servers :
-Bolt
-Unet
-Forge
-Photon
Si tu veux t'amuser sur un petit jeu, il y a deja de quoi faire.
Si tu vise 100 CCU ou plus sur une MAP pour un MMO, je te conseil d'écrire ton propre serveur en Java si tu ne gère pas de physique en local, et C# à travers Unity si tu gère la physique sur le serveur.
Avec un VPS à 5$ par mois, tu n'auras aucun soucis pour supporter 100CCU.
viewtopic.php?f=12&t=12751
J'ai testé quelques servers :
-Bolt
-Unet
-Forge
-Photon
Si tu veux t'amuser sur un petit jeu, il y a deja de quoi faire.
Si tu vise 100 CCU ou plus sur une MAP pour un MMO, je te conseil d'écrire ton propre serveur en Java si tu ne gère pas de physique en local, et C# à travers Unity si tu gère la physique sur le serveur.
Avec un VPS à 5$ par mois, tu n'auras aucun soucis pour supporter 100CCU.
viewtopic.php?f=12&t=12751
Moon RTS
-
- Messages : 21
- Inscription : 23 Août 2016 13:30
Re: UNET et serveur dédié Personnel
merci de ta réponse et merci pour le liens, je l'avais déjà vu et si je m'en rappelle bien cette personne avait un serveur en java.
Le problème est ici c'est un concept que j'ai du mal à imaginer, si je fais comme lui, un serveur en java, comment se passe la communication entre unity et ce dit serveur? je ne sais pas si je suis clair.
Le problème est ici c'est un concept que j'ai du mal à imaginer, si je fais comme lui, un serveur en java, comment se passe la communication entre unity et ce dit serveur? je ne sais pas si je suis clair.
Re: UNET et serveur dédié Personnel
Je suis la personne qui a créé le topic du serveur en Java et Unity.
Peut importe le langage que tu utilises pour écrire ton code, un serveur reste un serveur.
Je préconise Java car c'est simple a mettre en place, ca gère automatiquement ipv4 et ipv6 avec le meme code, ca consomme moins de CPU, mais un peu plus de mémoire.
Tu dois surtout réfléchir à ce que tu veux que ton serveur gère.
Est-ce que tu veux gérer la physique des personnages sur le serveur ou sur le client ? Ex:Si tu appuis sur avancer, tu calculeras sur ton client ou sur le serveur ou doit aller ton personnage ?
Moon RTS
-
- Messages : 21
- Inscription : 23 Août 2016 13:30
Re: UNET et serveur dédié Personnel
Ah autant pour moi, je n'avais pas fais attention aux pseudos
Comme dis précédemment pour commencer je vais faire dans la plus grande simplicité car c'est dans un but d'apprentissage alors je vais éviter la physique serveur et partir sur du java dans un premier temps. Aurais tu un tuto a me conseiller? ou peut être une documentation?
Edit : J'ai fais des recherches et j'ai vu les sockets java pour la communication client serveur : http://defaut.developpez.com/tutoriel/j ... ltithread/
Maintenant ma nouvelle question : De quelle manière transiter les données entre le client Unity et le serveur Java?
PS : Sur la méthode que j'ai trouver, le serveur sert uniquement de "lien" entre les clients de ce que j'ai compris et il n'est plus maître c'est bien cela?
Edit2 : Voila un lien de code et une vidéo de présentation pour ceux qui se poseraient la même question que moi, je passe le topic en résolu, merci beaucoup, je vais voir ce que je peux faire avec ça
https://www.youtube.com/watch?v=3vJ2qHkAcjE
https://github.com/sutogan4ik/UnityClientServer
Comme dis précédemment pour commencer je vais faire dans la plus grande simplicité car c'est dans un but d'apprentissage alors je vais éviter la physique serveur et partir sur du java dans un premier temps. Aurais tu un tuto a me conseiller? ou peut être une documentation?
Edit : J'ai fais des recherches et j'ai vu les sockets java pour la communication client serveur : http://defaut.developpez.com/tutoriel/j ... ltithread/
Maintenant ma nouvelle question : De quelle manière transiter les données entre le client Unity et le serveur Java?
PS : Sur la méthode que j'ai trouver, le serveur sert uniquement de "lien" entre les clients de ce que j'ai compris et il n'est plus maître c'est bien cela?
Edit2 : Voila un lien de code et une vidéo de présentation pour ceux qui se poseraient la même question que moi, je passe le topic en résolu, merci beaucoup, je vais voir ce que je peux faire avec ça
https://www.youtube.com/watch?v=3vJ2qHkAcjE
https://github.com/sutogan4ik/UnityClientServer
Re: [RESOLU]UNET et serveur dédié Personnel
Du coté du serveur tu dois gérer les connections a ta base de donnée, y stocker la vie des joueurs, leur level, pour limiter les tricheurs.
Quand un client attaque un autre client, c'est a ton serveur de calculer les dégats, et non ton client.
Quand un client attaque un autre client, c'est a ton serveur de calculer les dégats, et non ton client.
Moon RTS
-
- Messages : 21
- Inscription : 23 Août 2016 13:30
Re: [RESOLU]UNET et serveur dédié Personnel
D'accord, merci de tout ces conseils et du partage de tes connaissances, je vais voir ce que je peux faire avec tout ça