Ну, я думаю, это зависит от того,
Существует множество способов сделать это.
1) Классическая ООП, вы можете создать детальную структуру классов, основанную на интерфейсе ИИ, и затем работатьваша классовая иерархия оттуда.
2) Вы можете использовать компонентно-ориентированное проектирование, а затем создать AI-компонент, который можно инициализировать и дополнительно расширять с помощью различных меньших компонентов.
3) Вы можете пойти по пути сценариев, создавая сценарии внеиз вашего "движка" ваша логика ИИ, это хорошо, потому что она предлагает разделение между функциональностью основного движка и вашей конкретной игровой логикой.
На мой взгляд, это, безусловно, зависит от ваших конкретных потребностей, я часто смешиваю 1 && 3
, но я думаю, что вы могли бы пойти с 1 || 2 || 3
, они не являются полностью исключительными.
Я думаю, еще одна вещь, которую вы должны иметь в виду, это ваша система управления персонажем и как вы реализовали это, система управления персонажем будетиметь непосредственное влияние на то, как вы будете реализовывать архитектуру вашей системы ИИ.
Удачи:)