Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
[Character]Skill that may only be used once - issues and problems
#1
Not sure if I should post a new topic or post in an old one which is 4 years old, so I hope I'm not doing anything wrong by posting this :x

Hi everyone,

Lately, I've been trying to add a skill to characters that can only be used once, using J+A via Double Key Inputs

The idea was to make an additional bdy underground, and then opoint a permanent state 18 projectile that will hit and interrupt the character if he tries to use the move again. (Derived that idea from some threads I've read on this forum)


I've been somewhat successful, however, there are a few problems...

If two players use the same character, and one of them uses the skill, the other will not be able to use it.

Also, Rudolf with his D^J would become immune to the projectile which limits skill usage.

Are there any ways to fix these issues, or any better ways to add limited skills?

Simoneon edited this post 09-08-2016 01:02 PM because:
hey I moved this to advanced DCing :)
Reply
Thanks given by:
#2
The simple method would be to just let the character transform after doing the move into another identical character which can't use it.
[Image: signature.png]
A-Engine: A new beat em up game engine inspired by LF2. Coming soon

A-Engine Dev Blog - Update #8: Timeout

Reply
Thanks given by: Bamboori , AscheLeee
#3
The biggest issue here is that you're opointing a ball that has a global range. You can try using an ik8 that attaches itself to a permanent hidden bdy in the character and then reduce the itr size accordingly. This will make the last word detector a lot more precise, though it won't ultimately solve all the problems you mentioned (and Woody can just teleport away from the ball's area of effect). I should also note that since its a ball, you will be able to use your last word every new substage.

Transforming after using a move is a very easy way(and locks it to single use), but it'd eat up a lot of data.txt ids & menu slots, and requires using _b sprites due to using state 8xxx to transform. I understand that you want to give every character a last word ability, so this isn't feasible.

YinYin had a system in Killer-LF2 where you can only use a special move if you exceeded 500hp, which only works if you came into contact with the milk's broken remains and let it hit you with -ve injury.

There's another method that YinYin innovated involving using Rudolf's version of Transform, but it requires you to use DJA as the input. I don't know how exactly it works, but some useful theory:
* Pressing DJA will cause you to use the move. However, it doesn't go all the way because it stops when it reaches a frame with state 500 that checks if you have used transform on someone already or not, and 501 is used to transform into that someone.
* When transforming back into the original character, you always go back to frame 245.
* One thing Jun does is to opoint a copy of himself, grab him into a hidden frame and in the catching frame immediately delete him with vaction 1000 while using throwinjury -1 to trigger transform. So essentially, you're transforming into yourself.
So theoretically you could use such a system to make a strictly 1-time use ability by making the character opoint something that checks if you've gone past the state 500 frame.

You could spawn a weapon "powerup" that can be picked up, but on picking it up, it disappears and instead grants a player a charge they can use for that substage using the ik8 sticking method I described above (this charge can be made an "invisible" character if you want it to persist between substages, but you'll have to deal with a "Com" logo). When the player then presses J+A, the charge checks for a hidden bdy in J+A. If its there, it catches the player and brings him into his last word ability. This particular method would force Rudolf to only be able to use his ability when he is not invisible or any character from using his last word when he isn't supposed to be simply taking advantage of invulnerability when getting up from lying.
Reply
Thanks given by: AscheLeee
#4
Thanks for the suggestions!

I wanted to use J+A because some characters already have a DJA move, so I guess I'll use transform method for rudolf and woody, and the ik8 for everyone else.

Are there any working examples of this ik8 method? I couldn't get it to work. Not sure if I'm doing it wrong, but whenever the character gets knocked down, the ik8 detaches and can even get attached to the attacker.

I added this body to every frame, including 399 (dummy):

Code:
bdy:
      kind: 0  x: 21  y: 920000   w: 43  h: 62
   bdy_end:

Added this body to every frame of the skill i want to limit

Code:
bdy:
      kind: 0  x: 21  y: 920500  w: 43  h: 62
   bdy_end:

And added this in the final frame of the skill:

Code:
opoint:
      kind: 1  x: 21  y: 920000   action: 100  dvx: 0  dvy: 0  oid: 223  facing: 0
   opoint_end:

which opoints this:

Code:
<frame> 100 LastWord_stick
   pic: 12  state: 3002  wait: 0  next: 101  dvx: 0  dvy: 0  centerx: 40  centery: 41  hit_a: 0  hit_d: 0  hit_j: 0 hit_Fa: 0
   itr:
      kind: 8  x: 21  y: 0  w: 43  h: 62 dvx: 101
   itr_end:
   opoint:
      kind: 1  x: 21  y: 400  action: 102  dvx: 0  dvy: 0  oid: 223  facing: 0
   opoint_end:
<frame_end>

<frame> 101 LastWord_stick
   pic: 12  state: 3002  wait: 0  next: 100  dvx: 0  dvy: 0  centerx: 40  centery: 41  hit_a: 0  hit_d: 0  hit_j: 0 hit_Fa: 0
   itr:
      kind: 8  x: 21  y: 0  w: 43  h: 62 dvx: 100
   itr_end:
   opoint:
      kind: 1  x: 21  y: 400  action: 102  dvx: 0  dvy: 0  oid: 223  facing: 0
   opoint_end:
<frame_end>

<frame> 102 LastWord_hit
   pic: 12  state: 18  wait: 0  next: 1000  dvx: 0  dvy: 0  centerx: 40  centery: 41  hit_a: 0  hit_d: 0  hit_j: 0 hit_Fa: 0
   itr:
      kind: 0  x: 40  y: 0  w: 25  h: 265  injury: 1 fall: 1 bdefend: 32 vrest: 1 effect: 5
   itr_end:
<frame_end>
Reply
Thanks given by:
#5
(09-08-2016, 12:23 PM)AscheLeee Wrote:  Are there any working examples of this ik8 method? I couldn't get it to work. Not sure if I'm doing it wrong, but whenever the character gets knocked down, the ik8 detaches and can even get attached to the attacker.
...
    DC-Code:
<frame> 100 LastWord_stick
   pic: 12  state: 3002  wait: 0  next: 101  dvx: 0  dvy: 0  centerx: 40  centery: 41  hit_a: 0  hit_d: 0  hit_j: 0 hit_Fa: 0
   itr:
      kind: 8  x: 21  y: 0  w: 43  h: 62 dvx: 101
   itr_end:
   opoint:
      kind: 1  x: 21  y: 400  action: 102  dvx: 0  dvy: 0  oid: 223  facing: 0
   opoint_end:
<frame_end>
Try adding fall: 70 to the itr kind 8.
Also, your hitting itr uses bdef32. That won't cancel last words if the character has armor class (or if Louis is in frame <20 or state is 4/5/7); use bdef100.

(09-08-2016, 12:23 PM)AscheLeee Wrote:  I added this body to every frame, including 399 (dummy):
Just want to point out that there are some unused data frames in LF2, such as 95 dash_defend (Louis & LEX don't have this iirc because 95 is used for >>JA), 207 tired & 399 dummy. You can remove them to no ill effect. Louis & John also have some unused frames in some of their special moves.
Reply
Thanks given by: AscheLeee
#6
I added fall 70 to the itr kind 8, and it fixed most problems, except it still detaches if knocked far away / high up, and still attaches to the attacker if they are the same character...

Also tried increasing the bdy size of the falling frames by 300px but it still didn't fix anything :x
Reply
Thanks given by:
#7
(09-09-2016, 12:51 PM)AscheLeee Wrote:  I added fall 70 to the itr kind 8, and it fixed most problems, except it still detaches if knocked far away / high up, and still attaches to the attacker if they are the same character...

Also tried increasing the bdy size of the falling frames by 300px but it still didn't fix anything :x
That's because ik8 only moves the ball by the x-axis; it won't follow the character along the y-axis. So you'd likely need to make the bdy and itr bigger on the y-axis or just avoid making moves that launch a character far away altogether. As for attaching to an enemy, one thing you might have to do is add some kind of itr that repels attackers who share the same bdy - but of course this also creates a problem where the attacker gets interrupted even if he isn't stealing the debuff. I'm not sure if using arest instead of vrest for the ik8 would work.

Not much else I can suggest unfortunately.
Reply
Thanks given by: AscheLeee
#8
(09-09-2016, 01:04 PM)STM1993 Wrote:  
(09-09-2016, 12:51 PM)AscheLeee Wrote:  I added fall 70 to the itr kind 8, and it fixed most problems, except it still detaches if knocked far away / high up, and still attaches to the attacker if they are the same character...

Also tried increasing the bdy size of the falling frames by 300px but it still didn't fix anything :x
That's because ik8 only moves the ball by the x-axis; it won't follow the character along the y-axis. So you'd likely need to make the bdy and itr bigger on the y-axis or just avoid making moves that launch a character far away altogether. As for attaching to an enemy, one thing you might have to do is add some kind of itr that repels attackers who share the same bdy - but of course this also creates a problem where the attacker gets interrupted even if he isn't stealing the debuff. I'm not sure if using arest instead of vrest for the ik8 would work.

Not much else I can suggest unfortunately.

Well, Julian already has moves that launch a character far away.... making both bdy and itr bigger seems to work though, but still doesn't fix the issue of debuff attaching to attacker :'( . Anyway thank you for your suggestions!
Reply
Thanks given by:




Users browsing this thread: 1 Guest(s)