Closed CTH999 closed 5 years ago
Planets are already generated procedurally in the game. Planetary systems are not. You can’t build planets the way you suggest. The game builds them procedurally from a definition, some base files and an algorithm, so that they are basically identical on every world load. You could use a third party program to place modded planets(which are also built procedurally). But at that point you might as well just start a creative world, place the planets you want then load it in survival.
Ok
Why can't you make a planet layer by layer? It would be slow, but would work!
Also, to quote the SE wiki:
"While their surface appears randomly generated, they're in fact pre-loaded voxel models"- SE wiki- Surface generation
"and have randomly generated Ores" -SE Wiki- an excert from the overview (This is probally where you got the "They are procedully generated)
Basicly, the voxels aren't procedurally generated, and that is what I am talking about. Ores are put in randomly, but mountain "x" will always be there! However, with this, it will change with every planet you add!
I don't think you grasp what procedural generation actually is. Effectively it is code used to generate objects (data) that given specific inputs will always produce them identically, or with a set range of variation. All procedural generation is is a series of math equations with several variables. Some parts of a game can be statically set with parts of it procedurally generated using static content and some of those static items can also have procedurally generated parts. There is NO game that generates everything procedurally and procedural generation is not synonymous with random. At some level there is static content; be that textures, models, or values that clamp sizes and shapes or cause the game to generate objects in a similar pattern.
That is not exactly correct and you are taking it out of context. The voxel models in the current game are generated from a static starter file, or a base shape, for instance a sphere, For Asteroids, there are several base shapes used, mostly the original asteroids from MinerWars. Planets use a series of procedural generators including height map image files to raise and lower the terrain. They also use a noise generator to add small variations to the terrain. Because it is procedural, the seed value used for each item (which is different than the world seed) causes the basic voxel shape to regenerate the same way on every load. After that the voxel storage file (what you are talking about creating) removes or adds any voxels in the save that were drilled out or added with voxel hands.
Ore generation takes a sections near the surface defined in the planet XML and places ore at those specific places. It is placed with a procedure (code) but that's not what procedural generation is. Ore generation in Asteroids doesn't work off of a predefined ore placement map like Planets have. In Asteroids, any ore defined as being able to spawn in asteroids is picked at random and placed at semi-random in a semi-randomly selected place. If an Ore is added to the game after the world is first generated, the list of possible ores changes and all of the ore spots get new ores assigned to them. the Ore spawn locations in each asteroid regenerate based on the world seed and are the same every load.
YES, the voxels( the grid of what voxel is which cube slot in matrix that takes the shape of the modified base shape) ARE procedurally generated, The base shapes are not and they are not the same thing.
Finally, Before insisting that a program that edits saved games, can somehow replace the game's basic functionality and create content that the game can't process or load, you should accept that when someone says it doesn't work that way, they probably have a good idea of the way it actually works.
The main issue with hand-sculpting planets is that it would make huge files due to how planets work. Essentially they start with a template based on various 2D height/ore maps and then store modifications made on top of that template. If you make lots of those changes by hand you'll end up with massive voxel file sizes. In addition, the game only supports this method of planet generation so there is no way to add "layers" like you're suggesting without heavily modifying the game itself.
@Jimmacle That is true, however, could you, in theory, compress the file? Similar to how you can make large vessals more efficient with loading? Basicly, make a planet with psudo-randomized value Also, maybe not layers. Maybe alter the hight map? I’m sure there are other ways, and If I think of one, I’ll put it here.
@Geneticus
Okay, fair enough. I admit I misunderstood that, but, to be fair, most times a good portion of those variables are randomized. And, there is no game, yet, that does it. However, with quantum computing...
Yeah, that is the main issue, however, (Look above), maybe it could be compressed? And, really? It can delete planets, asterids... but can’t delete the voxls? Because the gravity, atmosphere, and all of that, is stored in the data for the planet, not the voxels. So, if you can add in planets with this, why can’t you delete all the voxels without deleting the planet
I knew about the fact it was based off of files, but the wiki doesn’t mention anything about those slight variations, and if they exist, I havn’t seen them...
That isn’t what the SE wiki says... well, don’t trust the wiki! However, based on the planets themselvs, shocker.... if not randomizing terrain, can SE tool box at least add some randomness? And, that whole procedurla generation thing? Fair enough, however, you did mention that and “0.” Also, I haven’t heard a program called a procdure before... good to know!
True
And, that final “note” at the bottom? Just rude, illogicol, and most of all, wrong.
First off, “Before insisting?? How is asking, in what I think where kind, and well written, words, insisting?
replace the games functionalty? Really!? How is It can genearte random asteroids, manipulate hidden files that are vannila, but can’t be used in game, and could, in theory, acces the folders of the hightmap. Meaning, make a new folder, with a modified height map.they can change the hightmap...
Why don’t you just accept it? Um... I commented once. What?!
And, “They have an idea how it actually works” So, what? You have an idea of how it works, and I don’t? I do too! I may not know it’s code in and out, but that doesn’t mean I don’t understand it. So, I put one term in incorrectly, and you think I don’t understand any of it? I understand a lot of how this works. So, yeah.
From what you just saw above, you probally think I am upset. I am. I won’t hold it against you, but, what you put there was rude, wrong, and just hurful. Try, just try, to think about how you right. I work hard to make sure my things are short (As short as they can get without ruining the menaing), and I try to stay king. Do I do it perfectly? No. However, I do want other people to try it. Just, try to be carfule. Ok?
Just, how?!
Just tryin’ to learn!
Oh, realized I left something off at the top...
Voxel files are already compressed. In order to make any changes to how the voxel system works you need to modify the game, not SEToolbox.
@Jimmacle
Interesting... fair enough... well, this can add in planets. If each planet is in a sperate folder, could SE modify the hightmap? If so, it could do it semi-randomly (Or, from multiple presets, but, preferably the first one)
Then, if that is the case, we have our modified planet! If not, there might be a new way, or it might be downrigh impossible...
Also, the only problem is: How do you add in cave systems? (That isn’t a requirment, but SE with a cave system... would be neat, especially if it didn’t need mods! It just added in, say, earth, deleted hieghmap, put a new one in, then altered the voxels (Or, used a hightmap to store the part with caves, I can’t quite find how a hight map works...)
But, if that wouldn’t even work, then, well... this is still a neat program, just, well, I want psudo random planets (Untill computers can make complely random numbers, but that would require a sentiat computer and/ or a qunatum computer! So, I’ll settle on psudo random. Let’s keep it only semi-theoretical!)
However, there should be a way... it’s probally so simple we can’t find it...
The short response is, no, SEToolbox cannot edit planets without making the game unplayable. Space Engineers will need to change to allow a more flexible method of creating a customised planet. A number of the other details (like tunnels) should be undertaken in a mod and not an offline tool. The long response is covered in the previous comments.
@midspace Yeah, I kinda figued that, but, just going through ideas! And, maybe one day SE planets will be improved, and this concept can be revisisted... or, even better, SE could have ranzomized planets! (LIke that will happen)
So, would I like it? Yes
However, I see how it is next to impossible to do it, and even closer to impossible to make it function on computers that aren’t super computers.
So, it’s a neat idea, but, alas, probally won’t happen!
I underderstand the reasoning, but, just, if ya’ll happen to stumble across a way to do it feasibly, well, not only have you just proven quantum mechanics, you also can improve this, and maybe do it! (Yes, that was a slight insult storage system for SE)
Well, can’t wait to see what happens (Both bugfixes, new features, and maybe, just maybe, SE giving ya’ll the ability to improve that!)
Well, one can dream...
Tl;DR
I understand why, and fair enough, don’t do it. However, if you stuble acoss a way to do it, you have changed science for ever and could do this!
Well, good luck! One day I might be good enough at C# to help
Sincerly, CTH999
So, I am assuming this program could manipulate voxels? Am I correct?
If so, maybe we could re-shape planets (Smooth terrain (Lessen Hight differences),) and more
However, if that is added in, maybe there could be a system for procedural planets! What IT would do is spawn in the planet of your choice, delete all the voxels, then procedurally build a new planet! Since the atmosphere and gravity is based off of the planet, not the mass, you can use the originally spawned planet to give it atmospheres!
Also, it might be able to put tunnes and caverns in, but it builds off of what It already made! It makes layer one, then, layer two, and so on. As layers increase, it becomes more likely material won't be put on it. That will form hills and valleys! Then, sometimes it will close (Volcanoes, tunnels, caverns). Also, predefined features are added! Caverns with stalagmites are procetuarly generated based off of another system (You put in different parts, and it expands from there), and so on! An indepth, procedural planet in SE! With atmospheres, caverns...
Then, there is a faster way that litteraly forms a group of asterods, and calls it a plannet...
However, this would be a large update... maybe it could have an autoupdate feature?
However, this is just a suggestion. (THis part was added in, since I realized I forgot to add it in. Oops)