Hartnäckiges browserbasiertes Spiel: Captcha oder nicht Captcha?


12

Ich habe (ab und zu) an einer Pbbg gearbeitet, die ziemlich altmodisch ist. Wenn Sie schon einmal Carnage Blender gespielt haben, dann haben Sie die Idee.

Wenn nicht, ist es eine einfache Idee, die viel getan wurde: Ein Spieler bekommt jeden Tag eine bestimmte Anzahl von "Punkten" und gibt diese Punkte aus, um andere Spieler anzugreifen. Punkte sammeln sich im Laufe der Zeit bis zu einer bestimmten Obergrenze.

Das Punktesystem wurde entwickelt, um zu verhindern, dass Leistungsträger Gelegenheitsspieler völlig übertreffen.

Im Falle eines Blutbadmischers verhindert ein CAPTACHA-System, dass ein Benutzer das System mit einem Bot oder einem Skript "spielt", das so konzipiert ist, dass alle seine Punkte jeden Tag mit minimalem Aufwand verwendet werden. Hin und wieder wird ein zufälliges CAPTCHA angezeigt, und wenn es nicht bestanden wird, wird der Benutzer für eine Stunde gesperrt.

Ich frage mich, wie ich das für mein Spiel benutzerfreundlicher machen kann. Ich erkenne, dass ich schlechtes Benehmen wie dieses verhindern muss, und ich könnte leicht den gleichen CAPTCHA-Ansatz wählen, aber gibt es eine benutzerfreundlichere Alternative?

Erste Untersuchungen ergaben, dass ASIRRA von Microsoft entdeckt wurde, aber die flauschige / süße Atmosphäre passt nicht zu meinem geplanten Spielthema.

UPDATE
Was mich am meisten interessiert, sind Alternativen zum Standard-CAPTCHA "Buchstabiere dieses Wort". Ich möchte versuchen, das Gameplay für die guten Spieler so ununterbrochen wie möglich zu halten.

Ich habe gesehen, was ich als einmal verwendbare CAPTCHAs bezeichne, als würde ich einen Benutzer fragen: "Was ist fünf plus sechs minus zwei?" Dies würde jedoch zu viel Aufwand erfordern, um eine Datenbank mit Fragen zu erstellen, die ausreicht, um die böswilligen Benutzer abzuwehren. Zumal das CAPTCHA so oft verwendet werden soll.

UPDATE 2
Wie Joe Wreschnig in seiner Antwort betonte, ist ein CAPTCHA-System, mit dem Bots daran gehindert werden, schneller als Menschen zu spielen, ein wenig überflüssig, wenn die Anzahl der Runden pro Tag begrenzt ist. Ich habe mein Punktesystem nicht auf den Buchstaben gebracht, und das war meine Schuld. In der Realität fallen alle paar Minuten 10 oder 20 Punkte an, und der Höchststand liegt bei 200. Ein sehr konkurrenzfähiger Spieler kann also alle paar Stunden zurückkehren und seine Punkte einsetzen. Ich möchte die Leute belohnen, die mein Spiel so mögen, dass sie so oft wiederkommen. Wenn ich sie daran hindere, bis zum nächsten Tag zu spielen, an dem sie ihre Punkte erhalten, würde ich Spieler abweisen, die ansonsten mein Webgame genießen würden. Dies verhindert, dass ein Spieler ständig Punkte ausgibt, während er ihnen dennoch alle paar Minuten ein paar Punkte gibt.

Dies ist offen für Missbrauch.


1
Zu Update 2: Ihr beschriebenes Ziel Ihres Punktesystems, vereinfacht: "Ich möchte Spieler belohnen, die durchschnittlich mindestens 2,4 Mal am Tag spielen." Warum? Warum kümmert es dich, wenn sie 2,4-mal am Tag statt nur einmal spielen? Sie sagen "Ich möchte die Spieler belohnen, die mein Spiel mögen", aber ob ich mich 5 Mal am Tag oder nur einmal anmelde, das ist kein Maßstab dafür, wie sehr ich Ihr Spiel mag. Überlegen Sie, was Sie hier tatsächlich tun und warum Sie es tun. Dann finden Sie einen anderen Weg, damit Sie kein 2,4-mal-pro-Tag-Punktesystem entwickeln müssen, das Ihre Spieler zum Bot ERMUTIGT.
doppelgreener

1
Ich hoffe , dass Sie wirklich erkennen , dass durch die Forderung 2.4 Visits / Tag für eine optimale Spiel Sie sind botting ermutigend , da viele Menschen nicht , dass das Engagement machen. Es ist nicht einmal nötig: Du erreichst damit nichts als Bots und die Entfremdung von potentiellen Spielern! Betrachten Sie Kingdom of Loathing, ein phänomenal erfolgreiches Spiel, das Ihnen 40 Runden / Tag (mit Gegenständen aufladbar) gibt. Bei einer Obergrenze von 200 können Sie bis zu 5 Tage warten. Kingdom of Chaos macht etwas Ähnliches. Weder geben Sie eine besondere Belohnung für häufiges Spielen, noch haben beide Spieler, die sich unabhängig davon mehrmals pro Tag anmelden.
Doppelgreener

@Jonathan: Normalerweise ist es für Sie wichtig, dass sich Leute durchschnittlich x-mal am Tag anmelden, damit Sie Ihr Spiel basierend auf den Werbetarifen, die Sie haben, rentabel machen können. Die Monetarisierungsstrategie von KoL basiert auf Einkäufen im Spiel, daher gilt dies nicht.

1
@Joe: Ich würde dann eine alternative Werbe- / Monetarisierungsstrategie in Betracht ziehen, wenn ich die Spieler nicht entfremde, würde ich aufgrund der höheren Spielerpopulation insgesamt möglicherweise mehr Werbung anzeigen . Wenn mein Spiel erfolgreich entwickelt wurde, werden diejenigen, die es mehrmals am Tag besuchen , dies trotzdem tun - weil ihnen das Spiel gefällt und sie es bevorzugen, nicht weil die Spielmechanik sie transparent dazu drängt (Anmerkung: Das bedeutet, dass Stephen es ist) nicht belohnen "die
leute,

Antworten:


8

"Gibt es eine benutzerfreundlichere Alternative?"

Eine benutzerfreundlichere Alternative zu welchem ​​Zweck? Was soll das Captcha in Ihrem System erreichen?

Es hört sich so an, als ob es entworfen wurde, um ein Botting zu verhindern, unter der Voraussetzung, dass Bots "schneller" spielen können als normale Spieler. Sie haben aber auch bereits die Anzahl der Aktionen begrenzt, die ein Benutzer pro Tag ausführen kann, um dasselbe Ziel zu erreichen. Das Captcha erscheint also überflüssig.

Ich möchte Sie ermutigen, sich die alternativen Frontends von Kingdom of Loathing anzusehen . Es verwendet ein ähnliches Turns-per-Day-System und hat mehrere beliebte alternative Frontends wie KoLmafia , die in vielerlei Hinsicht nicht vom "Botting" des Spiels zu unterscheiden sind. Die meisten Spieler sind der Meinung, dass dies das Spiel bereichert, anstatt es zu beeinträchtigen, selbst für Gelegenheitsspieler. Sie erleichtern die Stapelverarbeitung von Aktionen, automatisieren einige der langsameren Teile und bieten mehr Optionen für die Benutzeroberfläche im Spiel.

Wenn Sie in Ihrem Spiel bereits Checks haben, um sicherzustellen, dass AIs nicht einfach schneller als Menschen spielen können - und wenn Sie Turns per Day haben, haben Sie einen solchen Check - dann empfehlen wir Ihnen, die Automatisierung Ihres Spiels zu fördern , als wäre Ihr Design ausgewogen, es kann nur die Spielerfahrung verbessern.


1
Sehr guter Einblick! Tageswechsel sind irreführend, und das war meine Schuld. Ich werde die Frage aktualisieren, um näher darauf einzugehen.
Stephen

Je mehr ich darüber nachdenke, desto mehr gefällt es mir. Ich muss noch etwas darüber nachdenken und die Frage hier ein wenig aufgreifen lassen.
Stephen

1
Zum Beispiel waren die automatisierten Kampfsysteme von KolMafia so nützlich, dass sie tatsächlich ein Kampfmakrosystem in das echte Spiel integriert haben.
Kodierer

Ich erinnere mich an RuneScape, dass ein Genie einfache Fragen stellt. Wenn Sie diese richtig stellen, schenkt er Ihnen ein Geschenk.
Jonathan Connell

3

Ich würde nie die Mühe machen, ein Spiel zu spielen, das Captchas verlangt: Es ist wirklich eine schreckliche Übung, die vermieden werden sollte.

Ihr Spiel scheint ohnehin tiefere Probleme zu haben: Idealerweise sollte ein Spiel einem dummen Bot keinen Vorteil verschaffen, so dass es sinnlos wäre, überhaupt einen dummen Bot zu verwenden. Wenn Sie das nicht erreichen können, ist dies ein Entwurfsproblem, für das es keine echte Lösung gibt, sondern nur mehr oder weniger gültige Problemumgehungen.

Mit "dummer Bot" meine ich Bots, die keine sinnvolle Entscheidung treffen und stattdessen nur "Farm" (das passiert hier). Intelligente Bots (wie Zielbots oder Schachspielbots) sind eine ganz andere Sache.

Angenommen, Sie sind mit der Idee, ein Spiel mit Designfehlern zu entwickeln, einverstanden, gibt es dennoch Raum für Verbesserungen.

Akzeptiere die Tatsache, dass du einen wirklich entschlossenen Bot nicht aufhalten kannst und konzentriere dich stattdessen auf das einzige, was du tun kannst: Mach es nutzlos, einen Bot zu benutzen. Wenn die Leute keinen Grund haben, einen Bot zu benutzen, werden sie sie nicht benutzen (und wenn sie es trotzdem tun, wird es keine Rolle spielen).

Eine mögliche Lösung besteht darin, eine Anmeldung pro Woche anstelle einer Anmeldung pro Tag zuzulassen. Wenn die Leute länger als eine Woche vergessen, sich einzuloggen, ist es unwahrscheinlich, dass sie wirklich daran interessiert sind, zu spielen, sodass sie keine Bots verwenden, um weiterhin Credits zu sammeln. Wenn es andererseits jemanden gibt, der so bescheuert ist, dass ein Bot sich einmal in der Woche anmeldet und dann drei Monate später zurückkommt, um zufällige Personen anzugreifen, dann haben Sie eben jemanden gefunden, der so entschlossen ist, dass er Sie sowieso geknackt hätte, was auch immer System, für das Sie sich entschieden haben (es sei denn, Sie haben sich für ein fehlerfreies System entschieden).

ps: begehen Sie nicht den Fehler, mehr Aufwand in die Behebung von Designfehlern zu stecken, als sie tatsächlich zu lösen!


1
„idealerweise ein Spiel sollte keinen Vorteil zu einem dummen Bot geben“ gute Ratschläge +1
Stephen

Guter Rat, aber für die Menschheit unerreichbar?
Kzqai

Absolut erreichbar, müssen Sie nur ein paar Spiele entwerfen, anstatt zufällige Dinge zu programmieren. Qualitätskosten.
o0 '.

2

Ich würde ein fehlgeschlagenes CAPTACHA nicht für eine Stunde verbieten, das scheint hart zu sein. Ich würde sie nur daran hindern, sich vorwärts zu bewegen, bis sie das CAPTACHA erfolgreich abgeschlossen haben und ein neues CAPTACHA-Bild angezeigt werden kann.

Ich würde das Captcha auch nur anzeigen, wenn sie Anfragen zu schnell stellen, ich würde das DateTime bei jeder Anfrage speichern und es dann mit der nächsten Anfrage vergleichen, wenn es weniger als 2-4 Sekunden dauert, zeigen Sie das CAPTACHA an, ansonsten lassen Sie sie gehen. Sie müssen festlegen, in welchem ​​Intervall das Spiel, der Server und die Bandbreite angemessen sind.

Sie können auch jedes X-mal, wenn eine Aktion ausgeführt wird, ein "erzwungenes" CAPTACHA ausführen. Dadurch wird verhindert, dass selbst ein automatisiertes Skript mit einem pauseeingebauten Zeitlimit das CAPTACHA-Zeitlimit auslöst.


Richtig. Dies sind alle Idee zur Herstellung eines CAPTCHA mehr benutzerfreundlich, und natürlich würde ich Konzepte umsetzen wie diese , wenn ich den CAPTCHA Weg gehen. Was ich suche, sind gute Alternativen, wenn es welche gibt.
Stephen

Schreiben Sie Ihr Spiel in Flash oder Silverlight, so dass es einem Bot schwerer fällt, Ihre Anwendung fernzusteuern?
Nate

Ich weiß nicht viel darüber, aber KingsOfChaos.com hat ein sehr ähnliches System wie Sie (Punkte / Umdrehungen pro Minute). Sie konnten sehen, wie sie es implementieren.
Nate

2

Wenn Spieler Punkte ausgeben, um andere Spieler anzugreifen, und Punkte begrenzt sind, scheint mir der offensichtliche Missbrauch darin zu liegen, mehrere Konten zu erstellen.

Wenn es Ihnen gelingt, die Anzahl der Benutzer auf ein einziges Konto zu beschränken, besteht für mich das Problem bei Bots darin, dass unter Ihrem System Benutzer sie abfeuern können, wenn sie schlafen oder auf der Arbeit sind.

Angesichts der Einschränkungen gilt Folgendes: (1) Kein Vorteil für Bots. (2) Belohnen Sie Personen, die sich mehrmals pro Tag anmelden

Ich halte es für ideal, die Anzahl der Aktionen, die sie an einem Tag ausführen können, auf eine vernünftige Zahl zu begrenzen.

Sie können beispielsweise festlegen, dass sich jemand innerhalb von 8 Stunden mehrmals anmelden und das System entsprechend anpassen kann. Oder jemand kann es überprüfen, bevor er morgens zur Schule oder zur Arbeit geht, wenn er nach Hause kommt, es nach dem Abendessen erneut überprüft und es überprüft, bevor er zu Bett geht.

Bestimmen Sie, was Ihr "idealer" Benutzer tut, und lassen Sie das Punktesystem dies belohnen.


Ich würde ein System aufbauen, das es belohnt, einen Teil der Punkte auf einmal auszugeben. Dazu hätte ich eine variable Wiederaufladungsrate für die Punkte. Jedes Mal, wenn Sie Punkte ausgeben, erhöht sich die Aufladezeit, um den nächsten Punkt zu erhalten. Wenn ein Bot also so schnell Punkte ausgibt, wie er sie erhält, dauert es immer länger, bis er den nächsten Punkt erhält, während eine Person alle ausgibt Wenn sie sich über Nacht angesammelt haben, bevor sie morgens das Haus verlassen, haben sie sie alle wieder, wenn sie von der Arbeit / Schule nach Hause kommen (8-12 Stunden später).


Ich habe nie über eine variable Laderate nach Verbrauch nachgedacht. Das klingt auf den ersten Blick genial. Ich muss darüber nachdenken. TBH, es belohnt den Gelegenheitsspieler und bestraft den Hardcore- / Die-Hard-Spieler, also weiß ich nicht.
Stephen

2

In einem Spiel würde ich empfehlen, "captcha" durch "puzzle mini-game" zu ersetzen. Der Unterschied ist der Grad an Spaß. Es gibt kaum einen Grund für ein Captcha in einem Spiel, es sei denn, Sie haben ein benutzerdefiniertes Minispiel ausprobiert und das wird immer noch zu Ende. In diesem Fall ist eine intelligentere Taktik erforderlich.


1

Wie von Tchalvak vorgeschlagen, würde ich den Weg des "Puzzle-Minispiels" beschreiten, aber ich würde ein paar Punkte für das Bestehen belohnen, um es benutzerfreundlicher zu machen

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.