Возможности
Управление RTP
RTP (return to player) — доля ставок, которую игры возвращают на дистанции. Платформа позволяет управлять им в диапазоне 60–100 % — для всего проекта и, по желанию, для каждого игрока.
Как раунд получает RTP#
Уровень определяется до списания, в той же транзакции, что и платный раунд, и затем остаётся неизменным для этого раунда. Поэтому изменение действует со следующего раунда; начатые раунды заканчиваются на своём уровне.
- RTP провайдера в проекте не задан → игра использует естественную математику, управления RTP нет.
- RTP провайдера задан, персональный RTP выключен → раунды всех игроков идут на RTP провайдера проекта.
- Персональный RTP включён → у каждого игрока свой уровень (ниже).
Игры, участвующие в управлении RTP, помечены RTP-controlled в админ-панели (экран Games). Раунды фриспинов проходят ту же логику; раунды целевых исходов помечаются как заданные и в адаптивное окно не входят.
Настройки проекта#
В админ-панели: RTP & players → RTP settings (меняет владелец, персонал проекта только смотрит).
| Настройка | Значение |
|---|---|
| Provider RTP (переключатель Manage RTP of new games и ползунок) | RTP проекта, 60–100 %. Это потолок для всех и стартовый уровень каждого нового игрока. Уже зарегистрированные игроки сохраняют свой старт |
| Enable personal RTP | Включает личные уровни игроков. Выключено — все играют на RTP провайдера |
| Adaptive rule | Необязательная автоматическая коррекция уровня игрока (ниже) |
| Bet limits per game | Минимальная / максимальная цена раунда по игре и валюте (Лимиты ставок) |
Изменения сохраняются автоматически и действуют со следующего раунда.
Персональный RTP игрока#
- Новый игрок привязывается в первом раунде к RTP провайдера, актуальному в этот момент (стартовый уровень = текущий).
- Уровень можно изменить вручную (админ-панель или API оператора, 60–100 %, до двух знаков после запятой, с причиной, которая видна в журнале игрока). Ручной уровень замораживает адаптивное правило для этого игрока, пока вы не вернёте режим auto.
- В режиме auto игрок играет на текущем уровне, ограниченном RTP провайдера на данный момент (если RTP провайдера опустили ниже уровня игрока, игрок играет на RTP провайдера).
- Ручной уровень RTP провайдера не ограничивает.
- Журнал каждого игрока фиксирует, кто, когда и почему менял уровень (привязка, шаги правила, ручные изменения).
Адаптивное правило#
Правило следит за фактическим возвратом последних рассчитанных раундов игрока. Если игроку слишком везёт, оно слегка снижает его уровень; когда везение заканчивается — возвращает, но никогда выше стартового уровня.
| Параметр | Значение | По умолчанию |
|---|---|---|
| Window, rounds | Сколько последних рассчитанных раундов анализируется (50–100 000) | 1000 |
| Lower if player RTP is above, % | RTP окна выше этого значения снижает уровень | 150 % |
| Restore if below, % | RTP окна ниже этого значения возвращает уровень | 90 % |
| Step, p.p. | Изменение за шаг (0.1–20 процентных пунктов) | 2 п. п. |
| Not below start minus, p.p. | Уровень не опускается ниже старта игрока больше чем на это значение (0–40) | 6 п. п. |
| Минимальный оборот | По валюте: правило игнорирует окна с меньшей суммой ставок | нет |
За окно делается не более одного шага. Уровень не падает ниже 60 %. Игроков с ручным уровнем правило не трогает. Раунды фриспинов учитываются с номинальной ставкой.
Как смотреть фактический возврат#
Админ-панель показывает целевой RTP проекта, фактический RTP по рассчитанным ставкам и фактический возврат по игрокам (за всё время и в окне правила). На коротких выборках наблюдаемое значение может отличаться от целевого — это нормально.
API оператора: POST /playerRtp.do#
Нужны partner, api_key и разрешённый IP. Поля запроса:
| Поле | Где используется | Описание |
|---|---|---|
action | везде | get, set, auto или bet-limit |
player_id | везде | Игрок |
provider | везде | endorphina (по умолчанию), pragmatic или nolimitcity. Передавайте явно |
rtp | set | Проценты, 60–100, не более 2 знаков после запятой, например 94.5 |
reason | set, auto | До 200 символов, показывается в журнале |
currency, min_minor, max_minor | bet-limit | Лимит игрока в минорных единицах (строки); null в обоих полях снимает лимит |
# ручной уровень 94.5 % для игр Pragmatic Play
curl -s -X POST https://notell-api.com/playerRtp.do -H 'Content-Type: application/json' -d '{
"partner": "YOUR_PARTNER_ID", "api_key": "YOUR_API_KEY",
"action": "set", "player_id": "player-123", "provider": "pragmatic", "rtp": 94.5, "reason": "VIP agreement"
}'| Действие | Эффект |
|---|---|
get | Возвращает состояние игрока |
set | Устанавливает ручной уровень (режим manual) |
auto | Возвращает игрока в автоматический режим (адаптивное правило возобновляется) |
bet-limit | Устанавливает или снимает лимит ставки игрока по валюте (Лимиты ставок) |
Любое действие отвечает {"status":"ok","player":{…}}. Основные поля player:
| Поле | Значение |
|---|---|
bound | У игрока уже есть уровень для этого провайдера |
startBps, currentBps | Стартовый и текущий уровень в базисных пунктах (9450 = 94.50 %) |
mode | auto или manual |
roundsSinceAdjust | Раундов с последнего шага правила |
providerBps | RTP провайдера проекта в базисных пунктах (или null) |
effective | {bps, source} — используемый сейчас уровень; source — player, provider-cap или manual |
betLimits | Лимиты игрока по валютам |
journal | Последние изменения, сначала новые (до 100) |
Ошибки: INVALID_ACTION, INVALID_PLAYER, RTP_PROVIDER_UNSUPPORTED, RTP_LEVEL_INVALID, RTP_LEVEL_OUT_OF_RANGE, RTP_POLICY_REQUIRED (в проекте ещё нет RTP провайдера), INVALID_REASON, INVALID_CURRENCY, INVALID_BET_LIMIT, а также UNAUTHORIZED и IP_NOT_ALLOWED. См. справочник ошибок.
Админ-панель#
Всё перечисленное доступно на экране RTP & players — см. Админ: RTP и игроки.