.:: Bots United ::.

.:: Bots United ::. (http://forums.bots-united.com/index.php)
-   E[POD]bot (http://forums.bots-united.com/forumdisplay.php?f=12)
-   -   Reporting of Bugs and Errors for E[POD]bot (http://forums.bots-united.com/showthread.php?t=2963)

MarD 25-05-2005 01:03

Re: Reporting of Bugs and Errors for E[POD]bot
 
Heyyo,

Ok, open up the liblist.gam file in your cstrike folder, and from there, look for this line:

Code:

gamedll "dlls\mp.dll"
and then change it to look like this:

Code:

//gamedll "dlls\mp.dll"
gamedll "epodbot\epb.dll"

that should help load it up. Check the same for this cs revolution.. I'm not sure if it'll work fine since it's not an official cs release, but you can try.

preztoo 31-10-2005 08:14

Re: Reporting of Bugs and Errors for E[POD]bot
 
I believe I have found a bug in the code. Not being a c++ freak, I have not pinpointed the exact location but there seems to be a programming error in the creation of bots.

First, the code in dll.cpp checks to see how many clients are on server and compares to max_bots:

// check if time to see if a bot needs to be created...
if (bot_check_time < gpGlobals->time)
{
int count = 0;
bot_check_time = gpGlobals->time + 0.5;
for (i = 0; i < 32; i++)
{
if (clients[i].pEntity != NULL)
count++;
}
// if there are currently less than the maximum number of "players"
// then add another bot using the default skill level...
//Bot auto-adding
if ((count < max_bots) && (max_bots != -1) && (g_bAutoFill))
{
BotCreate(NULL, NULL, NULL, NULL, NULL);
}
}

I believe the above code has some type of logic error. Maybe the check for clients doesn't include bots? Then it will never stop.... that's what happens on my dedicated server. The above code will then call the creation routine in bot.cpp, void BotCreate.

Here is another logical error. When trying to create a bot, but failing (probably because it has reached the maxuser limit, the code writes out the error code,

"Max. Players reached. Can't create bot!\n"

That is the message I get in my server console. It just creates this error in an ongoing process creating lagg and CPU consumption.

The code then does this:

max_bots = index; //Sets maxbots to the server limit.

That is an error, for now it sets max_bots to a number other than the one in epb.conf!!!

i.e. I have max_bots 4 in my config. I have maxusers 12
When I start server, this code adds 12 bots ignoring my config settings. Thats why I say there is a logical error in the first code. Then, when the code tries to create the 13th bot, it sets the max_bot from 4 to 12! Why??? Anyway, the code repeats itself. Fails to not create bot in dll.cpp, then tries to create a bot in bot.cpp

// This call creates the Fakeclient
BotEnt = g_engfuncs.pfnCreateFakeClient(c_name);

This code that creates a bot will fail when the number of bots have reached the maxusers thus envoking

// Did the Call succeed ?
if (FNullEnt(BotEnt))
{
if (pPlayer)
UTIL_HostPrint("#Bot_Create_ServerFull");
else if (IS_DEDICATED_SERVER())
printf("Max. Players reached. Can't create bot!\n");
botcreation_time = 0.0;
max_bots = index; //Sets maxbots to the server limit.
}

So, whoever is coding this stuff, please take a look and fix this.

I believe the error is here:

for (i = 0; i < 32; i++)
{
if (clients[i].pEntity != NULL)
count++;
}

First, we don't need to check for 32 but for maxbots
Second, I think that the array clients.pEntity doesn't include the amount of bots, does it? That would explain why the code tries to add more bots. I'm too tired now to go through the code and find oyut if it does or not....:-) Going to bed now...

The Storm 31-10-2005 18:02

Re: Reporting of Bugs and Errors for E[POD]bot
 
Thanks for this point man. =) I will take a look. ;)

preztoo 31-10-2005 23:00

Re: Reporting of Bugs and Errors for E[POD]bot
 
in bot.cpp

change

// Find a free slot in our Table of Bots
index = 0;
while ((bots[index].is_used) && (index < gpGlobals->maxClients))
index++;
// Too many existing Bots in Game
if (index == gpGlobals->maxClients)

to

// Find a free slot in our Table of Bots
index = 0;
while ((bots[index].is_used) && (index < max_bots))
index++;
// Too many existing Bots in Game
if (index == max_bots)

nadanetotz 30-12-2005 15:36

Re: Reporting of Bugs and Errors for E[POD]bot
 
When I create de_dust on CS w/ EPB :

I always had a message

SZ_GetSpace: Tried to write to an uninitialized sizebuf_t ???

How can i fix this problem so that i could run that map (de_dust) normally....

The Storm 30-12-2005 21:44

Re: Reporting of Bugs and Errors for E[POD]bot
 
I tryed and there is no such problem. Can you give me a screenshot?

Phorce_Phed 01-02-2006 20:26

Re: Reporting of Bugs and Errors for E[POD]bot
 
I loaded the latest EPD on my dedicated Linux CS 1.5 server (WON2) and while it basically works, there are a few issues:

1. I set "epb_max_bots 4" and left "epb_min_bots 0" in EPB.cfg which (according to the description) means that when I join the server one of the bots should leave. This doesn't happen. All four bots stay in the game when I join.

2. I replaced the names in EPBnames.txt with 15 names of my own (all of them fewer than 12 characters, all of them alphanumeric) however while two of the bots pick names from that file the other two are named "bot [number]" (where [number] is a two digit number)

3. The instructions in EPODbot/doc/manual.txt say to modify cstrike/titles.txt. I followed them, but when I type "epb_botmenu" at the in-game console I get something similar to what you see in the screenshot Black_Hunter posted earlier in this thread. Reading another thread on here I see there appears to be special modifications required for CS 1.5, however I can't download the file attached to THE_STORM's message (the forum just sends me a 1x1 GIF instead).

Versions:
CS 1.5
HLDS Linux 3.1.1.1e
Metamod 1.18 (I'm loading EPD with this)
AMX 0.9.9 Linux WON
HLGuard 1.8

If anyone wants to test this on their own I have a page with the files and instructions needed to set up a server like mine:

http://www.repeatoffender.net/~phorcephed/nowon/

The Storm 02-02-2006 13:09

Re: Reporting of Bugs and Errors for E[POD]bot
 
Here link for CS 1.5 with E[POD]bot's titles file. Extract it in to the your cstrike/ dir. It will fix the menu problem.

wendi stone 12-05-2006 03:14

Re: Reporting of Bugs and Errors for E[POD]bot
 
Quote:

Originally Posted by Baddle_Bot
Hey I'm using CS retail 1.5 with the WON2 patch and also Extreme Edition (which is just an update to graphics so that shouldnt change much) and E[POD] Bot v4b. I've also read the read firsts and done the set language thingy in the epbcfg file.

I've tried with a base install of CS retail, with just the latest retail patch, with the EE and combinations of the three and I still get this menu bug.

Is there something I'm doing wrong?

Is there anything else I could do to fix it?

Another bug:

I'm using CS Revolution which is CS 1.5 stuck on steam with all the menus and stuff (http://www.csrev.com/) and when I try to run E[POD] Bot with it when I start a game it crashes straight to the desktop. Not a biggy coz if i want to play with bots I can just play normal 1.5 (or the EE)

I've had exactly the same problem...can't play with bots... it crashes back to the desktop..
Please help.. what can i do for it to work (cs 1.6)

The Storm 12-05-2006 12:53

Re: Reporting of Bugs and Errors for E[POD]bot
 
Be sure that you have the latest version of CS 1.6 from Steam and the latest version of EPB - 5.2


All times are GMT +2. The time now is 14:29.

Powered by vBulletin® Version 3.8.2
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.