utility
Время, случайные числа, мышь, буфер обмена, проекция в экран. 15 канонических функций.
| Функций | 15 (45 с алиасами) |
| Проверено вживую | 13 из 15 (GetFingerprint и TeleportToPlace частично) |
| Требуемый event | нет |
| Сайд-эффекты | MoveMouse, SetClipboard, TeleportToPlace меняют глобальное состояние. LoadImage выделяет новый texture handle при каждом вызове. |
Алиасы. Каждая функция на этой странице существует в трёх формах:
utility.GetTickCount(канон),utility.getTickCount(camelCase),utility.get_tick_count(snake_case). Все три зовут одну и ту же C-функцию. См. Обзор / Конвенция именования.
Краткий справочник
| Функция | Сигнатура | Заметка | Статус |
|---|---|---|---|
RandomInt | (a: int, b: int) → int | инклюзивный [a, b] | проверено |
RandomFloat | (a: number, b: number) → number | инклюзивный [a, b] | проверено |
GetTickCount | () → int | миллисекунды с запуска чита | проверено |
GetDeltaTime | () → number | секунды с прошлого кадра | проверено |
GetSystemTime | () → {year, month, day, hour, minute, second, weekday} | локальное время, weekday 0=Вс..6=Сб | проверено |
GetTimestamp | () → int | unix-секунды (UTC) | проверено |
GetFingerprint | () → string | пусто в этом билде | частично |
GetMousePos | () → {[1] = x, [2] = y} | одна array-table, не multi-return | проверено |
MoveMouse | (dx: int, dy: int) | относительный offset, НЕ pixel-perfect (Win-ускорение влияет) | проверено |
GetMenuState | () → bool | true если меню чита открыто | проверено |
WorldToScreen | (v3: Vector3) → screenX: number, screenY: number, onScreen: bool | onScreen = проекция валидна, не bounds | проверено |
GetClipboard | () → string | UTF-8, пусто для не-текста | проверено |
SetClipboard | (s: string) | перезаписывает системный буфер | проверено |
LoadImage | (data: string) → number | PNG/JPG байты, новый texture id каждый вызов | проверено |
TeleportToPlace | (jobId: string) | join Roblox-сервер по Job ID, сетевой сайд-эффект | частично |
RandomInt
utility.RandomInt(a: int, b: int) → int
Возвращает случайное целое в инклюзивном диапазоне [a, b]. Передавай a <= b. Распределение равномерное.
Проверено вживую: RandomInt(1, 100) вернул 69, потом 38 на последовательных вызовах.
local roll = utility.RandomInt(1, 100)
print(roll)
RandomFloat
utility.RandomFloat(a: number, b: number) → number
Возвращает случайное число с плавающей точкой в диапазоне [a, b]. Передавай a <= b. Отрицательные диапазоны допустимы: RandomFloat(-1, 1) работает.
Проверено вживую: RandomFloat(0, 1) вернул 0.26634337488978, потом 0.48977073860767.
local jitter = utility.RandomFloat(-0.5, 0.5)
GetTickCount
utility.GetTickCount() → int
Счётчик тиков чита в миллисекундах. Монотонно возрастает.
Проверенное живое значение: 99868805 (около 27 часов с момента запуска чита).
Используй для троттлинга, кулдаунов, дельт между кадрами:
local last = 0
cheat.register("onUpdate", function()
local now = utility.GetTickCount()
if now - last < 500 then return end
last = now
print("срабатывает каждые 500 мс")
end)
GetDeltaTime
utility.GetDeltaTime() → number
Время в секундах с прошлого кадра.
Проверенное живое зна чение: 0.0045325998216867 (около 220 FPS).
cheat.register("onPaint", function()
local fps = 1 / math.max(utility.GetDeltaTime(), 0.0001)
draw.TextOutlined(string.format("FPS: %.0f", fps), 10, 10,
Color3.fromRGB(255, 255, 255), "Verdana")
end)
GetSystemTime
utility.GetSystemTime() → { year, month, day, hour, minute, second, weekday }
Локальное системное время как table. Все поля целочисленные.
weekday следует C-конвенции tm_wday: 0 = воскресенье, 1 = понедельник, ... 6 = суббота. Проверено вживую: 25 апреля 2026 была суббота, и вызов вернул weekday = 6.
Проверенный живой вывод:
{ year=2026, month=4, day=25, hour=18, minute=24, second=32, weekday=6 }
local t = utility.GetSystemTime()
local stamp = string.format("%04d-%02d-%02d %02d:%02d:%02d",
t.year, t.month, t.day, t.hour, t.minute, t.second)
print(stamp)