Robot Battle

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до: навігація, пошук

Robot Battle - гра для програмістів, що дозволяє розробляти і програмувати бойових роботів. Ваша мета - створити робота (або команду) для перемоги в дружніх турнірах або у змаганнях з гравцями по всьому світу. Дана гра створена для платформи Microsoft Windows

Опис гри[ред.ред. код]

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

Роботи воюють на прямокутній арені, намагаючись знищити противників за допомогою ракет і радіолокації, уникаючи мін та збираючи бонуси. Останній робот котрий залишився, стає переможцем. Як тільки боротьба починається, роботи залишаються "самі по собі" і користувач не можете впливати на хід бою. Саме тому потрібно запрограмувати робота краще, ніж конкуренти. Роботи мають форму танка. Тому опис компонентів спільний для всіх роботів. Хоча користувач і можете змінювати зовнішній вигляд робота (використовуючи скіни), але він не можете змінити технічні характеристики.

Елементи гри[ред.ред. код]

На арені може перебувати обмежена кількість об'єктів(роботів і бонусів). Куки(печиво) і міни розподіляються по арені випадковим чином, ускладнюючи рух роботів. Випущені ракети ушкоджують, як самих роботів, так і куки з мінами.

Бойовий робот[ред.ред. код]

Robot Battle(robot).png

Тіло
Тіло робота містить колеса для переміщення вперед - назад, вправо - вліво і розвороту.
Гармата
Гармата вбудована в башту робота і є основним його знаряддям. Гармата може обертатися незалежно від тіла робота. Ракети вистрілюють у напрямку, в якому дивиться гармата в даний момент.
Радар
Радар розміщений спереду від гармати для сканування об'єктів. Радар може обертатися незалежний від гармати і тіла робота.

Додаткові елементи[ред.ред. код]

Печиво Robot Battle(cookies).png
Печиво дає бонус в 20 одиниць здоров'я тому хто його підбере.
Міни Robot Battle(bomb).png
Міни заподіюють 20 одиниць ушкоджень роботу котрий наїде на них.
Енергетичні ракети
Ракети вистрілюється роботами і ушкоджують будь-який зустрічний об'єкт. Збиток залежить від типу об'єкта і від енергії ракети, енергія ракети задається за допомогою програмного коду.

Мова програмування[ред.ред. код]

Мова програмування котра використовується при створенні роботів досить проста. Для створення робота потрібен лише текстовий редактор і уява. Мова програмування Robot Battle's називається RSL (Robotbattle Scripting Language). RSL був спеціально розроблений для гри Robot Battle, але має багато спільного з безліччю інших мов. Зокрема, RSL схожий на JavaScript.
Код робота складається з груп, які називаються секціями. Це списки інструкцій, призначених для виконання. Секції в RSL схожі на "функції" і "методи" в інших мовах програмування. основна відмінність - в RSL секції не підтримують параметри і не повертає значення. Секції починаються і закінчуються фігурною дужкою. Є три способи для запуска секцій на виконання. Кожен з них використовується для різних цілей.

  • Спеціальні секції - існує дві спеціальні секції. Robot Battle знаходить і запускає їх автоматично, визначаючи їх по імені.
    • Init - запускається при початку кожної гри і має бути присутня у кожному роботі.
    • Dead - секція автоматично запускається при завершенні кожної гри.
  • Виклик підсекцій - можуть запускати інші секції за допомогою команди gosub. Команда gosub схожа на функцію інших мов програмування, але вона не повертає ніяких значень.
  • Події - реакція на взаємодію робота з якимось елементом(наприклад, попадання ракети). Роботи здатні визначати, яку секцію завантажувати під час події. Секції, призначені для виконання під час різних подій, визначаються "заголовками подій". Ними визначається майже вся поведінка робота.

Посилання[ред.ред. код]

http://www.robotbattle.com/