"value of type nil cannot be converted to a number" on datastore script

nil is not a number and IntValue.Value only accept number type. just replace coins.Value = nil with coins.Value = 0 at line 17. (nil is like NULL pointer , 0 (for C/C++) not nothing. Luau treat it as an invalid internal type)
but I wanna give some advice:
Why dont you provide better failure handling? You should support the retry mechanism. Delivering your code into a bad production environment can cause data to not be available properly because :GetAsync sometimes fails and your practices do not comply with any common handling rules.