29-08-2015, 04:13 PM
Hello,
Merci pour vos réponses, je vais répondre à certains points :
Bonne idée, peut-être même en opt-out.
En fait le principe de Elo si j'ai bien compris c'est que justement, plus ton adversaire est faible par rapport à toi, moins tu gagnes de points. Donc il arrive un moment où le match ne te rapporte rien. (Ce que tu dis plus bas en fait)
Pas mal l'idée de pouvoir créer des rooms avec différents paramètres. Ensuite, le fait qu'elles puissent être privées me semble pertinent pour des serveurs hébergés par des joueurs hôtes. Perso je ne compte pas mettre à disposition des serveurs à installer mais ça se fait pas mal sur d'autres jeux. Ou bien, effectivement monétiser le fait d'héberger ces rooms privées. Quel serait l'intérêt pour le payeur ?
Cependant, si tu perds contre quelqu'un avec un bien meilleur classement que toi, ça ne change pas les classements des deux joueurs. Par contre si tu gagnes, là ça modifie beaucoup ! ça me semble pas une mauvaise chose.
C'est un jeu aux points de vies, donc si tu te fais rouler dessus ça sera court ! Je fais le jeu des potions en ce moment là, c'est toi qui avait eu l'idée de base.
Malheureusement je n'ai pas encore implémenté le jeu donc je ne sais pas comment il se joue vraiment J'aimerais un ratio chance/skill assez équilibré. 40%/60% me semble sympa mais je ne sais pas encore comment ça se mesure.
C'est un petit jeu pour rigoler, c'est pas très grave de jouer plusieurs fois contre la même personne. Les parties ne devraient pas se ressembler donc je ne souhaite pas bloquer ça. Mais clairement faire baisser le score de correspondance. Comme le dit Xenos il faut pouvoir jouer même si peu de joueurs sont connectés. Ce qui, ne nous leurrons pas, sera le cas
Oui bien sûr, on pourra donner un lien vers une partie privée ou proposer une partie à un autre joueur connecté.
Plus on attend plus le score de correspondance va augmenter donc de fait, le classement sera moins pris en compte (relativement).
Pour le reste on rentre dans l'algorithmique. ça va pas être de la tarte de gérer les timers
Pas trop sûr de comprendre, mais je préfère choisir mes coefficients et faire des tests. Le but est de minimiser l'attente en favorisant des parties assez équilibrées. On peut donc avoir les bon coefficients par calcul.
Bien vu ! Il faudra voir comment l'implémentation gère ça, s'il y a besoin ou non de renforcer cette probabilité ; ta formule est valable dans le cas où les joueurs sont choisis au hasard, or justement je mets en place des critères.
On pourrait cependant imaginer une seconde room ou il est clairement établi que les adversaires sont sélectionnés totalement au hasard.
Pour le rematch, j'avais l'idée, çà sort un peu du cadre du matchmaking mais je compte mettre un tel bouton "revanche" à la fin d'une partie, les deux joueurs ayant 20 sec. pour cliquer dessus et si les deux le font, la partie recommence.
Je n'y ai pas du tout pensé. À première vue ça ne me plaît pas. Si le matchmaking fonctionne bien (pas gagné mais admettons) alors cela signifie que si on lui met un joueur ne correspondant pas vraiment à son niveau ou qu'il a déjà combattu très récemment, c'est qu'on n'a pas mieux à lui proposer. De plus, il n'y aura pas vraiment de fiche de persos dans ce jeu plutôt simpliste.
Ceci étant dit, le matchmaking est là pour trouver un adversaire sans réfléchir. Il faut pour cela s'inscrire dans la room (unique pour le moment). Si on ne s'inscrit pas, on ne risque rien. On peut donc consulter le classement tranquilou, et éventuellement regarder les fiches des adversaires potentiels (si fiche il y a, ça vaut pour n'importe quel jeu ce système), et enfin proposer un match à une certaine personne directement. Dans ce cas là, il faut clairement que l'adversaire puisse refuser le match.
Bon, ça donne matière à réfléchir tout ça. En parallèle, je suis en train de plancher sur l'IA afin de pouvoir proposer des challenges spécifiques.
Merci pour vos réponses, je vais répondre à certains points :
Citation :rajoute deux options de choix pour les joueurs : "se battre contre vraiment plus fort que soi", "se battre contre vraiment plus faible que soi" (bien sûr dans les 2 cas, "dans l'éventualité où il y a peu de monde")
Bonne idée, peut-être même en opt-out.
Citation :rajoute en outre une option pour ta room (cf la suite); en cas de match disproportionné(a toi de définir la disproportion) selon le classement, ne pas tenir compte du match pour les statistiques (oui / non)
En fait le principe de Elo si j'ai bien compris c'est que justement, plus ton adversaire est faible par rapport à toi, moins tu gagnes de points. Donc il arrive un moment où le match ne te rapporte rien. (Ce que tu dis plus bas en fait)
Citation :je dirais possibilité de créer une room privée (genre t as même de la monétisation derrière)
dans ce cas le propriétaire de la room peut changer les paramètres :
faire partie du pool sur invitation, sur mot de passe, pour tous le monde. Avec changement de paramètre à la clef (laisser le choix des options aux joueurs ou non, changer le poids des paramètres, etc...)
voire même changer des paramètres de jeu (si cela a un sens) genre "arênes de feu" : les pouvoirs du bois n'ont aucun effet, les pouvoirs de l'eau sont divisés par 5 les pouvoirs du feu sont multipliés par deux ...
Pas mal l'idée de pouvoir créer des rooms avec différents paramètres. Ensuite, le fait qu'elles puissent être privées me semble pertinent pour des serveurs hébergés par des joueurs hôtes. Perso je ne compte pas mettre à disposition des serveurs à installer mais ça se fait pas mal sur d'autres jeux. Ou bien, effectivement monétiser le fait d'héberger ces rooms privées. Quel serait l'intérêt pour le payeur ?
Citation :comme ça, au pire si les deux joueurs sont ok pour se battre contre très différents d'eux, ils pourront le faire, qui plus est sans impact sur leur niveau (ou pas)
Cependant, si tu perds contre quelqu'un avec un bien meilleur classement que toi, ça ne change pas les classements des deux joueurs. Par contre si tu gagnes, là ça modifie beaucoup ! ça me semble pas une mauvaise chose.
Citation :Avec des parties longues ça serait un problème, puisque se faire rouler dessus pendant 30 minutes c'est pas vraiment agréable. Mais avec tes parties de 5 minutes le problème se pose beaucoup moins.
C'est un jeu aux points de vies, donc si tu te fais rouler dessus ça sera court ! Je fais le jeu des potions en ce moment là, c'est toi qui avait eu l'idée de base.
Citation :Sinon il faut aussi prendre en compte les chances de victoires d'un noob contre un expert. Par exemple dans un jeu de carte à collectioner, le noob peut toujours avoir de la chance et gagner, alors qu'aux échecs, une partie avec une trop grande différence de niveau n'aura que peu d'intérêt.
Malheureusement je n'ai pas encore implémenté le jeu donc je ne sais pas comment il se joue vraiment J'aimerais un ratio chance/skill assez équilibré. 40%/60% me semble sympa mais je ne sais pas encore comment ça se mesure.
Citation :Ok, j'irais même jusqu'à bloquer carrément le dernier adversaire voir les n derniers pour éviter de jouer en boucle contre les mêmes personnes.
C'est un petit jeu pour rigoler, c'est pas très grave de jouer plusieurs fois contre la même personne. Les parties ne devraient pas se ressembler donc je ne souhaite pas bloquer ça. Mais clairement faire baisser le score de correspondance. Comme le dit Xenos il faut pouvoir jouer même si peu de joueurs sont connectés. Ce qui, ne nous leurrons pas, sera le cas
Citation :Et bien sur il faut une possibilité de lancer un match avec quelqu'un sans passer par le matchmaking.
Oui bien sûr, on pourra donner un lien vers une partie privée ou proposer une partie à un autre joueur connecté.
Citation :Perso ce que je ferais c'est que plus on attends, plus on accepte une différence d'ELO importante.
Plus on attend plus le score de correspondance va augmenter donc de fait, le classement sera moins pris en compte (relativement).
Pour le reste on rentre dans l'algorithmique. ça va pas être de la tarte de gérer les timers
Citation :Et si, pour chaque algo, le joueur pouvait choisir? Le set de paramètres peut être aléatoire, mais les sets des joueurs déjà inscrits peuvent l'influencer.
Pas trop sûr de comprendre, mais je préfère choisir mes coefficients et faire des tests. Le but est de minimiser l'attente en favorisant des parties assez équilibrées. On peut donc avoir les bon coefficients par calcul.
Citation :Inutile de "favoriser" manuellement les joueurs au fil du temps si c'est fait de façon probabiliste (aléatoire), cela se fera naturelle (la probabilité de ne joueur qu'au bout de S secondes est de P^S avec P la probabilité d'être choisit à chaque seconde).
Bien vu ! Il faudra voir comment l'implémentation gère ça, s'il y a besoin ou non de renforcer cette probabilité ; ta formule est valable dans le cas où les joueurs sont choisis au hasard, or justement je mets en place des critères.
On pourrait cependant imaginer une seconde room ou il est clairement établi que les adversaires sont sélectionnés totalement au hasard.
Pour le rematch, j'avais l'idée, çà sort un peu du cadre du matchmaking mais je compte mettre un tel bouton "revanche" à la fin d'une partie, les deux joueurs ayant 20 sec. pour cliquer dessus et si les deux le font, la partie recommence.
Citation :Quand l'algo choisit un adversaire, le joueur peut-il refuser le match? Cela pourrait résoudre beau nombre de problèmes: l'adversaire choisit, le jeu affiche la feuille de stats des deux joueurs, avec un comparatif clair et visuel, et chaque joueur peut refuser le match ou l'accepter.
Je n'y ai pas du tout pensé. À première vue ça ne me plaît pas. Si le matchmaking fonctionne bien (pas gagné mais admettons) alors cela signifie que si on lui met un joueur ne correspondant pas vraiment à son niveau ou qu'il a déjà combattu très récemment, c'est qu'on n'a pas mieux à lui proposer. De plus, il n'y aura pas vraiment de fiche de persos dans ce jeu plutôt simpliste.
Ceci étant dit, le matchmaking est là pour trouver un adversaire sans réfléchir. Il faut pour cela s'inscrire dans la room (unique pour le moment). Si on ne s'inscrit pas, on ne risque rien. On peut donc consulter le classement tranquilou, et éventuellement regarder les fiches des adversaires potentiels (si fiche il y a, ça vaut pour n'importe quel jeu ce système), et enfin proposer un match à une certaine personne directement. Dans ce cas là, il faut clairement que l'adversaire puisse refuser le match.
Bon, ça donne matière à réfléchir tout ça. En parallèle, je suis en train de plancher sur l'IA afin de pouvoir proposer des challenges spécifiques.