0 Members and 1 Guest are viewing this topic.
case AOCP_CLIENT_LOOKUP : list($id, $name) = $packet->args; $id = "" . $id; $name = ucfirst(strtolower($name)); // *** FIXME *** // This is an ugly workaround for now to deal with overflowing 32bit int in Age of Conan if ($id == 4294967295) { $id = -1; } $this->id[$id] = $name; $this->id[$name] = $id; break;
if($uid == -1 || $uid == 0 || $uid == 4294967295)
[BUDDY] [BUDDY-ADD] Received add request for (4294967295) This user is likely in the userlist and might need to be manually removed if this error persists.
The dumb/obvious question would be:Do you have any entries in you bot's _users table with nickname '-1'?With that out of the way...Which version are you running?My guess is that this problem is tied to the workaround in AOChat.phpLine 388-402 (approx).Code: [Select] case AOCP_CLIENT_LOOKUP : list($id, $name) = $packet->args; $id = "" . $id; $name = ucfirst(strtolower($name)); // *** FIXME *** // This is an ugly workaround for now to deal with overflowing 32bit int in Age of Conan if ($id == 4294967295) { $id = -1; } $this->id[$id] = $name; $this->id[$name] = $id; break;So.. the bot fails to find a valid id for a character and the workaround gives the character an id of -1.So next time the bot looks for a character name, it returns id -1 and tries to add that during the rosterupdate.But i'm kinda dumbfounded about that workaround actually.. why doesn't it modify the packet value as well, because 4294967295 will be passed back to the the function requesting the packet.I modified my AOChat.php line 1205 (approx) to:Code: [Select] if($uid == -1 || $uid == 0 || $uid == 4294967295)Without the above modification, I got a lot of these lines:Code: [Select][BUDDY] [BUDDY-ADD] Received add request for (4294967295) This user is likely in the userlist and might need to be manually removed if this error persists.