Opened 8 months ago

Closed 5 months ago

#12093 closed defect (fixed)

Aerial Servant Spell casting animation not fully enabled

Reported by: bliznik Owned by: mduggan
Priority: low Component: Engine: Ultima
Version: Keywords: cast spells animation Ultima 8
Cc: Game: Ultima VIII: Pagan

Description

This is the latest 1/28/2021 build.

In Ultima 8: Pagan, many spells can be cast. I noticed this first when casting the Aerial Servant spell, when you cast it, the Avatar starts the cast animation, but then will switch back to standing straight, and then will continue casting the animation, and then will stand straight again.

Usually, in the game, the Avatar will start the casting animation, will end with one hand out straight, then the Aerial servant will appear and move to the target, and then the Avatar will continue the casting animation to bring the fists to his waist, then the Aerial servant will travel to the second target, and then the Avatar will finish the casting animation.

This stuttering with the casting animation seems to occur with other spells as well, but none so obvious as the Aerial Servant spell.

Not a fatal error...really minor, so this can be a later fix.

Attachments (2)

Screenshot_1.jpg (99.1 KB ) - added by bliznik 7 months ago.
Screenshot_2.jpg (263.1 KB ) - added by bliznik 7 months ago.
Screenshot_1 is what it looks like in ScummVM, whereas Screenshot_2 is what it looks like in DOSBox

Download all attachments as: .zip

Change History (6)

comment:1 by bliznik, 8 months ago

Component: --Unset--Engine: Ultima

by bliznik, 7 months ago

Attachment: Screenshot_1.jpg added

by bliznik, 7 months ago

Attachment: Screenshot_2.jpg added

Screenshot_1 is what it looks like in ScummVM, whereas Screenshot_2 is what it looks like in DOSBox

comment:2 by bliznik, 7 months ago

I've added screenshots to show how the animation looks in the current version of ScummVM (well, all of the versions of ScummVM I've used actually) vs. what it looks like when you cast the spell while running the program using DOSBox.

comment:3 by mduggan, 5 months ago

I have a suspicion this is caused by timed engine events not executing in exactly the right number of frames.

I made this change:
https://github.com/scummvm/scummvm/commit/e3ee65de991697d79b1f5642343ee65bd4588506

which fixes them by 1 tick, but I think there is another 1 tick error still lurking. If the next animation gets triggered at exactly the right frame, this problem should go away, I think.

comment:4 by mduggan, 5 months ago

Owner: set to mduggan
Resolution: fixed
Status: newclosed

More debugging showed this was *partially* caused by the bug above, but also by another bug. Fully fixed in 727d0745544ab6dca65d2a641b96841eb12426dc.

Note: See TracTickets for help on using tickets.