fix(rust): the title weapon and plant lists, read off the rig's own item list
A read-only probe walked ItemManager.itemList on rust-oxide (2026-09-29). Revolvers are pistol_revolver, python and hc_revolver; bows add the legacy bow, the mini crossbow and the bowless crossbow and leave out the speargun; melee is every BaseMelee except the pies; blades add the obsidian, sunken and skinning knives and the chainsword; plants add wheat and the two wild berries. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01E14m6SuuY6i1vASFeGDBeY
This commit is contained in:
@@ -1,4 +1,4 @@
|
|||||||
// ── The named lists behind five title categories (PLAN_REDESIGNS §5.3, D174) ──
|
// ── The named lists behind seven title categories (PLAN_REDESIGNS §5.3, D174) ──
|
||||||
//
|
//
|
||||||
// "In one place, so a Rust update adds a weapon by editing a list." The plugin
|
// "In one place, so a Rust update adds a weapon by editing a list." The plugin
|
||||||
// sends every credited kill by weapon SHORT PREFAB NAME — the name the killfeed
|
// sends every credited kill by weapon SHORT PREFAB NAME — the name the killfeed
|
||||||
@@ -6,54 +6,98 @@
|
|||||||
// shortname (`sulfur.ore`). These lists are applied when a title is READ, so
|
// shortname (`sulfur.ore`). These lists are applied when a title is READ, so
|
||||||
// editing one corrects the whole wipe and no plugin release is needed.
|
// editing one corrects the whole wipe and no plugin release is needed.
|
||||||
//
|
//
|
||||||
// Melee is a list too: the site cannot ask the game whether a prefab is a
|
// Read off a live server's own item list on 2026-09-29 (a read-only probe that
|
||||||
// `BaseMelee`. A blade is a melee weapon, so every blade is in both.
|
// walked `ItemManager.itemList` and named each held entity's prefab and class),
|
||||||
|
// not written from memory. To refresh after a Rust update, do the same.
|
||||||
//
|
//
|
||||||
// UNVERIFIED: the weapon names below are from knowledge of the game, not yet
|
// bow every `BowWeapon`, `CrossbowWeapon` and `MiniCrossbow` — except the
|
||||||
// read off the rig's own item list (the RgWeapons probe). Replace them with the
|
// speargun, which is a crossbow underneath and not a bow to a player
|
||||||
// probe's output before this ships.
|
// melee every `BaseMelee`, except the pies (`Food` is a `BaseMelee` too,
|
||||||
|
// because eating is a swing)
|
||||||
|
// blade the machete, the swords, the knives and the cleaver, as §4.6 names
|
||||||
|
// them; every blade is in melee as well
|
||||||
|
// revolver the revolver, the python and the high-caliber revolver
|
||||||
|
|
||||||
const BLADES = [
|
const BLADES = [
|
||||||
'machete.weapon',
|
'machete.weapon',
|
||||||
'salvaged_sword.entity',
|
'salvaged_sword.entity',
|
||||||
'longsword.entity',
|
'longsword.entity',
|
||||||
|
'krieg_chainsword.entity',
|
||||||
'salvaged_cleaver.entity',
|
'salvaged_cleaver.entity',
|
||||||
'knife_bone.entity',
|
'knife_bone.entity',
|
||||||
|
'bone.knife.obsidian.entity',
|
||||||
'knife.combat.entity',
|
'knife.combat.entity',
|
||||||
|
'sunken.knife.combat.entity',
|
||||||
'butcherknife.entity',
|
'butcherknife.entity',
|
||||||
|
'skinningknife.entity',
|
||||||
]
|
]
|
||||||
|
|
||||||
const lists = {
|
const lists = {
|
||||||
bow: ['bow_hunting.entity', 'compound_bow.entity', 'crossbow.entity'],
|
bow: [
|
||||||
|
'bow_hunting.entity',
|
||||||
|
'compound_bow.entity',
|
||||||
|
'legacybow.entity',
|
||||||
|
'crossbow.entity',
|
||||||
|
'crossbow_bowless.entity',
|
||||||
|
'mini_crossbow.entity',
|
||||||
|
],
|
||||||
blade: BLADES,
|
blade: BLADES,
|
||||||
melee: [
|
melee: [
|
||||||
...BLADES,
|
...BLADES,
|
||||||
|
'axe_salvaged.entity',
|
||||||
'bone_club.entity',
|
'bone_club.entity',
|
||||||
'mace.entity',
|
'boomerang.entity',
|
||||||
'spear_wooden.entity',
|
'cake.entity',
|
||||||
'spear_stone.entity',
|
'candy_cane.entity',
|
||||||
|
'chainsaw.entity',
|
||||||
|
'cny_spear.entity',
|
||||||
|
'concrete_hatchet.entity',
|
||||||
|
'concrete_pickaxe.entity',
|
||||||
|
'diver_hatchet.entity',
|
||||||
|
'diver_pickaxe.entity',
|
||||||
|
'diver_torch.entity',
|
||||||
|
'flashlight.entity',
|
||||||
|
'frontier_hatchet.entity',
|
||||||
|
'hammer.entity',
|
||||||
|
'hammer_salvaged.entity',
|
||||||
|
'handcuffs.entity',
|
||||||
'hatchet.entity',
|
'hatchet.entity',
|
||||||
'stonehatchet.entity',
|
'icepick_salvaged.entity',
|
||||||
'pickaxe.entity',
|
'industrial_torch.entity',
|
||||||
'stone_pickaxe.entity',
|
'jackhammer.entity',
|
||||||
'salvaged_axe.entity',
|
'lumberjack_axe.entity',
|
||||||
'salvaged_hammer.entity',
|
'lumberjack_pick.entity',
|
||||||
'salvaged_icepick.entity',
|
'mace.baseballbat',
|
||||||
'rock.entity',
|
'mace.entity',
|
||||||
'torch.entity',
|
|
||||||
'paddle.entity',
|
'paddle.entity',
|
||||||
|
'pickaxe.entity',
|
||||||
'pitchfork.entity',
|
'pitchfork.entity',
|
||||||
|
'rock.a.jungle.entity',
|
||||||
|
'rock.entity',
|
||||||
|
'shovel.entity',
|
||||||
'sickle.entity',
|
'sickle.entity',
|
||||||
|
'skull.entity',
|
||||||
|
'skulltorch.entity',
|
||||||
|
'snowball.entity',
|
||||||
|
'spear_stone.entity',
|
||||||
|
'spear_wooden.entity',
|
||||||
|
'stone_pickaxe.entity',
|
||||||
|
'stonehatchet.entity',
|
||||||
|
'toolgun.entity',
|
||||||
|
'torch.entity',
|
||||||
|
'vampirestake.entity',
|
||||||
],
|
],
|
||||||
revolver: ['revolver.entity', 'python.entity'],
|
revolver: ['pistol_revolver.entity', 'python.entity', 'hc_revolver.entity'],
|
||||||
|
|
||||||
// Gathering (D159: all three sources, already in `rust_gather_totals`).
|
// Gathering (D159: all three sources, already in `rust_gather_totals`).
|
||||||
wood: ['wood'],
|
wood: ['wood'],
|
||||||
ore: ['metal.ore', 'sulfur.ore', 'hq.metal.ore'],
|
ore: ['metal.ore', 'sulfur.ore', 'hq.metal.ore'],
|
||||||
// Hemp picks up as cloth; a seed that comes with a plant is not the plant.
|
// Hemp picks up as cloth. A seed or a clone that comes with a plant is not
|
||||||
|
// the plant, and neither is anything cooked from one.
|
||||||
plants: [
|
plants: [
|
||||||
'cloth',
|
'cloth',
|
||||||
'corn',
|
'corn',
|
||||||
|
'wheat',
|
||||||
'pumpkin',
|
'pumpkin',
|
||||||
'potato',
|
'potato',
|
||||||
'mushroom',
|
'mushroom',
|
||||||
@@ -63,6 +107,8 @@ const lists = {
|
|||||||
'yellow.berry',
|
'yellow.berry',
|
||||||
'white.berry',
|
'white.berry',
|
||||||
'black.berry',
|
'black.berry',
|
||||||
|
'blueberries',
|
||||||
|
'black.raspberries',
|
||||||
'rose',
|
'rose',
|
||||||
'orchid',
|
'orchid',
|
||||||
'sunflower',
|
'sunflower',
|
||||||
|
|||||||
Reference in New Issue
Block a user