Go Back   EQEmulator Home > EQEmulator Forums > Support > Support::Windows Servers

Support::Windows Servers Support forum for Windows EQEMu users.

Reply
 
Thread Tools Display Modes
  #1  
Old 01-23-2012, 12:10 AM
lerxst2112
Demi-God
 
Join Date: Aug 2010
Posts: 1,742
Default

Some of the things you changed wouldn't have anything to do with this issue, specifically the "where to look" params. Presumably it won't hurt anything to have changed them.

Changing the quantities on those functions is a start, but you need to look at where they are called as well. As an example,
Code:
bool Client::DecreaseByID(int32 type, int8 amt)
has the potential to cause issues, although it is only called from Perl, and I didn't dig through any quest scripts to see if it is even used.

If you are able to narrow down specifically what you do to cause the problem it would probably help to narrow it down where in the code it might be occurring.
Reply With Quote
  #2  
Old 01-23-2012, 01:37 AM
blackdragonsdg
Dragon
 
Join Date: Dec 2008
Location: Tennessee
Posts: 656
Default

I am not exactly an expert with C++ so some of the changes I made were purely a guess. Obviously I may have guessed wrong on somethings but it didn't hurt to try.
Today I focused on this error instead of trying to actually play EQ which was the case at the time I made my initial post on this issue. It didn't take long to find a trigger which allowed me to cause the error at will. The trigger is very simple...put an arrow on a merchant...set its stacksize to 1000 then purchase 1000 of them. When the purchased item is placed into the characters inventory automatically the stacksize is reduced to 232.
Reply With Quote
  #3  
Old 01-23-2012, 02:08 AM
lerxst2112
Demi-God
 
Join Date: Aug 2010
Posts: 1,742
Default

Try changing this:

Code:
struct Merchant_Sell_Struct {
/*000*/    int32 npcid;			// Merchant NPC's entity id
/*004*/    int32 playerid;		// Player's entity id
/*008*/    int32 itemslot;
           int32 unknown12;
/*016*/    int8  quantity;		// Already sold
/*017*/    int8  Unknown016[3];
/*020*/    int32 price;
};
To this:

Code:
struct Merchant_Sell_Struct {
/*000*/    int32 npcid;			// Merchant NPC's entity id
/*004*/    int32 playerid;		// Player's entity id
/*008*/    int32 itemslot;
           int32 unknown12;
/*016*/    int32 quantity;		// Already sold
/*020*/    int32 price;
};
That might actually break something, but cross your fingers and prepare to change it back.
Reply With Quote
  #4  
Old 01-23-2012, 02:34 AM
blackdragonsdg
Dragon
 
Join Date: Dec 2008
Location: Tennessee
Posts: 656
Default

Quote:
Originally Posted by lerxst2112 View Post
Try changing this:

Code:
struct Merchant_Sell_Struct {
/*000*/    int32 npcid;			// Merchant NPC's entity id
/*004*/    int32 playerid;		// Player's entity id
/*008*/    int32 itemslot;
           int32 unknown12;
/*016*/    int8  quantity;		// Already sold
/*017*/    int8  Unknown016[3];
/*020*/    int32 price;
};
To this:

Code:
struct Merchant_Sell_Struct {
/*000*/    int32 npcid;			// Merchant NPC's entity id
/*004*/    int32 playerid;		// Player's entity id
/*008*/    int32 itemslot;
           int32 unknown12;
/*016*/    int32 quantity;		// Already sold
/*020*/    int32 price;
};
That might actually break something, but cross your fingers and prepare to change it back.
This did not fix the problem but at the same time it didn't appear to break anything either.
Maybe this will help narrow it down further and I just tried this.....I can summon stacks of 1000 random arrows and they can be placed into my inventory with no problem. I can manipulate those stacks without any reverting issues. I tried this with three different item id's of the same arrow name and type.
Reply With Quote
Reply

Thread Tools
Display Modes

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:50 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