![]() |
VOOZH | about |
Universally Unique Identifier (UUID) is a 128-bit long number that is used by Minecraft as a label to distinguish between separate instances.
8-4-4-4-12 with each number marking the number of hexadecimal digits fitting into the corresponding section. Further detail follows in the Technical aspects section.f81d4fae-7dec-11d0-a765-00a0c91e6bf6.
00000001-0002-0003-0004-000000000005 can be evaluated as the same as 1-2-3-4-5.00000001000200030004000000000005, where it is impossible for the majority of empty digits to be removed as opposed to the hyphenated hexadecimal representation.Long data type in the game.UUIDMost:-568210367123287600 paired with UUIDLeast:-6384696206158828554.[I;-132296786,2112623056,-1486552928,-920753162]The following table represents the situations in which UUIDs are used in places accessible by a player:
| Location (general) | Location (path) | Format | Use |
|---|---|---|---|
| All entities (NBT) | UUID |
int-array | Own UUID |
| Tameable mobs (NBT) | Owner |
int-array | Owner |
| Projectiles (NBT) | Owner |
int-array | Entity that shot the projectile |
| Item entities (NBT) | Owner |
int-array | Target player for /give command
|
| Item entities (NBT) | Thrower |
int-array | Player who dropped the item |
| Shulker bullets (NBT) | Target |
int-array | Entity targeted for attack |
| Conduits (NBT) | Target |
int-array | Entity targeted for attack |
| Player heads (NBT) | profile. |
int-array | Owner of the skin |
| Player heads (NBT) | SkullOwner.Properties.textures[].Value.ProfileId |
hexadecimal | Owner of the skin |
| Mobs (NBT) | Leash.UUID |
int-array | Entity that leashed the mob |
| Breedable mobs (NBT) | LoveCause |
int-array | Player who fed the mob |
| Wardens (NBT) | anger.suspects[].uuid |
int-array | Target associated with the anger level |
| Zombie Villagers (NBT) | ConversionPlayer |
int-array | Player who is converting the Zombie Villager |
| Most of the neutral mobs (NBT) | AngryAt |
int-array | Entity that hurt the neutral mob |
| Villagers (NBT) | Gossips[].Target |
int-array | Player who caused the gossip |
| Players (NBT) | RootVehicle.Attach |
int-array | Identifier of the entity that the player is riding |
| Target selectors (Commands) | - | Hyphenated hexadecimal | Selected entity |
| server.properties | resource-pack-id |
Hyphenated hexadecimal | Identifies the server resource pack with clients |
A player UUID is generated when the user purchases and registers a new Minecraft: Java Edition account. For Bedrock Edition, the Xbox User ID[2] (XUID, or Xbox services ID[3]) is used instead as the unique identifier. Users can also play Java Edition in offline mode with a specified username; the unique identifier chosen for offline mode players is UUID version 3, generated from the MD5 hash of OfflinePlayer:<username>. The community often create sites (most of which are open source) that allow people to search up a name or player UUID to get their skin, player UUID, and name, this is all done with the Mojang API.
A UUID can be expressed as a 128-bit number, which means that it supports all integer values from -(2^127) to (2^127)-1. It is important to note that this evaluation does not refer to the range of values generated by the game but instead focuses on the capacity of the format.
Hyphenated hexadecimal format UUIDs follow the pattern xxxxxxxx-xxxx-Axxx-Bxxx-xxxxxxxxxxxx.
| Section name | Bit range | |||
|---|---|---|---|---|
| From | To | Size | Characters | |
| time-low | 96 | 127 | 32 | 8 |
| time-mid | 80 | 95 | 16 | 4 |
| time-high-and-version | 54 | 79 | 16 | 4 |
| clock-seq-and-reserved | 36 | 53 | 8 | 2 |
| clock-seq-low | 48 | 45 | 8 | 2 |
| node | 0 | 47 | 48 | 12 |
(The names make sense only for version 1 and 2 UUIDs, but it has been passed onto all forms of UUIDs used.)
There are five versions of UUIDs. Versions 1 and 2 are based on current time and MAC address; versions 3 and 5 are based on hashing a string; version 4 is based on completely random generation. The "version" value occupies four bits, and is located in the UUID string format at the position indicated by an "A".
The "B" position is the variant (format) of the UUID. Depending on the specific variant, it may occupy the high 1 to 3 bits:
Minecraft uses version 4, variant 1 (RFC) UUIDs, which means that the entire number with the exception of the bits used for metadata (version and variant) is randomly generated. Java's UUID.randomUUID() function performs this exact task.
A table with the locations and values of the metadata:
| General | Hyphenated hexadecimal format | Most/Least format | int-array format | |||||
|---|---|---|---|---|---|---|---|---|
| Bit number | Value | Use | Section | Bit number | Section | Bit number | Section | Bit number |
| 62 | 0 | UUID format | clock-seq-and-reserved | 6 | Least | 62 | Index 1 | 30 |
| 63 | 1 | 7 | 63 | 31 | ||||
| 76 | 0 | UUID version | time-high-and-version | 12 | Most | 12 | Index 2 | 12 |
| 77 | 0 | 13 | 13 | 13 | ||||
| 78 | 1 | 14 | 14 | 14 | ||||
| 79 | 0 | 15 | 15 | 15 | ||||
| General | Hyphenated hexadecimal format | Most/Least format | int-array format | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Use | Bit range | Range size | Value | Section | Bit range | Section | Bit range | Section | Bit range | ||||
| From | To | From | To | From | To | From | To | ||||||
| UUID format | 62 | 63 | 2 | 2 | clock-seq-and-reserved | 6 | 7 | Least | 62 | 63 | Index 1 | 30 | 31 |
| UUID version | 76 | 79 | 4 | 4 | time-high-and-version | 12 | 15 | Most | 12 | 15 | Index 2 | 12 | 15 |
| Minecraft: Bedrock Edition | |||||||||
|---|---|---|---|---|---|---|---|---|---|
| Editions |
| ||||||||
| Development |
| ||||||||
| Technical |
| ||||||||
| Multiplayer | |||||||||
| Exclusive features |
| ||||||||
| Removed | |||||||||