Go Back   EQEmulator Home > EQEmulator Forums > Archives > Archive::Development > Archive::Bugs

Archive::Bugs Archive area for Bugs's posts that were moved here after an inactivity period of 90 days.

Reply
 
Thread Tools Display Modes
  #1  
Old 05-03-2002, 08:00 AM
Waeric
Fire Beetle
 
Join Date: Apr 2002
Posts: 18
Default Merchant Bug and Fix

Merchants currently have a bug in 3.1.1 where they miss the last item in the list of items to be sold.

zone/client_process.cpp:

case OP_ShopRequest: {

...

for(int x=1; x < database.GetMerchantListNumb(merchantid) && x < 30; x++)

should be:

for(int x=0; x < database.GetMerchantListNumb(merchantid) && x < 29; x++)

...

uint16 item_nr = database.GetMerchantData(merchantid,x);

should be:

uint16 item_nr = database.GetMerchantData(merchantid,x+1);

...

item->equipSlot = x-1; // this needs to be incremented in loop.

should be:

item->equipSlot = x; // this needs to be incremented in loop.
Reply With Quote
  #2  
Old 05-03-2002, 09:20 AM
Waeric
Fire Beetle
 
Join Date: Apr 2002
Posts: 18
Default

There is also a problem with the merchant id loading one place is in struct NPCType, it is int8 merchanttype, when it should be something like uint32 merchanttype. I'm not looking at the source at this second and there may be other places than this one.
Reply With Quote
  #3  
Old 05-04-2002, 06:43 AM
Drawde
Dragon
 
Join Date: Jan 2002
Posts: 521
Default

That last bug sounds like it's the reason that only merchant IDs below 256 work.. since the ID gets mistakenly converted to a single-byte INT it can't store numbers higher than that.
Reply With Quote
  #4  
Old 05-04-2002, 09:44 AM
Waeric
Fire Beetle
 
Join Date: Apr 2002
Posts: 18
Default

Yep that's exactly it =)
Reply With Quote
  #5  
Old 05-05-2002, 05:04 AM
Wiz
Dragon
 
Join Date: Feb 2002
Posts: 583
Default

This fixes it, but makes the first item of the list dissapear instead :p
Reply With Quote
  #6  
Old 05-08-2002, 04:42 AM
Waeric
Fire Beetle
 
Join Date: Apr 2002
Posts: 18
Default

It fixes it if you follow it to the letter (or number in this case), as you found out =)
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

   

All times are GMT -4. The time now is 02:54 AM.


 

Everquest is a registered trademark of Daybreak Game Company LLC.
EQEmulator is not associated or affiliated in any way with Daybreak Game Company LLC.
Except where otherwise noted, this site is licensed under a Creative Commons License.
       
Powered by vBulletin®, Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Template by Bluepearl Design and vBulletin Templates - Ver3.3