Документация Игрового Мира: Выживание Юнитов

Добро пожаловать в мир, где выживают сильнейшие! В этой игре юниты — это автономные существа, которые борются за существование, исследуют окружающий мир, ищут пропитание и развиваются, чтобы обеспечить будущее своего рода. Каждый юнит обладает собственным кодом поведения, который определяет его действия и стратегию выживания.

🗺️ Обзор Игрового Мира

Игровой мир представляет собой глобальную карту, населенную юнитами и точками пропитания. Основная задача юнитов — находить эти точки, чтобы пополнять свою энергию. Энергия является жизненно важным ресурсом, необходимым для выполнения любых действий и операций. Отсутствие энергии приводит к гибели юнита.

🧬 Юниты

Каждый юнит — это уникальное существо со своей родословной, которая определяется уникальным ID. Этот ID передается всем потомкам, позволяя отслеживать генеалогию. В начале игры каждый новый юнит стартует с 200 единицами энергии.

Энергия: Двигатель Жизни

Энергия расходуется на:

Важно: Если энергия юнита опускается до нуля или выполнение команды приводит к ошибке, юнит погибает.

📜 Код Поведения Юнита

Юниты выполняют заранее заданный код, состоящий из последовательности команд. Команды делятся на два типа: действия и операции.

🚶 Действия (Одна операция за Ход)

Эти команды определяют физическое взаимодействие юнита с миром. За один игровой ход юнит может выполнить только одно действие.

🧠 Остальные Операции (Выполняются до Действия)

Эти команды выполняются до тех пор, пока не будет встречена команда действия (MOVE, WAIT, REPRODUCE). Они позволяют юниту обрабатывать информацию и принимать решения.

🛠️ Память Юнита

Юниты используют простую систему памяти для хранения числовых значений. Доступ к ячейкам памяти осуществляется по адресу памяти (например, A1, A10 и т.д.). Доступно 30 ячеек памяти A0-A29

🛑 Условия Гибели Юнита

Юнит погибает в двух случаях:

  1. Истощение энергии: Если запас энергии юнита падает до 0 или ниже.
  2. Ошибка выполнения: Если команда не может быть выполнена корректно (например, некорректные аргументы).

Желаю удачи в создании вашей игры! Если у вас возникнут дополнительные вопросы или потребуется дальнейшая доработка документации, обращайтесь!