Opened 13 years ago

Closed 13 years ago

#2954 closed defect (invalid)

GOB2: can't take objects

Reported by: (none) Owned by: DrMcCoy
Priority: normal Component: Engine: Gob
Keywords: Cc:
Game: Gobliins 2

Description

ScummVM 0.10.0svn (Dec 20 2006 10:32:56)
Features compiled in: Vorbis FLAC MP3 zLib MPEG2

Neither distracting the old people nor the
nobleman let me take the onjects (sausage, milk).
The game just stucks the actor who wants to take
for one second and then returns to normal, nothing
taken, thaough i can't go on in the game, stuck at
the first screen

Gobliins 2 (CD) English

Amiga OS4
gcc version 4.0.2 (AmigaOS build 20051012)

Ticket imported from: #1619319. Ticket imported from: bugs/2954.

Attachments (6)

gob2-log.zip (16.8 KB) - added by SF/*anonymous 13 years ago.
Gob2.log ~1.6MB
gob2debug.diff (1.6 KB) - added by DrMcCoy 13 years ago.
Patch for some debug output
gob2debug.zip (9.9 KB) - added by SF/*anonymous 13 years ago.
log after the .diff
gob2debug2.zip (35.0 KB) - added by SF/*anonymous 13 years ago.
The rest…
gob2debug2.diff (1.6 KB) - added by DrMcCoy 13 years ago.
New patch for some debug output
gob2debugfinal.zip (46.2 KB) - added by SF/*anonymous 13 years ago.
Final - merged and hopefully with enough info

Download all attachments as: .zip

Change History (23)

comment:1 Changed 13 years ago by DrMcCoy

Hmm, that's bad. Sounds like a problem the code has with your OS, signness, alignment or the like. :/

comment:2 Changed 13 years ago by DrMcCoy

Owner: set to DrMcCoy

comment:3 Changed 13 years ago by DrMcCoy

Could you remove the return in Parse::printExpr() (parse.cpp:166), add a 'warning("PrintText(%s)", _textToPrint);' to Draw_v2::spriteOperation() after the 'case DRAW_PRINTTEXT:' (draw_v2.cpp:716), run it with "-d5 --debugflags=DrawOpcodes,FuncOpcodes" and attach the output here? That could show what went wrong.

Changed 13 years ago by SF/*anonymous

Attachment: gob2-log.zip added

Gob2.log ~1.6MB

comment:4 Changed 13 years ago by (none)

Sure, thanks for looking

I attached it as zip file, the log is huge...
File Added: gob2-log.zip

Changed 13 years ago by DrMcCoy

Attachment: gob2debug.diff added

Patch for some debug output

comment:5 Changed 13 years ago by DrMcCoy

Hmm, I need more debug output... Could you please apply the attached patch, run ScummVM with "-d5
--debugflags=DrawOpcodes,FuncOpcodes", do the steps that lead to the bug and attach the output here?
File Added: gob2debug.diff

Changed 13 years ago by SF/*anonymous

Attachment: gob2debug.zip added

log after the .diff

comment:6 Changed 13 years ago by (none)

Done

There is also a slight pause (halt of all characters
and the mouse pointer) as soon as the NPC's are about
to talk.

Let me know if i can do more, thanks a lot
File Added: gob2debug.zip

comment:7 Changed 13 years ago by DrMcCoy

Erm, there's lots of output missing in the log, are you sure you've redirected all streams into the file?

Changed 13 years ago by SF/*anonymous

Attachment: gob2debug2.zip added

The rest...

comment:8 Changed 13 years ago by (none)

The lines that missing are in the new log.
Unfortunately i can't merge them :-/

If i try to log one to a file the other will
get displayed but not logged and vice versa :-(
File Added: gob2debug2.zip

Changed 13 years ago by DrMcCoy

Attachment: gob2debug2.diff added

New patch for some debug output

comment:9 Changed 13 years ago by DrMcCoy

Unfortunately, I need them merged...
Therefore, could you do /another/ fresh checkout, apply the new attached patch, run ScummVM with "-d5
--debugflags=DrawOpcodes,FuncOpcodes", do the steps that lead to the bug and again attach the output here?
File Added: gob2debug2.diff

Changed 13 years ago by SF/*anonymous

Attachment: gob2debugfinal.zip added

Final - merged and hopefully with enough info

comment:10 Changed 13 years ago by (none)

Thanks for the changes, now i was able to log
everything into one file. Attached...

The only thing i still get into the shell window
is this, but its probably only harmless warnings!?

WARNING: GOB2 Stub! _word_2E8E2, _word_2FC9C, _word_2FC9E, _word_2E51F, _off_2E51B, _off_2E517!
WARNING: GOB2 Stub! _byte_2FC82, _byte_2FC83, _word_2FC80!
WARNING: GOB2 Stub! _byte_2FC9B, _dword_2F2B6!
WARNING: GOB2 Stub! _word_2F9C0, _word_2F9BE, _word_2F9BC, _word_2F9BA, _dword_2F9B6, _dword_2F9B2!
WARNING: Couldn't open drive: Invalid CD-ROM drive index!
WARNING: STUB: Video::initDriver!
WARNING: GOB2 Stub! Inter_v2::o2_initMult(), wide frontSurface, using the extra space as animSurf!
WARNING: SoundKeyCount: 0!
WARNING: GOB2 Stub! Mult_Data.somepointer09, Mult_Data.somepointer10!
WARNING: GOB2 Stub! Inter_v2::o2_initMult(), wide frontSurface, using the extra space as animSurf!
WARNING: SoundKeyCount: 171!
WARNING: GOB2 Stub! Mult_Data.somepointer09, Mult_Data.somepointer10!
WARNING: STUB: Video::freeDriver!
WARNING: cleanup: Allocated sprites left: 1!
File Added: gob2debugfinal.zip

comment:11 Changed 13 years ago by (none)

An example of what happens

The left screen from the beginning, the one with the
chicken...Fingus grabs the chicken and should hold it
by the neck for at least some seconds, now Winkle
ought to be able to grab an egg from ... well,
wherever he puts his hand there (YUCK!) :-)

For me, as soon as i let Winkle grab the egg the
chicken is set back to the ground immediately and
biting leaving me without a chance to grab the egg,
there is no some seconds delay. (seems the script
is intercepted at the point of interacting with an
object when one goblin already interacting ... if
that makes any sense)

comment:12 Changed 13 years ago by (none)

I just found out that the bottle (example from the first
screen) isn't useable/pointable/simply not there when the
"Old Men" starts talking. The text bar beneath doesn't
show any "Bottle" whatever i try.

As soon as the "Old Men" finished, the bottle is useable
again and turns up in the text bar when pointing at it.

Of course one can still send one Goblin to the Bottle and
AFTER that send the second goblin to talk to the people.
Then the bottle will be tried to pick up, but isn't,
strange ???

comment:13 Changed 13 years ago by DrMcCoy

Errrm, wait, you do know that you have to send Winkle to get the nobleman's salami and pick the bottle with Fingus when the old people are laughing, right? Simply talking to the old people and picking the bottle with the other goblin doesn't work, that's not the correct solution.

comment:14 Changed 13 years ago by (none)

Uhhm, ye..no.. :-)

I thought distracting the two by simply talking to them is
enough. :-)

Anyway, something is still wrong, what WOULD happen if you
just talk to them with one goblin and try to pick up the
bottle with the other? Could you check that, please?
For the goblin at the bottle simply refuses to pick it up
and turns to the left and back to face the player (screen).

That shouldn't happen, should it?
I mean, i for one was totally puzzled what to do until you
gave me the spoiler...

Thanks by the way (i'm feeling dumb, now ... again) :-/

comment:15 Changed 13 years ago by DrMcCoy

"I thought distracting the two by simply talking to them is
enough. :-)"

Nope, that not enough.

"For the goblin at the bottle simply refuses to pick it up
and turns to the left and back to face the player (screen)."

That's exactly what's supposed to happen, that's what happens with the original in dosbox as well.

"I mean, i for one was totally puzzled what to do until you
gave me the spoiler..."

Well, it is an adventure game... ;)

"Thanks by the way (i'm feeling dumb, now ... again) :-/"

Don't, we all make mistakes. :)
I for one am glad it's not a real bug, because I really had no clue what was wrong, it even worked with a Debian in qemu-ppc. I was already thinking about buying AmigaOS 4 (if I could find (and afford) it), on the off-chance it would work in qemu-ppc.

So, just to be sure, does the real solution work? Can I close this?

comment:16 Changed 13 years ago by (none)

>So, just to be sure, does the real solution work? Can I close this?

Yes, you can, your hint worked and your explanations
gave me the needed information to savely say it was entirely
my fault... :-)

D'OH!!!

comment:17 Changed 13 years ago by DrMcCoy

Resolution: invalid
Status: newclosed
Note: See TracTickets for help on using tickets.