Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Another transformation problem
#1
Hi guys it's me again. I know there are lots of posts about transformation. I dig through some of them but didn't quite get my answer so i'll try a new thread.

I wanted to make a John that temporarily powers up and do more powerful moves for a period of time. I followed the tutorial on the main site which utilizes ik8 (link below).

http://www.lf-empire.de/lfev9/en/lf2-emp...sformation

So I used this method and got my John to transform nicely to another John, then change back himself after a period of time. All the frames, moves, and pictures worked. That's nice and all, but then I encountered a problem when playing an opponent who also uses John. After both Johns transform, then change back to normal John, they simply couldn't transform again. And a COM object is left on the screen (and enemies will try to attack it).

Here's what I thought happened: I create a backtrasnformer (as the tutorial call it) that follows me around when I'm transformed, but it seems to me it has been "taken" by the opponent John and somehow left an unused backtransformer (which the opponent created) in the air.

So I decided to study the codes of DRS-TD John (where I get my inspiration from). He can power up himself temporarily and shoots ball that explodes upon impact. A few things I notice: It doesn't have the COM object following him around when powered up, and he didn't use state 8000 to do his power up (or maybe I just couldn't find it). Also, he utilizes object 9997 (the message state, not sure if number's correct).

So the question is, is there another mechanism to make this power up work without using a 8000 transformation? Or is there anyway around my problem? Sorry for the long post, and thanks in advance! :p
Reply
Thanks given by:
#2
i dont think there is.

anyways look what others reply
LIFE DEDICATED TO LF2


Reply
Thanks given by:
#3
Well I know a solution but it also has some disadvantages, maybe someone else knows a better one.

In the frames of the powerup move you create a t3 object with a specific ik8. Then you create in every frame of the char the relating bdy to that ik8. Since ik8 moves to the centerpoint of the attached object it will always follow the char. With the timer function of hit_a and hit_d in the t3 object you can set the duration of the powerup move.

Then, within that ik8 t3 object you create an opoint which spawns permanently t0 objects (loop the t3 object with next, it will disappear with the timer function anyway). Use state 3005, next 1000 as well as an empty pic number in the activated t0 frame in order to hide the activated t0 object.

Next, You will create a new specific bdy in the activated t0 object which will interact with John's moves you wish to power up and in the frames of John's moves you will create a ik8 which interacts with the bdy of the activated t0 object. Since John only can use one move per time yo don't need different ik8 values for every different move you wish to power up.

Mainsite link for ik8: http://www.lf-empire.de/lf2-empire/data-...l=&start=9

This is basically the buff/charge technique. (search the forums for more information) A disadvantage of this technique is that you will need (depending on the use of the method) a lot of frames. So make sure you activate the ik8 as late as possible in the powerup move frames. For example, if you wish to create a new kind of "Energy Blast" (hit_Fa) you can just set the ik8 right before John creates the t3 object and after John created the new t3 object you can switch back to the original frame sequence of the according move. Of course, this will only work if you use the existing animations of the move.

I hope It was a bit helpful. ;)

- Arokh
Reply
Thanks given by:
#4
(04-13-2015, 11:28 AM)Arokh Wrote:  Well I know a solution but it also has some disadvantages, maybe someone else knows a better one.

In the frames of the powerup move you create a t3 object with a specific ik8. Then you create in every frame of the char the relating bdy to that ik8. Since ik8 moves to the centerpoint of the attached object it will always follow the char. With the timer function of hit_a and hit_d in the t3 object you can set the duration of the powerup move.

Then, within that ik8 t3 object you create an opoint which spawns permanently t0 objects (loop the t3 object with next, it will disappear with the timer function anyway). Use state 3005, next 1000 as well as an empty pic number in the activated t0 frame in order to hide the activated t0 object.

Next, You will create a new specific bdy in the activated t0 object which will interact with John's moves you wish to power up and in the frames of John's moves you will create a ik8 which interacts with the bdy of the activated t0 object. Since John only can use one move per time yo don't need different ik8 values for every different move you wish to power up.

Mainsite link for ik8: http://www.lf-empire.de/lf2-empire/data-...l=&start=9

This is basically the buff/charge technique. (search the forums for more information) A disadvantage of this technique is that you will need (depending on the use of the method) a lot of frames. So make sure you activate the ik8 as late as possible in the powerup move frames. For example, if you wish to create a new kind of "Energy Blast" (hit_Fa) you can just set the ik8 right before John creates the t3 object and after John created the new t3 object you can switch back to the original frame sequence of the according move. Of course, this will only work if you use the existing animations of the move.

I hope It was a bit helpful. ;)

- Arokh



Thanks for the reply. If I'm understanding correctly, this is what happens with your method:

1) Create an t3 ik8 object. This basically determines the duration of John's transformation (basically same idea as the one I learned/used).
2) Create a new object that only interacts with a certain move of John (that I wish to power up) and force John to go to that frame and do the power up move.
3) t3 ik8 object times up, and the object disappears with it.

Is that correct?
Reply
Thanks given by:
#5
Yes, basically you have 2 different ik8:

ik8(1):

itr part: In the spawned t3 object of the move which creates the powerup effect.
bdy part: In all basic frames of the character. (John)
ik8 dvx: has to be same as next (frame sequence, timer function will make it disappear in that case)
Purpose of the ik8: It follows John and spawns permanently t0 objects.

ik8(2):

itr part: During the move frames of the moves which will get a power up bonus.
bdy part: In the spawned t0 objects from the t3 object and ik8 above.
ik8 dvx: Begin of new move frames. (super blasts and awesome explosions stuff)
Purpose of the ik8: It activates the power up moves.

As soon as the timer of the t3 object runs out the object will disappear and it will stop creating t0 objects thus cancelling the possibility to interact with the second ik8 to benefit from the power up bonus. Unfortunately, as you perhaps know, if there are 2 Johns too close it may happen that one John can use the power up moves which the other John activated. :s
Reply
Thanks given by:
#6
(04-13-2015, 02:42 PM)Arokh Wrote:  Unfortunately, as you perhaps know, if there are 2 Johns too close it may happen that one John can use the power up moves which the other John activated. :s

That's what I was thinking haha. But still it's a solution. Thanks! Ima try it and see.
Reply
Thanks given by:
#7
The whole problem with ik8 is that it interacts with yourself, allies and enemies - which means as long as there are 2 Johns you are going to have a potential bug with the temporary transformation. You can try to mitigate the problem for enemies by adding another ik0 outside the ik8 to push them back, but invisible or John just getting up from the floor can still potentially come into contact with the ik8 and thus cause bugs. I think you'd have to live with this downside and avoid having multiple instances of the transformed John altogether.

Also, instead of using state 3005 which will still show the "Com", you can actually use a t3 to spawn a t0 in action: 1200 and hold him with wpoint. This thread may give you some ideas.

I have not played DRS-TD, but if I'm not mistaken DRS-TD uses a custom lf2.exe which has its own custom states etc, so it is unlikely you can replicate any similar transforms you see there with default lf2.exe.
[Image: uMSShyX.png]
~Spy_The_Man1993~
Steiner v3.00 (outdated), Challenge Stage v1.51
Luigi's Easier Data-Editor, A-Man's Sprite Mirrorer
Working on the LF2 Rebalance mod.
Avatar styled by: prince_freeza
Reply
Thanks given by:
#8
(04-13-2015, 02:49 PM)STM1993 Wrote:  The whole problem with ik8 is that it interacts with yourself, allies and enemies - which means as long as there are 2 Johns you are going to have a potential bug with the temporary transformation. You can try to mitigate the problem for enemies by adding another ik0 outside the ik8 to push them back, but invisible or John just getting up from the floor can still potentially come into contact with the ik8 and thus cause bugs. I think you'd have to live with this downside and avoid having multiple instances of the transformed John altogether.

Also, instead of using state 3005 which will still show the "Com", you can actually use a t3 to spawn a t0 in action: 1200 and hold him with wpoint. This thread may give you some ideas.

I have not played DRS-TD, but if I'm not mistaken DRS-TD uses a custom lf2.exe which has its own custom states etc, so it is unlikely you can replicate any similar transforms you see there with default lf2.exe.



Thanks for the method, but I still don't quite get the algorithm clearly. What I did was, in John's transform move frames, instead of creating a backtransformer right away, I created a john_ball object, in which the frame spawns the backtransformer as a weapon (with kind: 2 and weaponact 1200). Everything else stays basically the same.

Is this the correct approach?  :s I'm kinda lost.

And yeah, DRS LF's data doesn't make sense to me. Prolly like you said it's using a different exe. :s



Edit: I had a move which John shoots a ball that burns mana. This ball is in John's dat itself, so I originally spawned it by opointing to himself at a different frame. I tried this move with the wpoint method, but nothing shoots out. I think I'm making some conceptual mistake. :s
Reply
Thanks given by:




Users browsing this thread: 2 Guest(s)