На карте есть статичные объекты (🌱 трава, 🪨 камень, 🌳 дерево) и существа (🐯 хищники и 🐇 травоядные). В симуляции поддерживается автоматический спавн травы и травоядных, если их количество будет ниже заданного.
- атаковать/съесть травоядного, либо переместиться по направлению к травоядному;
- съесть травоядное возможно, только если оно мертво, поэтому хищник может атаковать травоядное;
- кол-во клеток, которые хищник может преодолеть, зависит от его скорости (по умолчанию - 2);
- съесть 🌱 траву, либо переместиться к траве;
- кол-во клеток, которые травоядное может преодолеть, зависит от его скорости (по умолчанию - 1);
Атака и поедание объектов осуществляется только по вертикали/горизонтали (по диагонали не умеют).
- START - команда для запуска симуляции (необходимо ввести START при запуске приложения).
- P - команда для паузы симуляции (например, для детального просмотра хода).
- C - команда для продолжения работы симуляции (работает только если симуляция остановлена).
- E - команда для завершения работы симуляции.
*Точка входа в приложение - метод main() класса Main, если хочется иметь контроль над симуляцией (пауза, продолжение, выход).
Если хочется смотреть на симуляцию в бесконечном цикле без возможности контроля - тогда метод main() класса SimpleMain.
Настройки параметров (размер карты, кол-во существ, параметры их скорости, здоровья, атаки, и т.д.) выставлены по умолчанию и оптимально подходят для наблюдения за симуляцией.
Требования для запуска:
- JDK 17+;
- Поддержка отображения эмодзи;
Наблюдайте эту пошаговую гонку за ресурсами в режиме реального времени!