View Single Post
  #1  
Old 09-23-2017, 10:46 AM
Valdaun
Fire Beetle
 
Join Date: Oct 2009
Posts: 28
Exclamation [setup_bots] - fails on fresh install (missing tables)

I haven't been following the EQEmu scene for a few years so I thought I'd check back in yesterday and quite happy with all the changes I've seen. I'm most impressed with the quick server setup & perl utility scripts which are really well done.

The only problem I'm running into is that I believe there are issues with the script to add the bots. You end up with no peq.bot_spells_entries table at the end, which is obviously a big deal. Also, perhaps there is a reason for this but it seems like when the installer goes through the manifest it goes in reverse order of what it should. It starts with 9017 and works backwards to 9000. Therefore there are a ton of errors saying missing tables like:

Code:
[Database] Column 'bots_version' does not exists.... Adding to 'db_version' table...

[Database] Retrieving latest bots database manifest...
[Copy] folder doesn't exist, creating 'db_update/'
[Download] Saved: (db_update/db_update_manifest.txt) from 
https://raw.githubusercontent.com/EQEmu/Server/master/utils/sql/git/bots/bots_db_update_manifest.txt
[Database] Reading manifest...
ERROR 1146 (42S02) at line 1: Table 'peq.bot_data' doesn't exist
[Database] has update: 9017 - '2017_03_26_bots_spells_id_fix_for_saved_shadowknight_bots.sql'
[Download] Saved: (db_update/2017_02_26_bots_spell_casting_chances_update.sql) from
 https://raw.githubusercontent.com/EQEmu/Server/master/utils/sql/git/bots/required/2017_02_26_bots_spell_casting_chances_update.sql
ERROR 1146 (42S02) at line 1: Table 'peq.bot_spell_casting_chances' doesn't exist
[Database] has update: 9015 - '2017_02_26_bots_spell_casting_chances_update.sql'
ERROR 1146 (42S02) at line 1: Table 'peq.bot_spells_entries' doesn't exist
[Database] has update: 9014 - '2017_02_26_bots_spells_id_update_for_bot_spells_entries.sql'
ERROR 1146 (42S02) at line 1: Table 'peq.bot_data' doesn't exist
[Database] has update: 9013 - '2017_02_26_bots_spells_id_update_for_saved_bots.sql'
Eventually most of the tables do get created except for one of the most critical, that being the spells.

Digging into things manually and reviewing all the 9000 to 9017 SQL files it seems like the underlying problem is an assumption that the PEQ database from here (http://edit.peqtgc.com/weekly/peq_beta.zip) includes all the bot spells with IDs from 701 to 712 in the npc_spells_entries table. (per 2017_02_15_bots_bot_spells_entries.sql)

However, on a fresh install with no bots done as of at least yesterday, there are no spells with IDs 701 to 712 in that table.

If you manually run through all the bot SQLs from https://github.com/EQEmu/Server/tree.../bots/required in order from oldest to newest then you do end up creating the missing table, but only the bards have spells because those are actually done with an insert from the 2017_02_20_bots_bard_spell_update.sql file.

Am I missing a SQL somewhere that adds all the spells as 700 series (which the 2017_02_15_bots_bot_spells_entries.sql would then move to the new table in the 3000 series) or is there really a bug here?

I've done the whole setup twice and gotten same results both times so I feel like there is a bug in the setup process. I don't see any SQL insert files on Github that add the original bot spell entries, so we might need someone with a working set to export a clean table of those. I'm not sure if there are other tables missing data, I can tell you that the only tables you get after the installer finishes with data are these two:

Code:
bot_command_settings  (98 rows)
bot_spell_casting_chances (2465 rows)
Looking at the table names I assume that is ok, because the rest probably get populated as people create bots and join them to groups & heal rotations & whatever else fun stuff.

Last edited by Valdaun; 09-23-2017 at 10:48 AM.. Reason: trying to fix post width
Reply With Quote