I abbreviated NumberValues as StringValues so that the in-game leaderboard wouldn't contain extremely long values. I looked at a bunch of threads regarding this problem on the DevForum, finding no working solutions. I tried putting values inside values, using Vector3 values for hidden sorting, etc., but nothing worked. Currently, it orders the players based on the first digit of the string, regardless of T, B, M (trillions, billions, millions), etc. It automatically sorts based on numerical order (1-0). How can I make it work correctly (K < M < B < T < Qd, etc.)?

Example of the problem for further clarification: 4.6M is above 2.3T when it should be below it.