for now the simplest way to give custom recipes is by crafting an item that gives recipes on ,"learnBlueprintsOnPickup":[], Code: { "objectName" : "blockmaker", "rarity" : "Common", "objectType" : "interactable", "learnBlueprintsOnPickup" : [ "accordion","acousticguitar","banjo","bassguitar","bones","clarinet","drumkit","dulcimer","electricbass","femmicrophone","flute", "harmonica","harp","koto","leadguitar","microphone","musicbox","nylonguitar","oboe","ocarina","overdriveguitar","piano","reedorgan","rockorgan","saxophone","steeldrum","trumpet","violin", "bubbleboost-chip","butterflyboost-chip","cameramanboost-chip","dashTech-chip","doublejumpTech-chip","hoverTech-chip","humanMechTech-chip","jetpackTech-chip","morphballTech-chip","rocketjump-chip","targetblinktech-chip" ], ... } with that item and its recipe being in the mods folder. The item that gives the recipes can be a product of smelting or a custom quest reward. The same item can be used to build compatible recipes if is triggers a workbench dialog. this only modifies files in the /mods folder. the ber-me mod demonstrates this nicely.
i'ml not familiar with json notation . But here, I wanted to name dependencies properties explicitly to allow easy notation evolution. With your notation, adding a property to not import biodomes update files will make the array not very intuitive like : Code: { "name" : "sparkz", "content_version" : 2, "game_version" : "Beta v. Indignant Koala", "path" : ".", "dependencies" : [ ["tabularasa",0,false], ["libveryuseful", 3] ], "metadata": { "author" : "foo" "description" : "bar", "support_url" : "baz" } and i dont speak about multiplying properties it become very obscure due to the necessity to add explicitly every properties before the one you want. Code: { "name" : "sparkz", "content_version" : 2, "game_version" : "Beta v. Indignant Koala", "path" : ".", "dependencies" : [ ["tabularasa",0,0,true,true,true,true,false], ["libveryuseful", 3,1,true,false] ], "metadata": { "author" : "foo" "description" : "bar", "support_url" : "baz" } Naming them make things to get sens : Code: { "name" : "sparkz", "content_version" : 2, "game_version" : "Beta v. Indignant Koala", "path" : ".", "dependencies" : [ {"name" : "tabularasa", "update_biodomes" : false}, {"name" : "libveryuseful", "version" : 3, "load_order" : 1, "exact_mod_version" = false} ], "metadata": { "author" : "foo" "description" : "bar", "support_url" : "baz" } (sorry for my bad English skills )
Introducing such complexity into the dependencies system is a horrible idea. It needs to be simple and clean, version is the only thing that should be considered. If you need specific portions of another mod, you should either cut that portion out into a new mod or ask the author to provide such.
No need! This new system merges player.configs together If you have /mods/Yourmodname/player.config Just add recipes in to this: http://www.mediafire.com/view/xsuvez2fuzs6az9/player.config
Thank you for making modding as easy as it is in (for example) Cortex Command. What about the server and more seamless mod integration though?
if you don't edit player.config except for add a recipe to the top, it stlll works. I removed the others because it's not needed and I wanted to test without it as well. I tried running 2 mods and it worked fine.
that's why dependencies aren't always simple :>. As dev i know pretty well it can be very complicated, even for simple / minor change.
They always were... The new version doesn't combine files like some other users have said... It simply is an easier to use modloader.
Oh. I thought there was only one player.config that you had to manually edit every time you added in custom crafting recipes. Sorry. So, in the end, is adding mods now modloader-enabled by default, so you only need to drag-and-drop?
Oh yeah, made my mod work. This system is very neat. Now more people will install them because of no editing .config files or overwriting game files.
some file are quite difficult to handle for the moment (as player.config). adding a recipe with Code: { "defaultBlueprints" : { "tier1" : [ { "item" : "steelaxe" } ] } } lead to crash, you have to copy the whole player.config and then add your recipes... or i make something wrong your can create a single mod called "playerMod", containing juste "playerMod.modinfo" and "player.config" to handle multiple mods for the moment.
you have to keep everything thing, the only things that you can remove are the defaults recipes, so atleast you remove like 40 lines.