EQEmulator Forums

EQEmulator Forums (https://www.eqemulator.org/forums/index.php)
-   Development::Bug Reports (https://www.eqemulator.org/forums/forumdisplay.php?f=591)
-   -   Items Disappear Between zoning (https://www.eqemulator.org/forums/showthread.php?t=21711)

WildcardX 10-15-2006 03:10 PM

Items Disappear Between zoning
 
I have just downloaded the latest code, EQEmu Server v0.7.0-857 and I if I #summonitem and then zone, that item is gone from my inventory. I have tried this with both the older 6.2 client and the new titanium client and get the same results. Anyone else experience this?

mattmeck 10-15-2006 03:46 PM

This is a DB issue, normaly caused by using Mysql 5, but could also be caused because you didnt do all the SQL changes in the change log.

WildcardX 10-15-2006 04:16 PM

Thanks for the FYI Mattmeck.

I understand this problem is the result of a situation like the following:

[code]
insert into products_notifications (products_id, customers_id, date_added) values ('

WildcardX 10-15-2006 05:36 PM

A temporary work-around for this issue for all of you who run MySQL 5.0 servers is to turn off strict mode by editing your my.ini file and then restarting your database service.

The problem here with the inventory is that the emulator is trying to insert a non "integer" value into the dbo.inventory.color table which is a INT data type. Under previous versions of MySQL you could get away with this (inserting a space charater instead of a integer value, for example) but with MySQL 5, the server will enforce data integrity when strict mode is turned on.

The real solution for this problem is to ensure the query in the following code block does not try to save anything but a integer value for the color column.

Code:

// Update/Insert item
                        uint32 len_query = MakeAnyLenString(&query, "REPLACE INTO inventory (charid,slotid,itemid,charges,instnodrop,color,augslot1,augslot2,augslot3,augslot4,augslot5) VALUES(%i,%i,%i,%i,%i,%i,%i,%i,%i,%i,%i)",
                                char_id, slot_id, inst->GetItem()->ID, charges, inst->IsInstNoDrop() ? 1:0,inst->GetColor(),augslot[0],augslot[1],augslot[2],augslot[3],augslot[4],augslot[5] );

NOTE: the code fragment above is from shareddb.cpp.

Good night and good luck...


All times are GMT -4. The time now is 03:22 PM.

Powered by vBulletin®, Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.