Jump to content

[REQ] Sharing Maps


JayNic

Recommended Posts

  • 3 weeks later...

Dunno if the scripting apis are even available: but I'd love to be able to synchronize maps with other players

 

the information about found sectors is saved in the players.dat or maybe even the index file of the galaxy ... those are binary and we cant read them atm.

unfortunatelly this is also what the standard galaxy-map uses, and we dont have acces to this data yet via scripts  :-\

Link to comment
Share on other sites

Something like I have implemented at the Free Realms Avorion server

 

On the website I currently have maps for:

  • Explored Sectors (5min updates)
  • Faction Strength (5min updates)
  • Resources!!        (15min updates)

 

thats pretty cool  :D

how do you do that, parse the binary data files directly?

 

Yeah, there is no shortage of parsing going on, but overall not too hard on the instance.  Working on consistent legends for the faction types (Democratic, Empire, Guild, Pirates, etc) as well as colors for aggression, and blip scaling for empire size.

Link to comment
Share on other sites

My mapgen scripts were pretty rough and eating more cycles than I expected,  so I had to make some server upgrades this evening.  Game host (not the website) changed to  freerealms.mutant.enterprises

 

would you mind sharing your code?

Link to comment
Share on other sites

My mapgen scripts were pretty rough and eating more cycles than I expected,  so I had to make some server upgrades this evening.  Game host (not the website) changed to  freerealms.mutant.enterprises

 

would you mind sharing your code?

 

Great question!  I had been thinking about that, but the code is kind of a mess at the moment.  It didn't start out to be a big project (or a project at all really) - was just me poking to see what I could do. 

 

Generating the maps is not cpu or disk friendly, and there has been no shortage of 'bash-foo' involved. Here's the nutshell howto (maybe more of a rant as to the hows and whys):

 

Parse the XML files from the sectors folder, they are the ones ending in 'v'

insert to mysql

call a script to create a gnuplot script, and the data files, then run that

 

that's just to capture the basic sector info (x,y,factionIndex,crafts,wrecks,asteroids,stations). 

 

Hmm,  that worked.  what to do next? A political/faction map!

 

To get the faction names I had to parse the binary sector files (the ones without the 'v'), but since I want to be able to use specific gnuplot point types for specific types of factions, I had to find those...  more parsing through binaries then some eyeballing to identify the types (24 of em so far).  Put em in another table.

 

Now, create another script to make another gnuplot script and data files (one data file per faction)

each faction gets it's own data file, and when you run the gnuplot script all the data points are layered on top of the galaxy map each with a uniq (currently random) point type and color.  Point size is determined by SUM(crafts + wrecks + stations)

 

Hmm...  that worked too.  I wonder....

 

Parse it all again a different way to get the resources for the resource maps (108 uniq resource maps so far) and store that data in another mysql table.

 

With that in hand, instead of stacking the gnuplot, I do a for-each on the resource recordset and create unique gnuplot script / data file pairs for each resource, and run those.

 

End result is about 110 images of 3600x3600 pixels, at about 1mb each, via cron jobs running about every 20 min.

 

Also, remember that the galaxies are 1000x1000 sectors, so 1,000,000 sectors (max) and each sectors file is scanned everytime the database is updated.

 

In the meantime though, while I'm cleaning the scripts and prepping them for github, they are a nifty and unique attraction for my server ;)

 

In a perfectly funded world, I'd run the maps jobs, mysql, etc each on a dedicated instances.

 

 

.MutieG.

http://avorion.mutant.enterprises

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...