Luau в Roblox: мова скриптів, документація та Engine і Cloud API
Зміст
Мова, якою пишуть логіку в Roblox, називається Luau — так її називає сама офіційна документація платформи. Не «Lua-подібна мова», не «скриптова мова Roblox», а конкретна назва з конкретного джерела: create.roblox.com/docs/luau.
Це важливо не з педантизму. Коли ти шукаєш відповідь на технічне питання, назва — це ключ до правильного довідника. Пошук за одним словом веде до офіційного розділу, пошук за іншим — до чужих форумів десятирічної давнини.
Нижче — що про мову та довідники відомо з першоджерела, чим відрізняються Engine API і Cloud API, і, окремо, чого ми тут не стверджуємо.
Що відомо точно
Фактів, які можна підперти офіційною документацією, небагато, і ми перелічимо їх прямо, без розгону:
- Офіційна документація Roblox називає мовою скриптів платформи Luau.
- Документація Luau винесена в окремий розділ —
create.roblox.com/docs/luau. - Для скриптів усередині досвіду Roblox тримає окремий довідник Engine API.
- Cloud API — це інший набір інтерфейсів, ніж Engine API, і має власний розділ документації.
Усе інше, що ти можеш прочитати про Luau в мережі — синтаксис, типи, продуктивність, історія — ми тут не переказуємо, бо не можемо підперти це нашими джерелами. Правильне місце для цього — сам розділ документації.
Чому мову винесли в окремий розділ
Структура документації сама по собі каже дещо корисне. Якщо мова описана окремо від довідника Engine API, значить це два різні шари знання:
- Мова — це те, як ти пишеш код узагалі: конструкції, правила, синтаксис.
- API — це те, до чого твій код звертається: об’єкти й інтерфейси платформи.
Практичний наслідок простий. Коли щось не працює, спершу зрозумій, у якому шарі проблема. Помилка в написанні коду — це до розділу Luau. «Не знаю, як звернутися до потрібної штуки в грі» — це до Engine API. Плутанина між шарами з’їдає найбільше часу в новачків.
Engine API і Cloud API — це не одне й те саме
Найпоширеніша пастка при читанні прикладів з інтернету: людина бере фрагмент коду з однієї частини екосистеми і намагається застосувати його в іншій.
| Питання | Engine API | Cloud API |
|---|---|---|
| Що це | довідник для скриптів усередині досвіду | інший набір інтерфейсів |
| Де документація | власний розділ на create.roblox.com/docs | власний розділ на create.roblox.com/docs |
| Взаємозамінні? | ні — це різні набори | ні — це різні набори |
Що з цього випливає для тебе:
Якщо ти пишеш логіку всередині свого досвіду — твій довідник Engine API. Якщо приклад, який ти знайшов, лежить у розділі Cloud API, він не «зламаний» і не «застарів» — він просто про інше. Копіювати його у скрипт досвіду немає сенсу.
⚠️ Чого ми не стверджуємо: ми не описуємо тут, для яких саме задач призначений Cloud API, які в нього можливості й обмеження. Наші джерела кажуть лише те, що це інший набір інтерфейсів з окремою документацією. Усе конкретніше — читай у самому розділі, а не в переказах.
Як користуватися довідниками, щоб не витрачати час
Порядок, який економить години:
- Сформулюй питання як «мова» або «платформа». Питання про те, як записати конструкцію — це Luau. Питання про те, як дістатися до чогось у грі — це API.
- Відкрий офіційний розділ, а не пошуковик. Стартова точка для мови —
create.roblox.com/docs/luau, для решти —create.roblox.com/docs. - Дивись, у якому розділі лежить приклад. Перед тим як копіювати код, перевір його «прописку»: Luau, Engine API чи Cloud API.
- Звіряй сторонні матеріали з офіційними. Відео й статті зручніші для першого розуміння, але первинне джерело — документація. Розбіжність вирішується на користь документації.
- Не роби висновків з мовчання. Якщо чогось немає в документації, це не означає «неможливо» — це означає «не описано в тому місці, куди ти дивився».
Чого ми тут свідомо не пишемо
Цей матеріал навмисно вузький. Ми не наводимо:
- фрагментів коду й «типових шаблонів» — вони старіють швидше за статті;
- порівнянь Luau з іншими мовами;
- будь-яких чисел: версій, дат, розмірів, кількості функцій. Немає числа в перевіреному джерелі — немає числа в тексті;
- порад «яку мову вчити першою» — це вибір, а не факт.
Якщо тобі потрібен саме практичний старт у редакторі, а не довідка про мову — це інша тема, і в нас вона розібрана окремо: перші кроки в Roblox Studio.
Кому Luau взагалі потрібен
Гравцеві — ні. Щоб запускати чужі досвіди, вистачає клієнта, акаунта і пристрою, який тягне гру; про останнє — у матеріалі про те, на яких пристроях працює Roblox.
Мова потрібна тим, хто робить власне: логіка, правила, поведінка об’єктів у досвіді — усе це пишеться скриптами. І якщо мета не «зробити для себе», а «щоб інші грали й це щось приносило», то далі йде окрема тема виплат — DevEx і обмін Robux.
Зверни увагу на послідовність: спершу мова й довідники, потім результат. Не навпаки. Люди, які починають з питання «скільки на цьому заробляють», зазвичай не доходять до першого робочого скрипта.
Коротко
Мова скриптів Roblox називається Luau, її документація живе в окремому розділі create.roblox.com/docs/luau, а Engine API (для скриптів усередині досвіду) і Cloud API — це різні набори інтерфейсів з різними розділами довідки. Перед тим як копіювати чужий приклад коду, перевір, з якого саме розділу він узятий.
Часті запитання
Якою мовою пишуть скрипти в Roblox?
Офіційна документація Roblox називає мову скриптів платформи Luau. Це не наша інтерпретація — так написано в самій документації на create.roblox.com.
Де офіційна документація Luau?
Вона винесена в окремий розділ на сайті документації Roblox — create.roblox.com/docs/luau. Тобто мову описують окремо від решти довідників.
Чим Engine API відрізняється від Cloud API?
Це різні набори інтерфейсів з різними розділами документації. Engine API — довідник для скриптів усередині досвіду; Cloud API описаний окремо і до Engine API не зводиться.
Чи можна вчити Luau за випадковими статтями й відео?
Можна, але звіряти варто з офіційним розділом документації. Він первинний, а сторонні матеріали застарівають і не завжди позначають, до якого саме API належить приклад.
Чому в прикладі коду щось не працює саме в мене?
Часта причина — приклад належить до іншого набору API, ніж той, у якому ти працюєш. Перед копіюванням подивись, у якому розділі документації він лежить: Luau, Engine API чи Cloud API.
Чи потрібно знати Luau, щоб просто грати в Roblox?
Ні. Мова потрібна тим, хто робить власні досвіди в Studio. Гравцеві досить клієнта й акаунта.