Opened 5 months ago

Closed 5 months ago

#14792 closed defect (fixed)

Eye of the Beholder spell animations lock game for ~20-30 seconds

Reported by: davidsgrogan Owned by: athrxx
Priority: normal Component: Engine: Kyra
Version: Keywords:
Cc: davidsgrogan Game: Eye of the Beholder 1

Description

On both stable 2.8.0[1] and today's daily build[2], some spell animations take 30 seconds to slowly complete, during which time the game is frozen and I have the spinning beach ball cursor when scummvm window is focused. I have a screenshot of Fireball about 10 seconds in.

Repro steps: cast Fireball or Ice Storm into a wall. If I'm able to attach my saved game file, right click on the spell book near halfway down the right side. Select 3, then Fireball.

I tried with both SDL and OpenGL graphics settings. Same result in both.

Language of game is English.

Version of game is DOS.

My OS is Mac M1.

[1] ScummVM 2.8.0 (Dec 16 2023 21:16:18)
Using SDL backend with SDL 2.28.5
Features compiled in: Vorbis FLAC MP3 TiMidity RGB zLib MPEG2 FluidSynth Theora AAC A/52 FreeType2 JPEG PNG taskbar TTS cloud (servers) ENet SDL2 TinyGL OpenGL (with shaders) OpenGL desktop only

[2] ScummVM 2.9.0git1332-g8722701a945 (Jan 1 2024 07:48:27)
Using SDL backend with SDL 2.28.4
Features compiled in: TAINTED Vorbis FLAC MP3 TiMidity RGB zLib MPEG2 FluidSynth MikMod Theora VPX AAC A/52 FreeType2 FriBiDi JPEG PNG GIF taskbar TTS cloud (servers, local) ENet SDL2 TinyGL OpenGL (with shaders) OpenGL desktop only RetroWave

Attachments (3)

Screenshot 2024-01-01 at 1.42.28 PM.png (110.8 KB ) - added by davidsgrogan 5 months ago.
EOBDATA.SAV (32.3 KB ) - added by davidsgrogan 5 months ago.
See yellow, red, orange squares.
eob.001 (22.4 KB ) - added by davidsgrogan 5 months ago.

Download all attachments as: .zip

Change History (9)

by davidsgrogan, 5 months ago

by davidsgrogan, 5 months ago

Attachment: EOBDATA.SAV added

See yellow, red, orange squares.

comment:1 by davidsgrogan, 5 months ago

Similar problem with spells in Eye of the Beholder 2.

comment:2 by athrxx, 5 months ago

Thanks for the report. The savegame that you attached here is from the original game, not from ScummVM. The ScummVM one has a naming pattern like this: <target id>.<3-digit-index>, e. g. 'eob.000', 'eob.001', etc. (for EOBII: 'eob2.000', 'eob2.001', etc). But if I understand correctly it always happens when you cast a fireball or an ice storm against a wall? Or does it depend on the wall distance or anything else?
I can't reproduce anything like this on my PC, so it could be platform specific. I'll try to find out whats happening here...

by davidsgrogan, 5 months ago

Attachment: eob.001 added

comment:3 by davidsgrogan, 5 months ago

It always happens when the fireball or ice storm explodes. Making them explode against a wall is just an easy way to cause the explosion, so good for reproduction :)

Distance to wall doesn't make an appreciable difference in the slowness.

https://youtu.be/j7FdjUPJvRI is a demo video.

Attaching a ScummVM saved game this time.

comment:4 by athrxx, 5 months ago

Thanks. I can still only guess what the source of this issue is on MacOS. Could be our own backend or SDL or whatever. I have committed a fix which hopefully addresses the problem for you. It should be part of the autogenerated builds by tomorrow. Please check if the performance is okay, now.

comment:5 by davidsgrogan, 5 months ago

Wow, your speculative fix worked. Thanks!

Last edited 5 months ago by davidsgrogan (previous) (diff)

comment:6 by athrxx, 5 months ago

Owner: set to athrxx
Resolution: fixed
Status: newclosed

Nice. Lucky on the first try :) Thanks for your feedback!

Note: See TracTickets for help on using tickets.