Якщо люди хочуть бот, я не думаю, що ти насправді можеш їх зупинити.
Ви, звичайно, можете вживати багатьох заходів, які роблять біль чи меншим болем. Але ви можете зробити так багато лише до того, як ваша база коду перетвориться на гігантську безлад, яку потрібно підтримувати, схильну до помилок і дратує законних користувачів. Тим часом боттери завжди знайдуть спосіб перемогти ваші контрзаходи:
- Їх більше, ніж ти
- У них більше вільного часу (вам потрібно розділити час між фактичним розвитком і захистом бота, вони можуть зламати свій бот-код протягом усього дня)
- Коли ви створюєте чужі, складні гарантії, автори ботів будуть надалі заохочуватися, оскільки це цікаво порушити захист бота
- Якщо є чорний ринок людей, комерційно отримують прибуток від ботів, тим складніше змусити писати бота, тим більше цінні робочі боти стають, тим ви стимулюєте ботинг
Ви, в основному, потрапите в пастку озброєнь з боттерами, і, виходячи з логіки, узгодженої з вищезазначених пунктів, а також мого досвіду таких ігор, ви не зможете не відставати.
Деякі розробники ігор застосовують надзвичайно агресивні заходи проти обману: Наприклад, Steam сканує пам’ять та файлову систему, щоб шукати хаки, а порушників можна покарати втратою рахунків на суму сотень доларів. Але все ж є боти та інші хаки для ігор Steam, а деякі з них працюють навіть половину часу. На відміну від них, у вас широко відкритий користувач API і не має контролю над комп'ютером користувачів. Це важкий бій з самого початку.
Проблема, яку ви намагаєтеся вирішити, по суті є тестом Тьюрінга: За винятком це дуже простий тест Тьюрінга, тому що ви не можете обдурити, вимагаючи важких проблем з AI, як мова. Незалежно від того, скільки евристики ви створюєте, було б тривіально для боттера додати трохи випадковості дії бота, щоб він імітував майже точно людину. Навіть ботові не було б важко дивитися, щоб ви трохи грали, і навчитися визначати час саме так, як ви. Потім , коли ви заборонити бот, пости Боттер величезного RANT на форумі про те , що він просто відданий гравець (і , можливо , він є на самому ділі помилкової позитивним результатом ) і вашого основною аудиторією хардкорних гравців будуть рости зі зброєю в руках проти вас.
Зробіть гру надто цікавою для бота
Основна причина, коли хтось використовує бота, полягає в тому, що є частина гри, яку вони хочуть пропустити. Якби вони насолоджувалися грою і вважали її веселою, вони не мали б бота в неї грати, вони грали б у неї самі.
Але якщо гра настільки нудна, навіщо її взагалі грати? Імовірно, деякі частини гри нудні та обов’язкові, щоб потрапити на цікаві частини. Наприклад, у ММО всі люблять підніматися на рівень, але ніхто не хоче вбити 42 324 страшних щурів з отрутою нежиті, щоб отримати XP. Тож вони дозволяють боту подрібнюватись та впускатись, щоб грати у найсміливішу роль.
Це не критика щодо вас чи вашої гри, але явно принаймні деякі гравці вважають деякі частини вашої гри стомлюючими. Ви повинні побачити, чи можете ви зменшити ці виснажливі частини, і розглянути можливість додавати більш важкі, осмислені рішення: Боти не вподобані глибокої стратегії чи бічного мислення порівняно з людським інтелектом, і крім того люди люблять приймати складні ігрові рішення.
З вашого опису, у мене складається враження, що це браузерна гра, схожа на "Травіан", де є черга складання з єдиним найкращим порядком побудови та певними завданнями "технічного обслуговування" (наприклад, ведення рейдів на фермах), які необхідно виконати. Ви кажете, що конфлікту немає, але в будь-якій драмі MMO і дрібній політиці це неминуче (IMO - це головна атракція), тому я впевнений, що ваші гравці знаходять способи прикути голову. З такими видами ігор багато цікавого походить від цих завдань на "технічне обслуговування" - те, що гравці дійсно хочуть зробити, це створити альянси та грати в гру дипломатії з суперницькими кланами, після чого технічне обслуговування стає своєрідним податком, де вам потрібно прокинутися до тривоги в непарні години, щоб дозволити собі потрапити в ту веселу дипломатичну частину. Тож виріжте нудьгу:
На жаль, такий підхід може не завжди працювати. Не всі гравці мають однакову толерантність до занурення або однакову концепцію розваги. Ви можете мати видатного механіка, яким користуються 99% ваших гравців, але 1% вважають нудним. Що робити, якщо 1% потім почне писати ботів, що зруйнує задоволення для 99%? Але в кінцевому рахунку це питання ступеня. Ви ніколи не можете видалити боттинг повністю, але ви можете мінімізувати шкоду.
Підрізні боттери
Багато дійсно негативних наслідків роботи ботів надходять від авторів ботів, комерціалізуючи свою роботу. Якщо це стосується вас, ви можете просто конкурувати з ботами. У багатьох онлайн-іграх, що базуються в режимі реального часу, вже є преміальні функції, які дозволяють пропускати час та автоматизувати (наприклад, розширені черги на збірку). Вони становлять санкціонований розробником офіційний бот. Якщо у вас є такі, і ціна їх буде відповідно, гравці купуватимуть вашу премію замість того, щоб купувати ботів. Хороша новина в тому, що ви керуєте API, тому у вас завжди є велика перевага в розробці автоматизації якості для вашої власної гри, тому на цей раз це програшний біт за боттерів.
Це не усуне любителів-аматорів чи людей, які вважають, що ваша премія не є хорошим співвідношенням грошей, тому знову ефективність такого підходу залежить від ситуації.
Вручну шукайте їх
Як я вже говорив вище, те, що ви робите, є по суті тестом Тьюрінга. Оскільки взаємодія з людьми, як відомо, вважається важким випробуванням Тюрінга, ви можете спробувати використати це.
Вручну огляньте гравців вищого рівня та перевірте, чи виявляєте ви щось підозріле. Можливо, вам навіть вдасться відволіктися від них, періодично досліджуючи їх способами, обмеженими лише вашою фантазією, щоб побачити, чи можете ви обдурити бота робити щось, чого він би не робив.
Хоча важко написати алгоритм, який надійно виявить ботів, людині не так складно навчитися їх визначати. Я думаю, що багато браузерних ігор використовують цю стратегію, і це може бути досить ефективно. Недоліком є те, що або вам потрібно весь час робити нудну роботу, або вам потрібно платити майстрам ігор, щоб робити регулярний ботовий патруль.