Modding Discussion Woolgathering about the WORLD files

Discussion in 'Starbound Modding' started by Mr_PeaCH, Jan 18, 2014.

  1. Mr_PeaCH

    Mr_PeaCH Industrial Terraformer

    Warning; this may get lengthy and I tend to ramble but I hope some of you will stay with me. Also, I'm not a modder per se, but I thought I'd open the topic up here as I suspect it will be more of interest to active modders and hopefully some of you will have the answers I am seeking. Or that it will stir someone with more knowledge and ability than I to figure out the puzzle.

    So. The Starbound "world" files. Found in the Universe folder, each time a player visits a particular world a file for that world is generated and placed here. Easy enough, right?

    A world file has a name consisting of five or six parts, separated by an underscore (_) and ending with the extension .world.

    What I am trying to determine is this: How can I use this information to sort of reverse-engineer exactly which planet the file belongs to. By exact I mean not to which X, Y coordinates the world is found in; that much anyway is trivial. But exact such as "obviously the file named sectorx_-33300004_-33300010_-4836336_7_7.world refers to world III b in the system found in Sector X at -33300004, -33300010; duh". The only part of this so far to make any sense would be that the file does contain "sectorx" and that the next two values correspond to the X and Y coordinates. But everything after that is a mystery and that's what I'm trying to resolve.

    (Why I am trying to determine this: Will elaborate more at the conclusion but basically I think it would be useful - if it can be figured out - to be able to reverse-engineer based on the information given that a particular world file refers to the exact body in the exact orbit of the system at X, Y coordinate of the sector.)

    Let's review the file I gave above and break it down by parts and go over what I think I know and what I clearly don't.
    Part 1..._ Part 2 ... _ Part 3... _ Part 4... _P5_P6.world file
    sectorx_-33300004_-33300010_-4836336_7 _7.world


    So Part 1, 2 and 3 are fairly self explanatory.

    Part 1 gives the sector (alpha, beta, gamma, delta and sectorx)

    Part 2 and Part 3 give us the X and the Y coordinate. (values are numeric, from one to eight characters, can be positive or negative) Exactly what you see or program at the ship's captain console.

    Part 4. Here begins the mystery. I have absolutely NO IDEA what this number refers to or signifies but all the world files have one and every unique (X, Y) system has the same one. It has a numeric value, can be positive or negative. It seems to be either a seven or eight digit number and i have no idea why sometimes it is a seven and sometimes and eight digit value. I'm speculating that it is a sort of seed number for the planets of said system (as defined by parts 1, 2 and 3... sector, x and y coords) because visit any and all planets of a given "system" and they will all have the same value at part 4.

    Part 5 and Part 6. This is easier to understand by example. If you are visiting the world designated by only a "III" (roman numeral 3; primary object in the 3rd orbit) of a given system it will be given a value for Part 5. If you are visiting the world designated as "III b" (3 b = 3rd orbit, 2nd sub-object) of a given system it will be given values for Part 5 and Part 6. So Part 5 refers to the orbit of the planet in a given star system. And Part 6 refers to those bodies (moons? planetoids?) which are not the primary body in a given orbit and which are given the sub-category letters, a, b, c and so on.

    Part 5 / Part 6 Continued. It's easy enough to grasp but unfortunately there doesn't appear to be much rhyme or reason as to what value is given at Part 5 and Part 6 of a world; however there is some rhyme or reason. In my example I showed the complete name for a desert biome world (difficulty 10; not sure if it matters) which is in the 3rd orbit (III) and is the 2nd minor body (b). Logically the file should end with something like _3_2.world but it doesn't and none of them seem to be so simple/logical unfortunately for me. I have tried counting them all out but I can't come up with how this particular world should end up _7_7. The one consistency about Parts 5 and 6 seems to be that objects in the first orbit (I) will be of a lower Part 5 value and objects in orbits II, III, IV and so on. Similarly; if at a given orbit sub-object a will have a lower value than sub-object b in Part 6. That said, they don't necessarily scale sequentially. If Part 5 value 7 refers to orbit III (3) the Part 5 value of the next orbit (IV or 4) might be value 9. Higher, but not sequential.

    What's the point to all this? I know some modders are trying to create and improve ways that players can "catalog" the planets they visit. I think being able to translate the *.world files directly to the game interface would be a big win. Furthermore, given the types of information that can be learned from inside the world files; what weather effects, sub-biomes and underground biomes and more; it would help all around and these same modders could really flesh out their mods.

    Probably it will end up being reverse-reverse-engineered. Meaning a mod will associate the world which is visited, as it is visited, with a particular world file in the universe folder. I'm holding out hope that just by using the information; particularly the file names of the world files; information about specifically which planet or sub-planet the file refers to.

    Cheers.
     

Share This Page