Public Access
This commit is contained in:
1 parent
48fbae9be9
commit
a7a73d3c17
23 files changed
+967
-24
No files matched your search
@@ -900,6 +900,171 @@ loaded; that fixture is not claimed as tested. The server shut down cleanly,
|
||||
and its temporary world was deleted. Actual player arrival in the affected
|
||||
Age and the unchanged Cave/Linking Book paths remain manual checks.
|
||||
|
||||
The local `1.0.1.66-beta.1` slice ports the three 1.21.1 lighting controls.
|
||||
Normal surface types keep the host Overworld holder; Dark disables skylight,
|
||||
Bright sets ambient light to 0.25. Cave Bright is explicitly supported with
|
||||
0.25 ambient and no skylight; Cave Normal/Dark have 0.0 ambient and no skylight.
|
||||
The native vanilla registry-sync path supplies types to clients before travel.
|
||||
Generated data derives three variants from the exact 26.3 vanilla Overworld
|
||||
resource, preserving every key except has_skylight and ambient_light. The
|
||||
generator has declared inputs/outputs and depends on Minecraft artifacts.
|
||||
|
||||
The Age index has an optional lighting map, defaulting old entries to Normal.
|
||||
Creation supplies the choice before constructing the level and saving the
|
||||
index. Restore/reload/reseed read it from the index; retirement removes it and
|
||||
failed retirement restores it before reloading. Pages share grammar/tint and
|
||||
the positive biome-page filter, avoiding the weather-only compiler regression.
|
||||
Missing lighting stays Normal until the random-trait port; Bright instability
|
||||
is pending with the instability system. No sky/celestial renderer is added.
|
||||
The static variants derive vanilla data, not arbitrary data-pack overrides
|
||||
to the host's Overworld type; broader custom type inheritance is not claimed.
|
||||
|
||||
Build/diff checks and generated-data equality checks pass (only the two
|
||||
lighting fields differ from vanilla). A disposable server with a normal
|
||||
Overworld compiled all six surface/Cave lighting-page combinations and
|
||||
reported the expected type, skylight and ambient values. Cave Bright survived
|
||||
unload/reload and reseeding, and all six choices survived a full restart.
|
||||
Overworld skylight/ambient stayed unchanged. An earlier Superflat-host fixture
|
||||
could test surface variants but could not create Cave terrain because the
|
||||
existing backend requires a noise-based host generator; it was discarded and
|
||||
the Cave checks ran on a fresh normal-host fixture. Test servers stopped
|
||||
cleanly and both temporary worlds were deleted. Client-side appearance,
|
||||
authoring, travel, placed lights and multiplayer registry behavior are manual
|
||||
checks, not inferred from the server probes. No commit/push/publication.
|
||||
|
||||
The local `1.0.1.67-beta.1` corrects the visual failure found in slice 66:
|
||||
LightmapRenderStateExtractor and lightmap.fsh use AMBIENT_LIGHT_COLOR, while
|
||||
dimension ambient_light only affects other brightness queries. Merely porting
|
||||
1.21.1's 0.25 field was insufficient. Bright types now provide white native
|
||||
ambient color and ambient_light 1.0; Cave Bright retains no skylight. A scoped
|
||||
NeoForge spawn-placement handler denies natural/chunk-generation MONSTER
|
||||
spawns in Bright runtime Ages, leaving passive/existing mobs, spawners,
|
||||
commands/eggs and event spawns untouched. It does not manufacture propagated
|
||||
block light or alter crop light checks. This supersedes slice 66's Bright
|
||||
appearance and natural-spawn limitation; existing Bright types update on boot.
|
||||
|
||||
Requested follow-up for the color-page port: add ambient-light color as a
|
||||
separate authorable target using minecraft:visual/ambient_light_color. Keep
|
||||
the existing number/color mixing semantics and white Bright default; do not
|
||||
confuse ambient tint with sky/celestial color or its server spawn policy.
|
||||
Color pages themselves remain unported in this slice.
|
||||
Build/diff and generated attribute checks pass. A disposable dedicated server
|
||||
verified the registered event handler denies a successful-default natural
|
||||
zombie placement in surface/Cave Bright, leaves spawner zombies and natural
|
||||
cows unchanged, and leaves Normal unaffected. Those are isolated event-policy
|
||||
probes, not a long-running natural-spawn census. The server shut down and its
|
||||
temporary world was deleted. Actual client appearance awaits player validation.
|
||||
|
||||
The local `1.0.1.68-beta.1` removes the requested-against MobSpawnEvent veto.
|
||||
An Age-scoped LevelLightEngine.getRawBrightness return modifier contributes
|
||||
Bright's full ambient minimum of 15 to combined brightness on both sides.
|
||||
Vanilla Monster.isDarkEnoughToSpawn now sees that light, rather than being
|
||||
overridden or filtered by mob category/spawn reason. Light-ignoring mobs and
|
||||
special spawns retain vanilla rules; no spawner exemptions are introduced.
|
||||
Block/sky storage and propagation remain physical, while combined-light
|
||||
consumers (including plant checks) see ambient light. Cave Bright retains
|
||||
no skylight, and the native white render attribute remains. This supersedes
|
||||
slice 67's separate spawn policy and unchanged-crop-light behavior.
|
||||
|
||||
The lighting probe now calls vanilla's darkness predicate and combined
|
||||
brightness instead of constructing synthetic spawn events. Ambient-color
|
||||
authoring remains a planned part of the color-page port.
|
||||
Build/diff checks pass. A disposable dedicated server loaded the required
|
||||
mixin and reported effective brightness 15 / vanilla darkness false for
|
||||
surface/Cave Bright, versus 0 / true for Dark. These are direct brightness/
|
||||
vanilla-predicate probes, not a natural-spawn census or a fully generated
|
||||
underground-room test; an unloaded Normal column returned native sky light 15.
|
||||
The server stopped cleanly and its temporary world was deleted. Client visual
|
||||
validation remains with the player; no publication is performed.
|
||||
|
||||
The local `1.0.1.69-beta.1` slice completes missing weather/lighting choices
|
||||
at book binding. PortEnvironmentSelection resolves explicit supported pages
|
||||
first and uses independent seed-salted Legacy-rank rolls for omissions.
|
||||
Normal is rank 1, remaining supported modes rank 2: 3:1:1 lighting and
|
||||
6:1:1:1:1:1 weather. These weights derive from the active enum pool and reuse
|
||||
the existing weighted ticket routine, rather than duplicating random-choice
|
||||
logic or enabling unported Cloudy/Rain/Snow modes. It is rank-policy parity,
|
||||
not exact seed-stream parity with 1.21.1's broader trait pool.
|
||||
|
||||
The selected weather/lighting are passed through the existing save-before-
|
||||
catalog creation path. Restoring Ages never calls the resolver, so old Ages
|
||||
retain their saved values. Cave weather is always Off; Cave lighting remains
|
||||
independent and supports Bright. Explicit developer fixtures remain controlled,
|
||||
but create_random now uses the same resolver as pageless books. A read-only
|
||||
environment probe checks seed repeatability and explicit overrides. Superseded
|
||||
Normal-only fromPages helpers are removed. Random feature, sky/celestial,
|
||||
blocklist policy and instability work remain pending.
|
||||
Build/diff checks pass. Disposable dedicated-server probes repeated seeds
|
||||
0/4/7, verified explicit overrides and independent one-field completion, and
|
||||
confirmed Cave weather Off with Bright lighting. Three random Ages saved
|
||||
Always/Normal, Normal/Dark and Fast/Bright respectively; weather/lighting
|
||||
choices and live weather timers persisted through a full server restart.
|
||||
Overworld weather/type stayed unchanged. The server stopped cleanly and its
|
||||
temporary world was deleted. Player book-authoring/visual checks remain
|
||||
manual. No commit, push or publication is performed.
|
||||
|
||||
The local `1.0.1.70-beta.1` slice ports native Overworld/Nether/End sky styles.
|
||||
The shared grammar accepts one style and the biome compiler ignores it by
|
||||
category. Sky is saved in an optional Age-index map with Overworld fallback;
|
||||
restore/reseed/retirement rollback use the saved choice. It does not alter
|
||||
the missing-weather/lighting seed-completion rules, add random sky selection,
|
||||
or enable Static Sky/color/individual-celestial pages prematurely.
|
||||
|
||||
The dimension-data generator now produces 11 sky/lighting variants from the
|
||||
vanilla Overworld baseline. It changes visual skybox/fog/cloud settings only
|
||||
in addition to lighting. Geometry, scale, ceiling, monster settings, default
|
||||
clock and gameplay attributes are retained; no Nether gameplay or End dragon
|
||||
fight is inherited. A derived native day timeline omits only sky/fog/cloud
|
||||
color tracks for non-Overworld styles, preserving schedules and illumination.
|
||||
Native End/no-sky rendering needs no optional renderer or new artwork. The
|
||||
Legacy animated Static Sky renderer cannot be replaced by native flat gray
|
||||
without losing its behavior, so its page remains red/unimplemented.
|
||||
|
||||
Bright detection includes all registered sky variants, preserving both white
|
||||
ambient rendering and the effective brightness floor for surface/Cave Bright.
|
||||
Data equality checks confirm all 11 variants preserve geometry/gameplay and
|
||||
the day timeline keeps native tracks except the three excluded visual colors.
|
||||
Its global time markers remain defined only by minecraft:day, not duplicated
|
||||
in the derived timeline. The grouped timeline list is registered as a tag.
|
||||
Client appearance and multiplayer travel validation remain manual.
|
||||
Registry validation initially caught an invalid inline tag reference and
|
||||
duplicate global clock markers in the derived day timeline; both were fixed
|
||||
before handoff. The sky diagnostic also now supplies a position when sampling
|
||||
the spatial fog attribute. A disposable dedicated server then restored all
|
||||
sampled types after restart, including Nether normal/Bright and End normal/
|
||||
Cave Bright, with the expected reddish/purple fog at the sample position,
|
||||
unchanged geometry/gameplay flags, and effective light 15 on Bright variants.
|
||||
Cave Bright End retained its type after unload/reload; a reseeded Nether Age
|
||||
retained its style after restart. Servers stopped cleanly and temporary test
|
||||
directories/worlds were deleted. These are server/data checks, not a rendered
|
||||
client pass. No commit/push/publication is performed.
|
||||
|
||||
## Static Sky renderer slice
|
||||
|
||||
`1.0.1.71-beta.1` ports the 1.21.1 Legacy-style animated Static Sky, superseding
|
||||
the previous unsupported/red status. The six independent 48×48 noise faces
|
||||
use the existing default gray tint (146 per channel), noise range 65–224,
|
||||
and a two-world-tick refresh. A cached 24-vertex cube and a single 288×48
|
||||
dynamic texture use the native textured sky pipeline instead of rebuilding
|
||||
thousands of colored cells every frame. No new asset or dependency is needed.
|
||||
|
||||
Client-only mixins carry the animation frame in extracted sky state, reset
|
||||
it with the state, and own/close GPU resources with SkyRenderer. Static types
|
||||
have native skybox NONE; the extracted state alone requests a sky pass and
|
||||
the custom renderer replaces it. End flashes and End gameplay are not enabled.
|
||||
Normal/Dark/Bright/Cave Bright variants preserve the existing lighting policy,
|
||||
geometry and gameplay. Existing persistence handles STATIC as a sky enum value.
|
||||
Random sky selection, color pages, and individual celestial bodies remain
|
||||
separate unfinished work; this slice does not claim complete sky parity.
|
||||
|
||||
Verification: port build passed (no automated unit tests configured). A
|
||||
disposable dedicated server created Static Standard Normal and Static Cave
|
||||
Bright Ages, confirmed their gray fog, NONE native skybox and correct skylight/
|
||||
ambient values, then restored both choices after restart. It stopped cleanly;
|
||||
the temporary server/world was deleted. Client animation, travel between sky
|
||||
styles, and restart appearance still require manual validation. No user world
|
||||
was modified, and nothing was committed, pushed or published.
|
||||
|
||||
## Verification of this first slice
|
||||
|
||||
The 1.21.1 `compileJava` and `build` tasks passed offline after the backend
|
||||
|
||||
Reference in new issue
Block a user