Skip to content

improve stubs, embedded images, and fix links#23

Merged
nschimme merged 11 commits into
MUME:mainfrom
nschimme:merge-stubs-and-fix-links-6206678759628617807
May 10, 2026
Merged

improve stubs, embedded images, and fix links#23
nschimme merged 11 commits into
MUME:mainfrom
nschimme:merge-stubs-and-fix-links-6206678759628617807

Conversation

@nschimme

Copy link
Copy Markdown
Contributor

Description

Improve UX by improving stubs, images, and links

Related Issue

Checklist

  • Wiki Rules: I have followed the Content Rules (mortal knowledge only) and Spoiler Rules (using ::: details Spoiler) as defined in the Contributing Guide.
  • Content Accuracy: I have verified the information added/changed is accurate to the game.
  • Visual Check: I have verified that the page renders correctly (no broken tables, lists, or styling).
  • Local Build: (For coders) Ran docker compose up --build wiki (or npm run docs:build) and verified changes locally.
  • Index Pages: Updated top-level index pages (e.g., docs/guides.md, docs/classes.md) if a major new page was added.

nschimme and others added 11 commits May 9, 2026 19:28
- Identified 72 stub pages from prebuild output.
- Merged unique content from stubs into relevant parent or category pages.
- Created new category pages: Items.md, Mechanics.md, and Old_Forest.md.
- Updated hundreds of internal links to point directly to hashtags in target pages.
- Removed inappropriate aliases from frontmatter to favor direct linking.
- Clarified that brushes are not required for herb mixing in Herbal_kit.md.
- Verified that new target pages have sufficient content to avoid stub warnings.
- Deleted the original 72 stub files.
This commit fixes the documentation build by addressing a massive number of
dead links reported by VitePress.

Key changes:
- Corrected Quest link syntax across all markdown files from the incorrect
  'Quest#Anchor.md' format to the standard 'Quest.md#Anchor'.
- Resolved file name discrepancies by updating links to use the correct
  singular filenames (e.g., Cloak.md instead of Cloaks.md).
- Implemented a redirection strategy for missing location pages (Isengard,
  Mirkwood, Trollshaws, Warrens) by pointing them to content anchors in
  lore.md and adding the corresponding HTML anchors.
- Removed dead links to non-existent racial name pages and historical
  changelogs that are missing from the repository.
- Fixed specific broken links in key landing pages like equipment.md,
  history.md, and guides.md.

Verified that 'npm run docs:build' now completes successfully with zero
dead links.
- Fix duplicate 'tolkien' anchor in docs/lore.md
- Restore broken naming links in docs/races.md by pointing to Names.md
- Correct typo 'acquaintances' in docs/pages/Aldereon.md and fix quest link formatting
Address code review feedback by:
- Refactoring `scripts/fix_links.py` to use `posixpath` for OS-agnosticism.
- Updating regex in `fix_links.py` to target only Markdown links and `href` attributes, preventing corruption of plain text in parentheses.
- Implementing a `resolve_link` helper for clean, normalized relative paths.
- Restoring missing anchors in `docs/lore.md` (isengard, mirkwood, warrens, etc.) to ensure link integrity.
- Normalizing all relevant links across the documentation.
- Extend scripts/check-links.js to validate anchors in addition to page links:
  - Build an anchor index from markdown headings (including {#custom-id} syntax)
  - Capture HTML id= and name= attributes (fixing lore.md <a name="..."> anchors)
  - Validate both cross-page anchors (page.md#section) and same-page (#section)
  - Fail CI on dead anchors just like dead page links
- Add check-links.js to scripts/prebuild.cjs so it runs on every build
- Fix 109 dead anchors exposed by the new validator:
  - Correct malformed Quest#Section.md → Quest.md#section format
  - Correct malformed Herb#herb.md → Herb.md#herb format
  - Fix Herblore/Super_Mobile/Anduin_Vale/Shield/Dagger/Ainur anchor formats
  - Fix Newbie_Guide_to_Warrior_Skills.md anchor capitalization
  - Fix Weapon.md item-level anchors to section-level anchors
  - Replace Food_&_Drink#Drink.md with Food_&_Drink.md (no such section)
  - Add missing eregion anchor to lore.md
  - Fix Fornost.md#shops with proper shop page links
  - Fix Help.md#guildmasters with Guildmasters.md

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Expand 10+ stub pages: Isengard, Mirkwood, Warrens, Eregion,
  Trollshaws, Cities, room, Playable_races, Old_Man_Willow, Leaflock,
  Ancient_Broken_Road, Weapons
- Add Saruman.md (mobile page, quest-giver at Isengard)
- Delete 5 empty/orphaned pages: Staff_and_Focus_guide.md,
  Metal/Mail/Leather/Cloth_equipment.md
- Fix equipment.md#by-material to link to Armour.md sections instead
  of empty stub pages (with richer descriptions)
- Fix 6 remaining dead links/anchors: Classes→Playable_races,
  Trollshaws#warrens→Warrens.md, Last_Bridge.md (removed), Saruman.md
  (created), Wizard→Istari

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Ranged weapon/ammo stubs: Ash_arrow, Bolt, Blackened_bolt, War_arrow,
Metal-cased_bolt, Round_stone, Crossbow, Light_crossbow, Elven_shortbow,
Orkish_shortbow, Dúnadan_blade — each now explains weapon type, ammo
compatibility, and trade-offs between options.

Mechanic stubs: Direction, Movement, Effort, Knock, Drink, Mix, Jail,
Levels — expanded with syntax, tables, and gameplay context.

Lore stubs: Easterling, Haradrim, Tolkien, Sting, Leaflock — added
in-game relevance and proper See also links.

Previously-thin improvements: room, Weapons, Playable_races,
Ancient_Broken_Road — expanded past the stub threshold with tables
and structured sections.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Equipment stubs: Belts, Cloaks, Containers, Keys, Consumables,
Quest_items, Item — each now explains what the category contains,
notable examples, and links to related pages.

Ranged skill: Missile_weapons — added full ammo/weapon compatibility
table and usage tips.

Client pages: Pandora, Powwow, Tintin++, TinyFugue — each describes
what makes the client distinctive and who should use it.

Mechanic stubs: Guildmasters, Help, Drink (with liquid types table),
Mix (with herblore workflow) — expanded with syntax and context.

Lore/naming stubs: Dwarvish_names, Orcish_names — added Tolkien-based
naming conventions and examples.

Location stubs: Old_Forest, Brush, Massive_roots — added geography
and gameplay context.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Shop stubs → city page tables:
- Bree.md: Armoury hours/stock inlined; Weaponsmith and Herbalist
  kept as linked pages (quest hook and price-comparison content).
- Fornost.md: King's Armoury, Mighty Hammer Weaponry, Tailor's Shop,
  Grocery, Small Bakery merged into shops table with hours and stock.
- Tharbad.md: Armoury, Weapon Shop, Bakery (with menu), Grocery
  merged into shops table.
- Grey_Havens.md: Harlond and Forlond Tailor/Grocer merged into
  sub-tables by district with opening hours.
- Baker.md: fix dead link Tharbad_Baker → Tharbad.md#shops.
- Fornost.md mobiles: unlink removed Fornost_Grocer reference.

Deleted 14 shop stubs + Wikibot.md (orphaned, no inbound links).

MUME IX: replace joke stub with real content (launched 2022,
Bree-land rebuild, 10 new areas, expanded subraces, modern
protocol support).

Result: 1 stub remaining (Local_editing.md), zero dead links.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Identical content, no inbound links to either file. Removes the last
remaining stub and leaves the wiki with zero stub pages.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…unused images

Replace old !ImageName and <figure>!image</figure> syntax (left over from
MediaWiki migration) with standard markdown ![alt](/img/File.jpg) in 13 pages.
Also place 12 previously unused images from /img/ onto appropriate pages
(Saruman, Sauron, Moria, Old Forest, Elf, Man, Mmapper, PandoraMapper, MUME).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

@sourcery-ai sourcery-ai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry @nschimme, your pull request is larger than the review limit of 150000 diff characters

@nschimme nschimme merged commit 7cdd49f into MUME:main May 10, 2026
3 checks passed
@nschimme nschimme deleted the merge-stubs-and-fix-links-6206678759628617807 branch May 10, 2026 02:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant