sprites
This commit is contained in:
@@ -0,0 +1,490 @@
|
||||
# Ashen Realms – Playable Slice 0.12: Aschenfelder Complete
|
||||
|
||||
**Status:** Final integration slice for the first region
|
||||
**Prerequisite:** Playable Slices 0.1–0.11
|
||||
**Scope:** Integration, balancing, content completion and polish for the Aschenfelder
|
||||
**Primary Goal:** Complete the first genuinely playable regional progression loop.
|
||||
|
||||
## 1. Goal
|
||||
|
||||
Playable Slice 0.12 does not introduce a large new system.
|
||||
|
||||
It integrates, verifies, balances, and polishes everything built so far into one coherent first region.
|
||||
|
||||
The full intended flow is:
|
||||
|
||||
```text
|
||||
Graufurt
|
||||
↓
|
||||
Südtor
|
||||
↓
|
||||
Verbrannte Straße
|
||||
↓
|
||||
first hunts
|
||||
↓
|
||||
first combat
|
||||
↓
|
||||
first loot
|
||||
↓
|
||||
first upgrades
|
||||
↓
|
||||
Verlassener Wachtposten
|
||||
↓
|
||||
NPC / Quest
|
||||
↓
|
||||
stronger enemies
|
||||
↓
|
||||
first Elite
|
||||
↓
|
||||
Grenzmarken
|
||||
↓
|
||||
targeted upgrades
|
||||
↓
|
||||
Aschengrube
|
||||
↓
|
||||
regional Boss
|
||||
↓
|
||||
guaranteed boss loot
|
||||
↓
|
||||
path toward Dämmerwald discovered
|
||||
```
|
||||
|
||||
## 2. Complete locations
|
||||
|
||||
The Aschenfelder progression contains:
|
||||
|
||||
```text
|
||||
Südtor von Graufurt
|
||||
Verbrannte Straße
|
||||
Verlassener Wachtposten
|
||||
Aschengrube
|
||||
```
|
||||
|
||||
Each location must have a clear purpose and correct travel connections.
|
||||
|
||||
## 3. Complete Tier-1 enemy set
|
||||
|
||||
The relevant first-region pool should now include the established enemies:
|
||||
|
||||
```text
|
||||
Aschenratte
|
||||
Verwilderter Straßenhund
|
||||
Straßenräuber
|
||||
Plünderer-Späher
|
||||
Plünderer-Veteran
|
||||
Verkohlter Plünderer
|
||||
Aschenwühler
|
||||
Verbrannter Jagdhund
|
||||
Plündererhauptmann / Elite
|
||||
Hauptmann der Aschenbande / Boss
|
||||
```
|
||||
|
||||
If final naming differs in existing project content, preserve the existing finalized names rather than creating duplicates.
|
||||
|
||||
## 4. Complete Tier-1 item set
|
||||
|
||||
The relevant Tier-1 pool should now include:
|
||||
|
||||
```text
|
||||
Abgenutztes Kurzschwert
|
||||
Räuberklinge
|
||||
Aschenklinge
|
||||
Räuberhaube
|
||||
Verstärkte Lederjacke
|
||||
Plündererhandschuhe
|
||||
Wachmannsbeinkleid
|
||||
Aschenstiefel
|
||||
Zeichen der Grenzwacht
|
||||
Anhänger des verbrannten Hauptmanns
|
||||
```
|
||||
|
||||
Not every item must be required for progression.
|
||||
|
||||
Prestige/special drops remain optional.
|
||||
|
||||
## 5. Combat duration targets
|
||||
|
||||
During the balancing pass, verify:
|
||||
|
||||
### Normal enemies
|
||||
|
||||
```text
|
||||
4–8 rounds
|
||||
```
|
||||
|
||||
### Elite
|
||||
|
||||
```text
|
||||
6–10 rounds
|
||||
```
|
||||
|
||||
### Boss
|
||||
|
||||
```text
|
||||
8–14 rounds
|
||||
```
|
||||
|
||||
These are balancing targets rather than hard rules.
|
||||
|
||||
## 6. Power progression targets
|
||||
|
||||
Use the established Combat Power progression as a reference:
|
||||
|
||||
### Start
|
||||
|
||||
```text
|
||||
approximately 47 CP
|
||||
```
|
||||
|
||||
### After first upgrades
|
||||
|
||||
```text
|
||||
approximately 60–70 CP
|
||||
```
|
||||
|
||||
### Wachtposten progression
|
||||
|
||||
```text
|
||||
approximately 80–90 CP
|
||||
```
|
||||
|
||||
### Aschengrube / boss-ready range
|
||||
|
||||
```text
|
||||
approximately 100–110 CP
|
||||
```
|
||||
|
||||
Combat Power is an internal balancing tool, not a hard access gate.
|
||||
|
||||
## 7. Progression pacing
|
||||
|
||||
A typical player should need roughly:
|
||||
|
||||
```text
|
||||
12–18 normal combats
|
||||
+
|
||||
quests
|
||||
+
|
||||
boss
|
||||
```
|
||||
|
||||
to progress meaningfully through the first region.
|
||||
|
||||
The intended experience must not require 50+ normal combats for basic progression.
|
||||
|
||||
## 8. First upgrade pacing
|
||||
|
||||
Verify that within approximately the first:
|
||||
|
||||
```text
|
||||
3–5 combats
|
||||
```
|
||||
|
||||
the player is very likely to see a meaningful equipment upgrade.
|
||||
|
||||
If this does not happen reliably enough, tune only the smallest necessary variables:
|
||||
|
||||
```text
|
||||
drop rate
|
||||
quest reward
|
||||
starter equipment
|
||||
```
|
||||
|
||||
Do not add unnecessary new reward systems.
|
||||
|
||||
## 9. Boss readiness
|
||||
|
||||
The regional boss should become reasonably beatable at approximately:
|
||||
|
||||
```text
|
||||
70–80% of maximum realistically obtainable regional power
|
||||
```
|
||||
|
||||
Best-in-slot equipment should provide comfort and completionist value, not be mandatory.
|
||||
|
||||
## 10. Soft-gate validation
|
||||
|
||||
The player should not be blocked primarily by arbitrary level errors.
|
||||
|
||||
Where possible:
|
||||
|
||||
```text
|
||||
actual world danger
|
||||
```
|
||||
|
||||
should communicate that the player is too weak.
|
||||
|
||||
A player may attempt difficult content early, but the game should make the risk clear.
|
||||
|
||||
## 11. Full UI consistency pass
|
||||
|
||||
Review all implemented screens together:
|
||||
|
||||
```text
|
||||
World
|
||||
Hunt
|
||||
Combat
|
||||
Loot
|
||||
Inventory
|
||||
Quests
|
||||
Merchant
|
||||
```
|
||||
|
||||
Verify consistency of:
|
||||
|
||||
```text
|
||||
Topbar
|
||||
SideNavigation
|
||||
Footer
|
||||
Context Panel
|
||||
Panel frames
|
||||
Buttons
|
||||
DangerBadges
|
||||
Item icons
|
||||
Combat actions
|
||||
Typography
|
||||
Spacing
|
||||
Design tokens
|
||||
```
|
||||
|
||||
No screen should feel like a separate web application.
|
||||
|
||||
## 12. Loading and error-state pass
|
||||
|
||||
All core player actions need intentional UI states:
|
||||
|
||||
```text
|
||||
loading
|
||||
success
|
||||
domain error
|
||||
network error
|
||||
retry
|
||||
```
|
||||
|
||||
Review at minimum:
|
||||
|
||||
```text
|
||||
Travel
|
||||
Hunt
|
||||
Combat Action
|
||||
Reward
|
||||
Equip
|
||||
Quest
|
||||
Purchase
|
||||
```
|
||||
|
||||
Do not use browser alerts.
|
||||
|
||||
## 13. Refresh and recovery pass
|
||||
|
||||
The following states must survive browser refresh through authoritative backend state:
|
||||
|
||||
```text
|
||||
active travel
|
||||
current hunt
|
||||
active combat
|
||||
finished combat/reward
|
||||
inventory
|
||||
equipment
|
||||
active quest
|
||||
Grenzmarken
|
||||
boss completion
|
||||
```
|
||||
|
||||
No critical gameplay state may exist only in Angular memory.
|
||||
|
||||
## 14. Full integration test
|
||||
|
||||
Where practical, automate the first complete progression flow:
|
||||
|
||||
```text
|
||||
character starts at Südtor
|
||||
↓
|
||||
travel to Verbrannte Straße
|
||||
↓
|
||||
hunt
|
||||
↓
|
||||
combat
|
||||
↓
|
||||
win
|
||||
↓
|
||||
receive loot
|
||||
↓
|
||||
equip upgrade
|
||||
↓
|
||||
travel to Wachtposten
|
||||
↓
|
||||
accept quest
|
||||
↓
|
||||
defeat relevant enemies
|
||||
↓
|
||||
progress quest
|
||||
↓
|
||||
earn Grenzmarken
|
||||
↓
|
||||
buy targeted item
|
||||
↓
|
||||
equip item
|
||||
↓
|
||||
travel to Aschengrube
|
||||
↓
|
||||
defeat boss
|
||||
↓
|
||||
receive guaranteed boss reward
|
||||
↓
|
||||
region completion persists
|
||||
```
|
||||
|
||||
## 15. Manual playtest – average RNG
|
||||
|
||||
Perform at least one normal playthrough and measure:
|
||||
|
||||
```text
|
||||
combat duration
|
||||
loot frequency
|
||||
upgrade frequency
|
||||
number of hunts
|
||||
travel flow
|
||||
quest pacing
|
||||
Grenzmarken income
|
||||
boss readiness
|
||||
total region time
|
||||
```
|
||||
|
||||
## 16. Manual playtest – bad RNG
|
||||
|
||||
Test a deliberately unlucky run.
|
||||
|
||||
Verify:
|
||||
|
||||
```text
|
||||
Grenzmarken still provide progress
|
||||
progression does not hard-block
|
||||
boss readiness remains achievable
|
||||
player does not require extreme grind
|
||||
```
|
||||
|
||||
## 17. Manual playtest – good RNG
|
||||
|
||||
Test a deliberately lucky run.
|
||||
|
||||
Verify:
|
||||
|
||||
```text
|
||||
region does not become instantly trivial
|
||||
progression cannot be skipped too aggressively
|
||||
boss remains meaningful
|
||||
```
|
||||
|
||||
## 18. Data/content validation
|
||||
|
||||
Verify:
|
||||
|
||||
- all locations use persisted content
|
||||
- all encounter pools use persisted relationships
|
||||
- all loot is data-driven
|
||||
- all shop offers are data-driven
|
||||
- quest definitions are persisted/data-driven
|
||||
- no core gameplay path depends on hardcoded Angular content
|
||||
- no server domain service contains unnecessary location-specific special cases
|
||||
|
||||
## 19. Server-authority validation
|
||||
|
||||
Confirm that the backend remains authoritative for:
|
||||
|
||||
```text
|
||||
travel
|
||||
hunt availability
|
||||
encounter generation
|
||||
danger rating
|
||||
combat
|
||||
loot
|
||||
XP
|
||||
Silver
|
||||
Grenzmarken
|
||||
inventory ownership
|
||||
equipment
|
||||
effective stats
|
||||
quest progress
|
||||
shop purchases
|
||||
boss completion
|
||||
```
|
||||
|
||||
## 20. Performance / technical cleanup
|
||||
|
||||
Review the accumulated implementation for:
|
||||
|
||||
- duplicate API calls
|
||||
- duplicated frontend state
|
||||
- duplicated domain validation
|
||||
- unused temporary placeholder logic
|
||||
- obsolete Slice 0.1–0.5 shortcuts
|
||||
- hardcoded demo combat stats that should now use CharacterStatsService
|
||||
- temporary combat placeholder routes
|
||||
- duplicated item definitions
|
||||
- migration quality
|
||||
- seed idempotency
|
||||
|
||||
Do not perform unrelated architectural rewrites.
|
||||
|
||||
## 21. Definition of Done
|
||||
|
||||
Playable Slice 0.12 / Aschenfelder Complete is complete when a fresh character can, without developer intervention:
|
||||
|
||||
```text
|
||||
start
|
||||
↓
|
||||
travel
|
||||
↓
|
||||
hunt
|
||||
↓
|
||||
fight
|
||||
↓
|
||||
receive loot
|
||||
↓
|
||||
improve equipment
|
||||
↓
|
||||
meet NPC
|
||||
↓
|
||||
complete quest
|
||||
↓
|
||||
fight Elite
|
||||
↓
|
||||
earn Grenzmarken
|
||||
↓
|
||||
buy targeted item
|
||||
↓
|
||||
reach Aschengrube
|
||||
↓
|
||||
defeat regional Boss
|
||||
↓
|
||||
receive guaranteed progression reward
|
||||
↓
|
||||
discover path toward Dämmerwald
|
||||
```
|
||||
|
||||
## 22. Final product test
|
||||
|
||||
The most important qualitative result is:
|
||||
|
||||
> After completing the Aschenfelder, the player should want to see what waits in the Dämmerwald.
|
||||
|
||||
If the loop is technically correct but does not create that motivation, the region still needs iteration.
|
||||
|
||||
## 23. After Slice 0.12
|
||||
|
||||
Do not immediately expand into the full Dämmerwald.
|
||||
|
||||
First:
|
||||
|
||||
```text
|
||||
playtest
|
||||
measure
|
||||
balance
|
||||
fix friction
|
||||
validate reward pacing
|
||||
validate combat decisions
|
||||
validate boss readiness
|
||||
```
|
||||
|
||||
Only after the first region loop works well should the same systems be expanded into the Dämmerwald and later the Vergessene Ruinen.
|
||||
Reference in New Issue
Block a user