Update: I missed one part... Its all here now though(I hope)
Range AI is split into 4 parts. I didn't bother finding out what each part does
.
part one:
00407A8A |. 8B89 F4060000 MOV ECX,DWORD PTR DS:[ECX+6F4] ; RANGE
00407A90 |. 83F9 04 CMP ECX,4 << ID 4
00407A93 |. 0F84 3B010000 JE lf2.00407BD4
00407A99 |. 83F9 05 CMP ECX,5 << ID 5
00407A9C |. 0F84 32010000 JE lf2.00407BD4
00407AA2 |. 83F9 1F CMP ECX,1F << ID 31
00407AA5 |. 0F84 29010000 JE lf2.00407BD4
part 2
looks the same as part one)
00407EC8 |. 8B80 F4060000 MOV EAX,DWORD PTR DS:[EAX+6F4] ; RANGE
00407ECE |. 83F8 04 CMP EAX,4
00407ED1 |. 74 0A JE SHORT lf2.00407EDD
00407ED3 |. 83F8 05 CMP EAX,5
00407ED6 |. 74 05 JE SHORT lf2.00407EDD
00407ED8 |. 83F8 1F CMP EAX,1F
part 3:
0040806B |. 83F8 04 CMP EAX,4
0040806E |. 74 13 JE SHORT lf2.00408083
00408070 |. 83F8 05 CMP EAX,5
00408073 |. 74 0E JE SHORT lf2.00408083
00408075 |. 83F8 1F CMP EAX,1F
00408078 |. 74 09 JE SHORT lf2.00408083
0040807A |. 83F8 24 CMP EAX,24 << jans' ID! huh?!
I suspect part 3 just tell them to run around a lot
, if you haven't noticed jans AI tries to keep a distance and cast those devil/angle things all the time, doesn't usually fight melee if she can help it
.
Part 4 (update, I guess I missed this):
00407F81 |. 8B82 F4060000 MOV EAX,DWORD PTR DS:[EDX+6F4]
00407F87 |. 83F8 04 CMP EAX,4
00407F8A |. 74 0E JE SHORT lf2.00407F9A
00407F8C |. 83F8 05 CMP EAX,5
00407F8F |. 74 09 JE SHORT lf2.00407F9A
00407F91 |. 83F8 1F CMP EAX,1F
00407F94 |. 0F85 B2000000 JNZ lf2.0040804C
To copy the range AI to more ID's just replace(using part one as an example :
00407A90 |. 83F9 04 CMP ECX,4 << ID 4
With
JMP XXXXXXX
Then at XXXXXX:
CMP ECX,4
JE 00407BD4
CMP ECX,30 (id 48, the ID you want to copy to)
JE 00407BD4
JMP 00407A99
Hopefully you should be able to apply this to the other 2 parts (if you can't I'll edit the tutorial).
Range AI is split into 4 parts. I didn't bother finding out what each part does

part one:
00407A8A |. 8B89 F4060000 MOV ECX,DWORD PTR DS:[ECX+6F4] ; RANGE
00407A90 |. 83F9 04 CMP ECX,4 << ID 4
00407A93 |. 0F84 3B010000 JE lf2.00407BD4
00407A99 |. 83F9 05 CMP ECX,5 << ID 5
00407A9C |. 0F84 32010000 JE lf2.00407BD4
00407AA2 |. 83F9 1F CMP ECX,1F << ID 31
00407AA5 |. 0F84 29010000 JE lf2.00407BD4
part 2

00407EC8 |. 8B80 F4060000 MOV EAX,DWORD PTR DS:[EAX+6F4] ; RANGE
00407ECE |. 83F8 04 CMP EAX,4
00407ED1 |. 74 0A JE SHORT lf2.00407EDD
00407ED3 |. 83F8 05 CMP EAX,5
00407ED6 |. 74 05 JE SHORT lf2.00407EDD
00407ED8 |. 83F8 1F CMP EAX,1F
part 3:
0040806B |. 83F8 04 CMP EAX,4
0040806E |. 74 13 JE SHORT lf2.00408083
00408070 |. 83F8 05 CMP EAX,5
00408073 |. 74 0E JE SHORT lf2.00408083
00408075 |. 83F8 1F CMP EAX,1F
00408078 |. 74 09 JE SHORT lf2.00408083
0040807A |. 83F8 24 CMP EAX,24 << jans' ID! huh?!
I suspect part 3 just tell them to run around a lot


Part 4 (update, I guess I missed this):
00407F81 |. 8B82 F4060000 MOV EAX,DWORD PTR DS:[EDX+6F4]
00407F87 |. 83F8 04 CMP EAX,4
00407F8A |. 74 0E JE SHORT lf2.00407F9A
00407F8C |. 83F8 05 CMP EAX,5
00407F8F |. 74 09 JE SHORT lf2.00407F9A
00407F91 |. 83F8 1F CMP EAX,1F
00407F94 |. 0F85 B2000000 JNZ lf2.0040804C
To copy the range AI to more ID's just replace(using part one as an example :
00407A90 |. 83F9 04 CMP ECX,4 << ID 4
With
JMP XXXXXXX
Then at XXXXXX:
CMP ECX,4
JE 00407BD4
CMP ECX,30 (id 48, the ID you want to copy to)
JE 00407BD4
JMP 00407A99
Hopefully you should be able to apply this to the other 2 parts (if you can't I'll edit the tutorial).
![[Image: doty7Xn.gif]](http://i.imgur.com/doty7Xn.gif)
10 ʏᴇᴀʀs sɪɴᴄᴇ ɪʀᴄ ɢᴏᴏᴅ.ɪ ᴡᴀʟᴋ ᴛʜʀᴏᴜɢʜ ᴛʜᴇ ᴇᴍᴘᴛʏ sᴛʀᴇᴇᴛs ᴛʀʏɪɴɢ ᴛᴏ ᴛʜɪɴᴋ ᴏғ sᴏᴍᴇᴛʜɪɴɢ ᴇʟsᴇ ʙᴜᴛ ᴍʏ ᴘᴀᴛʜ ᴀʟᴡᴀʏs ʟᴇᴀᴅs ᴛᴏ ᴛʜᴇ ɪʀᴄ. ɪ sᴛᴀʀᴇ ᴀᴛ ᴛʜᴇ sᴄʀᴇᴇɴ ғᴏʀ ʜᴏᴜʀs ᴀɴᴅ ᴛʀʏ ᴛᴏ sᴜᴍᴍᴏɴ ᴛʜᴇ ɢᴏᴏᴅ ɪʀᴄ. ɪ ᴡᴀᴛᴄʜ ᴏᴛʜᴇʀ ɪʀᴄ ᴄʜᴀɴɴᴇʟs ʙᴜᴛ ɪᴛ ɪs ɴᴏ ɢᴏᴏᴅ. ɪ ᴘᴇsᴛᴇʀ ᴢᴏʀᴛ ᴀɴᴅ ᴛʀʏ ᴛᴏ ʀᴇsɪsᴛ ʜɪs sᴇxɪɴᴇss ʙᴜᴛ ɪᴛ ɪs ᴀʟʟ ᴍᴇᴀɴɪɴɢʟᴇss. ᴛʜᴇ ᴇɴᴅ ɪs ɴᴇᴀʀ.ɪ ᴛʜᴇɴ ᴜsᴜᴀʟʟʏ ʀᴇᴀᴅ sᴏᴍᴇ ᴏʟᴅ ɪʀᴄ ʟᴏɢs ᴀɴᴅ ᴄʀʏ ᴍʏsᴇʟғ ᴛᴏ sʟᴇᴇᴘ.