feat(rust): eight more minor map labels start hidden (D213)
Read from the Carbon rig regenerated at world 6000, seed 981448696, whose map carries every built-in label: the three that were unverified (Oxum's Gas Station, Mining Outpost, Ranch) are spelled as written. Adds Canyon B/C, Lake A, Oasis A/C, Mountain, Train Tunnel Link and Abandoned Cabins, and a test over that map's 51 real labels. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01E14m6SuuY6i1vASFeGDBeY
This commit is contained in:
@@ -75,9 +75,10 @@ const MARKER_PREFIX = 'map.marker.'
|
|||||||
const MARKER_KEY_MAX = 64 - MARKER_PREFIX.length
|
const MARKER_KEY_MAX = 64 - MARKER_PREFIX.length
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The labels off unless an admin turns them on. All but the last three are as
|
* The labels off unless an admin turns them on, spelled as the game labels
|
||||||
* the rigs' map (world 3000, seed 1234) labels them; the gas station, mining
|
* them: all were read from the Carbon rig's 6000 map, seed 981448696, which has
|
||||||
* outpost and ranch are not on that map, and are Rust's display names for them.
|
* every one (2026-09-29). The game writes "Jungle ruin" there and "Jungle Ruin"
|
||||||
|
* on a 3000 map; the key is lower case, so both match.
|
||||||
*/
|
*/
|
||||||
const MINOR_LABELS = Object.freeze([
|
const MINOR_LABELS = Object.freeze([
|
||||||
'Substation',
|
'Substation',
|
||||||
@@ -94,6 +95,15 @@ const MINOR_LABELS = Object.freeze([
|
|||||||
"Oxum's Gas Station",
|
"Oxum's Gas Station",
|
||||||
'Mining Outpost',
|
'Mining Outpost',
|
||||||
'Ranch',
|
'Ranch',
|
||||||
|
// D213: found on the 6000 map, hidden at the org lead's word.
|
||||||
|
'Canyon B',
|
||||||
|
'Canyon C',
|
||||||
|
'Lake A',
|
||||||
|
'Oasis A',
|
||||||
|
'Oasis C',
|
||||||
|
'Mountain',
|
||||||
|
'Train Tunnel Link',
|
||||||
|
'Abandoned Cabins',
|
||||||
])
|
])
|
||||||
|
|
||||||
/** A label as its switch's key: trimmed, single-spaced, lower case. */
|
/** A label as its switch's key: trimmed, single-spaced, lower case. */
|
||||||
|
|||||||
@@ -247,6 +247,25 @@ test('D196: a fresh install hides the minor labels and shows everything else, a
|
|||||||
assert.equal(map.markerShown({}, 'JUNGLE Swamp'), false, 'labels match case- and space-insensitively')
|
assert.equal(map.markerShown({}, 'JUNGLE Swamp'), false, 'labels match case- and space-insensitively')
|
||||||
})
|
})
|
||||||
|
|
||||||
|
test('D196/D213: the Carbon rig’s 6000 map (seed 981448696) draws its 29 places and hides its 22 minor labels', () => {
|
||||||
|
// Every label that map carries, as the game spelled them on 2026-09-29.
|
||||||
|
const minor = [
|
||||||
|
'Abandoned Cabins', 'Abandoned Supermarket', 'Canyon B', 'Canyon C', 'Fishing Village', 'Ice Lake', 'Jungle ruin',
|
||||||
|
'jungle swamp', 'Lake A', 'Large Barn', 'Mining Outpost', 'Mountain', 'Oasis A', 'Oasis C', "Oxum's Gas Station",
|
||||||
|
'Ranch', 'Substation', 'Train Tunnel', 'Train Tunnel Link', 'Underground Cave', 'Water Well', 'Wild Swamp',
|
||||||
|
]
|
||||||
|
const places = [
|
||||||
|
'Abandoned Military Base', 'Airfield', 'Apartment Complex', 'Arctic Research Base', 'Bandit Camp', 'Ferry Terminal',
|
||||||
|
'Giant Excavator Pit', 'Harbor', 'HQM Quarry', 'Jungle Ziggurat', 'Junkyard', 'Large Fishing Village', 'Large Oil Rig',
|
||||||
|
'Launch Site', 'Lighthouse', 'Military Tunnel', 'Missile Silo', 'Oil Rig', 'Outpost', 'Power Plant', 'Radtown',
|
||||||
|
'Satellite Dish', 'Sewer Branch', 'Stone Quarry', 'Sulfur Quarry', 'The Dome', 'Train Yard', 'Underwater Lab',
|
||||||
|
'Water Treatment Plant',
|
||||||
|
]
|
||||||
|
const all = [...minor, ...places].map((label, i) => ({ kind: `k${i}`, label, x: i, z: i }))
|
||||||
|
assert.deepStrictEqual(labelsOf(map.filterMonuments(all, {})).sort(), [...places].sort())
|
||||||
|
assert.equal(map.MINOR_LABELS.length, minor.length, 'every built-in label is on that map')
|
||||||
|
})
|
||||||
|
|
||||||
test('D196: the fleet turns a minor label on, and a server turns it off again for itself only', async (t) => {
|
test('D196: the fleet turns a minor label on, and a server turns it off again for itself only', async (t) => {
|
||||||
settings(t, {
|
settings(t, {
|
||||||
stored: { 'map.marker.substation': 'on', 'map.marker.power plant': 'off', 'map.marker.jungle swamp': 'maybe' },
|
stored: { 'map.marker.substation': 'on', 'map.marker.power plant': 'off', 'map.marker.jungle swamp': 'maybe' },
|
||||||
|
|||||||
Reference in New Issue
Block a user