Public Access
Port live instability, writing recovery and Link Modifier controls to 26.3
Build / build (push) Waiting to run
Build / build (push) Waiting to run
This commit is contained in:
1 parent
d2904eaa8d
commit
32c52e635f
41 files changed
+2611
-77
No files matched your search
@@ -2326,3 +2326,265 @@ The user passed .120 and authorized commit, push and publication of the accumula
|
||||
implemented libraries, fallback crystal portals and partial instability/decay from
|
||||
remaining gameplay and optional-integration parity. Tracking issues #98/#102/#104
|
||||
remain open; #114 still requires the matching 1.21.1 fix.
|
||||
|
||||
|
||||
## .121 lightning/explosion providers
|
||||
|
||||
The player passed .120. Adapted the 1.21.1 hazard implementation, independent hazard
|
||||
scheduler lane, loaded-only ring candidates, Legacy aggregated rates, bounded explosion
|
||||
calculator, entity/Creative policy, protected-block/spawn checks and event guards.
|
||||
Modern differences: EntityTypes registry constants, explicit entity spawn reason,
|
||||
server damage API, gamerule registry, spatial fire-spread permission, BreakBlockEvent,
|
||||
and explosion damage exposure argument. Since Level.explode now returns void, the
|
||||
calculator retains its approved positions for bounded post-blast fire and records
|
||||
whether an uncancelled explosion actually began. Lightning dispatch also reports
|
||||
whether its entity was accepted. Existing optional mods are not required.
|
||||
|
||||
Per-Age modern SavedData persists attempt count and separate hazard cooldowns (with
|
||||
the meteor field retained for the next provider port). Default config matches 1.21.1.
|
||||
Added OP `/rivencraft_port instability hazard lightning|explosions` to skip probability
|
||||
without bypassing cooldowns, loaded terrain, Age/config/provider policy or spawn
|
||||
exclusion. Console sources may supply dimension/position explicitly. Neither the
|
||||
command nor provider registration changes saved instability scores/decks.
|
||||
|
||||
Version 1.0.1.121-beta.1 builds and starts a dedicated server. The user offered manual
|
||||
damage/block-destruction testing, so the temporary server was stopped before running
|
||||
those fixtures and the world removed. Effects, visual/audio behavior, damage/block
|
||||
caps and policy/restart checks are handed over; they are not reported as tested.
|
||||
No new permanent GameTests, commit, push or publication. Meteor, burning, erosion,
|
||||
crumble, full grammar recovery and live material profiling remain pending.
|
||||
|
||||
|
||||
## .122 meteor provider
|
||||
|
||||
The player passed .121. Extracted the meteor-specific portion of the existing 1.21.1
|
||||
AgeEnvironmentalProviders into a focused modern provider. The effect remains the
|
||||
30-tick flame/smoke flight and roar followed by a strength-3 bounded impact, without
|
||||
inventing a new rendered entity. Natural chance, randomized chunk/central coordinates,
|
||||
48-block descent height, headroom/spawn checks, 200-tick cooldown, one active flight
|
||||
per Age and 16 active Ages retain the root values.
|
||||
|
||||
The selected card uses an independent scheduler pass, sharing the existing hazard
|
||||
candidate ring and saved attempt/cooldown data. The impact reuses the .121 blast
|
||||
guards with meteor-specific config (24 blocks, eight entities, 12 damage by default).
|
||||
Event handlers cancel active flights on disabled policy, absent players, unavailable
|
||||
target chunk, Age unload or shutdown; session-only descent state is not replayed.
|
||||
Modern changes use loaded ChunkPos accessors, max-Y API and codec SavedData already
|
||||
ported for hazards. No optional mod dependency or new asset was introduced.
|
||||
|
||||
Added OP `/rivencraft_port instability meteor`, bypassing chance only. Status reports
|
||||
meteor config distinctly from potion policy. The original roar is verified in the
|
||||
built JAR. Version 1.0.1.122-beta.1 builds; effects, damage/protection, cooldown and
|
||||
cancellation/restart behavior are delegated to the player's manual testing as offered.
|
||||
No server/test world was launched, no permanent test added, and no commit/publication.
|
||||
Burning, erosion/crumble, full grammar recovery and live material profiling remain.
|
||||
|
||||
|
||||
## .123 burning and erosion
|
||||
|
||||
The player passed .122. Extracted/adapted the 1.21.1 burning/erosion handlers into a
|
||||
focused provider class, retaining bounded candidate scans, seeded attempt sequence,
|
||||
independent scheduler budgets and protection/event logic. Burning keeps the active
|
||||
Legacy card, sky exposure, Survival/Adventure targeting, four targets per pass and
|
||||
4..12-second duration. The manual pulse targets the player and uses modern water/rain
|
||||
checking rather than the removed isInWaterRainOrBubble API.
|
||||
|
||||
Erosion stays absent from the Legacy deck, with the prior requested testing default
|
||||
of enabled at >=10,000 current instability. It converts at most one eligible sampled
|
||||
block to an adjacent above/horizontal source fluid. Current score resolves creation
|
||||
contributions or an explicit session override; live profiling is not yet claimed.
|
||||
The pulse requires a real aimed block within six blocks and the same threshold and
|
||||
mutation/protection policy. Modern BreakBlockEvent and snapshot placement rollback
|
||||
are reused. Provider status distinguishes these controls from potion policy.
|
||||
|
||||
Added OP `/rivencraft_port instability environment burning|erosion`. No scores/plans
|
||||
are changed by provider registration or test pulses. Config names/defaults match the
|
||||
1.21.1 scorching/erosion sections. Version 1.0.1.123-beta.1 builds; visual/damage/fluid,
|
||||
exemption, policy and natural scheduling checks are handed to the player. No temporary
|
||||
server/world or permanent fixtures were created; no commit/push/publication.
|
||||
|
||||
|
||||
## .124 live material profiling
|
||||
|
||||
The player passed .123. Crumble has no active 1.21.1 handler, so it remains explicitly
|
||||
unavailable. Ported AgeBlockInstability and modern per-dimension profile SavedData,
|
||||
using the same 401/500 readiness thresholds, 1,024 sample cap, watched/native/modded
|
||||
weights, 5% Overworld allowance, 100,000-point cap and difficulty scaling. Registry
|
||||
material eligibility reuses the Page pool rules; common ore/storage tags use modern
|
||||
BlockItems tag accessors. Installed content remains optional; exact weight overrides
|
||||
retain the existing root syntax and validation.
|
||||
|
||||
Deferred chunk-load sampling processes four entries/tick with a bounded queue. Spawn
|
||||
completion requests one chunk per second across occupied profiling Ages and their
|
||||
baseline, with at most one request in flight. The off-thread getChunkFuture path was
|
||||
verified in the local 26.3 source to avoid main-thread managedBlock. Completion checks
|
||||
server stop/level identity. Existing sampled chunks are not recounted. Effective
|
||||
provider plans now combine live points and frozen writing, cache stable totals/seeds,
|
||||
and retain the original saved plan. Old neutral Ages stay excluded. OP status shows
|
||||
progress/totals and session override reset restores the live effective plan.
|
||||
|
||||
Version 1.0.1.124-beta.1 builds and starts a dedicated server. Real chunk-load sampling
|
||||
persisted 25 snapshots and counted a fixture Diamond Block. A bounded restart test
|
||||
used synthetic sample records, plus resumed actual loads: 423 Age / 522 baseline
|
||||
samples yielded 2,987 live points (independently calculated), a frozen writing score
|
||||
of zero and live selected providers. Override reset restored that plan. No hundreds-
|
||||
of-chunks generation test was run; occupied-Age background generation and generated
|
||||
material/modded/config checks are delegated to the player. Server stopped and world
|
||||
removed. No permanent fixtures, commit, push or publication.
|
||||
|
||||
|
||||
## .125 ordered controller recovery
|
||||
|
||||
The player passed .124. Added semantic-role metadata to the port symbol index and
|
||||
a focused recovery pass for singular-controller duplicates/conflicts, category
|
||||
order, Native-with-biomes and Single-with-extra-biomes. Last singular choice wins;
|
||||
Single retains the first biome; Native drops authored biome choices. Duplicate or
|
||||
conflict diagnostics contribute 500 points and order diagnostics 100, following
|
||||
the corresponding 1.21.1 grammar rules. Costs retain original page indices.
|
||||
|
||||
Binder support and server terrain/environment selection share recovered choices.
|
||||
Original book/library pages, color boundaries and celestial-chain indices remain
|
||||
intact; raw number/celestial validation and all unimplemented-page guards still
|
||||
apply. Missing biome registry entries are checked even if recovery would discard
|
||||
the page. Ambient Color has its own stage and is not a singular lighting choice.
|
||||
Existing Ages are unchanged. This is the first recovery slice, not completion of
|
||||
celestial/dangling/material grammar recovery or season integration.
|
||||
|
||||
Version 1.0.1.125-beta.1 builds; 13 temporary focused checks pass, covering recovery,
|
||||
costs, preserved chains and rejection boundaries. No server/test world or permanent
|
||||
fixtures. In-game last-choice behavior, original-page retention and OP diagnostics
|
||||
are delegated to the player. No commit, push or publication.
|
||||
|
||||
|
||||
## .126 ordered celestial and number recovery
|
||||
|
||||
The player passed .125. Ported the 1.21.1 grammar treatment of pending celestial
|
||||
modifiers and numeric adjacency. Repeated Length/Phase/Angle/Size/Direction pages
|
||||
before a celestial use the final value of that kind without a duplicate penalty.
|
||||
Only the final unconsumed modifier of each kind adds 100 dangling-modifier points.
|
||||
A number without an immediately following supported Color/Length/Phase/Angle/Size
|
||||
page adds 100 points (misplaced, or dangling at the end). Consecutive numbers leave
|
||||
only the last available for the next target. Colors still mix in written order.
|
||||
|
||||
These defects no longer block binding. Numbers and celestial compilation retain
|
||||
the original page sequence and seeded color indices; controller recovery never
|
||||
moves a number next to a new target. A trailing modifier cannot rewrite an earlier
|
||||
body, including the optimized single-body compilation path. Missing celestial
|
||||
branches retain their existing seeded completion; dangling controls do not apply
|
||||
to those generated bodies. All original book/library pages remain. Unsupported
|
||||
pages and the ten-sun/ten-moon limit still block binding; existing Ages are unchanged.
|
||||
|
||||
Version 1.0.1.126-beta.1 builds. Seventeen temporary focused checks passed, covering
|
||||
last-value selection, dangling costs/indices, numeric adjacency, per-body isolation,
|
||||
seeded color stability, valid numbered writing, body limits, unsupported pages and
|
||||
cycle codec round-trip. No server/world or permanent test fixture was created.
|
||||
Manual validation: bind a book with Half Length, Double Length, Sun and verify the
|
||||
last length; bind Sun followed by Large Size and confirm it does not resize that
|
||||
sun. Test a trailing Number page and inspect the added writing contribution with
|
||||
`/rivencraft_port instability status`. Original pages should remain visible.
|
||||
No commit, push or publication.
|
||||
|
||||
|
||||
## .127 Link Modifier station: title and core link properties
|
||||
|
||||
The player passed .126. Started the missing 1.21.1 Link Modifier station port,
|
||||
reusing its block model, textures, horizontal facing variants and Legacy 176x166
|
||||
single-book GUI. The item is available in the main creative tab or via
|
||||
`/give @s rivencraft:link_modifier`; it has no crafting recipe. As in 1.21.1,
|
||||
creative acquisition does not impose a new permission restriction on ordinary
|
||||
book edits once the station has been placed.
|
||||
|
||||
One persistent slot accepts Linking and Descriptive Books, including unbound
|
||||
books, with normal and shift-click transfers. The server menu handles renaming
|
||||
and Disarm, Maintain Momentum and Intra Linking toggles. Descriptive Books cannot
|
||||
toggle Intra Linking, which only governs same-dimension Linking Book travel.
|
||||
Existing target, author, symbols and Age identity are retained. Renaming changes
|
||||
the item's custom title, not the Age's saved folder/registry identity. Removing
|
||||
the title restores the item's normal name. Text editing consumes inventory/hotbar
|
||||
shortcuts while focused; Escape closes the screen. Programmatic text refreshes do
|
||||
not send rename packets. Menu identity, owner, distance and live station checks
|
||||
protect edits; unknown button IDs and non-book inputs are rejected.
|
||||
|
||||
The book is saved with modern ValueInput/ValueOutput container serialization.
|
||||
Station removal uses block-entity preRemoveSideEffects to release the stored book
|
||||
once, including non-player removal. No tick handler or renderer is needed.
|
||||
|
||||
This is a station slice, not full Link Modifier parity. Seed editing, Age retirement,
|
||||
Relative Link, Intra-Linking Only and platform overrides remain unported and are
|
||||
not presented as working controls. Existing core flag behavior is reused unchanged.
|
||||
Manual validation: place the station in multiple orientations, insert/shift-click
|
||||
both book types, rename using text containing E, toggle each available property,
|
||||
remove the book and use it to check travel effects. Confirm Descriptive Book Intra
|
||||
Linking is unavailable, restart with a book left in the station, and break a loaded
|
||||
station to recover one book. Build and dedicated persistence results are recorded
|
||||
below. No commit, push or publication.
|
||||
|
||||
Version 1.0.1.127-beta.1 builds. Packaged model, GUI, texture, item definition,
|
||||
loot table and localization checks passed; no station recipe is included. A
|
||||
fresh dedicated server placed the station and serialized a named Linking Book
|
||||
with all three core flags. Restart retained the same book/name/flags and station
|
||||
removal completed normally. The first harness run expected the wrong wording
|
||||
for vanilla force-load cleanup; the corrected harness completed successfully.
|
||||
Both temporary worlds were deleted and servers stopped. No permanent tests were
|
||||
added. UI interaction, transfer counts and modifier travel effects await the
|
||||
player's in-game check.
|
||||
|
||||
|
||||
## .128 six Link Modifier controls
|
||||
|
||||
The player reported that .127 exposed only three of 1.21.1's six controls. Added
|
||||
the remaining Intra-Linking Only, Relative Link and Generate Platform controls in
|
||||
the existing two-column, three-row Legacy layout, with matching bit values and
|
||||
server-owned menu actions. Enabling Intra-Linking Only enables Intra Linking too;
|
||||
disabling Intra Linking clears Intra-Linking Only. Both intra controls are disabled
|
||||
for Descriptive Books. Unknown actions and out-of-range menu edits remain rejected.
|
||||
|
||||
Linking Book Intra-Linking Only blocks cross-dimension travel. Relative Link uses
|
||||
the traveller's block offset from the source world's spawn, applied to destination
|
||||
spawn, preserving destination yaw/pitch. Normal links retain their precise bound
|
||||
coordinates. Player and non-player portal travel share the new flags and relative
|
||||
coordinate helper. Descriptive relative arrivals still require proper footing.
|
||||
|
||||
Generate Platform is off by default for Linking Books. When enabled, a successful
|
||||
link fills one missing floor block with cloud platform only if the block two above
|
||||
the arrival is air, matching the 1.21.1 helper. Existing floors are retained.
|
||||
Descriptive Books instead default to enabled and use Disable Platform internally;
|
||||
turning it off prevents fallback platform creation and refuses travel if no footed
|
||||
landing is available. Receptacle tint preparation respects that setting too.
|
||||
New flags serialize in the shared component and appear in book/panel tooltips.
|
||||
Existing three-flag books remain valid. Seed editing and Age retirement remain
|
||||
separate, unfinished station work.
|
||||
|
||||
Version 1.0.1.128-beta.1 builds. A temporary dedicated-server fixture passed 19
|
||||
checks: menu actions/dependencies, descriptive intra rejection, numeric flag codec,
|
||||
relative offsets, platform-off/default behavior, platform placement/preservation,
|
||||
invalid input and remote edit protection. It did not perform real client travel.
|
||||
The test server stopped and its world/fixture sources were removed. The production
|
||||
JAR is rebuilt without that fixture. Manual checks: all six buttons and tooltips,
|
||||
same/cross-dimension Intra-Linking Only, Relative Link offsets, and platform on/off
|
||||
for both book types (including a new Void Age without footing). No commit, push
|
||||
or publication.
|
||||
|
||||
|
||||
## .129 Link Modifier mouse input repair
|
||||
|
||||
The player reported that none of the six controls responded. Confirmed the
|
||||
26.3 input constants in the local Minecraft artifact: left/middle/right are
|
||||
1/2/3, while the custom Link Modifier handler checked the old left-button value
|
||||
0. Its server actions therefore passed the prior direct-menu fixture while
|
||||
real mouse clicks never sent an action.
|
||||
|
||||
Replaced the manually drawn/clicked areas with six registered Minecraft Button
|
||||
widgets at the same Legacy positions. Their callbacks send the existing validated
|
||||
menu action IDs, and their custom rendering retains the square controls. Native
|
||||
input provides correct mouse mapping, focus, click sound and keyboard activation.
|
||||
All six tooltips expose their On/Off state; unavailable Descriptive Book intra
|
||||
controls remain disabled. Tooltip objects update only when state changes so their
|
||||
hover delay is not reset every tick. Book mutations/travel code is unchanged.
|
||||
|
||||
Version 1.0.1.129-beta.1 builds. The native widget's left-button mapping and callback
|
||||
dispatch were verified in the local Minecraft bytecode. No client click test or
|
||||
new server run was performed; the previous 19 checks covered server actions, not
|
||||
client input. Please click each option with an inserted Linking Book and verify
|
||||
its selected shading and tooltip/book properties change, then repeat supported
|
||||
options with a Descriptive Book. No commit, push or publication.
|
||||
Reference in new issue
Block a user