Jump to content

[INDEV] [1.9] To Boldly Go (0.4.1) | An external application designed to procedurally generate an entire galaxy for KSP.


seanth

What's next?  

2 members have voted

  1. 1. What should TBG work on next?

    • Procedural atmosphere-less worlds (like Moho)
      0
    • Procedural thin atmosphere worlds (like Duna)
      1
    • Procedural ice worlds (like Eeloo)
      0
    • Compatibility with a warpdrive mod
      1

This poll is closed to new votes

  • Please sign in or register to vote in this poll.
  • Poll closed on 09/17/2020 at 11:08 AM

Recommended Posts

Hi. What did I miss? Eh, probably not much, right?

Update to 0.4.1 is up! What does 0.4.1 bring? Well:

0.4.0

-Procedural kethane/methane worlds
0.4.1
-Fixed non-printing character in pqsTmp.txt file that cause Kopernicus to hang
-Added template file and ability to make procedural maps for PsiCartographer
-Reduced galaxy size by a lot (stars should be closer together)
-dialed down the max number of stars made automatically
-included an option to make a galaxy for use with Psi-Cartographer
-Continued compatability with:
     -ResearchBodies
     -EnvironmentalVisualEnhancements & StockVisualEnhancements (clouds for procedural water, Eve, and kethane worlds)
-Moon generation is still disabled
-Keep an eye out for easter eggs on water worlds

The big thing there (in my opinion) is the optional use of PsiCartographer. PsiCartographer is a fork if Sigma88's SigmaCartographer which was a fantastic tool for outputting various map types from KSP. What that means is that it could be used to output the maps so that procedurally made planets actually have something to look at when you are in the map screen. The original would always overwrite existing files, but the fork can check and see if a file already exists.

Not gonna lie: running both Kopernicus and PsiCartographer can be slow the first time you load up a universe. On my machine, generating 43 stars and 321 planets took a little over 9 minutes for Kopernicus to finish saving cache files for each body, and 12 minutes for PsiCartographer to generate the images for 55 procedurally generated planets. 

After that first load of a universe, you need to quit and reload KSP in order for the planet textures to work. The good news is on my machine that second load only took 3 minutes (since all the bodies were cached and the textures for terrain all existed)

You can choose not to use PsiCartographer, but the procedural worlds will look pretty bland from the map view. Note: the universe that comes with TBG 0.4.1 has been made assuming you're using PsiCartographer.

Edited by seanth
Link to comment
Share on other sites

As I have said previously, I would love to rewrite TBG in python (a language I am more comfortable in). It would allow for a lot more interesting things under the hood, but would make it harder for the casual player to make galaxies, so....

I did put a survey up soliciting direction, though. You'll note there's no choice for moons. That's because once all the procedural planet types are available, I can more easily turn moon generation on.

BUUUT, I'm not really a Kopernicus savvy person that revels in figuring out all the knobs to turn to make procedural worlds. I'm much more interested in making sure the code is placing planets & moons into orbits that make sense given KSP physics.

So if you feel like you're pretty OK at making procedural planets and want to help out, drop me a message. 

Link to comment
Share on other sites

  • 1 month later...
  • 4 weeks later...
On 5/18/2018 at 9:48 AM, Kebab Kerman said:

That txt file idea is a good one! The variables I listed can be procedural or not, there could be an option for that.

Well, what if we want to do something crazy with them? I mean we could do realistic, but what if we want to give it an atmosphere that is 1km in height but that has a pressure of 100? Or if we want to literally play Kraken and make a planet so utterly broken that merely touching it will break parts? This could test what limits your craft has.

Yeah, that sounds good for now.

How do I set this up

Link to comment
Share on other sites

On 12/3/2020 at 10:20 AM, Jiraiyah said:

did anyone try this with bleeding edge version of kopernicus on 1.10? would that work?

I have done some basic testing and it seems to work fine. 

I do have a Feature Request for this mod: I would love to see compatibility with RSS and Real Exoplanets. That would allow me to build out my dream end game (RSS with all possible extensions; currently in my 1.10.1 I have working RSS, Real Exoplanets, and all of the Real Expansion .. on my main save on 1.9.1 I have a jam packed Kerbol System with Kerbin as the homeworld along with GPP, as/with GPP Secondary, GEP, OPM, MPE, Nibiru, and Corelian as well as Real Exoplanets for some Interstellar fun. I would die a happy kerbal...err, human... if I could bring this all together into a common "galaxy" as well as have a few additional procedurally generated star systems using assets from aforementioned and other/additional planet packs and PsiCartographer.  If anyone has any tips/cfgs for such an endeavor I'd be delighted to be enlightened. 

I've been playing around for the last couple days but my skills level is ~ I was thrilled when I was able to find/replace "@Kopernicus:AFTER[RealSolarSystem]" with "@Kopernicus:AFTER[KSRSS]" in all cfg files within/to get Real Expansion working with a 1.8.1 KSRSS instance I had...so I'm not too hopeful I'll find a solution to my end game dream on my own. Having TBG work with RSS/REX I feel would allow me to achieve that though.

Edited by FractalSystems
Link to comment
Share on other sites

  • 2 weeks later...
On 12/7/2020 at 11:35 AM, FractalSystems said:

I have done some basic testing and it seems to work fine. 

Actually I got a lot of trouble, any planet using Eve or Laythe as template causes Null Point Exception in the bleeding edge kopernicus.

 

Also, something that caused my interest, when you have 200+ planet bodies, there are lots and lots of repetitive planet looks, I just saw moho over 7 times !!!!

Link to comment
Share on other sites

  • 4 weeks later...
  • 5 weeks later...

This mod is dope.

Is the mod re-building the universe every time I start KSP? Can I remove the mod out of the folder after starting first time / generating worlds? Does Kopernicus just do its thing after? Can I save load time by doing this?

Also I noticed that for the universe I generated, one of the stars was super close to Kerbol, so it kind of looked like Kerbin had two suns. Wasn't sure if there as a way to tweak the distances?

Thanks for making ksp playable forever. I'm a big fan. Keep up the good work.

Link to comment
Share on other sites

  • 2 months later...
On 2/14/2021 at 12:15 AM, lennylives said:

This mod is dope.

Is the mod re-building the universe every time I start KSP? Can I remove the mod out of the folder after starting first time / generating worlds? Does Kopernicus just do its thing after? Can I save load time by doing this?

Also I noticed that for the universe I generated, one of the stars was super close to Kerbol, so it kind of looked like Kerbin had two suns. Wasn't sure if there as a way to tweak the distances?

Thanks for making ksp playable forever. I'm a big fan. Keep up the good work.

it doesnt rebuild it
it uses its own program to generate a galaxy,
you drop galaxy into gamedata
and bam, galaxy, i think.

yes this mod is awesome

Link to comment
Share on other sites

  • 3 weeks later...

I hope so, I was looking for a large scale mod that could add multiple systems and this was the best one I could find. One thing I noticed in my galaxy I generated is that several Laythe planets generated but are almost solid in color with only slight shading variance. After looking at the GitHub page for this mod I noticed that the developer posted that they turned off Laythe like planets generating outside of the Kerbol system leaving me wonder if these planets might be broken or whatnot. I've already started progressing in the playthrough so I'm worried I might need to make a new galaxy and possibly start over, which I'd prefer not to do.

Link to comment
Share on other sites

  • 1 month later...

I'm new to Kerbal Space Program, but I mod almost everything I play, and this game looks to be quite fun to mod, especially enhancing or using existing mods like this one, Interstellar, TAC-LS, MKS, etc.

I think I've got this mod working on 1.11.  One of the... easter eggs... was not compatible, so I just stopped it from generating for now.  I also had to figure out where the Psi-Cartographer dlls went to get that part working.  Are people still interested in updates to this mod?  If so, I'll update the source code and post instructions to get it running.

@seanth are you still interested in maintaining this mod or do I need to start my own repo?

Everyone else, the source code is licensed GPL, so seanth has technically already given everyone free reign to make and publish modifications, provided they also release their updates as Free Software.  If I don't get his permission, I'll probably pick a different name for my version anyway, just in case he comes back and wants to continue in his own direction.

I like the option of converting to python, even if programming in qBasic does bring back long-lost memories of my first programming language... from 30 years ago.  If so, Qt will give some basic windows and dropdowns to simplify the GUI.

For me, the go-to language for this kind of project is javascript though - and either electron for a desktop experience or a static SPA hosted on github (create your galaxy in a web gui, then download and unzip to GameData).

 

For me, the goal is to build an end-game experience where a player can build a galaxy that is completely unknown.  The story for my playthrough is something along the lines of: another star is on its way and expected to merge with Kerbol in 100 years.  The Kerbals are relatively safe until then, but the Kerbol system will cease to exist as they know it.  Time is of the essence to catalog, explore, and colonize other life-supporting worlds before time runs out.  Victory condition: 1000 kerbals have left the Kerbal system by year 100 and made their way to other planets that have Oxygen, water, and enough flat land to build a completely self-sufficient base with the capability of continuing the Space Program indefinitely.

To make this interesting, especially the habitable worlds need enough variation that once the colony ship arrives, they might find out that yes, the planet supports life, but only in the oceans because the only land mass is a giant super volcano.  Or the only land is mountainous, narrow islands that can't properly support a base with a long, flat runway.  Or land is plentiful, but mostly desert because water is so scarce that it couldn't support a growing population.  These worlds might support a post-year-100 rest stop and temporary base on the continued quest for New Kerbin, but the colony ship must be repaired, restocked, refueled, and eventually continue its quest for Kerbinkind's final destination.

This means I'd need to give more knobs to turn on the number and types of habitable worlds available.

Also, simplex noise, no matter how much you tweak it, doesn't provide this kind of variation.  So I'm considering integrating an extension of @redblobgames work:

planet-12.png

https://www.redblobgames.com/x/1843-planet-generation/

It simulates techtonic plates and biomes to build the high-level details (continents and mountains), then uses simplex noise for high-frequency details (hills and valleys).

If people are interested in me continuing the work here, I'm looking forward to it.

@seanth if you'd prefer me to work on my own mod so you can take this one in a different direction, I understand.

Link to comment
Share on other sites

Ok, so it looks like no one is just watching this thread waiting for an update, and I'm leaning more towards the web-based Galaxy Generator app, so be on the lookout for an app likely called "Galaxy Generator" (never was good with naming things) that is "inspired by" this and redblobgames.  (I'll likely use a good bit of the research seanth has put into things like magnitude and visibility from Kerbin, but will not directly port the source code from bas to js).

I'll be targetting 2 groups with this app:

  1. players that want to generate a fully random galaxy with compelling worlds to explore, without revealing any of its secrets until they are able to see, probe, and explore it in game.
  2. Kopernicus mod developers that want to procedurally generate a galaxy, system, or planet, then drill down to each body, re-roll it until they generate one they like, then edit it to their liking before exporting the GameData zip.

Obviously the first will be easier to implement, so expect to see it first, followed by a galaxy editor, system editor, and eventually a planet editor.

I'll post a new thread as soon as I have something worth showing, but I'll keep an eye on this thread to see if anyone is interested in me publishing the work to make this mod mostly compatible with 1.11 (it loads but there's still some errors in the logs).

In any case, I'll build something that's at a minimum compatible with KSPI-E, TAC-LS, the USI mods, and at least the Nuclear Pulse drive and other sub-light interstellar engines.  I'll have to see how easy it is to support the various warp drive mods, but the game I want to play involves building colony ships that there is no feasible way to fit a warp bubble around without consuming all the energy in the universe, so I'm not very invested in that topic.  You can always cheat yourself into orbit if you want to fake a warp drive.

Link to comment
Share on other sites

@ProgorMaticSounds cool - I was kind of disappointed that this mod seems to have been shelved, so it's good news to hear that somebody's working on something similar! I'll probably keep an eye out for further updates.
A tip, though - as a fairly seasoned KSP player (2000+ hours) 100 years sounds like a pretty long time for an end goal, considering that with sufficient Science grind and copious use of Mobile Processing Labs, a player can unlock anywhere from half to nearly all of the entire stock tech tree in 100 in-game days without hardly ever leaving the home system (Kerbin/Mun/Minmus.)
Of course, common Tech Tree mods and science reward modifiers can change that, but ignoring those, the main time limitation would be the travel times to other planets and eventually star systems without warp drives, rather than actually working to develop technologies - so, the majority of that century of development would probably just be TimeWarping to your next maneuver node.

Link to comment
Share on other sites

@ProgorMatic I've been following this for awhile but only check once in awhile as it isn't very active - I suspect I'm not the only one.

On 6/11/2021 at 9:26 PM, ProgorMatic said:

I'll keep an eye on this thread to see if anyone is interested in me publishing the work

I would be interested - I may have to play with that Red Blob code myself - though it may be a couple years before I get around to it:D

It looks like seanth last visited end of March - so may be checking in once in awhile.

Link to comment
Share on other sites

On 6/17/2021 at 11:31 AM, fair_guest said:

@ProgorMaticSounds cool - I was kind of disappointed that this mod seems to have been shelved, so it's good news to hear that somebody's working on something similar! I'll probably keep an eye out for further updates.
A tip, though - as a fairly seasoned KSP player (2000+ hours) 100 years sounds like a pretty long time for an end goal, considering that with sufficient Science grind and copious use of Mobile Processing Labs, a player can unlock anywhere from half to nearly all of the entire stock tech tree in 100 in-game days without hardly ever leaving the home system (Kerbin/Mun/Minmus.)
Of course, common Tech Tree mods and science reward modifiers can change that, but ignoring those, the main time limitation would be the travel times to other planets and eventually star systems without warp drives, rather than actually working to develop technologies - so, the majority of that century of development would probably just be TimeWarping to your next maneuver node.

Yeah, I'm beginning to see that.  I was thinking about some of the realism mod-packs.  It looks like I could get something like Kerbalism + KSPI-E + the Planetary Base Systems one, along with Community Tech Tree to give a more realistic progression, but I'd really like the USI MKS stuff too, and it's incompatible with Kerbalism, so I'll probably just pretend days are years as far as the science progress goes.  I'm also finding trying different mod sets that the first 10 hours of the game are always basically the same, so I'm probably going to start my game off with a few thousand science and a million bucks (is the currency ever named?), so I can focus on expanding through the Kerbal System and learning future technologies, and not re-enacting the Apollo program and and an odd rover tour of the space center that somehow teaches me how to build rockets and spaceplanes.

On 6/20/2021 at 6:59 PM, wasml said:

@ProgorMatic I've been following this for awhile but only check once in awhile as it isn't very active - I suspect I'm not the only one.

I would be interested - I may have to play with that Red Blob code myself - though it may be a couple years before I get around to it:D

It looks like seanth last visited end of March - so may be checking in once in awhile.

Right now I found Galaxies Unbound gets me part of the way there (if I try really hard not to look at the published map in detail, and use ResearchBodies to hide it in game), so this isn't a front-burner project at the moment.  But I've been interested in procedural landscape generation since college (don't ask how long ago that was), so I will work on this project even if it isn't ready until KSP 2 :)

Link to comment
Share on other sites

Oh, I'm still interested in this, I just thought that the project has become abandoned. Glad to see you pick it back up!

The timing is also excellent, because now that stock KSP is "feature complete" it's the best time to start a mega-playthrough, exploring and colonizing all the solar systems and so on. Because there is time for that now - I'm gonna stay on 1.12 for a while anyway :wink:

What I'm curious about: Are you planning to make it so your tool will only create additional systems, like it was originally the plan or might there by an option to also replace the starting system?

Link to comment
Share on other sites

  • 7 months later...
This thread is quite old. Please consider starting a new thread rather than reviving this one.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...