AIDE : Build Multi Android, les bases, structures & Explications

Toutes les questions sur le développement Mobile, y compris la partie script.
TatMeroo
Messages : 1
Inscription : 30 Juil 2021 14:14

AIDE : Build Multi Android, les bases, structures & Explications

Message par TatMeroo » 09 Août 2021 15:00

Bonjour,

J'ai plusieurs questions liées au fonctionnement générale d'un jeu multijoueur.
Je me suis donné comme objectif de faire un jeu de carte multijoueur sur unity, donc au tour par tour et le plus simple possible pour comprendre les bases de développement du multijoueur et en faire une app android.
Après plusieurs recherches, j'en ai conclu que je n'y comprenais rien.

Je me suis donc reporté sur Firebase, qui, du peu que j'en ai saisi, pouvais faire office de base de donnée pour mes variables de jeu et client, et de serveur avec divers services apparemment très utiles.
Hors rien ne marche, j'ai suivi le tuto officiel et d'autres tuto plus récent (j'utilise Unity 2020.3.15f1). Au mieux après de multiples erreurs (crash gradle, build fail, keystore, SNK et j'en passe..), tout marche dans l'editeur mais crash direct en build android sur mon tel (je pense qu'il faut trifouiller dans le manifest ou un truc dans le genre mais j'suis un peu pommé là).
Bref ça tourne en rond... et je me demande si je ne ferai pas mieux d'aller voir ailleurs...

Mais comment fonctionne réellement un jeu multijoueur android basique?
J'ai beau chercher, je ne trouve aucunes réponses claires, simples, et c'est vite l'usine à gaz ou payant. Je n'ai définitivement pas les bases nécessaires (je sais seulement créer une application type dao Eclipse, MySQL Workbench, WampServer).

Niveau compréhension, j'en suis à :
1. J'ai mon jeu unity, une interface UI de connexion à une base nonSql pour les variables d'identification client, là j'ai besoin d'une connexion à un serveur client lié à ma base de données nonSql (j'ai lu que c'était mieux pour l'identification client).
2. Mon serveur client doit également être lié et se connecter à un autre serveur abritant une autre base de données sql par exemple, qui contient les variables de jeu (par exemple une collection de cartes d'un joueur spécifique, les scores..).
3. Le joueur télécharge sur son téléphone l'app, rentre son id pour se connecter au serveur client, l'app reçoit une confirmation de connexion et se connecte au second serveur.
4. En jeu, il y transfert de données entre la base de données sql du serveur dédié au jeu (back) et l'instance d'application du joueur (front).

J'ai donc besoin d'unity, d'un serveur client, d'un serveur dédié au jeu, d'une bdd pour le serveur client, d'une bdd pour le serveur du jeu (et peut 'être de trucs pour lier tout ça comme des sockets je crois... ).
Donc je pense que vous aurez compris mes lacunes :

A. Quelqu'un peut-il m'expliquer avec des termes simples la structure back / front complète de base d'un jeu multijoueur avec des exemples de logiciels pour chaque services ou étapes et leurs rôles ou objectifs? (je tombe souvent sur des schéma très savant mais ça m'apparait toujours très abstrait)

B. Quels logiciels (gratuits), serveurs utiliser ?
J'ai entendu parler de mirror, photon, proposent t'ils les mêmes types de service que firebase (bdd, authentification...)? et à quoi sert exactement le MLAPI d'unity? Firebase à première vu avait l'air simple et efficace, le fait qu'il soit lié à un compte google et à tous leurs logiciels et services a l'air d’être un vrai avantage pour gérer et mettre en place un jeu online, qu'en est il de photon et mirror?
D'autres serveurs existent, que vaut Valheim, SmartFoxServer 2X, Yahoo Games Network? Et est ce que je suis pas en train de tout mélanger?

C. Quels logiciels de base de données ?
Certain parle d'utiliser ensemble Node, Express, et SQL server, d'autre de passer par une page web pour gérer tout ça... Pourquoi et comment ça marche en gros? Je pensais les bdd sql complétement hors compétition niveau jeu...

D. Si je veux pouvoir créer un jeu évolutif multiplayer avec des combat entre joueurs style ccg (hearthstone par exemple), quelles sont les solutions les plus basiques et les moins couteuses?

E. Firebase propose un serveur et une base de données reposant sur le cloud, pouvant abriter si j'ai bien compris le code structurel (la logique) de jeu, est ce une solution plus complexe à mettre à place et plus viable à long terme ?

Je sais que j'en demande beaucoup et qu'il y a pas mal de points, mais je suis complétement perdu pour l'instant, et toute sorte d'aide sera la bien venue (comme par où commencer, un tuto bien complet et gratuit etc...).
Je vous en remercie par avance.

Avatar de l’utilisateur
Aelhan
Messages : 124
Inscription : 11 Déc 2019 23:00

Re: AIDE : Build Multi Android, les bases, structures & Explications

Message par Aelhan » 10 Août 2021 12:22

Bonjour,

Je t'avoue que je n'ai absolument aucune compétence dans ce qui est du multi avec Unity, mais si je devais m'y mettre je sais que je commencerais par ça :

https://m.youtube.com/playlist?list=PLU ... 2kl0DgS1EN

La serie est actuelle et le vidéaste très pédagogue, une des références francophones dans l'apprentissage de Unity, en espérant que tu y trouvés des réponses à tes questions.
Celui qui pose une question risque cinq minutes d'avoir l'air bête.
Celui qui ne pose pas de question restera bête toute sa vie.

Répondre

Revenir vers « Développement plateformes mobile Iphone et Android »