ZhengPeiRu21 / mod-individual-progression

AzerothCore Individual Progression Module
MIT License
104 stars 43 forks source link

Worldserver Crashing on fresh install. #254

Closed Sukoshock closed 2 months ago

Sukoshock commented 2 months ago

I am unsure if this is the right place for this kind of issue, but I am truly at my wits end.

Both when installing the precompiled version on my main PC and on a completely fresh Windows 10 virtual machine via virtualbox, when I run the play.bat, the main CMD window seems to initialize the SQL fine, and the Authserver initializes, but the Worldserver crashes after about a half second.

I was able to capture a video clip of the error on my main PC, and it reads as follows:


In mysql_stmt_prepare() id: 455, sql: "UPDATE characters_npcbot SET owner = ?, hire_time = FROM_UNIXTIME(?) WHERE entry = ? "
Unknown column 'hire_time' in 'field list'
In mysql_stmt_prepare() id: 456, sql: "UPDATE characters_npcbot SET owner = ?, hire_time = FROM_UNIXTIME(?) WHERE entry = ? "
Unknown column 'hire_time' in 'field list'
Closing down DatabasePool 'acore_characters'.
SFJake commented 2 months ago

I wasn't able to use the latest version for the same reason.

I use Update 2024-03-04 before and it works fine.

Badgermilk0 commented 2 months ago

See note from Release page: Update 2024-04-09 Please note: due to an update in NPCBots, if updating from an older release and keeping your character database, you will need to run this SQL file against your character database.

SQL:

/!50003 DROP PROCEDURE IF EXISTS sp__drop_column_if_exists/; DELIMITER ;; /!50003 CREATE/ /!50003 PROCEDURE sp__drop_column_if_exists(@TABLE varchar(100), @COLUMN varchar(100)) BEGIN DECLARE @EXISTS INT DEFAULT 0; SELECT COUNT() INTO @EXISTS FROM information_schema.columnsWHERE TABLE_SCHEMA = DATABASE() AND TABLE_NAME = @TABLE AND COLUMN_NAME = @COLUMN; IF (@EXISTS > 0) THEN ALTER TABLE characters_npcbot DROP COLUMN hire_time; END IF; END */;;

DELIMITER ;

CALL sp__drop_column_if_exists('characters_npcbot', 'hire_time');

DROP PROCEDURE IF EXISTS sp__drop_column_if_exists;

ALTER TABLE characters_npcbot ADD hire_time timestamp NULL DEFAULT CURRENT_TIMESTAMP AFTER faction;

Sukoshock commented 2 months ago

Interesting. I wonder if this has to do with me previously using this fork of AzerothCore about a year ago and not properly cleaning up the files after I had moved on from it. I'm not very savy when it comes to stuff regarding SQL. Does running on a VM still manage to connect to SQL databases on the host PC?

Badgermilk0 commented 2 months ago

Open your DB with, for example, heidisql. ...Depending on how you installed the repack your host is likely localhost or 127.0.0.1 user: root

Find the correct table and run the query.

image

Sukoshock commented 2 months ago

I actually did a completely fresh reinstall of Windows yesterday for an unrelated reason and am having this issue still on a completely fresh system install. How do you access these DBs when using the precompiled version?

Edit: Ah wait I understand now what you were saying, I got it open.

After attempting to run the SQL file, I fear I may have done it wrong somehow. The world server will now get much further into initializing, but then gives me this error:

//===================================================== Exception code: C0000420 An assertion failure has occurred.

Assertion message: #----------------------------------------------------------------------#

ASSERTION FAILED

Location: D:\Workshop\azerothcore-wotlk\src\server\game\AI\NpcBots\botmgr.cpp:398

Function: BotMgr::LoadConfig

Condition: toks0.size() == BracketsCount

Message: NpcBot.MaxBots must have exactly %u values

----------------------------------------------------------------------

2f1e23aa147aworldserver.exe[16-4_10-7-21].dmp 2f1e23aa147aworldserver.exe[16-4_10-7-21].txt

Sukoshock commented 2 months ago

I wasn't able to use the latest version for the same reason.

I use Update 2024-03-04 before and it works fine.

When I'm attempting to use this older update, my NPCbot gossip menu does not appear. All the console commands I've tried seem to work fine but even manually adding the bot to a player has the bot just stand in place. The gossip menu icon appears, but does nothing other than playing the player characters speaking emote.

Edit: I actually get this exact same issue by moving one version further back as well. Experiencing identical behavior on the version from January and March.

ZhengPeiRu21 commented 2 months ago

Thanks for reporting these issues. I apologize for not vetting this release thoroughly - I've been slacking on properly updating the configs. I'll post an updated release tomorrow that should no longer be impacted by these issues. In the meantime, please use the previous release.

ZhengPeiRu21 commented 2 months ago

Thank you all again for your patience. These issues should now be resolved in the latest release (https://github.com/ZhengPeiRu21/mod-individual-progression/releases/tag/20240418). Please let me know if you see additional troubles.