Opened 4 months ago

Closed 3 months ago

#10822 closed defect (fixed)

QFG4: Reading 3, Two of Cups is placed off-center

Reported by: Vhati Owned by: bluegr
Priority: low Component: Engine: SCI
Keywords: SCI32 original has-pull-request Cc:
Game: Quest for Glory 4

Description

ScummVM 2.1.0git3965-ge6dbdb880f (Dec 02 2018 04:18:06)
Windows 7 64bit
QFG4 CD (English)

The fortune teller's third reading places the "Two of Cups" across another card. Unlike other cards, this one is off-center.

The original interpreter also does this.

File - 5kb MD5 - Full MD5
RESOURCE.000 - 263dce4aa34c49d3ad29bec889007b1c - 1364ba69e3c0abb68cc0170650a56692
RESOURCE.AUD - c39521bffb1d8b19a57394866184a0ca - 71098b9e97e20c8941c0e4812d5f906f
RESOURCE.MAP - aba367f2102e81782d961b14fbe3d630 - 801a04cc6aa5d437681a2dd0b6545248
RESOURCE.SFX - 3cf95e09dab8b11d675e0537e18b499a - 7c858d7253f86dab4cc6066013c5ecec

Attachments (2)

Screenshot (CD) - Reading 3, Two of Cups.png (17.5 KB) - added by Vhati 4 months ago.
Screenshot (CD) - Reading 3, Two of Cups
Screenshot (CD) - Reading 3, Two of Cups (fixed).png (17.4 KB) - added by Vhati 4 months ago.
Screenshot (CD) - Reading 3, Two of Cups (fixed)

Download all attachments as: .zip

Change History (11)

Changed 4 months ago by Vhati

Screenshot (CD) - Reading 3, Two of Cups

comment:1 Changed 4 months ago by Vhati

Occurs in the floppy edition under ScummVM, and its original interpreter, too.


QFG4 Floppy 1.1a + note patch (English)

File - 5kb MD5 - Full MD5
RESOURCE.000 - f64fd6aa3977939a86ff30783dd677e1 - ff42260a665995a85aeb277ad80aac8a
RESOURCE.MAP - d10a4cc177d2091d744e2ad8c049b0ae - 3695b1b0a1d15f3d324ea9f0cc325245
RESOURCE.SFX - 3cf95e09dab8b11d675e0537e18b499a - 7c858d7253f86dab4cc6066013c5ecec

comment:2 Changed 4 months ago by Vhati

Despite the card being illegible in-game, I identified it by looking it up in the real deck it was based on.

Video: YouTube - Spoiler of the "Russian Tarot of St. Petersburg" deck (illus. Yury Shakov)

comment:3 Changed 4 months ago by Vhati

Quick and dirty way to skip to reading 3.

  • Create a new character. Any kind.
  • Wake up in the starting room.
  • Set plot flags for having seen the previous 2 readings (297, 298).
    • vv g 518 96
  • Teleport into the tarot room.
    • room 475

comment:4 Changed 4 months ago by Vhati

Digging into the resources...

The "Two of Cups" (View 1023) is an outlier (130x64). Other horizontal card Views are padded at the bottom with transparent pixels (130x86, 130x87). Because this one is cropped, it sits lower, given the same MoveTo coordinates.

comment:5 Changed 4 months ago by Vhati

Last edited 4 months ago by Vhati (previous) (diff)

comment:6 Changed 4 months ago by Vhati

sShowCard creates and places every card. Should be able to add a special case for this one.


script 475 - sShowCard::changeState(2)

(switch loc2_myCardPile
	(1
		(loc1_myCard
			moveSpeed: 0
			setStep: 30 10
			setScaler: Scaler 100 35 150 110
			setMotion: MoveTo 145 110 self
		)
	)
	(2
		(loc1_myCard
			moveSpeed: 0
			setStep: 30 10
			setScaler: Scaler 100 35 150 110
			setMotion: MoveTo 80 110 self
		)
	)
	(3
		(loc1_myCard
			moveSpeed: 0
			setStep: 30 10
			setScaler: Scaler 35 100 170 150
			setMotion: MoveTo 144 170 self
		)
	)
	(4
		(loc1_myCard
			moveSpeed: 0
			setStep: 30 10
			setScaler: Scaler 100 35 150 110
			setMotion: MoveTo 210 110 self
		)
	)
	(5
		(loc1_myCard
			moveSpeed: 0
			setStep: 30 10
			setScaler: Scaler 100 35 150 50
			setMotion: MoveTo 144 50 self
		)
	)
)



It'd be cleaner if the View resource itself could be modified to be consistent with the rest. I don't think that's possible.

Last edited 4 months ago by Vhati (previous) (diff)

comment:7 Changed 4 months ago by Vhati

Soo close.
Had one byte to spare.

/shakes tiny fist at 1-byte pushi being signed. Big values turn negative.

Two pushi ops need to become uint16... putting me... one byte... short.

Not disastrous. I can free more.

Thought I was done. It was fitting so well. -_-

The patch will be shorter in the end, which is for the best.
Just gotta turn my general purpose subroutine into a more specialized one that bakes in more of its args.

Last edited 4 months ago by Vhati (previous) (diff)

Changed 4 months ago by Vhati

Screenshot (CD) - Reading 3, Two of Cups (fixed)

comment:8 Changed 4 months ago by Vhati

Keywords: has-pull-request added

Pull Request: SCI32: Fix QFG4 third tarot reading

comment:9 Changed 3 months ago by bluegr

Owner: set to bluegr
Resolution: fixed
Status: newclosed

Thanks for your work! The pull request has been merged, so this can be closed now

Note: See TracTickets for help on using tickets.