Custom terrains (.xml) (OUTDATED)

Discussion in 'Planets & Playfields' started by Needleship, Jun 27, 2017.

  1. Hummel-o-War

    Hummel-o-War Administrator Staff Member Community Manager

    • Developer
    Joined:
    Jun 15, 2015
    Messages:
    5,507
    Likes Received:
    8,503
    PN just have removed it because it drains a lot of performance....and Unity is only capable of doing it with a few tricks - at least that is what i read. Not being an expert on the tech-details, so i may be wrong. Afaik caves/tunnels are not live-generated in terrain generation, but placed as some kind of "Terrain POI" you need to create a model first and blend it in the terrain. Not sure what the PN guys did, but we'll find a solution here sooner or later :)
     
    #41
  2. rucky

    rucky Rear Admiral

    Joined:
    May 29, 2017
    Messages:
    935
    Likes Received:
    2,626
    7Days makes it (voxel based terrain, random generated) - at least have it as I'm away one or two versions now,

    from Kinyajuu, a Dev from 7DTD:
    http://imgur.com/a/q49n5

    look down these HUGE CAVES... but we had severe performance probs, that's right...
    They also have a nice random gen previewer (go one folder up: http://kinyajuu.imgur.com/)
     
    #42
  3. Needleship

    Needleship Master of Custom Terrain

    Joined:
    Apr 13, 2017
    Messages:
    527
    Likes Received:
    835
    Back to writing job applications.
    … And stacking modules in the Terrain Generator is the bestest thing to relax. Right? :)

    ----

    Swiss Multi World (aka Alpinia V2)
    CPU Light

    If you're fond of mountains, then get ready for a hike.

    10_combo2.jpg

    20_POI_test_2017-08-16_13-00-23.jpg

    30_POI_test_2017-08-16_13-01-26.jpg

    40b_POI_test_2017-08-16_13-35-08.jpg

    50_POI_test_2017-08-16_13-00-06.jpg

    60_combi.jpg

    70a_Combi.jpg

    80_combo.jpg

    99 Swiss.jpg
    (Was difficult to get all interesting spots into these 9 pics.)

    A lightweight but extremely diverse terrain. Every valley seems to offer a little surprise.
    Very minor changes in the .xml result in some vastly different, but quite pretty mountainscape.

    This terrain could be useful for your Multiplayer needs, to help you testing your new playfield, or as a starting world for your adventures.


    Terrain features:
    + Large (70-90%) and complex landmass gives the planet a huge feel
    (works well with demanding biomes)
    + Round lakes, seas and fjords
    + Deep cutting vs. soft and wide valleys, some of them with lakes
    + Lowland, medium grass and stone plains, high glaciers
    + Eroded high mountains (Perlin/Billow based)
    + Young high mountains (Ridged based)
    = A lot to explore! I spend about an hour just walking through the seeds.


    Used modules: 14 (Real number: 15)
    POI spawn readily on the flat sections. There's a lot of space to fill.


    As of now, .xml terrain isn't affected by the playfield seed. You'll have to change the .xml to get something new.
    When loaded into the Terrain Generator, the best modules for changes are situated on the upper right side of the monitor.
    >Start with dialling through the seeds ('S') of the Billow1 and Ridged2.
    If you want your terrain to be more smooth, turn down the 'Roughness' parameter of the Turbulence.
    >Save with the Turbulence13 mod activated. (=Chain end)
    ----

    Included in the .zip: Several other versions of this terrain with changed internal seeds.
    (Rename them as 'swiss.xml' for the playfield.)

    Note: This info is outdated. Please check the first post of this thread.
    Create a new savegame. (When starting on Akua, land with your escape pod on low ground and loot it.) Exit the game session, and...

    >Add the terrain: Drop the '_Swiss.xml' into the folder: (steam)/Empyrion – Galactic survival/Content /terrains/xml.

    >Point the savegame to new terrain: Locate your save game's folder '(yourSave)/templates/temperate' and overwrite the playfield.yaml with the one provided here.

    >Reset planetary map & POIs: Locate your savegame's folder '(yourSave)/playfields', find the folder 'Akua' and delete it.

    ... Reload your save.
    Edit: Put correct file paths in spoiler
     

    Attached Files:

    #43
    Last edited: Feb 7, 2018
  4. Andre Merrick

    Andre Merrick Commander

    Joined:
    Oct 11, 2016
    Messages:
    44
    Likes Received:
    43
    How do we get these to work on a Dedicated Server? I would presume just placing the .XML is the XML Terrain folder. I tried to add one today, it was giving a bunch of errors... but in Single Player.. it works fine. :/
     
    #44
  5. Kaeser

    Kaeser Rear Admiral

    Joined:
    Aug 17, 2015
    Messages:
    1,739
    Likes Received:
    2,458
    No they still don't work in servers, you would have to load them in the server and also in every client that logs in but still no guarantee it would load without issues...
     
    #45
  6. piddlefoot

    piddlefoot Rear Admiral

    Joined:
    Mar 4, 2015
    Messages:
    1,849
    Likes Received:
    1,615
    #46
  7. SilvRav

    SilvRav Moderator

    • Moderator
    Joined:
    Jan 13, 2017
    Messages:
    539
    Likes Received:
    882
    sub!
     
    #47
    Needleship likes this.
  8. Needleship

    Needleship Master of Custom Terrain

    Joined:
    Apr 13, 2017
    Messages:
    527
    Likes Received:
    835
    Since this was requested:


    Just a flat plane.


    (You can't change a 'standard' planet's terrain to .xml any more.
    I just realized that the file terrain.ecf from our .raw- terrain planets will always be read - even if it isn't used, resulting in a nasty game crash.- Deleting that file won't help, since the game is so smart to fetch it again from the backup folders. ;) )


    You'll have to overwrite a planet in your savegame's sectors.yaml for this to work, or add a completely new system with a planet.


    -----------

    If overwriting:
    If you don't have it already, use the program 'Notepad++' for that.

    >The .xml now needs to go in the folder: '(steam)/Empyrion – Galactic survival/Content /terrains'
    >Start a new game.
    >Find your savegame in Windows explorer
    >Locate the file (yourSavegame)/Sectors/sectors.yaml. Open it with Notepad++.
    >Choose a sector and change the planet name.

    Example:
    Change
    - ['0, 0, 0', Aestus, Lava]
    to:
    - ['0, 0, 0', MyPlanet, MyPlanetFolder]


    >Add a folder in '(YourSavegame)/templates/' ,called 'MyPlanetFolder'.
    >Copy a playfield.yaml from another savegame there that you want to use.
    Don't put a terrain.ecf in this folder!


    >Adjust the playfield.yaml in 'MyPlanetFolder' of your new planet:

    If Akua is your template, then find in it the lines
    Terrain:
    Name: NewTemperate

    And replace 'NewTemperate' with '_JustFlat'; starting the name on the exact same character position of the original one.

    >Then reload your save game, open the console, and type
    'teleport MyPlanet'
    and you should be there.
     

    Attached Files:

    #48
  9. Needleship

    Needleship Master of Custom Terrain

    Joined:
    Apr 13, 2017
    Messages:
    527
    Likes Received:
    835
    Hi all!

    Nothing else to do, so I end up here again. :) Procedural generation is still fun. Somehow it is like a puzzle...

    1. Stove v2
    Medium cpu usage

    A replacement for the old 'Stove' moon.

    01_PlanetaryBuilding_a7_2017-11-16_22-45-39.jpg


    02_a7-PlanetaryBuilding-POI_2017-11-14_17-24-11.jpg

    03_PlanetaryBuilding_a7_2017-11-16_22-46-54.jpg

    07_a7-PlanetaryBuilding-POI_2017-11-14_17-26-32.jpg

    08_a7-PlanetaryBuilding-POI_2017-11-14_17-24-38.jpg

    Used: 32 modules (but the computer treats them as 35 anyway).


    - Now it's able to spawn all random (standard Aestus) POI, and should be more useful for scenarios. And it has a sightly more engaging 'sludgescape', too!

    (Possibly, it's even a tiny bit faster to compute – I cut out some unnecessary mods, and turned down some of the high values in Turbulence's Roughness.)


    Billow14: Seed. - Sludge canals position
    Turbulence4: Seed. - Overall sludge distribution
    (Other Turbulences have only minimal effect. Use also their seeds.)
    Voronoi17: Seed. - Position of medium 'craters'
    Voronoi20: Seed. - Position of large 'craters'
    Perlin33: Seed. - Position of landmass that is able to sustain POI spawning

    Activate before saving: Min32

    Note: Overwriting an existing standard planet with an .xml one isn't possible any more
    (...without graphical glitches: Game re-creates a meddling terrain.ecf file it deems 'missing')



    > Edit in your own, new planet
    ----------------------



    - Get the program 'Notepad++' It's free, and super useful for changing a lot of things in Empyrion.
    The windows Notepad wants to break stuff. ;)

    - Make a copy of your save game!

    - Locate the sectors.yaml file of your save game:
    Program files/Steam/steamapps/common/Empyrion – Galactic survival/saves/games/(yourSave)/sectors

    - Open this 'sectors.yaml' with Notepad++

    - Find a suitable planet to copy: e.g. Akua:

    >The following is all that is part of a planet's definition. Important sections are highlighted in colour:

    - Coordinates: [92, 5, 117]
    Color: 0.04, 0.3, 0.37
    Icon: Circle
    OrbitLine: True

    Deny: [Oscutune Orbit, Aitis Orbit]
    Playfields:
    - ['0, 0, 0', Akua Orbit, SpaceAsteroidFieldRingAkua]

    - ['0, 0, 0', Akua, NewTemperate, 'Human:1']


    - ['-6500, 5000, 6500', Akua Moon, NewMoon2]

    # - ['0, 0, 0', Akua, Temperate, 'Human:1']

    # - ['-6500, 5000, 6500', Akua Moon, Moon]


    The red part reads:
    [(location in orbit playfield), (In-game name of object), (folder name of object in '/playfields'), (and optional: faction)]

    - Copy and paste this part again into the document...

    ! Careful! Yamls are very sensitive. Don't add even a single extra space!
    A slight error will prevent the game from loading. It won't break anything permanently, though.

    ! Make sure that your added entry looks exactly like the other ones regarding structure and position of elements. (Pressing 'return' after a line often leads to an unwanted offset.)


    Example for a custom planet, “OvenV2”

    (After you copied your planet candidate) :

    - Change the main coordinates to prevent an overlap with the original.
    - Rename the “Akua Orbit” into something else, e.g. “Custom Planet Orbit”.
    - Rename the “Akua” into something else, e.g. “Custom Planet”
    - Rename the “NewTemperate” into something else, e.g. “CustomPlanetFolder”
    - Rename the “Akua Moon” into something else, e.g. “Custom Moon”

    - Save the modified “sectors.yaml” file

    - Create a folder called “CustomPlanetFolder” in your savegame at:
    (steam)/Empyrion – Galactic survival/saves/games/(yourSave)/templates

    - Copy the playfield.yaml provided here into that new folder. (No terrain.ecf, please!)

    - Copy the StoveV2.xml provided here into this folder:
    (steam)/Empyrion – Galactic survival/content/terrains

    - Try to load your save...

    In case of a game loading error: Click 'continue', Hit 'Esc', and exit to main screen. Click 'continue' again. Then try to find the error -especially in the sectors.yaml - and give it another go.

    You should now have an additional orbit and planet in your game.
    - The same procedure applies for moons.

    ---

    (If you want to cheat and check it out directly: Activate the console, and type:
    “teleport 'Custom Planet'“ or use the command “help teleport” for tips.

    - The console command “gm” will give you godmode, and the ability to fly fast with WASD+shift/cntrl.)

    (The green part in the sectors.yaml prevents warping to specific destinations. You might want to change this, too.)
     

    Attached Files:

    #49
    Last edited: Feb 7, 2018
    Quarior, TK85, jmcburn and 1 other person like this.
  10. Needleship

    Needleship Master of Custom Terrain

    Joined:
    Apr 13, 2017
    Messages:
    527
    Likes Received:
    835
    Thawing Snowball
    Medium cpu usage

    01_PlanetaryBuilding-ICE-_a7_2017-11-18_08-38-57.jpg

    02_Thaw map combo.jpg

    03_PlanetaryBuilding-ICE-_a7_2017-11-18_08-38-42.jpg

    04_PlanetaryBuilding-ICE-_a7_2017-11-18_09-16-35.jpg

    05_PlanetaryBuilding-ICE-_a7_2017-11-18_09-13-24.jpg

    06_a7-PlanetaryBuilding-POI_2017-11-18_09-25-45.jpg

    07_a7-PlanetaryBuilding-POI_2017-11-18_09-27-52.jpg

    08_a7-PlanetaryBuilding-POI_2017-11-18_09-29-26.jpg

    99_thaw editor map.jpg
    A warm but still arctic planet. Mild days, harsh nights, and a breathable atmosphere.
    - After the first plant life appeared, this planet lost all it's potent greenhouse gases due to rampant oxygenation. Everything got buried under ice.
    Now the first O2 breathing lifeforms have evolved, and the planet finally gets a chance to thaw...

    (Used 22 modules, but those count as 24.)

    Terrain features:
    + Very rugged, sharp and diverse mountains with smooth valleys
    + Melting ice sheets and flat, POI-spawnable beach regions
    + Shallow seas with life

    Perlin20: (Various parameters) - Size and distribution of landmass.
    Select10: Edge falloff – Valley / mountain ratio
    Select10: ScaleBias-sliders of 'input0'/'add9' – Mountain height
    Turbulence12: Seed- Mountain distribution
    Ridged14: (Various parameters) - Ice distribution

    Activate before saving: Select19


    Note: Overwriting an existing standard planet with an .xml one isn't possible any more
    (...without graphical glitches: Game re-creates a meddling terrain.ecf file it deems 'missing')


    > Edit in your own, new planet
    ----------------------



    - Get the program 'Notepad++' It's free, and super useful for changing a lot of things in Empyrion.
    The windows Notepad wants to break stuff. ;)


    - Make a copy of your savegame!

    - Locate the sectors.yaml file of your save game:
    Program files/Steam/steamapps/common/Empyrion – Galactic survival/games/(yourSave)/sectors

    - Open this 'sectors.yaml' with Notepad++

    - Find a suitable planet to copy: e.g. Akua:

    >The following is all that is part of a planet's definition. Important sections are highlighted in colour:

    - Coordinates: [92, 5, 117]
    Color: 0.04, 0.3, 0.37
    Icon: Circle
    OrbitLine: True

    Deny: [Oscutune Orbit, Aitis Orbit]
    Playfields:
    - ['0, 0, 0', Akua Orbit, SpaceAsteroidFieldRingAkua]
    - ['0, 0, 0', Akua, NewTemperate, 'Human:1']
    - ['-6500, 5000, 6500', Akua Moon, NewMoon2]

    # - ['0, 0, 0', Akua, Temperate, 'Human:1']
    # - ['-6500, 5000, 6500', Akua Moon, Moon]


    The red part reads:
    [(location in orbit playfield), (In-game name of object), (folder name of object in '/playfields'), (and optional: faction)]

    - Copy and paste this part again into the document...

    ! Careful! Yamls are very sensitive. Don't add even a single extra space!
    A slight error will prevent the game from loading. It won't break anything permanently, though.

    ! Make sure that your added entry looks exactly like the other ones regarding structure and position of elements. (Pressing 'return' after a line often leads to an unwanted offset.)


    Example for a custom planet, “Thaw”

    (After you copied your planet candidate) :

    - Change the main coordinates to prevent an overlap with the original.
    - Rename the “Akua Orbit” into something else, e.g. “Custom Planet Orbit”.
    - Rename the “Akua” into something else, e.g. “Custom Planet”
    - Rename the “NewTemperate” into something else, e.g. “CustomPlanetFolder”
    - Rename the “Akua Moon” into something else, e.g. “Custom Moon”

    - Save the modified “sectors.yaml” file

    - Create a folder called “CustomPlanetFolder” in your savegame at:
    (steam)/Empyrion – Galactic survival/games/(yourSave)/templates

    - Copy the playfield.yaml provided here into that new folder. (No terrain.ecf, please!)

    - Copy the "_thaw.xml" provided here into this folder:
    (steam)/Empyrion – Galactic survival/content/terrains

    - Try to load your save...

    In case of a game loading error: Click 'continue', Hit 'Esc', and exit to main screen. Click 'continue' again. Then try to find the error -especially in the sectors.yaml - and give it another go.

    You should now have an additional orbit and planet in your game.
    - The same procedure applies for moons.

    ---

    (If you want to cheat and check it out directly: Activate the console, and type:
    “teleport 'Custom Planet' “ or use the command “help teleport” for tips.

    - The console command “gm” will give you godmode, and the ability to fly fast with WASD+shift/cntrl.)

    (The green part in the sectors.yaml prevents warping to specific destinations. You might want to change this, too.)

     

    Attached Files:

    • Thaw.zip
      File size:
      630.3 KB
      Views:
      192
    #50
    Quarior, TK85, jmcburn and 2 others like this.
  11. binhthuy71

    binhthuy71 Rear Admiral

    Joined:
    Oct 17, 2016
    Messages:
    1,072
    Likes Received:
    2,788
    sub. Great work! Glad I found this thread.
     
    #51
    Needleship and TK85 like this.
  12. Needleship

    Needleship Master of Custom Terrain

    Joined:
    Apr 13, 2017
    Messages:
    527
    Likes Received:
    835
    (Didn't know what the 'sub' meant. :D- Thanks!)

    - Happy that you all like it!

    (… Have to do more, I guess...)
     
    #52
    TK85 likes this.
  13. Ichaft

    Ichaft Lieutenant

    Joined:
    Jan 18, 2017
    Messages:
    5
    Likes Received:
    4
    Hi Needelship, love the planets you've shared with us.

    Is there a way to change a randomly generated planet with an specifc seed into a custom made planet? For example, I got this nice seed from a desert planet and I'd like to change some of its features, is that possible to port it somehow to 7.0 custom maps?

    I've been looking into the documentation you wrote, nice work by the way, and I'm gonna try messing with the original xml from that desert planet to get what I want.

    Also, When I load your xml's with the terrain generator, nothing happens for some reason (nevermind, found out why, it only loads the xml correctly if its placed inside the terrains directory).
     
    #53
    Last edited: Jan 6, 2018
  14. Needleship

    Needleship Master of Custom Terrain

    Joined:
    Apr 13, 2017
    Messages:
    527
    Likes Received:
    835
    Hi @Ichaft !

    Glad you find the documentation useful, and thanks for the Follow!



    There were some other things I learned in the meanwhile, and some parts of the documentation are outdated:
    - The most important additions are further down in the Terrain Generator documentation thread:
    Deadly Clamp error, internal references count as if they are new modules.

    Then, also:
    - The maximum terrain height in the editor reaches now into the 'deep reds'.
    - Careful with stacking Turbulence mods onto each other. With high 'roughness', they may be very resource demanding. I guess, they result in longer decimals the CPU has to shove around. Better use that mod as late as possible, and keep roughness as low as needed.

    - The .dll-terrain (standard 'seed based terrain') gives a different world than an .xml (that uses the exact same module stack) :
    xml-terrain doesn't use seeds, sadly. You'll have to edit the xml to get a different world.
    I guess, in the .dll is some part integrated that modifies some of the modules to get a different world.
    So your seed won't help you to get the exact same planet as an xml, sorry...



    Raw terrain is basically a painted grayscale image in a really obscure format.
    The 'xml'-terrain consists out of a bunch of mathematical formulas, which are used then to create a grayscale picture- and thus are much less flexible for terrain placement.

    To convert an xml into a raw - Not sure how to do that. Theoretically...

    In the terrain editor there is a small 'preview' shot of a grayscale visualization of your stacked modules. If you could get hold of this data and scale it up to a size of 8192x4092 , then it might be possible to covert this into a height map, which you could edit in e.g. Gimp or Photoshop. - I'm no programmer, so I don't know how you could do that. :(

    --

    'when placed in the terrains directory' ?

    Hmm, strange. At least from sub-folders of the terrains folder, the TG loads stuff fine here with me... But for the game to work they'll need to be in 'terrains'. I usually name my planets in a way, that they end up at the top of the folder.

    --
    (I just tried to build a proper NPC base / trading station. You guys/gals are all crazy, this takes so much time...

    I guess, I'll switch back to building planets. Still have some unfinished projects here.)
     
    #54
    Ichaft and Kassonnade like this.
  15. Ichaft

    Ichaft Lieutenant

    Joined:
    Jan 18, 2017
    Messages:
    5
    Likes Received:
    4
    Yeah, but I didnt try using subfolders inside the terrains, the files were in the downloads folder, maybe it has to be in the empyrion folder or something to work.

    ---------

    Thanks for your quick reply and hard work, it was very helpful.
     
    #55
    Last edited: Jan 7, 2018
    Needleship likes this.
  16. lalan47

    lalan47 Ensign

    Joined:
    Aug 24, 2016
    Messages:
    24
    Likes Received:
    0
    Hi how can i add new planets on alpha 7
     
    #56
  17. Needleship

    Needleship Master of Custom Terrain

    Joined:
    Apr 13, 2017
    Messages:
    527
    Likes Received:
    835
    Hi @lalan47!
    >See other post in your own topic.
    >Alterantively, check out the spoiler ('how to add a custom planet/moon to your save game') of the planet 'Thawing snowball' further up in this thread. :)
     
    #57
  18. lalan47

    lalan47 Ensign

    Joined:
    Aug 24, 2016
    Messages:
    24
    Likes Received:
    0
    ok thx but when i look at the akua sector

    Coordinates: [92, -95, 117]
    Color: 0.04, 0.3, 0.37
    Icon: Circle
    OrbitLine: True
    Deny: [Oscutune Orbit, Aitis Orbit]
    Playfields:
    - ['0, 0, 0', Akua Orbit, SpaceAsteroidFieldRingAkua]
    # - ['0, 0, 0', Akua, Temperate, 'Human:1']
    # - ['-6500, 5000, 6500', Akua Moon, Moon]
    - ['0, 0, 0', Akua, New akua, 'Human:1']
    - ['-6500, 5000, 6500', Akua Moon, NewMoon2]

    wich one is the good one ans the line starting with # is it good?
     
    #58
  19. Sephrajin

    Sephrajin Rear Admiral

    Joined:
    Dec 22, 2017
    Messages:
    916
    Likes Received:
    2,917
    Awesome dude, why did I only found it just now...
    Ah right.. it became sticky... gz! :)

    And it xml, so this means i could use it as a base for further customisation? (As in: using it in EPD as template)
     
    #59
  20. Sephrajin

    Sephrajin Rear Admiral

    Joined:
    Dec 22, 2017
    Messages:
    916
    Likes Received:
    2,917
    Uh.. did that change until today?
    I thought custom planets can be used on servers now?
    Or is there a restriction for xml based planets?
     
    #60

Share This Page