Постоянная браузерная игра: капча или нет?


12

Я работал (время от времени) над pbbg, это довольно старая школа. Если вы когда-нибудь играли в Carnage Blender, тогда вы поняли.

Если нет, то это простая идея, которая была сделана много: игроку выделяется определенное количество «очков» каждый день, и он тратит эти очки, чтобы атаковать других игроков. Баллы начисляются со временем, вплоть до определенного предела.

Система начисления очков разработана для того, чтобы не дать переигравшим полностью опередить обычных игроков.

В случае бойни-блендера система CAPTACHA не позволяет пользователю «разыграть» систему с помощью бота или скрипта, предназначенного для использования всех своих очков каждый день с минимальными усилиями. Время от времени отображается случайная CAPTCHA, и если ее не пропустить, пользователь будет отстранен на час.

Что меня интересует, так это то, как сделать это более удобным для моей игры. Я понимаю, что должен предотвратить подобное плохое поведение, и я мог бы легко использовать тот же подход CAPTCHA, но есть ли более дружественная альтернатива?

Первоначальное исследование обнаружило ASIRRA от Microsoft, но пушистая / симпатичная атмосфера плохо работает с моей предполагаемой игровой темой.

ОБНОВЛЕНИЕ
Больше всего меня интересуют альтернативы стандартному CAPTCHA «по буквам это слово». Я хочу стараться, чтобы геймплей был как можно более непрерывным для хороших игроков.

Я видел то, что я называю CAPTCHA одноразового использования , например, спрашиваю пользователя "что такое пять плюс шесть минус два?" Но это потребовало бы слишком больших усилий для составления достаточно большой базы данных вопросов, чтобы помешать злоумышленникам. Тем более что CAPTCHA предназначен для очень частого использования.

ОБНОВЛЕНИЕ № 2
Как отметил Джо Вершниг в своем ответе, наличие системы CAPTCHA, позволяющей ограничивать ботов в игре быстрее, чем люди, немного избыточно, если ходы ограничены в день. Я не объяснил свою систему баллов буквально, и это была моя вина. В действительности каждые 10 минут накапливаются 10 или 20 баллов, а в 200 - максимум. Таким образом, очень конкурентоспособный игрок может возвращаться каждые несколько часов и использовать свои очки. Я хочу наградить тех людей, которые так любят мою игру, что они возвращаются так часто. Если я не позволю им играть до следующего дня, когда они получат свои очки, я бы отвергал игроков, которые иначе наслаждались бы моей веб-игрой. Это мешает игроку постоянно тратить очки, в то же время давая им несколько очков каждые несколько минут.

Это открыто для злоупотреблений.


1
Повторное обновление № 2: Ваша описанная цель системы начисления баллов упрощена: «Я хочу вознаграждать игроков, которые играют в среднем не менее 2,4 раз в день». Почему? Почему вас волнует, что они играют 2,4 раза в день, а не один раз? Вы говорите: «Я хочу наградить тех игроков, которым нравится моя игра», но если я вхожу в игру 5 раз в день или только один раз, это не показатель того, насколько мне нравится ваша игра. Подумайте, что вы на самом деле делаете здесь и почему вы это делаете. Тогда найдите другой способ сделать это так, чтобы вам не приходилось придумывать систему очков 2,4 раза в день, которая ОБУЧАЕТ ваших игроков ботать.
doppelgreener

1
Я надеюсь , что вы действительно признаете , что, требуя от посещения 2.4 / день для оптимальной игры вы являетесь поощряя Botting , так как многие люди не могут сделать это обязательство. В этом даже нет необходимости: вы ничего не добьетесь, кроме ботов и отчуждения потенциальных игроков! Рассмотрим «Королевство ненависти», феноменально успешную игру, которая дает вам 40 ходов в день (можно повысить с помощью предметов). С кепкой 200 вы можете ждать до 5 дней одновременно. Королевство Хаоса делает нечто подобное. Ни один из них не дает особой награды за частую игру, но у обоих есть игроки, которые входят в систему несколько раз в день независимо.
doppelgreener

@Jonathan: Обычно причина, по которой вы заботитесь о том, чтобы пользователи заходили в среднем по x раз в день, заключается в том, что это то, что вам нужно, чтобы сделать вашу игру прибыльной, исходя из рекламных ставок, которые вы получаете. Стратегия монетизации KoL - это внутриигровые покупки, так что это не относится.

1
@Joe: Тогда я бы рассмотрел альтернативную стратегию рекламы / монетизации, имея в виду, что, когда я не отталкиваю игроков, я мог бы фактически показывать больше рекламы в целом из-за более высокого количества игроков. Если моя игра разработана успешно, те, кто будет посещать ее несколько раз в день, будут делать это в любом случае - потому что им нравится игра, и они выбирают, а не потому, что игровая механика прозрачно заставляет их делать это (примечание: это означает, что Стивен не буду награждать «тех людей, которые так любят мою игру» , просто «тех, на кого работает мой механик давления» )
doppelgreener

Ответы:


8

"Есть ли более удобная альтернатива?"

Более удобная альтернатива для чего? Какая капча предназначена для достижения в вашей системе?

Похоже, что он предназначен для предотвращения ботов, при условии, что боты могут играть «быстрее», чем обычные игроки. Но вы также уже ограничили количество действий, которые пользователь может выполнять в день, что позволяет достичь той же цели. Таким образом, капча кажется излишней.

Я бы посоветовал вам взглянуть на альтернативные интерфейсы Kingdom of Loathing . Он использует аналогичную систему поворотов в день и имеет несколько популярных альтернативных интерфейсов, таких как KoLmafia , которые во многих отношениях неотличимы от «бота» игры. Большинство игроков чувствуют, что они добавляют, а не убирают из игры, даже для случайных игроков. Они упрощают пакетные действия, автоматизируют некоторые более медленные части и предлагают больше возможностей для пользовательского интерфейса в игре.

Если у вас уже есть проверки в вашей игре, чтобы гарантировать, что ИИ не могут просто играть быстрее, чем люди - и, имея ходы в день, у вас есть такая проверка - тогда я предлагаю вам попробовать поощрять автоматизацию вашей игры, как будто ваш дизайн сбалансированный, он может только улучшить опыт игрока.


1
Очень хорошее понимание! обороты в день вводят в заблуждение, и это была моя вина. Я уточню вопрос, чтобы уточнить.
Стивен

Чем больше я об этом думаю, тем больше мне это нравится. Придется немного подумать, и пусть этот вопрос немного обострится.
Стивен

1
Например, автоматизированные боевые системы KolMafia были настолько полезны, что фактически интегрировали боевую макросистему в настоящую игру.
Coderanger

Я помню, что на RuneScape есть простые вопросы, которые задает Джинн, если вы их правильно поняли, он даст вам подарок.
Джонатан Коннелл

3

Я бы никогда не стал играть в игру, в которой требуются капчи: это действительно ужасная практика, которую следует избегать.

В любом случае, ваша игра имеет более серьезные проблемы, чем в любом случае: в идеале игра не должна давать никаких преимуществ глупому боту, так что использовать глупого бота было бы бессмысленно. Если вы не можете этого достичь, это проблема проектирования, которая не будет иметь реального решения, только более или менее приемлемые обходные пути.

Под «глупым ботом» я подразумеваю ботов, которые не принимают никакого значимого решения, а вместо этого просто «фармят» (вот что здесь происходит). Умные боты (например, прицельные или играющие в шахматы) - это совсем другое дело.

Тем не менее, если вы согласны с идеей создания игры с недостатками дизайна, еще есть возможности для улучшений.

Примите тот факт, что вы не можете остановить действительно решительного бота, и вместо этого сосредоточьтесь на единственном, что вы можете сделать: лишить бота возможности использовать его. Если у людей нет причин использовать бота ... они не будут их использовать (и если они все равно это сделают, это не будет иметь значения).

Возможное решение - разрешить один вход в неделю вместо одного в день. Если люди забудут войти в систему более чем на неделю, вряд ли им все равно будет интересно играть, поэтому они не будут использовать ботов для получения кредитов. Если, с другой стороны, есть кто-то настолько взбешенный, который делает бота, который регистрируется один раз в неделю, а затем возвращается через три месяца, чтобы атаковать случайных людей, ну, вы только что нашли кого-то настолько решительного, что все равно вас бы взломали, что угодно выбранная вами система (если, конечно, вы не выбрали безошибочную систему).

PS: не делайте ошибку, прикладывая больше усилий к обходным недостаткам дизайна, чем к их фактическому решению!


1
«в идеале игра не должна давать никаких преимуществ глупому боту», хороший совет +1
Стивен

Хороший совет, но недостижимый для человечества?
Kzqai

Абсолютно достижимо, вам просто нужно сделать реальный игровой дизайн вместо того, чтобы кодировать случайные вещи. Качество стоит.
о0 '.

2

Я бы не запретил неудачную CAPTACHA на час, что кажется грубым, я просто запретил бы им продвигаться вперед, пока они успешно не завершат CAPTACHA и не разрешат показ нового изображения CAPTACHA.

Я бы также отображал капчу, только если они делают запросы слишком быстро, я бы сохранял значение DateTime для каждого запроса, а затем сравнивал бы его со следующим запросом, если он меньше 2-4 секунд, вы отображаете CAPTACHA, в противном случае они идут. Вам нужно будет определить разумный интервал для вашей игры, сервера и пропускной способности.

Вы также можете выполнять «принудительную» CAPTACHA каждый раз, когда выполняется какое-либо действие, это предотвратит даже автоматический скрипт со pauseвстроенным, поэтому он не будет запускать ограничение CAPTACHA по времени.


Правильно. Все это правильные идеи для того, чтобы сделать CAPTCHA более удобной для пользователя, и, конечно, я бы реализовал такие концепции, если бы я пошел по пути CAPTCHA. Я ищу хорошие альтернативы, если они есть.
Стивен

Написать свою игру на Flash или Silverlight таким образом, чтобы боту было труднее управлять вашим приложением?
Nate

Я не знаю много об этом, но KingsOfChaos.com имеет очень похожую систему, так как ваша (точки / повороты каждую минуту) вы могли видеть, как они ее реализуют.
Nate

2

Если игроки тратят очки, чтобы атаковать других игроков, а очки ограничены, мне кажется, что очевидным злоупотреблением является создание нескольких учетных записей.

Если вам удастся ограничить количество пользователей одной учетной записью, проблема с ботами для меня будет заключаться в том, что в вашей системе люди могут отключать их, когда они спят или на работе.

Итак, учитывая ограничения: (1) нет никаких преимуществ для ботов (2) вознаграждение людей за вход в систему несколько раз в день

Мне кажется, что в идеале нужно ограничить количество действий, которые они могут использовать в течение дня, до некоторого разумного числа.

Например, вы можете решить, что кто-то может разумно войти в систему несколько раз в течение 8-часового периода и соответствующим образом настроить систему. Или кто-то может проверить это до того, как они пойдут утром в школу / на работу, проверить это, когда они вернутся домой, проверить это снова после обеда и проверить это перед сном.

Определите, что делает ваш «идеальный» пользователь, и сделайте за это систему баллов.


Я бы построил систему, которая вознаграждала бы тратить кучу очков за один раз. Для этого у меня будет переменная ставка пополнения счета. Каждый раз, когда вы тратите очки, время перезарядки, чтобы получить следующее очко, увеличивается ... поэтому, если бот тратит очки так же быстро, как они их набирают, получение следующего будет дольше и дольше, тогда как если человек тратит все Баллы, которые они накопили за ночь до того, как покинуть дом утром, вернут их всех к тому времени, когда они вернутся домой с работы / из школы (через 8-12 часов).


Я никогда не думал о переменной скорости пополнения в зависимости от использования. Это звучит гениально на первый взгляд. Я должен подумать об этом. TBH, это своего рода вознаграждение случайного игрока и наказание хардкорного / хард-игрока, так что я не знаю.
Стивен

2

В игре я бы рекомендовал заменить «капчу» на «мини-игру-головоломку». Разница заключается в уровне веселья. В игре действительно мало причин для ввода капчи, если только вы не попробовали собственную мини-игру, и это все еще не получилось. В этом случае сделать это требует более разумной тактики.


1

По предложению Чальвака, я бы пошел по пути «мини-игры-головоломки», однако я бы получил несколько очков за его прохождение, чтобы сделать его более удобным для пользователя.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.