Repository navigation
Player reports 2026-10-07: VEGA lines expand key tokens before formatting, the debris field's flight recorder gets a name, a shape and a line (#2368) - #2369
Merged
Conversation
…kens before formatting, the debris field's flight recorder gets a name, a shape and a line (#2363 #2364 #2365 #2366 #2367 #2368) Hadewin's browser crash report: VegaPanel ran string.Format over a localized line before the {key:Action} tokens were expanded; vega.hint.debris_signal (new in #2360) carries both {0} and {key:FlightMap}, so the format threw out of the poll for every pilot in a system with an unread debris field and the tip never showed. VegaText.Compose (Client.Core) now expands the key tokens first, fills the packed slots under a FormatException guard and neutralises {0} to "…" without an argument; the speech panel, SayLocal and the tips log use it, and a theory composes every vega.* line in all 14 locales. Layex' "was ist das?": the object in his screenshot is the debris field's marker, the scorched flight recorder — a near-black box invisible against space. It is a scorched-steel box with a copper glow line now, the lock calls it "Flight recorder · Debris field <name>", a locked loot drop reads "Loot" instead of the raw kind name, the recorder readout names the box, and VEGA explains it once a read field has no fragment or capsule left (server tip debris_recorder, test + seam). Keys en/de by hand, the twelve community languages machine-translated and read through; Hadewin and Layex in the README and the in-game credits (14 languages); TODO, USER_MANUAL and TRANSLATION_GUIDE updated. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Owner
Author
|
Local Unity build on this tree (worktree, |
…grabadora) Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
marceld23
added a commit
that referenced
this pull request
Oct 7, 2026
…ted load) 55 test classes had no measured weight; the two new oil test classes pushed the guessed share over the 5 % budget. Slow seconds from the v2026.10.8 release run (full tier), fast seconds from PR #2369's run (fast tier), the two new classes from a local run. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
marceld23
added a commit
that referenced
this pull request
Oct 7, 2026
…o-lubricant, the Codex + Screelit's fruit x-ray (#2377) (#2380) * feat(oil): tar seeps, the scanner's oil echo, full-height pockets, bio-lubricant, the Codex + Screelit's fruit x-ray (#2377) Terrain generation 22 (OilSeepGeneration): - the pocket half-height reads free hash bits (it read bits the chance roll had zeroed: every pocket was at most four cells of oil) (#2370) - three pockets in eight seep: a tar chimney to the ground, a tar patch with an oil puddle; flora, trees, props and settlement buildings keep off it (#2371) - terrain scanner oil echo: the nearest pocket within 800 blocks that still holds oil, as a ping, a violet marker and a toast with distance and depth (#2372) - bio-lubricant: 3 biofuel + 1 carbon -> 1 lubricant at the refinery (#2373) - Codex: Oil and Lubricant article, depth figures in Prospecting & Ore, oil in the Planets chapter; planet scan names 40-120 blocks (#2374) - gas giants no longer claim oil pockets (#2375) - Screelit's report: crown leaves keep their face toward a hanging fruit or any cross-billboard plant / slim prop - no x-ray hole in the crown (#2379) Texts in all 14 languages; WORLD_GENERATION section 39, USER_MANUAL, TODO. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * ci: refresh the test shard weights (the drift guard hit 5.1 % unweighted load) 55 test classes had no measured weight; the two new oil test classes pushed the guessed share over the 5 % budget. Slow seconds from the v2026.10.8 release run (full tier), fast seconds from PR #2369's run (fast tier), the two new classes from a local run. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Two inbox reports of 2026-10-07 (both v2026.10.8), fixed together. Epic #2368.
Hadewin's crash report —
FormatExceptionin VEGA's debris-field tip (#2363, #2364)VegaPanel.OnLineranstring.Formatover the localized line beforeVegaText.ExpandKeyTokensreplaced the{key:Action}tokens.vega.hint.debris_signal(new in feat(space): debris fields with salvage, one-time salvage, combat debris, raiders with real hulls (#2351) #2360) carries both{0}and{key:FlightMap}, so the format threw out of the poll for every pilot in a system with an unread debris field — no visible crash, the tip just never showed and its cadence slot was spent.wreck_signalhad the same mix since fix(space,vega): the unreachable wreck — the radar keeps height, an ALT readout, VEGA's way to the derelict (#1880, #1881, #1882) #1883 but only fires with an AI core Mk2+.VegaText.Compose(text, lineArg, glyph)in Client.Core — key tokens first, then the packed{0}…slots, guarded by aFormatExceptionfallback; without an argument a slot reads as „…“.VegaPanel.OnLine,SayLocaland the tips log (VEGA tips log shows raw {0} and {key:…} tokens #2364, which showed the raw tokens) use it.VegaTextTests— the real debris line composes, packed arguments, a malformed line never throws, the no-argument form, and a theory that composes everyvega.*line in all 14 locales (this is the test that would have failed at PR time).CommunityLocaleTestscomment andTRANSLATION_GUIDE.mdcorrected (they claimed plain replacement).Layex' „was ist das?“ — the flight recorder nobody could name (#2365, #2366, #2367)
SpaceView.Debris.cs). Lock/scanner label „Flugschreiber · Trümmerfeld Likorn“ (ui.scan.subject.debris_recorder); a locked loot drop reads „Beute“ instead of the raw kind name (ui.scan.subject.resource_drop).debris_recorder(once per save) when the pilot sits inside a read field with no fragment or capsule left; the recorder readoutui.scan.debris_fieldnow names the box with the beacon. TestDebrisFieldTests.VegaTip_NamesTheRecorder_OnceTheFieldIsCarvedOut(new seamClearDebrisFieldSalvageForTest).Credits
Hadewin and Layex in the README playtester list and the in-game credits (
ui.credits.body, all 14 languages).Docs
TODO.md entry, USER_MANUAL debris-field paragraph (recorder, loot label), TRANSLATION_GUIDE token rule.
Verification
dotnet build -c Release --no-incremental: 0 warnings / 0 errors.BlocksBeyondTheStars.Client.Tests(full) and the server suitesDebrisFieldTests,SpaceWreckTests,CommunityLocaleTests,ContentTests,ShipAiTests, locale tests: green.dotnet format BlocksBeyondTheStars.CI.slnf --verify-no-changes: clean.scripts/build-client.ps1) in the worktree: see the comment below.Ships with the next regular release (no hotfix — decided 2026-10-07).
closes #2363, closes #2364, closes #2365, closes #2366, closes #2367, closes #2368
🤖 Generated with Claude Code