Skip to content

Commit

Permalink
Merge pull request #221 from MuteTiefling/update-occultism-overrides
Browse files Browse the repository at this point in the history
Occultism Overrides Updates
  • Loading branch information
MuteTiefling authored Nov 23, 2024
2 parents 0aa33f4 + b8ab7a1 commit b1a24f6
Show file tree
Hide file tree
Showing 10 changed files with 175 additions and 103 deletions.
4 changes: 3 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,17 @@

#### ⭐ Improvements

- Custom flight potion no longer available. Switched to superior potion of flying from Apotheosis [(\#213)](https://github.com/EnigmaticaModpacks/Enigmatica10/issues/213)
- Custom flight potion no longer craftable. Switched to superior potion of flying from Apotheosis [(\#213)](https://github.com/EnigmaticaModpacks/Enigmatica10/issues/213)
- Occultism chalk has been made unbreakable due to inability to see how damaged it is in a ritual bag [(\#213)](https://github.com/EnigmaticaModpacks/Enigmatica10/issues/213)
- Structory tower and arcane library loot has been buffed [(\#213)](https://github.com/EnigmaticaModpacks/Enigmatica10/issues/213)
- Theurgy Calcination and Distillation sped up to reduce number of machines needed [(\#217)](https://github.com/EnigmaticaModpacks/Enigmatica10/issues/217)
- Dragons in drygmy farms will now drop eggs, heads, and breath at a reduced rate [(\#218)](https://github.com/EnigmaticaModpacks/Enigmatica10/issues/218)
- Theurgy Creature Salt may be crafted from meat and fish now [(\#221)](https://github.com/EnigmaticaModpacks/Enigmatica10/issues/221)

#### 🦟 Bugs Fixed

- Evilcraft should no longer spawn silverfish everywhere [(\#213)](https://github.com/EnigmaticaModpacks/Enigmatica10/issues/213)
- Tiny Coal and Tiny Charcoals are now unified [(\#221)](https://github.com/EnigmaticaModpacks/Enigmatica10/issues/221)

---

Expand Down
1 change: 1 addition & 0 deletions config/almostunified/placeholders.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
"bitumen",
"brass",
"bronze",
"charcoal",
"chrome",
"cinnabar",
"coal",
Expand Down
3 changes: 3 additions & 0 deletions config/almostunified/unification/materials.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@
"occultism",
"ae2",
"enderio",
"actuallyadditions",
"utilitarian",
"bigreactors"
],
"priority_overrides": {},
Expand All @@ -15,6 +17,7 @@
"c:dusts/{material}",
"c:gears/{material}",
"c:gems/{material}",
"c:tiny_gems/{material}",
"c:ingots/{material}",
"c:nuggets/{material}",
"c:ores/{material}",
Expand Down
34 changes: 31 additions & 3 deletions config/occultism-server.toml
Original file line number Diff line number Diff line change
Expand Up @@ -57,11 +57,11 @@
# Default: 1.0
# Range: 0.0 ~ 1.7976931348623157E308
tier2CrusherTimeMultiplier = 1.0
#Currently unused. The multiplier to each crushing recipe's crushing_time for Tier 3 (Afrit) Crusher Spirits.
#The multiplier to each crushing recipe's crushing_time for Tier 3 (Afrit) Crusher Spirits.
# Default: 0.5
# Range: 0.0 ~ 1.7976931348623157E308
tier3CrusherTimeMultiplier = 0.5
#Currently unused. The multiplier to each crushing recipe's crushing_time for Tier 4 (Marid) Crusher Spirits.
#The multiplier to each crushing recipe's crushing_time for Tier 4 (Marid) Crusher Spirits.
# Default: 0.2
# Range: 0.0 ~ 1.7976931348623157E308
tier4CrusherTimeMultiplier = 0.2
Expand All @@ -86,7 +86,7 @@
# Range: > 0
crusherResultPickupDelay = 60
#The chance for a blacksmith familiar to repair an item (by 2 durability) whenever stone is picked up. 1.0 = 100%, 0.0 = 0%.
# Default: 0.05
# Default: 0.33
# Range: 0.0 ~ 1.7976931348623157E308
blacksmithFamiliarRepairChance = 0.15
#The amount of iron required for a blacksmith familiar to upgrade another familiar.
Expand All @@ -97,6 +97,34 @@
# Default: 400
# Range: > 0
blacksmithFamiliarUpgradeCooldown = 400
#The multiplier to each smelting recipe's cooking_time for Tier 1 (Foliot) Smelter Spirits.
# Default: 1.0
# Range: 0.0 ~ 1.7976931348623157E308
tier1SmelterTimeMultiplier = 1.0
#The multiplier to each smelting recipe's cooking_time for Tier 2 (Djinni) Smelter Spirits.
# Default: 0.5
# Range: 0.0 ~ 1.7976931348623157E308
tier2SmelterTimeMultiplier = 0.5
#The multiplier to each smelting recipe's cooking_time for Tier 3 (Afrit) Smelter Spirits.
# Default: 0.1
# Range: 0.0 ~ 1.7976931348623157E308
tier3SmelterTimeMultiplier = 0.1
#The multiplier to each smelting recipe's cooking_time for Tier 4 (Marid) Smelter Spirits.
# Default: 0.01
# Range: 0.0 ~ 1.7976931348623157E308
tier4SmelterTimeMultiplier = 0.01
#The minimum ticks before a crusher can pick up an item it dropped. Default is 3 Seconds = 3 * 20 Ticks.
# Default: 60
# Range: > 0
smelterResultPickupDelay = 60
#The horizontal value that the upgraded greedy familiar will seek blocks. (Large distances can cause delays in finding)
# Default: 32
# Range: > 0
greedySearchRange = 32
#The vertical value that the upgraded greedy familiar will seek blocks. (Large distances can cause delays in finding)
# Default: 16
# Range: > 0
greedyVerticalSearchRange = 16

#Ritual Settings
[rituals]
Expand Down
3 changes: 3 additions & 0 deletions kubejs/assets/occultism/lang/en_us.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
"item.occultism.ritual_dummy.craft_ritual_satchel_t1.tooltip": "Binds a Foliot into a satchel to build pentacles step-by-step for the summoner."
}
189 changes: 91 additions & 98 deletions kubejs/server_scripts/recipes/occultism/ritual.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,13 @@ ServerEvents.recipes((event) => {
const id_prefix = 'enigmatica:occultism/ritual/';
const recipes = [];

const sacrifice = {
llama: { display_name: 'ritual.occultism.sacrifice.llamas', tag: 'c:llamas' },
chicken: { display_name: 'ritual.occultism.sacrifice.chicken', tag: 'c:chickens' },
cow: { display_name: 'ritual.occultism.sacrifice.cows', tag: 'c:cows' },
fish: { display_name: 'ritual.occultism.sacrifice.fish', tag: 'c:fish' }
};

event.forEachRecipe({ type: 'occultism:ritual' }, (r) => {
let recipe = JSON.parse(r.json);
let recipe_id = r.getId();
Expand All @@ -18,107 +25,93 @@ ServerEvents.recipes((event) => {
}
}

if (recipe_id.includes('ritual/craft_wild_trim')) {
recipe.entity_to_sacrifice = {
display_name: 'ritual.occultism.sacrifice.llamas',
tag: 'c:llamas'
};
recipe.id = recipe_id;
} else if (recipe_id.includes('ritual/possess_warden')) {
recipe.entity_to_sacrifice = {
display_name: 'ritual.occultism.sacrifice.cows',
tag: 'c:cows'
};
recipe.ingredients = [
{ item: 'minecraft:sculk' },
{ item: 'minecraft:sculk' },
{ item: 'minecraft:sculk' },
{ item: 'minecraft:sculk' },
{ item: 'minecraft:sculk' },
{ item: 'minecraft:sculk' },
{ item: 'minecraft:sculk' },
{ item: 'minecraft:sculk' }
];
recipe.id = recipe_id;
} else if (
recipe_id.includes('ritual/possess_goat') ||
recipe_id.includes('ritual/possess_witch') ||
recipe_id.includes('ritual/possess_bee')
) {
recipe.entity_to_sacrifice = {
display_name: 'ritual.occultism.sacrifice.chicken',
tag: 'c:chickens'
};
recipe.id = recipe_id;
} else if (recipe_id.includes('ritual/craft_budding_amethyst')) {
delete recipe.entity_to_sacrifice;
recipe.ingredients = [
{ tag: 'c:dusts/amethyst' },
{ tag: 'c:dusts/amethyst' },
{ tag: 'c:dusts/amethyst' },
{ tag: 'c:dusts/amethyst' }
];
recipe.id = recipe_id;
} else if (recipe_id.includes('ritual/repair_miners')) {
recipe.ingredients = [
{ item: 'occultism:otherworld_essence' },
{ item: 'occultism:otherworld_essence' },
{ item: 'occultism:otherworld_essence' },
{ item: 'occultism:otherworld_essence' },
{ item: 'occultism:spirit_attuned_gem' },
{ item: 'occultism:spirit_attuned_gem' },
{ item: 'occultism:spirit_attuned_gem' },
{ item: 'occultism:spirit_attuned_gem' }
];
recipe.id = recipe_id;
} else if (recipe_id.includes('ritual/repair_armors') || recipe_id.includes('ritual/repair_tools')) {
recipe.ingredients = [
{ item: 'occultism:otherworld_essence' },
{ item: 'occultism:otherworld_essence' },
{ item: 'occultism:spirit_attuned_gem' },
{ item: 'occultism:otherworld_essence' }
];
recipe.id = recipe_id;
} else if (recipe_id.includes('ritual/repair_chalks')) {
recipe.ingredients = [
{ item: 'occultism:otherworld_essence' },
{ tag: 'c:dusts/otherworld_wood' },
{ item: 'occultism:otherworld_essence' },
{ tag: 'c:dusts/otherstone' }
];
recipe.id = recipe_id;
} else if (recipe_id.includes('ritual/craft_gray_paste')) {
recipe.ingredients = [
{ tag: 'c:gunpowders' },
{ item: 'minecraft:clay_ball' },
{ item: 'minecraft:phantom_membrane' },
{ item: 'minecraft:clay_ball' }
];
recipe.id = recipe_id;
} else if (recipe_id.includes('ritual/wild_drowned')) {
recipe.entity_to_sacrifice = { display_name: 'ritual.occultism.sacrifice.fish', tag: 'c:fish' };
recipe.activation_item = { tag: 'minecraft:coral_blocks' };
recipe.ingredients = [
{ item: 'minecraft:pufferfish' },
{ item: 'minecraft:gravel' },
{ item: 'minecraft:dried_kelp_block' },
{ item: 'minecraft:gravel' }
];
recipe.id = recipe_id;
} else if (recipe_id.includes('ritual/possess_zombie_piglin')) {
recipe.ingredients = [
{ item: 'minecraft:gilded_blackstone' },
{ item: 'minecraft:warped_fungus' },
{ item: 'minecraft:quartz' },
{ item: 'minecraft:crimson_fungus' }
];
recipe.id = recipe_id;
} else if (recipe_id.includes('ritual/craft_ritual_satchel_t1')) {
recipe.activation_item = { item: 'occultism:book_of_binding_bound_foliot' };
recipe.pentacle_id = 'occultism:craft_foliot';
if (recipe_id.includes('_random_animal_')) {
recipe.item_to_use = { item: 'minecraft:egg' };
recipe.id = recipe_id;
}

switch (recipe_id) {
case 'occultism:ritual/misc_wild_trim':
recipe.entity_to_sacrifice = sacrifice.llama;
recipe.id = recipe_id;
break;
case 'occultism:ritual/possess_goat':
case 'occultism:ritual/possess_witch':
case 'occultism:ritual/possess_bee':
case 'occultism:ritual/wild_breeze':
case 'occultism:ritual/wild_weak_breeze':
case 'occultism:ritual/wild_strong_breeze':
recipe.entity_to_sacrifice = sacrifice.chicken;
recipe.id = recipe_id;
break;
case 'occultism:ritual/possess_warden':
recipe.entity_to_sacrifice = sacrifice.cow;
recipe.ingredients = [
{ item: 'minecraft:sculk' },
{ item: 'minecraft:sculk' },
{ item: 'minecraft:sculk' },
{ item: 'minecraft:sculk' }
];
recipe.id = recipe_id;
break;
case 'occultism:ritual/misc_budding_amethyst':
delete recipe.entity_to_sacrifice;
recipe.ingredients = [
{ tag: 'c:dusts/amethyst' },
{ tag: 'c:dusts/amethyst' },
{ tag: 'c:dusts/amethyst' },
{ tag: 'c:dusts/amethyst' }
];
recipe.id = recipe_id;
break;

case 'occultism:ritual/repair_armors':
case 'occultism:ritual/repair_tools':
case 'occultism:ritual/repair_miners':
recipe.ingredients = [
{ item: 'occultism:otherworld_essence' },
{ item: 'occultism:otherworld_essence' },
{ item: 'occultism:spirit_attuned_gem' },
{ item: 'occultism:otherworld_essence' }
];
recipe.id = recipe_id;
break;
case 'occultism:ritual/repair_chalks':
recipe.ingredients = [
{ item: 'occultism:otherworld_essence' },
{ tag: 'c:dusts/otherworld_wood' },
{ item: 'occultism:otherworld_essence' },
{ tag: 'c:dusts/otherstone' }
];
recipe.id = recipe_id;
break;
case 'occultism:ritual/wild_drowned':
recipe.entity_to_sacrifice = sacrifice.fish;
recipe.activation_item = { tag: 'minecraft:coral_blocks' };
recipe.ingredients = [
{ item: 'minecraft:pufferfish' },
{ item: 'minecraft:gravel' },
{ item: 'minecraft:dried_kelp_block' },
{ item: 'minecraft:gravel' }
];
recipe.id = recipe_id;
break;
case 'occultism:ritual/possess_zombie_piglin':
recipe.ingredients = [
{ item: 'minecraft:gilded_blackstone' },
{ item: 'minecraft:warped_fungus' },
{ item: 'minecraft:quartz' },
{ item: 'minecraft:crimson_fungus' }
];
recipe.id = recipe_id;
break;
case 'occultism:ritual/craft_ritual_satchel_t1':
recipe.activation_item = { item: 'occultism:book_of_binding_bound_foliot' };
recipe.pentacle_id = 'occultism:craft_foliot';
recipe.id = recipe_id;
break;
}

if (recipe.id) {
recipes.push(recipe);
}
Expand Down
25 changes: 24 additions & 1 deletion kubejs/server_scripts/recipes/theurgy/calcination.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,29 @@
ServerEvents.recipes((event) => {
const id_prefix = 'enigmatica:theurgy/calcination/';
const recipes = [];
const recipes = [
{
ingredient: { ingredient: { tag: 'minecraft:meat' }, count: 1 },
result: {
type: 'theurgy:item',
id: 'theurgy:alchemical_salt_creature',
count: 1
},
time: 20,
category: 'misc',
id: `${id_prefix}alchemical_salt_creature_from_meat`
},
{
ingredient: { ingredient: { tag: 'minecraft:fishes' }, count: 1 },
result: {
type: 'theurgy:item',
id: 'theurgy:alchemical_salt_creature',
count: 1
},
time: 20,
category: 'misc',
id: `${id_prefix}alchemical_salt_creature_from_fishes`
}
];

event.forEachRecipe({ type: 'theurgy:calcination' }, (r) => {
let recipe = JSON.parse(r.json);
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
ServerEvents.tags('block', (event) => {
let additions = ['minecraft:sculk', 'minecraft:sculk_shrieker', 'minecraft:sculk_sensor'];
event.get('occultism:pentacle_materials').add(additions);
});
11 changes: 11 additions & 0 deletions kubejs/server_scripts/tags/item/neoforge/tiny_gems.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
ServerEvents.tags('item', (event) => {
let additions = {
charcoal: ['actuallyadditions:tiny_charcoal', 'utilitarian:tiny_charcoal'],
coal: ['actuallyadditions:tiny_coal', 'utilitarian:tiny_coal']
};

Object.keys(additions).forEach((tag) => {
event.get(`c:tiny_gems/${tag}`).add(additions[tag]);
event.get('c:tiny_gems').add(additions[tag]);
});
});
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
ServerEvents.tags('item', (event) => {
let additions = ['minecraft:sculk', 'minecraft:sculk_shrieker', 'minecraft:sculk_sensor'];
event.get('occultism:pentacle_materials').add(additions);
});

0 comments on commit b1a24f6

Please sign in to comment.