● обновлено: профили, бейджи, облако скриптов

Общие конфиги и Lua для spype

Загружай свои конфиги и скрипты в облако прямо из меню игры, делись ими с друзьями и читай полный справочник Lua API. Без аккаунтов: профиль защищается ключом, который генерирует сам клиент.

Работает и из игры, и из браузера. Игра общается с тем же API, что и сайт.

spype_sync.lua
-- загрузить конфиг в облако из Lua-скрипта
sync.publish_config('my_aim', function(ok, id_or_err)
    print('[cloud]', ok, id_or_err)
end)

-- или любой Lua-файл
local src = utils.FileRead('my_script.lua')
sync.publish('lua', 'my_script', 'описание', src, function(ok, id)
    print('[cloud]', ok, id)
end)

-- забрать чужой конфиг
sync.list('config', function(items)
    for _, item in ipairs(items or {}) do
        print(item.id, item.name)
    end
end)
—профилей в сети
—Lua-скриптов
—конфигов
—онлайн сейчас

Что умеет

Всё работает через один API — сайт, игровой клиент и сторонние скрипты используют его одинаково.

☁Облако из меню

Вкладка Scripts → Cloud в меню игры: отправить текущий конфиг или открытый Lua-скрипт, скачать чужое в один клик.

✓Бейджи игроков

Клиент стучится на сервер раз в 20 секунд и рисует метку над игроками, которые тоже запустили spype.

⌘Lua API

Полный справочник по game, draw, rage, events, ui и остальным таблицам — с поиском и копированием кода.

⇄Синхронизация

Профиль, онлайн-статус и библиотека обновляются автоматически. Несколько адресов сервера — если один недоступен, клиент идёт к следующему.

⚡Без регистрации

Никаких аккаунтов и паролей. Клиент генерирует ключ профиля, сервер хранит только его хеш.

↯Один API

/api/heartbeat, /api/library, /api/profiles, /api/stats, /api/docs/lua — открытые для сторонних скриптов.

Как начать

Три шага — и облако доступно из игры.

1
Установи spypeСкачай архив и распакуй в любую папку.
2
Открой меню → Scripts → CloudНажми «Проверить соединение» — статус должен стать зелёным.
3
Отправь конфигКнопка «Загрузить конфиг» публикует текущие настройки в облако.
Перейти к загрузке

Адрес сервера

Клиент хранит адрес в файле scripts/spype_sync_endpoint.txt. Можно задать вручную или через Lua:

sync.set_endpoint('https://spype.pages.dev')
print(sync.endpoint())

Если адрес не отвечает, клиент автоматически перебирает запасные.

API для своих скриптов

Минимальный пример — отправка и чтение библиотеки.

POST /api/library
{
  "xuid": "76561198000000000",
  "key": "your-profile-key",
  "kind": "lua",
  "name": "my_script",
  "description": "что делает скрипт",
  "content": "print('hello')"
}
GET /api/library?kind=lua
{
  "ok": true,
  "items": [
    {
      "id": "0f9a12c3d4e5f607",
      "kind": "lua",
      "name": "my_script",
      "description": "что делает скрипт",
      "xuid": "76561198000000000",
      "downloads": 12,
      "updated_at": 1764000000000
    }
  ]
}

Подробности — в разделе Lua API и на странице статуса.