Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?xml version="1.0" encoding="utf-8"?>
- <CheatTable>
- <CheatEntries>
- <CheatEntry>
- <ID>875</ID>
- <Description>"ItemSwap (Swaps picked up item to chosen item)"</Description>
- <Options moHideChildren="1" moAllowManualCollapseAndExpand="1"/>
- <LastState Activated="0"/>
- <Color>80000008</Color>
- <VariableType>Auto Assembler Script</VariableType>
- <AssemblerScript>{ Game : DarkSoulsII.exe
- Version:
- Date : 2014-05-02
- Author : mgr.inz.Player
- ItemSwap - when grabbing any item
- 1. set desired ItemID,
- 2. in game, pick up whatever item from the ground (you can drop whatever item you want)
- 3. don't forget to disable this cheat when not needed anymore
- }
- [ENABLE]
- aobscanmodule(BetterItemSwap,DarkSoulsII.exe,8D 70 40 B9 21 00 00 00 8D) // should be unique
- alloc(newmem,$1000)
- label(return)
- alloc(myDesiredItemID,128)
- registersymbol(myDesiredItemID)
- label(myDesiredLevel)
- registersymbol(myDesiredLevel)
- label(myDesiredInfusion)
- registersymbol(myDesiredInfusion)
- label(myDesiredQuantity)
- registersymbol(myDesiredQuantity)
- label(divisor)
- myDesiredItemID:
- dd 0
- myDesiredLevel:
- db FF
- myDesiredInfusion:
- db FF
- myDesiredQuantity:
- db FF
- divisor:
- dd (int)100000
- newmem:
- mov esi,eax // backup EAX
- mov edi,edx // backup EDX
- // divide ID by 100'000, to get group ID
- mov eax,[myDesiredItemID]
- cmp eax,0
- jnz @f
- mov eax,[esi+44] // get original ID
- @@:
- xor edx,edx
- div dword ptr [divisor]
- // set quantity
- cmp eax,#611
- jg @f // is it consumable item
- cmp eax,#600
- jl @f // is it consumable item
- mov cl,[myDesiredQuantity]
- cmp cl,FF
- je @f
- cmp cl,14
- ja @f
- cmp cl,0
- je @f
- mov [esi+4C],cl
- @@:
- // set durability to something bigger than 0, so it can be repaired with powder
- cmp eax,#279
- jg @f // is it an item with durability or not ?
- mov [esi+48],(float)500.0
- @@:
- // durability for rings
- cmp eax,#400
- jl @f
- cmp eax,#407
- jg @f
- mov [esi+48],(float)500.0
- @@:
- // set infusion
- cmp eax,#118
- jg @f // is it an infusion-able item or not ?
- mov cl,[myDesiredInfusion]
- cmp cl,FF
- je @f
- cmp cl,09 // must be 0 - 9
- ja @f
- mov byte ptr [esi+4F],cl //infusion
- @@:
- // set level
- cmp eax,#279
- jg @f
- mov cl,[myDesiredLevel]
- cmp cl,FF
- je @f
- cmp cl,0A // must be 0 - 10
- ja @f
- mov byte ptr [esi+4E],cl //level
- @@:
- // get desiredID
- mov ecx,[myDesiredItemID]
- // swap item
- cmp ecx,0
- je @f
- mov [esi+44],ecx // swap ID
- @@:
- mov eax,esi // restore EAX
- mov edx,edi // restore EDX
- lea esi,[eax+40] // orig
- mov ecx,00000021 // orig
- jmp return
- BetterItemSwap:
- jmp newmem
- nop
- nop
- nop
- return:
- registersymbol(BetterItemSwap)
- [DISABLE]
- BetterItemSwap:
- db 8D 70 40 B9 21 00 00 00
- unregistersymbol(BetterItemSwap)
- unregistersymbol(myDesiredItemID)
- unregistersymbol(myDesiredLevel)
- unregistersymbol(myDesiredInfusion)
- unregistersymbol(myDesiredQuantity)
- dealloc(newmem)
- {
- // ORIGINAL CODE - INJECTION POINT: "DarkSoulsII.exe"+2190E5
- "DarkSoulsII.exe"+2190C4: 83 F9 03 - cmp ecx,03
- "DarkSoulsII.exe"+2190C7: 0F 87 2F FF FF FF - ja DarkSoulsII.exe+218FFC
- "DarkSoulsII.exe"+2190CD: 8B 46 04 - mov eax,[esi+04]
- "DarkSoulsII.exe"+2190D0: 8B 0C 88 - mov ecx,[eax+ecx*4]
- "DarkSoulsII.exe"+2190D3: 8D 55 08 - lea edx,[ebp+08]
- "DarkSoulsII.exe"+2190D6: 52 - push edx
- "DarkSoulsII.exe"+2190D7: E8 14 C9 FF FF - call DarkSoulsII.exe+2159F0
- "DarkSoulsII.exe"+2190DC: 3B C3 - cmp eax,ebx
- "DarkSoulsII.exe"+2190DE: 0F 84 18 FF FF FF - je DarkSoulsII.exe+218FFC
- "DarkSoulsII.exe"+2190E4: 57 - push edi
- // ---------- INJECTING HERE ----------
- "DarkSoulsII.exe"+2190E5: 8D 70 40 - lea esi,[eax+40]
- "DarkSoulsII.exe"+2190E8: B9 21 00 00 00 - mov ecx,00000021
- // ---------- DONE INJECTING ----------
- "DarkSoulsII.exe"+2190ED: 8D BD 78 FF FF FF - lea edi,[ebp-00000088]
- "DarkSoulsII.exe"+2190F3: F3 A5 - repe movsd
- "DarkSoulsII.exe"+2190F5: 0F B6 4D F8 - movzx ecx,byte ptr [ebp-08]
- "DarkSoulsII.exe"+2190F9: 5F - pop edi
- "DarkSoulsII.exe"+2190FA: 51 - push ecx
- "DarkSoulsII.exe"+2190FB: 8B 8D 70 FF FF FF - mov ecx,[ebp-00000090]
- "DarkSoulsII.exe"+219101: 8D 95 78 FF FF FF - lea edx,[ebp-00000088]
- "DarkSoulsII.exe"+219107: 52 - push edx
- "DarkSoulsII.exe"+219108: C6 85 77 FF FF FF 01 - mov byte ptr [ebp-00000089],01
- "DarkSoulsII.exe"+21910F: E8 4C 30 FD FF - call DarkSoulsII.exe+1EC160
- }
- </AssemblerScript>
- <CheatEntries>
- <CheatEntry>
- <ID>876</ID>
- <Description>"Desired Item ID"</Description>
- <LastState Value="??" Activated="0" RealAddress="00000000"/>
- <ShowAsHex>1</ShowAsHex>
- <Color>80000008</Color>
- <VariableType>4 Bytes</VariableType>
- <Address>myDesiredItemID</Address>
- </CheatEntry>
- <CheatEntry>
- <ID>877</ID>
- <Description>"Desired Level (weapons and wearables)"</Description>
- <LastState Value="??" Activated="0" RealAddress="0FF61004"/>
- <ShowAsSigned>1</ShowAsSigned>
- <Color>80000008</Color>
- <VariableType>Byte</VariableType>
- <Address>myDesiredLevel</Address>
- </CheatEntry>
- <CheatEntry>
- <ID>878</ID>
- <Description>"Desired Infusion (weapons)"</Description>
- <LastState Value="??" Activated="0" RealAddress="0FF61005"/>
- <ShowAsSigned>1</ShowAsSigned>
- <Color>80000008</Color>
- <VariableType>Byte</VariableType>
- <Address>myDesiredInfusion</Address>
- </CheatEntry>
- <CheatEntry>
- <ID>879</ID>
- <Description>"Desired Quantity (consumables)"</Description>
- <LastState Value="??" Activated="0" RealAddress="0FF61006"/>
- <ShowAsSigned>1</ShowAsSigned>
- <Color>80000008</Color>
- <VariableType>Byte</VariableType>
- <Address>myDesiredQuantity</Address>
- </CheatEntry>
- <CheatEntry>
- <ID>880</ID>
- <Description>"helper"</Description>
- <LastState Activated="0"/>
- <Color>80000008</Color>
- <VariableType>Auto Assembler Script</VariableType>
- <AssemblerScript>[ENABLE]
- LuaCall(showHelper())
- [DISABLE]
- LuaCall(hideHelper())
- </AssemblerScript>
- </CheatEntry>
- </CheatEntries>
- </CheatEntry>
- </CheatEntries>
- </CheatTable>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement