PDA

View Full Version : Rev 1052 bots multi bugs SOLVED


Bitesys
12-18-2009, 01:57 AM
hi everyone,

I am new to the eqemu, just got it for a week, got me 3 days to get it running. I found a few problems for bots from rev 1052 database :
- missing LastZoneID when creating
- take bots pass zone and they disappear, ever spawn again they do not follow
- invite bots to guild
- bring bots to start a advanture


after spend some time in the web, I figure out the problems for those problems, the bots database in rev 1052 is outdated !! the table is missing field LastZoneID, missing table botguildmembers etc. I solved some of it manually, but I found the best way to solved those problems is to source this file trunk\EQEmuServer\utils\sql\svn\bots.sql . This will create new bots tables, so all bots will be gone, and their items. There is also a file trunk\EQEmuServer\utils\sql\svn\botsconvert.sql, which suppose will convert your bots tabls and keep all your items, but I didn't test it, I suppose it will work, backup or whatever if you are not sure.

after the created the new bots tables, I can do this with bots :
- create bots (of cause)
- group bots
- fight in group with bots
- bring bots pass zone, and group function normal, they still follow me
- invite bots to guild, list bots in guild roster
- accept advanture with bots group (too bad the instant mistmoore catacomb is not in the game yet)
- create bots group, and raid some tought mob

Hope this will help anyone have same problems.

Bitesys
12-18-2009, 02:14 AM
there is still one problems tho, I take 5 bots with me, include a cleric, everytime I die .. I got ported to bind point instanly, all bots gone, is it the cleric suppose can rez me or something ?

Kaain
12-18-2009, 03:25 PM
Yes, it has always been my experience if you die and you are the bots owner bots go away as you discovered. The cleric can rez another 'real' party member in your group as long as you are the bots owner and you do not die.
If I recall correctly the way I dealt with it was I created a high level Necro bot, put him in group, then port back to the zone I died in. Have Necro summon corpse (unless you want to fight back to your corpse without gear) and then dismiss Necro. Re-form your regular group with cleric and then have Cleric do a rez on you to regain most of your exp.
It has been awhile since I have had to do this so I'm going from memory, but you get the idea. If you die and you are the bots 'owner' they poof. Just regroup, get corpse, and then exp rez.
Kaain

steve
12-18-2009, 06:09 PM
It works the same way on Live if you're soloing. Bots/mercs poof if you're the only real person in the group and you die if they can't kill the mob. If you have another real person with you in the group, they will stay (at least on Live they do) and rez the fallen group member.

eski2
12-27-2009, 03:17 AM
I am very hazy on SQL and have to everything pretty much by copy/paste from what i read in the forums (grr, can't even figure out if source is equivalent to "import" when i use HeidiSQL!) but when i couldn't get bots working, i checked i had typed everything as per the guide, and couldn't figure out why it wasn't working. So I tried the code below and now I'm thinking that maybe there is an incompatibility in the MySQL server version number and the script provided?

Am I barking up the wrong tree? Do i need to uninstall MySQL and start from scratch (assuming i can get an earlier version) or am i making some sort of newbie mistake?

C:\peqdb>mysql -u root -p
Enter password: *******
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 91
Server version: 5.1.41-community MySQL Community Server (GPL)

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> \u peq
Database changed
mysql> source bots.sql
Query OK, 0 rows affected, 1 warning (0.06 sec)

Query OK, 0 rows affected, 1 warning (0.00 sec)

Query OK, 0 rows affected, 1 warning (0.00 sec)

Query OK, 0 rows affected, 1 warning (0.02 sec)

Query OK, 0 rows affected, 1 warning (0.00 sec)

Query OK, 0 rows affected, 1 warning (0.00 sec)

ERROR 1217 (23000): Cannot delete or update a parent row: a foreign key constrai
nt fails
Query OK, 0 rows affected, 1 warning (0.00 sec)

Query OK, 0 rows affected (0.02 sec)

Query OK, 7 rows affected (0.00 sec)

Query OK, 1 row affected (0.00 sec)

Query OK, 1 row affected (0.00 sec)

Query OK, 1 row affected (0.00 sec)

Query OK, 1 row affected (0.00 sec)

Query OK, 1 row affected (0.00 sec)

Query OK, 1 row affected (0.00 sec)

Query OK, 1 row affected (0.00 sec)

Query OK, 0 rows affected, 1 warning (0.00 sec)

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that
corresponds to your MySQL server version for the right syntax to use near 'IF NO
T EXISTS `GetMobTypeByName` (mobname VARCHAR(64)) RETURNS CHAR(1)
BEGIN
' at line 1
Query OK, 0 rows affected, 1 warning (0.00 sec)

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that
corresponds to your MySQL server version for the right syntax to use near 'IF NO
T EXISTS `GetMobTypeById` (mobid INTEGER UNSIGNED) RETURNS CHAR(1)
BEGIN
' at line 1
Query OK, 0 rows affected (0.00 sec)

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that
corresponds to your MySQL server version for the right syntax to use near 'IF NO
T EXISTS `vwGroups` AS
select g.groupid as groupid,
GetMobTypeByName(g.na' at line 1
Query OK, 0 rows affected (0.00 sec)
Records: 0 Duplicates: 0 Warnings: 0

ERROR 1091 (42000): Can't DROP 'PRIMARY'; check that column/key exists
Query OK, 0 rows affected (0.08 sec)
Records: 0 Duplicates: 0 Warnings: 0

Query OK, 0 rows affected (0.13 sec)
Records: 0 Duplicates: 0 Warnings: 0

Query OK, 0 rows affected (0.06 sec)

Query OK, 0 rows affected (0.06 sec)

Query OK, 0 rows affected (0.06 sec)

Query OK, 0 rows affected (0.06 sec)

Query OK, 0 rows affected (0.06 sec)

Query OK, 0 rows affected, 1 warning (0.00 sec)

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that
corresponds to your MySQL server version for the right syntax to use near 'IF NO
T EXISTS `vwGuildMembers` AS
select 'C' as mobtype,
cm.char_id,
cm.guild_' at line 1
Query OK, 0 rows affected, 1 warning (0.00 sec)

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that
corresponds to your MySQL server version for the right syntax to use near 'IF NO
T EXISTS `vwBotCharacterMobs` AS
select 'C' as mobtype,
c.id,
c.name,
c.c' at line 1
mysql>

jsr
01-04-2010, 09:49 AM
Is the file still there? I can't find it with windows.
Using tortoise SVN, returned a file not found error. So I browsed manually..

http://eqemumaps.googlecode.com/svn/trunk/EQEmuServer/utils/sql/svn/botsconvert.sql


under /svn I see..
* branches/
* tags/
* trunk/

under /trunk I see only

* ..
* LICENSE
* Maps/
* azone_utils/
* changelog.txt

I checked those directories and found nothing that looks useful :-)

WildcardX
01-07-2010, 02:06 AM
I believe I have corrected the illegal MySQL syntax issues with the view and function create statements as of r1077. Get the latest out of the repo and resource your bot database objects from the bot.sql file.