Author Topic: Pregenerate Unexplored Jump Points  (Read 1486 times)

0 Members and 1 Guest are viewing this topic.

Offline Aetreus (OP)

  • Able Ordinary Rate
  • A
  • Posts: 4
  • Thanked: 5 times
Pregenerate Unexplored Jump Points
« on: June 24, 2021, 09:54:48 AM »
As-is, Aurora has the weird situation where an unexplored JP is "safe" in that nothing can unexpectedly transit.   Active NPR's, if you have them, can potentially find a JP leading into your systems or into explored systems that you border, but those create new JP's not unexplored ones(EDIT: This isn't true, they'll link to an unex if one exists- thanks Bremen). 

The idea to change that would be that when a NPR or player race enters a system, the game immediately generates all the JP's and the systems that those JP's connect to.   So at the start of the game all the systems adjacent to Sol have already generated, and when one of them is entered by the player(or if it generates an NPR in one, immediately) all the systems adjacent to that system are generated. 

Potentially this could be configurable as a depth to generate, where 0 is the current behavior, 1 is the above, and 2+ would mean it would generate all the systems within however many jumps of the entered system. 

Overall I think this would make it less favorable to turtle in Sol, give NPRs some more time between their activation and when the player(or other NPR) can actually engage them, and limit the gamey-ness of JP exploration a little.   At a guess the cost would be to the number of systems generated at any time(I think this is minor), and also to the number of active NPRs which probably isn't. 
« Last Edit: June 24, 2021, 10:09:46 AM by Aetreus »
 
The following users thanked this post: skoormit, Gabrote42

Offline Bremen

  • Commodore
  • **********
  • B
  • Posts: 743
  • Thanked: 150 times
Re: Pregenerate Unexplored Jump Points
« Reply #1 on: June 24, 2021, 10:03:36 AM »
As-is, Aurora has the weird situation where an unexplored JP is "safe" in that nothing can unexpectedly transit.  Active NPR's, if you have them, can potentially find a JP leading into your systems or into explored systems that you border, but those create new JP's not unexplored ones.

For what it's worth, if someone generates a link into a system that has unexplored jump points it will connect to one of them. It only creates a "new" jump point if all the current ones are already explored.

I actually think if one were to go with your suggestion it might make sense to pre-generate every jump point connection at the start of game. Not every system, which would probably take forever, but the game could decide a number of jump points and their connections for every system ID and then place them when doing actual system generation. Maybe with some sort of pass to make sure all the systems were connected to all the others.
 
The following users thanked this post: serger, nonum, nuclearslurpee

Offline nuclearslurpee

  • Admiral of the Fleet
  • ***********
  • Posts: 2960
  • Thanked: 2222 times
  • Radioactive frozen beverage.
Re: Pregenerate Unexplored Jump Points
« Reply #2 on: June 24, 2021, 10:54:20 AM »
I actually think if one were to go with your suggestion it might make sense to pre-generate every jump point connection at the start of game. Not every system, which would probably take forever, but the game could decide a number of jump points and their connections for every system ID and then place them when doing actual system generation. Maybe with some sort of pass to make sure all the systems were connected to all the others.

This would actually be really, really cool because it would allow creation of custom galaxies with a little bit of SQL wizardry to replace the randomly-generated JP network with a set of pre-defined JPs. For example with Real Stars, defining a JP network to connect all the stars in a constellation. The best thing would be that once implemented this would probably allow such custom galaxies to be transferable between DB versions using a SQL wrapper of some sort.
 
The following users thanked this post: serger

Offline skoormit

  • Commodore
  • **********
  • Posts: 764
  • Thanked: 310 times
Re: Pregenerate Unexplored Jump Points
« Reply #3 on: June 24, 2021, 11:18:23 AM »
I actually think if one were to go with your suggestion it might make sense to pre-generate every jump point connection at the start of game. Not every system, which would probably take forever, but the game could decide a number of jump points and their connections for every system ID and then place them when doing actual system generation. Maybe with some sort of pass to make sure all the systems were connected to all the others.

This approach takes away the ability to alter the JP connection settings (%local, local distance) as the game goes on.
I've never changed those settings during a playthrough, but I can imagine worthwhile reasons for doing so.

This would actually be really, really cool because it would allow creation of custom galaxies with a little bit of SQL wizardry to replace the randomly-generated JP network with a set of pre-defined JPs. For example with Real Stars, defining a JP network to connect all the stars in a constellation. The best thing would be that once implemented this would probably allow such custom galaxies to be transferable between DB versions using a SQL wrapper of some sort.

You can already pre-create the JP network with SQL wizardry if you like.
One challenge is determining the distance of each JP from the primary star. When randomly generated, this distance is scaled by the mass of the star. If you are pre-generating JPs, that mass won't be known.
You can overcome that with more SQL wizardry. Just write a trigger to update the JP locations whenever a new system is generated.
 

Offline nuclearslurpee

  • Admiral of the Fleet
  • ***********
  • Posts: 2960
  • Thanked: 2222 times
  • Radioactive frozen beverage.
Re: Pregenerate Unexplored Jump Points
« Reply #4 on: June 24, 2021, 12:15:48 PM »
This would actually be really, really cool because it would allow creation of custom galaxies with a little bit of SQL wizardry to replace the randomly-generated JP network with a set of pre-defined JPs. For example with Real Stars, defining a JP network to connect all the stars in a constellation. The best thing would be that once implemented this would probably allow such custom galaxies to be transferable between DB versions using a SQL wrapper of some sort.

You can already pre-create the JP network with SQL wizardry if you like.
One challenge is determining the distance of each JP from the primary star. When randomly generated, this distance is scaled by the mass of the star. If you are pre-generating JPs, that mass won't be known.
You can overcome that with more SQL wizardry. Just write a trigger to update the JP locations whenever a new system is generated.

There's two big differences with this approach. First, you can define the JP network without creating every single system, which not only makes the SQL wizardry much easier (you don't need to go click "Create New System" 1000 times) but means that each game played on the same "map" can be different due to random system generation, allowing flavorful galaxies with replayability rather than always knowing for instance that you need to beeline through X, Y, and Z systems to get to Delta Fullofduraniumi before anyone else does. Plus random generation of NPRs, precursors, etc... basically start up a new game with all of your preferred settings and then run a SQL wrapper to generate the JP network.

Second, it would make it portable between different game versions, so that a JP network created in 1.14 can be played in 1.15+. Presently I think the lack of forward compatibility is a big restriction for people who want to create scenarios, anything larger than a few dozen systems is prohibitive in time requirement and by the time it was finished and released the new version will have come out and no one will want to play an out-of-date scenario. Obviously a JP network is only one part of a scenario, but it would allow for at least creating cool galaxy maps that can be replayed with minimal hassle.
 

Offline Migi

  • Captain
  • **********
  • Posts: 465
  • Thanked: 172 times
Re: Pregenerate Unexplored Jump Points
« Reply #5 on: June 25, 2021, 11:10:52 AM »
I think the main reason for the current system of generating jump points is to provide some of the same uncertainty that closed jump points had in Starfire.

By pre-generating JP links I think you reduce the possibility of having new links appear in unexpected places, because they will all be discoverable on the first survey, unless a new mechanic to 'hide' one end is added.
 
The following users thanked this post: skoormit, Gabrote42, nuclearslurpee