#12913 closed defect (fixed)
Ultima8 freezes after last dead necromancer and entering another map
Reported by: | jamokoo | Owned by: | mduggan |
---|---|---|---|
Priority: | normal | Component: | Engine: Ultima |
Version: | Keywords: | ||
Cc: | Game: | Ultima VIII: Pagan |
Description
version:
scummvm windows-x86-64-master-53b9a14c
log text:
[2021-09-08 02:32:53] WARNING: Teleport!!!!!!!!!
[2021-09-08 02:32:53] WARNING: Unloading map 62!
[2021-09-08 02:32:53] WARNING: Unloading Fixed items from map 62!
[2021-09-08 02:32:53] WARNING: Warning: value popped into a flag it doesn't fit in (196 3 2)!
[2021-09-08 02:32:53] WARNING: Warning: value popped into a flag it doesn't fit in (103 3 1)!
[2021-09-08 02:32:53] WARNING: Warning: value popped into a flag it doesn't fit in (112 3 1)!
[2021-09-08 02:32:53] WARNING: Warning: value popped into a flag it doesn't fit in (1dd 4 1)!
[2021-09-08 02:32:55] WARNING: Seem to be stuck in process loop - killing current process!
[2021-09-08 02:32:55] WARNING: Seem to be stuck in process loop - killing current process!
[2021-09-08 02:32:55] WARNING: Seem to be stuck in process loop - killing current process!
[2021-09-08 02:32:55] WARNING: Seem to be stuck in process loop - killing current process!
[2021-09-08 02:32:55] WARNING: Seem to be stuck in process loop - killing current process!
[2021-09-08 02:32:55] WARNING: Seem to be stuck in process loop - killing current process!
[2021-09-08 02:32:55] WARNING: Seem to be stuck in process loop - killing current process!
[2021-09-08 02:32:55] WARNING: Seem to be stuck in process loop - killing current process!
[2021-09-08 02:32:55] WARNING: Seem to be stuck in process loop - killing current process!
[2021-09-08 02:32:55] WARNING: Seem to be stuck in process loop - killing current process!
[2021-09-08 02:32:55] WARNING: Seem to be stuck in process loop - killing current process!
[2021-09-08 02:32:55] WARNING: Seem to be stuck in process loop - killing current process!
[2021-09-08 02:32:55] WARNING: Seem to be stuck in process loop - killing current process!
[2021-09-08 02:32:55] WARNING: Seem to be stuck in process loop - killing current process!
[2021-09-08 02:32:55] WARNING: Seem to be stuck in process loop - killing current process!
[2021-09-08 02:32:55] WARNING: Process queue is empty?! Aborting.!
[2021-09-08 02:32:55] WARNING: Process queue is empty?! Aborting.!
[2021-09-08 02:32:55] WARNING: Process queue is empty?! Aborting.!
[2021-09-08 02:32:55] WARNING: Process queue is empty?! Aborting.!
[2021-09-08 02:32:55] WARNING: Process queue is empty?! Aborting.!
[2021-09-08 02:32:55] WARNING: Process queue is empty?! Aborting.!
[2021-09-08 02:32:55] WARNING: Process queue is empty?! Aborting.!
[2021-09-08 02:32:55] WARNING: Process queue is empty?! Aborting.!
[2021-09-08 02:32:55] WARNING: Process queue is empty?! Aborting.!
[2021-09-08 02:32:55] WARNING: Process queue is empty?! Aborting.!
Attachments (1)
Change History (9)
by , 3 years ago
Attachment: | ultima8.001 added |
---|
comment:1 by , 3 years ago
comment:2 by , 3 years ago
Game: | → Ultima VIII: Pagan |
---|---|
Owner: | set to |
Resolution: | → fixed |
Status: | new → closed |
Fixed in 8552d9515d51ab0fe31807671558adb107cee5c7. I put the threshold much higher so all U8 map transitions should be fine, and Crusader won't lock up forever (just a fairly annoying amount of time..)
comment:4 by , 3 years ago
I haven't tested it yet but it's nice to see fast reaction :). There is lots of improvements that could be made to the game (like bigger backpack and bags area so it would be easier to drag items there, auto merge same items, store open bag etc. locations and keep them open if opened and so on.) I'm not sure what is the priority to improve things or is the plan just to fix bugs.
I am a programmer in my work and i am interested to learn game coding. Perhaps i could start to learn and help somehow with this game engine. Is there any help needed?
comment:5 by , 3 years ago
If you want to propose improvements I'm always open to taking a look at PRs, sure!
I had thought about how I could make the backpack bigger - it's a common complaint about U8. Your other ideas sound like nice quality-of-life improvements too. If you want to take a look at the code it's at https://github.com/scummvm/scummvm/tree/master/engines/ultima/ultima8
I can help out with an overview of it, ScummVM Discord is probably the easiest for that.
comment:6 by , 3 years ago
As a followup here I tweaked the fix again in 62c4cea44b19faf66efe1ffc2b2858435b9f5f91 as the increased value broke Crusader too much.
comment:7 by , 3 years ago
just wondering why you cant use if(CRUSADER) use this value else use another value :)
Thanks for the report and attaching the savegame, that should make it easy to repro.
I'll take a look at this soon as it's almost certainly something broken by my process-loop workaround .
I may have to bump the threshold for detection really high here and settle for a really janky experience when a real process loop happens in Crusader (ie, lock up the game for 2-3 seconds), but it will still be better than stopping forever (as it did with no workaround) or breaking something else (with too low a workaround).