HearthSim/HSTracker

BgSessions placement text's translation is incorrect

kshired opened this issue · 10 comments

Describe the bug
When I set HSTracker's language to korean, BgSessions recap shows incorrect format for placement text.
In korean, ordinal format is not used for placement. ( It has to show not "n번째" but "n등" )

It's not a bug, but it seems to be changed.
So, my sugesstion is how about using Localization instead of NumberFormatter at

let formatter = NumberFormatter()
formatter.numberStyle = .ordinal
placementText.stringValue = formatter.string(from: NSNumber(value: game.placement)) ?? "?"

p.s)
HDT shows correct format for placement text.

To Reproduce
Steps to reproduce the behavior:

  1. Just play BG and see placement text in korean.

Game mode

  • Standard
  • Wild
  • Classic
  • Arena
  • Battlegrounds
  • Duels
  • Tavern Brawl
  • Dungeon Run/Book of Heroes/Book of Mercenaries
  • Single Player

Expected behavior
Shows correct format of the placement text.

Screenshots
스크린샷 2022-06-22 오전 2 18 31

Version (please complete the following information):
2.1.8

Is the screenshot showing what happens today or what is the correct way? I chose to use the NumberFormatter as I thought Apple would have done the translation properly. I can certainly switch to Localization like HDT did but just want to confirm exactly the difference as I don't know the subtleties here.

@fmoraes74
In screenshot shows, "3번째" but it has to be "3등".

번째 is used for ordinal number like english’s ( "st", "nd", "rd", "th" ), but korean’s ordinal number is not used for plcement.
Just use "등" ( it means placement ).

@fmoraes74
Oh I was mistaken, there's no BgSessions recap localization in HDT now.

But still this issue seems to be fixed.

Can you work on a fix? You can see the HDT localization here:

https://github.com/HearthSim/HDT-Localization/blob/master/Strings.resx#L3963

@fmoraes74
Ok Im gonna do that.

@kshired are you still going to do it? If not I will try to do it tomorrow.

@fmoraes74
Sorry I think I will not be able to resolve this issue in near days.. I'm swamped right now.

@kshired This will be the strings used:

"Battlegrounds_Game_Ordinal_1" = "1st";
"Battlegrounds_Game_Ordinal_2" = "2nd";
"Battlegrounds_Game_Ordinal_3" = "3rd";
"Battlegrounds_Game_Ordinal_4" = "4th";
"Battlegrounds_Game_Ordinal_5" = "5th";
"Battlegrounds_Game_Ordinal_6" = "6th";
"Battlegrounds_Game_Ordinal_7" = "7th";
"Battlegrounds_Game_Ordinal_8" = "8th";

I just need to test it out

@fmoraes74

"Battlegrounds_Game_Ordinal_1" = "1등";
"Battlegrounds_Game_Ordinal_2" = "2등";
"Battlegrounds_Game_Ordinal_3" = "3등";
"Battlegrounds_Game_Ordinal_4" = "4등";
"Battlegrounds_Game_Ordinal_5" = "5등";
"Battlegrounds_Game_Ordinal_6" = "6등";
"Battlegrounds_Game_Ordinal_7" = "7등";
"Battlegrounds_Game_Ordinal_8" = "8등";

U can use this translation for testing.

@kshired I have made the change and tested in English. There is patch today, so I will make a new release later once HDT is done