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 07-30-2011, 10:14 PM
revloc02c's Avatar
revloc02c
Hill Giant
 
Join Date: Aug 2010
Location: UT
Posts: 215
Default

So I am kinda new with cpp. I found where the Item_struct is defined in the file item_struct.h and changed the StackSize member from uint8 to uint16 (line 208 in my code). Laying aside a possible client side limit, should that do it?

EDIT: I just re-compiled and tested this and it looks like there is no change, stacksizes are still limited to 244 (I find that amount an unusual number).

Last edited by revloc02c; 07-30-2011 at 10:31 PM.. Reason: more info
Reply With Quote
  #2  
Old 07-31-2011, 12:26 AM
lerxst2112
Demi-God
 
Join Date: Aug 2010
Posts: 1,742
Default

You would also need to change the cast in line 919 in sharededb.cpp

Code:
item.StackSize = (uint8)atoi(row[ItemField::stacksize]);
There may be other places, but that one was obvious.

Like I said earlier, the reason you see 244 is that you have it set to 500 in the database and 500 % 256 = 244. If it was 600 in the DB you'd see 88 in game, and if it was 400 in the DB you'd see 144 in game. Nothing unusual about it, just a number being truncated to fit a variable.
Reply With Quote
  #3  
Old 07-31-2011, 12:32 AM
revloc02c's Avatar
revloc02c
Hill Giant
 
Join Date: Aug 2010
Location: UT
Posts: 215
Default

Oh I just realized why it is 244...my stacksize in the DB is 500 so [500 % 256 = 244].

EDIT: I see you beat me to it by a couple mins while I was typing the answer, nice job. And thanks for the info, I'll try that.

Last edited by revloc02c; 07-31-2011 at 12:37 AM.. Reason: clarify
Reply With Quote
  #4  
Old 07-31-2011, 12:47 AM
revloc02c's Avatar
revloc02c
Hill Giant
 
Join Date: Aug 2010
Location: UT
Posts: 215
Default

BINGO!

That worked! Thanks lerxst I really appreciate you pointing the way for me on this.

Changing the stacksizes were not so important as making changes and having them work correctly. I recently had another success with changing the cpp code (my first success) and this has offered additional encouragement as I continue to learn this stuff. I couldn't have done it without ya.
Reply With Quote
  #5  
Old 08-01-2011, 05:59 PM
revloc02c's Avatar
revloc02c
Hill Giant
 
Join Date: Aug 2010
Location: UT
Posts: 215
Default

This actually is not working correctly yet. I can stack things above 256 now, but then when I zone the items I put on the stack beyond the former limit end up on my cursor when I respawn in the new zone.

E.g.: My stacksizes were previously maxing out at 244. I had a stack of 244 blue diamonds. After I changed the uint8 to a uint16 I summoned 100 blue diamonds and auto-inventory-ed them and voila stack went to 344, except when I zoned, 100 blue diamonds ended up on my cursor and my stack of blue diamonds in inventory was back to a stack of 244.

So somehow the stacksizes in inventory are not saving?

Or maybe this is the client-side issue lerxst referred to? If so, is there a way to fix it or is that just how Titanium is?

Last edited by revloc02c; 08-01-2011 at 06:01 PM.. Reason: corrected spelling
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 05:34 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