docs
This commit is contained in:
285
docs/playable-slices/0.7-Complete-Burned-Road-V2.md
Normal file
285
docs/playable-slices/0.7-Complete-Burned-Road-V2.md
Normal file
@@ -0,0 +1,285 @@
|
||||
# Ashen Realms – Playable Slice 0.7 V2
|
||||
|
||||
## Complete Burned Road
|
||||
|
||||
**Status:** Implementation Specification
|
||||
**Depends on:** Slice 0.6.6
|
||||
**Purpose:** Turn the Burned Road into the first complete repeatable hunt location using the new no-XP/no-direct-money progression model.
|
||||
|
||||
---
|
||||
|
||||
## 1. Goal
|
||||
|
||||
The Burned Road becomes the first place where Ashen Realms feels like a repeatable RPG activity rather than a combat test screen.
|
||||
|
||||
The player should be able to:
|
||||
|
||||
**Travel → Hunt → compare encounters → choose an enemy → fight → receive trade goods/equipment → hunt again.**
|
||||
|
||||
This slice replaces the previous reward assumption of direct XP and Silver from kills.
|
||||
|
||||
> Normal monster kills must not directly grant XP, Silver, regional reputation or World Renown.
|
||||
|
||||
---
|
||||
|
||||
## 2. Player Experience
|
||||
|
||||
When the player starts a hunt on the Burned Road, 2–3 encounter cards appear.
|
||||
|
||||
Possible enemies:
|
||||
|
||||
- Ash Rat
|
||||
- Feral Road Hound
|
||||
- Road Bandit
|
||||
- rare: Charred Raider
|
||||
|
||||
Each enemy must feel mechanically and economically different.
|
||||
|
||||
The player can deliberately choose an easy target, a useful target, or a risky rare target.
|
||||
|
||||
---
|
||||
|
||||
## 3. Encounter Pool
|
||||
|
||||
Suggested initial weights:
|
||||
|
||||
| Monster | Weight | Role |
|
||||
|---|---:|---|
|
||||
| Ash Rat | 50 | basic safe target |
|
||||
| Feral Road Hound | 30 | first status-effect enemy |
|
||||
| Road Bandit | 18 | stronger humanoid with telegraph |
|
||||
| Charred Raider | 2 | rare dangerous encounter |
|
||||
|
||||
Weights are balancing data and must not be hardcoded into the Angular UI.
|
||||
|
||||
The hunt should return 2–3 distinct encounter records where possible.
|
||||
|
||||
---
|
||||
|
||||
## 4. Monster Mechanics
|
||||
|
||||
### Ash Rat
|
||||
|
||||
Purpose: pure baseline combat.
|
||||
|
||||
- no special combat mechanic
|
||||
- low danger
|
||||
- short fight
|
||||
- guaranteed basic trade good
|
||||
|
||||
### Feral Road Hound
|
||||
|
||||
Purpose: introduce Bleeding as a simple ongoing effect.
|
||||
|
||||
- normal bite
|
||||
- occasional Bleeding application
|
||||
- Bleeding has clear icon/status feedback
|
||||
- Bleeding duration and damage are server-authoritative
|
||||
|
||||
### Road Bandit
|
||||
|
||||
Purpose: reinforce Telegraphing.
|
||||
|
||||
- normal attack
|
||||
- Heavy Strike is announced before execution
|
||||
- Shield Bash can interrupt the prepared attack
|
||||
- Defend is a valid response if the player does not interrupt
|
||||
|
||||
### Charred Raider
|
||||
|
||||
Purpose: first rare encounter and visible future farming target.
|
||||
|
||||
- noticeably stronger than normal Burned Road enemies
|
||||
- combines higher base stats with one known mechanic
|
||||
- no entirely new subsystem
|
||||
- visually marked as Rare / Strong
|
||||
|
||||
---
|
||||
|
||||
## 5. Trade Goods
|
||||
|
||||
Every normal enemy should provide a thematic trade good instead of money.
|
||||
|
||||
Initial content:
|
||||
|
||||
| Monster | Guaranteed Trade Good |
|
||||
|---|---|
|
||||
| Ash Rat | Ashen Pelt ×1 |
|
||||
| Feral Road Hound | Tough Hide ×1 |
|
||||
| Road Bandit | Raider Insignia ×1 |
|
||||
| Charred Raider | Charred Raider Insignia ×1 |
|
||||
|
||||
These items represent loot that can later be exchanged with a merchant.
|
||||
|
||||
The trade goods must be persisted as actual player-owned loot.
|
||||
|
||||
Slice 0.7.5 will add category-specific carrying capacity and loot bags. Until then, existing inventory storage may temporarily hold these goods.
|
||||
|
||||
---
|
||||
|
||||
## 6. Equipment Drops
|
||||
|
||||
Trade goods are guaranteed; equipment remains an exciting additional roll.
|
||||
|
||||
Suggested initial drops:
|
||||
|
||||
### Ash Rat
|
||||
|
||||
- small chance for simple starter-slot equipment
|
||||
|
||||
### Feral Road Hound
|
||||
|
||||
- chance for Ashen Boots
|
||||
- chance for a Small Healing Potion if potions are already lootable
|
||||
|
||||
### Road Bandit
|
||||
|
||||
- Bandit Blade
|
||||
- Bandit Hood
|
||||
- Plunderer Gloves
|
||||
|
||||
### Charred Raider
|
||||
|
||||
- Reinforced Leather Jacket
|
||||
- Ashen Boots
|
||||
- Mark of the Border Watch
|
||||
- optional prestige drop later
|
||||
|
||||
Exact drop rates should remain data-driven and can initially follow existing Tier-1 balancing values where already implemented.
|
||||
|
||||
---
|
||||
|
||||
## 7. Reward Rules
|
||||
|
||||
After a normal victory, the server may grant:
|
||||
|
||||
- trade goods
|
||||
- equipment
|
||||
- consumables
|
||||
- hunt/combat state progression
|
||||
|
||||
The server must **not** grant:
|
||||
|
||||
- XP
|
||||
- Silver
|
||||
- regional reputation
|
||||
- World Renown
|
||||
|
||||
These economy/progression rewards are deliberately deferred to merchant exchange and milestone systems.
|
||||
|
||||
---
|
||||
|
||||
## 8. Backend Requirements
|
||||
|
||||
The existing content model must support:
|
||||
|
||||
- multiple monsters for one location
|
||||
- weighted encounter generation
|
||||
- rare encounter weighting
|
||||
- guaranteed loot entries
|
||||
- probabilistic equipment entries
|
||||
- status-effect combat events
|
||||
- telegraphed actions
|
||||
|
||||
Recommended behavior:
|
||||
|
||||
```text
|
||||
POST /api/hunts
|
||||
→ server validates current location
|
||||
→ server selects encounter definitions from Burned Road pool
|
||||
→ persisted HuntEncounter records are returned
|
||||
```
|
||||
|
||||
Combat must still start only from a valid generated encounter.
|
||||
|
||||
---
|
||||
|
||||
## 9. Frontend Requirements
|
||||
|
||||
The Hunt screen must show for each encounter:
|
||||
|
||||
- monster artwork
|
||||
- English name
|
||||
- danger rating
|
||||
- optional short flavor text
|
||||
- clear Attack action
|
||||
|
||||
The player should immediately recognize the rare Charred Raider.
|
||||
|
||||
After victory, the loot summary should clearly separate:
|
||||
|
||||
- Trade Goods
|
||||
- Equipment
|
||||
- Consumables
|
||||
|
||||
Do not show old XP or Silver reward rows.
|
||||
|
||||
---
|
||||
|
||||
## 10. Hunt Refresh
|
||||
|
||||
The player can choose **Search Again**.
|
||||
|
||||
Rules:
|
||||
|
||||
- generates a new persisted hunt result
|
||||
- old encounter IDs cannot be attacked indefinitely after being invalidated
|
||||
- avoid client-side randomization
|
||||
- no resource cost in this slice
|
||||
|
||||
---
|
||||
|
||||
## 11. Tests
|
||||
|
||||
At minimum:
|
||||
|
||||
### Hunting
|
||||
|
||||
- Burned Road produces only configured monsters
|
||||
- rare encounter is selectable through deterministic injected random values
|
||||
- encounter generation is server-authoritative
|
||||
- invalid/stale encounter cannot start combat
|
||||
|
||||
### Combat
|
||||
|
||||
- Feral Road Hound can apply Bleeding
|
||||
- Bleeding ticks correctly
|
||||
- Road Bandit Heavy Strike is telegraphed
|
||||
- Shield Bash can interrupt the telegraphed action
|
||||
|
||||
### Loot
|
||||
|
||||
- Ash Rat grants Ashen Pelt
|
||||
- Road Bandit grants Raider Insignia
|
||||
- normal kill grants no XP
|
||||
- normal kill grants no Silver
|
||||
- normal kill grants no reputation
|
||||
- equipment drop roll remains independent from guaranteed trade good
|
||||
|
||||
---
|
||||
|
||||
## 12. Acceptance Criteria
|
||||
|
||||
- [ ] Burned Road offers 2–3 encounter choices per hunt.
|
||||
- [ ] Four enemy definitions are available, including rare Charred Raider.
|
||||
- [ ] Feral Road Hound demonstrates Bleeding.
|
||||
- [ ] Road Bandit demonstrates Telegraphing / interrupt interaction.
|
||||
- [ ] Every enemy grants a thematic trade good.
|
||||
- [ ] Equipment can drop in addition to trade goods.
|
||||
- [ ] Normal kills grant no XP, Silver, regional reputation or World Renown.
|
||||
- [ ] Loot is persisted server-side.
|
||||
- [ ] The player can repeatedly hunt without manual database changes.
|
||||
- [ ] Existing travel and combat flows continue to work.
|
||||
|
||||
---
|
||||
|
||||
## 13. Out of Scope
|
||||
|
||||
Do not add yet:
|
||||
|
||||
- loot bag capacity
|
||||
- merchant exchange
|
||||
- reputation-gated shop offers
|
||||
- first quest tutorial
|
||||
- Abandoned Watchpost content
|
||||
- area boss
|
||||
@@ -700,6 +700,23 @@ Not through special-case controller logic.
|
||||
|
||||
# 19. Turn-in foundation
|
||||
|
||||
> **IMPLEMENTIERUNGSSTAND (Slice 0.8):** `TurnInDefinition` und `TurnInService`
|
||||
> wurden durch `ExchangeRule` / `ExchangeService` ersetzt (NPC-Spec §17).
|
||||
> §20 sah das bereits vor ("Implement the domain service now even if the full
|
||||
> NPC merchant UI comes later") — die NPC-Merchant-UI ist jetzt da, und Borin
|
||||
> ist der NPC, der den Tausch besitzt.
|
||||
>
|
||||
> Übernommen wurde: item → faction → Silber → Reputation, datengetrieben.
|
||||
> Ergänzt wurden: NPC-/Profil-Zuordnung, Conditions und `renownMilestoneKey` —
|
||||
> letzteres ist genau das unten als optional gelistete `firstTurnInMilestoneKey`,
|
||||
> das laut §19 erst hinzugefügt werden sollte, wenn es gebraucht wird. In 0.8
|
||||
> wird es gebraucht: der erste Tausch ist der Renown-2-Meilenstein aus §6
|
||||
> ("first meaningful trophy returned").
|
||||
>
|
||||
> Die alte Tabelle wurde gelöscht, nicht deaktiviert: zwei parallele Wege, ein
|
||||
> Fell in Silber zu verwandeln, wären genau das zweite Progressionsmodell, das
|
||||
> Slice 0.8 §6 ausschließt.
|
||||
|
||||
Create a reusable content definition for future trophy/material turn-ins.
|
||||
|
||||
Conceptually:
|
||||
|
||||
Reference in New Issue
Block a user