• All, I am currently in the process of migrating domain registrations. During this time there may be some intermittent outages or slowdowns. Please contact staff if you have any questions.

Offset issue, please help, thank you

Bruce

Active member
Hello everyone,

First of all, I am sorry if this issue has already been asked.
I seem to have issues with the offset being persisted when performing a skill after an air combo in the air.
Everything works fine except the idle animation appears at the X offset from the first frame instead of the last offset of the freespecial23 below.
I don't know how to explain it, please look at the notes at frame 16 for details. Basically, the idle animation does not appear where the last X offset ends.

I captured these frames from another game, and most of the movements are all set without having to set the offset for each frame.
Also, if I set the offset for each frame, the animation won't look right or harder to set up the good offsets for them.

Does anyone know a way to have the idle animation appear at the the X offset from frame 16 which is 600 __ of the anim freespecial23?

Thank you very much


Code:
anim    freespecial23
    jumpframe 10 -4 5
    landframe 16
    quakeframe 16 6 15 # {frame} {loops} {intensity}
    hitfx     data/sounds/beat.wav
    hitflash    Flash
    fastattack 1
    attackone     0
    @cmd    changeentityproperty getlocalvar("self") "aiflag" "drop" 0
    @cmd    changeentityproperty getlocalvar("self") "aiflag" "falling" 0
    delay     4
    @cmd    dasher 2 4 0  # X Y Z
    bbox     0 0 0 0
    offset    838 506
    frame    data/chars/Dante/SkyDance01.png
    frame    data/chars/Dante/SkyDance02.png
    frame    data/chars/Dante/SkyDance03.png
    offset     792 548
    frame    data/chars/Dante/SkyDance04.png
    offset     770 632
    frame    data/chars/Dante/SkyDance05.png
    offset     755 619
    frame    data/chars/Dante/SkyDance06.png
    frame    data/chars/Dante/SkyDance07.png
    offset     773 619
    frame    data/chars/Dante/SkyDance08.png
    offset     700 604
    frame    data/chars/Dante/SkyDance09.png
    attack    0 0 0 0
    offset     650 608
    frame    data/chars/Dante/SkyDance10.png
    attack    580 255 346 342  5  100 1 0 10 50
    dropv     3 4
    offset     719 563
    frame    data/chars/Dante/SkyDance11.png
    attack    0 0 0 0
    offset     700 692
    frame    data/chars/Dante/SkyDance12.png
    attack    696 402 322 226  5  100 1 0 10 50
    dropv     3 4
    offset     660 675
    frame    data/chars/Dante/SkyDance13.png
    attack    0 0 0 0
    offset     730 780
    frame    data/chars/Dante/SkyDance14.png
    offset     643 924
    frame    data/chars/Dante/SkyDance15.png
    attack    670 659 312 241  10  100 1 0 10 50
    dropv     -5 4
    delay    999

    # It does not matter what offset I have here,
    # frame 16 to 37 will still work with this offset, but the idle animation appears
    # at the X offset from frame 1 which is 838 __ after anim freespecial23 is finished
    offset     600 1020
    frame    data/chars/Dante/SkyDance16.png

    delay    5
    frame    data/chars/Dante/SkyDance17.png
    ......
    ......
    frame    data/chars/Dante/SkyDance36.png
    frame    data/chars/Dante/SkyDance37.png
 
Last edited:
If you're using dasher function to move Dante, you should be using that function too to replace jumpframe IMO.

Back to topic, Dante is clearly moving forward based on dasher and jumpframe parameters so at end of this FREESPECIAL, he'll be pixels forward his starting position. So is that a problem or he's supposed to land at same spot when he performs this FREESPECIAL?
 
If you're using dasher function to move Dante, you should be using that function too to replace jumpframe IMO.

Back to topic, Dante is clearly moving forward based on dasher and jumpframe parameters so at end of this FREESPECIAL, he'll be pixels forward his starting position. So is that a problem or he's supposed to land at same spot when he performs this FREESPECIAL?
Thank you for the tip on dasher and jumpframe.
He does land at the new X offset that is after he moves forward with the dasher and jumpframe.
This is what I want.
However after the FREESPECIAL is completed, his idle animation appears close to the starting X offset instead of this new X offset.
I want his idle animation appears at the new X offset, not close to the starting X offset.

FYI, most of the offsets of the frames are not actually at the sprites (character pictures).
For example, the offset is supposed to be at 890 619, I set it as 773 619.

Thank you
 
Last edited:
There is probably a way to correct it but it's just good practice to axis align all your sprites and stuff like this is why you have to do it. I understand thou I'm having trouble with some sprites myself that are similar, the walking frames have the movement already there but they are a bit tricky to re-align.

- You can also use openbor stats or chrono modding tools and change the offset per frame until it looks correct then copy how you have it and edit the sprites properly.

- You can import you sprites into fighter factory (for mugen) and use it to align them properly., it's the best program for it
 
There is probably a way to correct it but it's just good practice to axis align all your sprites and stuff like this is why you have to do it. I understand thou I'm having trouble with some sprites myself that are similar, the walking frames have the movement already there but they are a bit tricky to re-align.

- You can also use openbor stats or chrono modding tools and change the offset per frame until it looks correct then copy how you have it and edit the sprites properly.

- You can import you sprites into fighter factory (for mugen) and use it to align them properly., it's the best program for it
That is my problem. I have thousands of sprites that I captured from UMVC3, and these sprites are complicated lol.
There are different versions of Dante for Mugen, but they don't look for me,.
This is why I decided to capture the Dante sprites from UMVC3 because Dante is always one of my favorite chars.
so I would rather picking the fastest way to make them work.
Meaning I don't have a lot of time to mess around with Fighter Factory with these sprites.
I've tried to use the chrono modding tools to axis align the sprites, but the animation won't look as good.
I am just wondering there is a simple way to fix this.
If isn't, I will end up having to axis align the sprites.

Thank you
 
However after the FREESPECIAL is completed, his idle animation appears close to the starting X offset instead of this new X offset.
I want his idle animation appears at the new X offset, not close to the starting X offset.

Mmmm... can you show some screenshots of this? at least before FREESPECIAL is performed and after Dante lands.
 
Mmmm... can you show some screenshots of this? at least before FREESPECIAL is performed and after Dante lands.
Here is the link:
Dante's Skydance
There will be another set of sprites like this with ice FX. It will look much nicer...

Notice: I have not had a chance to do level design (still OpenBor template). For now, I am just playing around with Dante sprites.

Thank you so much
 
You've stopped recording just after Dante finishes his move so I couldn't see what happens next.
For now, I suggest fixing his sprites by aligning them properly to solve this issue.
 
I agree with Bloodbane on the proper alignment of his sprites. You can use floater to remain afloat in how many centiseconds you want. Dhalsim's a good example for his head drill attack to float while moving forward and downward all together before landing. I do use leaper for moving forward, but the negative number is an exception for moving downward on air in/for Dhalsim's part.

C:
void floater( int Time )
{// Floats in Time centiseconds
    void self = getlocalvar("self");
    int eTime = openborvariant("elapsed_time");

    changeentityproperty(self, "tosstime", eTime + Time*2);
}

Example:
Code:
anim    attack5 #Head drill
    offset    338 291
    @cmd floater 1200
    @cmd    leaper 2 -0.1 0 #leaper x y z
    loop    1 0 4
    landframe    4
    delay 16
    frame    data/chars/dhalsim/cvs2_dhalsim_546.png # 0
    @cmd    leaper 2 -0.1 0
    frame    data/chars/dhalsim/cvs2_dhalsim_547.png # 1
    @cmd    leaper 2 -0.1 0
    frame    data/chars/dhalsim/cvs2_dhalsim_548.png # 2
    @cmd    leaper 2 -0.1 0
    frame    data/chars/dhalsim/cvs2_dhalsim_549.png # 3
    @cmd attack0 "ANI_JUMPLAND"
    frame    data/chars/dhalsim/cvs2_dhalsim_204.png # 4

Time your float for Dante and you can make him move forward in whatever pace you like before he starts to land.
 
You've stopped recording just after Dante finishes his move so I couldn't see what happens next.
For now, I suggest fixing his sprites by aligning them properly to solve this issue.
in the video, you can see his idle appears at the different spot, not where he lands. Look like I will have to align the sprites to their proper offsets, but it will take more time. I was looking for an easy out. Thank you anyway
 
I agree with Bloodbane on the proper alignment of his sprites. You can use floater to remain afloat in how many centiseconds you want. Dhalsim's a good example for his head drill attack to float while moving forward and downward all together before landing. I do use leaper for moving forward, but the negative number is an exception for moving downward on air in/for Dhalsim's part.

C:
void floater( int Time )
{// Floats in Time centiseconds
    void self = getlocalvar("self");
    int eTime = openborvariant("elapsed_time");

    changeentityproperty(self, "tosstime", eTime + Time*2);
}

Example:
Code:
anim    attack5 #Head drill
    offset    338 291
    @cmd floater 1200
    @cmd    leaper 2 -0.1 0 #leaper x y z
    loop    1 0 4
    landframe    4
    delay 16
    frame    data/chars/dhalsim/cvs2_dhalsim_546.png # 0
    @cmd    leaper 2 -0.1 0
    frame    data/chars/dhalsim/cvs2_dhalsim_547.png # 1
    @cmd    leaper 2 -0.1 0
    frame    data/chars/dhalsim/cvs2_dhalsim_548.png # 2
    @cmd    leaper 2 -0.1 0
    frame    data/chars/dhalsim/cvs2_dhalsim_549.png # 3
    @cmd attack0 "ANI_JUMPLAND"
    frame    data/chars/dhalsim/cvs2_dhalsim_204.png # 4

Time your float for Dante and you can make him move forward in whatever pace you like before he starts to land.
I've been using the floater and dasher scripts for other air skills. Look like I will have to use floater and dasher scripts for this one too.
Thank you so much
 
@Bruce I been meaning to ask if you came right with the sprite alignment for Dante?
no, the sprites weren't set at the right offsets. This is why it was causing the problem. I just managed to set up the right offsets for the sprites, so now everything is working fine. I guess I need to spend more time setting up the offsets properly for the rest of the sprites.
 
To save on time copy the idle anim sprite and offset into your other anim that way they always aligned and remove them afterwards.
I didn't fix Dan yet look at how Ryu land in the last combo from the aerial moves in the video below.
 
To save on time copy the idle anim sprite and offset into your other anim that way they always aligned and remove them afterwards.
I didn't fix Dan yet look at how Ryu land in the last combo from the aerial moves in the video below.
Very nice combos!
I do not think it would make any difference whether copying the idle sprites and offsets to other animations or not. Perhaps, I have tried it before, but it did not work.
Like the others said it is good practice to align the offsets correctly.

Thank you for your input by the way.
 
For now, I am just testing the skills and combos, that's why there is no EX mode yet.
I'm in a similar situation.
Dante's Skydance
This Combo is supposed to be EX combo. It needs EX points to execute it.
Are you done with the move or are you still going to tweak the offset?
There are 2 instances where Dante is out of place.
When the attack connects and just before he hit the ground.
What I suggested don't just apply to idle animation.
I'll show you a similar move with Ryu.
 
Back
Top Bottom