Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Occultism Overrides Updates #221

Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
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);
});