ogametracker / ogame-extension

5 stars 5 forks source link

Improve settings UI of resource conversion rates #216

Open PhrozenByte opened 2 months ago

PhrozenByte commented 2 months ago

IMO the current settings UI to set the conversion rates OGame Tracker uses to calculate standard units is a little confusing and likely causes a lot users to enter wrong values.

Bildschirmfoto von 2024-07-21 22-38-45

The UI changes depending on whether the user selects Metal or Deuterium as standard unit. When selecting Deuterium as standard unit, the UI asks for Deuterium divisors, which systematically matches common DSU-based trading rates like 3 : 2 : 1. To set this conversion rate, one must enter [ 3 ] Metal = 1 Deuterium and [ 2 ] Crystal = 1 Deuterium. This works very well.

However, when selecting Metal as standard unit, the UI changes to ask for Metal multipliers instead. Metal multipliers don't match anything users know from trading rates, but is a completely different approach. It notably doesn't match rarely used MSU-based trading rates; for example, the common DSU-based trading rate 3 : 2 : 1 equals the MSU-based trading rate 1 : 0.67 : 0.33. However, to set that trading rate, one must enter 1 Crystal = [ 1.5 ] Metal and 1 Deuterium = [ 3 ] Metal, not matching any trading rate systematic.

Notably, OGame Tracker's default DSU conversion [ 3 ] Metal = 1 Deuterium and [ 2 ] Crystal = 1 Deuterium matches the DSU-based trading rate 3 : 2 : 1. However, the default MSU conversion 1 Crystal = [ 2 ] Metal and 1 Deuterium = [ 3 ] Metal matches the DSU-based trading rate 3 : 1.5 : 1. I'm not entirely sure whether this is intended, or rather a bug.

The fact that it "looks" similar, but is a completely different approach and requires the user to first understand the difference (rather unlikely since there are no help texts) and then convert the values accordingly, I rather expect most users to enter wrong values. I thus suggest changing the settings UI to always ask for a DSU-based conversion rate, no matter the standard unit selected. Trading rates is something that users know and understand. The UI might look something like this in the future:

Bildschirmfoto von 2024-07-21 23-30-05

Note that none of the input fields must be readonly: whether a user enters a DSU-based (e.g. 3 : 2 : 1) or a MSU-based (e.g. 1 : 0.67 : 0.33) trading rate won't matter if implemented correctly.

This is a follow-up to the discussion in OGame's German forum at https://board.de.ogame.gameforge.com/index.php?thread/214640-ogame-tracker-trackt-expeditionsergebnisse-gefarmte-rohstoffe-und-mehr/&postID=4004126#post4004126

backfromexile commented 2 months ago

Hi, while I agree with what you're saying, I don't think it's very important and or confusing to users, otherwise I would have gotten way more reports or questions about this. However, since this should be a UI-only change, feel free to create a pull request for this.

Notably, OGame Tracker's default DSU conversion [ 3 ] Metal = 1 Deuterium and [ 2 ] Crystal = 1 Deuterium matches the DSU-based trading rate 3 : 2 : 1. However, the default MSU conversion 1 Crystal = [ 2 ] Metal and 1 Deuterium = [ 3 ] Metal matches the DSU-based trading rate 3 : 1.5 : 1. I'm not entirely sure whether this is intended, or rather a bug.

The defaults actually are the same as you can see here. However, they weren't for a long time and were fixed in a later update, but since existing user settings are not overwritten this never changed for existing users.