Opened 20 years ago

Closed 18 years ago

Last modified 18 years ago

#1993 closed defect (fixed)

BASS CD: text shows up and disappear too quickly

Reported by: SF/ketchup_addict Owned by: eriktorbjorn
Priority: normal Component: Engine: Sky
Version: Keywords:
Cc: Game: Beneath a Steel Sky

Description

Tested on version 0.0368 of Beneath a steel sky (CD version) with ScummVM 0.7.1 and ScummVM 0.8.0CVS 10April, both Win32 builds.

When left clicking on an object in the inventory, the text is shown too quickly (it disappears nearly as soon as it appeared). You have to maintain right-click pressed to be able to read the whole text.

This happens with default language (English US) enabled as well as any other language, with speech enabled or disabled.

Ticket imported from: #1181865. Ticket imported from: bugs/1993.

Change History (14)

comment:1 by SF/clemty, 20 years ago

I know this might sound stupid, but could it be that the game speed is turned all the way up? (vertical slider in the options menu or maybe that ScummVM keyboard shortcut)

clem

comment:2 by SF/ketchup_addict, 20 years ago

No, I've tried with the slider set to default, then to maximum speed, and then to slowest speed... to no avail.

Another thing I've noticed that could be related is that most of the times, right clicking on a character to talk to him won't make the dialog box appear IF the speed slider is set to maximum (and yes, I do click on the character, even if he's moving fast :P ).

comment:3 by eriktorbjorn, 20 years ago

I thought that was how it was supposed to work. I would guess that it's the fnLookAt() function that is called when examining an inventory object, and that appears to simply create a text sprite, draw it and then wait for the user to release the mouse button, at which point the sprite is presumably removed.

But I can't verify that this was how the original game engine behaved.

comment:4 by SF/ketchup_addict, 20 years ago

I can only verify that the original game engine doesn't behave like this for the floppy version.

Can someone confirm this is the case for the CD version as well (I only own the freeware CD version and the original floppy one) ?

comment:5 by SF/clemty, 20 years ago

confirmed with CD version, running in dosbox, the text stays on for about a second I'd say, even though I'm not sure how accurate the DOSBox speed ist

clem

comment:6 by fingolfin, 19 years ago

Summary: Sky CD: text shows up and disappear too quicklyBASS CD: text shows up and disappear too quickly

comment:7 by fingolfin, 19 years ago

Component: Engine: Sky
Game: Beneath a Steel Sky

comment:8 by fingolfin, 19 years ago

Owner: set to lavosspawn

comment:9 by fingolfin, 19 years ago

Any news on this? Torbjörn, Robert?

comment:10 by eriktorbjorn, 19 years ago

Well, I can see in the original source - which can be found at http://www.classicdosgames.com/adventure.html - that there's some kind of waiting going on in fn_no_human. Stripping some (I think) unnecessary stuff, it looks like this:

call lock_mouse ;; reset relative timer clear eax call wait_relative call wait_mouse_not_pressed mov eax,40 call wait_relative call unlock_mouse

Whereas the corresponding part of our fnLookAt() looks like this:

_skyMouse->lockMouse(); _skyMouse->waitMouseNotPressed(); _skyMouse->unlockMouse();

I think what the original assembly means is "wait until the mouse button is released, but at least for 40 ticks, i.e. 800 ms". Is it worth implementing? I don't know. 800 ms is hardly enough time to read and understand an object description, but maybe it makes it slightly more obvious that something's happening.

comment:11 by sev-, 18 years ago

What is the status of this item?

comment:12 by eriktorbjorn, 18 years ago

Fixed in SVN, both trunk and branch.

comment:13 by eriktorbjorn, 18 years ago

Resolution: fixed
Status: newclosed

comment:14 by eriktorbjorn, 18 years ago

Owner: changed from lavosspawn to eriktorbjorn
Note: See TracTickets for help on using tickets.