Pages: [1]
  Print  
Author Topic: AI Pathfinding In OpenArena  (Read 19778 times)
hemite
Nub


Cakes 1
Posts: 33


« on: May 10, 2012, 12:21:29 AM »

I apologize beforehand if this thread is in the wrong section. Please move it if need be.

Hi All,

I'm writing a paper on AI movement in video games, specifically in relation to graph theory ( nodes and vertices). I've looked through the OA code base but there is quite a lot of it, and I'm not really sure where to start.

I was wondering if anyone more familiar with the code knows anything about how the AI navigates in each given map. This paper is very math intensive, so if anyone could point me to the files where the actual movement algorithms are coded, or if anyone understands AI movement well enough to explain it to me that would be much appreciated.

Again, all help is appreciated. Cheers. 
Logged
Gig
In the year 3000
***

Cakes 45
Posts: 4394


WWW
« Reply #1 on: May 10, 2012, 01:58:17 AM »

I can't help you very much. About bot AI, maybe you may ask to Graion Dilach.

For some documentation about how bots work, you can take a look to the "external links" (which are mostly Q3 related) you can find here:
(DO NOT LINK) h t t p s : / / openarena . wikia . com/wiki/Bot
(DO NOT LINK) h t t p s : / / openarena . wikia . com/wiki/Bot_play

This PDF looks interesting for your research.

There is to say that OpenArena did some changes to the bot part (maybe to avoid some possible copyright problems, I'm not sure), so if you used a bot designed for Q3 in OA 0.8.5, it was not able to correctly select weapons. OA 0.8.8 includes a bot compatibility patch that allows bots designed for Q3 to behave correctly when used in OA.
Someone (I hope Graion will find some time to do it!) should write a bot-writing manual, because AFAIK at the moment there is not much documentation that explains how to create a bot in the OA format instead of in the Q3 format.
This to say that I don't know where you can find detailed infos about the differences between Q3 and OA bots in game logic. I don't know if and how the differences include pathfinding.
Logged

I never want to be aggressive, offensive or ironic with my posts. If you find something offending in my posts, read them again searching for a different mood there. If you still see something bad with them, please ask me infos. I can be wrong at times, but I never want to upset anyone.
andrewj
Member


Cakes 24
Posts: 584



« Reply #2 on: May 10, 2012, 05:28:19 AM »

Navigation in Q3A / OA is done using the Area Awareness System (AAS for short).
For each map there should be an AAS file, created by a special compiler program.
(the AAS file can be absent, but then bots don't work on that map).

I think the PDF file which Gig linked to is the one which describes the Q3A bots,
how they work, including a lot of detail about the AAS system.
Logged
Graion Dilach
Member


Cakes 12
Posts: 403



« Reply #3 on: May 11, 2012, 03:39:48 AM »

Huh, bot pathfinding in AAS level? I don't know that.

What I know (which is nothing compared to the PDF linked above) that the bot personalities' _i.c combined with the fuzi.c (OA equvivalent of fw_items.c) creates a preference list and then the bot always goes through on that to decide where should it go. I don't know if the game uses some kind of A*-HS logic-alike or simply generate all pathfinding with the AAS system.

AFAIK Q3 and OA bots have no diiference in pathfinding.
Logged

One shall remind what have he left behind... to actually realize that it's still cool.
hemite
Nub


Cakes 1
Posts: 33


« Reply #4 on: May 11, 2012, 10:08:13 AM »



This PDF looks interesting for your research.



This is fantastic, thanks a lot.
Logged
Gig
In the year 3000
***

Cakes 45
Posts: 4394


WWW
« Reply #5 on: May 11, 2012, 01:57:52 PM »

You're welcome. Smiley
Logged

I never want to be aggressive, offensive or ironic with my posts. If you find something offending in my posts, read them again searching for a different mood there. If you still see something bad with them, please ask me infos. I can be wrong at times, but I never want to upset anyone.
Tungsten
Nub


Cakes 0
Posts: 6


« Reply #6 on: March 09, 2018, 09:08:44 AM »

Hey, sorry to bring this back up, but I've got pretty much the exact same question.
I'm writing a paper about path finding, and I've been looking through the GitHub, but I haven't made much progress. The PDF link leads to a 404 now. Does anyone still have it?
Logged

I like the 'puters.
Gig
In the year 3000
***

Cakes 45
Posts: 4394


WWW
« Reply #7 on: March 09, 2018, 02:53:28 PM »

You are lucky, it looks like archive.org archived it just in time before it was removed!  Smiley
https://web.archive.org/web/20120710082819/http://dev.johnstevenson.co.uk/bots/20585341-The-Quake-III-Arena-Bot.pdf
The internet archive is very useful! As Q3-related stuff is progressively disappearing from the web, I would suggest people to add the more interesting pages and files about it to internet archive: just go to archive.org and enter the desired url... if that page or file has never been archived, it allows you to choose to archive it now!

Otherwise, DO NOT LINK[/b]) h t t p s : / / openarena . wikia . com/wiki/Bot]here it is mentioned another location for that file, which still works: https://www.scribd.com/document/20585341/The-Quake-III-Arena-Bot.
« Last Edit: March 09, 2018, 03:30:13 PM by Gig » Logged

I never want to be aggressive, offensive or ironic with my posts. If you find something offending in my posts, read them again searching for a different mood there. If you still see something bad with them, please ask me infos. I can be wrong at times, but I never want to upset anyone.
Tungsten
Nub


Cakes 0
Posts: 6


« Reply #8 on: March 10, 2018, 10:44:38 AM »

You are lucky, it looks like archive.org archived it just in time before it was removed!  Smiley
https://web.archive.org/web/20120710082819/http://dev.johnstevenson.co.uk/bots/20585341-The-Quake-III-Arena-Bot.pdf
The internet archive is very useful! As Q3-related stuff is progressively disappearing from the web, I would suggest people to add the more interesting pages and files about it to internet archive: just go to archive.org and enter the desired url... if that page or file has never been archived, it allows you to choose to archive it now!

Otherwise, DO NOT LINK[/b]) h t t p s : / / openarena . wikia . com/wiki/Bot]here it is mentioned another location for that file, which still works: https://www.scribd.com/document/20585341/The-Quake-III-Arena-Bot.

Awesome, thanks a ton! If anyone else has more info i'd be really grateful!
Logged

I like the 'puters.
fromhell
Administrator
GET A LIFE!
**********

Cakes 35
Posts: 14520



WWW
« Reply #9 on: March 10, 2018, 09:49:27 PM »

The original original link's still around, from the late author of the q3 ai himself:

http://www.kbs.twi.tudelft.nl/Publications/MSc/2001-VanWaveren-MSc.html

It doesn't get more original and official than this dutch university link.
« Last Edit: March 10, 2018, 09:54:27 PM by fromhell » Logged

asking when OA3 will be done won't get OA3 done.
Progress of OA3 currently occurs behind closed doors alone

I do not provide technical support either.

new code development on github
Tungsten
Nub


Cakes 0
Posts: 6


« Reply #10 on: March 14, 2018, 04:51:14 PM »

The original original link's still around, from the late author of the q3 ai himself:

http://www.kbs.twi.tudelft.nl/Publications/MSc/2001-VanWaveren-MSc.html

It doesn't get more original and official than this dutch university link.

Niiiice. Good for my bibliography (IB loves dem bibz)

I have another question that might be a little broad, but how does this code actually run? For instance, compare it to something like Arduino or MIT Battlecode that has a looping main method. Does this loop too? What about when the AI detects, say, a pit to either jump over or go around, what actually happens? Does it run reachability calculations, maybe some ClientMovementPredicion, WeaponJumpZVelocity? Is there code that definitively calls these methods based on input?

Thanks.
Logged

I like the 'puters.
Pages: [1]
  Print  
 
Jump to: