MineTweaker/ModTweaker - A help and suggestions thread.

jordsta95

New Member
Jul 29, 2019
5,056
-4
1
When you log in, does the message "Hello World!" print in the chat?

If not, then your issue isn't the recipes, it's either the script or minetweaker
 

Vagaprime

New Member
Jul 29, 2019
129
0
0
Ok with my pack I have been using minetweaker to fix recipe conflicts and integrate mods together. My newest set of recipe changes is to AE to require the BC assembly table to craft key parts, but when I add the new assembly table recipes they do not show up in NEI, but if I pur the required part into the assembly table it shows up allowing me to select it for the table to make. Any idea why this would be happeneing?

Assembly table scrpit
//Added Recipes
//mods.buildcraft.AssemblyTable.addRecipe(<appliedenergistics2:item.ItemMultiPart:16> *4, 10000, [<LogisticsPipes:item.PipeItemsBasicLogistics>, <ore:crystalFluix>]);

AE removed script

//Removed Recipes
//recipes.remove(<appliedenergistics2:item.ItemMultiPart:16> * 4);

I am running then in different script files, but I have even tried having them both in the same script file and NEI will still not show the new recipe.
 

jordsta95

New Member
Jul 29, 2019
5,056
-4
1
You need the remove recipe in the same script as, and above, the new recipe.
The 2 scripts need to be uncommented (remove the // at the start)

As for the new recipe not showing in NEI, try restarting the game (as it may be a loading priority thing) but if that doesn't work I'm not too sure what the alternatives would be
 

Vagaprime

New Member
Jul 29, 2019
129
0
0
I have them commented right now just so I don't get any errors. I have run them in the same script file with no change to the lack of Recipe showing up. I have also uncommented the scripts saved the file and launched the pack with same result.
 

goreae

Ultimate Murderous Fiend
Nov 27, 2012
1,784
2,649
273
Raxacoricofallapatorius
Ok with my pack I have been using minetweaker to fix recipe conflicts and integrate mods together. My newest set of recipe changes is to AE to require the BC assembly table to craft key parts, but when I add the new assembly table recipes they do not show up in NEI, but if I pur the required part into the assembly table it shows up allowing me to select it for the table to make. Any idea why this would be happeneing?

Assembly table scrpit
//Added Recipes
//mods.buildcraft.AssemblyTable.addRecipe(<appliedenergistics2:item.ItemMultiPart:16> *4, 10000, [<LogisticsPipes:item.PipeItemsBasicLogistics>, <ore:crystalFluix>]);

AE removed script

//Removed Recipes
//recipes.remove(<appliedenergistics2:item.ItemMultiPart:16> * 4);

I am running then in different script files, but I have even tried having them both in the same script file and NEI will still not show the new recipe.
Firstly, even if the removal didn't happen, the new recipe should still show up. Minetweaker recipes don't overwrite other recipes, simply add recipes and remove them, simulating an overwrite. So if you add a recipe and the old one didn't get removed, both should show up. If you remove a recipe but the old one didn't get added, nothing should show up.

Now I have some questions. Some may seem rather obvious, but I'm just trying to cover all the bases here.
  • What item is item.itemMultiPart:16? Just out of curiosity.
  • Have you tried replacing <ore:crystalFluix> with the actual item name instead of the oreDict tag? Some minetweaker handlers don't exactly handle oreDict all that well.
  • Have you tried reloading the scripts in-game to see if that causes the recipe to show up?
  • If I'm reading your post correctly, the intent is to remove the only recipe that the item has in favor of an assembly table recipe. Am I correct in this? If so, am I correct that when you try to look up the recipe for the item, nothing shows up?
  • Can you look up the recipe of something else that uses the assembly table? Like redstone chipsets. It might be the NEI support that's broken. If a recipe doesn't show up for anything in the assembly table, you may not have the right NEI addons installed to see that.
 
I

itsjustaprankbro

Guest
When you log in, does the message "Hello World!" print in the chat?

If not, then your issue isn't the recipes, it's either the script or minetweaker
Sorry for the long reply, lol, but to answer your question, no it doesn't, so maybe another mod is conflicting somehow with mod/mine tweaker?
 

Vagaprime

New Member
Jul 29, 2019
129
0
0
Firstly, even if the removal didn't happen, the new recipe should still show up. Minetweaker recipes don't overwrite other recipes, simply add recipes and remove them, simulating an overwrite. So if you add a recipe and the old one didn't get removed, both should show up. If you remove a recipe but the old one didn't get added, nothing should show up.

Now I have some questions. Some may seem rather obvious, but I'm just trying to cover all the bases here.
  • What item is item.itemMultiPart:16? Just out of curiosity.
  • Have you tried replacing <ore:crystalFluix> with the actual item name instead of the oreDict tag? Some minetweaker handlers don't exactly handle oreDict all that well.
  • Have you tried reloading the scripts in-game to see if that causes the recipe to show up?
  • If I'm reading your post correctly, the intent is to remove the only recipe that the item has in favor of an assembly table recipe. Am I correct in this? If so, am I correct that when you try to look up the recipe for the item, nothing shows up?
  • Can you look up the recipe of something else that uses the assembly table? Like redstone chipsets. It might be the NEI support that's broken. If a recipe doesn't show up for anything in the assembly table, you may not have the right NEI addons installed to see that.

item.itemMultiPart:16 is the basic AE cable.
using the oreDict tag allows me to add both normal and pure fluix crystals with out needing two recipes.
Making the scrpit change and reloading the scripts in game are giving me the same out put. the cable recipe is removed. I get no errors in running the script but the new recipe refuses to show up.
Yes you are reading the post correctly, and the other Assebly table recipes show up just fine so the handler is not broken.
 
I

itsjustaprankbro

Guest
alright, since I'm an idiot i didn't actually change the "Modtweaker.txt" file to .zs; i changed it instead to "Modtweaker.zs.txt". After fixing it, it did load, but didn't work: https://gyazo.com/79ddb5020902756db0763f41e8813242
(This ProjectE file mentioned was added when i added ProjectE to my mods list)
 

jordsta95

New Member
Jul 29, 2019
5,056
-4
1
I

itsjustaprankbro

Guest
Can you send lines 2 and 4 of the modtweaker.zs.zs file and line 2 from the projecte.zs file?
I was able to figure out what was wrong with the minetweaker.zs file, the ore dict i used wasn't actually an ore dict entry, but here is line 2:
"import mods.projecte.KleinStar;"
 

jordsta95

New Member
Jul 29, 2019
5,056
-4
1
I was able to figure out what was wrong with the minetweaker.zs file, the ore dict i used wasn't actually an ore dict entry, but here is line 2:
"import mods.projecte.KleinStar;"
Why are you importing a mod item? Shouldn't you just have
`import mods.projecte;`
 

Lady_Oolong

New Member
Jul 29, 2019
65
0
0
Not asking as a pack maker, but does MineTweaker have controls for mob spawns or is there a spawn control mod out for 1.9/1.10?

I'm running a 1.9 world mostly in peaceful for the moment so I can tinker with new things uninteruput ted but I'd like to be able to have "peaceful lite" that disables spawns on the Overworld surface but not underground/from spawners or hostile dimensions.
 

jordsta95

New Member
Jul 29, 2019
5,056
-4
1
I believe it is a planned feature, I can't remember though.
As for other mobs, I am not 100% certain on any, sorry
 

shadoxxHD

New Member
Jul 29, 2019
9
0
0
how can I change the NBT of an output depending on the NBT of the inputs and what are the capabilities of the scripting system?
 

jordsta95

New Member
Jul 29, 2019
5,056
-4
1
how can I change the NBT of an output depending on the NBT of the inputs and what are the capabilities of the scripting system?
You would have to be specific with the NBT input, and then the NBT output. E.g. input => <name>:1, output => <name>:2
The scripting system is very black and white for outputs. So if you say output NBT value 1, that's what you will get, and you can't do wildcards.
But for inputs, if you wanted to input an item with any NBT value you can use * instead of a number
 
  • Like
Reactions: GamerwithnoGame

GamerwithnoGame

Over-Achiever
Jan 29, 2015
2,808
1,507
224
You would have to be specific with the NBT input, and then the NBT output. E.g. input => <name>:1, output => <name>:2
The scripting system is very black and white for outputs. So if you say output NBT value 1, that's what you will get, and you can't do wildcards.
But for inputs, if you wanted to input an item with any NBT value you can use * instead of a number
Can you set the NBT number output as a calculation? So if you want an item to take damage, you can say its NBT of the previous minus 1, for example?
 

Xavion

New Member
Jul 29, 2019
1,025
-3
0
You would have to be specific with the NBT input, and then the NBT output. E.g. input => <name>:1, output => <name>:2
The scripting system is very black and white for outputs. So if you say output NBT value 1, that's what you will get, and you can't do wildcards.
But for inputs, if you wanted to input an item with any NBT value you can use * instead of a number
This is wrong, what's being described here is metadata, not NBT.
Can you set the NBT number output as a calculation? So if you want an item to take damage, you can say its NBT of the previous minus 1, for example?
That said in answer to this question. Here's an example from the wiki, it allows you to craft a stone pickaxe with cobblestone to repair 25 damage.
Code:
recipes.addShapeless(<minecraft:stone_pickaxe>, [<minecraft:stone_pickaxe>.anyDamage().marked("pick"), <minecraft:cobblestone>], function(output, inputs, crafting) {
  // the max is there to make sure that the damage doesn't go negative
  // fixes 25 damage per cobblestone
  return inputs.pick.withDamage(max(0, inputs.pick.damage - 25));
});
You can do stuff with NBT too, I helped someone recently set it up so you could do something like iron pickaxe + diamond => diamond pickaxe and it would keep all enchantments from the iron pick. Tell us what you actually want to do and we should be able to provide more help.
 
  • Like
Reactions: GamerwithnoGame

GamerwithnoGame

Over-Achiever
Jan 29, 2015
2,808
1,507
224
This is wrong, what's being described here is metadata, not NBT.

That said in answer to this question. Here's an example from the wiki, it allows you to craft a stone pickaxe with cobblestone to repair 25 damage.
Code:
recipes.addShapeless(<minecraft:stone_pickaxe>, [<minecraft:stone_pickaxe>.anyDamage().marked("pick"), <minecraft:cobblestone>], function(output, inputs, crafting) {
  // the max is there to make sure that the damage doesn't go negative
  // fixes 25 damage per cobblestone
  return inputs.pick.withDamage(max(0, inputs.pick.damage - 25));
});
You can do stuff with NBT too, I helped someone recently set it up so you could do something like iron pickaxe + diamond => diamond pickaxe and it would keep all enchantments from the iron pick. Tell us what you actually want to do and we should be able to provide more help.
Thanks for this @Xavion! I actually didn't have a particular application in mind, I was thinking more generally - I'm trying to up my minetweaker knowledge in general! So, if I'm right in thinking this, the metadata shows up as numbers after a colon in the item ID, right? And then NBT is text and other information attached to the item. It sounds like damage is a separate thing again, but doesn't the damage an item has taken also show up in the metadata in some cases? So the values after the colon in the ID change as it takes damage, as well as the bar going down?