i don't want to be mean but each script is a bit different and takes knowledge to update, if you don't know how to code or don't want to waste time doing it, be polite and wait. (or pm and and offer to pay :V)
some of the issues that affect some scripts don't seem to affect others.
the errors selling stuff is because the item structure has changed, adjusting the item stucture and changing "byte quantity" to "word quantity" should solve that in gwa2 based scripts
gold storage or withdral you need to find the new values and correct the offset in the gwa2 based scritps
what i've found from correcting a few scripts
some gwa2 functions work a bit diferent depending on the file, so coping the file i shared after the update will break some stuff.
on gwa2 or GWA˛ look in the file for
and change it to
for gold values update this
update gold values on gwAPI
search on item.au3 for these functions
on memreads.au3 update region Item
in inventory.au3 change
to
and update the Func UpdateEmptyStorageSlot to
these are the changes i remember making
some of the issues that affect some scripts don't seem to affect others.
the errors selling stuff is because the item structure has changed, adjusting the item stucture and changing "byte quantity" to "word quantity" should solve that in gwa2 based scripts
gold storage or withdral you need to find the new values and correct the offset in the gwa2 based scritps
what i've found from correcting a few scripts
some gwa2 functions work a bit diferent depending on the file, so coping the file i shared after the update will break some stuff.
on gwa2 or GWA˛ look in the file for
Code:
Local $lItemStruct = DllStructCreate('long id;long agentId;byte unknown1[4];ptr bag;ptr modstruct;long modstructsize;ptr customized;byte unknown2[4];byte type;byte unknown3;short extraId;short value;byte unknown4[2];short interaction;long modelId;ptr modString;byte unknown5[4];ptr NameString;byte unknown6[15];byte quantity;byte equipped;byte unknown7[1];byte slot')
Code:
Local $lItemStruct = DllStructCreate('long Id;long AgentId;byte Unknown1[4];ptr Bag;ptr ModStruct;long ModStructSize;ptr Customized;byte unknown2[4];byte Type;byte unknown4;short ExtraId;short Value;byte unknown4[2];short Interaction;long ModelId;ptr ModString;byte unknown5[4];ptr NameString;ptr SingleItemName;byte Unknown4[10];byte IsSalvageable;byte Unknown6;word Quantity;byte Equiped;byte Profession;byte Type2;byte Slot')
Code:
;~ Description: Returns amount of gold in storage. Func GetGoldStorage() Local $lOffset[5] = [0, 0x18, 0x40, 0xF8, 0x94];was 0, 0x18, 0x40, 0xF8, 0x80 Local $lReturn = MemoryReadPtr($mBasePointer, $lOffset) Return $lReturn[1] EndFunc ;==>GetGoldStorage ;~ Description: Returns amount of gold being carried. Func GetGoldCharacter() Local $lOffset[5] = [0, 0x18, 0x40, 0xF8, 0x90]; was 0, 0x18, 0x40, 0xF8, 0x7C Local $lReturn = MemoryReadPtr($mBasePointer, $lOffset) Return $lReturn[1] EndFunc ;==>GetGoldCharacter
update gold values on gwAPI
search on item.au3 for these functions
Code:
;~ Description: Returns amount of gold in storage. Func GetGoldStorage() Local $lOffset[5] = [0, 0x18, 0x40, 0xF8, 0x94];was 0, 0x18, 0x40, 0xF8, 0x80 Local $lReturn = MemoryReadPtr($mBasePointer, $lOffset) Return $lReturn[1] EndFunc ;==>GetGoldStorage ;~ Description: Returns amount of gold being carried. Func GetGoldCharacter() Local $lOffset[5] = [0, 0x18, 0x40, 0xF8, 0x90]; was 0, 0x18, 0x40, 0xF8, 0x7C Local $lReturn = MemoryReadPtr($mBasePointer, $lOffset) Return $lReturn[1] EndFunc ;==>GetGoldCharacter
Code:
#Region Item Global $mItemId[2] = ['long', 0] Global $mItemAgentId[2] = ['long', 4] Global $mItemBag[2] = ['ptr', 12] Global $mItemModstruct[2] = ['ptr', 16] Global $mItemModstructsize[2] = ['long', 20] Global $mItemCustomized[2] = ['ptr', 24] Global $mItemType[2] = ['byte', 32] Global $mItemExtraId[2] = ['short', 34] Global $mItemValue[2] = ['short', 36] Global $mItemInteraction[2] = ['short', 40] Global $mItemModelId[2] = ['long', 44] Global $mItemModString[2] = ['ptr', 48] Global $mItemNameString[2] = ['ptr', 56] Global $mItemQuantity[2] = ['word', 76] Global $mItemEquipped[2] = ['byte', 78] Global $mItemSlot[2] = ['byte', 80] #EndRegion
Code:
$lQuantity = MemoryRead($lItem + 75, 'byte')
Code:
$lQuantity = MemoryRead($lItem + 76, 'byte') or $lQuantity = MemoryRead($lItem + 76, 'word')
Code:
Func UpdateEmptyStorageSlot(ByRef $aBagNr, ByRef $aSlot) If $aBagNr = 0 Then $lBagNr = 8 Else $lBagNr = $aBagNr EndIf If $aSlot = 0 Then $lSlot = 1 Else $lSlot = $aSlot EndIf $aBagNr = 0 $aSlot = 0 For $bag = $lBagNr To 21 $lBagPtr = GetBagPtr($bag) If $lBagPtr = 0 Then Return 0 ; no bag For $slot = $lSlot To 25 $lSlotPtr = GetItemPtrBySlot($lBagPtr, $slot) If $lSlotPtr = 0 Then $aBagNr = $bag $aSlot = $slot Return True EndIf Next $lSlot = 1 Next EndFunc ;==>UpdateEmptyStorageSlot