[RELEASE] Non-Agro

01/28/2010 18:34 sachamo512#1
I don't know if anybody will really use this, because there already is a non-agro script, but this one works a little differently, and better, imo. I was using the released non-agro in DF and I got owned, so that's why I made this.

Back in the days of winhex, non-agro was made by editing the AI key for mobs so that they didn't have the ability to attack.

For example, I would edit Styx AI key from 1 to 6. 1 is a melee attack, and 6 is a range attack. Since Styx didn't have a range attack, it wouldn't attack. That's what this script does; it changes all AI keys to 7. Looking in Monster.csv, I saw that things like Open Boxes, Jugs, etc. had AI keys of 7 and those things don't attack.

The good thing about this script is that, from what I found, it doesn't glitch on most mobs (Parca bosses are one exception). When you don't KB mobs, the other non-agro script lets them attack you. Mine doesn't (minus the few exceptions I've found)

Quote:
[ENABLE]
alloc(newmem,2048)
label(returnhere)
label(originalcode)
label(exit)

0053D50A: // 0f b7 86 54 01 00 00
jmp newmem
nop
nop
returnhere:

newmem:
mov eax, 00000007 //AI Key

originalcode:
movzx eax,word ptr [esi+00000154]

exit:
jmp returnhere

[DISABLE]
0053D50A:
movzx eax,word ptr [esi+00000154]
01/28/2010 18:39 nildesita#2
nice man ill try it later
01/28/2010 22:00 badass123#3
Quote:
Originally Posted by sachamo512 View Post
The only glitch it has is the same glitch as the other non-agro. If you don't KB the mobs, they will still attack you.
than i dont see reason why is this noagro better than old one
01/28/2010 22:16 sachamo512#4
Quote:
Originally Posted by badass123 View Post
than i dont see reason why is this noagro better than old one
Quote:
Originally Posted by sachamo512 View Post
I don't know if anybody will really use this, because there already is a non-agro script, but this one works a little differently, and better, imo. I was using the released non-agro in DF yesterday and I got owned, so that's why I made this.
reading helps...
01/28/2010 22:33 efei3278#5
Hey man, just for the record, this doesnt work on me. At first i thought i might need to update the offset, but i couldnt even find the result of the array of bytes. Can u confirm those bytes again?
01/28/2010 22:39 sachamo512#6
#updated

The AoB from before was after I activated it, lol

Thanks for the catch, it should work now
01/28/2010 23:18 efei3278#7
Quote:
Originally Posted by sachamo512 View Post
#updated

The AoB from before was after I activated it, lol

Thanks for the catch, it should work now
Np, ill test the updated one later.
01/29/2010 00:16 chaz23#8
Seems nifty, I'll give it a try.
01/29/2010 06:11 efei3278#9
Quote:
Originally Posted by sachamo512 View Post
#updated

The AoB from before was after I activated it, lol

Thanks for the catch, it should work now
Man i can find the value now with the new array of bytes.

But the bad news is it still doesnt work.

I dont know if its my problem or what.

Maybe u should take a look again.
01/29/2010 08:46 bottomy#10
Did you mean to put the originalcode still in there? because the originalcode is just writing over the other value at eax.

Code:
newmem:
mov eax, 00000007 //moves 00000007 into eax so eax now holds 00000007

originalcode:
movzx eax,word ptr [esi+00000154] //moves the word size at [esi+154] plus 0000 so eax now holds 0000(word size at [esi+154])

//so are you sure you didn't mean to do 
newmem:
mov eax,7

//or
newmem:
mov word ptr [esi+154],0007
originalcode:
movzx eax,word ptr [esi+154]
01/29/2010 18:05 sachamo512#11
Quote:
Originally Posted by bottomy View Post
Did you mean to put the originalcode still in there? because the originalcode is just writing over the other value at eax.

Code:
newmem:
mov eax, 00000007 //moves 00000007 into eax so eax now holds 00000007

originalcode:
movzx eax,word ptr [esi+00000154] //moves the word size at [esi+154] plus 0000 so eax now holds 0000(word size at [esi+154])

//so are you sure you didn't mean to do 
newmem:
mov eax,7

//or
newmem:
mov word ptr [esi+154],0007
originalcode:
movzx eax,word ptr [esi+154]
that certainly is another way to do it, but as far as I can tell, it basically does the same thing...would it be better to change it to

Quote:
mov word ptr [esi+154],0007
01/29/2010 19:27 gini123#12
dont work in Infernal Dekaron=(
vac work, non-agro - not
and there is no movzx eax,word ptr [esi+00000154],
only movzx eax,word ptr [esi+0000010a]

please advice
01/29/2010 21:00 Sodomizied#13
Quote:
Originally Posted by gini123 View Post
dont work in Infernal Dekaron=(
vac work, non-agro - not
and there is no movzx eax,word ptr [esi+00000154],
only movzx eax,word ptr [esi+0000010a]

please advice
You are in wrong section this is in the 2Moons section not crappy ass Private servers.
01/30/2010 09:32 WarMasterRealOne#14
Quote:
Originally Posted by bagipower View Post
You are in wrong section this is in the 2Moons section not crappy ass Private servers.
yea... ppl get's lost around here.. and they are looking for a download button and they don't even read the post.. just the thread name ... :p