#6054 closed defect (fixed)
HUGO: Whodunit? - Priority glitch with Parrot
| Reported by: | raziel- | Owned by: | sluicebox |
|---|---|---|---|
| Priority: | normal | Component: | Engine: Hugo |
| Version: | Keywords: | draw order | |
| Cc: | Game: | Hugo |
Description
ScummVM 1.5.0git (Jun 18 2012 16:51:00) Features compiled in: Vorbis FLAC MP3 RGB zLib Theora AAC FreeType2
In the scene pretty much at the beginning when Penelope enters the office with the dumbwaiter (behind the bookcase door), there is a parrot sitting in it's cage.
When Penelope enters the room the scene switches to the office showing the hidden door open from bottom to top, Penelope pops in the room and the door closes from top to bottom.
The parrot is partly cut out from the opening door and will be drawn right again when Penelope's sprite is also drawn inside the room. This seems to be a priority issue affecting the whole space of the opening door erasing all sprites as long as the door open animation is running.
Penelope's and the parrot's sprite are next to each other so it should be possible to erase only the part where penelope is standing and leave out the parrot?
Savegame and screenshot attached
Hugo 2: Whodunit? (DOS/English)
AmigaOS4 - PPC - SDL - BE gcc (GCC) 4.2.4 (adtools build 20090118)
Ticket imported from: #3536220. Ticket imported from: bugs/6054.
Attachments (3)
Change History (22)
by , 14 years ago
| Attachment: | hugo2-01.SAV added |
|---|
by , 14 years ago
| Attachment: | SGrab_Shot_000.png added |
|---|
comment:1 by , 14 years ago
Err, i meant to write "update only the part where Penelope is standing" not "erase"
comment:2 by , 14 years ago
Thanks for the bug report. As your previous bug report indicated: https://sourceforge.net/tracker/index.php?func=detail&aid=3292383&group_id=37116&atid=418820
Hugo2 has a number of priority (z-ordering) glitches, so please don't report further glitches, but just add them to this current bug, as they may have the same cause.
If you have time, could you play through Hugo2 under DOSBox with the original interpreter and see if these two glitches occur in the original? Also, attach original interpreter savegames at the relevant point to help comparison with ScummVM. Thanks.
comment:3 by , 14 years ago
| Owner: | set to |
|---|
comment:4 by , 14 years ago
This bug is nice to get fixed before the release. Raising priority for keeping the track.
comment:5 by , 14 years ago
| Priority: | normal → high |
|---|
comment:7 by , 14 years ago
Sorry, I can't reproduce. Could someone confirm if it's a BE only problem?
comment:8 by , 6 years ago
| Keywords: | draw order added |
|---|
comment:9 by , 6 years ago
| Summary: | HUGO: Priority glitch in Whodunit? (Parrot) → HUGO: Whodunit? - Priority glitch with Parrot |
|---|
comment:10 by , 6 years ago
| Priority: | high → normal |
|---|
comment:11 by , 3 years ago
@raziel does this still happen on Amiga? I can't reproduce on other systems
comment:12 by , 3 years ago
@tag2015
Yes, it does, same savestate, same command and screenshot also still applies
comment:14 by , 3 years ago
@raziel-: No need to, I *can* reproduce the bug on a regular little-endian system (macOS x64 12.6.3).
The glitch only appears when the door is opening though, that's maybe what's been missed in tag2015's test above.
comment:15 by , 3 years ago
Still can't reproduce. Here's a quick clip I made just now on Win10 using the OpenGL backend
https://www.youtube.com/watch?v=RT9QgQ0yz3Q
Did you try starting from the beginning instead of reusing an old save?
comment:16 by , 3 years ago
I added the save state just for convenience.
I always start the game fresh since the glitch happens right at the beginning
comment:18 by , 3 months ago
| Owner: | changed from to |
|---|---|
| Resolution: | → fixed |
| Status: | new → closed |
Fixed in 6e434093a0160cde8efdda7cdb4c531374e700e8
This is a bug in the original code that produced undefined quicksort results. It happened to work in Microsoft's qsort, so it still happened to work in our Windows builds because they all use msvcrt, but on other platforms different qsort implementations produced different undefined results.
The parrot is the only thing affected by this particular bug. The other priority bugs that have been reported also occur in at least one version of the original.
It wasn't endian differences this time, it was CRT!

get yellow book