cmp ecx,5 ; Check if ID is 5 (Rudolf)
je short HP_10 ; go to the 10 HP part
cmp ecx,52 ; Check if ID is 5 (Julian)
je short HP_10 ; go to the 10 HP part
cmp ecx,55 ; Put your character or object's ID here
je short HP_125 ; go to the 125 HP part
jmp dword ptr [Max_HP2]
HP_10:
mov ecx,10 ; 10 HP for Rudolf's Double and Julian's Mirror Image
jmp dword ptr [Max_HP1]
HP_125:
mov ecx,125 ; 125 HP if you spawn your character or object (normal = 500)
jmp dword ptr [Max_HP1]
04-10-2009, 08:58 AM (This post was last modified: 04-10-2009, 08:58 AM by Boop.)
Hey, sorry I haven't been doing much lately. I promise I'll start "working" some time in july . For now, how about you take over . All you have to do is ALL upload your source files every so often (in a zip or rar file). I think me and you are the only two people working on this so you don't have to worry about merging other peoples stuff .
e:
MOV BYTE PTR DS:[EAX+0D2h],1
PUSH 5h ; e
PUSH 5Eh
CALL [Davis_C2]
ADD ESP,8h
TEST EAX,EAX
JE f ; jmp f
MOV EAX,DWORD PTR SS:[ESP+28h]
CMP EAX,10h
JE f ; jmp f
CMP EAX,8h
JNZ return ; jmp to end
f:
MOV ECX,DWORD PTR SS:[ESP+1Ch] ; f
MOV EBX,DWORD PTR DS:[ESI+ECX*4+194h]
MOV EBP,DWORD PTR DS:[ESI+EDI*4+194h]
MOV EDX,DWORD PTR DS:[EBX+10h]
FLD QWORD PTR SS:[EBP+40h]
MOV DWORD PTR SS:[ESP+20h],EDX
CALL [Davis_C3]
SUB EAX,DWORD PTR SS:[EBP+10h]
ADD EAX,DWORD PTR SS:[ESP+20h]
PUSH EAX
CALL [Davis_C1]
ADD ESP,4
CMP EAX,64h
JGE return ; jmp to end
MOV EAX,DWORD PTR DS:[EBX+18h]
MOV ECX,EBP
SUB EAX,DWORD PTR DS:[ECX+18h]
PUSH EAX
CALL [Davis_C1]
ADD ESP,4
CMP EAX,7
JGE return ; jmp to end
CMP DWORD PTR DS:[ECX+308h],0C8h
JLE return ; jmp to end
MOV AL,BYTE PTR DS:[ECX+80h]
TEST AL,AL
JNZ g ; jmp g
MOV EDX,DWORD PTR SS:[ESP+20h]
CMP DWORD PTR DS:[ECX+10h],EDX
JL dp
g:
CMP AL,1 ; g
JNZ return ; jmp davis 3
MOV EAX,DWORD PTR SS:[ESP+20h]
CMP DWORD PTR DS:[ECX+10h],EAX
JG dp ; jmp davis 3
return: jmp Davis_return
dp: jmp Davis_DP
AI_Davis endp
To disable the DJA stuff just replace:
CMP DWORD PTR DS:[EAX+6F4h],0Bh ; davis
JE DJA_1
CMP DWORD PTR DS:[EAX+6F4h],19Bh
JE DJA_2
jmp return
with:
CMP DWORD PTR DS:[EAX+6F4h],0Bh ; davis
JE no_DJA
CMP DWORD PTR DS:[EAX+6F4h],19Bh
JNZ return
3 things updated:
Hiding shadow
State 85 and state 86 (see below)
Whole Davis AI (By Silva)
Code:
State_Turning proc
;This 2 states allow you control the direction in a move (both ^, v, < and >).
;Imagine you use mark's Body Attack D>J, with state 85 or 86 you can turn back without stop.
;State 86 merely allows you to use the direction key.
;State 85 does it similarly but additionally increments the frame number by 1.
;###This is mainly copy from the state of dash, I didn't understand most of it
cmp dword ptr ds:[edx+ecx+7ACh],5
je short r1
cmp dword ptr ds:[edx+ecx+7ACh],85
je short s85
cmp dword ptr ds:[edx+ecx+7ACh],86
je short s86
jmp dword ptr [st_r2]
r1: jmp dword ptr [st_r1]
04-16-2009, 05:24 PM (This post was last modified: 04-16-2009, 05:26 PM by Boop.)
Copied the whole AI procedure into the dll.... I don't know if this should be included or not... It makes the dll file 15kb
rarara.asm
invoke CallPatch, 00419E24h, addr AI_Generic
Several things updated:
Generic AI (by Silva)
itr/effect 6 - Move the enemies to frame 150. State 150 immues to it.
itr/effect 7 - Hit the enemies without bringing them to the injured frame.
itr/effect 8 - Make the enemies fall immediately.
itr/effect 6xxx - Move the enemies to frame xxx (between 0 to 339). State 6xxx immues to it.
itr/effect 8xxx - Transform the enemies to ID xxx. State 80 immues to it. ID xxx immues to it.
itr/effect 1xxxyyyzzz - Move the enemies to frame xxx (between 0 to 339). Transform the enemies to ID yyy. Only enemies in state zzz will be affected by this effect. ID yyy immues to this effect. By putting 999 in xxx or yyy or zzz, the function of each part can separately be disabled. Putting 998 in zzz can affected only the enemies in state 11 and 16 (Dance of Pain).
Sorry I found that the 'Generic AI' was missed in the release of yesterday, but I am still updating the DLL framework today.
Newest version [18/04/09]: http://www.mediafire.com/?o2jzzmlfmgd
Update:
Add back the 'Generic AI'.
Add some immue states for the itr/effect 6, 7, 8 and 1xxxyyyzzz. Now state 150 and 156 immues to the itr/effect 6, state 157 immues to the itr/effect 7, state 158 immues to the itr/effect 8, and state 6xxx immues to the frame changing part in itr/effect 1xxxyyyzzz.
ID xxx would not immues to itr/effect 1xxxyyyzzz. (They will change frame number)
State 20 - Attacks only teammates. (Enemies freezed will still be attacked. )
Maybe these days I am updating the DLL framework so frequently, but start from now I will not update it for a few days.
04-25-2009, 11:25 AM (This post was last modified: 04-25-2009, 05:53 PM by Sharingan.)
I think u can add a new kind of itr like itr k: 8 which affects only enemies and doesn't "teleport" to nearest person so when I hit someone then I go to dvx like in k:8 and if i miss then i go to next frame.
U could also make poison like jan's heal which decreases HP slowly, transforms on time and if HP>500 then HP=500.
Just a small note, somewhere in your code you manged to mess up effect 30. I don't know exactly where since I just removed all your code and it started working again (discovered this when I was working on the Two Level LF2 mod thing).