While trying to create a bellpepper crop that has different harvests for differing stages.. I ran across this error testing the mod. Everything seems in order, i tested it in a fresh giraffe_storage and the error still occurs. Start logging at: 2015-06-10 04:06:09.561 [04:06:09.564] Info: Star::Root using bootstrap file 'C:\Program Files (x86)\Steam\steamapps\common\Starbound\win32\sbboot.config' [04:06:09.564] Info: Star::Root using storage directory 'C:\Program Files (x86)\Steam\steamapps\common\Starbound\giraffe_storage\' [04:06:09.564] Info: Preparing Star::Root... [04:06:09.567] Info: Detected mod 'morefood' at '../giraffe_storage/mods\MFM 2\.' [04:06:09.567] Info: Loading Configuration with config file: 'starbound.config' [04:06:09.568] Info: Loading Star::Configuration from 'Just (.\..\giraffe_storage\starbound.config)' [04:06:09.579] Info: Writing Star::Configuration to '.\..\giraffe_storage\starbound.config' [04:06:09.642] Info: Initializing Star::Root with 3 assets sources [04:06:09.656] Info: Done preparing Star::Root. [04:06:09.656] Info: Client Version 'Beta v. Spirited Giraffe - Update 5' Revision: b121429b907d2919c3f1d5e25303c5bb571ed61a Protocol: 679 [04:06:09.657] Info: Initialized SDL [04:06:09.685] Info: Initialized SDL Video [04:06:09.788] Info: Initialized SDL Joystick [04:06:09.792] Info: Initialized SDL Sound [04:06:09.850] Info: Opened default audio device with 44khz / 16 bit stereo audio, 2048 sample size buffer [04:06:09.851] Info: Loading Assets [04:06:09.851] Info: Loading Star::Assets from: '../assets/packed.pak' [04:06:09.853] Info: Loading Star::Assets from: '../assets/user' [04:06:09.853] Info: Loading Star::Assets from: '../giraffe_storage/mods\MFM 2\.' [04:06:10.872] Info: Done loading Assets [04:06:10.883] Info: Fully loading Star::Root... [04:06:10.890] Info: Initializing SDL Window [04:06:10.907] Info: Loading NameGenerator [04:06:10.912] Info: Loading ObjectDatabase [04:06:10.932] Info: Loading PlantDatabase [04:06:10.960] Info: Loading ProjectileDatabase [04:06:10.965] Info: Loading MonsterDatabase [04:06:10.996] Info: Loading NpcDatabase [04:06:10.999] Info: Loading PlayerFactory [04:06:11.021] Info: Done loading PlayerFactory [04:06:11.022] Info: Loading EntityFactory [04:06:11.022] Info: Loading ItemDatabase [04:06:11.126] Info: Done loading NameGenerator [04:06:11.127] Info: Loading MaterialDatabase [04:06:11.127] Info: Loading ParticleDatabase [04:06:11.417] Info: Done loading ParticleDatabase [04:06:12.212] Info: Done loading PlantDatabase [04:06:12.212] Info: Loading TerrainDatabase [04:06:12.329] Info: Done loading TerrainDatabase [04:06:12.329] Info: Loading BiomeDatabase [04:06:12.755] Info: Done loading MaterialDatabase [04:06:12.755] Info: Loading LiquidsDatabase [04:06:12.760] Info: Done loading LiquidsDatabase [04:06:12.761] Info: Loading StatusEffectDatabase [04:06:12.793] Info: Done loading BiomeDatabase [04:06:12.793] Info: Loading DamageDatabase [04:06:12.832] Info: Done loading StatusEffectDatabase [04:06:12.833] Info: Loading EffectSourceDatabase [04:06:12.999] Info: Done loading EffectSourceDatabase [04:06:12.999] Info: Loading FunctionDatabase [04:06:13.025] Info: Done loading FunctionDatabase [04:06:13.025] Info: Loading TreasureDatabase [04:06:13.450] Info: Done loading TreasureDatabase [04:06:13.454] Info: Loading DungeonDefinitions [04:06:14.649] Error: Exception caught loading asset: /objects/farmables/bellpeppermfm/bellpeppermfmseed.object, (AssetException) Could not read variant asset /objects/farmables/bellpeppermfm/bellpeppermfmseed.object StarException::StarException(string, exception) AssetException::AssetException(string, exception) _Function_handler<shared_ptr<Assets::AssetData> (), Assets::loadJson(String)::{lambda()#1}>:_Any_data) Assets:rocessAssetData(function<shared_ptr<Assets::AssetData> ()>) Assets::loadJson(String) Assets::loadAsset(Assets::AssetId) Assets::doLoad(Assets::AssetId) Assets::getAsset(Assets::AssetId) Assets::json(String) ObjectDatabase::ObjectDatabase() Root:bjectDatabase() _Function_handler<void (), SwallowReturn<_Bind<_Mem_fn<shared_ptr<ObjectDatabase> (Root::*)()> (Root*)> > >:_Any_data) _Function_handler<void (), WorkerPool::addWork(function<void ()>)::{lambda()#1}>:_Any_data) WorkerPool::WorkerThread::run() ThreadImpl::runThread(void*) BaseThreadInitThunk RtlInitializeExceptionChain RtlInitializeExceptionChain Caused by: (JsonParsingException) Cannot parse json file: /objects/farmables/bellpeppermfm/bellpeppermfmseed.object StarException::StarException(string, exception) Assets::readJson(String) _Function_handler<shared_ptr<Assets::AssetData> (), Assets::loadJson(String)::{lambda()#1}>:_Any_data) Assets:rocessAssetData(function<shared_ptr<Assets::AssetData> ()>) Assets::loadJson(String) Assets::loadAsset(Assets::AssetId) Assets::doLoad(Assets::AssetId) Assets::getAsset(Assets::AssetId) Assets::json(String) ObjectDatabase::ObjectDatabase() Root:bjectDatabase() _Function_handler<void (), SwallowReturn<_Bind<_Mem_fn<shared_ptr<ObjectDatabase> (Root::*)()> (Root*)> > >:_Any_data) _Function_handler<void (), WorkerPool::addWork(function<void ()>)::{lambda()#1}>:_Any_data) WorkerPool::WorkerThread::run() ThreadImpl::runThread(void*) BaseThreadInitThunk RtlInitializeExceptionChain RtlInitializeExceptionChain Caused by: (JsonParsingException) Error parsing json: bad object, should be '}' or ',' at 45:7 JsonParsingException::JsonParsingException(string) Json inputUtf8Json<char*>(char*, char*, bool) Assets::readJson(String) _Function_handler<shared_ptr<Assets::AssetData> (), Assets::loadJson(String)::{lambda()#1}>:_Any_data) Assets:rocessAssetData(function<shared_ptr<Assets::AssetData> ()>) Assets::loadJson(String) Assets::loadAsset(Assets::AssetId) Assets::doLoad(Assets::AssetId) Assets::getAsset(Assets::AssetId) Assets::json(String) ObjectDatabase::ObjectDatabase() Root:bjectDatabase() _Function_handler<void (), SwallowReturn<_Bind<_Mem_fn<shared_ptr<ObjectDatabase> (Root::*)()> (Root*)> > >:_Any_data) _Function_handler<void (), WorkerPool::addWork(function<void ()>)::{lambda()#1}>:_Any_data) WorkerPool::WorkerThread::run() ThreadImpl::runThread(void*) BaseThreadInitThunk RtlInitializeExceptionChain RtlInitializeExceptionChain [04:06:14.650] Info: Created initial window 1000x600 [04:06:15.353] Error: Error loading object file /objects/farmables/bellpeppermfm/bellpeppermfmseed.object: (AssetException) Error loading asset /objects/farmables/bellpeppermfm/bellpeppermfmseed.object AssetException::AssetException(string) Assets::getAsset(Assets::AssetId) Assets::json(String) ObjectDatabase::ObjectDatabase() Root:bjectDatabase() _Function_handler<void (), SwallowReturn<_Bind<_Mem_fn<shared_ptr<ObjectDatabase> (Root::*)()> (Root*)> > >:_Any_data) _Function_handler<void (), WorkerPool::addWork(function<void ()>)::{lambda()#1}>:_Any_data) WorkerPool::WorkerThread::run() ThreadImpl::runThread(void*) BaseThreadInitThunk RtlInitializeExceptionChain RtlInitializeExceptionChain [04:06:15.354] Info: Renderer initialized [04:06:15.358] Info: Renderer destroyed [04:06:15.359] Info: Initializing SDL Window [04:06:16.779] Info: Done loading NpcDatabase [04:06:16.779] Info: Loading EmoteProcessor [04:06:16.780] Info: Done loading EmoteProcessor [04:06:16.781] Info: Loading SpeciesDatabase [04:06:16.824] Info: Done loading SpeciesDatabase [04:06:16.825] Info: Loading ImageMetadataDatabase [04:06:16.825] Info: Done loading ImageMetadataDatabase [04:06:16.825] Info: Loading VersioningDatabase [04:06:16.827] Info: Done loading VersioningDatabase [04:06:16.828] Info: Loading QuestTemplateDatabase [04:06:16.910] Info: Done loading DamageDatabase [04:06:16.910] Info: Loading AiDatabase [04:06:16.972] Info: Done loading AiDatabase [04:06:16.972] Info: Loading TechDatabase [04:06:17.031] Info: Done loading QuestTemplateDatabase [04:06:17.032] Info: Loading CodexDatabase [04:06:17.290] Info: Done loading TechDatabase [04:06:17.405] Info: Done loading ProjectileDatabase [04:06:17.618] Info: Done loading CodexDatabase [04:06:18.667] Info: Done loading ObjectDatabase [04:06:18.742] Info: Done loading MonsterDatabase [04:06:18.742] Info: Done loading EntityFactory [04:06:19.349] Info: Re-created window 1600x837 [04:06:19.393] Info: Renderer initialized [04:06:23.744] Info: Writing Star::Configuration to '.\..\giraffe_storage\starbound.config' [04:06:50.297] Error: Could not instantiate item '[bellpepperMFMseed, 1, {}]'. (ItemException) No such item 'bellpepperMFMseed' [04:07:00.582] Error: Could not instantiate item '[bellpepperMFMseed, 1, {}]'. (ItemException) No such item 'bellpepperMFMseed' [04:07:05.425] Info: Done loading DungeonDefinitions [04:07:05.999] Error: Exception raised during Root finishLoad: (ItemException) Could not create blueprint item from recipe StarException::StarException(string, exception) StarException::StarException(char*, exception) ItemDatabase::addBlueprints() ItemDatabase::ItemDatabase() Root::itemDatabase() _Function_handler<void (), SwallowReturn<_Bind<_Mem_fn<shared_ptr<ItemDatabase> (Root::*)()> (Root*)> > >:_Any_data) _Function_handler<void (), WorkerPool::addWork(function<void ()>)::{lambda()#1}>:_Any_data) WorkerPool::WorkerThread::run() ThreadImpl::runThread(void*) BaseThreadInitThunk RtlInitializeExceptionChain RtlInitializeExceptionChain Caused by: (ItemException) No such item 'bellpepperMFMseed' ItemException::ItemException(string) ItemDatabase::itemData(String) ItemDatabase::addBlueprints() ItemDatabase::ItemDatabase() Root::itemDatabase() _Function_handler<void (), SwallowReturn<_Bind<_Mem_fn<shared_ptr<ItemDatabase> (Root::*)()> (Root*)> > >:_Any_data) _Function_handler<void (), WorkerPool::addWork(function<void ()>)::{lambda()#1}>:_Any_data) WorkerPool::WorkerThread::run() ThreadImpl::runThread(void*) BaseThreadInitThunk RtlInitializeExceptionChain RtlInitializeExceptionChain [04:07:06.006] Info: Renderer destroyed [04:07:06.096] Info: Shutting down Star::Root [04:07:07.100] Error: Fatal Exception Caught: (StarException) An error occurred during loading: (ItemException) Could not create blueprint item from recipe Caused by: (ItemException) No such item 'bellpepperMFMseed' ClientApplication:ostSplashInitialization() ClientApplication::update() StarApplicationBase::run() _SDL_main _console_main
Looks like the bellpeppermfmseed.object file has some JSON syntax issues. One of the errors gives some hints at where to look with the line: Caused by: (JsonParsingException) Error parsing json: bad object, should be '}' or ',' at 45:7
I noticed that too. Maybe the crops can't have multiple harvests? here is the obj- { "objectName" : "bellpepperMFMseed", "rarity" : "Common", "category" : "farmable", "description" : "Bell pepper.", "shortdescription" : "Bell Pepper Seed", "objectType" : "farmable", "printable" : false, "apexDescription" : "Seeds for bell peppers!", "avianDescription" : "Seeds for bell peppers!", "floranDescription" : "Ssseeds for bell peppersss!", "glitchDescription" : "Identify. Bell pepper seeds.", "humanDescription" : "Oh sweet! Bell pepper seeds!", "hylotlDescription" : "Seeds for bell peppers.", "inventoryIcon" : "bellpepperMFMseedicon.png", "orientations" : [ { "dualImage" : "bellpepperMFMseed.png:<color>.<stage>.<alt>", "imagePosition" : [0, 0], "frames" : 1, "animationCycle" : 0.5, "spaces" : [ [1, 0], [0, 0], [1, 1], [0, 1], [1, 2], [0, 2], [1, 3], [0, 3] ], "requireTilledAnchors" : true, "anchors" : [ "bottom" ] } ], "stages" : [ { "duration" : [100, 105] }, { "duration" : [100, 105] }, { "duration" : [100, 105] }, { "alts" : 2, "duration" : [400, 440] "harvestPool" : "greenbellpepperMFMHarvest", "resetToStage" : 2 }, { "duration" : [400, 440] "harvestPool" : "yellowbellpepperMFMHarvest", "resetToStage" : 2 }, { "duration" : [400, 440] "harvestPool" : "orangebellpepperMFMHarvest", "resetToStage" : 2 }, { "alts" : 5, "harvestPool" : "redbellpepperMFMHarvest", "resetToStage" : 2 } ] }
I haven't played with seeds and harvestable yet, but if the vanilla game assets are any indicator it might not be possible to do with just the object files if it is possible at all.
It's not something that complicated, it's simply you missing some Json-base things. Code: "alts" : 2, "duration" : [400, 440] "harvestPool" : "greenbellpepperMFMHarvest", "resetToStage" : 2 }, { "duration" : [400, 440] "harvestPool" : "yellowbellpepperMFMHarvest", "resetToStage" : 2 }, { "duration" : [400, 440] "harvestPool" : "orangebellpepperMFMHarvest", "resetToStage" : 2 }, { "alts" : 5, "harvestPool" : "redbellpepperMFMHarvest", "resetToStage" : 2 } That's your code. Code: "alts" : 2, "duration" : [400, 440], "harvestPool" : "greenbellpepperMFMHarvest", "resetToStage" : 2 }, { "duration" : [400, 440], "harvestPool" : "yellowbellpepperMFMHarvest", "resetToStage" : 2 }, { "duration" : [400, 440], "harvestPool" : "orangebellpepperMFMHarvest", "resetToStage" : 2 }, { "alts" : 5, "harvestPool" : "redbellpepperMFMHarvest", "resetToStage" : 2 } That's what it should look like. Always keep in mind, commas matter. Also double-check your Json syntax via JSONLint if you're stuck with a syntax error.
Ah! I see now! ≧﹏≦ Thank you so much kayuko! ^ヮ^[DOUBLEPOST=1433944900][/DOUBLEPOST] Kayuko? It works now.. but instead of moving along the stage from green, to yellow, orange, then red.. It goes from green to red and gives a green pepper when harvested. Any ideas? @﹏@
I never worked with farmables and have no access to the game assets at the moment, so the only thing I could think of is either: Your harvest pool is screwed up. It tries to vary instead of advancing, try to remove the alts section for that. The frames and animations are faulty (do farmables even have those things?) I'll take a closer look at it when starbound finished downloading.
Okay, got an update. Code: { "frameGrid" : { "size" : [8, 16], "dimensions" : [8, 2], "names" : [ [ "default.0.0", "default.1.0", "default.2.0", "default.2.1", "default.2.2", "default.2.3", "default.2.4", null ], [ null, null, "default.3.0", "default.3.1", "default.3.2", "default.3.3", "default.3.4", null ] ] }, "aliases" : { "default.default.default" : "default.0.0" } } Seems quite messy, but after looking at the spritesheet, it works ike this: "stages" : [ { "duration" : [100, 105] // "default.0.0" = Stage 0, variation 0 (freshly planted) }, { "duration" : [100, 105] // "default.1.0" = Stage 1, variation 0 (just growing) }, { "alts" : 5, "duration" : [400, 440] // "default.2.0" - "default.2.4" = Stage 2, variation 1-5 ("alts") }, { "alts" : 5, "harvestPool" : "beakseedHarvest", // "default.3.0" - "default.3.4" = Stage 3, variation 1-5 ("alts" -- Ready to harvest) "resetToStage" : 2 } ] It's probably easier to see the red part ("default.0.0") as an array index used in "stages". But if your files match this system you should be fine.
Send me the farmable (including .frames and spritesheet) and I'll change it so it works, so you have a reference. Not sure how I could explain it more understandable, sorry. >_<
Sure here you go - http://www.mediafire.com/download/9sztf1vycjvxvf4/Bellpeppers.zip Its okay! Its my fault for not getting it.. > . <
https://www.dropbox.com/s/3j1hlw5w1a5bwn4/bellpepperMFM.rar?dl=0 Take thiz. (Only changed the .frames file)