Files
kq4-decompile/rooms/kq4-094-unicorn-stable/kq4-094-unicorn-stable.md
2026-02-20 14:00:40 -08:00

65 lines
4.1 KiB
Markdown

# Room 94: Unicorn Stable
This is the interior of Lolotte's stable where a magnificent wild unicorn is imprisoned. The room features two stable gates and contains the unicorn, which can be freed by opening the gate. When the unicorn is present, players can interact with it through various commands. Opening the gate while the unicorn is imprisoned triggers a cutscene where the unicorn escapes to freedom, rewarding the player with score points.
## Look Description
"You see two stable gates."
## Interactions
| Status | Behavior Type | Command | Response |
|--------|--------------|---------|----------|
| TODO | Look | `look gate` | "You see two stable gates." |
| TODO | Look | `look wall` | "You see nothing of importance on the walls." |
| TODO | Look | `look around` / `look room` / `look barn` | "You see two stable gates." |
| TODO | Look | `look around` / `look room` (with unicorn present) | "You see two stable gates." + "You have entered Lolotte's stable... and, it looks like an ordinary stable at that." |
| TODO | Action | `open gate` (already open) | "It's already open." |
| TODO | Action | `open gate` (not near gate) | "Rosella! You're standing in the way!" |
| TODO | Action | `open gate` (valid) | Opens gate, releases unicorn if present |
| TODO | Action | `close gate` (already closed) | "It's already closed." |
| TODO | Action | `close gate` (not near gate) | "Rosella! You're standing in the way!" |
| TODO | Action | `close gate` (valid) | Closes gate |
| TODO | Talk | `talk unicorn` / `talk horse` (no unicorn) | "The unicorn is not here." |
| TODO | Talk | `talk unicorn` / `talk horse` (unicorn present) | "The unicorn looks at you with sadness." |
| TODO | Talk | `converse unicorn` / `converse horse` (no unicorn) | "The unicorn is not here." |
| TODO | Talk | `converse unicorn` / `converse horse` (unicorn present) | "It needs to be free..." |
| TODO | Action | `kiss` (unicorn present) | "The unicorn rolls back its eyes. It obviously doesn't trust you any more." |
| TODO | Action | `kiss` (no unicorn) | "The unicorn doesn't want you to." |
| TODO | Action | `look unicorn` / `look horse` (no unicorn) | "The unicorn is not here." |
| TODO | Action | `look unicorn` / `look horse` (unicorn present) | "What unicorn?" + "The unicorn looks at you with sadness." |
| TODO | Action | `pat unicorn` / `pat horse` | "You reach out to pet the unicorn's nose, but it won't let you." |
| TODO | Action | `mount unicorn` / `mount horse` | "The unicorn doesn't trust you; it backs away." |
| TODO | Action | `get unicorn` / `capture unicorn` / `guide unicorn` | "You should free the unicorn." |
| TODO | Action | `free unicorn` / `help unicorn` | "The unicorn is not here." |
## Scripts
| Status | Behavior Type | Name | Trigger | Behavior |
|--------|--------------|------|---------|----------|
| TODO | Interaction | gateScript | Opening or closing the gate | Controls gate animation, stops updates when fully open, enables/disables block2 when unicorn is present |
| TODO | Background | uniStuff | Continuous when unicorn actor is in room | Animates unicorn, handles release sequence when gate opens with unicorn present, triggers cutscene where unicorn trots out to freedom |
## Technical Notes
- **Room Number**: 94
- **Picture**: 94
- **Style**: $0010 (slated)
- **Exits**: North→80 (when on control area $0040)
### State Variables
| Variable | Values | Description |
|----------|--------|-------------|
| `unicorn_state` | `99`, `999` | Tracks unicorn presence (99 = imprisoned, 999 = freed) |
| `room_visited` | `true`, `false` | Set to true when player enters (global101 = 1) |
| `gate_open` | `true`, `false` | Determined by newProp_2 cel value (0 = closed) |
### Additional Technical Details
- Two blocking areas (block1, block2) prevent player from walking through gate or walls
- Gate prop (newProp_2) has different loop for right gate
- Unicorn appears as actor (view 380) when global123 == 99
- When unicorn is released: player loses control, ego plays animation, score increases by 4, unicorn changes to view 386 and exits to room 150,230 (outside stable)
- global124 set to 27 when unicorn is freed (possibly flag for obtaining unicorn as companion)