Complete: Reorganize KQVI chart with better readability, clustering, and fan-out flow
- Apply fontsize=18 to all nodes via node[fontsize=18] - Add index-based color palette with stroke colors for each area - Restructure to fan-out/fan-in flow: Crown → 4 islands → convergence → Crown Final - Group pawn shop items (Nightingale, Mint, Tinderbox, Flute, Paintbrush, Ink) under Village area_8 - Group gnome items under Isle of Wonder Five Senses area_2 - Isle of Crown (area_1) repeats at start and end with same color - Update skill files with clustering rules and layout guidelines - Build succeeds with 0 orphans, 0 undefined
This commit is contained in:
@@ -199,6 +199,68 @@ end
|
|||||||
|
|
||||||
#### Color-Coded Areas
|
#### Color-Coded Areas
|
||||||
|
|
||||||
|
Apply index-based palette with consistent stroke colors:
|
||||||
|
|
||||||
|
| Index | Hex | Stroke | Area Example |
|
||||||
|
|-------|-----|--------|--------------|
|
||||||
|
| 1 | `#E3F2FD` | `#1976D2` | Isle of Crown |
|
||||||
|
| 2 | `#FFF3E0` | `#F57C00` | Isle of Wonder |
|
||||||
|
| 3 | `#F3E5F5` | `#7B1FA2` | Isle of Beast |
|
||||||
|
| 4 | `#E8F5E9` | `#388E3C` | Isle of Mists |
|
||||||
|
| 5 | `#FFF8E1` | `#F9A825` | Sacred Mountain |
|
||||||
|
| 6 | `#FCE4EC` | `#C2185B` | Druid Island |
|
||||||
|
| 7 | `#E0F7FA` | `#00838F` | Realm of Dead |
|
||||||
|
| 8 | `#F5F5F5` | `#616161` | Village |
|
||||||
|
|
||||||
|
**Same area can appear multiple times** at different logical points (e.g., Isle of Crown at game start AND as final area). Use the SAME color for repeated areas.
|
||||||
|
|
||||||
|
#### Font Size Requirement
|
||||||
|
|
||||||
|
**All nodes must use `fontsize=18`** or larger for readability:
|
||||||
|
|
||||||
|
```mermaid
|
||||||
|
flowchart TD
|
||||||
|
node[fontsize=18]
|
||||||
|
%% This sets default font size for all nodes
|
||||||
|
```
|
||||||
|
|
||||||
|
Apply this at the very start of the flowchart, before any nodes or subgraphs.
|
||||||
|
|
||||||
|
#### Clustering Rules
|
||||||
|
|
||||||
|
**Pawn Shop Items**: Group ALL pawn shop items under the Village (area_8) subgraph:
|
||||||
|
- Nightingale, Mint, Tinderbox, Flute, Paintbrush, Ink
|
||||||
|
- These items originate from the Village pawn shop broker interaction
|
||||||
|
|
||||||
|
**Gnome Items**: Group ALL Five Senses gnome outcomes under Isle of Wonder (area_2) subgraph:
|
||||||
|
- Smell, Hearing, Taste, Touch, Sight gnome satisfaction outcomes
|
||||||
|
- These are all part of the Five Senses puzzle sequence
|
||||||
|
|
||||||
|
```mermaid
|
||||||
|
subgraph area_8["<style>subgraphTitleTitle {font-size: 18px; font-weight: bold;}</style>Village - Pawn Shop Items"]
|
||||||
|
classDef area_8 fill:#F5F5F5,stroke:#616161,stroke-width:2px
|
||||||
|
class O_RECEIVE_NIGHTINGALE,O_RECEIVE_MINT,O_RECEIVE_TINDERBOX,O_RECEIVE_FLUTE,O_RECEIVE_PAINTBRUSH,O_RECEIVE_INK area_8
|
||||||
|
end
|
||||||
|
|
||||||
|
subgraph area_2_gnomes["<style>subgraphTitleTitle {font-size: 18px; font-weight: bold;}</style>Isle of Wonder - Five Senses Gnomes"]
|
||||||
|
classDef area_2_gnomes fill:#FFF3E0,stroke:#F57C00,stroke-width:2px
|
||||||
|
class O_GNOMES_SMELL_DONE,O_GNOMES_HEARING_DONE,O_GNOMES_TASTE_DONE,O_GNOMES_TOUCH_DONE,O_GNOMES_SIGHT_DONE area_2_gnomes
|
||||||
|
end
|
||||||
|
```
|
||||||
|
|
||||||
|
#### Subgraph Styling Format
|
||||||
|
|
||||||
|
Use this exact format for subgraph titles to ensure proper font size:
|
||||||
|
|
||||||
|
```mermaid
|
||||||
|
subgraph area_name["<style>subgraphTitleTitle {font-size: 18px; font-weight: bold;}</style>Area Title"]
|
||||||
|
classDef area_X fill:#HEXCOLOR,stroke:#STROKECOLOR,stroke-width:2px
|
||||||
|
class node1,node2,node3 area_X
|
||||||
|
end
|
||||||
|
```
|
||||||
|
|
||||||
|
#### Color-Coded Areas (Index-Based)
|
||||||
|
|
||||||
Apply index-based palette:
|
Apply index-based palette:
|
||||||
|
|
||||||
| Index | Hex | Area Example |
|
| Index | Hex | Area Example |
|
||||||
|
|||||||
@@ -204,30 +204,60 @@ A_PAY_PAWN_BROKER_COIN --> O_FLUTE_UNLOCKED
|
|||||||
|
|
||||||
## Color Palette (Index-Based)
|
## Color Palette (Index-Based)
|
||||||
|
|
||||||
Use this fixed palette for area/subgraph coloring. Same area can appear multiple times at different logical points.
|
Use this fixed palette for area/subgraph coloring. Same area can appear multiple times at different logical points. Use the SAME color for repeated areas (e.g., Isle of Crown appears at start AND end with same color).
|
||||||
|
|
||||||
| Index | Hex | Sample |
|
| Index | Hex | Stroke | Area |
|
||||||
|-------|-----|--------|
|
|-------|-----|--------|------|
|
||||||
| 0 | `#FFFFFF` | Default/ungrouped |
|
| 1 | `#E3F2FD` | `#1976D2` | Isle of Crown |
|
||||||
| 1 | `#E3F2FD` | Light Blue |
|
| 2 | `#FFF3E0` | `#F57C00` | Isle of Wonder |
|
||||||
| 2 | `#FFF3E0` | Light Orange |
|
| 3 | `#F3E5F5` | `#7B1FA2` | Isle of Beast |
|
||||||
| 3 | `#F3E5F5` | Light Purple |
|
| 4 | `#E8F5E9` | `#388E3C` | Isle of Mists |
|
||||||
| 4 | `#E8F5E9` | Light Green |
|
| 5 | `#FFF8E1` | `#F9A825` | Sacred Mountain |
|
||||||
| 5 | `#FFF8E1` | Light Amber |
|
| 6 | `#FCE4EC` | `#C2185B` | Druid Island |
|
||||||
| 6 | `#FCE4EC` | Light Pink |
|
| 7 | `#E0F7FA` | `#00838F` | Realm of Dead |
|
||||||
| 7 | `#E0F7FA` | Light Cyan |
|
| 8 | `#F5F5F5` | `#616161` | Village |
|
||||||
| 8 | `#F5F5F5` | Light Grey |
|
|
||||||
|
|
||||||
### Applying Colors in Mermaid
|
### Applying Colors in Mermaid
|
||||||
|
|
||||||
```mermaid
|
```mermaid
|
||||||
subgraph "Isle of Wonder"["**Isle of Wonder**"]
|
subgraph "Isle of Wonder"["**Isle of Wonder**"]
|
||||||
classDef area2 fill:#FFF3E0,stroke:#FF9800,stroke-width:2px
|
classDef area2 fill:#FFF3E0,stroke:#F57C00,stroke-width:2px
|
||||||
class O_RECEIVE_NIGHTINGALE area2
|
class O_RECEIVE_NIGHTINGALE area2
|
||||||
class O_RECEIVE_MINT area2
|
class O_RECEIVE_MINT area2
|
||||||
end
|
end
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Fan-Out/Fan-In Flow Structure
|
||||||
|
|
||||||
|
Adventure game puzzles naturally follow a **fan-out/fan-in** pattern where:
|
||||||
|
1. START → Initial area (single path)
|
||||||
|
2. Initial area → Multiple parallel islands/branches (fan out)
|
||||||
|
3. Parallel branches converge at a meeting point
|
||||||
|
4. Meeting point → Final area (single path) → END
|
||||||
|
|
||||||
|
### Layout Template
|
||||||
|
|
||||||
|
```
|
||||||
|
START
|
||||||
|
↓
|
||||||
|
[ISLE OF CROWN - Beach & Village - Phase 1]
|
||||||
|
↓ (fan out to 4 parallel islands)
|
||||||
|
[ISLE OF WONDER] | [ISLE OF BEAST] | [ISLE OF MISTS] | [SACRED MOUNTAIN]
|
||||||
|
↓ (fan in)
|
||||||
|
[DRUID ISLE / REALM OF DEAD]
|
||||||
|
↓
|
||||||
|
[ISLE OF CROWN - Final] (REPEAT AREA with same color)
|
||||||
|
↓
|
||||||
|
END
|
||||||
|
```
|
||||||
|
|
||||||
|
### Validation
|
||||||
|
|
||||||
|
- [ ] START at top, END at bottom
|
||||||
|
- [ ] Fan-out from single path to parallel branches
|
||||||
|
- [ ] Fan-in from parallel branches to convergence point
|
||||||
|
- [ ] Repeated areas use SAME color throughout
|
||||||
|
|
||||||
## Known Acceptable False Positives
|
## Known Acceptable False Positives
|
||||||
|
|
||||||
The following are NOT errors:
|
The following are NOT errors:
|
||||||
|
|||||||
@@ -1,106 +1,117 @@
|
|||||||
flowchart TD
|
flowchart TD
|
||||||
%% =============================================================================
|
%% =============================================================================
|
||||||
%% STYLE DEFINITIONS - Modern, accessible colors with 4.5:1+ contrast
|
%% FONT SIZE - Set default for all nodes
|
||||||
|
%% =============================================================================
|
||||||
|
node[fontsize=18]
|
||||||
|
|
||||||
|
%% =============================================================================
|
||||||
|
%% COLOR PALETTE (index-based for repeat areas)
|
||||||
|
%% =============================================================================
|
||||||
|
%% area_1: #E3F2FD (light blue) - Isle of Crown
|
||||||
|
%% area_2: #FFF3E0 (light orange) - Isle of Wonder
|
||||||
|
%% area_3: #F3E5F5 (light purple) - Isle of Beast
|
||||||
|
%% area_4: #E8F5E9 (light green) - Isle of Mists
|
||||||
|
%% area_5: #FFF8E1 (light amber) - Sacred Mountain
|
||||||
|
%% area_6: #FCE4EC (light pink) - Druid Island
|
||||||
|
%% area_7: #E0F7FA (light cyan) - Realm of Dead
|
||||||
|
%% area_8: #F5F5F5 (light grey) - Village
|
||||||
|
|
||||||
|
%% =============================================================================
|
||||||
|
%% CLASS DEFINITIONS - Area colors with stroke
|
||||||
%% =============================================================================
|
%% =============================================================================
|
||||||
classDef start_end fill:#FFD700,stroke:#996600,stroke-width:3px,color:#000000
|
classDef start_end fill:#FFD700,stroke:#996600,stroke-width:3px,color:#000000
|
||||||
classDef problem fill:#FFB3B3,stroke:#8B0000,stroke-width:2px,color:#8B0000
|
classDef problem fill:#FFB3B3,stroke:#8B0000,stroke-width:2px,color:#8B0000
|
||||||
classDef action fill:#B3FFB3,stroke:#006400,stroke-width:2px,color:#006400
|
classDef action fill:#B3FFB3,stroke:#006400,stroke-width:2px,color:#006400
|
||||||
classDef outcome fill:#B3D9FF,stroke:#004080,stroke-width:2px,color:#004080
|
classDef outcome fill:#B3D9FF,stroke:#004080,stroke-width:2px,color:#004080
|
||||||
classDef area_ioc fill:#E6E6FF,stroke:#333399,stroke-width:2px
|
classDef area_1 fill:#E3F2FD,stroke:#1976D2,stroke-width:2px
|
||||||
classDef area_iow fill:#FFE6FF,stroke:#660066,stroke-width:2px
|
classDef area_2 fill:#FFF3E0,stroke:#F57C00,stroke-width:2px
|
||||||
classDef area_iob fill:#FFE6CC,stroke:#663300,stroke-width:2px
|
classDef area_3 fill:#F3E5F5,stroke:#7B1FA2,stroke-width:2px
|
||||||
classDef area_maze fill:#CCFFCC,stroke:#006633,stroke-width:2px
|
classDef area_4 fill:#E8F5E9,stroke:#388E3C,stroke-width:2px
|
||||||
classDef area_ism fill:#CCFFFF,stroke:#006666,stroke-width:2px
|
classDef area_5 fill:#FFF8E1,stroke:#F9A825,stroke-width:2px
|
||||||
classDef area_iom fill:#FFFFCC,stroke:#666600,stroke-width:2px
|
classDef area_6 fill:#FCE4EC,stroke:#C2185B,stroke-width:2px
|
||||||
classDef area_rod fill:#F0F0F0,stroke:#333333,stroke-width:2px
|
classDef area_7 fill:#E0F7FA,stroke:#00838F,stroke-width:2px
|
||||||
classDef area_castle fill:#FFD9CC,stroke:#663320,stroke-width:2px
|
classDef area_8 fill:#F5F5F5,stroke:#616161,stroke-width:2px
|
||||||
classDef area_final fill:#FFCCE6,stroke:#660033,stroke-width:2px
|
|
||||||
|
|
||||||
%% =============================================================================
|
%% =============================================================================
|
||||||
%% COLOR PALETTE (index-based for repeat areas)
|
%% START NODE
|
||||||
%% =============================================================================
|
|
||||||
%% 0: #FFFFFF (white - default/ungrouped)
|
|
||||||
%% 1: #E3F2FD (light blue - Isle of Crown)
|
|
||||||
%% 2: #FFF3E0 (light orange - Isle of Wonder)
|
|
||||||
%% 3: #F3E5F5 (light purple - Isle of Beast)
|
|
||||||
%% 4: #E8F5E9 (light green - Isle of Mists)
|
|
||||||
%% 5: #FFF8E1 (light amber - Sacred Mountain)
|
|
||||||
%% 6: #FCE4EC (light pink - Druid Island)
|
|
||||||
%% 7: #E0F7FA (light cyan - Realm of Dead)
|
|
||||||
%% 8: #F5F5F5 (light grey - Village)
|
|
||||||
|
|
||||||
%% =============================================================================
|
|
||||||
%% TOP: START NODE (only non-subgraph node besides END)
|
|
||||||
%% =============================================================================
|
%% =============================================================================
|
||||||
START(["START: Wake on Isle of the Crown Beach"])
|
START(["START: Wake on Isle of the Crown Beach"])
|
||||||
|
|
||||||
%% Beach - Item Collection (parallel independent actions)
|
%% =============================================================================
|
||||||
subgraph area_beach["Isle of the Crown - Beach"]
|
%% PHASE 1: ISLE OF CROWN - Beach, Castle Entry, Village
|
||||||
A_MOVE_PLANK["A: Move debris on beach"]
|
%% =============================================================================
|
||||||
O_RECEIVE_COPPER_COIN["O: Receive Copper Coin"]
|
subgraph area_1_initial["<style>subgraphTitleTitle {font-size: 18px; font-weight: bold;}</style>Isle of Crown - Beach & Village"]
|
||||||
A_EXAMINE_DEBRIS["A: Examine debris more closely"]
|
%% Beach - Item Collection
|
||||||
O_RECEIVE_ROYAL_RING["O: Receive Royal Insignia Ring"]
|
subgraph area_1_beach["<style>subgraphTitleTitle {font-size: 16px; font-style: italic;}</style>Beach"]
|
||||||
|
A_MOVE_PLANK["A: Move debris on beach"]
|
||||||
|
O_RECEIVE_COPPER_COIN["O: Receive Copper Coin"]
|
||||||
|
A_EXAMINE_DEBRIS["A: Examine debris more closely"]
|
||||||
|
O_RECEIVE_ROYAL_RING["O: Receive Royal Insignia Ring"]
|
||||||
|
|
||||||
A_MOVE_PLANK --> O_RECEIVE_COPPER_COIN
|
A_MOVE_PLANK --> O_RECEIVE_COPPER_COIN
|
||||||
A_EXAMINE_DEBRIS --> O_RECEIVE_ROYAL_RING
|
A_EXAMINE_DEBRIS --> O_RECEIVE_ROYAL_RING
|
||||||
|
end
|
||||||
|
|
||||||
|
%% Castle Entry - Guards
|
||||||
|
subgraph area_1_castle_entry["<style>subgraphTitleTitle {font-size: 16px; font-style: italic;}</style>Castle Entry"]
|
||||||
|
A_SHOW_RING_TO_GUARDS["A: Show Royal Ring to guards"]
|
||||||
|
C1["Consequence: Meet Vizier, then kicked out"]
|
||||||
|
end
|
||||||
|
|
||||||
|
O_RECEIVE_ROYAL_RING --> A_SHOW_RING_TO_GUARDS
|
||||||
|
A_SHOW_RING_TO_GUARDS --> C1
|
||||||
|
|
||||||
|
%% Village - Multiple Parallel Independent Paths
|
||||||
|
subgraph area_8_village["<style>subgraphTitleTitle {font-size: 16px; font-style: italic;}</style>Village"]
|
||||||
|
%% Pawn Shop - All items grouped under Village area_8
|
||||||
|
P_PROBLEM_PAWN_SHOP["Problem: Need items from Pawn Shop"]
|
||||||
|
A_TALK_TO_PAWN_BROKER["A: Talk to Pawn Shop broker"]
|
||||||
|
O_RECEIVE_NIGHTINGALE["O: Receive Mechanical Nightingale"]
|
||||||
|
O_RECEIVE_MINT["O: Receive Mint"]
|
||||||
|
O_RECEIVE_TINDERBOX["O: Receive Tinderbox"]
|
||||||
|
O_RECEIVE_FLUTE["O: Receive Flute"]
|
||||||
|
O_RECEIVE_PAINTBRUSH["O: Receive Paintbrush"]
|
||||||
|
O_RECEIVE_INK["O: Receive Invisible Ink Bottle"]
|
||||||
|
|
||||||
|
%% Magic Map Trade
|
||||||
|
P_PROBLEM_NEED_MAP["Problem: Cannot travel to other islands"]
|
||||||
|
A_TRADE_RING_FOR_MAP["A: Trade Royal Ring for Magic Map"]
|
||||||
|
O_RECEIVE_MAGIC_MAP["O: Receive Magic Map"]
|
||||||
|
|
||||||
|
%% Ferryman - Rabbit's Foot
|
||||||
|
P_PROBLEM_FERRYMAN["Problem: Need ferry info and items"]
|
||||||
|
A_TALK_TO_FERRYMAN["A: Talk to Ali the ferryman"]
|
||||||
|
O_RECEIVE_RABBIT_FOOT["O: Receive Rabbit's Foot"]
|
||||||
|
|
||||||
|
%% Jollo in Bookstore
|
||||||
|
P_PROBLEM_JOLLO["Problem: Need Jollo's help for story"]
|
||||||
|
A_TALK_TO_JOLLO["A: Talk to Jollo in Bookstore"]
|
||||||
|
O_RECEIVE_JOLLO_TRUST["O: Receive Jollo's trust"]
|
||||||
|
A_SHOW_RING_TO_JOLLO["A: Show Royal Ring to Jollo"]
|
||||||
|
|
||||||
|
%% Love Poem (optional)
|
||||||
|
A_SEARCH_BOOKSHELF["A: Search poetry bookshelf"]
|
||||||
|
O_RECEIVE_LOVE_POEM["O: Receive Love Poem"]
|
||||||
|
|
||||||
|
%% Ali's Bookstore - Rare Book trade
|
||||||
|
A_TRADE_RARE_BOOK_FOR_SPELL["A: Trade Rare Book to Ali"]
|
||||||
|
O_RECEIVE_SPELL_BOOK["O: Receive Spell Book"]
|
||||||
|
end
|
||||||
|
|
||||||
|
%% Class assignments for Village pawn shop items (area_8)
|
||||||
|
class O_RECEIVE_NIGHTINGALE,O_RECEIVE_MINT,O_RECEIVE_TINDERBOX,O_RECEIVE_FLUTE,O_RECEIVE_PAINTBRUSH,O_RECEIVE_INK area_8
|
||||||
end
|
end
|
||||||
|
|
||||||
START --> A_MOVE_PLANK
|
START --> A_MOVE_PLANK
|
||||||
START --> A_EXAMINE_DEBRIS
|
START --> A_EXAMINE_DEBRIS
|
||||||
|
|
||||||
%% Castle Entry - Guards
|
|
||||||
subgraph area_castle_entry["Isle of the Crown - Castle Entry"]
|
|
||||||
A_SHOW_RING_TO_GUARDS["A: Show Royal Ring to guards"]
|
|
||||||
C1["Consequence: Meet Vizier, then kicked out"]
|
|
||||||
end
|
|
||||||
|
|
||||||
O_RECEIVE_ROYAL_RING --> A_SHOW_RING_TO_GUARDS
|
|
||||||
A_SHOW_RING_TO_GUARDS --> C1
|
|
||||||
|
|
||||||
%% Village - Multiple Parallel Independent Paths
|
|
||||||
subgraph area_village["Isle of the Crown - Village"]
|
|
||||||
%% Pawn Shop - Locked Choice Mechanic (trade sequence)
|
|
||||||
P_PROBLEM_PAWN_SHOP["Problem: Need items from Pawn Shop"]
|
|
||||||
A_TALK_TO_PAWN_BROKER["A: Talk to Pawn Shop broker"]
|
|
||||||
O_RECEIVE_NIGHTINGALE["O: Receive Mechanical Nightingale"]
|
|
||||||
O_RECEIVE_MINT["O: Receive Mint"]
|
|
||||||
O_RECEIVE_TINDERBOX["O: Receive Tinderbox"]
|
|
||||||
O_RECEIVE_FLUTE["O: Receive Flute"]
|
|
||||||
O_RECEIVE_PAINTBRUSH["O: Receive Paintbrush"]
|
|
||||||
O_RECEIVE_INK["O: Receive Invisible Ink Bottle"]
|
|
||||||
|
|
||||||
%% Magic Map Trade
|
|
||||||
P_PROBLEM_NEED_MAP["Problem: Cannot travel to other islands"]
|
|
||||||
A_TRADE_RING_FOR_MAP["A: Trade Royal Ring for Magic Map"]
|
|
||||||
O_RECEIVE_MAGIC_MAP["O: Receive Magic Map"]
|
|
||||||
|
|
||||||
%% Ferryman - Rabbit's Foot
|
|
||||||
P_PROBLEM_FERRYMAN["Problem: Need ferry info and items"]
|
|
||||||
A_TALK_TO_FERRYMAN["A: Talk to Ali the ferryman"]
|
|
||||||
O_RECEIVE_RABBIT_FOOT["O: Receive Rabbit's Foot"]
|
|
||||||
|
|
||||||
%% Jollo in Bookstore
|
|
||||||
P_PROBLEM_JOLLO["Problem: Need Jollo's help for story"]
|
|
||||||
A_TALK_TO_JOLLO["A: Talk to Jollo in Bookstore"]
|
|
||||||
O_RECEIVE_JOLLO_TRUST["O: Receive Jollo's trust"]
|
|
||||||
A_SHOW_RING_TO_JOLLO["A: Show Royal Ring to Jollo"]
|
|
||||||
|
|
||||||
%% Love Poem (optional)
|
|
||||||
A_SEARCH_BOOKSHELF["A: Search poetry bookshelf"]
|
|
||||||
O_RECEIVE_LOVE_POEM["O: Receive Love Poem"]
|
|
||||||
|
|
||||||
%% Ali's Bookstore - Rare Book trade
|
|
||||||
A_TRADE_RARE_BOOK_FOR_SPELL["A: Trade Rare Book to Ali"]
|
|
||||||
O_RECEIVE_SPELL_BOOK["O: Receive Spell Book"]
|
|
||||||
end
|
|
||||||
|
|
||||||
C1 --> P_PROBLEM_PAWN_SHOP
|
C1 --> P_PROBLEM_PAWN_SHOP
|
||||||
C1 --> P_PROBLEM_NEED_MAP
|
C1 --> P_PROBLEM_NEED_MAP
|
||||||
C1 --> P_PROBLEM_FERRYMAN
|
C1 --> P_PROBLEM_FERRYMAN
|
||||||
C1 --> P_PROBLEM_JOLLO
|
C1 --> P_PROBLEM_JOLLO
|
||||||
C1 --> A_SEARCH_BOOKSHELF
|
C1 --> A_SEARCH_BOOKSHELF
|
||||||
|
|
||||||
%% Village - Parallel independent paths (S3, S4, S5, S6 in original)
|
%% Village - Parallel independent paths
|
||||||
P_PROBLEM_PAWN_SHOP --> A_TALK_TO_PAWN_BROKER
|
P_PROBLEM_PAWN_SHOP --> A_TALK_TO_PAWN_BROKER
|
||||||
A_TALK_TO_PAWN_BROKER --> O_RECEIVE_NIGHTINGALE
|
A_TALK_TO_PAWN_BROKER --> O_RECEIVE_NIGHTINGALE
|
||||||
A_TALK_TO_PAWN_BROKER --> O_RECEIVE_MINT
|
A_TALK_TO_PAWN_BROKER --> O_RECEIVE_MINT
|
||||||
@@ -123,9 +134,24 @@ flowchart TD
|
|||||||
A_SEARCH_BOOKSHELF --> O_RECEIVE_LOVE_POEM
|
A_SEARCH_BOOKSHELF --> O_RECEIVE_LOVE_POEM
|
||||||
|
|
||||||
%% =============================================================================
|
%% =============================================================================
|
||||||
%% PHASE 2: Isle of Wonder - Five Senses Gnomes
|
%% FAN-OUT: Magic Map unlocks travel to 4 parallel islands
|
||||||
%% =============================================================================
|
%% =============================================================================
|
||||||
subgraph area_iow_gnomes["Isle of Wonder - Five Senses Gnomes"]
|
O_RECEIVE_MAGIC_MAP --> UNLOCK_ISLAND_TRAVEL["UNLOCK: Island Travel"]
|
||||||
|
UNLOCK_ISLAND_TRAVEL --> P_PROBLEM_GNOMES
|
||||||
|
UNLOCK_ISLAND_TRAVEL --> P_PROBLEM_BOILING_POOL
|
||||||
|
UNLOCK_ISLAND_TRAVEL --> P_PROBLEM_LOGIC_CLIFFS
|
||||||
|
|
||||||
|
O_RECEIVE_NIGHTINGALE --> UNLOCK_GNOME_ACCESS["UNLOCK: Gnome Access"]
|
||||||
|
O_RECEIVE_MINT --> UNLOCK_GNOME_ACCESS
|
||||||
|
O_RECEIVE_RABBIT_FOOT --> UNLOCK_GNOME_ACCESS
|
||||||
|
O_RECEIVE_INK --> UNLOCK_GNOME_ACCESS
|
||||||
|
O_RECEIVE_STINKY_FLOWER --> UNLOCK_GNOME_ACCESS
|
||||||
|
UNLOCK_GNOME_ACCESS --> P_PROBLEM_GNOMES
|
||||||
|
|
||||||
|
%% =============================================================================
|
||||||
|
%% ISLE OF WONDER - Five Senses Gnomes (area_2)
|
||||||
|
%% =============================================================================
|
||||||
|
subgraph area_2_gnomes["<style>subgraphTitleTitle {font-size: 18px; font-weight: bold;}</style>Isle of Wonder - Five Senses Gnomes"]
|
||||||
P_PROBLEM_GNOMES["Problem: Five gnomes block path north"]
|
P_PROBLEM_GNOMES["Problem: Five gnomes block path north"]
|
||||||
|
|
||||||
A_GIVE_STINKY_FLOWER["A: Give Flower of Stench to Smell gnome"]
|
A_GIVE_STINKY_FLOWER["A: Give Flower of Stench to Smell gnome"]
|
||||||
@@ -144,17 +170,9 @@ flowchart TD
|
|||||||
O_GNOMES_SIGHT_DONE["O: Sight gnome satisfied"]
|
O_GNOMES_SIGHT_DONE["O: Sight gnome satisfied"]
|
||||||
end
|
end
|
||||||
|
|
||||||
O_RECEIVE_MAGIC_MAP --> UNLOCK_ISLAND_TRAVEL["UNLOCK: Island Travel"]
|
%% Class assignments for gnome outcomes (area_2)
|
||||||
UNLOCK_ISLAND_TRAVEL --> P_PROBLEM_GNOMES
|
class O_GNOMES_SMELL_DONE,O_GNOMES_HEARING_DONE,O_GNOMES_TASTE_DONE,O_GNOMES_TOUCH_DONE,O_GNOMES_SIGHT_DONE area_2
|
||||||
UNLOCK_ISLAND_TRAVEL --> P_PROBLEM_BOILING_POOL
|
|
||||||
UNLOCK_ISLAND_TRAVEL --> P_PROBLEM_LOGIC_CLIFFS
|
|
||||||
|
|
||||||
O_RECEIVE_NIGHTINGALE --> UNLOCK_GNOME_ACCESS["UNLOCK: Gnome Access"]
|
|
||||||
O_RECEIVE_MINT --> UNLOCK_GNOME_ACCESS
|
|
||||||
O_RECEIVE_RABBIT_FOOT --> UNLOCK_GNOME_ACCESS
|
|
||||||
O_RECEIVE_INK --> UNLOCK_GNOME_ACCESS
|
|
||||||
O_RECEIVE_STINKY_FLOWER --> UNLOCK_GNOME_ACCESS
|
|
||||||
UNLOCK_GNOME_ACCESS --> P_PROBLEM_GNOMES
|
|
||||||
P_PROBLEM_GNOMES --> A_PLAY_NIGHTINGALE
|
P_PROBLEM_GNOMES --> A_PLAY_NIGHTINGALE
|
||||||
P_PROBLEM_GNOMES --> A_GIVE_MINT
|
P_PROBLEM_GNOMES --> A_GIVE_MINT
|
||||||
P_PROBLEM_GNOMES --> A_GIVE_RABBIT_FOOT
|
P_PROBLEM_GNOMES --> A_GIVE_RABBIT_FOOT
|
||||||
@@ -168,21 +186,21 @@ flowchart TD
|
|||||||
A_USE_INK_ON_SELF --> O_GNOMES_SIGHT_DONE
|
A_USE_INK_ON_SELF --> O_GNOMES_SIGHT_DONE
|
||||||
|
|
||||||
%% Isle of Wonder Beach - Oyster Pearl (INDEPENDENT of gnomes)
|
%% Isle of Wonder Beach - Oyster Pearl (INDEPENDENT of gnomes)
|
||||||
subgraph area_iow_beach["Isle of Wonder - Beach (independent)"]
|
subgraph area_2_beach["<style>subgraphTitleTitle {font-size: 16px; font-style: italic;}</style>Isle of Wonder - Beach"]
|
||||||
A_READ_BOOK_TO_OYSTER["A: Read Boring Book to Oyster"]
|
A_READ_BOOK_TO_OYSTER["A: Read Boring Book to Oyster"]
|
||||||
O_RECEIVE_PEARL["O: Receive Pearl"]
|
O_RECEIVE_PEARL["O: Receive Pearl"]
|
||||||
end
|
end
|
||||||
|
|
||||||
O_RECEIVE_PEARL --> O_RECEIVE_ROYAL_RING
|
|
||||||
|
|
||||||
O_GNOMES_SMELL_DONE & O_GNOMES_HEARING_DONE & O_GNOMES_TASTE_DONE & O_GNOMES_TOUCH_DONE & O_GNOMES_SIGHT_DONE --> C2["Path through gnomes now open"]
|
O_GNOMES_SMELL_DONE & O_GNOMES_HEARING_DONE & O_GNOMES_TASTE_DONE & O_GNOMES_TOUCH_DONE & O_GNOMES_SIGHT_DONE --> C2["Path through gnomes now open"]
|
||||||
C2 --> A_READ_BOOK_TO_OYSTER
|
C2 --> A_READ_BOOK_TO_OYSTER
|
||||||
A_READ_BOOK_TO_OYSTER --> O_RECEIVE_PEARL
|
A_READ_BOOK_TO_OYSTER --> O_RECEIVE_PEARL
|
||||||
|
|
||||||
|
O_RECEIVE_PEARL --> O_RECEIVE_ROYAL_RING
|
||||||
|
|
||||||
%% =============================================================================
|
%% =============================================================================
|
||||||
%% PHASE 3: Isle of Wonder - Garden, Chessboard, Point
|
%% ISLE OF WONDER - Garden, Chessboard, Point (area_2)
|
||||||
%% =============================================================================
|
%% =============================================================================
|
||||||
subgraph area_iow_garden["Isle of Wonder - Garden"]
|
subgraph area_2_garden["<style>subgraphTitleTitle {font-size: 16px; font-style: italic;}</style>Isle of Wonder - Garden"]
|
||||||
A_PLAY_FLUTE_FLOWERS["A: Play Flute for shy flowers"]
|
A_PLAY_FLUTE_FLOWERS["A: Play Flute for shy flowers"]
|
||||||
O_RECEIVE_HOLE_IN_WALL["O: Receive Hole-in-the-Wall"]
|
O_RECEIVE_HOLE_IN_WALL["O: Receive Hole-in-the-Wall"]
|
||||||
|
|
||||||
@@ -222,7 +240,7 @@ flowchart TD
|
|||||||
O_RECEIVE_ROTTEN_TOMATO --> A_GIVE_ROTTEN_TOMATO
|
O_RECEIVE_ROTTEN_TOMATO --> A_GIVE_ROTTEN_TOMATO
|
||||||
A_GIVE_ROTTEN_TOMATO --> O_RECEIVE_SWAMP_OOZE
|
A_GIVE_ROTTEN_TOMATO --> O_RECEIVE_SWAMP_OOZE
|
||||||
|
|
||||||
subgraph area_iow_chessboard["Isle of Wonder - Chessboard Land"]
|
subgraph area_2_chessboard["<style>subgraphTitleTitle {font-size: 16px; font-style: italic;}</style>Isle of Wonder - Chessboard Land"]
|
||||||
A_TALK_TO_QUEENS["A: Talk to Chessboard queens"]
|
A_TALK_TO_QUEENS["A: Talk to Chessboard queens"]
|
||||||
O_RECEIVE_RED_SCARF["O: Receive Red Scarf"]
|
O_RECEIVE_RED_SCARF["O: Receive Red Scarf"]
|
||||||
O_RECEIVE_LUMP_OF_COAL["O: Receive Lump of Coal"]
|
O_RECEIVE_LUMP_OF_COAL["O: Receive Lump of Coal"]
|
||||||
@@ -236,7 +254,7 @@ flowchart TD
|
|||||||
O_RECEIVE_LUMP_OF_COAL --> A_TRADE_COAL_FOR_EGG
|
O_RECEIVE_LUMP_OF_COAL --> A_TRADE_COAL_FOR_EGG
|
||||||
A_TRADE_COAL_FOR_EGG --> O_RECEIVE_SULFUR_EGG
|
A_TRADE_COAL_FOR_EGG --> O_RECEIVE_SULFUR_EGG
|
||||||
|
|
||||||
subgraph area_iow_point["Isle of Wonder - Point / Book Garden"]
|
subgraph area_2_point["<style>subgraphTitleTitle {font-size: 16px; font-style: italic;}</style>Isle of Wonder - Point / Book Garden"]
|
||||||
A_PULL_THREAD["A: Pull thread from spider web"]
|
A_PULL_THREAD["A: Pull thread from spider web"]
|
||||||
O_RECEIVE_LOVE_WORD["O: Receive word 'LOVE' (for Gate riddle)"]
|
O_RECEIVE_LOVE_WORD["O: Receive word 'LOVE' (for Gate riddle)"]
|
||||||
O_RECEIVE_SPIDER_WEB["O: Receive Spider Web Paper"]
|
O_RECEIVE_SPIDER_WEB["O: Receive Spider Web Paper"]
|
||||||
@@ -260,9 +278,9 @@ flowchart TD
|
|||||||
A_TRADE_RARE_BOOK_FOR_SPELL --> O_RECEIVE_SPELL_BOOK
|
A_TRADE_RARE_BOOK_FOR_SPELL --> O_RECEIVE_SPELL_BOOK
|
||||||
|
|
||||||
%% =============================================================================
|
%% =============================================================================
|
||||||
%% PHASE 4: Isle of the Beast - Initial Visit
|
%% ISLE OF THE BEAST - Initial Visit (area_3)
|
||||||
%% =============================================================================
|
%% =============================================================================
|
||||||
subgraph area_iob_initial["Isle of the Beast - Initial Visit"]
|
subgraph area_3_initial["<style>subgraphTitleTitle {font-size: 18px; font-weight: bold;}</style>Isle of the Beast - Initial Visit"]
|
||||||
P_PROBLEM_BOILING_POOL["Problem: Boiling pool blocks crossing"]
|
P_PROBLEM_BOILING_POOL["Problem: Boiling pool blocks crossing"]
|
||||||
A_COOL_POOL["A: Use Iceberg Lettuce on pool"]
|
A_COOL_POOL["A: Use Iceberg Lettuce on pool"]
|
||||||
C3["Path to north area now open"]
|
C3["Path to north area now open"]
|
||||||
@@ -288,9 +306,9 @@ flowchart TD
|
|||||||
A_GET_DANGLING_PARTICIPLE --> O_RECEIVE_DANGLING_PARTICIPLE
|
A_GET_DANGLING_PARTICIPLE --> O_RECEIVE_DANGLING_PARTICIPLE
|
||||||
|
|
||||||
%% =============================================================================
|
%% =============================================================================
|
||||||
%% PHASE 5: Minotaur's Maze / Catacombs
|
%% MINOTAUR'S MAZE (area_3 - part of Isle of Beast)
|
||||||
%% =============================================================================
|
%% =============================================================================
|
||||||
subgraph area_maze_l1["Minotaur's Maze - Level 1"]
|
subgraph area_3_maze_l1["<style>subgraphTitleTitle {font-size: 16px; font-style: italic;}</style>Minotaur's Maze - Level 1"]
|
||||||
P_PROBLEM_MAZE_L1["Problem: Navigate maze to find items"]
|
P_PROBLEM_MAZE_L1["Problem: Navigate maze to find items"]
|
||||||
A_SOLVE_TILE_PUZZLE["A: Solve tile puzzle (use manual)"]
|
A_SOLVE_TILE_PUZZLE["A: Solve tile puzzle (use manual)"]
|
||||||
O_MAZE_PATH_OPEN["O: Tile path opens"]
|
O_MAZE_PATH_OPEN["O: Tile path opens"]
|
||||||
@@ -314,7 +332,7 @@ flowchart TD
|
|||||||
A_NAVIGATE_TO_SKELETON --> O_RECEIVE_SKULL
|
A_NAVIGATE_TO_SKELETON --> O_RECEIVE_SKULL
|
||||||
A_COLLECT_COINS --> O_RECEIVE_COINS
|
A_COLLECT_COINS --> O_RECEIVE_COINS
|
||||||
|
|
||||||
subgraph area_maze_l2["Minotaur's Maze - Level 2 (Dark)"]
|
subgraph area_3_maze_l2["<style>subgraphTitleTitle {font-size: 16px; font-style: italic;}</style>Minotaur's Maze - Level 2 (Dark)"]
|
||||||
P_PROBLEM_DARK_L2["Problem: Cannot see in dark passage"]
|
P_PROBLEM_DARK_L2["Problem: Cannot see in dark passage"]
|
||||||
A_LIGHT_TINDERBOX["A: Light Tinderbox to see"]
|
A_LIGHT_TINDERBOX["A: Light Tinderbox to see"]
|
||||||
P_PROBLEM_DARK_L2 --> A_LIGHT_TINDERBOX
|
P_PROBLEM_DARK_L2 --> A_LIGHT_TINDERBOX
|
||||||
@@ -338,7 +356,7 @@ flowchart TD
|
|||||||
O_CAN_SEE --> A_FIND_SHIELD
|
O_CAN_SEE --> A_FIND_SHIELD
|
||||||
A_FIND_SHIELD --> O_RECEIVE_SHIELD
|
A_FIND_SHIELD --> O_RECEIVE_SHIELD
|
||||||
|
|
||||||
subgraph area_maze_lair["Minotaur's Lair"]
|
subgraph area_3_maze_lair["<style>subgraphTitleTitle {font-size: 16px; font-style: italic;}</style>Minotaur's Lair"]
|
||||||
P_PROBLEM_MINOTAUR["Problem: Minotaur blocks exit"]
|
P_PROBLEM_MINOTAUR["Problem: Minotaur blocks exit"]
|
||||||
A_LURE_MINOTAUR["A: Lure Minotaur with Red Scarf"]
|
A_LURE_MINOTAUR["A: Lure Minotaur with Red Scarf"]
|
||||||
O_RECEIVE_DAGGER["O: Receive Dagger"]
|
O_RECEIVE_DAGGER["O: Receive Dagger"]
|
||||||
@@ -354,15 +372,15 @@ flowchart TD
|
|||||||
A_LURE_MINOTAUR --> O_RECEIVE_SACRED_WATER
|
A_LURE_MINOTAUR --> O_RECEIVE_SACRED_WATER
|
||||||
A_LURE_MINOTAUR --> O_RECEIVE_ORACLE_VIAL
|
A_LURE_MINOTAUR --> O_RECEIVE_ORACLE_VIAL
|
||||||
|
|
||||||
%% Parallel paths after maze - S23/S24 are PARALLEL, S20/S21 are PARALLEL
|
%% Parallel paths after maze
|
||||||
O_MAZE_PATH_OPEN & O_RECEIVE_SKULL & O_RECEIVE_COINS & O_TRAP_STOPPED --> A_NAVIGATE_TO_SKELETON
|
O_MAZE_PATH_OPEN & O_RECEIVE_SKULL & O_RECEIVE_COINS & O_TRAP_STOPPED --> A_NAVIGATE_TO_SKELETON
|
||||||
A_NAVIGATE_TO_SKELETON --> O_NAVIGATE_MAZE["O: Maze navigated, shield found"]
|
A_NAVIGATE_TO_SKELETON --> O_NAVIGATE_MAZE["O: Maze navigated, shield found"]
|
||||||
O_NAVIGATE_MAZE --> P_PROBLEM_DARK_L2
|
O_NAVIGATE_MAZE --> P_PROBLEM_DARK_L2
|
||||||
|
|
||||||
%% =============================================================================
|
%% =============================================================================
|
||||||
%% PHASE 6: Isle of the Beast - Return Visit (with Shield)
|
%% ISLE OF THE BEAST - Return Visit with Shield (area_3)
|
||||||
%% =============================================================================
|
%% =============================================================================
|
||||||
subgraph area_iob_return["Isle of the Beast - Return Visit"]
|
subgraph area_3_return["<style>subgraphTitleTitle {font-size: 18px; font-weight: bold;}</style>Isle of the Beast - Return Visit"]
|
||||||
P_PROBLEM_ARCHER["Problem: Archer statue kills you"]
|
P_PROBLEM_ARCHER["Problem: Archer statue kills you"]
|
||||||
A_USE_SHIELD_STATUE["A: Use Shield to block arrows"]
|
A_USE_SHIELD_STATUE["A: Use Shield to block arrows"]
|
||||||
C4["Safe passage through archer gate"]
|
C4["Safe passage through archer gate"]
|
||||||
@@ -382,7 +400,7 @@ flowchart TD
|
|||||||
A_CUT_HEDGE --> C5
|
A_CUT_HEDGE --> C5
|
||||||
|
|
||||||
%% Beast's Domain
|
%% Beast's Domain
|
||||||
subgraph area_beast_domain["Isle of the Beast - Beast's Domain"]
|
subgraph area_3_beast_domain["<style>subgraphTitleTitle {font-size: 16px; font-style: italic;}</style>Beast's Domain"]
|
||||||
P_PROBLEM_MEET_BEAST["Problem: Need to meet Beast"]
|
P_PROBLEM_MEET_BEAST["Problem: Need to meet Beast"]
|
||||||
A_GIVE_WHITE_ROSE["A: Give White Rose to Beauty"]
|
A_GIVE_WHITE_ROSE["A: Give White Rose to Beauty"]
|
||||||
O_BEAUTY_TRUSTS["O: Beauty's trust gained"]
|
O_BEAUTY_TRUSTS["O: Beauty's trust gained"]
|
||||||
@@ -408,9 +426,9 @@ flowchart TD
|
|||||||
O_RECEIVE_WHITE_ROSE_2 --> O_JOLLO_HELPS
|
O_RECEIVE_WHITE_ROSE_2 --> O_JOLLO_HELPS
|
||||||
|
|
||||||
%% =============================================================================
|
%% =============================================================================
|
||||||
%% PHASE 7: Isle of Sacred Mountain
|
%% SACRED MOUNTAIN (area_5)
|
||||||
%% =============================================================================
|
%% =============================================================================
|
||||||
subgraph area_ism_cliffs["Isle of Sacred Mountain - Logic Cliffs"]
|
subgraph area_5_cliffs["<style>subgraphTitleTitle {font-size: 18px; font-weight: bold;}</style>Isle of Sacred Mountain - Logic Cliffs"]
|
||||||
P_PROBLEM_LOGIC_CLIFFS["Problem: Copy protection puzzles block summit"]
|
P_PROBLEM_LOGIC_CLIFFS["Problem: Copy protection puzzles block summit"]
|
||||||
A_SOLVE_CLIFF_PUZZLES["A: Solve 5 cliff puzzles (manual required)"]
|
A_SOLVE_CLIFF_PUZZLES["A: Solve 5 cliff puzzles (manual required)"]
|
||||||
C6["Path to clifftop opens"]
|
C6["Path to clifftop opens"]
|
||||||
@@ -430,7 +448,7 @@ flowchart TD
|
|||||||
C6 --> A_GET_STINKY_FLOWER
|
C6 --> A_GET_STINKY_FLOWER
|
||||||
A_GET_STINKY_FLOWER --> O_RECEIVE_STINKY_FLOWER
|
A_GET_STINKY_FLOWER --> O_RECEIVE_STINKY_FLOWER
|
||||||
|
|
||||||
subgraph area_ism_clifftop["Isle of Sacred Mountain - Clifftop & Cave"]
|
subgraph area_5_clifftop["<style>subgraphTitleTitle {font-size: 16px; font-style: italic;}</style>Sacred Mountain - Clifftop & Cave"]
|
||||||
P_PROBLEM_DARK_CAVE["Problem: Dark cave blocks path"]
|
P_PROBLEM_DARK_CAVE["Problem: Dark cave blocks path"]
|
||||||
A_LIGHT_CAVE["A: Light way with Tinderbox"]
|
A_LIGHT_CAVE["A: Light way with Tinderbox"]
|
||||||
O_RECEIVE_PEPPERMINT["O: Receive Peppermint Leaves"]
|
O_RECEIVE_PEPPERMINT["O: Receive Peppermint Leaves"]
|
||||||
@@ -452,7 +470,7 @@ flowchart TD
|
|||||||
O_SURVIVED --> A_RIDE_NIGHTMARE
|
O_SURVIVED --> A_RIDE_NIGHTMARE
|
||||||
|
|
||||||
%% Winged Ones
|
%% Winged Ones
|
||||||
subgraph area_ism_winged["Isle of Sacred Mountain - Winged Ones"]
|
subgraph area_5_winged["<style>subgraphTitleTitle {font-size: 16px; font-style: italic;}</style>Sacred Mountain - Winged Ones"]
|
||||||
P_PROBLEM_SPELL_COMPONENTS["Problem: Need spell components for Night Mare"]
|
P_PROBLEM_SPELL_COMPONENTS["Problem: Need spell components for Night Mare"]
|
||||||
A_COLLECT_COMPONENTS["A: Gather Ember, Hair, Spoiled Egg"]
|
A_COLLECT_COMPONENTS["A: Gather Ember, Hair, Spoiled Egg"]
|
||||||
O_SPELL_READY["O: Charm Creatures spell ready"]
|
O_SPELL_READY["O: Charm Creatures spell ready"]
|
||||||
@@ -482,9 +500,13 @@ flowchart TD
|
|||||||
A_CAST_CHARM_SPELL --> O_NIGHTMARE_MOUNT
|
A_CAST_CHARM_SPELL --> O_NIGHTMARE_MOUNT
|
||||||
|
|
||||||
%% =============================================================================
|
%% =============================================================================
|
||||||
%% PHASE 8: Isle of the Mists - Druids
|
%% FAN-IN: Convergence from parallel paths
|
||||||
%% =============================================================================
|
%% =============================================================================
|
||||||
subgraph area_iom["Isle of the Mists - Druids"]
|
|
||||||
|
%% =============================================================================
|
||||||
|
%% ISLE OF THE MISTS - Druids (area_4 + area_6)
|
||||||
|
%% =============================================================================
|
||||||
|
subgraph area_4_iom["<style>subgraphTitleTitle {font-size: 18px; font-weight: bold;}</style>Isle of the Mists - Druids"]
|
||||||
P_PROBLEM_DRUIDS["Problem: Druids will burn you without protection"]
|
P_PROBLEM_DRUIDS["Problem: Druids will burn you without protection"]
|
||||||
A_CAST_RAIN_SPELL["A: Cast Rain Spell (Baby's Tears + Milk + Hunter's Lamp)"]
|
A_CAST_RAIN_SPELL["A: Cast Rain Spell (Baby's Tears + Milk + Hunter's Lamp)"]
|
||||||
O_RAIN_PROTECTION["O: Rain protection active"]
|
O_RAIN_PROTECTION["O: Rain protection active"]
|
||||||
@@ -513,9 +535,9 @@ flowchart TD
|
|||||||
O_RECEIVE_COAL_IOM --> A_TRADE_COAL_FOR_EGG
|
O_RECEIVE_COAL_IOM --> A_TRADE_COAL_FOR_EGG
|
||||||
|
|
||||||
%% =============================================================================
|
%% =============================================================================
|
||||||
%% PHASE 9: Realm of the Dead
|
%% REALM OF THE DEAD (area_7)
|
||||||
%% =============================================================================
|
%% =============================================================================
|
||||||
subgraph area_rod_landing["Realm of the Dead - Landing Point"]
|
subgraph area_7_rod_landing["<style>subgraphTitleTitle {font-size: 18px; font-weight: bold;}</style>Realm of the Dead - Landing Point"]
|
||||||
P_PROBLEM_ENTER_ROD["Problem: Need to reach Land of the Dead"]
|
P_PROBLEM_ENTER_ROD["Problem: Need to reach Land of the Dead"]
|
||||||
A_RIDE_NIGHTMARE["A: Ride Nightmare horse"]
|
A_RIDE_NIGHTMARE["A: Ride Nightmare horse"]
|
||||||
C7["Arrive at Land of the Dead"]
|
C7["Arrive at Land of the Dead"]
|
||||||
@@ -532,7 +554,7 @@ flowchart TD
|
|||||||
P_PROBLEM_ZOMBIES --> A_AVOID_ZOMBIES
|
P_PROBLEM_ZOMBIES --> A_AVOID_ZOMBIES
|
||||||
A_AVOID_ZOMBIES --> O_ZOMBIES_PASSED
|
A_AVOID_ZOMBIES --> O_ZOMBIES_PASSED
|
||||||
|
|
||||||
subgraph area_rod_pathway["Realm of the Dead - Pathway"]
|
subgraph area_7_rod_pathway["<style>subgraphTitleTitle {font-size: 16px; font-style: italic;}</style>Realm of the Dead - Pathway"]
|
||||||
A_TALK_TO_CASSIMA_PARENTS["A: Talk to Cassima's parents"]
|
A_TALK_TO_CASSIMA_PARENTS["A: Talk to Cassima's parents"]
|
||||||
O_RECEIVE_TICKET["O: Receive Ticket to Underworld"]
|
O_RECEIVE_TICKET["O: Receive Ticket to Underworld"]
|
||||||
|
|
||||||
@@ -546,7 +568,7 @@ flowchart TD
|
|||||||
A_TALK_TO_GHOST_MOTHER --> O_RECEIVE_HANKERCHIEF
|
A_TALK_TO_GHOST_MOTHER --> O_RECEIVE_HANKERCHIEF
|
||||||
O_RECEIVE_HANKERCHIEF --> A_TALK_TO_GHOST_BOY
|
O_RECEIVE_HANKERCHIEF --> A_TALK_TO_GHOST_BOY
|
||||||
|
|
||||||
subgraph area_rod_gate["Realm of the Dead - Gate"]
|
subgraph area_7_rod_gate["<style>subgraphTitleTitle {font-size: 16px; font-style: italic;}</style>Realm of the Dead - Gate"]
|
||||||
P_PROBLEM_GATE["Problem: Need ticket for underworld"]
|
P_PROBLEM_GATE["Problem: Need ticket for underworld"]
|
||||||
A_GIVE_TICKET["A: Give ticket to skeleton gatekeeper"]
|
A_GIVE_TICKET["A: Give ticket to skeleton gatekeeper"]
|
||||||
C8["Gate to Styx opens"]
|
C8["Gate to Styx opens"]
|
||||||
@@ -570,7 +592,7 @@ flowchart TD
|
|||||||
A_PAY_CHARON --> O_FERRY_ACCESS
|
A_PAY_CHARON --> O_FERRY_ACCESS
|
||||||
O_FERRY_ACCESS --> A_RIDE_NIGHTMARE
|
O_FERRY_ACCESS --> A_RIDE_NIGHTMARE
|
||||||
|
|
||||||
subgraph area_rod_styx["Realm of the Dead - River Styx"]
|
subgraph area_7_rod_styx["<style>subgraphTitleTitle {font-size: 16px; font-style: italic;}</style>Realm of the Dead - River Styx"]
|
||||||
P_PROBLEM_STYX["Problem: Need Styx Water for paint spell"]
|
P_PROBLEM_STYX["Problem: Need Styx Water for paint spell"]
|
||||||
A_COLLECT_STYX_WATER["A: Collect Styx Water with Tea Cup"]
|
A_COLLECT_STYX_WATER["A: Collect Styx Water with Tea Cup"]
|
||||||
O_RECEIVE_STYX_WATER["O: Receive Styx Water"]
|
O_RECEIVE_STYX_WATER["O: Receive Styx Water"]
|
||||||
@@ -586,7 +608,7 @@ flowchart TD
|
|||||||
A_SEARCH_KNIGHT --> O_RECEIVE_GAUNTLET
|
A_SEARCH_KNIGHT --> O_RECEIVE_GAUNTLET
|
||||||
O_RECEIVE_GAUNTLET --> P_PROBLEM_DEATH
|
O_RECEIVE_GAUNTLET --> P_PROBLEM_DEATH
|
||||||
|
|
||||||
subgraph area_rod_throne["Realm of the Dead - Talking Gate & Throne"]
|
subgraph area_7_rod_throne["<style>subgraphTitleTitle {font-size: 16px; font-style: italic;}</style>Realm of the Dead - Talking Gate & Throne"]
|
||||||
P_PROBLEM_GATE_RIDDLE["Problem: Gate asks riddle"]
|
P_PROBLEM_GATE_RIDDLE["Problem: Gate asks riddle"]
|
||||||
A_ANSWER_LOVE["A: Answer 'LOVE' (from spider web)"]
|
A_ANSWER_LOVE["A: Answer 'LOVE' (from spider web)"]
|
||||||
C9["Gate opens to Death's domain"]
|
C9["Gate opens to Death's domain"]
|
||||||
@@ -606,9 +628,13 @@ flowchart TD
|
|||||||
C10 --> C_RETURN["Return to Isle of the Crown Beach"]
|
C10 --> C_RETURN["Return to Isle of the Crown Beach"]
|
||||||
|
|
||||||
%% =============================================================================
|
%% =============================================================================
|
||||||
%% PHASE 10: Castle Infiltration
|
%% FAN-OUT: Return to Isle of Crown for final phase
|
||||||
%% =============================================================================
|
%% =============================================================================
|
||||||
subgraph area_castle_approach["Castle Infiltration - Two Paths Converge"]
|
|
||||||
|
%% =============================================================================
|
||||||
|
%% ISLE OF CROWN - Final Phase / Castle Infiltration (area_1)
|
||||||
|
%% =============================================================================
|
||||||
|
subgraph area_1_final_approach["<style>subgraphTitleTitle {font-size: 18px; font-weight: bold;}</style>Isle of Crown - Castle Infiltration"]
|
||||||
P_PROBLEM_ENTER_CASTLE["Problem: Cannot enter castle normally"]
|
P_PROBLEM_ENTER_CASTLE["Problem: Cannot enter castle normally"]
|
||||||
|
|
||||||
%% Long Path - Paint Door
|
%% Long Path - Paint Door
|
||||||
@@ -631,7 +657,7 @@ flowchart TD
|
|||||||
O_RECEIVE_BEAUTYS_DRESS --> A_WEAR_DISGUISE
|
O_RECEIVE_BEAUTYS_DRESS --> A_WEAR_DISGUISE
|
||||||
A_WEAR_DISGUISE --> O_CASTLE_ACCESS
|
A_WEAR_DISGUISE --> O_CASTLE_ACCESS
|
||||||
|
|
||||||
subgraph area_castle_basement["Castle - Basement / Cells"]
|
subgraph area_1_basement["<style>subgraphTitleTitle {font-size: 16px; font-style: italic;}</style>Castle - Basement / Cells"]
|
||||||
P_PROBLEM_GUARDS["Problem: Guards patrol basement"]
|
P_PROBLEM_GUARDS["Problem: Guards patrol basement"]
|
||||||
A_DISTRACT_GUARDS["A: Use Nightingale to distract guards"]
|
A_DISTRACT_GUARDS["A: Use Nightingale to distract guards"]
|
||||||
O_GUARDS_DISTRACTED["O: Guards distracted"]
|
O_GUARDS_DISTRACTED["O: Guards distracted"]
|
||||||
@@ -654,7 +680,7 @@ flowchart TD
|
|||||||
A_TALK_TO_GHOST_BOY --> O_RECEIVE_PASSAGE_HINT
|
A_TALK_TO_GHOST_BOY --> O_RECEIVE_PASSAGE_HINT
|
||||||
O_RECEIVE_PASSAGE_HINT --> P_PROBLEM_PASSWORD
|
O_RECEIVE_PASSAGE_HINT --> P_PROBLEM_PASSWORD
|
||||||
|
|
||||||
subgraph area_castle_passage["Castle - Secret Passage"]
|
subgraph area_1_passage["<style>subgraphTitleTitle {font-size: 16px; font-style: italic;}</style>Castle - Secret Passage"]
|
||||||
P_PROBLEM_PASSWORD["Problem: Need password to proceed"]
|
P_PROBLEM_PASSWORD["Problem: Need password to proceed"]
|
||||||
A_FIND_ALI_PASSWORD["A: Eavesdrop to learn 'ALI'"]
|
A_FIND_ALI_PASSWORD["A: Eavesdrop to learn 'ALI'"]
|
||||||
A_FIND_ZEBU_PASSWORD["A: Spy on Vizier to learn 'ZEBU'"]
|
A_FIND_ZEBU_PASSWORD["A: Spy on Vizier to learn 'ZEBU'"]
|
||||||
@@ -679,7 +705,7 @@ flowchart TD
|
|||||||
O_RECEIVE_DAGGER --> A_GIVE_DAGGER
|
O_RECEIVE_DAGGER --> A_GIVE_DAGGER
|
||||||
A_GIVE_DAGGER --> O_CASSIMA_ARMED
|
A_GIVE_DAGGER --> O_CASSIMA_ARMED
|
||||||
|
|
||||||
subgraph area_castle_vizier["Castle - Vizier's Bedroom"]
|
subgraph area_1_vizier["<style>subgraphTitleTitle {font-size: 16px; font-style: italic;}</style>Castle - Vizier's Bedroom"]
|
||||||
P_PROBLEM_VIZIER_CHEST["Problem: Need to open Vizier's chest"]
|
P_PROBLEM_VIZIER_CHEST["Problem: Need to open Vizier's chest"]
|
||||||
A_UNLOCK_CHEST["A: Use Skeleton Key on chest"]
|
A_UNLOCK_CHEST["A: Use Skeleton Key on chest"]
|
||||||
O_RECEIVE_VIZIER_LETTER["O: Receive Vizier's Letter"]
|
O_RECEIVE_VIZIER_LETTER["O: Receive Vizier's Letter"]
|
||||||
@@ -699,9 +725,9 @@ flowchart TD
|
|||||||
O_TREASURY_OPEN --> P_PROBLEM_GENIE
|
O_TREASURY_OPEN --> P_PROBLEM_GENIE
|
||||||
|
|
||||||
%% =============================================================================
|
%% =============================================================================
|
||||||
%% PHASE 11: Final Confrontation
|
%% FINAL CONFRONTATION (area_1)
|
||||||
%% =============================================================================
|
%% =============================================================================
|
||||||
subgraph area_1_final ["<style>subgraphTitleTitle {font-size: 18px; font-weight: bold;}</style>Final Confrontation"]
|
subgraph area_1_final["<style>subgraphTitleTitle {font-size: 18px; font-weight: bold;}</style>Final Confrontation"]
|
||||||
P_PROBLEM_GENIE["Problem: Genie attacks"]
|
P_PROBLEM_GENIE["Problem: Genie attacks"]
|
||||||
|
|
||||||
A_USE_FAKE_LAMP["A: Use Fake Genie Lamp (from Jollo)"]
|
A_USE_FAKE_LAMP["A: Use Fake Genie Lamp (from Jollo)"]
|
||||||
@@ -715,7 +741,7 @@ flowchart TD
|
|||||||
end
|
end
|
||||||
|
|
||||||
%% =============================================================================
|
%% =============================================================================
|
||||||
%% BOTTOM: END NODE (only non-subgraph node besides START)
|
%% END NODE
|
||||||
%% =============================================================================
|
%% =============================================================================
|
||||||
END(["END: Victory - KQVI Complete"])
|
END(["END: Victory - KQVI Complete"])
|
||||||
|
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
|
Before Width: | Height: | Size: 731 KiB After Width: | Height: | Size: 750 KiB |
@@ -241,3 +241,37 @@ Complete overhaul of the King's Quest VI puzzle dependency chart based on compre
|
|||||||
|
|
||||||
## Build Command
|
## Build Command
|
||||||
`./build.sh` (not `mdbook build`)
|
`./build.sh` (not `mdbook build`)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 10. Reorganize Chart for Better Readability ✅
|
||||||
|
|
||||||
|
### 10a: Update skills with layout guidelines ✅
|
||||||
|
- [x] **10a.1: Update `create-dependency-graph/SKILL.md`** with clustering rules
|
||||||
|
- Add pawn shop items clustering rule
|
||||||
|
- Add gnome items clustering rule
|
||||||
|
- Add fontsize=18 requirement
|
||||||
|
- [x] **10a.2: Update `qa-dependency-graph/SKILL.md`** with layout guidelines
|
||||||
|
- Add color palette section
|
||||||
|
- Add fan-out/fan-in flow structure
|
||||||
|
|
||||||
|
### 10b: Reorganize kings-quest-vi-chart.mmd ✅
|
||||||
|
- [x] **10b.1: Apply fontsize=18 to all nodes**
|
||||||
|
- [x] **10b.2: Restructure with proper fan-out/fan-in flow**
|
||||||
|
- [x] **10b.3: Group pawn shop items in Village cluster**
|
||||||
|
- Nightingale, Mint, Tinderbox, Flute, Paintbrush, Ink
|
||||||
|
- [x] **10b.4: Group gnome items under Isle of Wonder - Five Senses**
|
||||||
|
- [x] **10b.5: Apply index-based color palette consistently**
|
||||||
|
- area_1 (light blue): Isle of Crown
|
||||||
|
- area_2 (light orange): Isle of Wonder
|
||||||
|
- area_3 (light purple): Isle of Beast
|
||||||
|
- area_4 (light green): Isle of Mists
|
||||||
|
- area_5 (light amber): Sacred Mountain
|
||||||
|
- area_6 (light pink): Druid Island
|
||||||
|
- area_7 (light cyan): Realm of Dead
|
||||||
|
- area_8 (light grey): Village
|
||||||
|
|
||||||
|
### 10c: Build and verify ✅
|
||||||
|
- [x] **10c.1: Run `./build.sh` successfully**
|
||||||
|
- [x] **10c.2: Verify SVG renders correctly**
|
||||||
|
- [x] **10c.3: Commit changes**
|
||||||
|
|||||||
Reference in New Issue
Block a user