Constitution d'une équipe

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

Re: Constitution d'une équipe

Message par zugsoft » 20 Sep 2016 08:39

Si c'est bien le cas, ils se font vraiment pas chier niveau tarif :|
Moon RTS

Folei
Messages : 16
Inscription : 18 Sep 2016 17:10

Re: Constitution d'une équipe

Message par Folei » 22 Sep 2016 19:19

Bonjour à vous,

Comme promis, un petit update :
J'ai commencé à me familiariser avec Photon. On est sur du "hello world" version multi-joueur : Un client contrôle un personnage vu par les autres clients au sein d'une même scène.
Jusque la tout va bien.

Les tests "poussés" seront lancés ce week. Je mettrai à disposition des clients (windows 32 / 64) si des intéréssées veulent également savoir ce que Photon a dans le ventre.

Vous n'alliez quand même pas que j'allais me décourager pour si peu ;)

Avatar de l’utilisateur
NDrew
Messages : 581
Inscription : 25 Oct 2013 15:14
Localisation : Clermont-Ferrand

Re: Constitution d'une équipe

Message par NDrew » 23 Sep 2016 08:32

Pour tes tests tu t'es fixé une série de cible qui doivent être atteintes?

Folei
Messages : 16
Inscription : 18 Sep 2016 17:10

Re: Constitution d'une équipe

Message par Folei » 23 Sep 2016 08:42

Voici mes objectifs :

Tester Photon avec 100 clients simultanés et observer :
La bande passante totale utilisées uniquement dans la gestion des déplacements des personnages sur une utilisation d'1h / Vérifier les temps de latences, lag et ping

Vérifier la faisabilité en mode "serveur autoritaire" (je pense que c'est ce qui va me prendre le gros de mon temps) et le coupler au test précédent afin d'analyser les écarts de performance.

Je ferai ça dans une scène neutre je pense afin de pas être polluer par les éléments graphiques.

Avatar de l’utilisateur
NDrew
Messages : 581
Inscription : 25 Oct 2013 15:14
Localisation : Clermont-Ferrand

Re: Constitution d'une équipe

Message par NDrew » 23 Sep 2016 09:21

OKi, si tu as besoin d'un client et que je suis dispo, ce sera avec plaisir. N'hésite pas a passer sur le discord pour prendre contact au besoin.

Folei
Messages : 16
Inscription : 18 Sep 2016 17:10

Re: Constitution d'une équipe

Message par Folei » 26 Sep 2016 13:53

Bonjour à tous,

Bon, j'ai bien bossé sur le sujet ce week-end, mais je me suis perdu en chemin (perdu quelques dents aussi au passage). Après le partage d'une scène entre plusieurs clients, je me suis pris de face quelques questions fondamentales :

Comment instancier un objet depuis un client (un monstre par exemple) ?
Alors, c'est tout à fait possible : Un client peut instancier un objet MAIS lorsque celui-ci se déconnecte, l'objet instancier également. Bof bof, pour instancier un pet ou un sort, why not, mais pas sur du spawn de mob.
2eme option : Il est également possible d'instancier "sur la scène", mais seul le master client peut s'en occuper. C'est mieux, mais cela implique que le client lambda balance l'information au master. OK, why not.

Comment gèrer le multi-scene :
Je pars du postulat que je me vois mal gérer 1 scène pour gérer tout un serveur (aussi petit soit-il). Alors je n'ai pas encore fait le test, mais je pense qu'il faut faire un master client par scène.

Ma conclusion : Je pense qu'il faut tendre vers 2 applications Unity. 1 master client et qui ne fera que ça (avec le dialogue à la base de données) et le client classique. Archi cible : 1 master client lancé par scène qui parlent à la base de données + les clients classiques.

Est-ce que c'est robuste pour gérer des centaines de milliers de connexion : Non. Mais quand j'en serai à gérer 1000 connexions, c'est que le projet sera un succès et que j'aurai de quoi m'en préoccuper.

Tout ceci mérite encore d'être creusé, et les tests restent d'actualité.

Bien à vous.

Avatar de l’utilisateur
NDrew
Messages : 581
Inscription : 25 Oct 2013 15:14
Localisation : Clermont-Ferrand

Re: Constitution d'une équipe

Message par NDrew » 26 Sep 2016 16:01

Donc effectivement, c'est comme ca que la doc décrit le fonctionnement, tu as un client unity qui est serveur dans chaque room. C'est lui qui est autoritaire et gere les instanciations. Les clients font des appels RPC au pire.

Pour les 100k sur un meme serveur, effectivement c'est pas possible deja vu le nombre de port :)

Folei
Messages : 16
Inscription : 18 Sep 2016 17:10

Re: Constitution d'une équipe

Message par Folei » 26 Sep 2016 16:10

Je pense que je vais tenter de faire une petite maquette.
Si j'y arrive, je mettrai une petite vidéo sur YouTube pour vous la partager.

Je veux commencer à voir comment tout ça peut se goupiller !

J'ai en tête : L'utilisation du serveur MySQL / 2 Master client Unity (pour 2 scenes) / n clients.

Si quelqu'un veut jouer avec moi, n'hésitez pas !

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

Re: Constitution d'une équipe

Message par zugsoft » 26 Sep 2016 18:58

Salut,

J'ai déjà longuement joué avec ca, j'ai un autre conseil à rajouter à mes précédents si tu comptes utilisé une base de donnée pour gérer les données échangés avec tes clients:
Fais attention à l'utilisation de ton serveur MYSQL, fais un minimum d'appel sur ta base, travail un maximum avec tes données en mémoire.
Mysql utilise un fichier pour faire la connexion avec sa base /var/run/mysqld/mysqld.sock , un fichier est bien moins rapide que la RAM.

Tu peux perdre 5-7ms de temps de réponse en utilisant une base de donnée.
Moon RTS

Folei
Messages : 16
Inscription : 18 Sep 2016 17:10

Re: Constitution d'une équipe

Message par Folei » 26 Sep 2016 19:52

Merci pour ce conseil que j'appliquerai !

Par chance, autant je suis pas doué en réseau, autant je me débrouille pas trop mal en SGBD. On va dire que j'ai un passif ;)

Répondre

Revenir vers « Collaboration pour projets »