Ok, i'm trying to create a mod, but i can't figure out how to add an item to a preexisting loot pool. In this particular case i'm trying to add new unique weapons to be found like other uniques in the universe. Honestly, i'm really new to modding and don't have a clue how to do most things. From what i understand i need to make a .patch file to the part of the common.treasurepools file that focuses on unique weapons, but i really don't have a clue how to do that.
http://community.playstarbound.com/threads/basic-patching-now-with-path-guide-v1-9.84496/ I consulted this often as i was getting started. Just do your worst, share your result, and we will do our best to render support
ok, so here's what i came up with, as of yet its not working. [ { "op" : "add", "path : "/uniqueWeapon/2/pool/-", "value" : {"weight" : 1.0, "item" : "pnwavianbroadsword"} } ] im trying to put the item: "pnwavianbroadsword" in the level 6 uniques section of the loot pool.
Kinda like this. Code: [ { "op": "add", "path": "/uniqueWeapon/2/1/pool/-", "value": { "weight": 1, "item": "pnwavianbroadsword" } } ] In case you don't understand why that works and your patch doesn't Suppose I took this Code: "uniqueWeapon" : [ [0, { "pool" : [ // level 2 uniques {"weight" : 1.0, "item" : "boomerang"}, {"weight" : 1.0, "item" : "chakram"}, {"weight" : 1.0, "item" : "ropewhip"}, {"weight" : 1.5, "item" : "gauntlet"}, {"weight" : 1.0, "item" : "flamethrower"}, {"weight" : 1.0, "item" : "poisonbow"}, {"weight" : 1.0, "item" : "pollenpump"} ] }], [2.9, { "pool" : [ // include a chance for these since they're needed for later upgrades {"weight" : 0.5, "item" : "boomerang"}, {"weight" : 0.5, "item" : "chakram"}, {"weight" : 0.75, "item" : "gauntlet"}, // level 4 uniques {"weight" : 1.0, "item" : "vinewhip"}, {"weight" : 1.0, "item" : "wormgun"}, {"weight" : 1.0, "item" : "wormerang"}, {"weight" : 1.0, "item" : "gristlegun"}, {"weight" : 1.0, "item" : "soulseeker"}, {"weight" : 1.0, "item" : "electricrailgun"}, {"weight" : 1.0, "item" : "timepierce"}, {"weight" : 1.0, "item" : "eyesword"}, {"weight" : 1.0, "item" : "intestinewhip"}, {"weight" : 0.2, "item" : "gnomegun"} ] }], [4.9, { "pool" : [ // level 6 uniques {"weight" : 1.0, "item" : "supernovaglove"}, {"weight" : 1.0, "item" : "astrosabredeluxe"}, {"weight" : 1.0, "item" : "energywhip"}, {"weight" : 1.0, "item" : "teslastaff"}, {"weight" : 1.0, "item" : "magnorbs"}, {"weight" : 1.0, "item" : "tentaclegun"}, {"weight" : 1.0, "item" : "exmachina"}, {"weight" : 1.0, "item" : "energypickaxe"}, {"weight" : 1.0, "item" : "evileye"}, {"weight" : 1.0, "item" : "remotegrenadelauncher"}, {"weight" : 1.0, "item" : "doomcannon"} ] }] ], and made it 17.9% less insane line this Code: "uniqueWeapon" : [ [ 0, { "pool" : [ {"weight" : 1.0, "item" : "boomerang"}, {"weight" : 1.0, "item" : "chakram"}, {"weight" : 1.0, "item" : "ropewhip"}, {"weight" : 1.5, "item" : "gauntlet"}, {"weight" : 1.0, "item" : "flamethrower"}, {"weight" : 1.0, "item" : "poisonbow"}, {"weight" : 1.0, "item" : "pollenpump"} ] } ], [ 2.9, { "pool" : [ {"weight" : 0.5, "item" : "boomerang"}, {"weight" : 0.5, "item" : "chakram"}, {"weight" : 0.75, "item" : "gauntlet"}, {"weight" : 1.0, "item" : "vinewhip"}, {"weight" : 1.0, "item" : "wormgun"}, {"weight" : 1.0, "item" : "wormerang"}, {"weight" : 1.0, "item" : "gristlegun"}, {"weight" : 1.0, "item" : "soulseeker"}, {"weight" : 1.0, "item" : "electricrailgun"}, {"weight" : 1.0, "item" : "timepierce"}, {"weight" : 1.0, "item" : "eyesword"}, {"weight" : 1.0, "item" : "intestinewhip"}, {"weight" : 0.2, "item" : "gnomegun"} ] } ], [ 4.9, { "pool" : [ {"weight" : 1.0, "item" : "supernovaglove"}, {"weight" : 1.0, "item" : "astrosabredeluxe"}, {"weight" : 1.0, "item" : "energywhip"}, {"weight" : 1.0, "item" : "teslastaff"}, {"weight" : 1.0, "item" : "magnorbs"}, {"weight" : 1.0, "item" : "tentaclegun"}, {"weight" : 1.0, "item" : "exmachina"}, {"weight" : 1.0, "item" : "energypickaxe"}, {"weight" : 1.0, "item" : "evileye"}, {"weight" : 1.0, "item" : "remotegrenadelauncher"}, {"weight" : 1.0, "item" : "doomcannon"} ] } ] ] Does it become easier to read the pathing?
The game always crashes on startup. the filename of the item's file is pnwavianbroadsword.activeitem.activeitem. its in PlayableNPCWeapons\items\active\weapons\melee\broadsword the patch file is in PlayableNPCWeapons/treasure. and is named common.treasurepools.patch i also uploaded the .log file if that will help. starbound.log
wait a sec, IT ACTUALLY WORKS, i just tried copy-pasting your patch and it worked! for some reason it didn't when i manually retyped it, don't know what was different but THANK YOU! i hopefully can get the rest of the mod working now
The difference highlights the importance of precision in pathing and patching and coding in general. Where your code read Code: "/uniqueWeapon/2/pool/-" it should have been Code: "/uniqueWeapon/2/1/pool/-" bk3k caught this where i did not, good thing we have lots of eyes. Review the pathing guide portion of The Suits modding guide, and utilize tools like http://chbrown.github.io/rfc6902/ to ensure you get your desired output.