No Man's Sky

No Man's Sky

View Stats:
How do Portal Coordinates REALLY work?
I've done some calculations, and with sixteen glyphs to combine into combinations of twelve for a portal address... There's only 1,820 possible combinations. Even multiplying that by 255 for each galaxy's differing end locations, it's still only 464,100 combinations. Nowhere close to the 18,446,744,073,709,551,616 total planets. So, how does EVERY planet have a Portal address?
< >
Showing 1-15 of 23 comments
Captain Brendig Jul 10, 2023 @ 11:58am 
I think you're looking at it in the wrong way. Just four glyphs would add up to 65536 combinations. I don't remember how it works, but it's based more on a cartesian coordinate system. The first glyph of course is the planetary body within any system, and IIRC the rest determines the galactic region and where in the region the system is. Will have to look it up again to be sure.
Redlegoguy1 Jul 10, 2023 @ 12:09pm 
Took me a minute but I think I figured out what went wrong here. 1820 is 16 nCr 12, which is not the correct operation here. That is the maximum number of combinations using each glyph no more than once, but such a restriction does not apply in game. You can have 16 of glyph 1 as an address, for example. The correct calculation is 16^12, since there are 16 options for each of the 12 positions, which gives a total of 281,474,976,710,656 possible entries. Interestingly though, 16^12 is 2^48, which is still less than the 2^64 available planets, so there’s still something up there that I don’t have an answer for, but it’s not as many orders off as you’ve suggested.
MechWarden Jul 10, 2023 @ 12:09pm 
If you want a summary of how it works, this place details it. Maybe this will help with that, or make it even more muddied, since some combinations might not be strictly valid.
https://nomanssky.fandom.com/wiki/Portal_address
Lindy Bomber Jul 10, 2023 @ 12:20pm 
Originally posted by Redlegoguy1:
Took me a minute but I think I figured out what went wrong here. 1820 is 16 nCr 12, which is not the correct operation here. That is the maximum number of combinations using each glyph no more than once, but such a restriction does not apply in game. You can have 16 of glyph 1 as an address, for example. The correct calculation is 16^12, since there are 16 options for each of the 12 positions, which gives a total of 281,474,976,710,656 possible entries. Interestingly though, 16^12 is 2^48, which is still less than the 2^64 available planets, so there’s still something up there that I don’t have an answer for, but it’s not as many orders off as you’ve suggested.

This is mostly correct. The total combat of glyphs is 16^12. But not all combinations are used. The total number of systems in a galaxy is in the trillions. I did the math once but I don't recall the exact answer.

2^64 is the total number of seed values for a planet, but only a small fraction of those seeds are used.
笛野めのん Jul 10, 2023 @ 12:22pm 
It would be a ridiculous amount to start explaining in a thread, so when you have time Mr. (Dr.?) Please take a look at the WIKI introduced by Mr. (Dr.?) MechWarden.
It should be possible to view it in each language.
Briefly, the glyph combinations show the coordinates of "star systems" and each star system has 1-6 planets(or moon).
There are also "phantom stars" that cannot be visited by glyphs.
Last edited by 笛野めのん; Jul 10, 2023 @ 12:30pm
Grimmslayer73 Jul 10, 2023 @ 12:24pm 
Originally posted by Redlegoguy1:
You can have 16 of glyph 1 as an address, for example.
Technically, you can't. You can enter the first glyph 12 times, but it you look carefully when you activate the portal it tells you it encounters an error and it dumps you on the closest planet to that address, which is probably an address that has 2 or 3 of that glyph.
momopovich Jul 10, 2023 @ 12:26pm 
Been a while since i havent done math but I'm pretty sure the number of combinations is something like 184 884 258 895 036 416, definitely not 1820 LOL
Redlegoguy1 Jul 10, 2023 @ 12:53pm 
Originally posted by Grimmslayer73:
Originally posted by Redlegoguy1:
You can have 16 of glyph 1 as an address, for example.
Technically, you can't. You can enter the first glyph 12 times, but it you look carefully when you activate the portal it tells you it encounters an error and it dumps you on the closest planet to that address, which is probably an address that has 2 or 3 of that glyph.
I’ve just read more into it myself and I was unaware of this, though I’m not surprised. To be fair, 16 ones is a valid combination, it’s just not a valid address. From what I can tell there’s not an easy way to exclude all addresses that are not valid destination, and also situations where two addresses will send you to the same destination, so the maximum number of combinations is one of the narrowest metrics that’s usable.

On a side note, from what I can tell, the number discrepancy comes down to a large number of planets being inaccessible through normal gameplay, namely the phantom stars already mentioned. Apparently there are planets that exist that don’t have valid portal addresses, so they count toward the total number of planets but not the total number of addresses. There could also be a lot of unused ones, as someone suggested. Interestingly either way the number of valid planet coordinates far outnumber the amount of possible glyph combos, even including invalid addresses. The planet coordinates from the signal booster use the full 16 sets of 16 characters, so it’s 16^16:16^12, which is equivalent to 65536:1 (16^4:1).
Captain Brendig Jul 10, 2023 @ 1:33pm 
Originally posted by Redlegoguy1:
Interestingly either way the number of valid planet coordinates far outnumber the amount of possible glyph combos, even including invalid addresses. The planet coordinates from the signal booster use the full 16 sets of 16 characters, so it’s 16^16:16^12, which is equivalent to 65536:1 (16^4:1).
Just to muddy up the waters here I believe only the first twelve alphanums are used in the galactic address, the last four are just placeholders (or unit identifier). Such as (1111:2222:3333:xxxx).
Redlegoguy1 Jul 10, 2023 @ 3:52pm 
Originally posted by Captain Brendig:
Originally posted by Redlegoguy1:
Interestingly either way the number of valid planet coordinates far outnumber the amount of possible glyph combos, even including invalid addresses. The planet coordinates from the signal booster use the full 16 sets of 16 characters, so it’s 16^16:16^12, which is equivalent to 65536:1 (16^4:1).
Just to muddy up the waters here I believe only the first twelve alphanums are used in the galactic address, the last four are just placeholders (or unit identifier). Such as (1111:2222:3333:xxxx).
Supposedly last 4 are solar system index, so the first 3 quartets are the coordinates for the region, and the last quarter is used to define the xth star in that region. That being said, it seems like not all 16 digits are truly used, for example the y quartet maxes out at 00FF, which means digits 5 and 6 will always be 0.

It feels like I must be missing something somewhere, because I’m pretty sure 2^64 planets has come up a lot as the real value, but that necessitates 2^64 seeds, and it seems like neither portal address or galactic coordinates have enough valid values to facilitate that. That has to mean either something else is used for the seed, or that there aren’t actually 2^64 planets, and even if the latter is the case that still doesn’t feel like a complete explanation.
Captain Brendig Jul 10, 2023 @ 6:01pm 
Originally posted by Redlegoguy1:
Originally posted by Captain Brendig:
Just to muddy up the waters here I believe only the first twelve alphanums are used in the galactic address, the last four are just placeholders (or unit identifier). Such as (1111:2222:3333:xxxx).
Supposedly last 4 are solar system index, so the first 3 quartets are the coordinates for the region, and the last quarter is used to define the xth star in that region. That being said, it seems like not all 16 digits are truly used, for example the y quartet maxes out at 00FF, which means digits 5 and 6 will always be 0.

It feels like I must be missing something somewhere, because I’m pretty sure 2^64 planets has come up a lot as the real value, but that necessitates 2^64 seeds, and it seems like neither portal address or galactic coordinates have enough valid values to facilitate that. That has to mean either something else is used for the seed, or that there aren’t actually 2^64 planets, and even if the latter is the case that still doesn’t feel like a complete explanation.
Oops, my bad. It's been so long since I used a signal booster I forgot about the preceding alpha code. :steamfacepalm: But yes you are correct about the last four. On the planet I just checked, the first glyphs are balloon/bird/diplo/face. The PA ends with 0132, which corresponds nicely assuming that the PA only shows system and not planets.

Breaking the glyphs down, my system comes out as 5 132 04 F4A 106. So in decimal that seems to be 6x4096x255x4096x4096 possible planets/moons in a galaxy, including phantoms and those that we shall not speak of systems inside the core itself. If I am getting this correct, that is. As I understand it the GA is in Planet (p) Sytem (sss) then voxels (yy) (xxx) (zzz). And I'm not great with math... :steamsad: Multiply that by the amount of galaxies and you start getting close to the 2^64 number. No idea of how they generate the seeds; that seems to be a complicated algorithm.
Last edited by Captain Brendig; Jul 10, 2023 @ 6:14pm
Lindy Bomber Jul 10, 2023 @ 6:29pm 
Originally posted by Redlegoguy1:
Originally posted by Captain Brendig:
Just to muddy up the waters here I believe only the first twelve alphanums are used in the galactic address, the last four are just placeholders (or unit identifier). Such as (1111:2222:3333:xxxx).
Supposedly last 4 are solar system index, so the first 3 quartets are the coordinates for the region, and the last quarter is used to define the xth star in that region. That being said, it seems like not all 16 digits are truly used, for example the y quartet maxes out at 00FF, which means digits 5 and 6 will always be 0.

It feels like I must be missing something somewhere, because I’m pretty sure 2^64 planets has come up a lot as the real value, but that necessitates 2^64 seeds, and it seems like neither portal address or galactic coordinates have enough valid values to facilitate that. That has to mean either something else is used for the seed, or that there aren’t actually 2^64 planets, and even if the latter is the case that still doesn’t feel like a complete explanation.

The exact format of the portal address is;
Portal addresses break down into five parts. The first glyph is the Planet Index. The second, third, and fourth glyphs combine into the Star System Index. The remaining glyphs are used to identify the region (i.e. define X, Y, and Z locations) in the galaxy. It can be visualized as follows:

[SSS][YY][ZZZ][XXX] – (P = Planet Index / S = Star System Index / Y = Height / Z = Width / X = Length)[/quote]

https://nomanssky.fandom.com/wiki/Portal?so=search#Portal_Address

Each region is capable of containing up to 4096 solar systems, but generally less than 600 of them appear on the Galactic Map, the rest are unused phantom stars.

The size of a region can be determined by searching for the highest possible system ID with the portal sequence. Only the second to fourth glyph of the sequence has to be changed for this method, the rest stays the same.

One can compare when the entered address deviates from the target address which signals the end of the system IDs. The target address can be calculated with the help of the Pilgrim Star Path by entering the target's coordinates from the Signal Booster. It is advised to halve the distance from the highest known working portal sequence and the highest known non-working portal sequence to save time during the approximation.

Based on the galaxy's radius (819k ly) and its height (51k ly) compared to the portal network of 2048 regions for the radius and 128 regions for the height, the proportions of one region roughly falls into 400ly x 400ly x 400ly. The total number of regions is 16^8-7^8 = 4.2892 billion per galaxy. You will most likely have one just for yourself.

https://nomanssky.fandom.com/wiki/Region

I don't have a source for this, but my understanding is each star system has a seed based on of the x,y,z coordinates relative to a galactic coordinate system. This is used to generate seeds for ships, planets, ect. Seeds for planets are double long integers (2^64). I don't think they are directly related to portal addresses.

Given;
256 (~2^8) galaxies
~4.29 billion (~2^32) regions per galaxy
~512 (2^9) starts per region
~4 (~2^2) planets per star

We can estimate the number of planets current available to be
~2^51 ~ 2.25*10^15 ~ 2.25 quadrillion ~2,250 trillion
or
2.20 trillion stars per galaxy. In contrast the Milky Way has a bout 400 billion stars.

This is probably a high side estimate since I round up regions and planets.

Last edited by Lindy Bomber; Jul 10, 2023 @ 6:42pm
Redlegoguy1 Jul 10, 2023 @ 7:34pm 
Originally posted by Lindy Bomber:
I don't have a source for this, but my understanding is each star system has a seed based on of the x,y,z coordinates relative to a galactic coordinate system. This is used to generate seeds for ships, planets, ect. Seeds for planets are double long integers (2^64). I don't think they are directly related to portal addresses.
So here's the thing, the planet seeds almost certainly have to connect to the coordinate system in some way, even if indirectly, because they have to be deterministic. They could theoretically store coordinate and seed pairs ahead of time in a static list, but if you take 64 bits for coordinates and 64 bits for the seed, you've got 2^7 bits of data for 2^51 planets. That comes out to about 36 petabytes of data just for the list of seeds. The solution there is to have a deterministic relationship, so if you have one you can always calculate the other, but here's where the next problem comes in. If we're assuming the coordinates are the starting point and the seed is the endpoint, the problem we run into is that we can't have two sets of coordinates come out to be the same seed, otherwise there's no point in having unique seeds if the same planet is allowed to generate multiple times. If the coordinates really aren't 64 bits and are only 48, they can't use the full set of 64 bit options, functionally meaning the seeds are only 48 bit. You just can't generate 2^64 unique numbers when your input maxes out at 2^48. So this would have to mean that either the real coordinates are 64 or more bits, or the full range of possible seeds doesn't use all 64 bits.

All of that being said, in the process of going through that I realized there is another option. We could have the process backwards, instead of starting with coordinates and generating a seed, it could be the other way around. The starting point could be all valid seeds, and they could then convert into coordinates, as there's no problems generating 2^48 unique numbers from 2^64 possibilities. The problem there is that you can get two different planet seeds that convert to the same coordinates, but that's far easier to deal with. One option could be that you do actually generate a full 64 bit coordinate number, but use some of those 16 bits you're cutting off to determine which seed gets priority at a given coordinate.
Ultimately I think the main thing here is that if they are in fact using 64 bit seeds, they have to be using some 64 bit number as the starting point somewhere in the process.
taniwhat Jul 10, 2023 @ 7:56pm 
Why not allow the same planet to come up multiple times if there are multiple portals/planet.

I doubt it's clever, my guess is they calculate a coordinate from the glyphs then go for 'what's close'. That's far simpler than trying to get a 1:1 mapping.
Lindy Bomber Jul 11, 2023 @ 4:51am 
Redlegoguy1 makes some very interesting points. If galaxy seed generates system seeds which generate planet seeds the system would be determinate; but would require an absurdly long list of cashed coordinates or an absurd amount of calculations to generate them on the fly.

However, given that the x,y,z in the glyphs are the x,y,z region (not the system) and planets with the same glyphs but in different galaxies are different. Also system information, region name, and maybe a few other things have to come from somewhere.

Thinking this through more I see at least to possibilities.

A. Region x,y,z + galaxy ID creates a region seed. Region seed generates systems seeds and system seeds generate planet seeds. This would create a much shorter cashe list that could be generated on the fly.

B. The glyph system we see is incomplete and there are four more digit

[SSS][YY][ZZZ][XXX][GGGG] Where [GGGG] is a galaxy seed which is used to place systems in a region.

The missing piece might be found in the signal boaster coordinates which are the form;
xxxx : xxxx : xxxx : xxxx : xxxx

The middle three sets are the portal coordinates. The first set appears to be an alpha string (a-z) and the last appears to be random hex. I need to do more research on this.

< >
Showing 1-15 of 23 comments
Per page: 1530 50

Date Posted: Jul 10, 2023 @ 11:07am
Posts: 23