Skip to content

Compatibility and target versions

BonsUnleashed edited this page Oct 7, 2026 · 16 revisions

Compatibility and target versions

Minecraft 1.20.1 / Forge: this page documents that build and its measurements. For the separate 170-control Minecraft 1.21.1 port, see Minecraft 1.21.1 NeoForge.

Bons and Furious 1.0.34 targets vanilla Minecraft 1.20.1, Forge 47.4.16 itself, and the 79 optional mods below, at the exact builds they were developed and tested against. Nothing is mandatory: a missing target is simply never patched, and a target at a different build is left untouched with one WARN line per class (see How the patches are applied).

This page lists the mods Bons and Furious patches. How it gets along with other mods is on Compatibility, the mods it was tested with on Tested mod list, and the known conflicts on Known conflicts and workarounds.

Target table

Mod (mod id) Tested build Side Controls Upstream license (as recorded)
Minecraft (minecraft) 1.20.1 BOTH / CLIENT / SERVER 51 —
Forge (forge) 47.4.16 BOTH / CLIENT 6 LGPL-2.1
Ad Astra (ad_astra) 1.15.20 BOTH 1 Terrarium License
Alex's Caves (alexscaves) 2.0.2 BOTH / SERVER 4 LGPL
AmbientSounds (ambientsounds) 6.3.8 CLIENT 3 LGPL-3.0-only
Architectury API (architectury) 9.2.14 BOTH 1 LGPL-3.0
Ars Nouveau (ars_nouveau) 4.12.7 BOTH 2 GPL
Better Combat (bettercombat) 1.8.6+1.20.1 (Forge) BOTH 1 All Rights Reserved (repository LICENSE; the mods.toml says GPL-3.0)
Butterflies (butterflies) 7.10.9 BOTH 1 All Rights Reserved
C2ME (c2me), read only 0.2.0+alpha.12 (c2meF) BOTH companion of the Radium and ModernFix restores; nothing of C2ME is patched MIT
ChunkSending (chunksending) 3.7 BOTH 1 All Rights Reserved
Colorwheel (colorwheel) 1.3.0+mc1.20.1 CLIENT 1 LGPL-3.0
Cryptic Foes (crypticfoes) 1.0.4 BOTH 2 All Rights Reserved
Curios API (curios) 5.14.1+1.20.1 BOTH 6 LGPL-3.0-or-later
Distant Horizons (distanthorizons) 3.3.2 BOTH / CLIENT 17 LGPL
Embeddium (embeddium) 0.3.31+mc1.20.1 CLIENT 13 LGPL-3.0-only
Entity Model Features (entity_model_features) 3.2.4 CLIENT 4 LGPL-3.0
Entity Texture Features (entity_texture_features) 7.1 CLIENT 1 LGPL-3.0
EntityCulling (entityculling) 1.10.5 CLIENT 1 tr7zw Protective License; the patched classes are the bundled OcclusionCulling library (MIT)
Fowl Play (fowlplay) 1.1.2+1.20.1-forge BOTH 2 MIT
GeckoLib (geckolib) 4.8.4 BOTH / CLIENT 5 MIT
Goblins Tyranny (goblins_tyranny) 1.2.3-forge-1.20.1 BOTH 2 All Rights Reserved
Hostile Villages (hostilevillages) 1.20.1-5.7 BOTH 2 All rights reserved
Ice and Fire (iceandfire) 2.1.13-1.20.1-beta-5 BOTH / CLIENT 6 LGPL
ImmediatelyFast (immediatelyfast) 1.5.5 (Forge, +1.20.4 build) CLIENT 3 LGPL-3.0-or-later
ModernFix (modernfix) 5.27.77 BOTH / CLIENT 4 LGPL-3.0
Nether Depths Upgrade (netherdepthsupgrade) 3.1.5-1.20 BOTH 1 MIT
Occult (occult) 1.0.0 Alpha 5 BOTH 1 MIT
Oculus (oculus) 1.8.0 CLIENT 12 LGPL-3.0-only
Presence Footsteps (presencefootsteps) 1.20.1-1.9.1-beta.1 CLIENT 1 MIT
Radium Re-Reforged (radium) 0.14.3 BOTH 8 LGPL-3.0-only
Ryoamic Lights (ryoamiclights) 0.2.3+mc1.20.1 CLIENT 2 MIT
Sake's Structures (sakes_structures) 0.2.1-forge-1.20.1 BOTH 1 MIT
Scorched (mr_scorched) 1.1.3e BOTH 1 custom terms
Scuba Gear (scuba_gear) 1.20.1-1.0.6 BOTH 1 Modding Legacy Lesser Terms
Spawn (spawn) 4.0.7-1.20.1 BOTH 4 All Rights Reserved
Structure Gel API (structure_gel) 1.20.1-2.16.2 BOTH 1 GPL-3.0
Structurify (structurify) 2.0.34+mc1.20.1 BOTH 3 CC BY-NC-ND 4.0
Timeless and Classics Zero (tacz) 1.20.1-1.1.5 BOTH 2 GPL-3.0 / CC BY-NC-ND 4.0
Terramity (terramity) 0.9.8-forge-1.20.1 BOTH 1 All Rights Reserved
Trackwork (trackwork) 1.20.1-1.2.3 CLIENT repair only MIT code, all-rights-reserved assets
Under the Moon (underthemoon) 1.0.5 BOTH 1 not recorded
Valkyrien Skies (valkyrienskies) 2.4.11 (valkyrienskies-120-2.4.11) BOTH 15 Apache-2.0
Farmer's Delight (farmersdelight) 1.20.1-1.3.4 BOTH / CLIENT 2 MIT
Fusion (fusion) 1.3.14+a CLIENT 2 All Rights Reserved; only our own injection/helper code and record-hash memo are distributed
JEI (jei) 15.59.0.212 CLIENT 7 MIT
Relics (relics) 0.8.0.13 BOTH 2 All Rights Reserved; our own early-return injection only
Alex's Mobs (alexsmobs) 1.22.9 BOTH 2 LGPL
Almost Unified (almostunified) 0.11.0 BOTH 1 LGPL-3.0
Artifacts (artifacts) 9.5.16 BOTH 1 MIT
Bosses of Mass Destruction (bosses_of_mass_destruction) 1.1.2 BOTH 1 LGPL
CIT Reforged (citreforged) 1.0.2 BOTH 1 MIT
Citadel (citadel) 2.6.1 CLIENT 1 LGPL
CoFH Core (cofh_core) 11.0.2 CLIENT 1 CoFH "Don't Be A Jerk" license
Cooking for Blockheads (cookingforblockheads) 16.0.15 (Minecraft 1.20.1) BOTH 1 All Rights Reserved
Create (create) 6.0.8 BOTH 4 MIT
Critters and Companions (crittersandcompanions) 2.3.5 (Minecraft 1.20.1) BOTH 1 MIT
Cucumber (cucumber) 7.0.16 BOTH 1 MIT
Dungeons Delight (dungeonsdelight) 1.2.10 BOTH 1 AZURUNE License
Dynamic Trees (dynamictrees) 1.20.1-1.4.11 BOTH 2 MIT
FancyMenu (fancymenu) 3.9.14 CLIENT 1 DSMSL v3.1
FD Bosses (fdbosses) 3.1.0.3 (Minecraft 1.20.1) BOTH / CLIENT 2 All Rights Reserved
Immersive Engineering (immersiveengineering) 10.2.0-183 CLIENT 1 Blu's License of Common Sense
Jaden's Nether Expansion (netherexp) 2.3.5 BOTH 1 CC BY-NC-SA 4.0
Kiwi (kiwi) 11.8.28 BOTH 1 MIT
L2 Library (l2library) 2.5.1-slim (inside Ars Delight 1.2.2); 2.5.1 (inside Ars Delight 1.2.2) BOTH / CLIENT 2 LGPL-2.1
Legendary Monsters (legendary_monsters) 2.2.2 CLIENT 1 All Rights Reserved
Lionfish API (lionfishapi) 2.8 (3.0 has the same check); 3.0 (L_Ender's Cataclysm) BOTH / CLIENT 2 LGPL
Mowzie's Mobs (mowziesmobs) 1.7.3 BOTH 1 custom terms
Mutant Monsters (mutantmonsters) 8.0.7 BOTH 1 AGPL-3.0-or-later
Oh The Biomes We've Gone (biomeswevegone) 1.8.0 SERVER 1 All Rights Reserved
Particular (particular) 1.2.7 CLIENT 1 MIT
Pehkui (pehkui) 3.8.2 BOTH 1 MIT
Pipez (pipez) 1.20.1-1.2.26 BOTH 2 All Rights Reserved
Placebo (placebo) 8.6.3 BOTH 1 MIT
Regions Unexplored (regions_unexplored) 0.5.6+1.20.1 BOTH 1 All Rights Reserved
Ribbits (ribbits) 3.0.2 BOTH 1 LGPL-3.0
Simply Swords (simplyswords) 1.56.0-1.20.1 BOTH 1 Timefall Development License
SlashBlade: Resharped (slashblade) 1.9.65 CLIENT 1 MIT (art: All Rights Reserved)
Slice & Dice (sliceanddice) 3.6.0 BOTH 1 see the project's LICENSE.txt
Storage Drawers (storagedrawers) 12.15.1; 1.20.1-12.15.1 BOTH / CLIENT 2 MIT
TerraBlender (terrablender) 3.0.1.10 SERVER 2 LGPL-3.0

The exact JAR file names and SHA-256 digests of the tested builds are in upstream-credits.json. The reference pack's Spawn 4.0.7 build carried a local, data-only change; the patched classes are the stock ones. Better Combat, added as a target in 1.0.19, is the one target without an entry in mods.toml: its mixin targets one of Better Combat's own Mixin classes and needs no load ordering, and the guard still skips it on any other build.

Other versions of a target

The guard compares bytecode, not version strings. In practice:

  • A newer build of a target whose patched methods are unchanged still receives the patch.
  • A build whose patched methods differ is skipped, with WARN … skipped for <class> because the installed class does not match the supported version. The rest of that mod, and every other control, are unaffected.
  • For the two data-pack function fixes the comparison is a SHA-256 of the original function files; a changed Scorched or Sakes Structures keeps its own functions.
  • For the Trackwork repair the comparison is a SHA-256 of each model file; a changed model is served unmodified.

The guards are intended to leave changed targets untouched. They reduce compatibility risk; they do not guarantee compatibility with every combination of other mods. If a target update produces a skip line, that control is inactive until a Bons build supports it.

Loader and game versions

Supported
Minecraft 1.20.1 only
Forge 47.3.22 and newer within 47.x; tested 47.4.16
NeoForge, Fabric, Quilt not supported
Other Minecraft versions not supported (the mod's mods.toml refuses to load)

Living alongside other performance and compatibility mods

The reference pack that every measurement comes from runs Embeddium, ImmediatelyFast, ModernFix, FerriteCore, Radium, C2ME, Distant Horizons, Oculus, Entity Texture Features, Embedded Block Entities, Better Combat and Vivecraft. Specific interactions that were checked:

  • ModernFix: its density-function wrapper cache is left intact by terrain_density_memo, which memoises at a different layer. The two 1.0.16/1.0.18 terrain controls were qualified in the same pack with ModernFix, C2ME and every other mod present; other mods' density functions and the Nether's y-reading cache_2d are exactly the cases they leave to vanilla code.
  • Entity Texture Features: injects into Oculus' getBuffer; oculus_primitive_buffer_affinities preserves those hooks, and the production method with them passes separate output tests. Since 1.0.21 ETF is a target itself: etf_sprite_texture_id_memo replaces ETF's own hook on Material.buffer with an equal one that remembers each sprite's texture id (MixinSquared cancels the original only while the switch applies; another ETF build keeps its own).
  • Embedded Block Entities, Oculus, Valkyrien Skies all modify Embeddium's RenderSectionManager; the Embeddium controls preserve those call sites, and the native transformed class was audited.
  • C2ME: two generation-context fixes exist specifically because C2ME's CheckedThreadLocalRandom exposes mods that read the live world's random from a worker thread.
  • Distant Horizons: six generation-context fixes exist because content mods reach into the live world from DH's generation regions; DH itself now has seven controls covering rendering, generation, configuration and C2ME integration (the rough-surface density copy is only used after 256 probes of the copy and the original agree).
  • Radium: its hash palettes were included in the Valkyrien terrain-conversion oracles. Since 1.0.22 Radium is a target itself: two of its options are given back while the C2ME module that replaces each one is off, and its chunk drops go through vanilla's updateChunkTracking (see Radium Re-Reforged). Radium's mixin.ai.poi stays off (Valkyrien Skies forces it off; the two cannot coexist), and so does mixin.block.moving_block_shapes (Supplementaries' sliding blocks).
  • ModernFix (C2ME): mixin.perf.cache_strongholds is given back with exactly C2ME 0.2.0+alpha.12; release_protochunks, paper_chunk_patches and chunk_deadlock stay off because C2ME modules that are on here really overlap them.
  • C2ME: not patched. The restores read C2ME's own module entry points to see whether a module is on; the pack's C2ME profile itself is unchanged.
  • Better Combat, Vivecraft: their equipment hooks are in the Hell Strider fixture; custom player subclasses keep the original double read.
  • Collections Of Optimizations (tested 4.4): 24 controls make the same change as one of its options (four since 1.0.27: frame pacing, Architectury event dispatch, GeckoLib easing, the Alex's Caves magnet query; twenty more since 1.0.30). Exactly one copy of each runs: while COO's option for it is on, the Bons control steps aside; while it is off, the Bons control applies and leaves COO's mixin out. One log line per control says which. With 1.0.26 and earlier, COO 4.4 plus Alex's Caves crashed on the first magnetism tick. Run together again with 1.0.34 on 6 October 2026: generated terrain was identical with and without Bons and Furious.
  • Accelerated Rendering (tested 1.0.14 with Oculus 1.8.0): works together since 1.0.30; see oculus_entity_vertex_reuse. With 1.0.27 the two crashed the game when entities were drawn with shaders on.
  • TaCZ Tweaks: works together since 1.0.30; tacz_sync_scope steps aside while it is installed (see TaCZ). With 1.0.27 the game stopped at start.
  • FastChunkGen (tested 0.3) and LighterCitadel (tested 1.0): run together with 1.0.34 on 6 October 2026 without errors; details on Redundant mods.
  • Bye Pregen (tested 1.1.2.4 for Forge 1.20.1): run together with 1.0.34 on 6 October 2026; details on Redundant mods.
  • More mods run together with 1.0.34 on 6 October 2026, among them Canary, ServerCore, Krypton Reforged, Noisium and Rubidium: the results are on Compatibility, the cases worth knowing on Known conflicts and workarounds.

Which of these mods Bons and Furious replaces, which it only overlaps and which to keep is on Redundant mods.

This is a description of the tested pack, not a universal zero-overlap guarantee. If another mod's transformer changes one of the same methods first, the fingerprint no longer matches and the Bons control skips itself.

Mods that must not be installed together with this one

  • Bons Valkyrien Fixes / Bons to Be Afloat (any version): folded in at 1.0.15.
  • Bons Worldgen Compatibility 1.0.0: folded in at 1.0.11.
  • An older bons_pure_optimizations-<version>.jar next to bons_and_furious-<version>.jar: the two mod ids would load the same packages twice and Forge refuses to start. Remove the old JAR when updating to 1.0.16 or newer.

The first two would patch the same classes twice.

Bons and Furious

Minecraft 1.20.1 / Forge 1.0.34

Compatibility

Controls by mod

Links

Clone this wiki locally