Author Topic: Bot AI discussion  (Read 2373 times)

Garrett

  • Autococker
  • Posts: 1372
Bot AI discussion
« on: November 28, 2008, 06:31:36 PM »
I have been learning about AI in my limited spare time and have been giving thought to how a better bot AI system could be implemented into Digital Paint.  From what I gathered, bot AI seem to have a less precise aim bot that allows them to aim at an opponent and shoot while moving/ crouching.  I have too solid theories:

Idea 1:  New entities could be implemented into BSP/ World Craft that allow the mapper to define a specific area in their map.  These entities store information in them about where the bot should go next and allow the bot to randomly choose which path to take to the base.  The game would require a way for the bot to receive this information from the map and then act upon this information.  Later implementations could also allow the bot to ‘learn’ the other teams past strategies and make more ‘smarter’ decisions on where to go.

Idea 2:  This idea is solely game based and is very similar to the current implementation.  A bot could have too modes.  The first mode allows the bot to just wonder in a map and learn the terrain, jumps and how to get to the other teams flag.  This mode will allow the bot to make a complex outline of how and where to go in a map without lagging the bot as well as the server.  All of this information is stored in a file.  These files could be stored on a server so when a server admin decides to add bots to his server, the server get these navigation files or these files could be solely server side.  The other mode will be ingame mode.  This mode will take the navigation file’s information and act upon this information.  Slight variations to the bot’s behavior could be made in game by the bot as the bot learns how both his teammates move throughout the map as well as the opposing team. 

ViciouZ

  • Map Committee
  • Autococker
  • Posts: 2227
Re: Bot AI discussion
« Reply #1 on: November 29, 2008, 05:40:12 AM »
I'm not so keen on the first idea, because all the current maps would need to have new .ent files with the navigation entities.

The ACEbot source code is around on the internet still, if you want to have a look at how the current bots work. However, as the bots in this game don't seem to support nodes (basically your second idea), it is a very early implementation - the current ACEbots save node files. Also, what do you mean by "less precise aimbot"? Their aiming is precise, but they lack compensation for the paintball drop - this should be easily fixable using some code from Lazarus, which allowed the Gunner enemy to compensate for grenade drop.

Hopefully, if jits can split up the gamecode into multiple DLLs, then work on implementing these ideas can get started.


Garrett

  • Autococker
  • Posts: 1372
Re: Bot AI discussion
« Reply #2 on: November 29, 2008, 03:43:46 PM »
I was thinking that the command that allows the bot to learn the map can only work in you start a new game, like a single player match between you and bots.  You join observer and do the server command that sets the bots mod to 'learn mode'.  That bot will now wonder in the map, make calculations and building a navigation file.  The bots will say when that are done and you take the nav file that is created and put it with your server setting for the server you are run.  I am planning on learning more about the way the bots programed in some of the open sourced games with the AI source code.

Zorchenhimer

  • Autococker
  • Posts: 2614
Re: Bot AI discussion
« Reply #3 on: November 29, 2008, 04:31:19 PM »
I can't find the ACEbot source anywhere.  Only installers for Q2 and dead links.  Do you have it, or a link to it?

Garrett

  • Autococker
  • Posts: 1372
Re: Bot AI discussion
« Reply #4 on: November 29, 2008, 05:31:28 PM »
I forget where I found it.  I believe this is the most recently release/ last release.