There is no error, But I am trying to figure out why the NumberValue is messing up, when it goes over 100 Trillion the value messes up.
Here's my code:
local plr = game.Players.LocalPlayer
repeat wait() until plr.Character ~= nil
numberCash = plr:WaitForChild("NumberRobux")
stringCash = plr:WaitForChild("leaderstats"):WaitForChild("Robux")
numberCash.Changed:Connect(function()
local numbers = #tostring(numberCash.Value)
stringCash.Value = numberCash.Value
if numbers == 4 then
stringCash.Value = string.sub(tostring(numberCash.Value),1,1).."."..string.sub(tostring(numberCash.Value),2,2).."K+"
elseif numbers == 5 then
stringCash.Value = string.sub(tostring(numberCash.Value),1,2).."."..string.sub(tostring(numberCash.Value),3,3).."K+"
elseif numbers == 6 then
stringCash.Value = string.sub(tostring(numberCash.Value),1,3).."."..string.sub(tostring(numberCash.Value),4,4).."K+"
elseif numbers == 7 then
stringCash.Value = string.sub(tostring(numberCash.Value),1,1).."."..string.sub(tostring(numberCash.Value),2,2).."M+"
elseif numbers == 8 then
stringCash.Value = string.sub(tostring(numberCash.Value),1,2).."."..string.sub(tostring(numberCash.Value),3,3).."M+"
elseif numbers == 9 then
stringCash.Value = string.sub(tostring(numberCash.Value),1,3).."."..string.sub(tostring(numberCash.Value),4,4).."M+"
elseif numbers == 10 then
stringCash.Value = string.sub(tostring(numberCash.Value),1,1).."."..string.sub(tostring(numberCash.Value),2,2).."B+"
elseif numbers == 11 then
stringCash.Value = string.sub(tostring(numberCash.Value),1,2).."."..string.sub(tostring(numberCash.Value),3,3).."B+"
elseif numbers == 12 then
stringCash.Value = string.sub(tostring(numberCash.Value),1,3).."."..string.sub(tostring(numberCash.Value),4,4).."B+"
elseif numbers == 13 then
stringCash.Value = string.sub(tostring(numberCash.Value),1,1).."."..string.sub(tostring(numberCash.Value),2,2).."T+"
elseif numbers == 14 then
stringCash.Value = string.sub(tostring(numberCash.Value),1,2).."."..string.sub(tostring(numberCash.Value),3,3).."T+"
elseif numbers == 15 then
stringCash.Value = string.sub(tostring(numberCash.Value),1,3).."."..string.sub(tostring(numberCash.Value),4,4).."T+"
end
end)
The line that makes it mess up is the elseif numbers == 15 line
NOTE Look at the source code to read it better

2 comments
Change it to an IntValue then. Upvote if helped xD
that won't help at all because an intvalue has a limit off 1 billion