Author Topic: Maps and map making  (Read 2020 times)

0 Members and 2 Guests are viewing this topic.

Offline nakorkren (OP)

  • Commander
  • *********
  • n
  • Posts: 346
  • Thanked: 305 times
  • Gold Supporter Gold Supporter :
    2025 Supporter 2025 Supporter : Support the forums in 2025
Maps and map making
« on: October 01, 2024, 06:15:28 PM »
I was thinking the other day that the Galaxy map leads us to misunderstand how travel works in Aurora. It shows the systems as dots, and then big long connections between them. That puts you in the mindset that the JPs are the long travel part, and the systems are "small" local areas. In reality travel between systems is instantaneous, and it's travel within the system that takes a long time.

With that in mind I tried to envision what a map would look like that showed the travel distance between JP within systems, i.e. flip the script and make the distance between systems zero and within systems large, as it really is. The only way I could make it work from a purely geometry perspective was to put it into 3D. I used Matlab's graph object, with the JP as nodes (one single node for say the "Sol-Vega" JP, not one for each direction), with the 'force' distribution layout on so the edges are 'direct' weighted by distance between JP. In theory this should result in the edges length as displayed being proportional to the distances between JP, although I'm skeptical it's strictly proportional. That said, here's my first attempt.

It's definitely easier to interpret when you can spin it real-time, but I do feel like it does a better job of representing how long it takes to get from one place to another. I only represented JP from 6 systems (slightly different colors on each system, used a random RGB color and they weren't as far apart as you'd hope) since I was having to enter the JP positions manually from the game screen. I'm in the process of writing a script to import a csv file extracted from the Aurora DB to create the entire galaxy in one go, since what you see here was manually inputted. If I can get that working I would like to add nodes and edges for key bodies, i.e. player and known NPC colonies, since that's pretty important for understanding transit distance/time. For example in this map, Earth is very close to the Sol-Chara gate, meaning it takes a long time to get to the Vulcar-Rana gate even though it's technically only two jumps.

Coding has been slow since I'm pretty rusty. I found that AI has been a big help with that coding though, which is interesting and echo's Steve's point recently about how he's using it in his work. I'll post an update if/when I get the automated version working. I was able to take some time off today and this is how I spent it, instead of being traditionally "productive" :)

   
 
The following users thanked this post: bdub1, BAGrimm, Zap0

Online Zap0

  • Captain
  • **********
  • Posts: 424
  • Thanked: 516 times
Re: Maps and map making
« Reply #1 on: October 01, 2024, 06:59:18 PM »
Awesome. This is exactly the way to think about the map. Do you plan on eventually releasing a script that generates these on the fly from the DB?

With bigger map sections the generated graph will become too busy quickly, so there'd need to be some mechanism to render only sections of it.

For now, adding colonies or system centers as nodes will make it easier to understand travel distances.
 

Offline Steve Zax

  • Warrant Officer, Class 2
  • ****
  • S
  • Posts: 62
  • Thanked: 15 times
Re: Maps and map making
« Reply #2 on: October 01, 2024, 09:50:28 PM »
I try to position my new systems on the map near or far from my home system in proportion to how far the warp points are from the home star and also in the direction they are around the star. for example, if wp 1  is inside mares orbit the discovered system is very close to Sol, but if its beyond Neptune its much farther. After all, as you say, the actual distance (even in a real starts setting) is not relevant to almost anything (exception being stellar disaster)
 

Offline nakorkren (OP)

  • Commander
  • *********
  • n
  • Posts: 346
  • Thanked: 305 times
  • Gold Supporter Gold Supporter :
    2025 Supporter 2025 Supporter : Support the forums in 2025
Re: Maps and map making
« Reply #3 on: October 05, 2024, 03:30:49 PM »
Do you plan on eventually releasing a script that generates these on the fly from the DB?
Unlikely that I'll be savvy enough to script the reading straight out of the DB. I hard coded which gameID to reference and which RaceID to use the "known systems" from, although I could probably infer that. The bigger problem is that right now I'm doing a manual export via SQLite, and then importing the CSV files. It's possible I could figure out how to do that with matlab, and I know superstrijder15 previously figured out how to do it with Python. They even put the map back INTO the DB after reorganizing it. https://aurora2.pentarch.org/index.php?topic=13284.msg165346#msg165346

With bigger map sections the generated graph will become too busy quickly, so there'd need to be some mechanism to render only sections of it.
That I can probably manage. No promises (at all) on when I'll have time to work on it again. I'm happy to share the matlab code with anyone who's interested or impatient, though. Just DM me.
 

Offline misanthropope

  • Lt. Commander
  • ********
  • m
  • Posts: 277
  • Thanked: 74 times
Re: Maps and map making
« Reply #4 on: October 06, 2024, 11:15:11 AM »
feel like this representation is going to become unreadably noisy before your empire reaches 20 systems.

 

Online skoormit

  • Vice Admiral
  • **********
  • Posts: 1023
  • Thanked: 436 times
Re: Maps and map making
« Reply #5 on: October 06, 2024, 01:12:06 PM »
I hard coded which gameID to reference and which RaceID to use the "known systems" from, although I could probably infer that.

My own scripts just assume that we want data for the most recently created player race (i.e. non-NPR) in the most recently created game. So all my scripts start with:

Code: [Select]
WITH const AS
(
select
g.GameID
,r.RaceID
from
FCT_Game as g
inner join FCT_Race as r on r.GameID = g.GameID and r.NPR = 0
order by
g.GameID desc
,r.RaceID desc
limit 1
)

Then I join const (just like it's a normal table) to some other table in the query on the RaceID and/or GameID matching, as appropriate.
 

Offline paolot

  • Lt. Commander
  • ********
  • p
  • Posts: 255
  • Thanked: 58 times
Re: Maps and map making
« Reply #6 on: October 06, 2024, 01:51:49 PM »
Sorry, but, in your image, I don't understand where the stars are.
Each dot is marked by two stars names, and this makes me assume it isn't a star. So, where are they?
Stars are the landmark of the galaxy real space: in a space representation, not showing them is, at least for me, confusing.
Moreover, as others, I too fear a 3D image can fast become cluttered, IMO more than the 2D map of the current version of Aurora, with the loops and the long range links.
Please, can you help me to correctly read your image?
 

Offline Adseria

  • Warrant Officer, Class 1
  • *****
  • Posts: 87
  • Thanked: 5 times
Re: Maps and map making
« Reply #7 on: October 06, 2024, 02:27:37 PM »
Sorry, but, in your image, I don't understand where the stars are.
Each dot is marked by two stars names, and this makes me assume it isn't a star. So, where are they?
Stars are the landmark of the galaxy real space: in a space representation, not showing them is, at least for me, confusing.
Moreover, as others, I too fear a 3D image can fast become cluttered, IMO more than the 2D map of the current version of Aurora, with the loops and the long range links.
Please, can you help me to correctly read your image?

Each dot represents a jump point, not a star. So, for instance, the "Sol-Vulcar" point (top centre) represents both the jump point in the Sol system to Vulcar, and the one in Vulcar leading to Sol (since, from a gameplay perspective, travel between the two is instantaneous, on this map, they appear in the same place). This means that all points on the map with "Sol" in the name represent a jump point in the Sol system, and the other system name is the other system the jump point connects to. The lines represent the travel distance within a system; the bright green lines are within the Sol system, while the pink lines are within the Vulcar system. The length of a line (in 3D space) represents the distance, within a system, from one jump point to another. The stars themselves aren't represented on the map.
 

Offline paolot

  • Lt. Commander
  • ********
  • p
  • Posts: 255
  • Thanked: 58 times
Re: Maps and map making
« Reply #8 on: October 06, 2024, 03:53:06 PM »
... The stars themselves aren't represented on the map.

Thanks Adseria!
So, not a star map, but a map of the connections.
For how I use the galaxy map in the game, I feel I won't use this new one instead of that.
And I don't understand how fleets, bases and the other information would be shown, as these ones are next to stars.

... The lines represent the travel distance within a system ...

The travel distance to go from a jump point to another one, within a system, is it?
I feel this information could be more suitable/useful in the system map (toggle-able on/off, anyway).
And eventually the full distance a ship shall travel in the Movement Orders tab in the Naval Organization window.
« Last Edit: October 06, 2024, 04:05:07 PM by paolot »