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

7.3 KiB

Room 63: Attic

The attic is a cramped, dusty space in the old haunted house. It features an open trapdoor with a ladder leading down to the bedroom below, an interesting wooden chest near the trapdoor, and various junk and boxes scattered throughout. The little boy ghost haunts this room, sitting on top of the chest. The player can interact with the chest to find sheet music, and can climb down the ladder to reach the bedroom below. There's also a window looking out toward the cemetery.

Look Description

"After adjusting your eyes to the gloom, you soon see that you have stumbled upon the musty attic of the old house. The trapdoor in the floor is open, and from it, a ladder leads down to the room below. Useless junk and boxes clutter the room. There is an interesting chest near the open trapdoor."

Interactions

Status Behavior Type Command Response
TODO Look look boxes "There is nothing of interest in the old boxes."
TODO Look look birdcage / look in birdcage "It's just an old bird cage...nothing interesting there."
TODO Look look in chest If chest closed: If ghost on chest (global134=5): "The top of the wooden chest is currently occupied by a naughty little ghost." / Otherwise: "The wooden chest is not open." If chest open: If has sheet music: "You peek into the open chest, and find...an old set of sheet music! You take the sheet music and carry it with you." / Otherwise: "You peek into the open chest, and find...nothing."
TODO Look look chest If ghost on chest (global134=5): "The top of the wooden chest is currently occupied by a naughty little ghost." / Otherwise: "An interesting wooden chest catches your attention."
TODO Look look in trapdoor If near trapdoor (in rect 135,138,182,148): "You can see into the room below. There's nothing there." / Otherwise: "You can't see from here."
TODO Look look trapdoor / look down "The trapdoor in the attic floor is open. From it, a ladder leads to the room below."
TODO Look look ladder "A ladder descends from the open trapdoor into the room below."
TODO Look look window "You see the cemetery out the window."
TODO Look look junk "The old junk is useless."
TODO Look look wall "There is nothing of importance on the walls."
TODO Look look dirt / look floor "There is nothing of interest on the floor."
TODO Look look ghost If ghost in this room (global133=63): "The little boy ghost laughs, and refuses to budge from his seat on top of the chest. It might help if he had a toy to play with." / Otherwise: "What ghost?"
TODO Look look around / look room / look [<around][/room] "After adjusting your eyes to the gloom, you soon see that you have stumbled upon the musty attic of the old house. The trapdoor in the floor is open, and from it, a ladder leads down to the room below. Useless junk and boxes clutter the room. There is an interesting chest near the open trapdoor."
TODO Action play boy / play ghost If ghost in room (global133=63): "The boy ghost laughs and teases, and refuses to leave his spot on top of the chest." / Otherwise: "There is no need to do that."
TODO Action climb ladder / climb down If in rect (131,138,205,159): Triggers climbDown script to go to room 60 / Otherwise: "You're not close enough."
TODO Action close trapdoor "The trapdoor is already open."
TODO Action open trapdoor "The trapdoor is already open."
TODO Get get chest "The chest is too heavy. You cannot carry it."
TODO Get get ghost / move ghost / detach ghost If ghost in room (global133=63): "You're afraid to get too near the ghost." / Otherwise: "What ghost?"
TODO Action close chest If chest open: Closes chest, sets local0=0 / Otherwise: "The chest is already closed."
TODO Action open chest If already open: "The chest is already open." / If ghost on chest (global134=5): "The top of the wooden chest is currently occupied by a naughty little ghost." / If in rect (141,120,193,129): Opens chest, sets local0=1 / Otherwise: "You're not close enough."
TODO Inventory use toy / deliver toy/ghost If boy ghost in room 63 and has toy horse (item 30): Ghost accepts toy and disappears, player gets 2 points (handled by boyScript in region 603)

Scripts

Status Behavior Type Name Trigger Behavior
TODO Interaction climbDown Player types climb ladder or climb down when in position Stops player motion, changes view to descending animation (view 40, loop 1), then to climbing down (view 77, loop 2), and transitions to room 60
TODO Interaction climbIn Room initialization Plays entry animation when entering room 63 from below - Rosella climbs up through trapdoor using ladder (view 77 loop 2, then view 40 loop 1), then returns to normal walking view
TODO Interaction fallDead Player walks into control area $0004 (pit/hole) Falls to death sequence - plays fall sound (52), shows falling animation (view 44), then death scene with screen shake and game over

Technical Notes

  • Room Number: 63
  • Picture: 63
  • Region: 603 (GhostWander - Haunted House)
  • Exits: Down→60 (via ladder at trapdoor position)
  • Music: Sound 52 (falling sound)

State Variables

Variable Values Description
local0 0, 1 Chest state: 0 = closed, 1 = open
global134 0-255 Ghost type/state for region 603 (5 = boy ghost active)
global133 Room number Current room where ghost is located
global182 0, 1 Sheet music taken flag (1 = taken)
global204 0, 1 Climbing state - down indicator
global205 0, 1 Climbing state - up indicator
global100 0, non-zero Controls visibility of certain props (e.g., candelabra when non-zero)

Additional Technical Details

  • Entry from Room 60: Player climbs up ladder, triggers climbIn script
  • Room loads picture 60 as background during fall/death sequence
  • Player cannot fall into pit in this room - control area $0004 triggers death sequence
  • Chest can only be opened when player is in rect (141,120,193,129) - near the chest position
  • Trapdoor is always open in this room (open/close are no-ops)
  • Ladder descent only works when player is in rect (131,138,205,159) - near the trapdoor
  • The ghost boy (boyScript from region 603) sits on top of the chest when global134=5 and global133=63
  • Player can get sheet music (item 26) from chest when it's open and they haven't taken it yet (+2 score)
  • Uses region 603 for boy ghost NPC behavior and wandering

Boy Ghost Interactions (from Region 603)

The boy ghost in this room responds to various commands through the GhostWander region (603):

  • deliver toy / give toy: Gives toy horse (item 30) to ghost, triggers ghost to leave (+2 score)
  • talk / converse: Ghost just giggles
  • look ghost: Describes ghost sitting on chest
  • play ghost: Ghost laughs and refuses to move
  • get ghost / capture ghost: Cannot capture ghost
  • kill ghost: Cannot kill already dead ghost
  • help ghost: "You'd like to help the little boy ghost, but how can you do that?"