Документація Steamworks
Мікротрансакції (внутрішньоігрові придбання)

Огляд

Steam надає підтримку найвищого рівня для внутрішньоігрових придбань, як для предметів, так і для ігрової валюти чи будь-чого іншого. Ви можете використовувати API мікротрансакцій Steam для надання користувачам широкого вибору.

Якщо ви працюєте над продуктом із внутрішньоігровими придбаннями в Steam, то маємо для вас деякі поради, огляд найкращих практик і ресури, що допоможуть вам розпочати. Ігри з вільним доступом та ігри, що купуються перед завантаженням, мають спільні елементи, про які варто знати до початку роботи над вашим випуском у Steam.

Вимоги до внутрішньоігрових придбань

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

Гаманець Steam можна використовувати для купівлі окремих предметів або для придбання внутрішньоігрової валюти.

Запобігання шахрайству

Коли ви пропонуєте на продаж щось цінне, то ризикуєте стати жертвою шахраїв. Steam діє як платіжний оператор для внутрішньоігрових крамниць — він проводить перевірку на шахрайство, але тільки ваші ігрові сервера можуть повністю зрозуміти контекст придбання в грі.

Ваша гра особливо вразлива, якщо внутрішньоігрові придбання є частиною економіки, де користувачі обмінюються й дарують віртуальні предмети й сервіси. Якщо шахрайство пошириться й не буде зупинено, то воно може знецінити предмети вашої економіки, створити ігровий дисбаланс, що зіпсує враження від гри в чесних гравців.

Шахрайство часто полягає в придбанні дорогої ігрової валюти чи предметів за допомогою вкраденого способу оплати (наприклад, краденої кредитної картки). Мета шахраїв — перенести ці віртуальні товари на інші акаунти, якими володіє або сам шахрай, або гравець, який платить за ці товари за межами системи. Також шахраї можуть спробувати продати весь акаунт за кошти за межами системи.

Ваша команда повинна знайти баланс в економіці, коли зловмисники блокуються, але це не зачіпає чесних гравців. Ось деякі загальні поради про базовий захист проти звичайних видів шахрайства:

  1. Використовуйте ігрові відомості про історію користувача, щоб обмежити дії, які можуть привести до шахрайства. Наприклад, якщо ви знаєте, що гравець є новачком, то доцільним буде обмежити йому придбання дорогих предметів чи валюти. Малоймовірно, що чесний новачок зацікавиться придбанням ігрової валюти й товарів на 200 доларів США. Для досягнення цього корисно врахувати різні дані про користувача.
    • Чи досяг користувач певного мінімального рівня у вашій грі?
    • Чи робив він раніше придбання? Чи виглядає чесною його попередня поведінка?
    • Які типові середні обсяги придбань за місяць у ваші грі? Чи не є ця трансакція підозрілою у порівнянні з ними?
    • Як багато трансакцій на місяць роблять типові платоспроможні користувачі? Чи не є підозрілою кількість придбань у цього користувача?
    • Чи не викликає підозр історія обмінів користувача?
  2. Використовуйте знання Steam про історію користувача, щоб отримати інформацію про конкретну трансакцію чи гравця. Ви можете отримати інформацію від Steam, що допоможе визначити, які дії можна дозволити цьому користувачу. Викличте GetUserInfo() в API ISteamMicroTxn, щоб отримати інформацію про користувача. Три основні параметри відповіді будуть корисні для визначення того, чи можна цьому користувачу довіряти:
    • Country — повертає країну, у якій користувач здійснює придбання. Само по собі це мало інформативно, але є корисним у поєднанні з даними про валюту.
    • Currency — повертає код валюти гаманця Steam користувача. Зазвичай це використовується для визначення того, у якій валюті показувати ціни користувачу, але ви також можете перевірити, чи збігається валюта трансакції з країною, звідки вона зроблена. Відсутність збігу не обов’язково означає шахрайство, адже користувачі можуть робити придбання під час подорожей, однак ця перевірка може дати більше інформації для визначення схем шахрайської активності.
    • Status — повертає значення «Active» (активний), «Trusted» (надійний) чи «Locked» (заблокований).
      1. Стандартно акаунт активний.
      2. Надійний акаунт здійснював придбання понад 90 днів тому й не має скасованих трансакцій у Steam. Важливо мати на увазі, що надійні акаунти також можуть бути зламані чи спеціально підготовлені за допомогою дешевих придбань. Цей фактор не повинен бути єдиною підставою для прийняття чи відхилення придбання.
      3. Заблокований акаунт не може здійснювати придбання в Steam через шахрайство, скасовані трансакції, злам чи порушення правил угоди підписника Steam. Цей статус не є постійним, особливо у випадку зламу акаунта чи випадкових скасувань трансакцій із боку банків.
  3. Важливо виявляти шахрайські трансакції до того, як вони почнуть впливати на економіку гри.
    • Steam виявляє більшість шахрайських трансакцій упродовж 48 годин із моменту першого придбання. Викликайте API GetReport() принаймні один раз на день, щоб узгодити зміни в трансакціях відповідно до їхнього оновленого стану.
    • Варто забороняти обмін чи дарування придбаних предметів принаймні впродовж 72 годин із моменту купівлі. Це не зачепить більшість гравців, оскільки вони використовують кошти й предмети для себе, тоді як шахраям потрібно переносити товари на інші акаунти для отримання вигоди.
    • Коли відшкодовуються кошти за придбання, то автоматична система «повернення» вилучає кошти й предмети з шахрайського акаунта, що припиняє подальші шахрайські дії. У поєднанні з часом виявлення та обмеженням обміну шахрай не зможе отримати прибуток із шахрайського акаунта.
  4. Не показуйте ключ продукту під час внутрішньоігрових придбань, оскільки його можуть використати на іншому акаунті. API Steam дає можливість надавати пакунки чи розблоковувати вміст без необхідності показувати ключ користувачам, адже ключ можна скопіювати.
  5. Не дозволяйте користувачам змінювати пов’язані акаунти, що описані в наступному розділі про пов’язування акаунтів.
Використання служби інвентарю Steam дозволяє впровадити більшість із цих порад.

Пов’язування акаунтів

Чи маєте ви власну систему акаунтів? Якщо так, то рекомендуємо вам використати API Steamworks для автоматичного створення чи пов’язування акаунта Steam із вашою системою, а не вимагати від гравця вручну створювати акаунт у вашій грі чи на сайті. Створення нових акаунтів в інших сервісах — це додаткова перепона для частини користувачів, яка може суттєво вплинути на вашу потенційну аудиторію.

Акаунт користувача Steam можна пов’язати з вашою системою шляхом отримання й перевірки SteamID, що є унікальним ідентифікатором акаунта Steam.

В ідеалі користувач не повинен мати можливість відв’язати свій акаунт Steam від вашої системи, щоби натомість прив’язати туди інший акаунт Steam.

Для докладнішої інформації перегляньте розділ про пов’язування акаунтів.

Поради щодо внутрішньоігрової економіки

Steamworks дає багато можливостей для інтеграції мікротрансакцій та ігрової економіки. Існує кілька речей, на які варто звернути увагу.

Для докладнішої інформації перегляньте виступ Кайла Девіса на Steam Dev Days.
https://www.youtube.com/watch?v=RHC-uGDbu7s

  1. Використовуйте свою внутрішньоігрову економіку для покращення свого продукту і для задоволення користувачів, а не для витягування коштів із нещасливих гравців.

    Штучні бар’єри під час поступу в грі й віртуальні валюти незрозумілої цінності в довгостроковій перспективі можуть призвести до розчарування гравців у вашій грі. Якщо користувачі побачать, що внутрішньоігрові трансакції використовуються для зупинки ігрового процесу з вимогою заплатити, то з часом покинуть гру. Платежі за позбавлення від негативних емоцій — ненадійна бізнес-модель. На цьому ринку є достатньо конкурентів, які запропонують значно приємніші альтернативи для витрати часу й коштів гравців.
  2. Створюйте системи, де придбання одного користувача покращує гру для всіх інших.

    Багато ігор із вільним доступом, особливо багатокористувацьких, використовують системи, де чим більше один гравець витрачає грошей, тим гіршою гра стає для інших гравців. Уникайте створення систем, де гравці мають можливість негативно впливати на враження інших гравців, а зосередьтеся натомість на продуктах і предметах, які поглиблюють позитивні сторони гри. У презентації з конференції Steam Dev Days подано конкретні приклади, але найкращим підходом у створенні продукту є концепт: «Я радію, якщо інший гравець робить у грі придбання». Це підходить для ігор усіх жанрів та стилів, тож ми рекомендуємо поекспериментувати таким чином у ваших власних іграх.
  3. Дозвольте своїм користувачам створювати цінні речі один для одного.

    The Steam Workshop consists of tools that allow your customers to create content and value for one another. Користувачі можуть створювати моделі, мапи, модифікації та інші цінні компоненти для вашої гри. Depending on your product and your goals, you can choose between an open or curated Workshop. У будь-якому разі, творчість і пристрасть користувачів можуть суттєво збільшити цінність вашого продукту й надати вам чудове джерело додаткового вмісту. Докладнішу інформацію можна знайти в розділі про майстерню Steam та в обговореннях розробників Steamworks.

Overall, being a slave to metrics like revenue-per-day or per-user can drive short-term decisions that harm your players and the longevity of your product. Перегляньте повний запис виступу на Steam Dev Days для конкретних прикладів і додаткових ідей.

Отримання максимуму від оновлень

Оновлення є важливою частиною життєвого циклу вашого продукту й важливою формою спілкування з користувачами. Необхідно робити оновлення для виправлення помилок і проблем, але великі оновлення також є важливою можливістю додавати новий вміст, нові режими гри чи нові функції, які утримують інтерес користувачів та приваблюють нову аудиторію.

Більше порад і рекомендацій стосовно використання оновлень можна знайти в розділі маркетингових найкращих практик.