07-20-2013, 05:18 AM
(07-18-2013, 10:57 AM)empirefantasy Wrote:(07-15-2013, 12:19 PM)The Hari Wrote: - Don't you think it's easier to just read few articles from mainsite?
- I don't have to spend 2 days for understanding how to change name of character.
- Everyone will get all basic of dc in about 15-30 minutes.
-might be easier. but for some who are 0 in dc its better to read mine lessons.
--Nope you dont need to spend 2 days nor 15-30 minutes, you just spend 3-4 minutes by reading my post and some mins more to work by yourself.
First sorry, but i forgot yesterday so we will continue today.
--------------------------------------------------------------------------------------------------------------------------------
Today i will tell you about frames organisation and connection. A frame is a moment of character moving. Frames begin with "<frame> xxx name" and end with "<frame_end>", where xxx is frame number and "name" is frame's name. Frames usually are connected with each-other with "next: xxx". xxx is the number of the next frame that will come.
Let's take an example.
DC-Code:<frame> 0 standing <--- from here we read that this is frame number 0 and it is called "standing". pic: 0 state: 0 wait: 5 next: 1 dvx: 0 dvy: 0 dvz: 0 centerx: 39 centery: 79 hit_a: 0 hit_d: 0 hit_j: 0 hit_Fa: 240 hit_Ua: 300 hit_Da: 270 hit_Uj: 290 "pic: 0" meas that it shows image with number 0, we will learn later about these things. "state: 0" is character state! "wait: 5" means we will wait 5 TU* before character goes in the next frame. "next: 1" means character will go to frame number 1. bpoint: x: 39 y: 34 bpoint_end: wpoint: kind: 1 x: 23 y: 55 weaponact: 23 attacking: 0 cover: 0 dvx: 0 dvy: 0 dvz: 0 wpoint_end: bdy: kind: 0 x: 21 y: 18 w: 43 h: 62 bdy_end: <frame_end> <frame> 1 standing <---- frame number 1, the one where character goes after frame 0 (the frame above). pic: 1 state: 0 wait: 3 next: 2 dvx: 0 dvy: 0 dvz: 0 centerx: 39 centery: 79 hit_a: 0 hit_d: 0 hit_j: 0 hit_Fa: 240 hit_Ua: 300 hit_Da: 270 hit_Uj: 290 bpoint: x: 39 y: 33 bpoint_end: wpoint: kind: 1 x: 23 y: 54 weaponact: 23 attacking: 0 cover: 0 dvx: 0 dvy: 0 dvz: 0 wpoint_end: bdy: kind: 0 x: 21 y: 18 w: 43 h: 62 bdy_end: <frame_end>
next: 999 means that character have finished that move and he will go to frame that we have determined usually in standing frames. But after a move (D>A) which finishes with next: 999 we press buttons for another move (D^A), char will go directly from finishing D>A, to D^A.
*1 TU= 1/30 second.
Job1
Open some character dat files and look how frames are connected with each other via "next:" tag.
Except next there are other tags which make the character goes to the next frame.
hit_a: xxx <-- xxx the frame where character goes when we press attack
hit_j: xxx <-- xxx the frame where character goes when we press jump
hit_d: xxx <-- xxx the frame where character goes when we press defend
For special moves. since all special moves start with D, we dont write it, so we write only the direction "U" (up), "D" (down), "F" (forward (left or right)) and "a" or "j". So the direction is always with capital letter with jupm and attack are always with small letters. Example:
hit_Fa: xxx <-- xxx the frame where character goes when we press D>A.
The DJA case: hit_ja: xxx
Job2
Open deep.dat and go to dash sword (D>J), you know that since it is a long move it should have many frames. (To notice where are move's frames, look in standing and walking frames and watch commands of special moves (like: hit_Da: xxx or hit_Uj: xxx), that becaouse usually moves starts from standing or walking, in original version we cant do any special move when we are jumping.) It starts from frame 290 to frame 309. Now your job is to make it do DvA move after he finishes D>J. To do that you delete 999 number in the last frame's next: and replace it with the first frame number of DvA, which is frame 260.
DC-Code:the beggingin of D>J <frame> 290 dash_sword pic: 160 state: 301 wait: 1 next: 291 dvx: 3 dvy: 0 dvz: 0 centerx: 25 centery: 78 hit_a: 0 hit_d: 0 hit_j: 0 mp: 150 sound: data\045.wav wpoint: kind: 1 x: 31 y: 52 weaponact: 31 attacking: 0 cover: 1 dvx: 0 dvy: 0 dvz: 0 wpoint_end: bdy: kind: 0 x: 8 y: 14 w: 18 h: 60 bdy_end: <frame_end> <frame> 291 dash_sword pic: 161 state: 301 wait: 1 next: 292 dvx: 6 dvy: 0 dvz: 0 centerx: 18 centery: 78 hit_a: 0 hit_d: 0 hit_j: 0 sound: data\054.wav wpoint: kind: 1 x: 22 y: 52 weaponact: 31 attacking: 0 cover: 1 dvx: 0 dvy: 0 dvz: 0 wpoint_end: itr: kind: 0 x: 49 y: 9 w: 18 h: 64 dvx: 12 fall: 70 vrest: 7 bdefend: 16 injury: 45 effect: 4 itr_end: bdy: kind: 0 x: 3 y: 17 w: 19 h: 59 bdy_end: <frame_end> .......... <frame> 308 dash_sword pic: 171 state: 3 wait: 1 next: 309 dvx: 0 dvy: 0 dvz: 0 centerx: 34 centery: 78 hit_a: 0 hit_d: 0 hit_j: 0 wpoint: kind: 1 x: 37 y: 52 weaponact: 31 attacking: 0 cover: 1 dvx: 0 dvy: 0 dvz: 0 wpoint_end: bdy: kind: 0 x: 19 y: 17 w: 48 h: 62 bdy_end: <frame_end> <frame> 309 dash_sword <-- the last frame of D>J pic: 170 state: 3 wait: 2 next: 999 dvx: 0 dvy: 0 dvz: 0 centerx: 35 centery: 78 hit_a: 0 hit_d: 0 hit_j: 0 NOW CHANGE "next: 999" TO "next: 260". wpoint: kind: 1 x: 36 y: 52 weaponact: 31 attacking: 0 cover: 1 dvx: 0 dvy: 0 dvz: 0 wpoint_end: bdy: kind: 0 x: 16 y: 16 w: 40 h: 65 bdy_end: <frame_end> <frame> 260 jump_sword <---The first frame of DVA pic: 140 state: 3 wait: 1 next: 261 dvx: 5 dvy: 0 dvz: 0 centerx: 29 centery: 78 hit_a: 0 hit_d: 0 hit_j: 0 mp: 75 wpoint: kind: 1 x: 36 y: 52 weaponact: 31 attacking: 0 cover: 1 dvx: 0 dvy: 0 dvz: 0 wpoint_end: bdy: kind: 0 x: 13 y: 20 w: 13 h: 60 bdy_end: <frame_end> <frame> 261 jump_sword pic: 141 state: 3 wait: 1 next: 262 dvx: 0 dvy: 0 dvz: 0 centerx: 26 centery: 68 hit_a: 0 hit_d: 0 hit_j: 0 sound: data\054.wav wpoint: kind: 1 x: 35 y: 40 weaponact: 31 attacking: 0 cover: 1 dvx: 0 dvy: 0 dvz: 0 wpoint_end: itr: kind: 0 x: 6 y: 39 w: 83 h: 28 dvx: 6 dvy: -17 fall: 70 vrest: 10 bdefend: 60 injury: 54 effect: 1 itr_end: bdy: kind: 0 x: 12 y: 12 w: 20 h: 59 bdy_end: <frame_end> ....
Homework
Make davis do D^A when we press D when he is doing DVA. Just show me here the DC code.
We will meet on monday or sunday.
Teacher, Can I copy the h.w from other student ? ;)
I didn't understand the next: tag and the after that.. davis will do the D^A
Can you explain this again ?
Sincerely, Slitcm ,Gal