Skip to content

Icon set hygiene: resolvable filenames + uniform sizes (#3) - #8

Merged
avandenberghe merged 2 commits into
mainfrom
issue-3-roster-icon-casing
Sep 24, 2026
Merged

avandenberghe merged 2 commits into
mainfrom
issue-3-roster-icon-casing

Conversation

@avandenberghe

@avandenberghe avandenberghe commented Sep 23, 2026 •

Copy link
Copy Markdown
Collaborator

Refs #3 — two of the issue's parts. Kept open for the missing artwork.

1. Roster grid filenames (commit 1)

All nine capitalised files in roster_classes/ were unreachable: the roster grid builds roster_classes/<imagename>.png from the installer's value, which is lowercase for every class (lotro_burglar, lotro_captain, …). Renaming them fixes the grid icon for Beorning, Burglar, Captain, Champion, Guardian, Hunter, Lore-master, Minstrel and Rune-keeper.

This wasn't in the issue text — #3 describes the class_images/ size mix — but it's the same defect class, found while auditing the icon sets.

2. Icon sizes (commit 2)

Class icons were a 20/38/43/48 mix; race icons a 20/32/48 mix. Both sets are normalised to 48x48 by centring each icon on a transparent canvas, not upscaling — the issue suggests 48x48 to match the largest existing icons, and padding gets there without the blur a 20→48 resample would introduce. Reversible, and the original pixels are untouched. Tradeoff: beorning, highelf and stoutaxe still read smaller than their neighbours, so real 48x48 art for those three remains worthwhile.

lotro_icon_dimensions_test now guards both sets.

Still open on #3

  • class_images/: lotro_brawler, lotro_mariner (both added by Update game data (classes, races, factions) #7 with no assets) and lotro_unknown
  • race_images/: lotro_hobbit_river (flagged in the issue comment); also an unreferenced lotro_man_bree.png that no seeded race points at
  • roster_classes/: no artwork at all for blackarrow, brawler, defiler, mariner, reaver, stalker, unknown, warleader, weaver

With avathar/bbguild#389 merged, every one of those falls back to the class_images/ icon (or the game's unknown icon) instead of rendering broken.

🤖 Generated with Claude Code

avandenberghe and others added 2 commits September 24, 2026 00:49
All nine capitalised files in roster_classes/ were unreachable: the
roster grid builds roster_classes/<imagename>.png from the installer's
value, which is lowercase for every class (lotro_burglar, lotro_captain,
…). Renaming them fixes the grid icon for 9 of the 19 classes.

The remaining 10 (beorning, blackarrow, brawler, defiler, mariner,
reaver, stalker, unknown, warleader, weaver) have no roster artwork at
all, and the class-icon size normalisation is still outstanding, so #3
stays open.

Refs #3

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Class icons shipped as a 20/38/43/48 mix and race icons as a 20/32/48
mix. The roster renders these at their natural size with no
width/height attributes, so the odd ones out misaligned their rows.

Both sets are normalised to 48x48 by centring each icon on a
transparent canvas rather than upscaling: original pixels stay crisp
and the change is reversible, at the cost of the 20x20 sources
(beorning, highelf, stoutaxe) still reading smaller than the rest.
Real 48x48 art is still the better fix for those three.

test_class_images_are_all_48x48 / test_race_images_are_all_48x48 guard
both sets from here on.

Still open on #3: lotro_brawler / lotro_mariner / lotro_unknown class
icons, lotro_hobbit_river race icon, and the 10 classes with no
roster_classes artwork.

Refs #3

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@avandenberghe avandenberghe changed the title Lowercase roster grid icon filenames so they resolve (#3) Icon set hygiene: resolvable filenames + uniform sizes (#3) Sep 23, 2026
@avandenberghe
avandenberghe merged commit a708b14 into main Sep 24, 2026
11 checks passed
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