Ludovic Marie
6fab5eb279
Merge branch 'main' into parity-base
...
# Conflicts:
# README.md
# crates/horizon-client/src/game.rs
2026-10-12 19:02:09 +02:00
Ludovic Marie
14bff2518f
Merge branch 'parity/raids' into parity-base
...
# Conflicts:
# README.md
# docs/rust-parity.md
2026-10-12 17:50:53 +02:00
Ludovic Marie
c195cd3239
Merge branch 'parity/tablist-border' into parity-base
...
# Conflicts:
# README.md
# crates/horizon-client/src/lib.rs
# docs/rust-parity.md
2026-10-12 17:50:31 +02:00
Ludovic Marie
69b191b1f4
Merge branch 'parity/loom-crafter' into parity-base
...
# Conflicts:
# README.md
# crates/horizon-client/src/game/dispense_fixture.rs
# docs/rust-parity.md
# mods/horizon/src/test/java/dev/horizonlab/parity/VanillaDispenserOracle.java
2026-10-12 17:48:44 +02:00
Ludovic Marie
b6fa612bee
Merge branches 'parity/tooling', 'parity/score-subtitles' and 'parity/block-followups' into parity-base
2026-10-12 17:47:58 +02:00
Ludovic Marie
e5dc127ab2
Document scoreboards, teams and subtitles and their harnesses
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-12 17:39:55 +02:00
Ludovic Marie
05228e0fe2
Document the loom, crafter and recipe book harnesses
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-12 17:39:45 +02:00
Ludovic Marie
8f80f8decf
Document block entity removal, immediate drops and copper golems
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-12 17:33:49 +02:00
Ludovic Marie
515d15d36f
Merge the integration branch into parity/tablist-border
...
Keep the integration branch's StringSplitter port and HUD overlays: the tab
list now emits hud_layout::GuiDraw calls and wraps with its split_lines, and
the vignette's border warning comes from WorldBorder::warning_strength
through hud_overlays::border_warning.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-12 17:25:13 +02:00
Ludovic Marie
70992eb815
Document the patrol and raid harness and its scope
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-12 16:43:32 +02:00
Ludovic Marie
95c7e7ad2a
Document the player list and world border parity harnesses
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-12 16:08:40 +02:00
Ludovic Marie
83bcfb15af
Docs: professional README and no personal details
...
Restructure the README around what Horizon is, its status, how to build it
from your own copy of the game, and its parity table. The Java performance
pack material and the research lab notes move to docs/java-packs.md and
docs/research-lab.md. The target platform is stated generically instead of
naming a machine, the stale list of missing mobs is dropped in favour of the
audited table, and the legal notice follows Mojang's usage wording.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-12 02:14:10 +02:00
Ludovic Marie
be1352b4dc
Target ludodesktop only and drop the M2 Mac from scope
...
The Rust rewrite now targets one Linux machine (Ubuntu 26.04, i7-13700KF,
RTX 4080, GNOME on Wayland). macOS and Windows are out of scope; the Java
packs, including the Mac starter, remain available but are no longer developed.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-08 11:18:30 +02:00
Ludovic Marie
08b8e71838
Drop Windows from scope and add a native client packager
...
Horizon now targets Linux and macOS only: remove the Windows CI runners and
wgpu's DX12 backend, and update the scope docs. The Ubuntu RTX 4080 desktop
becomes the first physical Linux target. tools/package_native_client.py bundles
a release build with its prepared resources and a launcher for playing on
another machine of the same platform.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-08 10:48:58 +02:00
Ludovic Marie
a13799e042
Add title screen with world selection and creation
...
The game opens on a vanilla-style title screen (logo, Singleplayer,
Quit) over the spinning title panorama. Select World lists saves by
last play with game mode; Create New World takes a name, a seed
(numbers or text hashed like vanilla) and the game mode, and finds a
free folder name. Save and Quit returns to the title. README and the
parity status now describe the playable Rust game.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
2026-10-08 01:44:42 +02:00
Ludovic Marie
59676c6e84
Connect native-validated player motion to fixed-rate walking controls
2026-10-07 15:45:47 +02:00
Ludovic Marie
c109f91cc5
Connect resident client chunks to native-validated world collisions
2026-10-07 14:42:44 +02:00
Ludovic Marie
f249a55f35
Synchronize registered effect particles, invisibility and glowing state
2026-10-07 14:19:54 +02:00
Ludovic Marie
4a2fcedbd3
Bind registered attribute refresh to native entity update consequences
2026-10-07 13:51:15 +02:00
Ludovic Marie
794b447b0c
Bind live registered attributes to health and hunger calculations
2026-10-07 13:27:16 +02:00
Ludovic Marie
2339ed4ccb
Verify live registered attributes against both vanilla JARs
2026-10-07 13:22:28 +02:00
Ludovic Marie
b70806176e
Preserve attribute query fallback, caches and captured base reset targets
2026-10-07 12:53:20 +02:00
Ludovic Marie
55846d2fc0
Bind entity effect notifications to concrete attribute maps and queues
2026-10-07 12:38:24 +02:00
Ludovic Marie
76b3bdc237
Bind effect modifiers to lazy attribute instances and native dirty queues
2026-10-07 12:23:28 +02:00
Ludovic Marie
6a33b0c148
Match effect attribute templates and permanent modifier callback ordering
2026-10-07 12:07:19 +02:00
Ludovic Marie
11dda868af
Validate live object-map entries and callback traversal against vanilla
2026-10-07 11:52:45 +02:00
Ludovic Marie
636f1648f0
Bind attribute refresh to health limits and waypoint update ordering
2026-10-07 11:39:35 +02:00
Ludovic Marie
a772a69498
Match effect eligibility and attribute/passenger notification ordering
2026-10-07 11:31:39 +02:00
Ludovic Marie
f9d8277b73
Preserve fastutil attribute-set storage and live iterator behavior
2026-10-07 11:19:02 +02:00
Ludovic Marie
05cdc7573a
Integrate entity effect ticking, expiration and client particles
2026-10-07 11:09:59 +02:00
Ludovic Marie
32c53db88a
Bind consumable effects to shared entity status storage
2026-10-07 11:01:50 +02:00
Ludovic Marie
09f4c72dcb
Match active status effect storage and lifecycle notifications
2026-10-07 10:56:23 +02:00
Ludovic Marie
aad69bc4f3
Match status effect countdown, hidden restoration and client blending
2026-10-07 10:32:07 +02:00
Ludovic Marie
85923d20af
Compose consumable start and completion with food and particle behavior
2026-10-07 09:58:37 +02:00
Ludovic Marie
0c85e0f5c2
Compose item completion with validated remainders and cooldowns
2026-10-07 09:25:56 +02:00
Ludovic Marie
c45d0c7965
Match item-use start equipment synchronization and flag ordering
2026-10-07 06:42:53 +02:00
Ludovic Marie
9d65e24286
Compose server-player hurt gates with live health and hunger storage
2026-10-07 05:36:49 +02:00
Ludovic Marie
a6966ab450
Mesh resident block models with native culling and UV-aware merging
2026-10-06 22:30:16 +02:00
Ludovic Marie
f5ba959cdc
Match native neighboring block-face visibility and suppression
2026-10-06 22:10:44 +02:00
Ludovic Marie
1a88d6c300
Render registry-bound variants and multipart block models
2026-10-06 21:59:03 +02:00
Ludovic Marie
90a76bc0aa
Match vanilla blockstate transforms and UV-locked baking
2026-10-06 21:49:27 +02:00
Ludovic Marie
f286aa24e1
Match weighted model choice and multipart random consumption
2026-10-06 21:31:55 +02:00
Ludovic Marie
1d0b537a0a
Bind vanilla blockstate selectors and multipart model parts
2026-10-06 21:26:47 +02:00
Ludovic Marie
54a2b552ee
Decode vanilla blockstate variants and multipart conditions
2026-10-06 21:16:15 +02:00
Ludovic Marie
b3a508dba8
Match native numeric scanner rejection in model resources
2026-10-06 21:09:56 +02:00
Ludovic Marie
81ea783e35
Match vanilla sprite animation metadata and tick selection
2026-10-06 21:05:55 +02:00
Ludovic Marie
6a4add0c67
Render baked vanilla models and animated cutout sprites natively
2026-10-06 20:47:09 +02:00
Ludovic Marie
8c7d8f6416
Bake vanilla cuboid geometry with native float-bit validation
2026-10-06 20:30:09 +02:00
Ludovic Marie
f0a03aea52
Resolve vanilla model inheritance and texture aliases
2026-10-06 20:17:53 +02:00
Ludovic Marie
9dbd93192f
Decode pinned cuboid models and verify native client semantics
2026-10-06 20:10:30 +02:00