Modding Help 2 errors without proper cause listed

Discussion in 'Starbound Modding' started by Akari_Enderwolf, Jul 9, 2017.

  1. Akari_Enderwolf

    Akari_Enderwolf Pangalactic Porcupine

    ok, so, I keep getting 2 errors in my mod.
    the first.
    Code:
    [01:46:13.446] [Error] Could not load image asset '/objects/teleporter/eathosteleporter/eathosteleporter.png:default', using placeholder default.
    (AssetException) No such frame default in frames spec /objects/teleporter/eathosteleporter/default.frames
    [01:46:13.456] [Error] Could not load image asset '/objects/teleporter/eathosteleporter/eathosteleporterlit.png:default', using placeholder default.
    (AssetException) No such frame default in frames spec /objects/teleporter/eathosteleporter/default.frames
    the contents of the file in question
    Code:
    {
      "frameGrid" : {
        "size" : [32, 64],
        "dimensions" : [2, 1],
        "names" : [
          [ "default.0",  "default.1" ]
        ]
      },
    
      "aliases" : {
        "default.default" : "default.0"
      }
    }
    
    The second error causes the game to crash at startup
    Error
    Code:
    [01:46:14.981] [Error] Application: exception thrown, shutting down: (AssetException) Error loading asset /quests/outpost/mechupgrade2.questtemplate
    [0] 13fc87713 Star::captureStack
    [1] 13fc8649e Star::StarException::StarException
    [2] 13fc93ada Star::AssetException::format<Star::AssetPath>
    [3] 13fc9ff7b Star::Assets::getAsset
    [4] 13fca0e72 Star::Assets::json
    [5] 140026810 Star::QuestTemplateDatabase::QuestTemplateDatabase
    [6] 140035bc5 std::make_shared<Star::QuestTemplateDatabase>
    [7] 14003a5c9 <lambda_6a21814ff59db299d6420af313620a10>::operator()
    [8] 14002bcbf std::_Invoker_functor::_Call<<lambda_6a21814ff59db299d6420af313620a10> & __ptr64>
    [9] 14002fd16 std::invoke<<lambda_6a21814ff59db299d6420af313620a10> & __ptr64>
    [10] 14002d969 std::_Invoke_ret<std::shared_ptr<Star::QuestTemplateDatabase>,<lambda_6a21814ff59db299d6420af313620a10> & __ptr64>
    [11] 14003c916 std::_Func_impl<<lambda_6a21814ff59db299d6420af313620a10>,std::allocator<int>,std::shared_ptr<Star::QuestTemplateDatabase> >::_Do_call
    [12] 14003b277 std::_Func_class<std::shared_ptr<Star::EmoteProcessor> >::operator()
    [13] 140032f53 Star::Root::loadMemberFunction<Star::QuestTemplateDatabase>
    [14] 140030899 Star::Root::loadMember<Star::QuestTemplateDatabase>
    [15] 140041fb2 Star::Root::questTemplateDatabase
    [16] 14002c170 std::_Invoker_pmf_pointer::_Call<std::shared_ptr<Star::StatisticsDatabase const > (__cdecl Star::Root::*)(void) __ptr64,Star::Root * __ptr64 & __ptr64>
    [17] 14002fb09 std::invoke<std::shared_ptr<Star::SpawnTypeDatabase const > (__cdecl Star::Root::*& __ptr64)(void) __ptr64,Star::Root * __ptr64 & __ptr64>
    [18] 14002d45c std::_Invoke_ret<std::shared_ptr<Star::MaterialDatabase const > (__cdecl Star::Root::*& __ptr64)(void) __ptr64,Star::Root * __ptr64 & __ptr64>
    [19] 14002c1fe std::_Call_binder<std::_Unforced,0,std::shared_ptr<Star::StagehandDatabase const > (__cdecl Star::Root::*)(void) __ptr64,std::tuple<Star::Root * __ptr64>,std::tuple<> >
    [20] 14002b95e std::_Binder<std::_Unforced,std::shared_ptr<Star::ImageMetadataDatabase const > (__cdecl Star::Root::*)(void) __ptr64,Star::Root * __ptr64 const>::operator()<>
    [21] 14003c5c2 std::_Func_impl<Star::SwallowReturn<std::_Binder<std::_Unforced,std::shared_ptr<Star::DanceDatabase const > (__cdecl Star::Root::*)(void) __ptr64,Star::Root * __ptr64 const> >,std::allocator<int>,void>::_Do_call
    [22] 13fc7e27b <lambda_7b083dc4bdd496712d99e51bb49515b5>::operator()
    [23] 13fc7f022 Star::WorkerPool::WorkerThread::run
    [24] 13fc8425e Star::ThreadImpl::runThread
    [25] 777059cd BaseThreadInitThunk
    [26] 7793b981 RtlUserThreadStart
    [01:46:14.981] [Info] Application: shutdown...


    Contents of my patch file that I thought I formatted correctly:
    Code:
    {
        { "op" : "add", "path" : "/giveSpeciesBlueprints/dimentrex", "value" : "mechbodydimentrex" }
    }
    


    I have tried multiple things to try to fix both these errors, nothing seems to work however. As for the first error, I'm trying to add a 2 frame animation to a teleporter. The second error is obvious what I'm trying to do(add the second level racial mech to the quest reward).

    Update, I fixed the second error by changing the {} to [] at the top and bottom of the code.

    The quest issue was only resolved as far as not making the game crash. I just tested it and the quest gave me the human tier 2 mech, not my race's tier 2 mech. It doesn't give an error either, so I don't know why it isn't giving the correct mech blueprint.
     
    Last edited: Jul 9, 2017
  2. Akari_Enderwolf

    Akari_Enderwolf Pangalactic Porcupine

    I fixed the quest issue, but I'm still getting the other issue with the teleporter not animating.
     
  3. IHart

    IHart Scruffy Nerf-Herder

    share your files for the teleporter.
     
  4. Akari_Enderwolf

    Akari_Enderwolf Pangalactic Porcupine

    I have to wait til I get home to get them. I did mame the images big enough for the animation. Could it be something in my object file? The frames file is already part of the op.
     
  5. IHart

    IHart Scruffy Nerf-Herder

    I don't see where you have this defined.
     
  6. Akari_Enderwolf

    Akari_Enderwolf Pangalactic Porcupine

    The frames file is the second code field in the op. The dimensions for each frame is 32 x 64 and the image is 2 frames wide. The game does see the frames file since the teleporter showed up differently when it had different dimensions in the frames file. This frames file has all the same info that other working ones have. I'll grab the object file when I get home around 11 pm EST.

    I'm not sure if I misunderstood you about it being defined. I freely admit that I am still inexperienced in Starbound's intracacies with coding.
     
  7. Akari_Enderwolf

    Akari_Enderwolf Pangalactic Porcupine

    Here is the contents of the teleporter's object file.

    Code:
    {
      "objectName" : "eathosteleporter",
      "colonyTags" : ["misc"],
      "objectType" : "teleporter",
      "rarity" : "Legendary",
      "description" : "A personal teleporter, connects to bookmarked locations. \n^red;Destroyed when broken.",
      "shortdescription" : "Eathos Teleporter",
      "price" : 3000,
      "printable" : false,
    
      "apexDescription" : "A personal teleporter. A functional but fun piece of equipment.",
      "avianDescription" : "I love the whoosh of my feathers when I teleport!",
      "floranDescription" : "Perssonal teleporter is fancy!",
      "glitchDescription" : "Enticed. A personal teleporter, with a custom design.",
      "humanDescription" : "A personal teleporter! Now this is travelling in style.",
      "hylotlDescription" : "A personal teleporter, it sports a custom design.",
      "novakidDescription" : "As teleporters go, this sure is fancy lookin'!",
      "dimentrexDescription" : "This teleporter kinda reminds me of home.",
    
      "category" : "teleporter",
      "lightColor" : [40, 80, 100],
      "lightPosition" : [0, 1],
    
      "interactAction" : "OpenTeleportDialog",
      "interactData" : "/interface/warping/remoteteleporter.config",
    
      "inventoryIcon" : "eathosteleportericon.png",
      "orientations" : [
        {
          "imageLayers" : [ { "image" : "eathosteleporter.png:<color>", "fullbright" : true }, { "image" : "eathosteleporterlit.png:<color>" } ],
    
          "imagePosition" : [-16, 0],
          "frames" : 2,
          "animationCycle" : 0.5,
    
          "spaceScan" : 0.1,
          "anchors" : [ "bottom" ],
          "collision" : "solid",
          "collisionSpaces" : [ [-2, 0], [-1, 0], [0, 0], [1, 0] ]
        }
      ],
    
      "health" : 10,
      "rooting" : true,
    
      "breakDropPool" : "remoteteleporter",
    
      "teleporterFootPosition" : [0, 1],
    
      "scripts" : [ "/scripts/npcToyObject.lua"],
      "npcToy" : {
        "influence" : [
          "teleporter",
          "teleporterComplete"
        ],
        "defaultReactions" : {
          "teleporter" : [
            [1.0, "beamaway"]
          ],
          "teleporterComplete" : [
            [1.0, "vomit"],
            [1.0, "smile"]
          ]
        },
        "preciseStandPositionLeft" : [0, 0.0],
        "preciseStandPositionRight" : [0, 0.0],
        "maxNpcs" : 1
      }
    }
    
     
    IHart likes this.
  8. IHart

    IHart Scruffy Nerf-Herder

    try: replace <color> with <color>.<frame> in your object file.
     
  9. cpeosphoros

    cpeosphoros Orbital Explorer

    I think @IHart is right about the other issue, but, though you have solved it, if you plan to modding in a large scale, using a professional code editor (i like sublime, there are many others out there) with at least a syntax highlighter and a linter (software to check syntax and suggest corrections while you type) for json and lua will save you a lot of time and frustration.

    They will problably not recognize the .object .frames .thekitchensink extensions from Starbound, but in most editors you can customize that. Same thing for comment markers, which are not allowed in pure json implementations, since json was not supposed to be human readable in the first place, but most highlighters and linters can be configured for that.
     
  10. Akari_Enderwolf

    Akari_Enderwolf Pangalactic Porcupine

    That fixed it.

    I use Notepad++ for code currently, it didn't pick up the [] issue though.
     
    IHart likes this.
  11. cpeosphoros

    cpeosphoros Orbital Explorer

    Notepad++ is a good editor for general use, but is not the better out there for coding.
     

Share This Page