Интересная разработка.
Я бы предложил обратить внимание не только на количество действий ботов, но и на архитектуру их поведения.
Если планируется большое количество фантомов, игровую логику имеет смысл разделить на состояния: город, торговля, фарм, бой, группа, восстановление и ожидание.
Особенно интересно, как у вас организовано переключение между состояниями. Например, что произойдёт, если бот во время фарма получит приглашение в группу, потеряет цель или столкнётся с проблемой геодаты?
Отдельный момент — интеграция с API Алисы. Внешние сетевые запросы желательно обрабатывать асинхронно, с тайм-аутами, чтобы задержки ответа не блокировали игровые задачи.
Из практических проверок предложил бы нагрузочный тест на 50, 100 и 200 фантомах с замером времени обработки AI-задач, загрузки CPU, использования памяти и пауз GC.
Есть несколько вопросов:
- Фантомы реализованы через полноценные игровые объекты персонажей или через собственную систему NPC?
- AI-задачи выполняются общим планировщиком или создаются отдельно для каждого бота?
- Как организованы обращения к внешнему API — синхронно или асинхронно?
Интересно посмотреть, насколько такая система масштабируется на aCis 409.