

Numbers are notated with the most significant digits first (big-endian). For example, Player.UserId is an int64, and MarketplaceService:PromptPurchase() and TeleportService:Teleport() each expect int64 for the ID arguments. This type of integer is common for methods that use ID numbers from the Roblox website. The lower level class will be represented by doubles d with floor (d) d and d - 1 < d, i.e. A fixed point number is an integer paired with a radix point, logically breaking the integer into a whole and fractional part. The int64 number type refers to a signed 64-bit integer, which ranges from -2 63 to 2 63 - 1. This class produces high level objects for interpreting and working with fixed point numbers.

This consistency obviously is not random. Properties and functions that expect integers may automatically round or raise errors when you assign or pass non-integers to them. This is due to the fact that math.randomseed is responsible for setting the default seed (or algorithm-generator) for the random numbers brought out by math.random. The integer number type, or int, refers to a 32-bit whole number, which ranges from -2 31 to 2 31 - 1. In computer science terms, they are single-precision (32-bit) floating-point number, which isn't as precise as double-precision floating-point numbers, but is sufficiently precise for most use cases and requires less memory and storage. The float number type refers to a real number with a decimal place.

Luau doesn't distinguish between integers and numbers, but the API reference sometimes distinguishes between them to be more specific about how to use each API.
