Audit and rebalance outdoor zone instability tiers to match level bands #9

Closed
opened 2026-07-09 19:09:19 +00:00 by denise · 1 comment
Owner

Problem

Instability zone tiers (illidari_zone_tiers.baseTier) drive mutation count, survivability scaling, loot tier floors, profession material bands, and utility-slot behavior. Several vanilla outdoor zones are bucketed into bands that do not match their actual mob/quest level range, which makes testing and gameplay feel wrong.

Discovered while smoke-testing profession mutations (#8): players expect zone difficulty and profession drops to track where they are leveling, not an arbitrary band shared with much lower-level zones.

Examples (vanilla)

zoneID Zone Current baseTier Typical vanilla level band Concern
40 Westfall 2 (10–20) 10–20 OK
17 The Barrens 2 (10–20) 10–25 Stretches past T2 band; shares tier with Westfall
405 Desolace 3 (20–30) 30–39 Too low — feels closer to Badlands/Tanaris than Hillsbrad
400 Thousand Needles 3 (20–30) 25–35 Borderline; upper half overlaps T4
3 Badlands 4 (30–45) 35–45 OK-ish; Desolace often visited before Badlands but is tiered lower

Live server check (2026-07-09): SELECT zoneID, baseTier, theme FROM illidari_zone_tiers WHERE zoneID IN (40,17,405,400,3) confirms Westfall/Barrens at T2, Desolace at T3.

Downstream impact

  • Profession lootillidari_profession_loot keyed by zoneTier; Desolace T3 drops tier-3 mats when content is tier-4-ish.
  • Mutation density — T2 vs T3 vs T4 caps differ (utility slot, mutation count).
  • Reward scaling — XP/gold/cache multipliers tied to content tier.
  • Player expectations — “I’m in Desolace, why does this feel like Westfall tier?”

Design rule (from docs)

Instability tier follows player level band, not map continent.

We need to verify every listed outdoor zone (vanilla + BC + WotLK from ZONE_TIER_REFERENCE.md) against authoritative level data (mob levels, quest bracket, classic reference), not just continent proximity.

Proposed work

  1. Audit spreadsheet / table — for each zoneID in illidari_zone_tiers:
    • min/max mob level (sample or creature DB query)
    • recommended quest bracket
    • proposed baseTier (1–9)
    • theme (if any) still appropriate?
  2. Rebalance SQL — new migration under data/sql/updates/world/ (do not edit in-place applied files).
  3. Update illidari_zone_tiers.sql seed + docs/ZONE_TIER_REFERENCE.md.
  4. Profession loot review — after tier moves, confirm loot bands still make sense (no need to reseed if tier correction is the fix).
  5. Smoke test.mutation tier in adjusted zones; kill profession mobs and verify mat band matches zone level.

Suggested tier corrections (initial hypotheses — validate in audit)

  • Desolace (405) → T4 (with Badlands/Swamp of Sorrows band)
  • Thousand Needles (400) → T3 or split consideration (lower NF vs upper)
  • The Barrens (17) → T2 or low T3 (validate 15–25 overlap)
  • Review full T2 bucket: Westfall, Barrens, Loch Modan, Silverpine, Darkshore, Bloodmyst, Ghostlands — ensure they’re not sharing a band with inappropriate neighbors

Acceptance criteria

  • Every outdoor zone in illidari_zone_tiers has documented level-band justification
  • No zone with predominant 30+ mob levels remains in T2–T3 unless explicitly justified
  • Migration applied on test server; ZONE_TIER_REFERENCE.md matches DB
  • Profession smoke test in Desolace (post-fix) drops tier-appropriate mats
  • PR #8 — profession mutations (deployed for testing)
  • Issue #3 — profession framework
  • docs/ZONE_TIER_REFERENCE.md
  • data/sql/updates/world/2026_07_07_00_vanilla_zone_distribution.sql
## Problem Instability **zone tiers** (`illidari_zone_tiers.baseTier`) drive mutation count, survivability scaling, loot tier floors, profession material bands, and utility-slot behavior. Several vanilla outdoor zones are bucketed into bands that do not match their **actual mob/quest level range**, which makes testing and gameplay feel wrong. Discovered while smoke-testing profession mutations ([#8](https://vcs.ablationsystems.com/denise/mod-illidari-difficulty/pulls/8)): players expect zone difficulty and profession drops to track where they are leveling, not an arbitrary band shared with much lower-level zones. ### Examples (vanilla) | zoneID | Zone | Current `baseTier` | Typical vanilla level band | Concern | |--------|------|-------------------|---------------------------|---------| | 40 | Westfall | **2** (10–20) | 10–20 | OK | | 17 | The Barrens | **2** (10–20) | 10–25 | Stretches past T2 band; shares tier with Westfall | | 405 | Desolace | **3** (20–30) | **30–39** | Too low — feels closer to Badlands/Tanaris than Hillsbrad | | 400 | Thousand Needles | **3** (20–30) | 25–35 | Borderline; upper half overlaps T4 | | 3 | Badlands | **4** (30–45) | 35–45 | OK-ish; Desolace often visited before Badlands but is tiered lower | **Live server check (2026-07-09):** `SELECT zoneID, baseTier, theme FROM illidari_zone_tiers WHERE zoneID IN (40,17,405,400,3)` confirms Westfall/Barrens at T2, Desolace at T3. ### Downstream impact - **Profession loot** — `illidari_profession_loot` keyed by `zoneTier`; Desolace T3 drops tier-3 mats when content is tier-4-ish. - **Mutation density** — T2 vs T3 vs T4 caps differ (utility slot, mutation count). - **Reward scaling** — XP/gold/cache multipliers tied to content tier. - **Player expectations** — “I’m in Desolace, why does this feel like Westfall tier?” ## Design rule (from docs) > Instability tier follows **player level band**, not map continent. We need to **verify every listed outdoor zone** (vanilla + BC + WotLK from `ZONE_TIER_REFERENCE.md`) against authoritative level data (mob levels, quest bracket, classic reference), not just continent proximity. ## Proposed work 1. **Audit spreadsheet / table** — for each `zoneID` in `illidari_zone_tiers`: - min/max mob level (sample or `creature` DB query) - recommended quest bracket - proposed `baseTier` (1–9) - theme (if any) still appropriate? 2. **Rebalance SQL** — new migration under `data/sql/updates/world/` (do not edit in-place applied files). 3. **Update** `illidari_zone_tiers.sql` seed + `docs/ZONE_TIER_REFERENCE.md`. 4. **Profession loot review** — after tier moves, confirm loot bands still make sense (no need to reseed if tier correction is the fix). 5. **Smoke test** — `.mutation tier` in adjusted zones; kill profession mobs and verify mat band matches zone level. ## Suggested tier corrections (initial hypotheses — validate in audit) - **Desolace (405)** → T4 (with Badlands/Swamp of Sorrows band) - **Thousand Needles (400)** → T3 or split consideration (lower NF vs upper) - **The Barrens (17)** → T2 or low T3 (validate 15–25 overlap) - Review full T2 bucket: Westfall, Barrens, Loch Modan, Silverpine, Darkshore, Bloodmyst, Ghostlands — ensure they’re not sharing a band with inappropriate neighbors ## Acceptance criteria - [ ] Every outdoor zone in `illidari_zone_tiers` has documented level-band justification - [ ] No zone with predominant 30+ mob levels remains in T2–T3 unless explicitly justified - [ ] Migration applied on test server; `ZONE_TIER_REFERENCE.md` matches DB - [ ] Profession smoke test in Desolace (post-fix) drops tier-appropriate mats ## Related - PR [#8](https://vcs.ablationsystems.com/denise/mod-illidari-difficulty/pulls/8) — profession mutations (deployed for testing) - Issue [#3](https://vcs.ablationsystems.com/denise/mod-illidari-difficulty/issues/3) — profession framework - `docs/ZONE_TIER_REFERENCE.md` - `data/sql/updates/world/2026_07_07_00_vanilla_zone_distribution.sql`
Author
Owner

Moved to illidari#1. This repo is archived as part of the monorepo migration.

Moved to [illidari#1](https://vcs.ablationsystems.com/denise/illidari/issues/1). This repo is archived as part of the monorepo migration.
Commenting is not possible because the repository is archived.
No labels
No milestone
No project
No assignees
1 participant
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
denise/mod-illidari-difficulty#9
No description provided.