Page 1 of 2
Random universe generation using Astrosynthesis and Celestia
Posted: 08.10.2006, 00:58
by bidmaron
Anyone out there interested in generating a universe (well, a piece of it anyway) and replacing most of the stars.dat database? The idea would be to use Astrosynthesis (
http://www.nbos.com/products/astro/astro.htm available for $35-$39) to generate the desired density of stars within the desired radius of some galaxy section of interest, select a place in the Celestia universe to place it, have a program that removes stars from the stars.dat database within the desired radius and/or apparent magnitude of the center of interest, and then a program that converts the Astrosynthesis sector file into .ssc and .stc files.
Posted: 08.10.2006, 01:19
by Starshipwright
Is there a program that can edit the stars.dat file?
Posted: 08.10.2006, 01:24
by bidmaron
Not yet, that is part of the project.
Posted: 08.10.2006, 01:44
by Starshipwright
There is a globular cluster generator, a program that generates a group of stars of any size including planets for Celestia. It outputs .stc and .ssc files. It requires Windows however.
I do not know if this would be the same thing that Astrosynthesis does, but the Celestia program is free. You can find it at:
[/url]http://www.celestiaproject.net/~rassilon/[url]
There are two versions, one that requires manual installation and one with installers:
Manual: generator.zip, gc_tex_v3.zip, gc_extras_v2.zip
Installers: cluster.zip, gc_tex_v2.zip
Globular cluster generator
Posted: 08.10.2006, 01:52
by bidmaron
Thanks, I'll check that out. Astrosynthesis is pretty cool if you are into space games, as it will allow you to specify a relative amount of habitable worlds and will generate inhabitants if a world is deemed habitable.
Posted: 08.10.2006, 03:02
by cartrite
I may be wrong but I think the stars.dat file has a text version at cvs.
http://celestia.cvs.sourceforge.net/cel ... t?view=log
http://celestia.cvs.sourceforge.net/celestia/celestia/
I think there are also tools in the source code that converts the text file to a .dat file and a .dat file into .txt file in the folder celestia/src/tools/stardb. I never did this but I think thats how the stars.dat file is generated. The tools have to be built though.
cartrite
Stars.dat file info
Posted: 08.10.2006, 03:13
by bidmaron
Thanks for the info. I knew there had to be some cpp and header files somewhere to do it. This will come in handy.
By the way, the other useful thing about Astrosynthesis is that it will automatically generate star names, and you can control the naming rules.
Posted: 08.10.2006, 05:29
by Starshipwright
Impractical idea edit out
Posted: 08.10.2006, 05:57
by Starshipwright
Dale - I think that I have found an easy way to do what you are trying to do without having to edit stars.dat!
Celestia can read stars only from .stc files if you edit out "#" the line in the celestia.cfg file for the stars database. I know this works because it is written in the comments of the .cfg file and I checked it out myself. If you created all of the stars in your new galaxy as .stc files you could edit out the stars.dat to remove all the stars that are in this galaxy without having to edit the .dat file. This would make it easier to trouble shoot as you would not need to go though the trouble of unmaking the stars.dat file, making any changes to fix problems, and then remaking the file. Editing .stc files is so much easier!
cfg idea
Posted: 08.10.2006, 12:12
by bidmaron
Ok, I'll have to try the .cfg idea. That sounds good. As for making .stc files, my thought is that it will be a good intermediate and debugging step, but surely it would be faster to go straight to a .dat file. The .dat has to be faster than a .stc file when Celestia loads.
Re: Globular cluster generator
Posted: 08.10.2006, 13:36
by phoenix
bidmaron wrote:Thanks, I'll check that out. Astrosynthesis is pretty cool if you are into space games, as it will allow you to specify a relative amount of habitable worlds and will generate inhabitants if a world is deemed habitable.
sounds like a useful program but are there any limits?
currently I use my own modified version of this
solar system generator which works quite well for the current star database.
I mean can Astrosynthesis generate 100.000 stars with planets and moons or even 1 million?
by the way: the XYZ units in the stars.dat are lightyears with a precision of 2.
Posted: 09.10.2006, 02:32
by bidmaron
The program is actually pretty powerful. It can generate either cubical or spherical arrays of stars, either clustered or randomly distributed. It has a Visual Basic scripting architecture to make plug-ins (custom system generators, importers, etc), and the only limits to the size of systems are based on your patience. It will also generate images for the planets and includes an editor so you can edit the automatically generated images or make your own from scratch. Additionally, it can alternatively drive the program Fractal Terrains Pro to generate terrains, climates, and vegetation (if the world is habitable on the latter). You can add routes between the systems (either automatically or manually) and govern the display of these routes. You can designate political associations and spheres of influence. You can store custom data on each sector, subsector, system, planet, or other body. You can graphically drag systems around in 3d, create new systems, drag stars from one multiple star system to another, combine stars into multiples, move planets in orbit or from one system to another, etc. It's plug-in architecture seems very powerful. Its graphical displays are certainly not as sophisticated as Celestia, but that is not its forte.
Posted: 09.10.2006, 11:50
by phoenix
I've just tested the trial version and think it's a great program which lacks some configuration options for the generators...
i've tried to generate a very small 200 LY radius sphere with even stars at very low frequency and it generated over 300.000 stars!
thats way too much stars in short range and no way of adjusting the frequency or distance of stars...
so i'll stick to my own star and system generation.
the only neat thing is the starname generator and fractal mapper
Posted: 09.10.2006, 11:58
by bidmaron
Well, you can replace the star system generator with a plug-in. Why not convert your generator to a plug-in for AS? Then you can use the other features of the software to go with it.
System generator
Posted: 09.10.2006, 12:30
by bidmaron
Marc, how does your generator compare to Rassilon's generator? Do you have any documentation for it? I read your thread you referenced but found nothing. The comments about huge file structures make me a little nervous to try it. As for your underlying algorithms, do you use the Jim Burrows StarGen techniques or something else?
The other thing that would be easy to do with Astrosynthesis would be to write a script that would simply translate all stars radially further out by a desired density factor as compared to the generated density.
Posted: 29.11.2006, 14:27
by PuppetX
I know this is an old thread but I wonder if you ever managed to get anywhere with your project? It seems like something I'd like to have... Celestia is graphically very interesting, and I bought AstroSynthesis for my RPG project. I would like to be able to combine the two... But I have no programming skills of my own, and a websearch brought me here.
so, yeah
Posted: 30.11.2006, 00:58
by bidmaron
Yes, I have made a lot of progress, but I'm still not done. Right now, I have both export and import scripts that will take data either from Celestia to Astrosynthesis or the other way around. When you take data into Astro, you have the option of converting each ssc file into a 'subsector' (and an analogous option going the other direction). You can also control whether apherisms are imported as a route of type 'constellation' and whether the boundaries file is imported as a route type 'boundary' (I'm still trying to figure out how to implement this exactly -- whether stars are at the nodes or 'markers'). Anyway, I should have a version ready for anyone to take a look at shortly after the holidays (or maybe even a little before). If you have any features you'd like to see, let me know.
--Dale--
Posted: 30.11.2006, 06:49
by PuppetX
Sounds promising!
I'm primarily interested in the visual full-3d representation of the AstroSynthesis star systems with their planets and moons at the same time. AstroS "only" has orbital representations of either a star and it's planets or a planet and it's moons seperately, and navigating through such a representation is a bit too crude to take really nice looking screenshots from.
And that, taking realistic screenshots of the fantasy systems, would be the main thing for what I'm looking for.
I wonder how you will deal with multiple star systems, black holes, and the planet surface textures? Also, I've noticed that some star systems, like "close multiples" do not have any data as to how many stars there are and at what exact distances they stand from eachother. Not that this is really important, just wondering.
thanks,
PX
Posted: 01.12.2006, 04:05
by bidmaron
As I get to the code to deal with close multiples, I'll let you know and see if you have any preferences on it. As for the surface textures, the ones AS generates, while pretty good, don't include cloud textures, night textures, and other advanced features of Celestia. My thoughts right now are to convert any AS textures straight to Celestia as a texture file. As for the more advanced features of Celestia, I will probably record the file names in data fields of a body solely for the purpose of being able to do a two-way transfer (i.e. from Celestia to AS back to Celestia) without losing any of the original information. Of course, the way I'm writing the code, you can also add AS systems into a Celestia universe and vice versa.
--Dale--
Posted: 01.12.2006, 06:43
by PuppetX
I thought of something: I wondered how you would deal with atmospheres. I see, in the Developement section, that the code to atmospheres only consists of a couple of lines, nothing too complicated. It would be interesting if the atmosphere info provided by AS could be converted to the right kind of data - maybe you already thought of that... Anyway,
You are a hero for working on a project like this
cheers,
PX