Originally Posted by
UnknOwned
hmm, never really had problems with it, but thanks for the headsup. Ill try to see what can cause this.
But you had not at any time since you launched D3 had any other players in one of your games?
And did you manually check the interaction fuction that the snowpower and GUID was the same as the one you used?
I just re-checked in a 100% single player game. Still no pick up 
here's the full method:
Code:
public void interactGUID(long guid) {
int snoPower = 0x7545;
System.out.println("Attempting interaction with guid: " + guid);
int myOffset = getCharacterOffset();
int clickToMove = baseHack.readMemory(myOffset + Addresses.ObjectManagerActorLinkToCTM.a, 4).getInt(0);
int clickToMoveCurX = clickToMove + Addresses.CurrentXOffset.a;
int clickToMoveCurY = clickToMove + Addresses.CurrentYOffset.a;
int clickToMoveCurZ = clickToMove + Addresses.CurrentZOffset.a;
int clickToMoveToX = clickToMove + Addresses.MoveToXOffset.a;
int clickToMoveToY = clickToMove + Addresses.MoveToYOffset.a;
int clickToMoveToZ = clickToMove + Addresses.MoveToZOffset.a;
float myPosX = baseHack.readMemory(clickToMoveCurX, 4).getFloat(0);
float myPosY = baseHack.readMemory(clickToMoveCurY, 4).getFloat(0);
float myPosZ = baseHack.readMemory(clickToMoveCurZ, 4).getFloat(0);
int clickToMoveToggle = clickToMove + Addresses.ToggleMove.a;
int clickToMoveFix = clickToMove + Addresses.FixSpeed.a;
baseHack.writeMemory(interactE+Addresses.InteractOffsetUNK1.a, 0x777c);
baseHack.writeMemory(interactE+Addresses.InteractOffsetUNK2.a, 0x1);
baseHack.writeMemory(interactE+Addresses.InteractOffsetUNK3.a, snoPower);
baseHack.writeMemory(interactE+Addresses.InteractOffsetUNK4.a, snoPower);
baseHack.writeMemory(interactE+Addresses.InteractOffsetMouseState.a, 0x1);
baseHack.writeMemory(interactE+Addresses.InteractOffsetGUID.a, guid);
baseHack.writeMemory(clickToMoveToX, myPosX+1);
baseHack.writeMemory(clickToMoveToY, myPosY);
baseHack.writeMemory(clickToMoveToZ, myPosZ);
baseHack.writeMemory(clickToMoveToggle, 1);
baseHack.writeMemory(clickToMoveFix, 69736);
int temp = baseHack.readMemory(interactE+Addresses.InteractOffsetUNK2.a, 4).getInt(0);
System.out.println("value of interactE+Addresses.InteractOffsetUNK2.a = " + temp);
while(temp != 1) {
temp = baseHack.readMemory(interactE+Addresses.InteractOffsetUNK2.a, 4).getInt(0);
System.out.println("value of interactE+Addresses.InteractOffsetUNK2.a (inside loop) = " + temp);
try{Thread.sleep(10);}catch(Exception e){}
}
}
with these offsets / addresses:
Code:
public enum Addresses {
ObjectManager(0x15A0BEC),
ObjectManagerActorOffsetA(0x8b0),
ObjectManagerActorCount(0x108),
ObjectManagerActorOffsetB(0x148),
ObjectManagerActorLinkToCTM(0x380),
ObjectManagerStructSize(0x428),
Interact(0x01580A14),
InteractOffsetA(0xa8),
InteractOffsetB(0x58),
InteractOffsetUNK1(0x7f20),
InteractOffsetUNK2(0x7f44),
InteractOffsetUNK3(0x7f7c),
InteractOffsetUNK4(0x7f80),
InteractOffsetMouseState(0x7f84),
InteractOffsetGUID(0x7f88),
FixSpeed(0x20),
ToggleMove(0x34),
CurrentXOffset(0xa8),
CurrentYOffset(0xac),
CurrentZOffset(0xb0),
MoveToXOffset(0x40),
MoveToYOffset(0x44),
MoveToZOffset(0x48),
CurrentX(0xa8),
CurrentY(0xac),
CurrentZ(0xb0),
RotationOffset(0x170);
int a;
Addresses(int a){this.a = a;}
}
where
Code:
int temp = baseHack.readMemory(interactE+Addresses.InteractOffsetUNK2.a, 4).getInt(0);
never seems to return a correct looking value - just random ints.
for example, if I drop a potion and run the code, my character successfully walks to the item, but i receive output similar to the following:
Code:
Current position: 161.933197, 62.344814, 0.100000
moving to:
Name: healthPotion_Mythic-150
GUID: 2025783363
[160.754944, 62.345436, 1.000000]
[2, -1, 2016804892]
Attempting interaction with guid: 2025783363
value of interactE+Addresses.InteractOffsetUNK2.a = 442
value of interactE+Addresses.InteractOffsetUNK2.a (inside loop) = 446
value of interactE+Addresses.InteractOffsetUNK2.a (inside loop) = 450
value of interactE+Addresses.InteractOffsetUNK2.a (inside loop) = 454
value of interactE+Addresses.InteractOffsetUNK2.a (inside loop) = 458
value of interactE+Addresses.InteractOffsetUNK2.a (inside loop) = 462
where the while loop runs infinitely.
This seems to me like i'm potentially reading / writing incorrect addresses. It seems to match the code you've posted; was something updated in the 1.3 patch?