Skip to content

fix(items): give the season 6 armor sets 47 and 48 the names of the client - #1486

Merged
sven-n merged 1 commit into
MUnique:masterfrom
pllanosclaria:fix/destroy-phantom-names
Nov 12, 2026
Merged

sven-n merged 1 commit into
MUnique:masterfrom
pllanosclaria:fix/destroy-phantom-names

Conversation

@pllanosclaria

Copy link
Copy Markdown
Contributor

Fixes #1483

The season 6 armor sets 47 and 48 were initialized with each other's name, and three pieces of the set 47 were spelled "Destory". The client calls 47 Phantom (armor drop level 131, defense 80) and 48 Destroy (drop level 125, defense 66): see the english item_eng.bmd, the korean and japanese item files of the 1.04d client, and MuMain's src/bin/Data/Items/Group08..11*.json. So the admin panel showed the other set's name than the game. docs/ItemNameLocalization.md already noted the swap.

Changes

  • Item names: number 47 uses the Phantom* resources, number 48 the Destroy* resources. The Destory* keys are renamed to Destroy*, with the spelling fixed.
    • German follows the name (47 Phantom-Rüstung, 48 Zerstörerrüstung).
    • Chinese stays with the item number, as it was already right (破灭 at 48), so its values are swapped between the keys.
  • Set bonus names: the "… Defense Rate Bonus" and "… Defense Bonus (Level 10–15)" names of these sets follow, through the ArmorSetNames keys. ArmorInitializerBase.GetSetName is now internal, so the update reuses it.
  • Update plugin FixDestroyPhantomArmorNamesPlugIn (season 6, optional): renames the pieces and the set bonuses of existing configurations. It only touches names which still have the previous built-in text, so customized names are kept. Applying it twice changes nothing.
  • The comments in SocketSystem.cs and the paragraph in docs/ItemNameLocalization.md are updated.

Testing

  • New FixDestroyPhantomArmorNamesTest:
    • a new database has the client's names, linked to their sources;
    • the update repairs a configuration with the swapped names, keeps a customized name, and a second run changes nothing.
  • dotnet test tests/MUnique.OpenMU.Persistence.Initialization.Tests: 840 passed, 12 skipped (the [Ignore] PostgreSQL ones), 0 failed.
  • Not tested on a running server or in the game client: the change only touches configuration names.

…lient

The armor sets 47 and 48 were initialized with each other's name, and three
pieces of the set 47 were spelled "Destory". The client data (english, korean
and japanese item files of the 1.04d client, and the MuMain item data) calls
the set 47 Phantom and the set 48 Destroy, so the admin panel showed the other
set's name than the game.

The pieces now use the Phantom and Destroy resources, with the "Destory" keys
renamed; the set bonuses, which are named after the armor, follow. German
names follow the name, Chinese names stay with the item number, as they were
already right.

The optional update plugin renames the pieces and the set bonuses of existing
configurations. Names which were changed in the configuration are kept.

Fixes MUnique#1483
@codacy-production

Copy link
Copy Markdown

Up to standards ✅

🟢 Issues 0 issues

Results:
0 new issues

View in Codacy

🟢 Metrics 29 complexity · 11 duplication

Metric Results
Complexity 29
Duplication 11

View in Codacy

NEW Get contextual insights on your PRs based on Codacy's metrics, along with PR and Jira context, without leaving GitHub. Enable AI reviewer
TIP This summary will be updated as you push new changes.

@sven-n
sven-n merged commit fc55abc into MUnique:master Nov 12, 2026
2 checks passed
@pllanosclaria
pllanosclaria deleted the fix/destroy-phantom-names branch November 12, 2026 13:11
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.

[Bug] Season 6: Destroy and Phantom armor sets have swapped names, and "Destory" typo

2 participants