Opened 21 months ago
Closed 20 months ago
#15386 closed defect (fixed)
TWINE: LBA: Twinsen and Zoe soft locked when going down the final trap door
| Reported by: | antoniou79 | Owned by: | mgerhardy |
|---|---|---|---|
| Priority: | normal | Component: | Engine: TwinE |
| Version: | Keywords: | ||
| Cc: | Game: | Little Big Adventure |
Description
This is on Windows 10, ScummVM 2.9.0git (recent build from master HEAD), with GOG version of the game.
In the scene before the last, Twinsen and Zoe go down a vertical rock formation and reach a trap door. I think the game waits for both to be on the trap door, and then pressing space in Normal mood, the trap door breaks open and the two are supposed to fall down.
However, Twinsen and Zoe stay over the hole that has opened, soft locked.
I am attaching a saved game.
Full disclosure, in the playthrough where this saved game comes from I had to use a debug command to work around the bug with the locked door on Funfrock's Fortress on Principal Island. I am unsure if this somehow would cause some corruption to the subsequent saved games (I did not seem so).
Attachments (1)
Change History (10)
by , 21 months ago
| Attachment: | lba-win-1.002 added |
|---|
comment:1 by , 21 months ago
comment:2 by , 21 months ago
the body of the trap door is set to -1 in lSUICIDE - not sure why they are not falling but still colliding.
Btw. this error is there since 2020 at least - thanks a lot for reporting
comment:3 by , 21 months ago
https://bugs.scummvm.org/ticket/13731 might be related - as it looks like collision is evaluated against invisible/inactive/dead actors.
comment:5 by , 20 months ago
Setting the working flag FALLING for twinsen will end the scene properly
comment:6 by , 20 months ago
The carriedBy actor flag is not reset after the actor 3 (the trap door) was destroyed
comment:9 by , 20 months ago
| Owner: | set to |
|---|---|
| Resolution: | → fixed |
| Status: | new → closed |

Scene 112
Script dump
Actor 0 - move script: 27 LABEL 0 ANIM 1 GOTO_POINT 1 LABEL 2 ANIM 0 ANGLE 0 LABEL 100 STOP LABEL 1 ANIM 11 WAIT_ANIM ANIM 0 LABEL 110 STOP END - life script: 97 COMPORTMENT main BETA 0 POS_POINT 0 SET_COMPORTMENT 9 END_COMPORTMENT COMPORTMENT 1 SWITCH_IF ACTION == 1 IF ZONE == 6 IF ZONE_OBJ 2 == 6 SET_BEHAVIOUR 0 SET_DIRMODE 0 SET_TRACK 13 SET_DIRMODE_OBJ 2 0 SET_TRACK_OBJ 2 37 SET_COMPORTMENT_OBJ 2 290 SET_COMPORTMENT 50 ENDIF ENDIF ENDIF END_COMPORTMENT COMPORTMENT 2 IF TRACK == 0 ANIM 1 ENDIF IF TRACK == 100 ONEIF TRACK_OBJ 2 == 100 SET_TRACK 16 SET_TRACK_OBJ 2 40 ENDIF ENDIF IF TRACK == 110 ONEIF TRACK_OBJ 2 == 110 SET_TRACK_OBJ 3 0 ENDIF ENDIF END_COMPORTMENT END Actor 1 - staticflags: 34883 - body: 9 - genBody: 0 - genAnim: 1 - sprite: 0 - posx: 0 - posy: 0 - posz: 0 - strengthOfHit: 0 - bonusflags: 96 - beta: 0 - speed: 30 - controlMode: 7 - cropLeft: 0 - cropTop: 0 - cropRight: -1 - cropBottom: -1 - bonusAmount: 5 - talkColor: 0 - armor: 1 - lifePoints: 50 - move script: 1 END - life script: 32 COMPORTMENT main INIT_PINGOUIN 1 SET_COMPORTMENT 6 END_COMPORTMENT COMPORTMENT 1 ONEIF LIFE_POINT <= 45 GIVE_BONUS 0 ENDIF ONEIF LIFE_POINT <= 30 GIVE_BONUS 0 ENDIF ONEIF LIFE_POINT <= 15 GIVE_BONUS 0 ENDIF END_COMPORTMENT END Actor 2 - staticflags: 51207 - body: 22 - genBody: 0 - genAnim: 0 - sprite: 0 - posx: 28160 - posy: 5800 - posz: 26624 - strengthOfHit: 0 - bonusflags: 0 - beta: 0 - speed: 40 - controlMode: 0 - cropLeft: -1 - cropTop: -1 - cropRight: -1 - cropBottom: -1 - bonusAmount: 1 - talkColor: 3 - armor: 51 - lifePoints: 1 - move script: 83 LABEL 0 ANIM 116 WAIT_NUM_ANIM 2 0 ANIM 0 WAIT_ANIM GOTO_SYM_POINT 0 LABEL 1 ANIM 1 GOTO_POINT 3 ANIM 0 LABEL 101 STOP LABEL 2 ANIM 1 GOTO_POINT 2 LABEL 5 ANIM 0 ANGLE 0 LABEL 100 STOP LABEL 3 ANIM 11 WAIT_ANIM ANIM 0 LABEL 110 STOP LABEL 4 ANIM 0 STOP LABEL 6 ANIM 1 GOTO_POINT 4 ANIM 0 LABEL 101 STOP LABEL 7 ANIM 1 STOP LABEL 8 ANIM 1 GOTO_POINT 5 ANIM 0 LABEL 101 STOP END - life script: 320 COMPORTMENT main SET_DIRMODE 2 0 SET_COMPORTMENT 7 END_COMPORTMENT COMPORTMENT 1 SET_FLAG_CUBE 1 0 SET_FLAG_CUBE 2 0 IF ZONE == 2 IF ZONE_OBJ 0 != 2 IF ZONE_OBJ 0 != 3 IF ZONE_OBJ 0 != 4 SET_DIRMODE 0 SET_FLAG_CUBE 2 1 SET_TRACK 13 SET_COMPORTMENT 299 ENDIF ENDIF ENDIF IF ZONE_OBJ 0 == 2 SET_FLAG_CUBE 1 1 ENDIF ELSE ENDIF ENDIF IF ZONE == 4 IF ZONE_OBJ 0 != 5 SET_DIRMODE 0 SET_FLAG_CUBE 2 1 SET_TRACK 55 SET_COMPORTMENT 299 ELSE ENDIF ENDIF IF ZONE_OBJ 0 == 4 SET_FLAG_CUBE 1 1 ENDIF ELSE ENDIF ENDIF IF ZONE == 5 IF ZONE_OBJ 0 != 0 SET_DIRMODE 0 SET_FLAG_CUBE 2 1 SET_TRACK 71 SET_COMPORTMENT 299 ELSE ENDIF ENDIF IF ZONE_OBJ 0 == 5 SET_FLAG_CUBE 1 1 ENDIF ELSE ENDIF ENDIF IF ZONE == 0 IF ZONE_OBJ 0 == 0 SET_FLAG_CUBE 1 1 ELSE ENDIF ENDIF IF DISTANCE 0 > 1500 SET_FLAG_CUBE 2 1 ANIM 1 ELSE ENDIF ENDIF IF DISTANCE 0 < 1200 ANIM 0 ENDIF ELSE ENDIF ENDIF SET_FLAG_CUBE 1 1 IF FLAG_CUBE 2 == 0 IF DISTANCE_3D 0 < 600 IF FLAG_CUBE 1 == 1 IF TRACK != 0 SET_TRACK 0 ENDIF ELSE ENDIF ENDIF IF TRACK != 4 SET_TRACK 50 ENDIF ELSE ENDIF ENDIF IF DISTANCE_3D 0 > 800 IF FLAG_CUBE 1 == 1 IF TRACK != 7 SET_TRACK 66 ENDIF ELSE ENDIF ENDIF OR_IF TRACK == 7 OR_IF TRACK == 0 IF TRACK == 101 SET_TRACK 50 ENDIF ENDIF ENDIF END_COMPORTMENT COMPORTMENT 2 IF TRACK == 2 ANIM 1 ENDIF END_COMPORTMENT COMPORTMENT 3 IF TRACK == 101 SET_DIRMODE 2 0 ANIM 0 SET_COMPORTMENT 7 ELSE ENDIF ENDIF ANIM 1 END_COMPORTMENT END Actor 3 - staticflags: 21504 - body: 65535 - genBody: 0 - genAnim: 0 - sprite: 29 - posx: 28400 - posy: 240 - posz: 30432 - strengthOfHit: 0 - bonusflags: 0 - beta: 0 - speed: 0 - controlMode: 0 - cropLeft: -1 - cropTop: -1 - cropRight: -1 - cropBottom: -1 - bonusAmount: 1 - talkColor: 5 - armor: 51 - lifePoints: 1 - move script: 9 LABEL 0 SAMPLE 37 LABEL 100 STOP END - life script: 9 COMPORTMENT main IF TRACK == 100 SUICIDE ENDIF END_COMPORTMENT END Zone: 0 - zoneminsx: 27904 - zoneminsy: 0 - zoneminsz: 29952 - zonemaxsx: 28927 - zonemaxsy: 255 - zonemaxsz: 30975 - zonetype: 0 - zonenum: 113 - info0: 25344 - info1: 1536 - info2: 30464 - info3: 0 Zone: 1 - zoneminsx: 29440 - zoneminsy: 1280 - zoneminsz: 28416 - zonemaxsx: 30463 - zonemaxsy: 2815 - zonemaxsz: 28927 - zonetype: 2 - zonenum: 0 - info0: 0 - info1: 0 - info2: 0 - info3: 0 Zone: 2 - zoneminsx: 26368 - zoneminsy: 256 - zoneminsz: 25856 - zonemaxsx: 32511 - zonemaxsy: 511 - zonemaxsz: 32511 - zonetype: 2 - zonenum: 1 - info0: 0 - info1: 0 - info2: 0 - info3: 0 Zone: 3 - zoneminsx: 27904 - zoneminsy: 4864 - zoneminsz: 26368 - zonemaxsx: 29439 - zonemaxsy: 7167 - zonemaxsz: 27903 - zonetype: 2 - zonenum: 2 - info0: 0 - info1: 0 - info2: 0 - info3: 0 Zone: 4 - zoneminsx: 27904 - zoneminsy: 4096 - zoneminsz: 27904 - zonemaxsx: 29439 - zonemaxsy: 5631 - zonemaxsz: 28927 - zonetype: 2 - zonenum: 3 - info0: 0 - info1: 0 - info2: 0 - info3: 0 Zone: 5 - zoneminsx: 29440 - zoneminsy: 3328 - zoneminsz: 26880 - zonemaxsx: 30975 - zonemaxsy: 5887 - zonemaxsz: 27903 - zonetype: 2 - zonenum: 4 - info0: 0 - info1: 0 - info2: 0 - info3: 0 Zone: 6 - zoneminsx: 29440 - zoneminsy: 2304 - zoneminsz: 27904 - zonemaxsx: 30463 - zonemaxsy: 3839 - zonemaxsz: 28415 - zonetype: 2 - zonenum: 5 - info0: 0 - info1: 0 - info2: 0 - info3: 0 Zone: 7 - zoneminsx: 27904 - zoneminsy: 256 - zoneminsz: 29952 - zonemaxsx: 28927 - zonemaxsy: 1023 - zonemaxsz: 30975 - zonetype: 2 - zonenum: 6 - info0: 0 - info1: 0 - info2: 0 - info3: 0 Zone: 8 - zoneminsx: 30464 - zoneminsy: 256 - zoneminsz: 25856 - zonemaxsx: 31999 - zonemaxsy: 1279 - zonemaxsz: 27391 - zonetype: 4 - zonenum: 0 - info0: 96 - info1: 5 - info2: 0 - info3: 0 Zone: 9 - zoneminsx: 30976 - zoneminsy: 256 - zoneminsz: 30976 - zonemaxsx: 32511 - zonemaxsy: 1279 - zonemaxsz: 32511 - zonetype: 4 - zonenum: 0 - info0: 96 - info1: 5 - info2: 0 - info3: 0 Zone: 10 - zoneminsx: 26368 - zoneminsy: 256 - zoneminsz: 30976 - zonemaxsx: 27903 - zonemaxsy: 1279 - zonemaxsz: 32511 - zonetype: 4 - zonenum: 0 - info0: 96 - info1: 5 - info2: 0 - info3: 0 Track: 0 - pointx: 28864 - pointy: 5800 - pointz: 26624 Track: 1 - pointx: 27888 - pointy: 256 - pointz: 30480 Track: 2 - pointx: 28640 - pointy: 256 - pointz: 30416 Track: 3 - pointx: 30208 - pointy: 3328 - pointz: 27648 Track: 4 - pointx: 29968 - pointy: 2304 - pointz: 28400 Track: 5 - pointx: 30016 - pointy: 1280 - pointz: 28912 Scene - sceneTextBank: 10 - currentGameOverScene: 112 - alphaLight: 776 - betaLight: 1026 - sampleAmbiance: 65535 65535 65535 65535 - sampleRepeat: 1 1 1 1 - sampleRound: 500 500 1 1 - sampleMinDelay: 10 - sampleMinDelayRnd: 10 - sceneMusic: 14 - sceneHeroPosx: 29696 - sceneHeroPosy: 256 - sceneHeroPosz: 30720