Блог

ChatGPT навчили генерувати нескінченні рівні для Super Mario Bros.

19/2/23

Останнім часом Маріо часто потрапляє в новини через  майбутній художній фільм від Nintendo та Illumination. Що ж, тепер ми поговоримо про створення рівня Маріо, і ми не говоримо про Mario Maker! Тепер доступна нова система, яка може створювати рівні Маріо.

Її розробники та дослідники назвали MarioGPT, система використовує переваги ШІ навчання великої мовної моделі (LLM), нещодавно популяризованої ChatGPT OpenAI . Використовуючи це в поєднанні з концепцією процедурного генерування вмісту (PCG), рівні можна генерувати та налаштовувати на основі поточного введення від користувача.

ChatGPT створює рівні в Mario

«Ми показуємо, що MarioGPT може не тільки генерувати різноманітні рівні, але й може мати текстові підказки для генерації керованих рівнів, вирішуючи одну з ключових проблем сучасних методів PCG». повідомляє розробник.

Приклад підказки та її результат

Хоча увага зосереджена на Super Mario Bros., важливо зазначити, що основні будівельні блоки Super Mario Bros. є плитки. Це означає, що,  використовуючи вихідний код , будь-хто може створити рівень на основі плитки для платформера на свій вибір, просто ввівши текстову підказку.

Модель згенерувала частину рівня

Цей івень надзвичайно схожий на класичний рівень 1-1 у Super Mario Bros., коли надана підказка «3 труби, 1 ворог, кілька блоків, низька висота». На даний момент система виводить лише текстовий формат, але потім його можна використовувати в редакторі Mario ROM або навіть у версіях Super Mario Maker .

Згідно з документом, цей процедурний метод генерації також включає спроби передбачити шляхи гравців і забезпечити можливість гри, тому «неможливий рівень» насправді не може бути створений.

Це можна використати для активної процедурної генерації в іграх.

Уявіть собі гру, у якій початкова базова підказка створює перший рівень, а потім генерує наступний рівень, на якому ви граєте, на основі вашої продуктивності в останньому та визначається, скажімо, кількістю стрибків, які вам потрібно зробити, або наскільки вузькою висотою цих стрибків може бути, можливо, більше ворогів або менше, будь-яка кількість можливостей.

Приклади підказок, які використовуються для генерації рівнів

Відмінність від цього полягає в тому, що він лише обробляв частоту появи ворогів, їхнє здоров’я та кількість ворогів-«босів», які ви бачили, інакше гра може підняти складність на наступному рівні, який ви завантажуєте.

У випадку з MarioGPT ви можете побачити значно складніший рівень 2, якщо ви закінчите рівень 1 за рекордно короткий час, а потім ви можете побачити його навіть на рівні 3, якщо ви часто зазнаєте невдач на рівні 2. Це означає, що можуть бути дуже дивні різко зростає складність, але це крута думка, і ми сподіваємося, що з неї вийде ще щось чудове.

Це створює ґрунт для генерації рівнів в іграх, створення всесвітів за запитами мільйонів гравців.

Усі статті