Daimao Cancel System

Daimao Cancel System 1.0

No permission to download
Believe me, you will regret this quickly :)
Take your time and read the manual. You will learn a lot.  Plus, some people doesn't like to help users who do not strive to learn.
 
You need to put the aforementioned block of code in the header (that is before the first animation) of the character txt file.

Though I don't think it will solve the crash. Are you sure you have the last version of my scripts ? Seems like it's a bug from last year, when the engine was updated. EDIT : No nevermind, it's not the same bug after all  ;)
 
Piccolo said:
You need to put the aforementioned block of code in the header (that is before the first animation) of the character txt file.

Though I don't think it will solve the crash. Are you sure you have the last version of my scripts ? Seems like it's a bug from last year, when the engine was updated. EDIT : No nevermind, it's not the same bug after all  ;)

OMG! i had an old version, i updated your script and now its working.

Dud, im so happy! thanks for your support!
 
Ok, I see your character animationscript is "data/scripts/script.c".

Did you add this line :

Code:
#import "data/scripts/dcancel.c"

at the top of this file ?

Or you could try with an include

Code:
#include "data/scripts/dcancel.c"


From the log, I don't think it's an engine version problem.
Thank you very much for sharing your script!
Can you help me understanding about
animationscript.c?
I didn't have this animationscript.c, so I had to create it.
After that I added this line

#import "data/scripts/dcancel.c"

to this animationscript.c

However, there were errors.
Did I do it correctly?
Do I need to add This line
animationscript data/scripts/animationscrip.c
to the entiti header?

Thank you


Edited: nevermind, it got it working after reading all the posts in this forum
 
Last edited:
Has anyone noticed that Daimao Cancel System is causing the glitch to the mp usage freespecials?
energycost X
mponly 1
Somehow the anim freespecial never drains my mp bar whenever I use the Daimao Cancel System to cancel into another anim freespecial
 
Last edited:
Has anyone noticed that Daimao Cancel System is causing the glitch to the mp usage freespecials?
energycost X
mponly 1
Somehow the anim freespecial never drains my mp bar whenever I use the Daimao Cancel System to cancel into another anim freespecial
I don't really remember but it is probable that the code that handle energy/mp cost commands is handled by the engine freespecial detection system. That system is never involved in the Daimao Cancel System.

Anyway, you should use a script to handle energy/mp cost with this system.
 
This may not be possible:
Is it possible that I can switch skill to the certain frame in another skill?
For example,
Code:
anim    freespecial1
    @script
        if(frame == 0){
            void data = createDaimaoCancel();
            set(data, "switchFrame", 3);             
            addCancel(data, "F a1", "ANI_freespecial2");
        }
    @end_script
    ....
    ....

anim    freespecial2
    ...
    ...
    ..
    frame    data/chars/frame01.gif
    frame    data/chars/frame02.gif
    frame    data/chars/frame03.gif
    frame    data/chars/frame04.gif
    .........
    .........
    frame    data/chars/frame10.gif
    frame    data/chars/frame11.gif
    frame    data/chars/frame12.gif
    .........

I want to switch to frame 10 in freespecial2.
I hope it makes sense,

thank you
 
This may not be possible:
Is it possible that I can switch skill to the certain frame in another skill?
For example,
Code:
anim    freespecial1
    @script
        if(frame == 0){
            void data = createDaimaoCancel();
            set(data, "switchFrame", 3);            
            addCancel(data, "F a1", "ANI_freespecial2");
        }
    @end_script
    ....
    ....

anim    freespecial2
    ...
    ...
    ..
    frame    data/chars/frame01.gif
    frame    data/chars/frame02.gif
    frame    data/chars/frame03.gif
    frame    data/chars/frame04.gif
    .........
    .........
    frame    data/chars/frame10.gif
    frame    data/chars/frame11.gif
    frame    data/chars/frame12.gif
    .........

I want to switch to frame 10 in freespecial2.
I hope it makes sense,

thank you
Yes the system allows this

Code:
anim    freespecial1
    @script
        if(frame == 0){
            void data = createDaimaoCancel();
            set(data, "switchFrame", 3);            
            addCancel(data, "F a1", "ANI_freespecial2");
            set(data, "F a1_startFrame", 10);
        }
    @end_script
    ....
    ....

Be aware that frame 10 means the eleventh frame, because frame count start at 0. So if you want the tenth frame, use 9 instead.

By default when cancelling to a new animation, it will start the new animation at frame 0.
But if you set the key "{command}_startFrame", it will start at the corresponding value. {command} being the key combination to cancel to new animation. So in your example {command} is "F a1"
 
Yes the system allows this

Code:
anim    freespecial1
    @script
        if(frame == 0){
            void data = createDaimaoCancel();
            set(data, "switchFrame", 3);           
            addCancel(data, "F a1", "ANI_freespecial2");
            set(data, "F a1_startFrame", 10);
        }
    @end_script
    ....
    ....

Be aware that frame 10 means the eleventh frame, because frame count start at 0. So if you want the tenth frame, use 9 instead.

By default when cancelling to a new animation, it will start the new animation at frame 0.
But if you set the key "{command}_startFrame", it will start at the corresponding value. {command} being the key combination to cancel to new animation. So in your example {command} is "F a1"
whoa, awesome! Thank you very much
 
Hey buddy, when you have time, can you please look into this problem - shut down with no error log in build 4.0?

This code in the char header was causing the shut down problem.
Code:
Code:
@script 
    if(frame > 0) daimaoCancel();
@end_script
After removed it, my chain combos that have to do with DaimaoCancel do not work anymore.

Thank you
 
Hey buddy, when you have time, can you please look into this problem - shut down with no error log in build 4.0?

This code in the char header was causing the shut down problem.
Code:
Code:
@script
    if(frame > 0) daimaoCancel();
@end_script
After removed it, my chain combos that have to do with DaimaoCancel do not work anymore.

Thank you

Hey Bruce, I'll look into it when I have more time. Maybe the way to define inline animation script has changed with OpenBOR 4.0

Are you sure there's also an animationscript that import daimao cancel functions ?
 
Hey Bruce, I'll look into it when I have more time. Maybe the way to define inline animation script has changed with OpenBOR 4.0

Are you sure there's also an animationscript that import daimao cancel functions ?
I have this in my MainAnim script
Code:
#include "data/scripts/dcancel.c"
It was working fine with
Code:
@script
    if(frame > 0) daimaoCancel();
@end_script
in the char header in the previous builds before 4.0
When I had this code in 4.0, it kept on crashing down without error log.

Thank you so much
 
Hi @DCurrent, pinging you for this, has this changed in OpenBOR 4.0 ?

And by this I mean the inline @script @end_script in char header. Previously it acted as a meta-inline animation script. It would run on all animations.

When this is set the entity doesn't load and the engine crashes (in 4.0 I mean).
 
I figured that I just use this code in the animation inline and it is working fine
Code:
daimaoCancel();
I think it is better this way than putting in the char header anyway

Updated:
It is actually worse because it does not work half of the time
 
Last edited:
Hi @DCurrent, pinging you for this, has this changed in OpenBOR 4.0 ?

And by this I mean the inline @script @end_script in char header. Previously it acted as a meta-inline animation script. It would run on all animations.

When this is set the entity doesn't load and the engine crashes (in 4.0 I mean).

Shouldn't have, no.

DC
 
Hi @DCurrent, pinging you for this, has this changed in OpenBOR 4.0 ?

And by this I mean the inline @script @end_script in char header. Previously it acted as a meta-inline animation script. It would run on all animations.

When this is set the entity doesn't load and the engine crashes (in 4.0 I mean).
I did a quick test in the v4 using an empty BOR mod, but it didn't crash for me.
I don't know if I'm using it correctly, but I recorded the test.

 
I did a quick test in the v4 using an empty BOR mod, but it didn't crash for me.
I don't know if I'm using it correctly, but I recorded the test.

I believe you had it in animation header which will work half of the time.
It crashed on me when I put it in the char header which was my problem.

Try to put this code in the char header:
Code:
@script
    if(frame > 0) daimaoCancel();
@end_script

and see
 
It crashed on me when I put it in the char header which was my problem.

Try to put this code in the char header:
@Bruce But why are you putting inline animation scripts in the character header? According to the manual, it must be placed inside an animation.

1733801809605.png
 
@Bruce But why are you putting inline animation scripts in the character header? According to the manual, it must be placed inside an animation.

View attachment 9817
To be honest, I don't know. I just followed the instructions from this forum to setup Daimaocancel system 1-2 years ago, and it always worked in previous builds before 4.0.
Since then I didn't bother to mess around with it.
I removed
Code:
@script
    if(frame > 0) daimaoCancel();
@end_script
completely and adjusted set(data, "switchFrame", X); to lower number
it seems to work. I need to play around with more.

Build 4.0 probably doesn't need this code at all


Updated:
After adjusting the delays and set(data, "switchFrame", X); to lower number,
it is working fine in Build 4.0 without the code below
Code:
@script
    if(frame > 0) daimaoCancel();
@end_script
 
Last edited:
@Bruce But why are you putting inline animation scripts in the character header? According to the manual, it must be placed inside an animation.

View attachment 9817
As I mentioned to DC : "the inline @script @end_script in char header. Previously it acted as a meta-inline animation script. It would run on all animations."

So basically in OpenBOR 3.0 if you put a @script @end_script in the char header (not in an animation), it runs on all animations, which can be very useful for some stuff (like the cancel system here). It lets you avoid creating a separate specific script file for minor character stuff that you have on a lot of characters.
 
Back
Top Bottom