Files
kq4-decompile/rooms/kq4-060-bedroom/kq4-060-bedroom.md
2026-02-20 14:00:40 -08:00

7.6 KiB

Room 60: Bedroom

This is the player's bedroom in the haunted castle tower. The room features a bed, window with view, fireplace, carpet, chest/dresser, chandelier, and a ladder leading up to an attic (room 63). A ghost/fishwife NPC appears in the room under specific quest conditions. The player can climb the ladder to reach the attic or exit through the window area to room 68.

Look Description

"You are in a small but comfortable bedroom. Through the window you can see the castle grounds. A bed occupies one corner, and a ladder leads up through a trapdoor in the ceiling."

Interactions

Status Behavior Type Command Response
TODO Look look / look around / look room "[Look room description]" (Print 60 0)
TODO Look look (when ghost present) "[Ghost description]" (Print 60 1, conditional on global134==3)
TODO Look look under bed "[Under bed description]" (Print 60 2)
TODO Look look bed "[Bed description]" (Print 60 3)
TODO Look look window (when near window) "[Window description]" (Print 60 4)
TODO Look look window (when far from window) "[Not near window message]" (Print 800 1)
TODO Look look fireplace "[Fireplace description]" (Print 60 5)
TODO Look look carpet "[Carpet description]" (Print 60 6)
TODO Look look in chest / look in dresser / look in drawer "[Container contents]" (Print 60 7)
TODO Look look chandelier "[Chandelier description]" (Print 60 8)
TODO Look look chest / look dresser "[Furniture description]" (Print 60 9)
TODO Look look wall "[Wall description]" (Print 60 10)
TODO Look look dirt / look down "[Floor description]" (Print 60 11)
TODO Look look ceiling (with ladder) "[Ceiling with ladder]" (Print 60 12)
TODO Look look ceiling (without ladder) "[Ceiling without ladder]" (Print 60 13)
TODO Look look in trapdoor / look up trapdoor (with ladder) "[Trapdoor open]" (Print 60 14)
TODO Look look in trapdoor / look up trapdoor (without ladder) "[Trapdoor closed]" (Print 60 15)
TODO Look look up (with ladder) "[Looking up at open trapdoor]" (Print 60 16)
TODO Look look up (without ladder) "[Nothing to look up at]" (proc0_15)
TODO Look look ladder (with ladder visible) "[Ladder description]" (Print 60 17)
TODO Look look ladder (without ladder) "[No ladder visible]" (Print 60 18)
TODO Look look trapdoor (with ladder) "[Open trapdoor]" (Print 60 19)
TODO Look look trapdoor (without ladder) "[Closed trapdoor]" (Print 60 20)
TODO Action open trapdoor (with ladder) "[Already open]" (Print 60 21)
TODO Action open trapdoor (without ladder) "[Opens trapdoor]" (Print 60 22)
TODO Action close trapdoor (with ladder) "[Closes trapdoor]" (Print 60 23)
TODO Action close trapdoor (without ladder) "[Already closed]" (Print 60 24)
TODO Action open chest / open dresser / open drawer "[Container already open]" (Print 60 7)
TODO Action lay in bed / sleep in bed / get in bed "[Cannot sleep now]" (Print 60 25)
TODO Action climb ladder (with ladder, near ladder, below top) "[Climb ladder to attic]" (triggers climbLadder script)
TODO Action climb ladder (with ladder, not close enough) "[Not near ladder]" (Print 800 1)
TODO Action climb ladder (with ladder, at top) "[Already at top]" (Print 60 26)
TODO Action climb ladder (without ladder) "[No ladder]" (Print 60 27)
TODO Action climb "[Climb what?]" (Print 60 28)
TODO Action move "[Cannot move that]" (Print 60 29)
TODO Look look ghost / look fishwife (when ghost present) "[Ghost description]" (Print 60 1)
TODO Look look chair (when ghost present) "[Chair description]" (Print 60 30)
TODO Talk talk ghost / talk fishwife / talk (when ghost present) "[Ghost dialogue]" (Print 60 31)
TODO Action get ghost / get fishwife (when ghost present) "[Cannot take ghost]" (Print 60 32)
TODO Action get/capture ghost / get/capture fishwife (when ghost present) "[Cannot capture ghost]" (Print 60 33)
TODO Action kill ghost / kill fishwife (when ghost present) "[Cannot kill ghost]" (Print 60 34)
TODO Action kiss ghost / kiss fishwife / kiss (when ghost present) "[Ghost reaction]" (Print 60 35)
TODO Action help ghost / help fishwife (when ghost present) "[Ghost help response]" (Print 60 36)
TODO Inventory deliver [item] (to ghost, when near and has item) "[Gift accepted - wedding ring]" (Print 60 37, +2 score, clears ghost)
TODO Inventory deliver [item] (to ghost, wrong item) "[Ghost rejects item]" (Print 60 38)
TODO Inventory deliver [item] (when not near ghost) "[Not near ghost]" (Print 800 1)

Scripts

Status Behavior Type Name Trigger Behavior
TODO Interaction climbLadder Player types climb ladder when ladder is visible and player is positioned below/at ladder Disables actor collisions, moves ego to ladder position (161,140), plays climbing view animation (view 77, loop 0), moves ego up to position (161,48), sets climbing state (global204=0, global205=1), then transports to Room 63 (attic)
TODO Interaction climbDown Entering room from Room 63 (attic) via gPrevRoomNum == 68 check Plays descending animation (view 77, loop 1 in reverse), moves ego from trapdoor position down to floor (161,140), restores normal view (view 4, loop 3), resets climbing state (global205=0), enables actor collisions

Technical Notes

  • Room Number: 60
  • Picture: 60
  • Region: 603 (Haunted House - controls ghost appearance)
  • Exits: East→68 (through window/control area), Up→63 (via ladder when visible)
  • Synonyms: room = bedroom

State Variables

Variable Values Description
global100 true, false Controls ghost/fishwife visibility in room
global134 Various values Quest progression state - ladder appears when > 4; ghost appears when == 3
global133 Room number Current room number - compared to trigger ghost interactions
global225 1 Ghost quest active flag - when == 1 enables ghost interactions
local1 0, 1 Ladder/trapdoor state - set to 1 when global134 > 4 (ladder visible)
global204 0, 1 Climbing state - set to 0 when climbing up
global205 0, 1 Climbing flag - set to 1 when ascending, 0 when on ground
newView View object Ladder upper portion (view 529, loop 1)
newView_2 View object Ladder lower portion (view 529, loop 0)

Additional Technical Details

  • Room applies Region 603 in init for haunted house logic
  • When global100 is true: displays ghost visual elements (view 648, prop 536 with animation)
  • When global134 > 4: loads and displays ladder views (529), sets local1 = 1
  • Entry from Room 68 positions ego at (68,159) with view 4 (falling/descending)
  • Entry from other rooms positions ego at (161,59) with view 77, triggers climbDown script
  • Exit to Room 68 triggered by control area $0040 (window/door area)
  • Ghost interactions only active when: global134==3 AND global225==1 AND global100==true
  • Giving item 28 (wedding ring) to ghost: removes item, awards 2 points, calls proc0_10 to clear ghost
  • Ladder climb checks: player must be within distance 10 of ladder and at or below ladder's Y position