Независимые кости для онлайн-игр
Броски, которые никто на сервере не подтасует.
RandomDice.org выдаёт криптографически стойкие беспристрастные целые числа и публичную квитанцию на каждый бросок. Игроки могут сверить число. Студии не могут тихо «выставить» кость.
Бесплатно 10,000 вызовов в сутки UTC на ключ. Нужно больше? Напишите нам.
Клиенты
Игры, которые уже бросают открыто.
Эти студии вызывают RandomDice.org для боя, добычи или настольных бросков. Нажмите логотип, чтобы открыть публичный журнал этой игры — броски за последние 15 минут, обязательное player_name, параметры и время. Найдите свой ник на той странице. Игра, которая показывает число, отличное от журнала, не использует наш результат.
Зачем
Игрокам не следует доверять генератору случайных чисел дома.
В размещённой игре сервер принадлежит студии. «Случайная» кость может быть взвешена, переброшена или подменена задним числом. Это подтасовка, а не бросок. RandomDice.org стоит вне игры: сервер просит у нас число, мы генерируем его через PHP random_int() (CSPRNG) и публикуем броски за последние 15 минут каждой указанной игры — включая обязательное player_name — чтобы любой мог сверить значение.
- Беспристрастный диапазон. Равномерные целые от
minдоmax, по умолчанию 1–6. - Публичные броски. Броски за последние 15 минут каждой указанной игры видит кто угодно — ник, значения, параметры и время. Нажмите логотип клиента и найдите свой ник.
- Публичная квитанция. Каждый вызов также возвращает
idиverify_url. - Бесплатная квота. 10,000 вызовов API в сутки UTC на ключ. Сверх этого напишите нам.
Как пользоваться
Один JSON API. Вызывайте откуда угодно.
Работает из адресной строки, curl, fetch, Python, Java, HTTP Godot, Unity и старых бэкендов, которые шлют JSON — из всего, что достаёт до HTTPS. Подтверждайте личность токеном Bearer, заголовком X-Api-Key или параметром api_key.
Конечная точка
GET or POST https://randomdice.org/api/v1/roll
Параметры
player_name (обязательно, 1–40 символов), min (по умолчанию 1), max (по умолчанию 6), count (1–100, по умолчанию 1). Подтверждение через Authorization: Bearer, X-Api-Key или api_key (удобно для GET в браузере). Необязательные свои строки: дополнительные поля или объект params — не больше 10, ключи и значения не длиннее 32 символов. Они сохраняются и показываются в публичном журнале. Вызовы без player_name отклоняются. Один HTTP-запрос считается одним вызовом квоты, даже если count — это пачка.
Квота
10,000 вызовов в сутки UTC. Заголовки: X-RateLimit-Limit, Remaining, Reset. Сверх квоты ответ 429.
GET в браузере — вставьте в адресную строку:https://randomdice.org/api/v1/roll?api_key=rd_live_YOUR_KEY&player_name=FlashMan&min=1&max=6&count=1
curl -H "Authorization: Bearer rd_live_YOUR_KEY" \
"https://randomdice.org/api/v1/roll?player_name=FlashMan&min=1&max=6&count=1&match_id=arena-12"
fetch("https://randomdice.org/api/v1/roll", {
method: "POST",
headers: {
"Authorization": "Bearer rd_live_YOUR_KEY",
"Content-Type": "application/json"
},
body: JSON.stringify({
player_name: "FlashMan",
min: 1,
max: 6,
count: 3,
params: { match_id: "arena-12", round: "3" }
})
})
import requests
r = requests.get(
"https://randomdice.org/api/v1/roll",
params={"player_name": "FlashMan", "min": 1, "max": 20, "count": 1, "match_id": "arena-12"},
headers={"Authorization": "Bearer rd_live_YOUR_KEY"},
)
print(r.json())
Успешный ответ содержит player_name, params, values, id, verify_url и (когда игра в списке) public_log_url. Покажите эти ссылки игрокам. Броски за последние 15 минут публичны на странице игры и ищутся по нику, включая свои параметры. Ошибки — это JSON: { "ok": false, "error": { "code", "message" } }.
Ключ API
Выдать ключ за один шаг.
Без ожидания одобрения. Ключ показывается один раз на этой странице и приходит на почту. Квота начинается с 10,000 вызовов в сутки UTC. Тот же ключ вы вставите при отправке игры, чтобы логотип на главной открывал публичный журнал бросков.
Отправить
Добавьте игру и получите печать сертификата.
Это не закрывает API. Это проверенный каталог клиентов и публичный журнал бросков. Вставьте полный ключ API сверху — после одобрения логотип на главной кликабелен и открывает броски за последние 15 минут с фильтром по нику. Заявки в ожидании стоят в очереди, пока мы не одобрим или не отклоним их письмом.
Контакт
Квота, сотрудничество или проблема с броском.
Мы не публикуем ящик на этой странице. Отправьте форму, и мы ответим на указанный адрес.