Go Back   EQEmulator Home > EQEmulator Forums > Development > Development::Bug Reports

Development::Bug Reports Post detailed bug reports and what you would like to see next in the emu here.

Reply
 
Thread Tools Display Modes
  #16  
Old 06-16-2009, 04:38 AM
trevius's Avatar
trevius
Developer
 
Join Date: Aug 2006
Location: USA
Posts: 5,946
Default

Ahh, that makes sense now. I got the 70 value from the items table, so that probably is the right field for sellback. I guess it isn't unknown anymore lol. Whether it is in the correct place or not yet, I am not sure. It should be correct according to what 13th floor has though. It will probably still need slot conversions done on it for sell back or it will try to sell the wrong item. I will have to look at the structs when I get a chance and see how hard it will be to make encodes for them.

EDIT: I added in the Encode and Decode to handle slots for selling, but it doesn't make a difference. After comparing to Titanium, the selling encode/decode will be required anyway, so I added it to the SVN.

KLS, it appears you are correct that the client is the one deciding the the item cannot be sold. You are also probably right that it is related to those fields in the item structure. Maybe I can play around with it a bit sometime soon to see if I can figure out what is up with it. Maybe the fields are just off by a bit. I know I have some augs on my Live Rogue that were purchased from LDoN, so I should be able to use those to figure out where we are going wrong in the struct.

EDIT2: After comparing the structure to Live for a Radiant Permafrost augment purchased from LDoN, it looks like our structure should already be lined up properly unless it is arranged a bit differently than Live. Here is what I got from the packet collect from Live and also the matching fields from 13th floor which line up perfectly with our current structure for SoF as well as the surrounding (verified) parts of the structure:

Code:
01 00 00 00 pointtype
02 00 00 00 ldontheme
f8 02 00 00 ldonprice
46 00 00 00 ldonsellbackrate
01 00 00 00 ldonsold
Code:
	uint32 ldonpoint_type;
	uint32 ldontheme;
	uint32 ldonprice;
	uint32 unk098;
	uint32 ldonsold;
Ahh, after looking at the Serialization in SoF.cpp, it looks like ldonpoint being set to 0 is probably the problem:

Code:
	isbs.ldonpoint_type = 0;
	isbs.ldontheme = item->LDoNTheme;
	isbs.ldonprice = item->LDoNPrice;
	isbs.unk098 = 70;
	isbs.ldonsold = item->LDoNSold;
Going to test to verify if that is true.

EDIT3: Yep, that was it! Has to have ldonpoint set to something other than 0 for it to be sellable to an Adventure Merchant. I got it fixed and now on the SVN. I guess it is a good thing I got the encode/decode in already lol. Worked like a charm
__________________
Trevazar/Trevius Owner of: Storm Haven
Everquest Emulator FAQ (Frequently Asked Questions) - Read It!

Last edited by trevius; 06-16-2009 at 02:30 PM..
Reply With Quote
  #17  
Old 06-16-2009, 09:05 PM
trevius's Avatar
trevius
Developer
 
Join Date: Aug 2006
Location: USA
Posts: 5,946
Default

Coming back to this just to say that we might want to consider updating the items table to identify the UNK098 field. It's definitely the LDoN Sell Back Rate and items already have the proper values set there from what I have seen. We could probably set the default to 70, since that seems to be standard and would prevent custom item creators from wondering why their items don't sell for anything.

I would change it myself, but I don't know if our fields have to match 13th floor or not for PEQ to update from them. After looking at 13th floor again, it looks like they now have this field named to ldonsellbackrate, which should be fine for us as well.

Since it is currently unknown, we aren't using that field in either client right now. I don't think the change would be very hard. But, I am guessing we would need write some code to use it as well. Right now, there are cases where items might say they are going to sell for one amount and actually sell for a different amount.

Not a high priority, but something worth considering.
__________________
Trevazar/Trevius Owner of: Storm Haven
Everquest Emulator FAQ (Frequently Asked Questions) - Read It!
Reply With Quote
  #18  
Old 07-21-2009, 09:44 AM
KingMort
Banned
 
Join Date: Sep 2006
Posts: 841
Default

After finally getting this to work here are my findings:

Unk012 needs to be set to -1
Unk123 needs to be set to -1
Pointtype needs to be set to 1
Ldonsold needs to be set to 1

and of course you set your price... Anyway the guk merchant now buys back all the stuff.. Which made the players very happy..

Just a side note , Unk098 ?? didn't make any difference on my end.. Not sure what the deal is with that trev..

King Mortenson
www.raidaddicts.org
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 09:26 PM.


 

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 - 2024, Jelsoft Enterprises Ltd.
Template by Bluepearl Design and vBulletin Templates - Ver3.3