Synchronize 26.3 runtime Ages and travel with multiplayer clients #100

Open
opened 2026-10-27 00:05:40 -04:00 by dnorberg · 1 comment
Owner

Part of #96. Make runtime Age creation and removal visible to connected clients and reconnecting clients. Use supported 26.3 NeoForge networking where possible and verify the exact synchronization order before teleportation.

Acceptance criteria:

  • A connected player can enter a newly created Age without reconnecting.
  • A second connected client receives the new dimension and can travel to it.
  • Reconnect after creation and server restart both work.
  • A synchronization failure reports an error and leaves the player in the source dimension.
  • Dedicated-server behavior is tested, not inferred from singleplayer.
Part of #96. Make runtime Age creation and removal visible to connected clients and reconnecting clients. Use supported 26.3 NeoForge networking where possible and verify the exact synchronization order before teleportation. Acceptance criteria: - A connected player can enter a newly created Age without reconnecting. - A second connected client receives the new dimension and can travel to it. - Reconnect after creation and server restart both work. - A synchronization failure reports an error and leaves the player in the source dimension. - Dedicated-server behavior is tested, not inferred from singleplayer.
dnorberg added this to the Dual-version support milestone 2026-10-27 00:05:40 -04:00
Author
Owner

26.3 port progress (not release-ready): added versioned Age-catalog payload/ack on login and runtime create/retire; operator travel probe refuses unacknowledged or missing destinations. Dedicated server with two simultaneous clients acknowledged a new Age without reconnecting. A second client entered a runtime Age; after restart/reconnect it remained in that Age. Empty-Age retirement updated the connected client; a stale intermediate ack was ignored, travel to the retired Age stayed in the source Age, and occupied-Age retirement was refused. Both 1.21.1 and 26.3 builds pass. Normal book travel, authored dimension types/generators, integrated-client regression, and full registry sync remain; keeping this issue open. Details: docs/MINECRAFT_26_3_PORT.md.

26.3 port progress (not release-ready): added versioned Age-catalog payload/ack on login and runtime create/retire; operator travel probe refuses unacknowledged or missing destinations. Dedicated server with two simultaneous clients acknowledged a new Age without reconnecting. A second client entered a runtime Age; after restart/reconnect it remained in that Age. Empty-Age retirement updated the connected client; a stale intermediate ack was ignored, travel to the retired Age stayed in the source Age, and occupied-Age retirement was refused. Both 1.21.1 and 26.3 builds pass. Normal book travel, authored dimension types/generators, integrated-client regression, and full registry sync remain; keeping this issue open. Details: docs/MINECRAFT_26_3_PORT.md.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: dnorberg/rivencraft#100