promotional bannermobile promotional banner

TorcherinoAE

An Applied Energistics 2 addon adding an AE-powered Accelerator with upgrade-card multipliers and crafting-CPU smart boosting, plus a no-cable area Torcherino, to speed up AE2 machines.
Back to Files

torcherino_ae_mod-1.01.jar

File nametorcherino_ae_mod-1.01.jar
Uploader
Yiran_crYiran_cr
Uploaded
Sep 4, 2026
Downloads
21
Size
217.1 KB
Mod Loaders
NeoForge
File ID
8806661
Type
B
Beta
Supported game versions
  • 1.21.1

Curse Maven Snippet

NeoForge

implementation "curse.maven:torcherinoae-1680384:8806661"

Learn more about Curse Maven

What's new

Changelog — Torcherino AE

The changes committed between the baseline and HEAD correspond to the version bump 1.0.0-1.21.1 → 1.01; the remaining working-tree changes are not yet versioned.

Added

  • AE Acceleration Torch I & II — two new tiered torch variants with fixed speed caps (64x and 324x). Their limits are not governed by the torcherino.maxSpeed config; placed torches default straight to their tier cap.
  • TPS-adaptive throttling (AdaptiveThrottle) — a process-wide dynamic "cap lock" for the per-source tick-call budget. Server tick timing is sampled (EMA-smoothed, hysteresis thresholds), and under heavy load the budget is halved tier by tier until the tick time recovers. Both accelerators and torches share this throttling.
  • New server config group adaptive.* — enabled, floorCallsPerSource, tightenMs, relaxMs (defaults true / 256 / 45 / 35).
  • New config crafting.smartAccelerateScope (enum SmartAccelerateScope) — ALL_ACCELERATABLE (default) links every acceleratable device on the grid for smart acceleration with zero configuration (works with third-party AE machines); CRAFTING_MACHINES restricts linkage to crafting machines.
  • Accelerator Config Card: Crafting CPU group binding — right-clicking any formed member of a Crafting CPU multiblock now binds/unbinds the whole group (single group identifier + stored bounding-box geometry). New localized messages bind_cpu_success / unbind_cpu_success, updated card tooltip.
  • Accelerator Config Card: self-cleaning bindings — new ConfigCardCleanup server coordinator (listens to BlockEvent.BreakEvent, ExplosionEvent.Detonate, ServerTickEvent.Post):
    • Plain devices (block entities / cable parts) that are mined or exploded are removed from cards in online players' inventories and from accelerator slots on the same grid, one tick after the block is confirmed gone; the corresponding CONFIG_CARD injections are revoked precisely.
    • Crafting CPU multiblock demolition (AE2 vanilla + AdvancedAE big CPU, soft-compatible): after a member block is removed, the whole cluster snapshot is observed for 4 ticks until AE2 finishes its "disband + re-form" resolution. If one formed cluster survives → the card binding is re-pointed to the new cluster (new min-corner id + new geometry); if nothing survives or it splits into several groups → the binding is deleted.
    • Deliberately conservative: cards inside un-enumerable containers (chests, ME storage) and offline-player inventories are left to self-heal on next use; unloaded chunks abort the verdict.
  • New pure-data lifecycle API on ConfigCardData — removeCpuBinding, replaceCpuBinding, purgeRemovedBlockDevices, isDeviceBound, plus immutable helpers withoutCpu, withCpuReplaced, withoutBlockDevicesAt.
  • CraftingSupport.CpuGroup member snapshotting — new cpuGroupOf(BlockEntity, boolean includeMembers) and unified structural view across AE2 vanilla and AdvancedAE large CPUs (soft reflection, no hard dependency).

Changed

  • AE Acceleration Torch rewritten and decoupled — it no longer implements IAccelerationSource nor goes through AccelerationEngine. It now works Torcherino-style with three parallel acceleration paths: repeated AE-grid device ticks (IGridTickable), repeated vanilla block-entity tickers (EntityBlock.getTicker), and repeated random ticks (BlockState.randomTick). Target scans run every 20 ticks with immutable snapshots; block-entity type is re-verified before each invocation to avoid accelerating replaced blocks. Budget is enforced per call via the shared adaptive throttle. Torches can now accelerate any suitable block, not only AE machines.
  • Upgrade-card multiplier algorithm — diminishing returns — the old exponential stacking per tier is replaced by "first card of each tier applies its full nominal factor, each additional same-tier card converges via retention". New config acceleratorCardDiminishing (default 0.45); setting it to 1.0 fully restores the old exponential behavior. Overflow handling now clamps via double checks to Integer.MAX_VALUE. Reference point: 4× tier-III cards go from 16384x down to ≈526x.
  • Accelerator device compatibility widened — machines that are on the AE grid but process through vanilla tickers are now supported (AccelerationTarget.vanillaTicker, engine/target rebuild adapted). The device list and menu now treat "grid-ticking or on-grid-but-vanilla-ticking" devices uniformly.
  • Smart-acceleration default scope widened to all acceleratable devices on the grid (ALL_ACCELERATABLE), so third-party AE work machines are accelerated out of the box.
  • Config Card binding now covers Crafting CPUs when seated in an accelerator slot: bound CPU groups are treated like "selected for smart acceleration" (enumeration via the grid's crafting service).
  • Config Card data invariants strengthened — stored CPU bounding-box geometry is kept consistent with the device list on every write (dedupe, stable sorting, stale-geometry trimming).
  • Localization updated — en_us / zh_cn tooltips for the config card and upgrade cards reworded; new CPU binding keys added.
  • Version bumped to 1.01 (gradle.properties); README and AGENTS.md rewritten/synced.

Fixed

  • Torches no longer target each other (prevents recursive acceleration loops), and replaced blocks are no longer accelerated after a rescan.
  • Stale card bindings pointing to destroyed devices/CPU groups no longer linger in saves or cause re-injection when the card is re-inserted or a new block appears at the same coordinates.
  • Partially dismantled CPU groups no longer keep outdated geometry: the card highlight and injections follow the cluster's real re-formed bounds.
  • Old exponential formula's long-overflow paths hardened via double-based clamping.

Testing

  • MultiplierCalculatorTest: cases for full-value first cards, mixed-tier parity with the old formula, the ≈526x reference result, retention 1.0 restoring legacy behavior, parameterized overload, and int-overflow clamping.
  • ConfigCardDataTest: coverage for coordinate-based device purging (dimension-aware, CPU entries untouched), whole-group CPU deletion, and re-form re-binding with moved anchors and geometry refresh.

This mod has no additional files