Thursday, 24 July 2008

Artificial Intelligence test

Last night, myself Chris and his young son Joe gave the latest build of Magefire a playtest. We were mostly testing the artificial intelligence routines that are now completed for independent creatures (see the earlier blog post Fun and games with designing AI for more details). It took me a while to program these because of the unusual approach I took that supports emergent behaviour, but it was well worth it. Some of the complex behaviours I wanted to be in there have indeed emerged. For example, because of the ruleset for the game, creatures that are next to each other become engaged and must fight to the death. The exception to this are flying creatures, who never get engaged to their enemies. So a valid a strategy for using flying creatures is to fly in, attack and then fly away again. This kind of behaviour was the sort of thing I wanted to emerge from the AI and it has, so I'm very happy with the results.

The overall playtest went well for the first game (which took place in my specially designed Deadly Arena level where pretty much nowhere on the level is really safe) but the following two games were marred with raising the dead bugs (in the game, Dark Imps can raise the dead as skeletal minions) so some work needs to be done on areas that we thought were already working. We managed to get a computer controlled wizard in there too, who uses the independent creature AI, but as predicted he didn't really perform too well. The next big step in the AI development is planning and unit coordination, both areas that the independent creatures do not require as they do not cooperate (except by accident).

So overall, the independent AI has been a big success and complex behaviours and strategies for individual units do indeed emerge.

No comments: