Files
kq4-decompile/rooms/kq4-034-island-beach/kq4-034-island-beach.md
2026-02-20 14:00:40 -08:00

89 lines
7.7 KiB
Markdown

# Room 34: Island Beach
## High-Level Summary
Room 34 is the beach area of the magical island with the ivory palace. This scenic location features the azure ocean stretching before the player, with a beautiful garden and splendid palace rising behind. The room connects to the palace to the north (room 31), another beach area to the west (room 33), and the eastern side of the island (room 35). The room features animated ocean waves and applies multiple regional scripts for beach interactions, water/swimming mechanics, garden features, and seagull wildlife.
## Look Description
"You see the azure ocean stretching in front of you as you stand on the beach of this marvelous island. Behind you, set amidst a beautiful garden, rises a splendid ivory palace."
## Interactions
| Status | Behavior Type | Command | Response |
|--------|--------------|---------|----------|
| TODO | Look | `look[<around][/room,island]` | "You see the azure ocean stretching in front of you as you stand on the beach of this marvelous island. Behind you, set amidst a beautiful garden, rises a splendid ivory palace." (Print 34 0) |
| TODO | Look | `look/beach` | "The ocean water laps gently upon the sandy beach of the island." / "Something catches your eye! Why, it's a beautiful peacock feather!" (Print 505 0/1) |
| TODO | Look | `look/feather` | "You see a beautiful peacock feather lying upon the beach." (Print 505 2) |
| TODO | Look | `look/tamir` | "You see Tamir in the distance." (Print 505 4) |
| TODO | Look | `look[<in,under]/ocean,water` | "You look under the water, and see nothing but...more water!" / "You're not in the water." (Print 505 5/6 or Print 503 0/1) |
| TODO | Look | `look/ocean,water` | "The wide blue ocean surrounds this island. Off to the east, you can barely see the mainland of Tamir." (Print 505 7) |
| TODO | Look | `look[<down]/dirt` | "You see nothing but sandy soil." (Print 505 9 or Print 503 7) |
| TODO | Look | `look/boulder` | "You don't see many rocks." (Print 505 10 or Print 503 8) |
| TODO | Look | `look/forest` | "There are many beautiful trees in this garden setting." (Print 505 11 or Print 503 9) |
| TODO | Look | `look/grass` | "Lush green grass carpets this magical island." (Print 505 12 or Print 503 10) |
| TODO | Look | `look/bush` | "A low hedge borders the lovely garden." (Print 505 13 or Print 503 11) |
| TODO | Look | `look/flora` | "The foliage is lush and green." (Print 505 14 or Print 503 12) |
| TODO | Look | `look/blossom` | "Beautiful flowers seem to flourish here." (Print 505 15 or Print 503 12) |
| TODO | Look | `look/garden` | "A splendid garden surrounds the magnificent ivory palace." (Print 505 16) |
| TODO | Look | `look/castle` | "An enchanting ivory palace, encircled by a luxuriant garden, rises from the center of this secluded island." (Print 505 17) |
| TODO | Look | `look/peacock` | "A majestic peacock, with a beautiful tail, struts by." / "You don't see one." (Print 505 18/19) |
| TODO | Look | `look/fish` | "You don't see any fish right now." (Print 503 3) |
| TODO | Look | `look[<up]/sky` | "The bright, blue sky seems to merge as one with the vast ocean before you." / "It's easy to see by the light of a full moon." (Print 503 5/6) |
| TODO | Look | `look/gull,gull,bird` | "You see many seagulls gliding through the air in their never-ending quest for food." (Print 504 0) |
| TODO | Action | `climb/forest` | "It is difficult to climb trees while wearing that dress!" (Print 505 20) |
| TODO | Talk | `converse/peacock` | "Peacocks don't talk!" (Print 505 21) |
| TODO | Talk | `converse/gull,bird` | "Seagulls don't talk." (Print 504 1) |
| TODO | Get | `get/feather` | Picks up feather if nearby (Print 505 2, 800 1) |
| TODO | Get | `get/blossom` | "It would waste your precious time to stop and pick flowers." (Print 505 23 or Print 503 13) |
| TODO | Get | `get/flora,blossom` | "It would waste your precious time to stop and pick flowers." (Print 503 13) |
| TODO | Get | `get/water` | "You have no reason to carry water." (Print 503 14) |
| TODO | Action | `get,capture/peacock` | "You don't need the peacock." (Print 505 24) |
| TODO | Action | `get,capture/gull,bird` | "You can't catch a seagull." (Print 504 2) |
| TODO | Action | `get,capture/bird,parrot` | "That wouldn't accomplish anything." (Print 505 25) |
| TODO | Action | `drink` / `get/drink` | "YUCK!! This water's too salty!" (Print 503 15, 503 22) |
| TODO | Action | `bathe,dive,wade[<enter][/ocean]` | "Just enter the water." / "The water is much too deep here." / "You are already swimming." (Print 503 16/17/18) |
| TODO | Action | `capture,get/fish` | "You cannot catch fish while swimming." / "This would not be a good spot to fish." / "You have no way of catching any fish." (Print 503 19/20/21) |
| TODO | Action | `fish[<enter]` | Same as capture fish (Print 503 19/20/21) |
| TODO | Action | `kiss/peacock` | "There's no need for that." (Print 505 26) |
| TODO | Action | `kiss/gull,bird` | "You can't kiss a seagull." (Print 504 3) |
| TODO | Action | `feed/gull,bird` | "The seagulls are not interested." (Print 504 4) |
| TODO | Inventory | `deliver/*/gull` | "You can't give that." / "The seagull has no interest in it." (Print 504 5/6) |
| TODO | Inventory | `fling/*` | "You can't throw that." / "That would accomplish nothing." (Print 504 7/8) |
## Scripts
| Status | Behavior Type | Name | Trigger | Behavior |
|--------|--------------|------|---------|----------|
| TODO | Background | `waveActions` | Automatic on room init | Animates three wave props (wave1, wave2, wave3) in a looping cycle. Creates View objects for each wave, cycles through cels, then hides and advances to the next wave. |
| TODO | Background | `water` (via waterReg) | Continuous | Monitors player's onControl state and switches player view based on terrain: normal land (view 2), shallow water (view 5), more shallow water (view 6), more water (view 7), deep swimming (view 8). Sets appropriate global105 state values. |
| TODO | Background | `peacockActions` (via gfReg) | Random 40% chance on room init | Creates a peacock actor that wanders around the beach area. Cycles through display and movement states. |
| TODO | Interaction | `getFeather` (via gfReg) | Player uses get/feather command | Plays animation of player picking up the peacock feather, awards 2 points, sets global182 flag, and removes the feather from the ground. |
| TODO | Interaction | `drinking` (via beachReg) | Player uses drink command while on appropriate terrain | Plays drinking animation, displays message about salty water, then returns player to normal state. |
| TODO | Background | `Gull_Region` init | Automatic when global100 is false | Spawns 2 seagull actors that wander within the upper portion of beach rooms. |
## Technical Notes
- **Room Number**: 34
- **Picture**: 34 (134 if global100 is set - nighttime variant)
- **Region**: Beach/Garden Island
- **Exits**: North→31 (Palace), East→35 (Island east), West→33 (Beach west)
- **Music**: Unknown
- **Regions Applied**: 505 (gfReg - Garden/Feather), 501 (waterReg - Water/Swimming), 503 (beachReg - Beach interactions), 504 (Gull Region - Seagulls)
### State Variables
| Variable | Values | Description |
|----------|--------|-------------|
| `global100` | `0`, `1` | Nighttime flag - changes room picture and sky descriptions |
| `global101` | `0` | Room-specific state (set to 0 in init) |
| `global105` | `0-4` | Water/terrain state: 0=land, 1=shallow, 2=shallow, 3=more water, 4=swimming |
| `global182` | `0`, `1` | Feather collected flag - set to 1 after picking up feather |
| `global204` | `0`, `1` | Drinking in progress flag |
| `global223` | `0`, `1` | Seagulls spawn flag - enables gull actors when true |
### Synonyms
- `ocean` = `seawater` = `ocean` (from gfReg and beachReg)
- Island garden area with palace visible from beach