Difference between revisions of "ID64"
(→Example) |
(→Example) |
||
Line 31: | Line 31: | ||
To fill in more, we'll need to identify more about the system and the sector it's in.<br/> | To fill in more, we'll need to identify more about the system and the sector it's in.<br/> | ||
− | The '''Eol Prou''' sector has an origin of [-10305, -1305, 19415], or in the internal galaxy coordinate space, [39680, 39680, 43520]. This puts it as sector [31, 31, | + | The '''Eol Prou''' sector has an origin of [-10305, -1305, 19415], or in the internal galaxy coordinate space, [39680, 39680, 43520]. This puts it as sector [31, 31, 34]. |
[[Image:ID64_Example2.png]] | [[Image:ID64_Example2.png]] |
Revision as of 22:40, 26 April 2017
This is an ID format used by the game to identify systems and stellar bodies. The ID is represented as a 64-bit integer.
Format
The 64-bit integer is effectively a structure, with different parts of the bitfield representing different aspects of the system's features.
These parts are:
- Mass code (3 bits) - the mass code of the system, with a = 0 through to h = 7
- Z boxel (0-7 bits) - the Z boxel (within-sector) coordinate of the system
- Z sector (7 bits) - the Z sector coordinate of the system
- Y boxel (0-7 bits) - the Y boxel (within-sector) coordinate of the system
- Y sector (6 bits) - the Y sector coordinate of the system
- X boxel (0-7 bits) - the X boxel (within-sector) coordinate of the system
- X sector (7 bits) - the X sector coordinate of the system
- N2 (11-32 bits) - the N2 number (within-boxel identifier) of the system
- Body ID (9 bits) - the ID of the body within the system; for systems this is always 0 (representing the arrival star)
Note that the X/Y/Z boxel coordinates and the N2 number have variable sizes; this is because the amount of space taken by these pieces of data is different depending on the mass code.
The following image shows the bitfield for each mass code:
Example
Take the system Eol Prou RS-T d3-94.
First up, this system has a mass code of d, which is 3 in the bitfield. Additionally, we can immediately say that the body ID is 0, since this ID64 is just for a system.
To fill in more, we'll need to identify more about the system and the sector it's in.
The Eol Prou sector has an origin of [-10305, -1305, 19415], or in the internal galaxy coordinate space, [39680, 39680, 43520]. This puts it as sector [31, 31, 34].
Additionally, we know the system's N2 - it's the last number in the system name, 94.
We've almost got everything we need - but we still need the X, Y and Z boxel coordinates.
These can be found by interpreting the rest of the system name (Eol Prou RS-T d3-94); this comes out as boxel ID 66057, with coordinates [9, 4, 4].
We now have a full 64-bit identifier, which in binary is 0000000000000000000000101111000111111001011111010001000100100011, as an integer is 3238296097059, or in hex is 000002F1F97D1123.
Use
The format first became visible with the release of E:D 2.2, as it is used in the VisitedStarsCache data file used to track which stars the player has visited.
It is also used when storing the current active route between game sessions; this is how the stellar body part at the top end of the ID was discovered (since you are able to set a route to planets/stations).