Modding Help Need help with quest items and directional arrows.

Discussion in 'Starbound Modding' started by Deathalizer3000, Feb 8, 2017.

  1. Deathalizer3000

    Deathalizer3000 Void-Bound Voyager

    Hello! I am trying to make a quest where you would have an an important quest item. I am trying to make it so when you die, the item drops and has the yellow marker above it. I am also trying to make it so when you have the quest still activated, you can use the directional arrow by the quest to lead you to the dropped item, but I just can't seem to get any of it to work. The item is working and craft-able.

    Here is the quest template code.
    Code:
    {
      "id" : "deathradar",
      "prerequisites" : [],
      "title" : "^orange;Your items!",
      "text" : "I have developed a steel ^green;location-device^reset; to track my items^reset;.",
      "completionText" : "You brought me the parts! Wonderful! With these the ^orange;Dash Tech^white; should be ready for action, but there's only one way to be sure...",
      "moneyRange" : [100, 100],
      "rewards" : [ ],
    
      "updateDelta" : 10,
      "script" : "/quests/scripts/main.lua",
      "scriptConfig" : {
        "portraits" : {
          "questStarted" : "questGiver"
        },
    
        "requireTurnIn" : true,
    
        "turnInDescription" : "Follow ^orange;the arrow^reset; to find your ^orange;items!^reset;",
        "conditions" : [
          {
            "type" : "gatherItem",
            "itemName" : "deathradar",
            "count" : 1,
            "consume" : true
          }
        ]
      }
    }
    
     
  2. bk3k

    bk3k Oxygen Tank

    Well one problem would be "/quests/scripts/main.lua"

    That has no functions that handle indicators. Something like "/quests/scripts/generated/common.lua" does
    in particular it uses quest.setIndicators()
    That looks in your quest config for something like
    "indicators" : ["object"]
    other some scripts include "/quests/scripts/generated/common.lua" and thus have that function too.


    This is from the quest documentation
    I'm also seeing in questtemplate files
    "indicateGoal" : false,
    "trackGoalEntity" : false,
    That I assume you could make those values true. Now I'm not an expert on the quests, just poking around. But it seems the biggest issue you have is the wrong script and missing JSON attributes for your questtemplate. You need to do some playing around with this.

    Possibly you might even craft your own script to do what you want if none of the existing ones meet your needs. Hopefully I've at least set you on the right path.
     
  3. Deathalizer3000

    Deathalizer3000 Void-Bound Voyager

    Ok thank you very much! I will try this later and see if I can get a result. Ill keep you posted!
     
  4. Deathalizer3000

    Deathalizer3000 Void-Bound Voyager

    Well interesting. I am quite new to modding and really don't know what I am doing :zzz: Now I am crashing and it is due to my questtemp file. Not quite sure what is wrong now?

    Code:
    {
      "id" : "deathradar",
      "title" : "^orange;Your items!",
      "text" : "I have developed a steel ^green;location-device^reset; to track my items^reset;.",
      "completionText" : "You brought me the parts! Wonderful! With these the ^orange;Dash Tech^white; should be ready for action, but there's only one way to be sure...",
      "moneyRange" : [100, 100],
      "updateDelta" : 10,
      "script" : "/quests/scripts/generated/common.lua",
      "scriptConfig" : {
        "indicators" : ["object"]
        "requireTurnIn" : true,
        "indicateGoal" : true,
        "trackGoalEntity" : true,
        "turnInDescription" : "Follow ^orange;the arrow^reset; to find your ^orange;items!^reset;",
        "conditions" : [
          {
            "type" : "gatherItem",
            "itemName" : "deathradar",
            "count" : 1,
            "consume" : true
          }
        ]
      }
    }
    
    Code:
    [18:44:45.461] [Info] Root: Preparing Root...
    [18:44:45.462] [Info] Root: Done preparing Root.
    [18:44:45.462] [Info] Client Version 1.2.2 (windows x86_64) Source ID: 8656b8d30f3e41248de5868d2168c96962fbf6b2 Protocol: 729
    [18:44:45.462] [Info] Root: Scanning for asset sources in directory '..\assets\'
    [18:44:45.680] [Info] Root: Scanning for asset sources in directory '..\mods\'
    [18:44:45.681] [Warn] Root: Unrecognized file in asset directory 'ModPackHelper_v0.11.bat', skipping
    [18:44:45.682] [Warn] Root: Unrecognized file in asset directory 'mods_go_here', skipping
    [18:44:45.682] [Info] Root: Detected asset source named 'base' at '..\assets\packed.pak'
    [18:44:45.682] [Info] Root: Detected asset source named 'Amethystumns Floran Hair Pack' at '..\mods\Amethystumns FloranHairPack'
    [18:44:45.682] [Info] Root: Detected asset source named 'deathradar' at '..\mods\death radar'
    [18:44:45.682] [Info] Root: Detected unnamed asset source at '..\assets\user'
    [18:44:45.682] [Info] Loading assets from: '..\assets\packed.pak'
    [18:44:45.981] [Info] Loading assets from: '..\mods\Amethystumns FloranHairPack'
    [18:44:45.982] [Info] Loading assets from: '..\mods\death radar'
    [18:44:45.983] [Info] Loading assets from: '..\assets\user'
    [18:44:46.712] [Info] Assets digest is 0b4da1e88e94d32d45654c4c1f2c0068fcef91ca195b29de7ebb6e732f6ba2f7
    [18:44:46.712] [Info] Root: Loaded Assets in 1.25059 seconds
    [18:44:46.716] [Info] Application: Initializing SDL Video
    [18:44:46.726] [Info] Application: Initializing SDL Joystick
    [18:44:46.804] [Info] Application: Initializing SDL Sound
    [18:44:46.907] [Info] Failed to initialize Steam platform services
    [18:44:46.907] [Info] Application: No platform services available
    [18:44:46.907] [Info] Application: Creating SDL Window
    [18:44:47.109] [Info] Application: Enabling VSync with late swap tearing
    [18:44:47.152] [Info] Application: Opened default audio device with 44.1khz / 16 bit stereo audio, 2048 sample size buffer
    [18:44:47.158] [Info] OpenGL version: '4.5.13464 Compatibility Profile Context 21.19.407.0' vendor: 'ATI Technologies Inc.' renderer: 'Radeon (TM) RX 480 Graphics' shader: '4.50'
    [18:44:47.158] [Info] Application: initialization...
    [18:44:47.159] [Info] Root: Loaded Configuration in 0.000909743 seconds
    [18:44:47.492] [Info] Application: renderer initialization...
    [18:44:47.495] [Info] detected supported OpenGL texture size 16384, using atlasNumCells 128
    [18:44:47.495] [Info] detected supported OpenGL texture size 16384, using atlasNumCells 64
    [18:44:47.497] [Info] Root: Loaded ImageMetadataDatabase in 1.27998e-05 seconds
    [18:44:47.519] [Info] Application: main update loop...
    [18:44:47.857] [Info] Root: Loaded NameGenerator in 0.0309844 seconds
    [18:44:47.868] [Error] OpenGL errors this frame:  GL_INVALID_VALUE
    [18:44:47.949] [Info] Root: Loaded PlantDatabase in 0.0916495 seconds
    [18:44:48.299] [Info] Root: Loaded ProjectileDatabase in 0.349942 seconds
    [18:44:48.413] [Info] Root: Loaded ObjectDatabase in 0.586956 seconds
    [18:44:48.465] [Info] Root: Loaded NpcDatabase in 0.052424 seconds
    [18:44:48.467] [Info] Root: Loaded StagehandDatabase in 0.00119614 seconds
    [18:44:48.469] [Info] Root: Loaded VehicleDatabase in 0.00264571 seconds
    [18:44:48.506] [Info] Root: Loaded MonsterDatabase in 0.207721 seconds
    [18:44:48.511] [Error] Could not apply patch from file /player.config.patch in source: ..\mods\death radar.  Caused by: (JsonPatchException) Could not apply patch to base. (JsonPatchException) Could not apply operation to base. (JsonException) No such key in Json::get("path")
    [18:44:48.525] [Info] Root: Loaded PlayerFactory in 0.0556425 seconds
    [18:44:48.528] [Info] Root: Loaded VersioningDatabase in 0.000907183 seconds
    [18:44:48.528] [Info] Root: Loaded EntityFactory in 0.0210844 seconds
    [18:44:48.579] [Info] Root: Loaded ParticleDatabase in 0.0511491 seconds
    [18:44:48.819] [Info] Root: Loaded MaterialDatabase in 0.291384 seconds
    [18:44:48.838] [Info] Root: Loaded TerrainDatabase in 0.00597429 seconds
    [18:44:48.880] [Info] Root: Loaded BiomeDatabase in 0.0428088 seconds
    [18:44:48.881] [Info] Root: Loaded LiquidsDatabase in 0.000788785 seconds
    [18:44:48.891] [Info] Root: Loaded StatusEffectDatabase in 0.00981422 seconds
    [18:44:49.211] [Info] Root: Loaded DamageDatabase in 0.319382 seconds
    [18:44:49.216] [Info] Root: Loaded EffectSourceDatabase in 0.00575605 seconds
    [18:44:49.220] [Info] Root: Loaded FunctionDatabase in 0.00309978 seconds
    [18:44:49.255] [Info] Root: Loaded TreasureDatabase in 0.0353302 seconds
    [18:44:49.446] [Info] Root: Loaded DungeonDefinitions in 0.191422 seconds
    [18:44:49.446] [Info] Root: Loaded TilesetDatabase in 3.00794e-05 seconds
    [18:44:49.449] [Info] Root: Loaded StatisticsDatabase in 0.00272411 seconds
    [18:44:49.449] [Info] Root: Loaded EmoteProcessor in 4.95991e-05 seconds
    [18:44:49.459] [Info] Root: Loaded SpeciesDatabase in 0.00946734 seconds
    [18:44:49.684] [Error] Exception caught loading asset: /quests/deathradar.questtemplate, (AssetException) Could not read JSON asset /quests/deathradar.questtemplate
    [0] 13f133763 Star::captureStack
    [1] 13f1324ee Star::StarException::StarException
    [2] 13f1325d8 Star::StarException::StarException
    [3] 13f142b60 Star::AssetException::AssetException
    [4] 13f9e6521 `<lambda_80e152f0e8987fd28e54fe8e75d4e933>::operator()'::`1'::catch$25
    [5] 7fefab0c220 _C_specific_handler
    [6] 7fefab029b2 _FrameUnwindFilter
    [7] 776fb4d1 RtlRestoreContext
    [8] 13f144efd <lambda_80e152f0e8987fd28e54fe8e75d4e933>::operator()
    [9] 13f13c97f std::_Invoker_functor::_Call<<lambda_80e152f0e8987fd28e54fe8e75d4e933> & __ptr64>
    [10] 13f140136 std::invoke<<lambda_80e152f0e8987fd28e54fe8e75d4e933> & __ptr64>
    [11] 13f13dd60 std::_Invoke_ret<std::shared_ptr<Star::Assets::AssetData>,<lambda_80e152f0e8987fd28e54fe8e75d4e933> & __ptr64>
    [12] 13f146426 std::_Func_impl<<lambda_80e152f0e8987fd28e54fe8e75d4e933>,std::allocator<int>,std::shared_ptr<Star::Assets::AssetData> >::_Do_call
    [13] 13f0d1eb7 std::_Func_class<Star::Json,Star::Json const & __ptr64,Star::String const & __ptr64>::operator()
    [14] 13f14f068 Star::Assets::processAssetData
    [15] 13f14d008 Star::Assets::loadJson
    [16] 13f14c273 Star::Assets::loadAsset
    [17] 13f149b1f Star::Assets::doLoad
    [18] 13f14b4eb Star::Assets::getAsset
    [19] 13f14bf8a Star::Assets::json
    [20] 13f49fd40 Star::QuestTemplateDatabase::QuestTemplateDatabase
    [21] 13f4aed35 std::make_shared<Star::QuestTemplateDatabase>
    [22] 13f4b3499 <lambda_6a21814ff59db299d6420af313620a10>::operator()
    [23] 13f4a4dbf std::_Invoker_functor::_Call<<lambda_6a21814ff59db299d6420af313620a10> & __ptr64>
    [24] 13f4a8f36 std::invoke<<lambda_6a21814ff59db299d6420af313620a10> & __ptr64>
    [25] 13f4a6b49 std::_Invoke_ret<std::shared_ptr<Star::QuestTemplateDatabase>,<lambda_6a21814ff59db299d6420af313620a10> & __ptr64>
    [26] 13f4b5aa6 std::_Func_impl<<lambda_6a21814ff59db299d6420af313620a10>,std::allocator<int>,std::shared_ptr<Star::QuestTemplateDatabase> >::_Do_call
    [27] 13f0d1eb7 std::_Func_class<Star::Json,Star::Json const & __ptr64,Star::String const & __ptr64>::operator()
    [28] 13f4ac173 Star::Root::loadMemberFunction<Star::QuestTemplateDatabase>
    [29] 13f4a9ab9 Star::Root::loadMember<Star::QuestTemplateDatabase>
    [30] 13f4bb982 Star::Root::questTemplateDatabase
    [31] 13f4a5270 std::_Invoker_pmf_pointer::_Call<std::shared_ptr<Star::CodexDatabase const > (__cdecl Star::Root::*)(void) __ptr64,Star::Root * __ptr64 & __ptr64>
    [32] 13f4a8d29 std::invoke<std::shared_ptr<Star::LiquidsDatabase const > (__cdecl Star::Root::*& __ptr64)(void) __ptr64,Star::Root * __ptr64 & __ptr64>
    [33] 13f4a663c std::_Invoke_ret<std::shared_ptr<Star::LiquidsDatabase const > (__cdecl Star::Root::*& __ptr64)(void) __ptr64,Star::Root * __ptr64 & __ptr64>
    [34] 13f4a52fe std::_Call_binder<std::_Unforced,0,std::shared_ptr<Star::VersioningDatabase const > (__cdecl Star::Root::*)(void) __ptr64,std::tuple<Star::Root * __ptr64>,std::tuple<> >
    [35] 13f4a49be std::_Binder<std::_Unforced,std::shared_ptr<Star::MaterialDatabase const > (__cdecl Star::Root::*)(void) __ptr64,Star::Root * __ptr64 const>::operator()<>
    [36] 13f4b5752 std::_Func_impl<Star::SwallowReturn<std::_Binder<std::_Unforced,std::shared_ptr<Star::VehicleDatabase const > (__cdecl Star::Root::*)(void) __ptr64,Star::Root * __ptr64 const> >,std::allocator<int>,void>::_Do_call
    [37] 13f12a1cb <lambda_7b083dc4bdd496712d99e51bb49515b5>::operator()
    [38] 13f12af72 Star::WorkerPool::WorkerThread::run
    [39] 13f13028e Star::ThreadImpl::runThread
    [40] 775a59cd BaseThreadInitThunk
    [41] 776da2e1 RtlUserThreadStart
    Caused by: (JsonParsingException) Cannot parse json file: /quests/deathradar.questtemplate
    [0] 13f133763 Star::captureStack
    [1] 13f1324ee Star::StarException::StarException
    [2] 13f1325d8 Star::StarException::StarException
    [3] 13f143940 Star::JsonParsingException::JsonParsingException
    [4] 13f9e7976 `Star::Assets::readJson'::`1'::catch$264
    [5] 7fefab0c220 _C_specific_handler
    [6] 7fefab029b2 _FrameUnwindFilter
    [7] 776fb4d1 RtlRestoreContext
    [8] 13f14f66a Star::Assets::readJson
    [9] 13f144efd <lambda_80e152f0e8987fd28e54fe8e75d4e933>::operator()
    [10] 13f13c97f std::_Invoker_functor::_Call<<lambda_80e152f0e8987fd28e54fe8e75d4e933> & __ptr64>
    [11] 13f140136 std::invoke<<lambda_80e152f0e8987fd28e54fe8e75d4e933> & __ptr64>
    [12] 13f13dd60 std::_Invoke_ret<std::shared_ptr<Star::Assets::AssetData>,<lambda_80e152f0e8987fd28e54fe8e75d4e933> & __ptr64>
    [13] 13f146426 std::_Func_impl<<lambda_80e152f0e8987fd28e54fe8e75d4e933>,std::allocator<int>,std::shared_ptr<Star::Assets::AssetData> >::_Do_call
    [14] 13f0d1eb7 std::_Func_class<Star::Json,Star::Json const & __ptr64,Star::String const & __ptr64>::operator()
    [15] 13f14f068 Star::Assets::processAssetData
    [16] 13f14d008 Star::Assets::loadJson
    [17] 13f14c273 Star::Assets::loadAsset
    [18] 13f149b1f Star::Assets::doLoad
    [19] 13f14b4eb Star::Assets::getAsset
    [20] 13f14bf8a Star::Assets::json
    [21] 13f49fd40 Star::QuestTemplateDatabase::QuestTemplateDatabase
    [22] 13f4aed35 std::make_shared<Star::QuestTemplateDatabase>
    [23] 13f4b3499 <lambda_6a21814ff59db299d6420af313620a10>::operator()
    [24] 13f4a4dbf std::_Invoker_functor::_Call<<lambda_6a21814ff59db299d6420af313620a10> & __ptr64>
    [25] 13f4a8f36 std::invoke<<lambda_6a21814ff59db299d6420af313620a10> & __ptr64>
    [26] 13f4a6b49 std::_Invoke_ret<std::shared_ptr<Star::QuestTemplateDatabase>,<lambda_6a21814ff59db299d6420af313620a10> & __ptr64>
    [27] 13f4b5aa6 std::_Func_impl<<lambda_6a21814ff59db299d6420af313620a10>,std::allocator<int>,std::shared_ptr<Star::QuestTemplateDatabase> >::_Do_call
    [28] 13f0d1eb7 std::_Func_class<Star::Json,Star::Json const & __ptr64,Star::String const & __ptr64>::operator()
    [29] 13f4ac173 Star::Root::loadMemberFunction<Star::QuestTemplateDatabase>
    [30] 13f4a9ab9 Star::Root::loadMember<Star::QuestTemplateDatabase>
    [31] 13f4bb982 Star::Root::questTemplateDatabase
    [32] 13f4a5270 std::_Invoker_pmf_pointer::_Call<std::shared_ptr<Star::CodexDatabase const > (__cdecl Star::Root::*)(void) __ptr64,Star::Root * __ptr64 & __ptr64>
    [33] 13f4a8d29 std::invoke<std::shared_ptr<Star::LiquidsDatabase const > (__cdecl Star::Root::*& __ptr64)(void) __ptr64,Star::Root * __ptr64 & __ptr64>
    [34] 13f4a663c std::_Invoke_ret<std::shared_ptr<Star::LiquidsDatabase const > (__cdecl Star::Root::*& __ptr64)(void) __ptr64,Star::Root * __ptr64 & __ptr64>
    [35] 13f4a52fe std::_Call_binder<std::_Unforced,0,std::shared_ptr<Star::VersioningDatabase const > (__cdecl Star::Root::*)(void) __ptr64,std::tuple<Star::Root * __ptr64>,std::tuple<> >
    [36] 13f4a49be std::_Binder<std::_Unforced,std::shared_ptr<Star::MaterialDatabase const > (__cdecl Star::Root::*)(void) __ptr64,Star::Root * __ptr64 const>::operator()<>
    [37] 13f4b5752 std::_Func_impl<Star::SwallowReturn<std::_Binder<std::_Unforced,std::shared_ptr<Star::VehicleDatabase const > (__cdecl Star::Root::*)(void) __ptr64,Star::Root * __ptr64 const> >,std::allocator<int>,void>::_Do_call
    [38] 13f12a1cb <lambda_7b083dc4bdd496712d99e51bb49515b5>::operator()
    [39] 13f12af72 Star::WorkerPool::WorkerThread::run
    [40] 13f13028e Star::ThreadImpl::runThread
    [41] 775a59cd BaseThreadInitThunk
    [42] 776da2e1 RtlUserThreadStart
    Caused by: (JsonParsingException) Error parsing json: bad object, should be '}' or ',' at 14:5
    [0] 13f133763 Star::captureStack
    [1] 13f1324ee Star::StarException::StarException
    [2] 13f13ff4c Star::inputUtf8Json<char * __ptr64>
    [3] 13f14f66a Star::Assets::readJson
    [4] 13f144efd <lambda_80e152f0e8987fd28e54fe8e75d4e933>::operator()
    [5] 13f13c97f std::_Invoker_functor::_Call<<lambda_80e152f0e8987fd28e54fe8e75d4e933> & __ptr64>
    [6] 13f140136 std::invoke<<lambda_80e152f0e8987fd28e54fe8e75d4e933> & __ptr64>
    [7] 13f13dd60 std::_Invoke_ret<std::shared_ptr<Star::Assets::AssetData>,<lambda_80e152f0e8987fd28e54fe8e75d4e933> & __ptr64>
    [8] 13f146426 std::_Func_impl<<lambda_80e152f0e8987fd28e54fe8e75d4e933>,std::allocator<int>,std::shared_ptr<Star::Assets::AssetData> >::_Do_call
    [9] 13f0d1eb7 std::_Func_class<Star::Json,Star::Json const & __ptr64,Star::String const & __ptr64>::operator()
    [10] 13f14f068 Star::Assets::processAssetData
    [11] 13f14d008 Star::Assets::loadJson
    [12] 13f14c273 Star::Assets::loadAsset
    [13] 13f149b1f Star::Assets::doLoad
    [14] 13f14b4eb Star::Assets::getAsset
    [15] 13f14bf8a Star::Assets::json
    [16] 13f49fd40 Star::QuestTemplateDatabase::QuestTemplateDatabase
    [17] 13f4aed35 std::make_shared<Star::QuestTemplateDatabase>
    [18] 13f4b3499 <lambda_6a21814ff59db299d6420af313620a10>::operator()
    [19] 13f4a4dbf std::_Invoker_functor::_Call<<lambda_6a21814ff59db299d6420af313620a10> & __ptr64>
    [20] 13f4a8f36 std::invoke<<lambda_6a21814ff59db299d6420af313620a10> & __ptr64>
    [21] 13f4a6b49 std::_Invoke_ret<std::shared_ptr<Star::QuestTemplateDatabase>,<lambda_6a21814ff59db299d6420af313620a10> & __ptr64>
    [22] 13f4b5aa6 std::_Func_impl<<lambda_6a21814ff59db299d6420af313620a10>,std::allocator<int>,std::shared_ptr<Star::QuestTemplateDatabase> >::_Do_call
    [23] 13f0d1eb7 std::_Func_class<Star::Json,Star::Json const & __ptr64,Star::String const & __ptr64>::operator()
    [24] 13f4ac173 Star::Root::loadMemberFunction<Star::QuestTemplateDatabase>
    [25] 13f4a9ab9 Star::Root::loadMember<Star::QuestTemplateDatabase>
    [26] 13f4bb982 Star::Root::questTemplateDatabase
    [27] 13f4a5270 std::_Invoker_pmf_pointer::_Call<std::shared_ptr<Star::CodexDatabase const > (__cdecl Star::Root::*)(void) __ptr64,Star::Root * __ptr64 & __ptr64>
    [28] 13f4a8d29 std::invoke<std::shared_ptr<Star::LiquidsDatabase const > (__cdecl Star::Root::*& __ptr64)(void) __ptr64,Star::Root * __ptr64 & __ptr64>
    [29] 13f4a663c std::_Invoke_ret<std::shared_ptr<Star::LiquidsDatabase const > (__cdecl Star::Root::*& __ptr64)(void) __ptr64,Star::Root * __ptr64 & __ptr64>
    [30] 13f4a52fe std::_Call_binder<std::_Unforced,0,std::shared_ptr<Star::VersioningDatabase const > (__cdecl Star::Root::*)(void) __ptr64,std::tuple<Star::Root * __ptr64>,std::tuple<> >
    [31] 13f4a49be std::_Binder<std::_Unforced,std::shared_ptr<Star::MaterialDatabase const > (__cdecl Star::Root::*)(void) __ptr64,Star::Root * __ptr64 const>::operator()<>
    [32] 13f4b5752 std::_Func_impl<Star::SwallowReturn<std::_Binder<std::_Unforced,std::shared_ptr<Star::VehicleDatabase const > (__cdecl Star::Root::*)(void) __ptr64,Star::Root * __ptr64 const> >,std::allocator<int>,void>::_Do_call
    [33] 13f12a1cb <lambda_7b083dc4bdd496712d99e51bb49515b5>::operator()
    [34] 13f12af72 Star::WorkerPool::WorkerThread::run
    [35] 13f13028e Star::ThreadImpl::runThread
    [36] 775a59cd BaseThreadInitThunk
    [37] 776da2e1 RtlUserThreadStart
    [18:44:49.694] [Info] Root: Loaded AiDatabase in 0.00138717 seconds
    [18:44:49.695] [Info] Root: Loaded TechDatabase in 0.00113406 seconds
    [18:44:49.703] [Info] Root: Loaded CodexDatabase in 0.00785073 seconds
    [18:44:50.017] [Info] Root: Loaded BehaviorDatabase in 0.314357 seconds
    [18:44:50.023] [Info] Root: Loaded DanceDatabase in 0.00253915 seconds
    [18:44:50.030] [Info] Root: Loaded SpawnTypeDatabase in 0.00701171 seconds
    [18:44:50.032] [Info] Root: Loaded RadioMessageDatabase in 0.00213852 seconds
    [18:44:50.261] [Error] Could not apply patch from file /player.config.patch in source: ..\mods\death radar.  Caused by: (JsonPatchException) Could not apply patch to base. (JsonPatchException) Could not apply operation to base. (JsonException) No such key in Json::get("path")
    [18:44:50.468] [Info] Root: Writing runtime configuration to '..\storage\starbound.config'
    [18:44:50.901] [Info] Root: Loaded ItemDatabase in 2.3758 seconds
    [18:44:51.048] [Info] Root: Loaded CollectionDatabase in 1.0158 seconds
    [18:44:51.059] [Error] Application: exception thrown, shutting down: (AssetException) Error loading asset /quests/deathradar.questtemplate
    [0] 13f133763 Star::captureStack
    [1] 13f1324ee Star::StarException::StarException
    [2] 13f13f54a Star::AssetException::format<Star::AssetPath>
    [3] 13f14b59b Star::Assets::getAsset
    [4] 13f14bf8a Star::Assets::json
    [5] 13f49fd40 Star::QuestTemplateDatabase::QuestTemplateDatabase
    [6] 13f4aed35 std::make_shared<Star::QuestTemplateDatabase>
    [7] 13f4b3499 <lambda_6a21814ff59db299d6420af313620a10>::operator()
    [8] 13f4a4dbf std::_Invoker_functor::_Call<<lambda_6a21814ff59db299d6420af313620a10> & __ptr64>
    [9] 13f4a8f36 std::invoke<<lambda_6a21814ff59db299d6420af313620a10> & __ptr64>
    [10] 13f4a6b49 std::_Invoke_ret<std::shared_ptr<Star::QuestTemplateDatabase>,<lambda_6a21814ff59db299d6420af313620a10> & __ptr64>
    [11] 13f4b5aa6 std::_Func_impl<<lambda_6a21814ff59db299d6420af313620a10>,std::allocator<int>,std::shared_ptr<Star::QuestTemplateDatabase> >::_Do_call
    [12] 13f0d1eb7 std::_Func_class<Star::Json,Star::Json const & __ptr64,Star::String const & __ptr64>::operator()
    [13] 13f4ac173 Star::Root::loadMemberFunction<Star::QuestTemplateDatabase>
    [14] 13f4a9ab9 Star::Root::loadMember<Star::QuestTemplateDatabase>
    [15] 13f4bb982 Star::Root::questTemplateDatabase
    [16] 13f4a5270 std::_Invoker_pmf_pointer::_Call<std::shared_ptr<Star::CodexDatabase const > (__cdecl Star::Root::*)(void) __ptr64,Star::Root * __ptr64 & __ptr64>
    [17] 13f4a8d29 std::invoke<std::shared_ptr<Star::LiquidsDatabase const > (__cdecl Star::Root::*& __ptr64)(void) __ptr64,Star::Root * __ptr64 & __ptr64>
    [18] 13f4a663c std::_Invoke_ret<std::shared_ptr<Star::LiquidsDatabase const > (__cdecl Star::Root::*& __ptr64)(void) __ptr64,Star::Root * __ptr64 & __ptr64>
    [19] 13f4a52fe std::_Call_binder<std::_Unforced,0,std::shared_ptr<Star::VersioningDatabase const > (__cdecl Star::Root::*)(void) __ptr64,std::tuple<Star::Root * __ptr64>,std::tuple<> >
    [20] 13f4a49be std::_Binder<std::_Unforced,std::shared_ptr<Star::MaterialDatabase const > (__cdecl Star::Root::*)(void) __ptr64,Star::Root * __ptr64 const>::operator()<>
    [21] 13f4b5752 std::_Func_impl<Star::SwallowReturn<std::_Binder<std::_Unforced,std::shared_ptr<Star::VehicleDatabase const > (__cdecl Star::Root::*)(void) __ptr64,Star::Root * __ptr64 const> >,std::allocator<int>,void>::_Do_call
    [22] 13f12a1cb <lambda_7b083dc4bdd496712d99e51bb49515b5>::operator()
    [23] 13f12af72 Star::WorkerPool::WorkerThread::run
    [24] 13f13028e Star::ThreadImpl::runThread
    [25] 775a59cd BaseThreadInitThunk
    [26] 776da2e1 RtlUserThreadStart
    [18:44:51.059] [Info] Application: shutdown...
    [18:44:51.202] [Info] Root: Shutting down Root
    [18:44:51.520] [Info] Application: Destroying SDL Window
    [18:44:52.079] [Info] Application: stopped gracefully
    
     
  5. Cyel

    Cyel Scruffy Nerf-Herder

    You forgot a comma after
    Code:
    "indicators" : ["object"]
    You can throw your .questtemplate's content (and all other json-based files) into this online tool to see where you made some errors: http://jsonlint.com/


    For your item to drop on death, I believe you'd have to make a patch for playermodes.config and add your item's type to the deathDropItemTypes arrays. I don't know if you can make a custom category (ItemType) for your items
     
    Last edited: Feb 9, 2017
    bk3k likes this.
  6. Deathalizer3000

    Deathalizer3000 Void-Bound Voyager

    Ah ok yes, thanks for the help and the tool. but... ? The old temp file worked fine, but now after I switched to this new script or whatever still no arrow and now no text... upload_2017-2-9_2-11-18.png
     
  7. bk3k

    bk3k Oxygen Tank

    Well that script is used on random generated quests. So you might need to slap together something. But you also might try some others before resorting to that.

    I'm noticing no vanilla quests directly use "/quests/scripts/generated/common.lua" but rather use different scripts which themselves use it. The generated quest scripts all have this line up top
    Code:
    require("/quests/scripts/generated/common.lua")
    I think it is something like a backbone for these other generated quest scripts.
     
  8. Deathalizer3000

    Deathalizer3000 Void-Bound Voyager

    How would someone approach making a custom script?
     
  9. Deathalizer3000

    Deathalizer3000 Void-Bound Voyager

    Found this in one of the scripts, anyway to piece this together to fit my needs? This is the only thing i am finding with compass in it so it might help. Don't know lua but i'm assuming replacing any thing doing with monster names with an itemname or such would be of use. I would also assume onMonsterSpawned would be replaced with something to do with an item being "spawned" or collected.
    Code:
    function onMonsterSpawned(_, _, group, monsterNames)
      assert(#monsterNames == 1)
      setIndicators(monsterNames)
      self.compass:setTarget("parameter", monsterNames)
    end
     
  10. Cyel

    Cyel Scruffy Nerf-Herder

    The snippet of code you'd need for a .lua script would rather be
    Code:
    local item = config.getParameter("itemToFetch")
    quest.setIndicators({"item"})
    And this would go with something like this in your .questtemplate
    Code:
    itemToFetch = {
      type = "item",
      item = "deathradar"
    }
    But that's only a part of what a .lua quest script is, and the main point of these scripts is to be generic, read the .questtemplate file and throw the right commands to the game.

    From what I understand, you only want the quest to point toward the dropped item, without wanting it to ever have a conclusion, like a "normal" quest?
    If I misunderstood, what would be the progression of your quest?

    Is your overall goal to be able to easily locate and get back to your items when you die? If yes, there's a mod that does something similar:
    http://steamcommunity.com/sharedfiles/filedetails/?id=732992186


    Edit: Eeps, I mingled compass and indicator; the indicator is the tiny arrow above your quest targets, while the compass's the little arrow on the tracker. The snippet you dig out's indeed related, but sadly, I don't think it's possible to have such a compass display for a dropped item, because the compass's angle is calculated with the entity's position, and entities are despawned when out of your screen.

    To be able to work, we'd need to set an uniqueId to the dropped item, or keep the area died in loaded, and this probably won't be possible because limits.

    But, supposing your intention is to get back to your death point, and at that point where you'd have built a whole .lua script to look for your item and point toward it, it'd probably be easy peasy to just store your location on death, and show those instead of trying to search for your item.
    But that's what the mod I posted above does
     
    Last edited: Feb 10, 2017

Share This Page