Skip to content

Port 26.1.2 - #44

Open
Saereth wants to merge 11 commits into
AlmostReliable:26.1from
Saereth:port-26.1.2
Open

Port 26.1.2#44
Saereth wants to merge 11 commits into
AlmostReliable:26.1from
Saereth:port-26.1.2

Conversation

@Saereth

@Saereth Saereth commented Jul 30, 2026

Copy link
Copy Markdown

Continues #41 by @AlmanaX-21, which got the bulk of the mechanical renames in place. This branch builds on that work and finishes the parts that were still outstanding.

Proposed Changes

Ports the mod from 1.21.1 to 26.1.2 (NeoForge 26.1.2.76, Java 25, FML 11)

  • blocks and block states
    • DirectionProperty was removed, so FACING/BOTTOM becomes EnumProperty<Direction>
    • neighborChanged received an Orientation instead of the neighbour BlockPos
    • Block#appendHoverText was removed, so the monitor's tooltip had to be moved to a new MonitorBlockItem
  • block entities
    • saveAdditional/loadAdditional/handleUpdateTag moved to ValueOutput/ValueInput
    • Level#blockUpdated is gone, replaced by updateNeighborsAt
  • energy handling
    • migrated to the net.neoforged.neoforge.transfer API: insert/extract with a TransactionContext, getAmountAsLong/getCapacityAsLong, and a SnapshotJournal so a rolled-back transaction doesn't leave an incorrect throughput on the meter
    • the simulate bool is replaced by probing outputs inside a nested transaction that is never committed
    • the internalEnergyHandler is renamed to MeterEnergyHandler, since 26.1 has its own EnergyHandler capability interface and the collision would otherwise force some ugly FQNS throughout, can revert if you prefer it that way.
  • menus and networking
    • ResourceLocation to Identifier, and the CompoundTag getters that now return Optional
  • screens and widgets
    • rewritten for the extract pipeline (send help): renderWidget -> extractWidgetRenderState, drawString -> text, renderTooltip -> setTooltipForNextFrame, and blit now takes the RenderPipeline
    • BlockEntityRenderer<T> becomes BlockEntityRenderer<T, S>, so MeterRenderer splits into createRenderState/extractRenderState/submit
  • datagen
    • rewrote the model providers onto vanilla ModelProvider + MultiVariantGenerator, with the monitor's per-face variants emitted as ModelInstance
    • RecipeProvider is no longer a DataProvider, so recipes go through RecipeProvider.Runner
  • test mod and game tests
    • @GameTest/@GameTestHolder were removed in 1.21.x so tests are now registered through RegisterGameTestsEvent with a GameTestInstance type

I threw a build of this on our 26.1 In Dev pack and we'll be giving it a proper testing tomorrow, will fix anything we find. I'll check back for any revisions then as well. Cheers

@rlnt rlnt mentioned this pull request Jul 30, 2026

@rlnt rlnt left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looking quite good already. Since you enabled the CC: Tweaked dependency, could you adopt the following pull request adding support?
#42

And please grab the commit for the French translations as well, so the branch is up-to-date with the changes on 1.21.1.

Ports AlmostReliable#42 onto 26.1.2.

Co-authored-by: TrickShotMLG <43967908+TrickShotMLG02@users.noreply.github.com>

Co-authored-by: Relentless <16513358+rlnt@users.noreply.github.com>
@Saereth
Saereth requested a review from rlnt July 30, 2026 15:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants