Opened 16 years ago

Closed 16 years ago

Last modified 16 years ago

#1705 closed defect (fixed)

FT: Graphical glitches in airplane computers.

Reported by: SF/leetylr Owned by: Kirben
Priority: normal Component: Engine: SCUMM
Keywords: Cc:
Game: Full Throttle

Description

0.7.0cvs aug 3 2004

English

CD version

Dos Win32

when you get towards the end of the game, with the chase between ripburger in the airplain the smashed controlls computer text currupts and overwrites its self so you cant see the rest of the screen to complete game.

Ticket imported from: #1004196. Ticket imported from: bugs/1705.

Attachments (4)

ft.s01 (11.1 KB ) - added by SF/leetylr 16 years ago.
airplain computer end sequence
room-169-2000.txt (60.2 KB ) - added by Kirben 16 years ago.
room-169-2001.txt (380 bytes ) - added by Kirben 16 years ago.
computer1.png (15.6 KB ) - added by Kirben 16 years ago.
Screenshot of computer in original FT

Download all attachments as: .zip

Change History (17)

by SF/leetylr, 16 years ago

Attachment: ft.s01 added

airplain computer end sequence

comment:1 by SF/leetylr, 16 years ago

Priority: normalblocker

comment:2 by SF/leetylr, 16 years ago

Priority: blockernormal
Summary: graphics error in airplain computer in end sequenceFT: graphics error in airplain computer in end sequence

comment:3 by SF/leetylr, 16 years ago

Priority: normalblocker
Summary: FT: graphics error in airplain computer in end sequencegraphics error in airplain computer in end sequence

by Kirben, 16 years ago

Attachment: room-169-2000.txt added

comment:4 by Kirben, 16 years ago

room-169-2000 script sets the verbs used by computer controls, based on user input. It calls room-169-2001 script each time, to turn off the current verbs, but that isn't taking effect for some reason... Attached scripts output.

by Kirben, 16 years ago

Attachment: room-169-2001.txt added

comment:5 by Kirben, 16 years ago

Also I was comparing to original Full Throttle and noticed the background color is wrong too, it should be black. In original Full Throttle the background behind verb strings is white in both computer systems (This one and the other used a bit later) in game. Attached screenshots.

by Kirben, 16 years ago

Attachment: computer1.png added

Screenshot of computer in original FT

comment:6 by fingolfin, 16 years ago

Priority: blockerhigh
Summary: graphics error in airplain computer in end sequenceFT: graphics error in airplain computer in end sequence

comment:7 by fingolfin, 16 years ago

Well it's not surprising that this problem occurs, considering restoreVerbBG() doesn't do anything anymore for V7 games... removing that check from it mostly fix the problems in this scene.

comment:8 by Kirben, 16 years ago

Using restoreVerbBG() always causes glitches when there is flashing verbs, which is used on both computer terminals in the game. As far as I can tell restoreVerbBG() doesn't exist in FT, there is no restoreVerbBG() calls in drawVerb() at all. restoreBG() is only called by removeBlastObject() in the game. I don't see any related calls to updateDirtyRect() either. FT never changes verb.bkcolor either, o_verbOps case 140 is just a dummy.

comment:9 by Kirben, 16 years ago

Double checked disasm. again, scumm 7/8 games use blasttext for verb strings. So they would only get removed once every cycle of main loop. That also explains how verb charset would be used in COMI.

comment:10 by Kirben, 16 years ago

The code causing the verbs text not to clear has been reverted (By accident?), so game should be completable with recent daily snapshot. There are still those graphical glitches when verb text flashes and background color is still wrong though.

comment:11 by Kirben, 16 years ago

Priority: highnormal
Summary: FT: graphics error in airplain computer in end sequenceFT: Graphical glitches in airplane computers.

comment:12 by Kirben, 16 years ago

I fixed the verbs glitches, only needed to reset verb background when drawing a verb.

I found cause of text color difference too, the (! getResourceAddress(rtCharset, charsetno)) check in initCharset in scumm/string.cpp is wrong, so the charset data isn't actually been loaded for these two computer terminals and left blank. The initCharset() function in original FT disasm. just checks with isResourceLoaded(), instead of getResourceAddress(). Fixed now.

comment:13 by Kirben, 16 years ago

Owner: set to Kirben
Resolution: fixed
Status: newclosed
Note: See TracTickets for help on using tickets.