Opened 3 weeks ago

Closed 3 days ago

#12885 closed defect (fixed)

BURIED: Cutscene for opening door to Da Vinci's study plays every time the door is opened

Reported by: Thunderforge Owned by: eriktorbjorn
Priority: normal Component: Engine: Buried
Version: Keywords: buried-win
Cc: Game: Journeyman Project 2: Buried in Time

Description

When the door to Da Vinci's study (at the top of the second tower) is opened, a cutscene plays of another agent making a time jump. If you turn away from the door and reopen it, the cutscene will repeat.

I noticed that Arthur only comments after the first time the cutscene plays, but not on subsequent times, so that much is correct.

Reproduction Steps

  1. Load the attached save
  2. Open the door. The cutscene will play.
  3. Move right, then left again.
  4. Open the door again. The cutscene will play.

I tried to reproduce this in the GOG.com release's original interpreter, but the cutscene only played one time as expected, so it's not a bug in the original game code.

Versions

  • ScummVM 2.3.0pre 2021-08-31
  • Windows 10 Pro 20H2
  • The Journeyman Project 2: Buried in Time
    • v1.00 24BPP/Windows/English (CD release)
    • v1.1 24BPP/Windows/English (GOG release)

Attachments (2)

buried-Always Jumping Away.sav (1.1 KB ) - added by Thunderforge 3 weeks ago.
buried-Da Vinci Never Opened Door.sav (1.1 KB ) - added by Thunderforge 10 days ago.

Download all attachments as: .zip

Change History (14)

by Thunderforge, 3 weeks ago

comment:1 by Thunderforge, 3 weeks ago

Keywords: buried-win added; buried removed

comment:2 by eriktorbjorn, 3 weeks ago

It seems to be handled by CodexTowerOutsideDoor::mouseUp(), but I can only see it makes a difference between how you open the door, not if you've opened it before. Is there an entire case missing here?

comment:3 by eriktorbjorn, 3 weeks ago

Is there still an animation of the door opening the second time in the original?

comment:4 by eriktorbjorn, 2 weeks ago

I'm asking because I tried hard-coding it to play a different cutscene for the door, but no matter which one I picked I couldn't find one of the door opening without any lightning (which I assume is a time jump).

I tried downloading the GOG version, but I couldn't get it to run in Wine (nor in Windows, for that matter), so I can't compare them myself.

comment:5 by Thunderforge, 2 weeks ago

Is there still an animation of the door opening the second time in the original?

Yes, there is still an animation of the door opening in both versions. With the GOG release, the door opening is *not* followed by the agent jumping out the second time. I am unable to get the 1.00 version to run, so perhaps it is specific to that version?

comment:6 by eriktorbjorn, 13 days ago

From what I've seen, the only difference between 1.00 and 1.1 are in the .exe and .dll files, not the other data files.

The only animations I've been able to find for the door opening are in BITDATA/DAVINCI/DSCTVID1.BTV and they both had lightning on the other side, and something falling to the ground I think? At least when played in a standalone media player.

But as I said, I know very little about the engine and even less about the game, so not only could I be barking up the wrong tree, I'm not even sure I'm in the correct forest.

Last edited 13 days ago by eriktorbjorn (previous) (diff)

comment:7 by Thunderforge, 13 days ago

What you describe is the cutscene that triggers when you first open the door. You can see it in this YouTube video.

In the GOG release (the only one I was able to test), opening the door a second time shows the door opening to an empty room. But ScummVM shows the jumping out sequence every time.

comment:8 by eriktorbjorn, 12 days ago

I could only find minor differences between the GOG version and my DVD version. The data files were identical (except maybe for a missing "Sanctuary Woods" logo in data1?), and I only saw a one-byte difference in some EXE files.

So I'm almost certainly looking in the wrong place for that missing animation. Unfortunately, I have absolutely no idea where the right place to look is, so I can only hope someone else will be able to step up and fix this one.

Out of curiosity, is it possible to return to this spot once you've walked through the door? Or is it only possible to see this if you open the door, turn away, then open the door again?

comment:9 by Thunderforge, 10 days ago

Out of curiosity, is it possible to return to this spot once you've walked through the door? Or is it only possible to see this if you open the door, turn away, then open the door again?

I've reproduced this bug by walking in, turning around, walking out, turning around, and opening the door again.


I think I've found the issue with the code. The door can be opened by either unlocking it with a key or by prying it open with a metal bar.

  • Unlock with metal bar:
    1. Door automatically opens
    2. dsCTUnlockedDoor is set to 1
    3. dsCTViewedAgent3 is set to 1
    4. Time jump video is played
  • Unlock with key:
    1. dsCTUnlockedDoor is set to 1
    2. Door does not automatically open
  • Open door that is already unlocked (dsCTUnlockedDoor == 1)
    1. If dsCTViewedAgent3 == 0, play time jump video (dsCTViewedAgent3 is never set to 1)
    2. If dsCTViewedAgent3 == 1, play normal video

I tried setting the variable in this block, but that it seems that isn't set up correctly because now the animation is prying the door open followed by the time jump.

I've attached a new save of never having opened the door. You can unlock it with the Balcony Key in your inventory (look down, drag to the lock, look up) and then subsequently open it, or just stay at the current height and pry it open with the Metal Bar in your inventory.

by Thunderforge, 10 days ago

comment:10 by eriktorbjorn, 10 days ago

Ah, for some reason I through you couldn't go back out. I blame the muddy graphics, the sometimes confusing node-based navigation, and too much sunlight in my eyes. :-)

The destData.transitionData seems to determine which video it will play. 1 is opening the unlocked door, 2 is breaking it open with the metal bar. It seems like there should be yet a third animation, but I've been unable to find it.

That's where I got stuck.

Last edited 10 days ago by eriktorbjorn (previous) (diff)

comment:11 by eriktorbjorn, 9 days ago

Sev reached out to the upstreams developers, and handed me some code that I've re-integrated in https://github.com/scummvm/scummvm/pull/3363

I think I understand what it does, but could you please test if it's working correctly?

comment:12 by Thunderforge, 3 days ago

Owner: set to eriktorbjorn
Resolution: fixed
Status: newclosed

Bug is fixed in the above PR.

Note: See TracTickets for help on using tickets.