Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

Voxeland - Voxel Terrain Tool

Discussion in 'Assets and Asset Store' started by Wright, Jun 25, 2013.

  1. MrIconic

    MrIconic

    Joined:
    Apr 5, 2013
    Posts:
    239
    Checking on the progress to see how it is going and I'm glad you're still working on it. Keep up the good work. As long as you have a way to import a terrain that's already created (through raw import or otherwise) then you can take as long as it takes to make the new version great.
     
  2. SSL7

    SSL7

    Joined:
    Mar 23, 2016
    Posts:
    347
    Until the new update, is Voxeland now able to do some custom dungeons etc. in editor in a map created with MapMagic?
     
    ftejada likes this.
  3. Wright

    Wright

    Joined:
    Feb 26, 2013
    Posts:
    2,267
    We are exchanging ideas with Jason on how MegaSplat could be best integrated with Voxeland. He explained me main principles of creating MegaSplat-compatible meshes, but I will look into implementing them once the things with Voxeland 5 will settle down.

    Here is a quick glance at Voxeland4 and Voxeland5 performance comparison:

    I'm cheating a bit with this video because Voxeland5 does not generate ambient occlusion, types, grass and objects - it will slow down performance twice, but even then it's far better than Voxeland4.
    BTW you can turn off ambient occlusion in Voxeland4 too to make it faster (in Settings foldout).

    Yep, still working, even more than that. I devote all of my time to Voxeland 5 :)

    Theoretically you can generate a standard terrain in MMWG, then export heightmap to texture with third-party tools, and then import it in Voxeland, but I guess it's rather awkward pipeline.
     
  4. MarkusGod

    MarkusGod

    Joined:
    Jan 10, 2017
    Posts:
    168
    Sorry for noob question, i can figure out how to generate forest with multiple trees, does voxeland can it?
    UPD: sorry again, i'm not very smart, there can be selected multiple prefabs.

    UPD2: Since i'm very new to unity, may anybody suggest the best way to create grass (grass meshes and textures or how they should be made) or any another tool compatible with voxeland, wich can help in grass creation, since as i can understand standart grass packs become not very usefull.
     
    Last edited: Jan 18, 2017
  5. Wright

    Wright

    Joined:
    Feb 26, 2013
    Posts:
    2,267
    Standard grass mesh is rather simple - it's just a bunch of vertical triangles scattered on 1*1 unit area. You can import that mesh in 3D editor and change it the way you like (or create a new one). But since this mesh is quite common I'd like to recommend you start with changing or re-drawing grass textures.
     
    MarkusGod likes this.
  6. Coltenney

    Coltenney

    Joined:
    Mar 10, 2015
    Posts:
    25
    Is there an approximate release month for v5?
     
  7. MarkusGod

    MarkusGod

    Joined:
    Jan 10, 2017
    Posts:
    168
    Can you explain position of images and it's resolution? I understood that they must be at 45 angle but, what resolution should they have to scale properly, and how much textures should be in one picture?
     
  8. Wright

    Wright

    Joined:
    Feb 26, 2013
    Posts:
    2,267
    MarkusGod, For the standard grass mesh you should use 4*2 (4 double triangles) atlas. Texture resolution does not matter. Personally I'd like to recommend you to take original grass texture as an example and place grass "bushes" the same way.

    Coltenney, I plan to start beta-test in February, and the final release date will depend on the test results.
     
    MarkusGod likes this.
  9. GamePowerNetwork

    GamePowerNetwork

    Joined:
    Sep 23, 2012
    Posts:
    257
    Hello, I was curious.

    Can I use Voxeland to make prefabs for my game? For example. I actually want to use the unity terrain, however I want my mountains, rocks and some caves made with Voxeland. Is that possible?

    I'd love to make rocks for my game with Voxeland and use those rocks as prefabs also.
     
  10. MarkusGod

    MarkusGod

    Joined:
    Jan 10, 2017
    Posts:
    168
    You can create small voxeland terrains construct mountains, caves, rocks, etc, and after bake them to meshes and use like prefabs.
     
    GamePowerNetwork likes this.
  11. GamePowerNetwork

    GamePowerNetwork

    Joined:
    Sep 23, 2012
    Posts:
    257
    The baking is just what I needed! thank you!
     
  12. GingerNinja04

    GingerNinja04

    Joined:
    Jul 10, 2014
    Posts:
    16
    I bought Voxeland a year or 2 ago and I just decided to look at it again.

    I'm absolutely in love with it. It is a very well developed "tool" I guess you would call it?


    I'm currently integrating Voxeland with my project, I have managed to attach my Forestry scripts to cut down the trees with very little effort just by looking at the scripts for voxeland but.... I have a question about terrain height.

    I'm trying to integrate my Building system and I can't work out how to get the height of the terrain at given coordinates. I saw the Voxeland.Coord.y but that seemed to leave the objects y at 0. is there an easy way to get the height value? currently I am just using the players height but would be ideal if I could use the terrains y position instead.

    Again, Absolutely love Voxeland and I am going to push it to the extreme :)
     
  13. Ascensi

    Ascensi

    Joined:
    Sep 7, 2013
    Posts:
    579
    I saw this on a post a little while back.. it might help.. especially if you want a house built over a specific texture?
    "a texture at a specific x, y, z coordinate:

    You can get the block type at some specific coordinate using
    voxelandObject.GetBlock(x,y,z) - and then get it's texture using voxeland object blocks array."

    I'm no programmer so I'm not sure if the coordinates will be revealed or not if you use this.

     
  14. trilobyteme

    trilobyteme

    Joined:
    Nov 18, 2016
    Posts:
    309
    Yesterday I did a clean install of Unity 5.5.1 and then after re-importing Voxeland from the asset store, I'm seeing these messages in the console:



    Is a minor update coming soon, or can I make some changes to clear these errors?
     
  15. GingerNinja04

    GingerNinja04

    Joined:
    Jul 10, 2014
    Posts:
    16
    Thank you, I will give that a shot. I managed to get the cords by other means which I can't recall at the moment, but I ran into issues as the ray cast seemed to be interfering with the object. But I will definitely look at what you mentioned.
     
  16. GingerNinja04

    GingerNinja04

    Joined:
    Jul 10, 2014
    Posts:
    16
    Trilobyteme, I did a fresh download and Import of voxeland into unity 5.5 just a few days ago and It gave me an option to "Update" the code that was obsolete. it also asked me if I had made a back up and wanted to update the obsolete code. I clicked yes and those warnings disappeared. Maybe try importing it again and see if you get the Pop up message?
    Hope this helps you.
     
  17. siblingrivalry

    siblingrivalry

    Joined:
    Nov 25, 2014
    Posts:
    384
    Hi,
    Can existing multi tiled terrains complete with grass, trees, prefabs amd textures be imported and converted with voxeland?

    Thanks
     
  18. Wright

    Wright

    Joined:
    Feb 26, 2013
    Posts:
    2,267
    Although warnings are not errors, they do not block code compile and do not prevent Voxeland from working, I have to admit that it does not look tidy with the new Unity version. Yap, I think I'll make a minor update to clean it up.

    Use voxeland.data.GetTopPoint(x, z);

    siblingrivalry, nope. At least, there is no straightforward way to do it - you will have to export terrain heightmaps and import them to Voxeland.
     
    malkere likes this.
  19. RakNet

    RakNet

    Joined:
    Oct 9, 2013
    Posts:
    313
    I'm considering buying Voxeland and have some questions

    1. One review said "using this, without baking.... seems tricky. First you have to let it build, then in order to get the grass and scaling features to work right you need to use their manager class.... which assumes you use their camera control, character control. "

    I have my own character controller with Puppetmaster so can't change, is this true?

    2. I currently have destructible physics based terrain using cubes. If the user made a shape with during runtime editing that wasn't balanced or strong enough to support itself it should break and/or fall over. Can I do this with Voxeland?
     
  20. Wright

    Wright

    Joined:
    Feb 26, 2013
    Posts:
    2,267
    Voxeland just have to know current camera position in order to build terrain chunks around it. It does not matter what camera or character controller is used.
    However, there's one caveat: terrain should be built below controller in order to prevent falling through the ground on game start - so controller should be disabled at the start and enabled with a script that monitors if there is a collider undr character with raycast.

    Voxeland is just a way to display terrains, it does not simulate blocks physics. If you will make an island floating in the air with it or just a single unconnected block it will not fall down.
     
  21. SSL7

    SSL7

    Joined:
    Mar 23, 2016
    Posts:
    347
    Let me ask you something, If i create my map with MapMagic now, can i implement the voxeland generator easily when its out? I m holding back with my world map cause of this :)
     
  22. hoodoo

    hoodoo

    Joined:
    Oct 19, 2012
    Posts:
    154
    Hi @Wright. I started using Voxeland tonight and have a question: I want to create some limited terrain in Voxeland and then convert it to a mesh and place it in another scene on an existing terrain. I've tried baking meshes to Assets but I'm not sure how to use the assets in my other scene. I read in this thread that I need to set the shader which is fine, but I don't know the process of doing this. Any hints are appreciated!
     
  23. hoodoo

    hoodoo

    Joined:
    Oct 19, 2012
    Posts:
    154
    I did find a fairly painless way to put my Voxeland mesh into another scene, but I don't know if its the best way to do it. I used the export to text feature, then created a Voxeland object in my destination scene (same size) and did an import from text file. This pulled it in fine, although I had to remap the texture and normal again. Is this the best way or is there a better way to do it?

    An unrelated question: is it possible to use more than one texture on a Voxeland terrain?
     
  24. Ascensi

    Ascensi

    Joined:
    Sep 7, 2013
    Posts:
    579
    @Wright I was thinking of a way you might be able to generate caves -perhaps if you procedural generated noise/fractal or from images/height map pattern (with option for offset) to be set along Y height with a specified thickness/height to spread across the X & Z and add Boolean types add, subtract etc of course the same noise pattern could be used to help calculate the curvature/rigidly surface inside the cave and specify the cave shape whether it be round or square for mine shafts. If the generation type is set to square it could help generate roads.

    It seems more likely that MapMagic would be able to do this -to additionally add different Boolean nodes to generate caverns/noise on horizontal angles or even add an envelope along the x,y and or z to make the caverns shaped like a smooth sine wave in the ground for height variations.

    How is the integration coming? something for us to play with soon?
     
    Last edited: Feb 13, 2017
  25. Wright

    Wright

    Joined:
    Feb 26, 2013
    Posts:
    2,267
    Sorry for delay with replies, I've just threw myself in new version development.

    Voxeland will have it's own output node, but it can work the way similar Textures Output does. So I guess there should be no big problem converting standard graph to Voxeland one. But keep in mind that Voxeland has no "terrain size" parameter, so in MapMagic General Settings "Terrain Size" value should be equal to "Resolution".

    Note that this way you export not the terrain meshes, but a voxel data. Do you need that both Voxeland objects in different scenes use the same data (i.e. changing the one causes the other to change too)?

    Are you talking about block type? (Block Types -> plus button -> set a texture for the new block).

    It's not just an integration. It's the new Voxeland. Absolutely new. That's why making it takes so long.
    I know many of you can't wait to see it, but still I've got lots of things to do.
    Btw it's very encouraging to see people waiting for the new version :)
     
  26. hoodoo

    hoodoo

    Joined:
    Oct 19, 2012
    Posts:
    154
    Thanks @Wright. I would prefer to export the whole mesh with textures to a new scene. I don't care if they are linked after that. So with Block Type, does that allow me to use a new texture on new blocks I am placing?
     
  27. TylerO

    TylerO

    Joined:
    Aug 21, 2011
    Posts:
    35
    I am looking at buying this and while I am really liking what I am seeing, I wanted to ask a few questions:

    1) What sort of scale can this system support? We want to create a relatively large world for our game and have noticed that some people have said this can't handle large terrains. If there are any examples of large terrains with Voxeland, that'd be great!

    2) I also had a look at MapMagic and it seems extremely neat - any idea on when MapMagic would support Voxeland? I would most likely be interested in buying both in such a case. ;)

    3) Finally, I noticed it mentioned above that Voxeland 5 is currently in the works and has a noticeable performance boost (among other things.) I also noticed that you were looking at doing some beta testing this month, if that is still on schedule and provided I get this asset - what would the availability for that beta be? I would happily be a guinea pig and report any errors in order to get the bleeding-edge features. ;)

    Thanks in advanced!
     
  28. Wright

    Wright

    Joined:
    Feb 26, 2013
    Posts:
    2,267
    Sure! That's the purpose of the multiple block types.

    TylerO, Voxeland's web demo has almost infinite terrain. But the thing is that it could not (and should not - for performance reasons) be displayed at once. The terrain is building dynamically when player travels through it, and the size of true voxel terrain around camera is relatively small - about a hundred of meters - all the terrain further is a a plane with height offset.

    MM and Voxeland will support each other since the next version. I'm still working on the new Voxeland - right now I'm implementing (or should I say re-implementing) object blocks. If everything goes well I'll start beta test within two or three weeks. I'll announce beta test start here in this thread, so follow the news :)
     
  29. hoodoo

    hoodoo

    Joined:
    Oct 19, 2012
    Posts:
    154
    Thanks @Wright - so for exporting the Voxeland terrain mesh with textures to another scene, is there a way to do that?
     
  30. TylerO

    TylerO

    Joined:
    Aug 21, 2011
    Posts:
    35
    UPDATE: I looked at the demo again and realized that this is what I am looking for - going to pick it up today - I will certainly keep my eyes peeled for the beta, and would very much appreciate getting access to it!

    So, I believe I understand this correctly, but just to confirm - I could render far terrain, but instead of voxels, it would simply be a mesh instead, correct? If so, then great!

    I of course do not want voxels being rendered a mile away, I understand the performance implications of that, but being able to see far into the distance and still seeing terrain (read: mountains) while having the local area editable is precisely what I need.

    If you can confirm that is the case, you'll find yourself a new customer :)
     
    Last edited: Feb 23, 2017
  31. Ascensi

    Ascensi

    Joined:
    Sep 7, 2013
    Posts:
    579
    Optimized for Mountains
    Is it possible that you could add an override feature -an exception to the camera to see a large terrain area with low LOD in the distance such as a mountain -maybe add an adjustable voxel area rendering size limit corresponding with the override to make the visible range smaller if there are more intricate terrain features adding too much verts/voxel information -so the amount of information/voxels on screen/rendered stay consistently the same data size.

    In my Voxeland I have a lot of purposely created smooth vertical ground spikes preventing the ability to see great distances but something such as being able to see a mountain in the distance is essential.

    ----------------------------------
    Culling Options for Voxeland 5 -anything new for terrain culling?
    • Backface Culling -auto tag chunks: I was wondering if you could add backface culling so that when we enter caves the outer unseen surface is not rendered
    • Frustum Culling: Culls and bypasses Occulsion Culling.
    • Chunk Loading Exception Option on custom tagged Chunks or auto tag by height: for mountains as mentioned under "Optimized for Mountains ".
    • Occlusion Culling: chunks that are close by the character but need to be disabled since they aren't seen. The OC latency should likely be calibrated with Voxeland streaming - a bit of offset if the distance of chunk loading and OC.
    If you've added the ability to tag chunks I guess we could use third party Culling options if they will work with Voxeland. An Auto tag option would be good for adding all 3 Culling options to all chunks but leaving a blank checkbox that can be used to enable the chunk loading exception.

     
    Last edited: Feb 24, 2017
    ftejada and MarkusGod like this.
  32. AdanGrotesco

    AdanGrotesco

    Joined:
    Sep 26, 2015
    Posts:
    33
    Can you post some images of a mapmagic generated map preview? I really want to see it! Thanks!
     
  33. sebou42240

    sebou42240

    Joined:
    Aug 21, 2015
    Posts:
    19
    Hello, how to load automaticly the last terrain when i start game please ?
     
    Last edited: Feb 23, 2017
  34. TylerO

    TylerO

    Joined:
    Aug 21, 2011
    Posts:
    35
    While I have yet to use the asset - based on the documentation, you'll need to write the bytes for your terrain to a file and then load the bytes from that file.

    See the documentation here: http://www.denispahunov.ru/voxeland/doc.html

    If you scroll to the bottom of that page you'll notice two methods:

    public List<byte> Data.SaveToByteList ()
    public void Data.LoadFromByteList (List<byte> byteList)

    Simply write the bytes to a file and then load them when your game starts... easy-peasy.
     
    MarkusGod likes this.
  35. sebou42240

    sebou42240

    Joined:
    Aug 21, 2015
    Posts:
    19
    I just creat a C# scripts, i do public void Data.LoadFromByteList (List<byte> byteList) and it's ok.. ?
     
  36. Wright

    Wright

    Joined:
    Feb 26, 2013
    Posts:
    2,267
    TylerO, yap, that's right: voxels are rendered on a short distance, and mountains on the horizon are simple one-level terrain.

    I don't really know what do you expect to see since I have not made a demo scene or something, but here it is:

    sebou42240, as far as I understand you are going to make a save/load system for you game that will serialize voxeland object? In this case you'll have to make your gamesave system first, and then integrate Voxeland by calling it's SaveToByteList and LoadFromByteList functions. They are not events, they should be called directly from your script.

    hoodoo, to export Voxeland from one scene to the other:
    - save it to TXT in Import/Export foldout
    - create new Voxeland of the same chunk and area size (or terrain size for limited terrains) in the new scene
    - load TXT with the new Voxeland

    Ascensi, backface and frustum culling are done with Unity, these features are available for any Voxeland version (for any object actually). And occlusion culling is an extremely complicated task, I don't think I will implement it to Voxeland ever. Speaking about tags - I don't really get it how could they help with 3rd part OC - could you please give an example?
     
  37. sebou42240

    sebou42240

    Joined:
    Aug 21, 2015
    Posts:
    19
    Thanks for you answer !
    i would like just a automaticly load system, in exemple i hollow in my terrain, i save, i quit game and when i restart the game i would like directly load my last terrain...
     
  38. Ascensi

    Ascensi

    Joined:
    Sep 7, 2013
    Posts:
    579
    I've used the asset "InstantOC -Dynamic Occlusion Culling"
    I believe this would be extremely helpful in this case. I tag my objects and set them to render on a layer and doesn't require any baking like Unity OC Requires. I was thinking that if generated chunks individually could be assigned to a layer that performance would take another leap forward -individual chunks close by but not seen.
    https://www.assetstore.unity3d.com/en/#!/content/6391 I've used this on a procedural maze with over 200 cubes and the prefab cloned and propagated had over 200 fragments.. I tested this with VR and was the only way it would work with it.
    At present, InstantOC will only work on baked Voxeland/exported to obj/mesh etc -only then can each chunk be tagged.

    About backface culling, I meant polygonal culling.. there is a tool on the asset store with that name already but I don't know if it would work with Voxeland although I'm certain it wont for in the editor unless it could process the initial generated world then make small updates dynamically as Voxeland is sculpted.
    https://www.assetstore.unity3d.com/en/#!/content/67638
     
    Wright likes this.
  39. Dune2

    Dune2

    Joined:
    Sep 22, 2016
    Posts:
    38
    Voxeland keeps losing my changes. How do I make sure the data is "saved" before I close unity?

    I'm losing hours of work, now twice in two days. I have no way of verifying, that I can see that the data is saved. The scene is saved, all my non-voxeland stuff stays as last saved.
     
  40. MarkusGod

    MarkusGod

    Joined:
    Jan 10, 2017
    Posts:
    168
    Hi Denis, when baking voxeland it creates HiRes chunks and LowRes chunks, it's just a part of LOD system that used when voxeland script is on, and they aren't need when map is baked, or they should be added to LOD groups? It would be greate if you explain this part of voxeland.
     
  41. TylerO

    TylerO

    Joined:
    Aug 21, 2011
    Posts:
    35
    I noticed that once I checked out the web demo. That being said, I did end up picking up the asset and plan on digging into it today! Whenever you do decide to beta test the next version, I hope i'll be able to partake in such a test!
     
  42. Dune2

    Dune2

    Joined:
    Sep 22, 2016
    Posts:
    38
    Again Voxeland destroys all new data. I tried checking save with scene file. The scene file shows Voxeland information, but it isn't using it on load. Or it isn't saving new changes.
     
    Last edited: Feb 27, 2017
  43. Dune2

    Dune2

    Joined:
    Sep 22, 2016
    Posts:
    38
    Created a video to show problem I'm having with Voxeland.
     
  44. Wright

    Wright

    Joined:
    Feb 26, 2013
    Posts:
    2,267
    Dune2, oh, I see, it's definitely not the way Voxeland should work. I can't reproduce this bug with an empty Voxeland or demo scene, I still get all of my changes saved, so I'd like you to make one test: dig those corridor hole, move any object in scene, save the scene and then load it. Write back it here if it helps, otherwise could you please send me your scene with Voxeland object only (mail@denispahunov.ru).

    Ascensi, thanks for the links. Those assets look interesting, I will try to write to their authors for voucher exchange, but I'll do this after new version release.

    MarkusGod, in a current version only hi-res meshes are baked. In the new Voxeland I'm going to make an intermediate mode called "Fixed", in addition to "Static" (aka baked) and "Infinite" modes, that will have all of the chunks generated but will enable/disable chunks and switch their lods with almost zero overhead. But I think that converting chunks to lod groups is worthy idea, I will think about the way to implement it.

    TylerO, I will announce beta test here in this thread. I will be using google form just to not to leave anyone out, so check this forum from time to time.
     
    MarkusGod likes this.
  45. ArchLevelChris

    ArchLevelChris

    Joined:
    Mar 29, 2014
    Posts:
    1
    Hello

    I have import voxeland to a empthy unity project and becomes this errors: bug.PNG

    Is it possible to load 4-6 scenes with a Voxeland terrain (size 200 to 400 units) to one scene at runtime? The terrains are not connected. They are like flying pieces.

    thanks for your answer
     
  46. Ascensi

    Ascensi

    Joined:
    Sep 7, 2013
    Posts:
    579
    @Wright in your redesigning Voxeland did you consider my suggestion about using a high contrast image/noise filter that can be rotated, scaled/ envelop scaled, and positioned on the y Axis to help generate caves and rivers with an "add or subtract Boolean? "
    If you have added this I hope you can set a material or a Megasplat feature such as wetness & puddles or Per Texture Flow to the filter so it can be positioned as a height map along the bottom and overall would help us create instant rivers/puddles or lava.

    I'm very excited that you're working on integrating Megasplat with Jason's help.. Voxeland 5 will be mind blowing!! so I thought I would share some thoughts how to fully take advantage of Megasplat if you have added a cave/river filter.

    I think an add & subtract boolean could help generate unique surface areas that is completely different from the output of terrain generation. I'm thinking that the boolean would have to be applied after the landscape has been generated then once you generate a boolean it becomes saved as part of the landscape just like what happens after you sculpt for the first time on the terrain.

    Lastly it would be great if we can add as many filters as we like and have Voxeland remember the images/filters we used like texture slots and overwrite any other filter individually if it was intersected by others or optionally the ability to apply all the added filters filters at once.

    Since you're making Voxeland a node based terrain generator.. perhaps caves could have its own branch with material bindings but something that you can add after the main terrain is generated and enable it or disable it like photoshop layers
     
    Last edited: Mar 6, 2017
  47. sebou42240

    sebou42240

    Joined:
    Aug 21, 2015
    Posts:
    19
    hello, anyone know how to save and load automatically the modified terrain please... ?

    i see SaveToByteList and LoadFromByteList functions but i don't understand how to use...
     
  48. malkere

    malkere

    Joined:
    Dec 6, 2013
    Posts:
    1,212
    Are there height/depth limits? How does procedural cave generation work? Scanning forums now...
     
  49. Ascensi

    Ascensi

    Joined:
    Sep 7, 2013
    Posts:
    579
    He hasn't added Cave generation to Voxeland 4.. I'm requesting and giving him ideas how he might be able to add it for Voxeland 5
     
  50. Wright

    Wright

    Joined:
    Feb 26, 2013
    Posts:
    2,267
    Tirelessart, thanks for pointing out that issue. I'm going to fix it ASAP, but it will take some time for Unity to review the fixed version. As a quick fix you can remove all of the lines with a word "Profiler". This happened because Unity brought profiling to a separate namespace in v.5.5

    It's not possible to use several Voxeland objects at once since Voxeland is using the singleton pattern. I'm going to get rid of this approach in Voxeland 5, but still, singleton instance reference is used in some methods.

    Ascensi, in the upcoming version, caves could be generated with MMWG. I think your approach is rather complicated, but I'm making something akin with a stamp brush.

    sebou42240, I don't really know your scripting experience level, so maybe all that I will say is just a common truth. When you change any Unity game object during playmode and then stop the game all of the changes will vanish, and next time you start playmode, the object will be in its initial state. Voxeland is not different from any game object in this aspect. To track objects change and apply changes on further game starts you have to write a custom serialization system - this will require some scripting. Generally, your serialization class will have two main methods - to save the game and to load it. In your save method use SaveToByteList function, convert byte list to string and write it to a save file. In load method you should load those string from a file, convert it back to bytes list and use it as a parameter in LoadFromByteList.

    malkere, height is theoretically infinite, but depth is limited to the zero level.
     
    Ascensi likes this.