Je travaille (de temps en temps) sur un pbbg qui est assez old school. Si vous avez déjà joué à Carnage Blender, vous avez l'idée.
Sinon, c'est une idée simple qui a été beaucoup faite: un joueur se voit attribuer un certain nombre de "points" chaque jour, et dépense ces points pour attaquer d'autres joueurs. Les points s'accumulent au fil du temps, jusqu'à un certain plafond.
Le système de points est conçu pour empêcher les sur-performants de dépasser complètement les joueurs occasionnels.
Dans le cas du mélangeur carnage, un système CAPTACHA empêche un utilisateur de "jouer" le système avec un bot ou un script conçu pour utiliser tous ses points chaque jour avec un minimum d'effort. De temps en temps un CAPTCHA aléatoire est affiché, et s'il n'est pas passé, l'utilisateur sera suspendu pendant une heure.
Ce que je me demande, c'est comment rendre cela plus convivial pour mon jeu. Je reconnais que je dois éviter les mauvais comportements comme celui-ci, et je pourrais facilement adopter la même approche CAPTCHA, mais existe-t-il une alternative plus conviviale?
La recherche initiale a révélé ASIRRA par Microsoft, mais l'ambiance moelleuse / mignonne ne fonctionne pas bien avec le thème de mon jeu.
MISE À JOUR
Ce qui m'intéresse le plus, ce sont les alternatives au CAPTCHA standard "épelez ce mot". Je veux essayer de garder le jeu aussi ininterrompu que possible pour les bons joueurs.
J'ai vu ce que j'appelle des CAPTCHA à usage unique, comme demander à un utilisateur "qu'est-ce que cinq plus six moins deux?" Mais cela nécessiterait trop d'efforts pour compiler une base de données de questions suffisamment grande pour déjouer les utilisateurs malveillants. D'autant plus que le CAPTCHA est destiné à être utilisé si souvent.
MISE À JOUR # 2
Comme Joe Wreschnig l'a souligné dans sa réponse, avoir un système CAPTCHA pour empêcher les bots de jouer plus vite que les humains est un peu redondant si les tours sont limités par jour. Je n'ai pas expliqué mon système de points à la lettre, et c'était ma faute. En réalité, 10 ou 20 points s'accumulent toutes les quelques minutes et plafonnent à 200. Ainsi, un joueur très compétitif pourrait revenir toutes les quelques heures et utiliser ses points. Je veux récompenser les gens qui aiment tellement mon jeu qu'ils reviennent si souvent. Si je les empêche de jouer jusqu'au lendemain quand ils obtiennent leurs points, je repousserais des joueurs qui autrement profiteraient de mon jeu en ligne. Cela empêche un joueur de dépenser constamment des points tout en lui accordant quelques points toutes les quelques minutes.
C'est ouvert aux abus.
la source
Réponses:
"existe-t-il une alternative plus conviviale?"
Une alternative plus conviviale à quelle fin? Quel est le captcha conçu pour réaliser dans votre système?
On dirait qu'il est conçu pour empêcher l'embouteillage, en supposant que les bots peuvent jouer "plus vite" que les joueurs réguliers. Mais vous avez également déjà plafonné le nombre d'actions qu'un utilisateur peut entreprendre par jour, ce qui permet d'atteindre le même objectif. Le captcha semble donc redondant.
Je vous encourage à regarder les interfaces alternatives de Kingdom of Loathing . Il utilise un système de tours par jour similaire et dispose de plusieurs frontaux alternatifs populaires tels que KoLmafia , qui sont à bien des égards indiscernables de "mettre en bouteille" le jeu. La plupart des joueurs estiment que ceux-ci s'ajoutent au jeu, plutôt qu'ils ne le retranchent, même pour les joueurs occasionnels. Ils facilitent les actions par lots, automatisent certaines des parties les plus lentes et offrent plus d'options pour l'interface utilisateur dans le jeu.
Si vous avez déjà des contrôles dans votre jeu pour vous assurer que les IA ne peuvent pas simplement jouer plus vite que les humains - et en effectuant des tours par jour, vous avez un tel contrôle - alors je vous suggère d'essayer d' encourager l' automatisation de votre jeu, comme si votre conception était équilibré, il ne peut qu'améliorer l'expérience du joueur.
la source
Je ne prendrais jamais la peine de jouer à un jeu qui exige des captchas: c'est vraiment une terrible pratique à éviter.
Votre jeu semble avoir des problèmes plus profonds que cela de toute façon: idéalement, un jeu ne devrait donner aucun avantage à un bot stupide, de sorte qu'il serait inutile d'utiliser un bot stupide en premier lieu. Si vous ne pouvez pas y parvenir, c'est un problème de conception qui n'aura pas de vraie solution, seulement des solutions de contournement plus ou moins valides.
Avec "bot stupide", je veux dire des bots qui ne prennent aucune décision significative et au lieu de cela "ferme" (c'est ce qui se passe ici). Les robots intelligents (tels que les robots de but ou les robots d'échecs) sont une tout autre affaire.
Néanmoins, en supposant que vous soyez à l'aise avec l'idée de créer un jeu défectueux, il y a encore place à amélioration.
Acceptez le fait que vous ne pouvez pas arrêter un bot vraiment déterminé et concentrez-vous plutôt sur la seule chose que vous pouvez faire: rendre inutile l'utilisation d'un bot. Si les gens n'ont aucune raison d'utiliser un bot ... ils ne les utiliseront pas (et s'ils le font de toute façon, cela n'aura pas d'importance).
Une solution possible consiste à autoriser une connexion par semaine au lieu d'une par jour. Si les gens oublient de se connecter pendant plus d'une semaine, ils ne seront probablement pas vraiment intéressés à jouer, de sorte qu'ils n'utiliseront pas de bots pour continuer à gagner des crédits. Si, d'autre part, il y a quelqu'un de si foutu qui fait un bot qui se connecte une fois par semaine et revient ensuite trois mois plus tard pour attaquer des gens au hasard, eh bien, vous venez de trouver quelqu'un de si déterminé qui vous aurait fendu de toute façon, peu importe système que vous avez choisi (sauf si vous avez choisi un système sans défaut, bien sûr).
ps: ne commettez pas l'erreur de consacrer plus d'efforts aux défauts de conception de contournement que de les résoudre en premier lieu!
la source
Je n'interdirais pas un CAPTACHA échoué pendant une heure, ce qui semble dur, je les empêcherais simplement d'avancer jusqu'à ce qu'ils terminent avec succès le CAPTACHA et permettent qu'une nouvelle image CAPTACHA soit affichée.
Je n'afficherais également le captcha que s'ils font des demandes trop rapidement, je stockais le a DateTime sur chaque demande, puis le comparais à la demande suivante, si c'est moins de 2-4 secondes, vous affichez le CAPTACHA, sinon laissez ils vont. Vous devrez déterminer l'intervalle raisonnable pour votre jeu, votre serveur et votre bande passante.
Vous pouvez également faire un CAPTACHA "forcé" toutes les X fois qu'une action est effectuée, cela empêchera même un script automatisé avec un
pause
intégré afin qu'il ne déclenche pas le délai CAPTACHA.la source
Si les joueurs dépensent des points pour attaquer d'autres joueurs et que les points sont limités, l'abus évident me semble être de créer plusieurs comptes.
Si vous réussissez à limiter les gens à un seul compte, le problème avec les bots serait que, sous votre système, les gens peuvent les renvoyer lorsqu'ils dorment ou au travail.
Donc, étant donné les contraintes: (1) aucun avantage pour les robots (2) récompenser les gens qui se connectent plusieurs fois par jour
Il me semble que l'idéal est de limiter le nombre d'actions qu'ils peuvent utiliser au cours d'une journée à un nombre raisonnable.
Par exemple, vous pouvez décider que quelqu'un peut raisonnablement se connecter plusieurs fois sur une période de 8 heures et modifier le système de manière appropriée. Ou quelqu'un pourrait le vérifier avant d'aller à l'école / au travail le matin, le vérifier à son retour à la maison, le vérifier à nouveau après le dîner et le vérifier avant d'aller se coucher.
Déterminez ce que fait votre utilisateur «idéal», puis faites en sorte que le système de points récompense cela.
Je construisais un système qui récompensait la dépense d'un bloc de points en une seule fois. Pour ce faire, j'aurais un taux de recharge variable sur les points. Chaque fois que vous dépensez des points, le temps de recharge pour obtenir le prochain point augmente ... donc si un bot dépense des points aussi vite qu'il les obtient, il faudra de plus en plus longtemps pour obtenir le suivant, alors que si une personne dépense tout le point qu'ils ont accumulé pendant la nuit avant de quitter la maison le matin, ils les auront tous récupérés au retour du travail / de l'école (8-12 heures plus tard).
la source
Dans un jeu, je recommanderais de remplacer "captcha" par "mini-jeu de puzzle". La différence étant le niveau de plaisir impliqué. Il y a vraiment peu de raisons pour un captcha dans un jeu à moins que vous n'ayez essayé un mini-jeu personnalisé et qu'il soit toujours en bouteille. Dans ce cas, cela nécessite des tactiques plus intelligentes.
la source
Comme suggéré par Tchalvak, j'irais dans la voie du «mini-jeu de puzzle», mais je récompenserais quelques points pour l'avoir réussi afin de le rendre plus convivial
la source