BOT development kit?

Developer discussion of experimental fixes, changes, and improvements.

Moderators: Nexuiz Moderators, Moderators

BOT development kit?

Postby Cinquero » Tue Aug 29, 2006 5:04 am

Is there something I can use to play around with BOT AI? Is there an easy way to create a bot that connects as a client to a server?
Cinquero
Advanced member
 
Posts: 91
Joined: Wed Jul 19, 2006 11:13 pm

Re: BOT development kit?

Postby KadaverJack » Tue Aug 29, 2006 5:23 am

Cinquero wrote:Is there something I can use to play around with BOT AI?

Unzip Nexuiz/sources/gamesource20060614.zip. The bot code is together with the rest of the server's gamecode in qcsrc/server (mainly in bots.qc, havocbot.qc & havocbot_roles.qc). If you just want to change how bots behave in different gamemodes (or add a new gamemode), havocbot_roles.qc is the best place to start...
To compile the stuff, you'll need fteqcc (a download link is in the FAQ, just put the binary in qcsrc/server and run it).

Is there an easy way to create a bot that connects as a client to a server?

No. Bots are part of the server code. To add "standalone" bot you would need to write an app that connects to a Nexuiz server and emulates a player first. And adding bots that way is more difficult than integrating them into the server.
KadaverJack
Site admin and forum addon
 
Posts: 1102
Joined: Tue Feb 28, 2006 9:42 pm

Postby Noxin911 » Sun May 06, 2007 10:20 pm

No. Bots are part of the server code. To add "standalone" bot you would need to write an app that connects to a Nexuiz server and emulates a player first. And adding bots that way is more difficult than integrating them into the server.


I want to write a standalone bot ... is there any documentation about the communication between server and client or could anybody tell me where in the code i could find this ?
Or has anyone write an example for a connection ... a client how connect make 3 steps and disconnect...

thanks nox

PS: i know my english isn't so good ... sorry for this
Noxin911
Newbie
 
Posts: 6
Joined: Sun May 06, 2007 9:45 pm

Postby PHREAK » Mon May 07, 2007 2:22 am

May I just ask why you would like to do this?
Call me paranoid but there's only one reason to code a standalone AI that I know of.
I'm sure people can figure out what that is.
Other then that, I can't see the benefit of it nor a purpose.

Sorry if I got this wrong.
PHREAK
Alien
 
Posts: 153
Joined: Mon Mar 06, 2006 6:54 pm
Location: USA

Postby KadaverJack » Mon May 07, 2007 7:03 am

Noxin911 wrote:I want to write a standalone bot ... is there any documentation about the communication between server and client or could anybody tell me where in the code i could find this ?
Or has anyone write an example for a connection ... a client how connect make 3 steps and disconnect...

I don't know of any documentation on the network protocol nor such a sample client... If you know C well enough: the engine sources are included in Nexuiz/sources/enginesource*.zip (most recent sources are available from SVN at svn://svn.icculus.org/twilight/trunk/darkplaces/). To my knowledge all networking is done in netconn.c. (demos might also help you to understand the protocol, as they are basically package dumps of the client <-> server communication)
But for such a bot to function, your client also needs to be able to read the map format.

PHREAK wrote:Call me paranoid but there's only one reason to code a standalone AI that I know of.
I'm sure people can figure out what that is.

Cheating that way would be rather difficult, there are much easier approaches so i don't think this is about cheating...
KadaverJack
Site admin and forum addon
 
Posts: 1102
Joined: Tue Feb 28, 2006 9:42 pm

Postby Noxin911 » Mon May 07, 2007 8:03 am

May I just ask why you would like to do this?
Call me paranoid but there's only one reason to code a standalone AI that I know of.
I'm sure people can figure out what that is.
Other then that, I can't see the benefit of it nor a purpose.

Sorry if I got this wrong.


No im not interessting in cheating ... i write my diploma thesis and my prof want an standalone bot to test the new AI .... i also take a look in Quake 3 and OpenArena but the documentation isnt very well and so i hope this game her could be better.

I don't know of any documentation on the network protocol nor such a sample client...

this sounds not soo good by i will take a look inside the code :-)

thanks for help ... if anybody knwos more let me know it :-)
Noxin911
Newbie
 
Posts: 6
Joined: Sun May 06, 2007 9:45 pm

Postby divVerent » Mon May 07, 2007 8:10 am

Seriously, does it need to be standalone or just a bot client?

If it just needs to be a client, you could take out the CRC check of the CSQC support in the engine and try to write your bot client using that.
1. Open Notepad
2. Paste: ÿþMSMSMS
3. Save
4. Open the file in Notepad again

You can vary the number of "MS", so you can clearly see it's MS which is causing it.
divVerent
Site admin and keyboard killer
 
Posts: 3809
Joined: Thu Mar 02, 2006 4:46 pm
Location: BRLOGENSHFEGLE

Postby Noxin911 » Mon May 07, 2007 8:32 am

Seriously, does it need to be standalone or just a bot client?


we want running the bot at an other computer and so it think a bot client is ok.
could you tell me what you mean with
you could take out the CRC check of the CSQC support in the engine


thanks a lot
Noxin911
Newbie
 
Posts: 6
Joined: Sun May 06, 2007 9:45 pm

Postby KadaverJack » Mon May 07, 2007 8:55 am

Noxin911 wrote:we want running the bot at an other computer and so it think a bot client is ok.
could you tell me what you mean with
you could take out the CRC check of the CSQC support in the engine

csqc stands for client side quake c (quake c is the language the gamecode is written in). Think of it as some sort of scripting the engine. Basically you could use the engine as it is and implement the bot ai without having to reengineer the network protocol or loading the maps (since the engine will do all that for you). You could even watch your bot :)
See http://wiki.quakesrc.org/index.php/EXT_CSQC for more info on csqc.
KadaverJack
Site admin and forum addon
 
Posts: 1102
Joined: Tue Feb 28, 2006 9:42 pm

Postby Noxin911 » Mon May 07, 2007 9:18 am

thanks

okay i start reading :-)
Noxin911
Newbie
 
Posts: 6
Joined: Sun May 06, 2007 9:45 pm

Next

Return to Nexuiz - Development

Who is online

Users browsing this forum: No registered users and 1 guest

cron