ET modding help


(Zeu5) #1

Hi all,
I would like to make a (simple) bot for et. I know there are other bots under development, but it’s a personal challenge… :slight_smile:

I have good experience in C programming and AI, but I have no quake3 code knowledge. Can you give me some links or documentation about quake3 interfaces and modding?

In particular, I want to learn:

  • which parts of ET code I have to change (example: where is the server-side code?)
  • how can I intercept events from the game and how can I query the game state? (example: getting players infos…etc)
  • how can my bots interact with the game? (move, shoot, use items… etc)
  • for bots high-level navigation, I have to write my pathfinding code or can I use the quake3 code? I think it was called AAS, is it still working in ET?

please don’t flame me :slight_smile: I am a newbie in mod-making a I want just to learn.

Thanks.


(nUllSkillZ) #2

Here you will find some examples for modding Q3A:
http://www.planetquake.com/code3arena/


(SCDS_reyalP) #3

Some more links can be founed here: http://www.splashdamage.com/index.php?name=pnPHPbb2&file=viewtopic&t=8198&


(Magik) #4

The AAS is currently not working in ET because there is no compiler available for creating the neccessary AAS files for the maps.
I think someone on this forum (Bacon?) posted something about developing an AAS compiler for ET but I don’t know if they have any results, yet.


(Zeu5) #5

Thank you guys, that helped a lot.
I looked at the ET source code, there are many files about bots, AI, and AAS. I have to understand what is working, what is supposed to work and what is dead-code. For now I have managed to spawn an idle bot, but it is in dead position and it shows ‘connection interrupted’… well… there is much work to do!


(SCDS_reyalP) #6

Note that corresponding code in the engine may not be functional, so even if you ‘fix’ the available game code, it may well not work. This has been discussed before, you may find a search informative.


(Rain) #7

I suspect that the in-engine code is functional enough that you could get things working, with some work, but it’s a fairly moot point…
The stock maps have no AAS data, no utility exists to create AAS data for ET (the format has changed since RtCW), and the botclip brushes were (according to digibob) removed from the stock ET maps to reduce their size when releasing ET as a free game (so you’d likely have issues even if you did get AAS for those maps.)

If you want to implement your own bots, your best bet may be to start from scratch (more or less, although some of the existing botai code, and certainly the botlib traps, will be useful to you in doing so), impementing a waypoint system or something equivalent to AAS.

There is some good documentation on the way Q3’s bot AI works (including the AAS) buried on Id’s site. It’s a good read if you’re interested in the general concept, whether or not you intend to reimplement bots in ET.