tsunamayo / Starship-EVO

Welcome to Starship EVO bug tracking repo !
117 stars 17 forks source link

[Suggestion] more palatable planet generation #5916

Open COMICLER opened 2 months ago

COMICLER commented 2 months ago

Today i went to about 30-40 solar systems and put together some suggestions that i had while traveling. I don't know much about game development work or your engine but im hoping the things i suggest if implemented are as simple as changing some numbers

1) Planets are too colorful: Most planets i came across were ultra-violet i.e. blue or purple, i do think have fun planet colors fits well with the game but the amount of them goes from cool to annoying and a eye sore. I suggest less blue and purple planets to make them feel more rare and cool and making grey and brown planets are common especially for the one without atmosphere.

2) unaesthetic: this one is more of a nit pick but i noticed every planet is a mix of 2 colors, which is alright but the colors feel too different in a lot of cases. i feel like planets would look better if planet colors were closer together .

3) not enough plants: Most of not all of the planets had a rocky surface, which just gets boring after a while. after spending 3 hours searching i found only 1 planet with grass. I think that there should be a lot more planets with dense grass and/or dense trees so that you can find one every 6-8 solar systems or so.

overall i think that changing these things will make planets a little nicer and give players more of a reason to leave the starting system.

tsunamayo commented 2 months ago

Thanks for the feedback, yes I agree with those changes, I will see what I can do. Generating color proceduraly is a tricky business, so I am thinking of making them from pre-generated palette, with some smaller amount of randomization on top. I think it is what No Man Sky is doing. Lets say if I make a tool to make and test such palette, would you guys be up to help me make some palette? I can make dozens of them but not hundred, but with the help of the community we could make 100s.

ProPeach commented 2 months ago

I'm sure we'd be happy to help if you show us how!

asanagisae commented 2 months ago

I've been using Python to generate palettes in the game for a while now. The paintpalettes.xml file gets automatically updated with the available colors. I don't know what format you're thinking of for planet colors, but I'm sure I can adjust.

image

I run the script once, supplying a single color. The script then generates a few swatches, which each have 5 nearby colors that I can try in game under various lighting.

We can have swatches like:

I'm still trying to figure out which swatches are useful to me in my builds. I just haven't had many builds where the looks are acceptable and the only thing they're missing is color. 😆

The changes I can do are practical, but anything you can describe can probably be designed and coded:

The amount of adjustment is also flexible. If you want the colors closer together or farther apart, it's simply a matter of changing some numbers.

The good news is, these colors take seconds to generate and the coding time is fun. The bad news is, the game takes a long time to load larger paint palette files every time you open paints in the codex. I tried loading 256 colors once. It was not pleasant. I put each of those colors on a block to build a palette blueprint. I had to open the paints in the codex once for every 24 colors or so because we only have 3 hotbars. It was painful.

COMICLER commented 2 months ago

id be glad to help anyway i can

tsunamayo commented 2 months ago

@asanagisae Interesting tests! I still need to give an UI to do that in game, and by the look of it I will need to optimize it too. The tool I had in mind for planet would be completely different tough, I think I will just generate a few pictures of planet (from space and from the ground) and give an different executable to swap out the colors on the picture and export a palette.

kynamats commented 2 months ago

I'd be interested in contributing some palletes for planet gen if you make up a tool for it! I'll also raise that, imo, terrain generation is too crater heavy - even planets with atmosphere are peppered with them and the circular geometry really draws a lot of attention. it's especially apparent on planets with ocean, as it results in a complete lack of 'continents' and many, many circular lagoons and isthmuses.

CoasterBlock commented 2 months ago

These are all awesome ideas. I too, have the issue that all planets seem the same. Especially the noise. I tend to come across many planets and moons that have the exact same noise base, but a different color. Perhaps a more "continent" focused terrain generation would be nice. Additionally, more worlds with oceans and mountains.