Log in

View Full Version : PATCH: Fixes merchants eatting whole stacks of items


Bigpull
02-11-2003, 06:26 AM
DeleteItemInInventory()
Deletes whole stacks the attached patch fixes this

Trumpcard
02-11-2003, 07:45 AM
Thank ya! I'll take a look at this tonight when i get in...

Also, thanks for using the CVS source, it'll make it easier to merge in..

RevlinXevlin
02-11-2003, 11:40 AM
I'll ask ..

How do use newbies or those running windows patch ?

Lurker_005
02-11-2003, 11:50 AM
If your not compiling your own world.exe and or zone.exe or have no idea what I'm talking about, you don't need to.

otherwise, you do it by hand, or use utilities that create diff files, and merge them back in. (diff.exe and merge.exe I think) try http://gnuwin32.sf.net

RevlinXevlin
02-11-2003, 11:55 AM
just because I'm not using linux to run eqemu doesn't mean I have concept of eqemu.

Trumpcard
02-11-2003, 03:08 PM
Looks like it works great.. Once I got over the roadblock of realizing my item database didnt have costs for any items (doh!).

I merged it in to the code, thanks for the contribution !

Bigpull
02-12-2003, 07:56 AM
Selling the last item in a stack will crash the zone server.

I moved the updateing of player inventory on a PlayerSell into the deleteitem function. and properly check against 0 now instead of 1 (oops).

Altered NPC's removeitem to take slots & quantities.

Fixed BulkSendMerchantInventory, we want 80 items not 81, and if The merchant has more than 80 items in the DB we truncate the list and send the first 80 instead of sending an empty merchant.

Ontop of all that, actualy the reason i had to do all this =) I've added code for merchants to resell items players sell to them.

They do this by adding the items into thier loot table, and removeing them when items are bought. It's got some issues, I'm pretty sure i got all the inventory corruption nailed down, but back up character_ just in case ect. Leaveing just the one client lockup, When the merchant sells the last inventory item, The client window needs updated to remove the item(or they're just big old dupeing machines), and I didn't see a nice way of telling them no sale. So the vendor will tell them they can't find the item and to try back later, then does a break; but this leaves the client locked up untill they zone/log =(

To enable add a variable MerchantsKeepItems 0/1 to the sql, it defaults to off if there is no variable MerchantsKeepItems

Bigpull
02-13-2003, 07:54 PM
Same as above but updated for current cvs

Trumpcard
02-14-2003, 12:25 AM
Thank ya!