Three server scripts each declared 'const SC' at top level, but KubeJS 2101
shares a single global scope across all server scripts → 'redeclaration of
const SC' TypeError.
Rename per-file to unique consts:
- 01_corruption_tide.js → const TIDE_SC
- 02_events.js → const EVENTS_SC
- 03_recipes_tags.js → const RECIPES_SC
(The IP warnings in the log — Iris portal artifacts + HAR 1010 wrong-mods —
are informational from the IPSable fork, not errors.)
FATAL fix — mekanismcovers Sodium mixin crash:
- mekanismcovers 1.3-BETA targets an old Sodium BlockRenderer API that
doesn't exist in Sodium 0.8.13 → 'No refMap loaded' InjectionError.
- Add config/mekanismcovers.json with disableAdvancedCoverRendering=true
(the mod's documented workaround for Sodium/Iris/Embeddium crashes).
Also set enableShaderCompatibleRendering=true.
KubeJS 2101.x API migration (global assignment no longer allowed):
- Remove 00_lore.js (it only set global.SCICRAFT, which is now forbidden)
- Inline the config object into 01_corruption_tide/02_events/03_recipes
(global.SCICRAFT → local const SC per script)
- Remove unused 'const SC = global.SCICRAFT' from registry_blocks.js
LootJS 3.x API migration:
- addEntityLootModifier → addEntityModifier (04_loot.js, 7 call sites)
Pack validates: client 140 / server 118 mods, 57 story keys.
- Remove .unbreakable() from void_stabilizer item (not valid on
ItemBuilder; KubeJS forbids it)
- Remove explicit 'basic' type from quantum_lattice block creation
(defaults to basic; explicit caused unknown type error)