Luau в Roblox: мова скриптів, документація та Engine і Cloud API

Зміст
  1. Що відомо точно
  2. Чому мову винесли в окремий розділ
  3. Engine API і Cloud API — це не одне й те саме
  4. Як користуватися довідниками, щоб не витрачати час
  5. Чого ми тут свідомо не пишемо
  6. Кому Luau взагалі потрібен
  7. Коротко

Мова, якою пишуть логіку в 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, які в нього можливості й обмеження. Наші джерела кажуть лише те, що це інший набір інтерфейсів з окремою документацією. Усе конкретніше — читай у самому розділі, а не в переказах.

Як користуватися довідниками, щоб не витрачати час

Порядок, який економить години:

  1. Сформулюй питання як «мова» або «платформа». Питання про те, як записати конструкцію — це Luau. Питання про те, як дістатися до чогось у грі — це API.
  2. Відкрий офіційний розділ, а не пошуковик. Стартова точка для мови — create.roblox.com/docs/luau, для решти — create.roblox.com/docs.
  3. Дивись, у якому розділі лежить приклад. Перед тим як копіювати код, перевір його «прописку»: Luau, Engine API чи Cloud API.
  4. Звіряй сторонні матеріали з офіційними. Відео й статті зручніші для першого розуміння, але первинне джерело — документація. Розбіжність вирішується на користь документації.
  5. Не роби висновків з мовчання. Якщо чогось немає в документації, це не означає «неможливо» — це означає «не описано в тому місці, куди ти дивився».

Чого ми тут свідомо не пишемо

Цей матеріал навмисно вузький. Ми не наводимо:

  • фрагментів коду й «типових шаблонів» — вони старіють швидше за статті;
  • порівнянь 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. Гравцеві досить клієнта й акаунта.

Джерела