Skip to content

Commit

Permalink
Data tweaks
Browse files Browse the repository at this point in the history
Luck no longer allows using crystals for levels 2, 3, or pants as that makes it too easy with recent changes to cheese the cost.
Tool belt similarly disallows using crystals for levels 2+
Severing is now allowed on ranged tools, as severing arrows/spit functions now
Fixed missing frame in melting pan charging
Correct a couple of typos from #5287
  • Loading branch information
KnightMiner committed Jan 20, 2025
1 parent 7595f87 commit 3c56676
Show file tree
Hide file tree
Showing 14 changed files with 38 additions and 86 deletions.

This file was deleted.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

This file was deleted.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,6 @@
import slimeknights.tconstruct.library.recipe.ingredient.ToolHookIngredient;
import slimeknights.tconstruct.library.recipe.modifiers.adding.IncrementalModifierRecipeBuilder;
import slimeknights.tconstruct.library.recipe.modifiers.adding.ModifierRecipeBuilder;
import slimeknights.tconstruct.library.recipe.modifiers.adding.MultilevelModifierRecipeBuilder;
import slimeknights.tconstruct.library.recipe.modifiers.adding.OverslimeModifierRecipeBuilder;
import slimeknights.tconstruct.library.recipe.modifiers.adding.SwappableModifierRecipe.VariantFormatter;
import slimeknights.tconstruct.library.recipe.modifiers.adding.SwappableModifierRecipeBuilder;
Expand Down Expand Up @@ -397,7 +396,7 @@ private void addModifierRecipes(Consumer<FinishedRecipe> consumer) {
.addInput(Items.TNT)
.setMaxLevel(3) // max +25% head drop chance, combine with +15% chance from luck
.setSlots(SlotType.UPGRADE, 1)
.setTools(TinkerTags.Items.MELEE)
.setTools(ingredientFromTags(TinkerTags.Items.MELEE, TinkerTags.Items.RANGED))
.saveSalvage(consumer, prefix(TinkerModifiers.severing, upgradeSalvage))
.save(consumer, prefix(TinkerModifiers.severing, upgradeFolder));
IncrementalModifierRecipeBuilder.modifier(TinkerModifiers.fiery)
Expand Down Expand Up @@ -963,8 +962,9 @@ private void addModifierRecipes(Consumer<FinishedRecipe> consumer) {
if (level == 1) {
builder.setSlots(SlotType.ABILITY, 1);
builder.saveSalvage(consumer, prefix(ModifierIds.toolBelt, abilitySalvage));
} else {
builder.disallowCrystal(); // prevent cheesing cost by extracting level 1
}
builder.disallowCrystal(); // handled below
builder.save(consumer, wrap(ModifierIds.toolBelt, abilityFolder, "_" + level));
};
toolBeltRecipe.accept(1, Tags.Items.INGOTS_IRON);
Expand All @@ -973,11 +973,6 @@ private void addModifierRecipes(Consumer<FinishedRecipe> consumer) {
toolBeltRecipe.accept(4, TinkerMaterials.cobalt.getIngotTag());
toolBeltRecipe.accept(5, TinkerMaterials.hepatizon.getIngotTag());
toolBeltRecipe.accept(6, TinkerMaterials.manyullyn.getIngotTag());
MultilevelModifierRecipeBuilder.modifier(ModifierIds.toolBelt)
.setTools(TinkerTags.Items.LEGGINGS)
.addLevel(SlotType.ABILITY, 1, 1)
.addLevelRange(2, 6)
.save(consumer, wrap(ModifierIds.toolBelt, abilityFolder, "_crystal"));
ModifierRecipeBuilder.modifier(ModifierIds.soulBelt)
.addInput(Items.LEATHER)
.addInput(Ingredient.of(Items.RECOVERY_COMPASS))
Expand Down Expand Up @@ -1104,7 +1099,7 @@ private void addModifierRecipes(Consumer<FinishedRecipe> consumer) {
.save(consumer, prefix(ModifierIds.gilded, abilityFolder));
// luck is 3 recipes
// level 1 always requires a slot
Ingredient luckSupporting = ingredientFromTags(TinkerTags.Items.MELEE_WEAPON, TinkerTags.Items.HARVEST, TinkerTags.Items.BOWS);
Ingredient luckSupporting = ingredientFromTags(TinkerTags.Items.MELEE_WEAPON, TinkerTags.Items.HARVEST, TinkerTags.Items.RANGED);
ModifierRecipeBuilder.modifier(ModifierIds.luck)
.setTools(luckSupporting)
.addInput(Tags.Items.INGOTS_COPPER)
Expand All @@ -1114,7 +1109,7 @@ private void addModifierRecipes(Consumer<FinishedRecipe> consumer) {
.addInput(Tags.Items.STORAGE_BLOCKS_LAPIS)
.setMaxLevel(1)
.setSlots(SlotType.ABILITY, 1)
.disallowCrystal() // handled below
.allowCrystal()
.save(consumer, wrap(ModifierIds.luck, abilityFolder, "_level_1"));
ModifierRecipeBuilder.modifier(ModifierIds.luck)
.setTools(luckSupporting)
Expand All @@ -1123,7 +1118,7 @@ private void addModifierRecipes(Consumer<FinishedRecipe> consumer) {
.addInput(Tags.Items.INGOTS_GOLD)
.addInput(Tags.Items.ENDER_PEARLS)
.addInput(Tags.Items.ENDER_PEARLS)
.disallowCrystal() // handled below
.disallowCrystal() // would allow a cost cheese
.exactLevel(2)
.save(consumer, wrap(ModifierIds.luck, abilityFolder, "_level_2"));
ModifierRecipeBuilder.modifier(ModifierIds.luck)
Expand All @@ -1133,7 +1128,7 @@ private void addModifierRecipes(Consumer<FinishedRecipe> consumer) {
.addInput(TinkerMaterials.roseGold.getIngotTag())
.addInput(Tags.Items.GEMS_DIAMOND)
.addInput(Items.NAME_TAG)
.disallowCrystal() // handled below
.disallowCrystal() // would allow a cost cheese
.exactLevel(3)
.save(consumer, wrap(ModifierIds.luck, abilityFolder, "_level_3"));
// pants have just one level
Expand All @@ -1146,14 +1141,9 @@ private void addModifierRecipes(Consumer<FinishedRecipe> consumer) {
.addInput(Items.NAME_TAG)
.setMaxLevel(1)
.setSlots(SlotType.ABILITY, 1)
.disallowCrystal() // prevents cheesing cost using luck 1
.saveSalvage(consumer, wrap(ModifierIds.luck, abilitySalvage, "_pants"))
.save(consumer, wrap(ModifierIds.luck, abilityFolder, "_pants"));
// extra crystal recipe
MultilevelModifierRecipeBuilder.modifier(ModifierIds.luck)
.setTools(luckSupporting)
.addLevel(SlotType.ABILITY, 1, 1)
.addLevelRange(2, 3)
.save(consumer, wrap(ModifierIds.luck, abilityFolder, "_crystal"));
// salvage lets you salvage from chestplates
ModifierRecipeBuilder.modifier(ModifierIds.luck)
.setTools(ingredientFromTags(TinkerTags.Items.MELEE, TinkerTags.Items.HARVEST, TinkerTags.Items.BOWS))
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
{
"title": "Armor Information",
"text": [
{ "text": "Armor is crafted in the Crafting Station instead of the Tinker Station or Anvil. Armor have varying number of upgrade, defense, and ability slots based on the type; some types even have material traits. Unlike tools, holding the armor typically provides no effect; most modifiers require wearing the armor to be applicable." }
{ "text": "Armor can be created in a variety of forms. Some armor is created in te crafting station, some in the tinker station, and some is made by casting." },
{ "text": "Armor have varying number of upgrade, defense, and ability slots based on the type; some types even have material traits.", "paragraph": true },
{ "text": "Unlike tools, holding the armor typically provides no effect; most modifiers require wearing the armor to be applicable.", "paragraph": true }
]
}
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
}
],
"effects": [
"Allows gliding by jumping whil in air",
"Allows gliding by jumping while in air",
"Single level",
"Requires 2 ability slots"
]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"modifier_id": "tconstruct:embellishment",
"text": [
{
"text": "Ever seen a metal so nice you wish it were armor? Now any metal is armor."
"text": "The original cosmetic to change the appearance of tools and armor!"
}
],
"effects": [
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,9 @@
0,
2,
0,
3
3,
0,
4
]
}
}

0 comments on commit 3c56676

Please sign in to comment.