Bot Zoning / Grouping issue
Found two issues with the bots when grouping.
1. When there are bots in a group and anyone zones or dies the group is disbanded. 2. When in group the group leader cannot invite other bots only his own. The group leader has to pass the lead to get other players bots in. |
#2 isn't a an issue. That's how it works.
#1 is likely due to you missing a table update. Check your table names and structure against the bot SQL file https://github.com/EQEmu/Server/blob...09_30_bots.sql |
(#1)
I had him manually install the updates since he was having issues with eqemu_update.pl. He probably needs a few more schema changes applied..though, it could be a missed table addition or change. (#2) This could be looked at in the future..just make the check include a case for the owner being in the group, or such. Wouldn't know its feasibility until it was actually looked at, though. |
yea looks like I have that because I manually loaded in that bot sql ... I'm not sure which one is out of date but if there is a fix I would love it lol because that zoning things is annoying
|
Check your server log files to see if there are any database query errors.
|
Hi Uleat,
I am having the same issue with bots disappearing and disbanding on zone. I have dropped bots and reloaded several times. I also manually confirmed each table and field / value with the above SQL. There are no query errors in the logs. I have another server / DB version from 2013 that has the same issue. I actually thought this was normal until I saw posts regarding this problem. Do you have any ideas? This issue persists on all client versions. I sourced, compiled and created a new DB just a few days ago. |
Are you manually dropping/loading bots? Or are you using the eqemu_update.pl script to do it?
|
ok I manually looked at my tables and they are all there and look the same as the update. the only thing I see different is where this says integer unsigned... mine has INT(10) unigned
Code:
CREATE TABLE `bot_groups` ( |
That should be fine..INT(10) is large enough to an unsigned 32-bit integer.
Make sure that you have these four tables (views): Quote:
Quote:
|
Yes I have all of those
|
What do these queries return:
Code:
SELECT `id`, `enabled` FROM `spawn2` WHERE `id` IN (59297,59298); Quote:
Quote:
Quote:
|
Code:
/* Delimiter changed to ; */ |
ID Enabled
59,297 1 59,298 1 and the group id is 0 |
Is this what its suppose to show ?
|
The `spawn2` query is fine.
Just need clarification on the `guild_members` and `group_id` queries. |
Code:
SELECT `DEFAULT_COLLATION_NAME` FROM `information_schema`.`SCHEMATA` WHERE `SCHEMA_NAME`='information_schema'; Code:
/* Delimiter changed to ; */ This everything you needed? |
`guild_members` has 1 key for standard, 0 keys for bots..
`group_id` has 3 keys for standard, 4 keys for bots.. Based on that, and the previous checks, it 'looks' like you have the correct db schema for bots. At this point, we really need log errors to see what may be going on - in particular, database query failures. |
where do I find these because in my logs folder I don't see any thing except world.exe logs and in the zone folder ... everything else is blank
|
Check your zone folder logs.
Look for entries in the zone log for the zone where the failed action occurred. |
Code:
[07-07-2015 :: 22:47:03] [Crash] EXCEPTION_ACCESS_VIOLATION |
Code:
[02-23-2016 :: 20:36:13] [Crash] EXCEPTION_ACCESS_VIOLATION |
Hey Uleat ... have you had a chance to look at this anymore? Anything else I can contribute to helping figure this issues out for people?
|
https://github.com/EQEmu/Server/blob.../bot.cpp#L3880
It's still too vague to determine what the actual cause is. Group is taken from the bot owner - who should be leader in that case. And the code that follows can only be accessed if the conditions that appear to lead to the crash are true. (The access of 'g->GetLeader()->GetID()' would crash if 'g' or 'GetLeader()' were nullptr..but, they're not. They could have been recently deleted..but, that type of diagnosis requires a hands-on testing.) |
I was running into this same issue, however I did not receive a crash or anything when I zoned or died. The bots would simply despawn and I would have to respawn them.
After some investigation, I was able to fix the zoning issue by commenting out the the Depop(); line in: https://github.com/EQEmu/Server/blob.../bot.cpp#L6960 I was also able to prevent my bots from despawning when I die with a couple other changes. Now when I die, my bots do not despawn but instead my group gets disbanded and my bots zone to my bind spot with me. What I would like to happen is that when I die my bots stay where they are and continue to fight until they die also or better yet win. That way when I die they could Rez me to where we they are (assuming they didn't die also) and I wouldn't have to run back. I'm not sure if this is possible since looking at the code it seems that anytime the client zones the bots zone along with them. |
Not sure if this is relevant to this thread..
..but, I pushed a fix for a database-related issue that may solve client crashing when zoning with bots, for some people. For some reason, the view in the database was causing serious hang and delaying zone boot-up - causing the client to disconnect after a few minutes. This fix is not very elegant..but, is much faster than using the view for affected systems. |
I made some modifications to the source a long time ago that allowed a group leader to invite any group member's bots. If there is interest, I'll see if I can find it, test it with the current source, and post a patch here.
|
Quote:
|
affirmative. i'll fetch the old laptop out of storage and see what i can find. even if i'm unable, i think the alteration wasn't too difficult. it's been a long time since i've poked around in there, but i should be able to duplicate it without too much effort.
|
I added logging to the Bot::Depop() It doesn't trigger when the bots are vanishing.
Bots basically only fudge up, when a party member zones into the zone, (Does not call Bot::Depop() yet bots vanish) or if the main toon zones in after other players. Bots go non-responsive, basically drop group, but not visually updated on client side. So, what ever re-groups the players, when zoning, with bots is what is broken. |
All times are GMT -4. The time now is 01:45 AM. |
Powered by vBulletin®, Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.