Skip to content

Wrong damage parsing on non-English locale #2

@LightExS

Description

@LightExS

When using damage tracker on a pc that doesn't have english as their main language (in my case it's Ukrainian) damage is being multiplied by a hundred.

Here's part of log:
[23:05:21] [Render thread/INFO]: [DT] ChatTap saw: [Player] dealt 1222,60 ? Multi-Element Damage with Basic Attack
[23:05:21] [Render thread/INFO]: [DT] parsed amount=122260,00 element='Multi-Element' skill='Basic Attack' verb='dealt'

The problem is that different languages use different number separators, and while in US you separate thousand using ","(comma) and decimals using "."(dot), some languages separate thousand using " "(space) and decimals using ","(comma).

In RegexProfile and HeuristicChatParser you remove all commas before parsing the number which results in this behaviour. Unfortunately I don't know java, so if made a PR request it would end up in being some AI slop which I don't think is beneficial to the project.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions