pack: v0.31.0 — replace hacks with Item Obliterator

Replace the v0.30.x ad-hoc disable mechanisms (KubeJS server script,
datapack recipe override, KubeJS client-side JEI hide -- which was
broken on this KubeJS build) with a single proper tool:

  - **Item Obliterator 2.3.0** + dep **Necronomicon API 1.6.0**
    Declarative JSON config to remove items from inventories,
    creative tabs, all recipes (including modded custom recipe
    types), villager trades, and JEI. Exactly the missing capability.

Config: pack/overrides/defaultconfigs/item_obliterator.json5
  Blacklists:
    alexsmobs:transmutation_table
    alexsmobs:shattered_dimensional_carver

Removed (no longer needed):
  - pack/overrides/kubejs/server_scripts/disable_alexsmobs_features.js
    (Item Obliterator handles transmutation_table recipe removal
    and right-click cancel automatically)
  - pack/overrides/world/datapacks/bns-fuel/data/alexsmobs/
      capsid_recipes/shattered_dimensional_carver.json
    (Item Obliterator handles modded recipe removal too)

Both items now correctly:
  - Don't appear in JEI search / item list
  - Don't appear in creative tabs
  - Have no working recipe path
  - Can't be right-clicked / used
  - Get scrubbed from inventories on join

The Void Worm boss + regular Dimensional Carver still work --
nothing else in Alex's Mobs is affected.

Verified live: both mods discovered, Necronomicon read our config
file successfully ("File exists, reading config"), Item Obliterator
loaded with the blacklist.

Note: config schema is v2; v1 configs get overwritten by the mod's
default. Always write configVersion: 2.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
Matt
2026-06-01 19:21:41 +00:00
parent f88f6eaaca
commit 1b9e35efea
4 changed files with 55 additions and 46 deletions
@@ -0,0 +1,31 @@
{
// -----------------------------------------------------------
// Item Obliterator -- Brass and Sigil config
// -----------------------------------------------------------
// Hides + disables specific Alex's Mobs items that we don't
// want in this modpack:
//
// alexsmobs:transmutation_table -- competes with Ars
// and undermines the
// Numismatics economy
//
// alexsmobs:shattered_dimensional_carver -- teleports the
// player 1,000,000
// blocks in a random
// direction, breaks
// world-bounds
//
// Both are removed from inventories, creative tabs, recipes
// (including the Capsid transformation), trades, and JEI.
// -----------------------------------------------------------
"configVersion": 2,
"blacklisted_items": [
"alexsmobs:transmutation_table",
"alexsmobs:shattered_dimensional_carver"
],
"blacklisted_nbt": [],
"only_disable_interactions": [],
"only_disable_attacks": [],
"only_disable_recipes": [],
"use_hashmap_optimizations": false
}
@@ -1,32 +0,0 @@
// Brass and Sigil -- disable specific Alex's Mobs features
//
// 1. Transmutation Table
// Competes with Ars Nouveau's crafting depth and bypasses the
// Numismatics-based player economy by offering free item-to-item
// conversion. Remove the crafting recipe so no one can make one.
// Existing tables (none yet) are left as-is.
//
// 2. Shattered Dimensional Carver
// Teleports the player 1,000,000 blocks in a random direction on
// use. Breaks any server-side world-boundary or chunk-loading
// assumptions, drops the player into an unloaded chunk far from
// anyone else. Cancel right-click on the item so it does nothing.
//
// We can't easily prevent the Capsid-shatters-Carver interaction
// (it is a block contact reaction, not a recipe), so the player
// can still produce the item -- it just won't fire.
ServerEvents.recipes(event => {
event.remove({ output: 'alexsmobs:transmutation_table' });
console.info('[bns/disable_alexsmobs_features] removed transmutation_table crafting recipe');
});
ItemEvents.firstRightClicked('alexsmobs:shattered_dimensional_carver', event => {
event.cancel();
const player = event.player;
if (player && !event.level.isClientSide()) {
player.tell('The Shattered Dimensional Carver is disabled on this server.');
}
});
console.info('[bns/disable_alexsmobs_features] loaded');
@@ -1,12 +0,0 @@
{
"ingredients": [
{
"item": "minecraft:barrier"
}
],
"result": {
"item": "alexsmobs:shattered_dimensional_carver",
"count": 1
},
"time": 200
}