Modding Help Extra set of eyes needed for celestial.config.patch issue...

Discussion in 'Starbound Modding' started by sayter, Jan 27, 2015.

  1. sayter

    sayter The Waste of Time

    Last hurdle I need to jump before FrackinFlora actually allows starbound to load. Removing celestial.config.patch results in loading.

    So, something is up with the pathing here, or something. I am unclear as to exactly what I did wrong. It's likely something super simple. I am simply at a loss :) Anyone with some insight, feel free to chime in.


    The Code: http://pastebin.com/Bsy1ZS50


    The error:

    Code:
    [18:32:03.976] Error: Fatal Exception Caught: (MapException) Key 'arboreal' not found in Map::get()
      MapException::MapException(string)
      BiomeDatabase::biomeIsAirless(String)
      generateTerrestrialWorldParameters(String, String, unsigned long long)
      CelestialParameters::CelestialParameters(CelestialCoordinate, unsigned long long, String, Variant)
      CelestialMasterDatabase::produceSystem(RandomSource, Vector<int, 3u>)
      CelestialMasterDatabase::produceChunk(Vector<int, 2u>)
      __ZN4Star12LruCacheBaseINS_10OrderedMapINS_6VectorIiLj2EEESt4pairIxNS_14CelestialChunkEENS_3MapIS3_St14_List_iteratorIS4_IS3_S6_EESt13unordered_mapIS3_SA_NS_4hashIS3_vEESt8equal_toIS3_ESaIS4_IKS3_SA_EEEEENS_10LinkedListIS9_EEEEE3getIZNS_12TtlCacheBaseISN_E3getIZNS_23CelestialMasterDatabase8getChunkERSG_EUlSU_E_EERS5_SU_T_EUlSU_E_EERS6_SU_SX_
      __ZN4Star12TtlCacheBaseINS_10OrderedMapINS_6VectorIiLj2EEESt4pairIxNS_14CelestialChunkEENS_3MapIS3_St14_List_iteratorIS4_IS3_S6_EESt13unordered_mapIS3_SA_NS_4hashIS3_vEESt8equal_toIS3_ESaIS4_IKS3_SA_EEEEENS_10LinkedListIS9_EEEEE3getIZNS_23CelestialMasterDatabase8getChunkERSG_EUlSR_E_EERS5_SR_T_
      CelestialMasterDatabase::scanSystems(Box<int, 2u>)
      CelestialMasterDatabase::findRandomWorld(unsigned int, unsigned int, function<bool (CelestialCoordinate)>)
      Title::Title(shared_ptr<Player>, shared_ptr<PlayerStorage>, shared_ptr<Cinematic>, shared_ptr<Mixer>, shared_ptr<Renderer>, shared_ptr<AssetTextureCollection>)
      __ZNSt12__shared_ptrIN4Star5TitleELN9__gnu_cxx12_Lock_policyE2EEC2ISaIS1_EIRSt10shared_ptrINS0_6PlayerEERS7_INS0_13PlayerStorageEERS7_INS0_9CinematicEES7_INS0_5MixerEERS7_INS0_8RendererEERS7_INS0_22AssetTextureCollectionEEEEESt19_Sp_make_shared_tagRKT_DpOT0_
      ClientApplication::update()
      StarApplicationBase::run()
      _SDL_main
      _console_main
    
     
  2. Olxinos

    Olxinos Scruffy Nerf-Herder

    Did you also patched terrestrial_worlds.config to add your biomes? This error looks like some properties of the biome "arboreal" should have been found in some file, but that the "arboreal" object wasn't present there. Since terrestrial_worlds.config seem to contain properties related to each biome, I guess that's the main suspect.

    Edit: my string searcher tells me that weather.config may also need patching when adding biomes (if you haven't already)
     
    Last edited: Jan 27, 2015
  3. sayter

    sayter The Waste of Time

    As I said... all the other files seem to be working just fine now. I just finished with terrestrial_worlds and got it all working insofar as I can tell. No errors load with it now, at any rate. It stopped at terrestrial prior to getting that file fixed up.

    If I delete celestial.config.patch, the mod actually loads fine. So whatever it is , has something to do with this file. Arboreal is the first thing defined in it, and it takes a dump the second it finds it.

    For reference, theres the terrestrial: http://pastebin.com/9xMHW4Kc

    So yea...not sure what the error is telling me.
     
  4. Olxinos

    Olxinos Scruffy Nerf-Herder

    The error does not necessarily only involve celestial.config.patch, it may also add new references to other files which haven't been added to these files.
    I guess weather.config is fine too?
     
  5. sayter

    sayter The Waste of Time

    seems to be. I'll try running a non-patch with celestial, using the default file and overwriting...see what happens. Give me a few moments.


    edit:


    back.

    Damnit. Still that stupid error, but for a different biome (guess it is randomly selecting which one errors out)

    Code:
    [20:44:57.296] Error: Fatal Exception Caught: (MapException) Key 'bloodstone' not found in Map::get()
      MapException::MapException(string)
      BiomeDatabase::biomeIsAirless(String)
      generateTerrestrialWorldParameters(String, String, unsigned long long)
      CelestialParameters::CelestialParameters(CelestialCoordinate, unsigned long long, String, Variant)
      CelestialMasterDatabase::produceSystem(RandomSource, Vector<int, 3u>)
      CelestialMasterDatabase::produceChunk(Vector<int, 2u>)
      __ZN4Star12LruCacheBaseINS_10OrderedMapINS_6VectorIiLj2EEESt4pairIxNS_14CelestialChunkEENS_3MapIS3_St14_List_iteratorIS4_IS3_S6_EESt13unordered_mapIS3_SA_NS_4hashIS3_vEESt8equal_toIS3_ESaIS4_IKS3_SA_EEEEENS_10LinkedListIS9_EEEEE3getIZNS_12TtlCacheBaseISN_E3getIZNS_23CelestialMasterDatabase8getChunkERSG_EUlSU_E_EERS5_SU_T_EUlSU_E_EERS6_SU_SX_
      __ZN4Star12TtlCacheBaseINS_10OrderedMapINS_6VectorIiLj2EEESt4pairIxNS_14CelestialChunkEENS_3MapIS3_St14_List_iteratorIS4_IS3_S6_EESt13unordered_mapIS3_SA_NS_4hashIS3_vEESt8equal_toIS3_ESaIS4_IKS3_SA_EEEEENS_10LinkedListIS9_EEEEE3getIZNS_23CelestialMasterDatabase8getChunkERSG_EUlSR_E_EERS5_SR_T_
      CelestialMasterDatabase::scanSystems(Box<int, 2u>)
      CelestialMasterDatabase::findRandomWorld(unsigned int, unsigned int, function<bool (CelestialCoordinate)>)
      Title::Title(shared_ptr<Player>, shared_ptr<PlayerStorage>, shared_ptr<Cinematic>, shared_ptr<Mixer>, shared_ptr<Renderer>, shared_ptr<AssetTextureCollection>)
      __ZNSt12__shared_ptrIN4Star5TitleELN9__gnu_cxx12_Lock_policyE2EEC2ISaIS1_EIRSt10shared_ptrINS0_6PlayerEERS7_INS0_13PlayerStorageEERS7_INS0_9CinematicEES7_INS0_5MixerEERS7_INS0_8RendererEERS7_INS0_22AssetTextureCollectionEEEEESt19_Sp_make_shared_tagRKT_DpOT0_
      ClientApplication::update()
      StarApplicationBase::run()
      _SDL_main
      _console_main
    
    


    I don't get it... what did I miss.... has to be something. But insofar as I can tell I have all the relevant links to the biomes in terrestrial, etc....
     
  6. Whale Cancer

    Whale Cancer Big Damn Hero

    if it was an error with weather.config, it would be citing the type of weather that was being added to a biome in its definition (I believe)
     
  7. sayter

    sayter The Waste of Time

    Okay so....

    celestial

    Code:
    {"op":"add",
    "path":"/planetaryTypes/Tier2/baseParameters/terrestrialType/-",
    "value":"arboreal"
    },
    

    terrestrial

    Code:
    
       {"op" : "add", 
       "path" : "/planetTypes/arboreal",
       "value" : 
         {
           "threatRange" : [2, 4],
           "layers" : {
            "surface" : {
              "primaryRegion" : [ "arboreal" ],
              "secondaryRegion" : [ "forest", "hellhive", "elder", "corruptedforest", "fieldofwheat", "fieldofsugar",  "fieldofpotato", "fieldofcorn",  "fieldofgrape", "fieldofcinnamon", "fieldoftomato","pineforest", "flowerforest", "snowyforest", "taiga", "dryriverbed", "deadwood",   "flesh", "giantflowers", "arctic", "arid", "forest", "grasslands", "jungle", "magma", "savannah", "snow", "tentacles", "tundra", "volcanic" ],
              "dungeonCountRange" : [0, 2],
              "dungeons" : [ "glitchsewer", "glitchvillage", "apexresearchlab", "apextestchamber", "apextowerblock", "aviantomb", "aviantower", "avianvillage", "humanbunker", "floranhuntinggrounds", "floranvillagetower" ]
            },
            "subsurface" : {
              "primaryRegion" : [ "arborealunderground" ]
            }
           }
         }
       },
    
    
      {"op" : "add", 
      "path" : "/regionTypes/arboreal",
      "value" : 
      {
          "caveLiquid" : [  "water", "poison", "blacktar", "swampwater" ],
          "blockSelector" : [ "lowHillsSurface", "medHillsSurface", "flatsSurface", "mixedSurface" ],
          "fgCaveSelector" : [ "surfaceCaves" ],
          "biome" : [
            [0, [ "arboreal" ]]
          ]
        }
      },
    
    


    I also have the correct parallax already, from prior to the Unstable update. As well as the celestial/system stuff (liquids, terrain graphics, etc)


    Any other necessary additions I am missing? warrgarbl.
     
  8. Olxinos

    Olxinos Scruffy Nerf-Herder

    Of course, but the weather list is often called after the biome it will be used for.
    Another candidate: interface/cockpit/cockpit.config (which contains the biome descriptions displayed in the ship's interface).
     
  9. sayter

    sayter The Waste of Time

    cockpit

    Code:
    {"op":"add","path":"/planetTypeToDescription/arboreal",
    "value":"A ^#76fe68;dense forest^white; covers most of the surface."},
    

    and weather

    Code:
    {
    "op" : "add",
    "path" : "/arboreal",
    "value" : [    
        [0.475, "clear"],
        [0.4, "fog"],
        [0.4, "rain"],
        [0.3, "storm"],
        [0.5, "drizzle"],
        [0.32, "windstorm"],
        [0.4, "groundmist"],
        [0.15, "glowingrain"],
        [0.15, "heavyrain"]]
    },
    
     
  10. Olxinos

    Olxinos Scruffy Nerf-Herder

    Okay, i'm out of ideas now, did you name anything after the biome name you could have forgotten to add somewhere?
     
  11. sayter

    sayter The Waste of Time

    I just did a crosscheck with the original game files, to see how/where biomes are named, in total. I don't see anything I missed.

    celestial.config
    terrestrial_worlds.config
    weather.config
    cockpit.config

    and then the biome itself. Same number of declarations , too. So I don't think I missed anything.

    As far as I know everthing else is copied from pre-Unstable FrackinFlora verbatim, and anything needing changes has been changed. The biome files themselves don't spit out errors, so the issue isn't there. Copied those over from vanilla and simply modified values for my own content. No syntax, lint is 100% fine on all biomes

    Starting to wonder if something is dun-broke in the patching with biomes specifically. Ugh.




    edit: If I hardcode it by overwriting the default celestial and terrestrial_worlds files: works fine. Go figure.
     
    Last edited: Jan 27, 2015
  12. AstralGhost

    AstralGhost Pangalactic Porcupine

    That usually means there was an issue with the formatting of the patch.
    I'll take a look at the files, give me a minute and I'll see if I can spot anything.[DOUBLEPOST=1422334882][/DOUBLEPOST]Oh hey, I think I know.
    Have you tried removing the 'comments' out of your patch files? :)

    I've never added comments to a patch file before but I have a feeling those things aren't valid.
    Everything else seems to work perfectly. I have a feeling the comments are causing the entire patch to be ignored. Ignored patch files would explain the errors you're getting.
     
    Last edited: Jan 27, 2015
    Olxinos and The | Suit like this.
  13. The | Suit

    The | Suit Agent S. Forum Moderator

    Never would have thought of that - I always strip comments
     
  14. sayter

    sayter The Waste of Time

    I'll give it a shot. Can't think of what else the issue could be, at this point. I like comments so I can find things later to edit them, but oh well.[DOUBLEPOST=1422359716][/DOUBLEPOST]

    removed the comments. No dice. Still get this error (random biomes, depending on what it feels like spitting out, it would seem)
    Code:
    [06:49:21.191] Error: Fatal Exception Caught: (MapException) Key 'sulphuric' not found in Map::get()
      MapException::MapException(string)
      BiomeDatabase::biomeIsAirless(String)
      generateTerrestrialWorldParameters(String, String, unsigned long long)
      CelestialParameters::CelestialParameters(CelestialCoordinate, unsigned long long, String, Variant)
      CelestialMasterDatabase::produceSystem(RandomSource, Vector<int, 3u>)
      CelestialMasterDatabase::produceChunk(Vector<int, 2u>)
      __ZN4Star12LruCacheBaseINS_10OrderedMapINS_6VectorIiLj2EEESt4pairIxNS_14CelestialChunkEENS_3MapIS3_St14_List_iteratorIS4_IS3_S6_EESt13unordered_mapIS3_SA_NS_4hashIS3_vEESt8equal_toIS3_ESaIS4_IKS3_SA_EEEEENS_10LinkedListIS9_EEEEE3getIZNS_12TtlCacheBaseISN_E3getIZNS_23CelestialMasterDatabase8getChunkERSG_EUlSU_E_EERS5_SU_T_EUlSU_E_EERS6_SU_SX_
      __ZN4Star12TtlCacheBaseINS_10OrderedMapINS_6VectorIiLj2EEESt4pairIxNS_14CelestialChunkEENS_3MapIS3_St14_List_iteratorIS4_IS3_S6_EESt13unordered_mapIS3_SA_NS_4hashIS3_vEESt8equal_toIS3_ESaIS4_IKS3_SA_EEEEENS_10LinkedListIS9_EEEEE3getIZNS_23CelestialMasterDatabase8getChunkERSG_EUlSR_E_EERS5_SR_T_
      CelestialMasterDatabase::scanSystems(Box<int, 2u>)
      CelestialMasterDatabase::findRandomWorld(unsigned int, unsigned int, function<bool (CelestialCoordinate)>)
      Title::Title(shared_ptr<Player>, shared_ptr<PlayerStorage>, shared_ptr<Cinematic>, shared_ptr<Mixer>, shared_ptr<Renderer>, shared_ptr<AssetTextureCollection>)
      __ZNSt12__shared_ptrIN4Star5TitleELN9__gnu_cxx12_Lock_policyE2EEC2ISaIS1_EIRSt10shared_ptrINS0_6PlayerEERS7_INS0_13PlayerStorageEERS7_INS0_9CinematicEES7_INS0_5MixerEERS7_INS0_8RendererEERS7_INS0_22AssetTextureCollectionEEEEESt19_Sp_make_shared_tagRKT_DpOT0_
      ClientApplication::update()
      StarApplicationBase::run()
      _SDL_main
      _console_main
    


    here are the pastebin links for all 4 relevant file. They don't "seem" to have issues. But, it would appear that I am mistaken...or the patch system is broken where this sort of add is concerned.

    terrestrial_worlds: http://pastebin.com/AqMev70d
    celestial: http://pastebin.com/yP36tbAZ
    weather: http://pastebin.com/MUZYF0bY
    cockpit: http://pastebin.com/iUP0FMbL
     
    Last edited: Jan 27, 2015
  15. AstralGhost

    AstralGhost Pangalactic Porcupine

    Interesting!
    Do you mind sending over the whole mod to me as you have it right now? I think this calls for deeper testing.
     
  16. sayter

    sayter The Waste of Time

    Well, it seems they went and re-ordered/relocated the way biomes are set up yet again. That could be part of the issue at hand. We're currently re-pathing everything to the new unstable locations. If we still have errors then, I'll toss stuff your way to peek at.
     
    AstralGhost likes this.

Share This Page