[RESOLU]UNET et serveur dédié Personnel

Questions à propos du scripting. Hors Shader, GUI, Audio et Mobile.
casp3r97417
Messages : 21
Inscription : 23 Août 2016 13:30

[RESOLU]UNET et serveur dédié Personnel

Message par casp3r97417 » 10 Août 2017 17:05

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 :)
Dernière édition par casp3r97417 le 11 Août 2017 12:06, édité 1 fois.

zugsoft
Messages : 386
Inscription : 26 Juin 2014 23:43
Localisation : Swiss
Contact :

Re: UNET et serveur dédié Personnel

Message par zugsoft » 10 Août 2017 20:33

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
Moon RTS

casp3r97417
Messages : 21
Inscription : 23 Août 2016 13:30

Re: UNET et serveur dédié Personnel

Message par casp3r97417 » 10 Août 2017 21:40

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.

zugsoft
Messages : 386
Inscription : 26 Juin 2014 23:43
Localisation : Swiss
Contact :

Re: UNET et serveur dédié Personnel

Message par zugsoft » 11 Août 2017 09:16

:hehe:
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

casp3r97417
Messages : 21
Inscription : 23 Août 2016 13:30

Re: UNET et serveur dédié Personnel

Message par casp3r97417 » 11 Août 2017 10:44

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

zugsoft
Messages : 386
Inscription : 26 Juin 2014 23:43
Localisation : Swiss
Contact :

Re: [RESOLU]UNET et serveur dédié Personnel

Message par zugsoft » 11 Août 2017 13:28

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.
Moon RTS

casp3r97417
Messages : 21
Inscription : 23 Août 2016 13:30

Re: [RESOLU]UNET et serveur dédié Personnel

Message par casp3r97417 » 12 Août 2017 05:25

D'accord, merci de tout ces conseils et du partage de tes connaissances, je vais voir ce que je peux faire avec tout ça :)

Répondre

Revenir vers « Scripting »