27-08-2015, 05:50 PM
Hello,
Je souhaite créer un petit service sur mon jeu permettant de trouver facilement un adversaire pour des parties courtes (~5min) se jouant à deux. Mais je me tate un peu sur le design.
Mon cas sera simple pour commencer : il n'y aura qu'un seul pool de joueurs. Quand un joueur souhaite commencer une partie, il clique sur un bouton et il se retrouve inscrit dans le pool. Là commence la recherche. S'il n'y a personne pour jouer avec lui (ou que ça ne correspond pas avec son niveau, il est en attente).
Pour trouver un adversaire, j'examine chaque adversaire potentiel et je prends en compte différents facteurs en leur attribuant un score. J'applique un coefficient à chaque facteur selon leur ordre d'importance.
Je souhaite créer un petit service sur mon jeu permettant de trouver facilement un adversaire pour des parties courtes (~5min) se jouant à deux. Mais je me tate un peu sur le design.
Mon cas sera simple pour commencer : il n'y aura qu'un seul pool de joueurs. Quand un joueur souhaite commencer une partie, il clique sur un bouton et il se retrouve inscrit dans le pool. Là commence la recherche. S'il n'y a personne pour jouer avec lui (ou que ça ne correspond pas avec son niveau, il est en attente).
Pour trouver un adversaire, j'examine chaque adversaire potentiel et je prends en compte différents facteurs en leur attribuant un score. J'applique un coefficient à chaque facteur selon leur ordre d'importance.
- Le classement du joueur, type classement Elo. Si un a une trop grande différence de niveau, faut-il quand même lancer un match ?
- Les derniers adversaires rencontrés : on fait baisser le score si l'adversaire potentiel est dans les X derniers joueurs rencontrés.
- Les joueurs ont la même IP. Favoriser ou discriminer, ou pas ?
- Si l'adversaire attend depuis longtemps de commencer une partie, on le favorise.