Craftics v0.3.1-1.21.1
Curse Maven Snippet
What's new
Crash Fixes
- Fixed a game crash ("Pose stack not empty") and corrupted tooltip positioning when the Artifacts umbrella - or any item another mod renders with a cancelling custom renderer - was visible in an inventory or dropped in the world. The Hilt upside-down render effect pushed a matrix frame that another mod's render cancellation could leak; the flip now wraps the render call so it balances on every exit path
- Registry health scan: on server start and stop, every game registry is swept for broken entries (null holes, unbound references - the unattributable cause of "NullPointerException in RegistrySyncManager.unmap" crashes when quitting a world). A broken slot is logged with the registry name and the mod entries around it, so the culprit mod is named in the log instead of a blank crash report
- The registry scan also runs client-side, after joining and right before disconnect cleanup - multiplayer disconnect crashes corrupt the CLIENT's registries, which the server-side scan can't see
- FIXED the disconnect crash itself: joining a server whose mods register entries the client doesn't have leaves null holes in the client's registries (Fabric registry-sync behavior), and Fabric's own disconnect cleanup then crashes iterating them. Craftics now compacts those holes right before that cleanup runs, so leaving the server no longer crashes the game. The scan still logs the mismatched registry and mod namespaces - aligning the client and server mod lists remains the proper fix
Server Fun
- /craftics scoreboard spawn (op): places a floating, live-updating INFINITE MODE top-10 board where you stand - a text display that refreshes every few seconds from the banked best scores and survives restarts. /craftics scoreboard remove clears boards near you
- Lootboxes are physical chests in the world: /craftics lootbox place <type> [cost] (op) sets a kiosk chest in front of you, at the standard price or any emerald cost you choose (0 = free to open), in five flavors - Weapon Cache (all affinities, 3% chance at a Simply Swords runic legend), Armor Cache (chainmail to netherite, trim template bonus), Material Crate, Special Cache, and Tome Cache (vanilla + Craftics enchanted books). /craftics lootbox remove (op) retires the chest you're looking at
- Opening a kiosk plays the full show - the lid swings open with vault and chest sounds and a particle burst, then the treasure-reveal screen - and costs banked emeralds (10-30 by type), or a Lootbox Key, a marked name tag only admins can grant (/craftics lootbox key), which opens any chest free. Kiosks survive restarts
- /craftics lootbox odds <type> - available to every player, no permissions - prints the exact drop table: section chances, item lists, and per-item percentages, generated from the same data the rolls use so it can never drift from reality
- All of it is earned in play or admin-granted; no purchase hooks, and full odds disclosure, in line with Minecraft's server monetization rules
New Hub
- The central lobby is now a hand-built hub pasted from a bundled schematic (177x160), replacing the old procedural floating island. Players spawn on its 2x2 crying obsidian pad; the builder finds the pad automatically, sets both the world spawn and the join teleport to it, and /craftics lobby setspawn still overrides
- /craftics lobby rebuild (op): re-paste the central hub from the bundled schematic in place, no world reset needed. Re-place lootbox chests and scoreboards inside its footprint afterwards
- Fresh dedicated servers now default to the Craftics world type on their own: if no world exists yet and level-type was left at vanilla default, server.properties is set to the Craftics preset before the world generates. Existing worlds and deliberate level-type choices are never touched; level-type=default keeps vanilla terrain
Placement Rules
- Special blocks (campfire, banner, torch, lantern, jukebox, scaffolding, honey/slime block, cactus, cake, spore blossom, lightning rod, powder snow) now require flat, solid ground: no more planting a campfire over the void or a banner in lava. Void, sunken pits, water, deep water, lava, fire, powder snow, obstacles and stairs all refuse placement with a clear message
Server Administration
- /craftics config reload (op): re-reads craftics-config from disk, so scaling, timers and toggles can be tuned on a live server without a restart
- Admin commands now take an optional [player] target: reset_combat, heal, give presets, set_emeralds, set_level, set_ngplus, set_ap, set_speed, set_stat, reset_stats. They all work from the server console or command blocks now, and reset_combat can rescue a stuck player who can't run it themselves
- /craftics infinite stop <player> (op): force-end another player's infinite run - live or parked - the admin recovery for a hung run
- Idle performance: combat managers for players not in a fight no longer evaluate music selection every tick - the one per-tick cost that scaled with how many players had EVER fought instead of how many are fighting
- Config note: dedicated servers should enable turnTimerEnabled so an AFK party member can't stall a fight
- Download size: the soundtrack re-encoded from ~140-160kbps to ~80kbps Vorbis, and the three 15-minute marathon tracks (Spider Den, Basalt Deltas, Crypt) trimmed to clean 5-minute loops with a fade - 190MB of music is now 75MB with no audible change under gameplay
- Arena prefetch: the next level's arena now builds while the party sits on the victory screen, so first-time entry into a level no longer hitches at the transition. Repeat visits were already cached and stay instant
Infinite Mode Classes
- Starting an infinite run now opens a class selection: one class per affinity (Slashing, Cleaving, Blunt, Ranged, Water, Special, Pet, Physical) or Skip to go in with nothing but the two logs
- A class grants +1 point in its affinity and a modest starter weapon - stone sword/axe/hoe/shovel by class, a stick for Blunt, a bow with 8 arrows for Ranged, a horn coral for Water, a shield for Physical. A leg up on the from-nothing start, not a power spike
- Each party member picks their own class. Rejoining a resumed run as a fresh participant offers the pick again; the host's original choice stands. Closing the screen counts as Skip, and a pick can never be claimed twice
Sixteen New Enchantments
Weapons:
- Undertow (sword): an enemy whose attack you dodge or deflect is dragged 1 tile toward you. the drag obeys real knockback rules, so hazards between you count
- Hemorrhage (sword): knocking back a Bleeding enemy detonates its Bleed stacks into one burst and clears them
- Ambush (sword): killing an enemy before it acts this round frightens the next enemy in the order (-2 ATK for 1 turn)
- Timberfall (axe): obstacles you Demolish fall onto the enemies beside them - damage and a Stun under the falling block
- Pole Vault (blunt): gap jumps cost the plain walk price, and you can vault clean over enemies. an occupied tile counts as a jumpable gap
- Midas (blunt): slamming an enemy into a wall shakes 1-2 emeralds into your bank, once per enemy per fight
- Tag Team (shovel): once per turn, command a pet onto your own tile to swap places with it as a free action
- Trapper (hoe): a splash potion thrown at an empty tile with no enemy in range buries as a hidden trap; the first enemy to stand there eats the full potion - and knocking an enemy onto a trap springs it too
Armor (a first - armor enchants read from the piece actually worn):
- Iron Will (helmet): Confusion, Blindness and Darkness on you tick out at double speed
- Beacon (helmet): you count as a walking banner. Party members within 2 tiles gain the banner defense aura
- Phalanx (chest): +1 AC for you and each adjacent party member, both sides of every pairing
- Grudgeplate (chest): the last enemy to damage you takes +2 from the whole party
- Trailblazer (legs): party members moving along tiles you crossed pay 1 less Speed until your next turn
- Longstride (legs): your jumps clear gaps up to 3 tiles wide
- Ledgegrip (boots): once per combat, a knockback into a pit or deep water becomes a caught edge - 2 damage instead of death
- Shockstep (boots): landing a gap jump stomps adjacent enemies for damage and a 1-turn Slow
- The enchanter, trial keys, traders and mob gear all roll the new enchants from their matching pools automatically. Craftics armor enchants join the vanilla armor pools per slot
This mod has no additional files

