Skip to content

Releases: ae2lt/Thunderbolt_lib

Thunderbolt_lib 1.0.11 Hotfix

Choose a tag to compare

@QianChang-official QianChang-official released this 31 May 03:42

Thunderbolt_lib 1.0.11 Hotfix

This hotfix adds a defensive guard around AE2LT lightning collection event amount write-back.

Assets

Thunderbolt_lib_1.21.1_neoforge_1.0.11-hotfix1.jar

  • Target: Minecraft 1.21.1 / NeoForge 21.1.x
  • AE2LT target: 1.0.11
  • Branch: main
  • SHA256: 007707e9d182643a78eee37e0b7c82e458b296e13d128a05f62f79999c447444

Thunderbolt_lib_1.20.1_forge_1.0.10-hotfix.1.jar

  • Target: Minecraft 1.20.1 / Forge 47.4.20
  • AE2LT target: 1.0.10-1.20.1forge
  • Branch: release/forge-1.20.1-v1.0.10
  • SHA256: e4fefaede64dfe6e1693b163e594c737faa5f65aa85578963ca5f846737d6393

Thunderbolt_lib_26.1.2_neoforge_1.0.0alpha-hotfix.1.jar

  • Target: Minecraft 26.1.2 / NeoForge 26.1.2.21-beta
  • AE2LT target: 1.0.0alpha-26.1.2neoforge
  • Branch: Minecraft26.1.2neoforge
  • SHA256: 5c1b2fc7da63d704cc2b29173ef28c3daca9fd1793aa9ba64a9b5f947559c673

Fixes

  • Added a defensive guard around mirrored AE2LT LightningCollectedEvent amount write-back.
  • Thunderbolt_lib now writes the mirrored amount back to the native AE2LT event only when an addon listener actually changes that amount.
  • This reduces unnecessary event bridge intervention in AE2LT's native lightning collection and storage insertion flow.

Validation

  • Rebuilt the NeoForge 1.21.1 line with ./gradlew.bat clean build --no-daemon.
  • Rebuilt the Forge 1.20.1 line with ./gradlew.bat clean build --no-daemon.
  • Rebuilt the NeoForge 26.1.2 line with ./gradlew.bat clean build --no-daemon.
  • Verified SHA256 checksums for uploaded assets.

Notes

  • Runtime mod id remains ae2lt_api.
  • This release does not modify AE2 or AE2 Lightning Tech.
  • Branch-local README files remain removed; canonical documentation is maintained on main.

Thunderbolt_lib 1.0.11

Choose a tag to compare

@QianChang-official QianChang-official released this 25 May 09:22

Thunderbolt_lib 1.0.11

Thunderbolt_lib 1.0.11 updates the NeoForge 1.21.1 main line for AE2 Lightning Tech 1.0.11.

Highlights

  • Added a reflective bridge for AE2 Lightning Tech 1.0.11's public PatternProviderUiProfile API.
  • Exposed the pattern-provider UI profile surface through AE2LTPatternProviderApi, AE2LTPatternProviderUiProfileInfo, AE2LTAPI, AE2LTNativeBridge, and AE2LTVersion.
  • Updated the NeoForge 1.21.1 main-line metadata to target AE2LT 1.0.11 and raised the runtime dependency floor accordingly.

Asset

Thunderbolt_lib_1.21.1_neoforge_1.0.11.jar

  • Target: Minecraft 1.21.1 / NeoForge 21.1.x
  • AE2LT target: 1.0.11
  • Branch: main
  • SHA256: 9c963a798b24c273a2327b054d4bab6abfed8126b68fc415e681e49636db183a

Existing maintained lines

  • Forge 1.20.1 remains available from Thunderbolt_lib 1.0.10 Unified Release.
  • NeoForge 26.1.2 remains available from Thunderbolt_lib 1.0.10 Unified Release.

Validation

  • Rebuilt Thunderbolt_lib_neoforge_1.21.1 with ./gradlew.bat clean build --no-daemon.
  • Verified the uploaded NeoForge 1.21.1 output jar.
  • Verified the SHA256 checksum for the uploaded asset.

Notes

  • Runtime mod id remains ae2lt_api.
  • Public asset filenames stay normalized even when internal mod_version metadata includes loader-specific or Minecraft-specific suffixes.
  • Unchanged maintained-line assets are not duplicated across release tags.

Thunderbolt_lib 1.0.10

Choose a tag to compare

@QianChang-official QianChang-official released this 20 May 10:41

Thunderbolt_lib 1.0.10 Unified Release

This release now bundles all currently maintained Thunderbolt_lib lines in one GitHub Release entry.

Assets

  • Thunderbolt_lib_1.20.1_forge_1.0.10.jar
    • Target: Minecraft 1.20.1 / Forge 47.4.20
    • AE2LT target: 1.0.10-1.20.1forge
    • Branch: release/forge-1.20.1-v1.0.10
    • SHA256: 073df73e389b0a08455dca8dcdfe4744c1815fdef192f933c46c7a057e09ae6e
  • Thunderbolt_lib_1.21.1_neoforge_1.0.10.jar
    • Target: Minecraft 1.21.1 / NeoForge 21.1.x
    • AE2LT target: 1.0.10
    • Branch: main
    • SHA256: 7243e0bea90e094c7c1ab1816b5b8034547385ce5e98d42b42f90394a3223b5a
  • Thunderbolt_lib_26.1.2_neoforge_1.0.0alpha.jar
    • Target: Minecraft 26.1.2 / NeoForge 26.1.2.21-beta
    • AE2LT target: 1.0.0alpha-26.1.2neoforge
    • Branch: Minecraft26.1.2neoforge
    • SHA256: bf53e408dd65990e5ddcbb4c9acfa31eb4eb2e06261d963419d2fd7913fa3447

Forge 1.20.1 line

  • Ports Thunderbolt_lib to Forge 1.20.1 with ForgeGradle 6 and Java 17.
  • Adapts capability registration and event wiring from NeoForge APIs to Forge APIs.
  • Uses Forge registry lookup in AE2LTReflection.shouldAttachBridge() to avoid the runtime remapping failure triggered by BuiltInRegistries.BLOCK_ENTITY_TYPE during combined launches.

Existing maintained lines

  • Keeps the NeoForge 1.21.1 stable artifact available under the same unified release tag.
  • Keeps the isolated NeoForge 26.1.2 port artifact available, now under the normalized public filename Thunderbolt_lib_26.1.2_neoforge_1.0.0alpha.jar.

Validation

  • Rebuilt Thunderbolt_lib_forge_1.20.1 with ./gradlew.bat clean build --no-daemon.
  • Verified the Forge output jar: build/libs/Thunderbolt_lib-1.0.10-1.20.1forge.jar.
  • Pushed branch release/forge-1.20.1-v1.0.10 to GitHub.

Notes

  • Runtime mod id remains ae2lt_api on every line for addon compatibility.
  • Public asset filenames stay normalized even when internal mod_version metadata includes loader-specific suffixes.

Thunderbolt_lib 1.0.8

Choose a tag to compare

@QianChang-official QianChang-official released this 16 May 09:33

Thunderbolt_lib 1.0.8

  • Aligns Thunderbolt_lib with AE2 Lightning Tech 1.0.8.
  • Adds a reflective read-only bridge for AE2LT's public wireless frequency API: bound-frequency id lookup, frequency metadata snapshots, transmitter location snapshots, and validity checks.
  • Adds facade methods and runtime detection helpers for the public frequency API while keeping AE2LT classes out of Thunderbolt_lib public signatures.
  • Bumps runtime metadata to require AE2LT 1.0.8+.

Validation: ./gradlew.bat build

Thunderbolt_lib 1.0.7

Choose a tag to compare

@QianChang-official QianChang-official released this 14 May 05:39

Fixed

  • AE2LTLightningCollectorEventBridge no longer intercepts lightning entity ticks ahead of AE2LT. It now mirrors AE2LT's public com.moakiee.ae2lt.api.event.LightningCollectedEvent, keeping cancellation and amount rewrites inside AE2LT's native collector capture path.

Changed

  • Bumped Thunderbolt_lib/API metadata to 1.0.7 and advanced the target AE2LT version to 1.0.7.
  • Updated LightningCollectedEvent documentation and README text to describe the collector event as a mirror of AE2LT's public event.
  • Cached the native AE2LT collector event method contract up front and tightened fail-closed compatibility logging.

Verification

  • Validation scope for this release: GameTest integration verification, client startup compatibility, and bridge-focused log scanning.
  • Verified natural EHV storage, artificial HV storage, natural-strike crystal cultivation / lightning-rod side effects, and a natural-only lightning ritual path.
  • Built successfully with ./gradlew.bat build.

Compatibility

  • No reappearance of AE2LT's natural-lightning interception warning and no AE2LT compatibility bridge failed to initialize messages were observed during the bridge-focused log scan.
  • Existing unrelated AE2LT dev-environment loot / recipe parse errors remain outside the scope of this library release.

Thunderbolt_lib 1.0.6

Choose a tag to compare

@QianChang-official QianChang-official released this 11 May 12:05

Added

  • Added AE2LTFrequencyBinding, a reflective helper facade for AE2LT's internal FrequencyBindingHost contract.
  • Added AE2LTAPI facade methods for frequency host detection, frequency id read/write/clear, connection state, and grid channel counts.
  • Added AE2LTNativeBridge#frequencyBindingHelperClassName().

Changed

  • Bumped Thunderbolt_lib/API metadata to 1.0.6 and target AE2LT version to 1.0.6.
  • Updated NeoForge metadata dependency on AE2LT to [1.0.6,).

Compatibility

  • Public API and recipe schema coverage remain additive and backward-compatible with Thunderbolt_lib 1.0.5 symbols.
  • Frequency-binding helper calls fail closed when AE2LT is absent or the target is not a frequency-binding host.

Verification

  • Built successfully with ./gradlew.bat clean build.

Thunderbolt_lib 1.0.5

Choose a tag to compare

@QianChang-official QianChang-official released this 06 May 15:08
35fc4e7

Thunderbolt_lib 1.0.5 — tracks AE2 Lightning Tech 1.0.5.

What's Changed

Added

  • Frequency-binding detectionAE2LTNativeBridge#isFrequencyBindingAvailable(), AE2LTAPI#isAE2LTFrequencyBindingAvailable(), plus AE2LTVersion constants and version gate. These let addons detect AE2LT 1.0.5's internal BE-level frequency-binding host without hard-binding to non-API symbols.
  • Reflection cacheAE2LTReflection now memoizes findMethod/findField in ConcurrentHashMaps, eliminating repeated class-hierarchy walks on every lightning tick.

Changed

  • Version bumped to 1.0.5 across gradle.properties, API_VERSION, and target/verified constants.
  • CHANGELOG and bilingual READMEs updated.

Repository hygiene

  • .vscode/launch.json removed from git tracking; .vscode/ added to .gitignore.

Compatibility

  • AE2LT 1.0.5 did not change its first-party public API (com.moakiee.ae2lt.api) or recipe schemas, so all recipe builders and bridge block-entity IDs remain unchanged.
  • All existing Thunderbolt_lib 1.0.4 Java API symbols are preserved; this release is purely additive.

Full Changelog: https://github.com/QianChang-official/Thunderbolt_lib/blob/main/CHANGELOG.md

Thunderbolt_lib 1.0.4

Choose a tag to compare

@QianChang-official QianChang-official released this 04 May 08:11
50e6add

Summary

  • Aligns Thunderbolt_lib with AE2 Lightning Tech 1.0.4.
  • Adds AE2LTVersion runtime version helpers and version facade methods on AE2LTAPI.
  • Adds capability ID helpers on AE2LTNativeBridge.
  • Adds AE2LT first-party naming aliases on ILightningEnergyHandler and LightningEnergyTier.
  • Updates metadata to require AE2LT [1.0.4,).

Compatibility

AE2LT 1.0.4 does not change the public first-party API package, recipe schemas, or bridge block-entity IDs compared with 1.0.3. Thunderbolt_lib 1.0.4 keeps existing 1.0.3 API symbols and adds only conservative helper interfaces, apart from the tighter AE2LT runtime dependency range.

Verification

  • ./gradlew.bat clean build
  • Built asset: Thunderbolt_lib-1.0.4.jar

Thunderbolt_lib 1.0.3 - AE2LT 1.0.3 alignment

Choose a tag to compare

@QianChang-official QianChang-official released this 03 May 13:10

摘要 / Summary

跟进 AE2-Lightning-Tech 1.0.3 上游发布,纯加法、零破坏性变更。AE2LT 在 1.0.2 起开始提供自带 first-party API(com.moakiee.ae2lt.api,命名空间 ae2lt),本版本在保持 ae2lt_api 命名空间独立的前提下,新增了 ID 常量、Codec 工具与原生 API 探测桥,使得本库与 AE2LT 自带 API 在 ID / 序列化层面互通。

Tracks the AE2-Lightning-Tech 1.0.3 upstream release. Purely additive, zero breaking changes. AE2LT introduced its own first-party API package (com.moakiee.ae2lt.api, namespace ae2lt) starting from 1.0.2; this release adds ID constants, codec helpers, and a native-API detection bridge so the two APIs stay namespace-distinct but ID / wire-format interoperable.

新增 API / Added

  • api/ids/AE2LTBlockEntityIds:6 个 BE 的 ResourceLocation 冻结常量,以及 LIGHTNING_GRID_MEMBERS 列表(5 个并网机器)
  • api/ids/AE2LTRecipeIds:6 个配方类型的 ResourceLocation 冻结常量
  • api/bridge/AE2LTNativeBridge:isNativeApiAvailable() / nativeNamespace() / libraryNamespace() / toNativeTierName(LightningEnergyTier)
  • LightningEnergyTier.CODEC:Mojang Codec<LightningEnergyTier>
  • LightningEnergyTier.STREAM_CODEC:StreamCodec<RegistryFriendlyByteBuf, LightningEnergyTier>,ordinal 字节级与 AE2LT 自带 LightningTier.STREAM_CODEC 互通
  • LightningEnergyTier.fromOrdinal(int)
  • LightningCollectedEvent.isNaturalWeather() + 5 参构造(旧 4 参构造保留)

兼容性 / Compatibility

  • 1.0.2 全部公开签名、序列化名、capability id、recipe id 完整保留。
  • 旧 addon 升级到 1.0.3 仅需更新依赖坐标版本号,无需改源码。
  • LightningCollectedEvent 旧 4 参构造保留,自动 naturalWeather=false

命名空间区隔 / Namespace separation

Library AE2LT first-party
Java package com.qianchang.ae2lt_api.api.* com.moakiee.ae2lt.api.*
Namespace ae2lt_api ae2lt
Capability id ae2lt_api:lightning_energy ae2lt:lightning_energy

两套 API 有意分开,本库不会做隐式桥接;AE2LTNativeBridge 仅做存在性探测。

完整变更见 CHANGELOG.md

Thunderbolt_lib 1.0.2

Choose a tag to compare

@QianChang-official QianChang-official released this 02 May 17:27

跟进 AE2LT 1.0.2 发布版本号,内容与 1.0.1 完全一致(byte-identical apart from version strings)。

Changed

  • Bumped mod_version and AE2LTCapabilities.API_VERSION to track the AE2LT 1.0.2 release line.
  • No functional changes from 1.0.1; jar contents are byte-identical apart from the version strings.

Compatibility

  • Minecraft 1.21.1 / NeoForge 21.1.x / Java 21
  • Runtime mod id: ae2lt_api(保持向后兼容)
  • 与上游 AE2-Lightning-Tech 1.0.0+ 兼容(已按 1.0.2 配方 Schema 对齐)

完整变更说明详见 CHANGELOG.md