| 
  • If you are citizen of an European Union member nation, you may not use this service unless you are at least 16 years old.

  • Get control of your email attachments. Connect all your Gmail accounts and in less than 2 minutes, Dokkio will automatically organize your file attachments. You can also connect Dokkio to Drive, Dropbox, and Slack. Sign up for free.

View
 

Artificial Intelligence

Page history last edited by Dieter 8 years, 3 months ago
Artificial Intelligence
by Dieter on 04-23-2010 08:39 AM
Discussed in Skype voice chat on 4/18.

We didn't really go into much depth about AI, however one interesting question did come up: "Why make AI separate from the game engine?".

The meaning behind this question was to handle AI like a game "module" similar to how a mod would look like, e.g. make the AI visible in the mod manager on screen menu.

One simple answer is: "So that it can be replaced." There are probably many modders out there specialized in AI development and would like to focus just on this.

The player should have the option to select another AI much the same way as one would select a mod, which would override the existing "default" AI which comes with the game engine (what we currently have).

I believe Kaerar had some additional suggestions around this topic (but I am lame and can't remember them).

1 Reply so far...

 

the_bob 04-23-2010 02:41 PM
Provided AI scripts are externalized in Lua, they can be loaded on a per-mod basis just like everything else. Basically, we should implement most core AI functions in C++, like:
getting an array of tiles that are within the line of sight o a particular soldier,
adding/subtracting LoS fields,
finding the nearest enemy/friendly,
calculating a path,
deciding the fastest/stealthiest(most cover)/safest(most hard cover) routes.

Then let the Lua script decide what to do based on data that can be quickly pulled from the engine, for example to cover as much area with LoS or group several soldiers to cover 360* with sight range, perform stealthy flanking maneuvers or concentrate fire on the area where enemies were last seen.

 

Comments (0)

You don't have permission to comment on this page.