diff options
Diffstat (limited to 'revert-30_feat-content-weapon-mount-obsoletion-part-1-4179.patch')
-rw-r--r-- | revert-30_feat-content-weapon-mount-obsoletion-part-1-4179.patch | 1957 |
1 files changed, 1957 insertions, 0 deletions
diff --git a/revert-30_feat-content-weapon-mount-obsoletion-part-1-4179.patch b/revert-30_feat-content-weapon-mount-obsoletion-part-1-4179.patch new file mode 100644 index 0000000..fdc3225 --- /dev/null +++ b/revert-30_feat-content-weapon-mount-obsoletion-part-1-4179.patch @@ -0,0 +1,1957 @@ +From 0aca66e98ed0dc699179a24760160768146e2304 Mon Sep 17 00:00:00 2001 +From: Chorus System <ohinchy@gmail.com> +Date: Mon, 5 Feb 2024 11:32:43 -0500 +Subject: [PATCH 094/231] feat(content): weapon mount obsoletion, part 1 + (#4179) + +* Mount-ed Combat + +Removed all basegame weapon mount mod slots, replacing them with the corresponding mod slots of that type. + +* Mod mounts + +Removed weapon mount mod locations from modded weapons, replacing them with corresponding weapon mod locations. + +* style(autofix.ci): automated formatting + +* Obsoleted mount weapon mods + +* Changed ranged burst balance test + +Modified ranged burst balance test via RoyalFox's recommendation. + +--------- + +Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> +Co-authored-by: Chaosvolt <chaosvolt@users.noreply.github.com> +--- + data/json/items/classes/gun.json | 65 +++---- + data/json/items/classes/range.json | 2 +- + data/json/items/gun/20x66mm.json | 2 +- + data/json/items/gun/22.json | 6 +- + data/json/items/gun/223.json | 18 +- + data/json/items/gun/3006.json | 6 +- + data/json/items/gun/308.json | 16 +- + data/json/items/gun/38.json | 19 +- + data/json/items/gun/40.json | 2 +- + data/json/items/gun/40x46mm.json | 20 +- + data/json/items/gun/40x53mm.json | 4 +- + data/json/items/gun/410shot.json | 10 +- + data/json/items/gun/44.json | 4 +- + data/json/items/gun/44paper.json | 4 +- + data/json/items/gun/454.json | 4 +- + data/json/items/gun/4570.json | 16 +- + data/json/items/gun/45colt.json | 6 +- + data/json/items/gun/50.json | 8 +- + data/json/items/gun/500.json | 8 +- + data/json/items/gun/66mm.json | 9 +- + data/json/items/gun/762.json | 20 +- + data/json/items/gun/762x25.json | 2 +- + data/json/items/gun/84x246mm.json | 4 +- + data/json/items/gun/9mm.json | 28 +-- + data/json/items/gun/atgm.json | 2 +- + data/json/items/gun/blunderbuss.json | 9 +- + data/json/items/gun/combination.json | 2 +- + data/json/items/gun/flammable.json | 8 +- + data/json/items/gun/flintlock.json | 23 +-- + data/json/items/gun/misc.json | 2 +- + data/json/items/gun/nail.json | 2 +- + data/json/items/gun/paintball.json | 9 +- + data/json/items/gun/rpg.json | 4 +- + data/json/items/gun/shot.json | 122 ++++++------ + data/json/items/gun/shotpaper.json | 8 +- + data/json/items/gun/signal_flare.json | 9 +- + data/json/items/gun/ups.json | 10 +- + data/json/items/ranged/crossbows.json | 9 +- + data/json/items/ranged/pneumatic.json | 6 +- + data/json/items/ranged/spearguns.json | 4 +- + data/json/not_really_obsolete.json | 4 +- + data/json/obsoletion/items.json | 24 +-- + .../{items/gunmod => obsoletion}/mount.json | 0 + data/json/obsoletion/recipes.json | 35 ++++ + data/json/recipes/weapon/mods.json | 182 ------------------ + data/mods/Aftershock/items/obsolete.json | 4 +- + data/mods/Aftershock/items/weapons.json | 10 +- + data/mods/Generic_Guns/firearms/obsolete.json | 8 +- + .../Magiclysm/items/enchanted_ranged.json | 6 +- + data/mods/No_Hope/Items/guns.json | 43 ++--- + tests/ranged_burst_balance_test.cpp | 2 +- + 51 files changed, 306 insertions(+), 524 deletions(-) + rename data/json/{items/gunmod => obsoletion}/mount.json (100%) + +diff --git a/data/json/items/classes/gun.json b/data/json/items/classes/gun.json +index d010aa2dee0..8ec6c586c89 100644 +--- a/data/json/items/classes/gun.json ++++ b/data/json/items/classes/gun.json +@@ -93,10 +93,10 @@ + [ "grip", 1 ], + [ "mechanism", 2 ], + [ "muzzle", 1 ], +- [ "rail mount", 1 ], +- [ "sights mount", 1 ], +- [ "stock mount", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "rail", 1 ], ++ [ "sights", 1 ], ++ [ "stock", 1 ], ++ [ "underbarrel", 1 ] + ] + }, + { +@@ -129,9 +129,9 @@ + [ "grip", 1 ], + [ "mechanism", 4 ], + [ "sights", 1 ], +- [ "stock mount", 1 ], +- [ "rail mount", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "stock", 1 ], ++ [ "rail", 1 ], ++ [ "underbarrel", 1 ] + ] + }, + { +@@ -145,15 +145,7 @@ + "delete": { "flags": [ "NEVER_JAMS" ] }, + "//": "Slower reloads, no unloading. Base, unskilled person should take 1.5 seconds per chamber. No underbarrel mods, that's where the ram goes.", + "faults": [ "fault_gun_blackpowder", "fault_gun_dirt" ], +- "valid_mod_locations": [ +- [ "accessories", 2 ], +- [ "barrel", 1 ], +- [ "bore", 1 ], +- [ "grip", 1 ], +- [ "stock mount", 1 ], +- [ "rail mount", 1 ], +- [ "sights mount", 1 ] +- ] ++ "valid_mod_locations": [ [ "accessories", 2 ], [ "barrel", 1 ], [ "bore", 1 ], [ "grip", 1 ], [ "stock", 1 ], [ "rail", 1 ], [ "sights", 1 ] ] + }, + { + "abstract": "pistol_energy", +@@ -188,14 +180,7 @@ + "flags": [ "RELOAD_ONE", "STR_RELOAD", "WATERPROOF_GUN", "UNDERWATER_GUN", "NEVER_JAMS", "NON_FOULING", "NEEDS_NO_LUBE" ], + "dispersion": 120, + "reload": 600, +- "valid_mod_locations": [ +- [ "accessories", 2 ], +- [ "grip", 1 ], +- [ "sights", 1 ], +- [ "stock", 1 ], +- [ "rail mount", 1 ], +- [ "underbarrel mount", 1 ] +- ], ++ "valid_mod_locations": [ [ "accessories", 2 ], [ "grip", 1 ], [ "sights", 1 ], [ "stock", 1 ], [ "rail", 1 ], [ "underbarrel", 1 ] ], + "faults": [ ] + }, + { +@@ -271,10 +256,10 @@ + [ "muzzle", 1 ], + [ "sling", 1 ], + [ "stock", 1 ], +- [ "grip mount", 1 ], +- [ "rail mount", 1 ], +- [ "sights mount", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "grip", 1 ], ++ [ "rail", 1 ], ++ [ "sights", 1 ], ++ [ "underbarrel", 1 ] + ], + "faults": [ "fault_gun_blackpowder", "fault_gun_dirt" ], + "flags": [ "RELOAD_EJECT" ] +@@ -340,8 +325,8 @@ + [ "sights", 1 ], + [ "sling", 1 ], + [ "stock", 1 ], +- [ "rail mount", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "rail", 1 ], ++ [ "underbarrel", 1 ] + ], + "faults": [ ] + }, +@@ -356,7 +341,7 @@ + "flags": [ "NEVER_JAMS", "NON_FOULING", "NEEDS_NO_LUBE" ], + "dispersion": 350, + "reload": 600, +- "valid_mod_locations": [ [ "accessories", 3 ], [ "sling", 1 ], [ "grip", 1 ], [ "mechanism", 4 ], [ "stock", 1 ], [ "rail mount", 1 ] ], ++ "valid_mod_locations": [ [ "accessories", 3 ], [ "sling", 1 ], [ "grip", 1 ], [ "mechanism", 4 ], [ "stock", 1 ], [ "rail", 1 ] ], + "faults": [ ] + }, + { +@@ -375,14 +360,14 @@ + [ "barrel", 1 ], + [ "bore", 1 ], + [ "brass catcher", 1 ], +- [ "grip mount", 1 ], ++ [ "grip", 1 ], + [ "mechanism", 4 ], + [ "muzzle", 1 ], +- [ "rail mount", 1 ], +- [ "sights mount", 1 ], ++ [ "rail", 1 ], ++ [ "sights", 1 ], + [ "sling", 1 ], + [ "stock", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "underbarrel", 1 ] + ] + }, + { +@@ -415,15 +400,15 @@ + [ "barrel", 1 ], + [ "bore", 1 ], + [ "brass catcher", 1 ], +- [ "grip mount", 1 ], ++ [ "grip", 1 ], + [ "mechanism", 4 ], + [ "muzzle", 1 ], + [ "loading port", 1 ], +- [ "rail mount", 1 ], +- [ "sights mount", 1 ], ++ [ "rail", 1 ], ++ [ "sights", 1 ], + [ "sling", 1 ], + [ "stock", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "underbarrel", 1 ] + ] + }, + { +@@ -475,7 +460,7 @@ + "dispersion": 300, + "reload": 400, + "handling": 60, +- "valid_mod_locations": [ [ "brass catcher", 1 ], [ "sling", 1 ], [ "rail mount", 1 ], [ "sights mount", 1 ] ], ++ "valid_mod_locations": [ [ "brass catcher", 1 ], [ "sling", 1 ], [ "rail", 1 ], [ "sights", 1 ] ], + "flags": [ "MOUNTED_GUN" ], + "faults": [ "fault_gun_blackpowder", "fault_gun_dirt" ] + }, +diff --git a/data/json/items/classes/range.json b/data/json/items/classes/range.json +index 0909d41652c..e887e7e5e73 100644 +--- a/data/json/items/classes/range.json ++++ b/data/json/items/classes/range.json +@@ -77,7 +77,7 @@ + "name": { "str": "base slingshot" }, + "skill": "archery", + "ammo": "pebble", +- "valid_mod_locations": [ [ "grip mount", 1 ], [ "underbarrel mount", 1 ] ], ++ "valid_mod_locations": [ [ "grip", 1 ], [ "underbarrel", 1 ] ], + "extend": { "flags": [ "BELT_CLIP" ] } + }, + { +diff --git a/data/json/items/gun/20x66mm.json b/data/json/items/gun/20x66mm.json +index ef5f400ea73..fcd4ba7d58d 100644 +--- a/data/json/items/gun/20x66mm.json ++++ b/data/json/items/gun/20x66mm.json +@@ -92,7 +92,7 @@ + [ "rail", 1 ], + [ "sights", 1 ], + [ "stock", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "underbarrel", 1 ] + ], + "magazines": [ [ "20x66mm", [ "20x66_10_mag" ] ] ], + "flags": [ "WATERPROOF_GUN", "NEVER_JAMS" ] +diff --git a/data/json/items/gun/22.json b/data/json/items/gun/22.json +index 501c3df55a5..9a9f792cae7 100644 +--- a/data/json/items/gun/22.json ++++ b/data/json/items/gun/22.json +@@ -67,9 +67,9 @@ + [ "bore", 1 ], + [ "grip", 1 ], + [ "mechanism", 2 ], +- [ "sights mount", 1 ], +- [ "stock mount", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "sights", 1 ], ++ [ "stock", 1 ], ++ [ "underbarrel", 1 ] + ], + "faults": [ "fault_gun_blackpowder", "fault_gun_dirt" ], + "flags": [ "RELOAD_ONE", "NEVER_JAMS", "RELOAD_EJECT" ] +diff --git a/data/json/items/gun/223.json b/data/json/items/gun/223.json +index 848fe53ce0a..1b6d7c727d9 100644 +--- a/data/json/items/gun/223.json ++++ b/data/json/items/gun/223.json +@@ -123,13 +123,13 @@ + [ "barrel", 1 ], + [ "bore", 1 ], + [ "brass catcher", 1 ], +- [ "grip mount", 1 ], ++ [ "grip", 1 ], + [ "mechanism", 4 ], + [ "magazine", 1 ], + [ "muzzle", 1 ], +- [ "sights mount", 1 ], ++ [ "sights", 1 ], + [ "sling", 1 ], +- [ "underbarrel mount", 1 ], ++ [ "underbarrel", 1 ], + [ "underbarrel", 1 ] + ], + "magazines": [ [ "223", [ "famasmag" ] ] ] +@@ -435,10 +435,10 @@ + [ "muzzle", 1 ], + [ "sights", 1 ], + [ "sling", 1 ], +- [ "grip mount", 1 ], +- [ "rail mount", 1 ], ++ [ "grip", 1 ], ++ [ "rail", 1 ], + [ "stock", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "underbarrel", 1 ] + ], + "magazines": [ [ "223", [ "ruger20", "ruger5", "ruger10", "ruger30", "ruger90", "ruger100", "ruger_makeshiftmag" ] ] ] + }, +@@ -586,9 +586,9 @@ + [ "sling", 1 ], + [ "stock", 1 ], + [ "underbarrel", 1 ], +- [ "grip mount", 1 ], +- [ "rail mount", 1 ], +- [ "sights mount", 1 ] ++ [ "grip", 1 ], ++ [ "rail", 1 ], ++ [ "sights", 1 ] + ], + "magazines": [ + [ +diff --git a/data/json/items/gun/3006.json b/data/json/items/gun/3006.json +index 96248a6de79..3963fd1197a 100644 +--- a/data/json/items/gun/3006.json ++++ b/data/json/items/gun/3006.json +@@ -79,10 +79,10 @@ + [ "muzzle", 1 ], + [ "sights", 1 ], + [ "sling", 1 ], +- [ "grip mount", 1 ], +- [ "rail mount", 1 ], ++ [ "grip", 1 ], ++ [ "rail", 1 ], + [ "stock", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "underbarrel", 1 ] + ], + "magazines": [ [ "3006", [ "3006_clip" ] ] ], + "flags": [ "RELOAD_ONE" ] +diff --git a/data/json/items/gun/308.json b/data/json/items/gun/308.json +index e32022184b3..87677a5128a 100644 +--- a/data/json/items/gun/308.json ++++ b/data/json/items/gun/308.json +@@ -122,10 +122,10 @@ + [ "muzzle", 1 ], + [ "sights", 1 ], + [ "sling", 1 ], +- [ "grip mount", 1 ], +- [ "rail mount", 1 ], ++ [ "grip", 1 ], ++ [ "rail", 1 ], + [ "stock", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "underbarrel", 1 ] + ], + "magazines": [ [ "308", [ "m14mag", "m14smallmag", "m14_makeshiftmag" ] ] ] + }, +@@ -232,9 +232,9 @@ + [ "mechanism", 4 ], + [ "sights", 1 ], + [ "sling", 1 ], +- [ "grip mount", 1 ], +- [ "rail mount", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "grip", 1 ], ++ [ "rail", 1 ], ++ [ "underbarrel", 1 ] + ], + "magazines": [ [ "308", [ "g3_makeshiftmag", "g3mag", "g3bigmag" ] ] ] + }, +@@ -302,8 +302,8 @@ + [ "stock", 1 ], + [ "mechanism", 4 ], + [ "sights", 1 ], +- [ "grip mount", 1 ], +- [ "rail mount", 1 ], ++ [ "grip", 1 ], ++ [ "rail", 1 ], + [ "underbarrel", 1 ] + ], + "flags": [ "RELOAD_ONE", "NEVER_JAMS" ] +diff --git a/data/json/items/gun/38.json b/data/json/items/gun/38.json +index e71fa7eaf06..c79c06b26b6 100644 +--- a/data/json/items/gun/38.json ++++ b/data/json/items/gun/38.json +@@ -21,14 +21,7 @@ + "blackpowder_tolerance": 60, + "clip_size": 2, + "reload": 200, +- "valid_mod_locations": [ +- [ "accessories", 4 ], +- [ "grip", 1 ], +- [ "sights", 1 ], +- [ "underbarrel", 1 ], +- [ "rail mount", 1 ], +- [ "stock mount", 1 ] +- ], ++ "valid_mod_locations": [ [ "accessories", 4 ], [ "grip", 1 ], [ "sights", 1 ], [ "underbarrel", 1 ], [ "rail", 1 ], [ "stock", 1 ] ], + "delete": { "flags": "NEVER_JAMS" } + }, + { +@@ -55,9 +48,9 @@ + [ "bore", 1 ], + [ "grip", 1 ], + [ "mechanism", 2 ], +- [ "sights mount", 1 ], +- [ "stock mount", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "sights", 1 ], ++ [ "stock", 1 ], ++ [ "underbarrel", 1 ] + ] + }, + { +@@ -121,7 +114,7 @@ + [ "mechanism", 4 ], + [ "rail", 1 ], + [ "sights", 1 ], +- [ "stock mount", 1 ], ++ [ "stock", 1 ], + [ "underbarrel", 1 ] + ] + }, +@@ -154,7 +147,7 @@ + [ "mechanism", 4 ], + [ "rail", 1 ], + [ "sights", 1 ], +- [ "stock mount", 1 ], ++ [ "stock", 1 ], + [ "underbarrel", 1 ] + ] + } +diff --git a/data/json/items/gun/40.json b/data/json/items/gun/40.json +index 498b7189c15..922be16a0ef 100644 +--- a/data/json/items/gun/40.json ++++ b/data/json/items/gun/40.json +@@ -191,7 +191,7 @@ + [ "sights", 1 ], + [ "stock", 1 ], + [ "underbarrel", 1 ], +- [ "rail mount", 1 ] ++ [ "rail", 1 ] + ], + "flags": [ "RELOAD_ONE", "NEVER_JAMS", "RELOAD_EJECT" ], + "delete": { "faults": "fault_gun_chamber_spent" } +diff --git a/data/json/items/gun/40x46mm.json b/data/json/items/gun/40x46mm.json +index 5e5af532fca..a3e217b890b 100644 +--- a/data/json/items/gun/40x46mm.json ++++ b/data/json/items/gun/40x46mm.json +@@ -21,10 +21,10 @@ + [ "barrel", 1 ], + [ "sights", 1 ], + [ "sling", 1 ], +- [ "grip mount", 1 ], +- [ "rail mount", 1 ], +- [ "stock mount", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "grip", 1 ], ++ [ "rail", 1 ], ++ [ "stock", 1 ], ++ [ "underbarrel", 1 ] + ] + }, + { +@@ -68,10 +68,10 @@ + [ "barrel", 1 ], + [ "sights", 1 ], + [ "sling", 1 ], +- [ "grip mount", 1 ], +- [ "rail mount", 1 ], ++ [ "grip", 1 ], ++ [ "rail", 1 ], + [ "stock", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "underbarrel", 1 ] + ] + }, + { +@@ -95,10 +95,10 @@ + [ "barrel", 1 ], + [ "sights", 1 ], + [ "sling", 1 ], +- [ "grip mount", 1 ], +- [ "rail mount", 1 ], ++ [ "grip", 1 ], ++ [ "rail", 1 ], + [ "stock", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "underbarrel", 1 ] + ] + }, + { +diff --git a/data/json/items/gun/40x53mm.json b/data/json/items/gun/40x53mm.json +index ffe7978e13b..0ed451e6df0 100644 +--- a/data/json/items/gun/40x53mm.json ++++ b/data/json/items/gun/40x53mm.json +@@ -24,8 +24,8 @@ + [ "brass catcher", 1 ], + [ "sights", 1 ], + [ "sling", 1 ], +- [ "rail mount", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "rail", 1 ], ++ [ "underbarrel", 1 ] + ], + "modes": [ [ "DEFAULT", "semi", 1, "NPC_AVOID" ], [ "AUTO", "auto", 2, "NPC_AVOID" ] ], + "magazines": [ [ "40x53mm", [ "belt40mm" ] ] ], +diff --git a/data/json/items/gun/410shot.json b/data/json/items/gun/410shot.json +index f485eb15c46..8e4bdec9554 100644 +--- a/data/json/items/gun/410shot.json ++++ b/data/json/items/gun/410shot.json +@@ -41,12 +41,12 @@ + [ "bore", 1 ], + [ "muzzle", 1 ], + [ "mechanism", 1 ], +- [ "sights mount", 1 ], ++ [ "sights", 1 ], + [ "sling", 1 ], +- [ "stock mount", 1 ], +- [ "grip mount", 1 ], +- [ "rail mount", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "stock", 1 ], ++ [ "grip", 1 ], ++ [ "rail", 1 ], ++ [ "underbarrel", 1 ] + ], + "extend": { "flags": [ "NEVER_JAMS" ] } + } +diff --git a/data/json/items/gun/44.json b/data/json/items/gun/44.json +index cc4deed8ff4..d2b4d1c3f21 100644 +--- a/data/json/items/gun/44.json ++++ b/data/json/items/gun/44.json +@@ -62,8 +62,8 @@ + [ "sights", 1 ], + [ "sling", 1 ], + [ "stock", 1 ], +- [ "rail mount", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "rail", 1 ], ++ [ "underbarrel", 1 ] + ] + }, + { +diff --git a/data/json/items/gun/44paper.json b/data/json/items/gun/44paper.json +index e3fdcabb226..483e2eecb4d 100644 +--- a/data/json/items/gun/44paper.json ++++ b/data/json/items/gun/44paper.json +@@ -41,8 +41,8 @@ + [ "grip", 1 ], + [ "stock", 1 ], + [ "underbarrel", 1 ], +- [ "rail mount", 1 ], +- [ "sights mount", 1 ] ++ [ "rail", 1 ], ++ [ "sights", 1 ] + ], + "built_in_mods": [ "lemat_revolver_shotgun" ] + } +diff --git a/data/json/items/gun/454.json b/data/json/items/gun/454.json +index 9b134a715b8..b35e2aa131e 100644 +--- a/data/json/items/gun/454.json ++++ b/data/json/items/gun/454.json +@@ -24,8 +24,8 @@ + [ "mechanism", 4 ], + [ "rail", 1 ], + [ "sights", 1 ], +- [ "stock mount", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "stock", 1 ], ++ [ "underbarrel", 1 ] + ] + }, + { +diff --git a/data/json/items/gun/4570.json b/data/json/items/gun/4570.json +index 62036e1bc6e..c54a6612423 100644 +--- a/data/json/items/gun/4570.json ++++ b/data/json/items/gun/4570.json +@@ -23,9 +23,9 @@ + [ "muzzle", 1 ], + [ "sights", 1 ], + [ "sling", 1 ], +- [ "rail mount", 1 ], ++ [ "rail", 1 ], + [ "stock", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "underbarrel", 1 ] + ], + "flags": [ "RELOAD_ONE" ] + }, +@@ -53,9 +53,9 @@ + [ "grip", 1 ], + [ "mechanism", 4 ], + [ "sights", 1 ], +- [ "rail mount", 1 ], +- [ "stock mount", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "rail", 1 ], ++ [ "stock", 1 ], ++ [ "underbarrel", 1 ] + ] + }, + { +@@ -85,9 +85,9 @@ + [ "muzzle", 1 ], + [ "sights", 1 ], + [ "sling", 1 ], +- [ "rail mount", 1 ], ++ [ "rail", 1 ], + [ "stock", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "underbarrel", 1 ] + ] + }, + { +@@ -107,7 +107,7 @@ + "ammo": "4570", + "dispersion": 400, + "blackpowder_tolerance": 80, +- "valid_mod_locations": [ [ "brass catcher", 1 ], [ "rail mount", 1 ], [ "sights", 1 ] ], ++ "valid_mod_locations": [ [ "brass catcher", 1 ], [ "rail", 1 ], [ "sights", 1 ] ], + "modes": [ [ "DEFAULT", "single", 1 ], [ "AUTO", "burst", 3 ] ], + "//": "If speedloaders get fixed to allow topping off a partially-loaded gun, adding the more common Bruce feed (40 round feed tray topped off with 20-round blocks) would be an option.", + "magazines": [ [ "4570", [ "gatlingdrum240" ] ] ], +diff --git a/data/json/items/gun/45colt.json b/data/json/items/gun/45colt.json +index db54e498372..e6a2b6a6250 100644 +--- a/data/json/items/gun/45colt.json ++++ b/data/json/items/gun/45colt.json +@@ -23,9 +23,9 @@ + [ "bore", 1 ], + [ "grip", 1 ], + [ "mechanism", 2 ], +- [ "sights mount", 1 ], +- [ "stock mount", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "sights", 1 ], ++ [ "stock", 1 ], ++ [ "underbarrel", 1 ] + ] + }, + { +diff --git a/data/json/items/gun/50.json b/data/json/items/gun/50.json +index 0920cb6f218..dad0ca0fa82 100644 +--- a/data/json/items/gun/50.json ++++ b/data/json/items/gun/50.json +@@ -46,8 +46,8 @@ + [ "sling", 1 ], + [ "mechanism", 4 ], + [ "muzzle", 1 ], +- [ "rail mount", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "rail", 1 ], ++ [ "underbarrel", 1 ] + ], + "magazines": [ [ "50", [ "belt50" ] ] ], + "flags": [ "MOUNTED_GUN" ] +@@ -84,8 +84,8 @@ + [ "sling", 1 ], + [ "stock", 1 ], + [ "grip", 1 ], +- [ "rail mount", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "rail", 1 ], ++ [ "underbarrel", 1 ] + ], + "magazines": [ ], + "clip_size": 1, +diff --git a/data/json/items/gun/500.json b/data/json/items/gun/500.json +index 0954d54fb7a..58f0ed4665f 100644 +--- a/data/json/items/gun/500.json ++++ b/data/json/items/gun/500.json +@@ -27,8 +27,8 @@ + [ "sights", 1 ], + [ "sling", 1 ], + [ "stock", 1 ], +- [ "rail mount", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "rail", 1 ], ++ [ "underbarrel", 1 ] + ] + }, + { +@@ -56,8 +56,8 @@ + [ "mechanism", 4 ], + [ "rail", 1 ], + [ "sights", 1 ], +- [ "stock mount", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "stock", 1 ], ++ [ "underbarrel", 1 ] + ] + } + ] +diff --git a/data/json/items/gun/66mm.json b/data/json/items/gun/66mm.json +index dd89b475912..effed9c7242 100644 +--- a/data/json/items/gun/66mm.json ++++ b/data/json/items/gun/66mm.json +@@ -43,13 +43,6 @@ + "durability": 9, + "clip_size": 1, + "reload": 150, +- "valid_mod_locations": [ +- [ "accessories", 1 ], +- [ "sling", 1 ], +- [ "grip mount", 1 ], +- [ "rail mount", 1 ], +- [ "sights mount", 1 ], +- [ "underbarrel mount", 1 ] +- ] ++ "valid_mod_locations": [ [ "accessories", 1 ], [ "sling", 1 ], [ "grip", 1 ], [ "rail", 1 ], [ "sights", 1 ], [ "underbarrel", 1 ] ] + } + ] +diff --git a/data/json/items/gun/762.json b/data/json/items/gun/762.json +index a21d1e6d8fa..2b516169168 100644 +--- a/data/json/items/gun/762.json ++++ b/data/json/items/gun/762.json +@@ -24,11 +24,11 @@ + [ "grip", 1 ], + [ "mechanism", 4 ], + [ "muzzle", 1 ], +- [ "rail mount", 1 ], +- [ "sights mount", 1 ], ++ [ "rail", 1 ], ++ [ "sights", 1 ], + [ "sling", 1 ], + [ "stock", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "underbarrel", 1 ] + ], + "magazines": [ [ "762", [ "akmag30", "akmag10", "akmag20", "akmag40", "akdrum75" ] ] ] + }, +@@ -100,11 +100,11 @@ + [ "grip", 1 ], + [ "mechanism", 4 ], + [ "muzzle", 1 ], +- [ "rail mount", 1 ], +- [ "sights mount", 1 ], ++ [ "rail", 1 ], ++ [ "sights", 1 ], + [ "sling", 1 ], + [ "stock", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "underbarrel", 1 ] + ], + "magazines": [ [ "762", [ "akmag30", "akmag10", "akmag20", "akmag40", "akdrum75" ] ] ] + }, +@@ -134,11 +134,11 @@ + [ "grip", 1 ], + [ "mechanism", 4 ], + [ "muzzle", 1 ], +- [ "rail mount", 1 ], +- [ "sights mount", 1 ], ++ [ "rail", 1 ], ++ [ "sights", 1 ], + [ "sling", 1 ], +- [ "stock mount", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "stock", 1 ], ++ [ "underbarrel", 1 ] + ], + "magazines": [ [ "762", [ "akmag30", "akmag10", "akmag20", "akmag40", "akdrum75" ] ] ] + } +diff --git a/data/json/items/gun/762x25.json b/data/json/items/gun/762x25.json +index 397d57e9a93..2a34af4ea9e 100644 +--- a/data/json/items/gun/762x25.json ++++ b/data/json/items/gun/762x25.json +@@ -30,7 +30,7 @@ + [ "sling", 1 ], + [ "stock", 1 ], + [ "underbarrel", 1 ], +- [ "rail mount", 1 ] ++ [ "rail", 1 ] + ], + "magazines": [ [ "762x25", [ "ppshmag", "ppshdrum" ] ] ] + }, +diff --git a/data/json/items/gun/84x246mm.json b/data/json/items/gun/84x246mm.json +index 29c8d5d810f..a3b1bcbbd97 100644 +--- a/data/json/items/gun/84x246mm.json ++++ b/data/json/items/gun/84x246mm.json +@@ -25,8 +25,8 @@ + [ "grip", 1 ], + [ "mechanism", 4 ], + [ "sights", 1 ], +- [ "rail mount", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "rail", 1 ], ++ [ "underbarrel", 1 ] + ] + }, + { +diff --git a/data/json/items/gun/9mm.json b/data/json/items/gun/9mm.json +index a3db7b059ac..dea9a3429f9 100644 +--- a/data/json/items/gun/9mm.json ++++ b/data/json/items/gun/9mm.json +@@ -117,9 +117,9 @@ + [ "grip", 1 ], + [ "mechanism", 4 ], + [ "muzzle", 1 ], +- [ "rail mount", 1 ], +- [ "sights mount", 1 ], +- [ "underbarrel mount", 1 ], ++ [ "rail", 1 ], ++ [ "sights", 1 ], ++ [ "underbarrel", 1 ], + [ "sling", 1 ], + [ "stock", 1 ] + ], +@@ -142,9 +142,9 @@ + [ "brass catcher", 1 ], + [ "grip", 1 ], + [ "mechanism", 4 ], +- [ "rail mount", 1 ], +- [ "sights mount", 1 ], +- [ "underbarrel mount", 1 ], ++ [ "rail", 1 ], ++ [ "sights", 1 ], ++ [ "underbarrel", 1 ], + [ "sling", 1 ], + [ "stock", 1 ] + ], +@@ -173,8 +173,8 @@ + [ "grip", 1 ], + [ "mechanism", 4 ], + [ "muzzle", 1 ], +- [ "rail mount", 1 ], +- [ "sights mount", 1 ], ++ [ "rail", 1 ], ++ [ "sights", 1 ], + [ "underbarrel", 1 ], + [ "sling", 1 ], + [ "stock", 1 ] +@@ -199,9 +199,9 @@ + [ "grip", 1 ], + [ "mechanism", 4 ], + [ "muzzle", 1 ], +- [ "rail mount", 1 ], ++ [ "rail", 1 ], + [ "sights", 1 ], +- [ "underbarrel mount", 1 ], ++ [ "underbarrel", 1 ], + [ "sling", 1 ], + [ "stock", 1 ] + ], +@@ -385,10 +385,10 @@ + [ "muzzle", 1 ], + [ "sling", 1 ], + [ "stock", 1 ], +- [ "grip mount", 1 ], +- [ "rail mount", 1 ], +- [ "sights mount", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "grip", 1 ], ++ [ "rail", 1 ], ++ [ "sights", 1 ], ++ [ "underbarrel", 1 ] + ], + "magazines": [ [ "9mm", [ "stenmag", "survivor9mm_mag" ] ] ] + }, +diff --git a/data/json/items/gun/atgm.json b/data/json/items/gun/atgm.json +index d08f2aa7a30..706e60049c6 100644 +--- a/data/json/items/gun/atgm.json ++++ b/data/json/items/gun/atgm.json +@@ -19,7 +19,7 @@ + "clip_size": 1, + "reload": 600, + "loudness": 200, +- "valid_mod_locations": [ [ "sling", 1 ], [ "rail mount", 1 ], [ "sights mount", 1 ], [ "underbarrel mount", 1 ] ], ++ "valid_mod_locations": [ [ "sling", 1 ], [ "rail", 1 ], [ "sights", 1 ], [ "underbarrel", 1 ] ], + "extend": { "flags": [ "RELOAD_EJECT", "MOUNTED_GUN" ] } + } + ] +diff --git a/data/json/items/gun/blunderbuss.json b/data/json/items/gun/blunderbuss.json +index 9b95f5f0763..f123f83524e 100644 +--- a/data/json/items/gun/blunderbuss.json ++++ b/data/json/items/gun/blunderbuss.json +@@ -19,14 +19,7 @@ + "clip_size": 1, + "reload": 300, + "barrel_length": "500 ml", +- "valid_mod_locations": [ +- [ "sling", 1 ], +- [ "stock", 1 ], +- [ "grip mount", 1 ], +- [ "rail mount", 1 ], +- [ "sights mount", 1 ], +- [ "underbarrel mount", 1 ] +- ], ++ "valid_mod_locations": [ [ "sling", 1 ], [ "stock", 1 ], [ "grip", 1 ], [ "rail", 1 ], [ "sights", 1 ], [ "underbarrel", 1 ] ], + "faults": [ ] + } + ] +diff --git a/data/json/items/gun/combination.json b/data/json/items/gun/combination.json +index 3287be03365..22e6bf7fa5f 100644 +--- a/data/json/items/gun/combination.json ++++ b/data/json/items/gun/combination.json +@@ -28,7 +28,7 @@ + [ "sling", 1 ], + [ "stock", 1 ], + [ "underbarrel", 1 ], +- [ "rail mount", 1 ] ++ [ "rail", 1 ] + ] + }, + { +diff --git a/data/json/items/gun/flammable.json b/data/json/items/gun/flammable.json +index 9068ff03e6b..3ba14725f14 100644 +--- a/data/json/items/gun/flammable.json ++++ b/data/json/items/gun/flammable.json +@@ -17,10 +17,10 @@ + [ "accessories", 1 ], + [ "grip", 1 ], + [ "sling", 1 ], +- [ "rail mount", 1 ], +- [ "stock mount", 1 ], +- [ "sights mount", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "rail", 1 ], ++ [ "stock", 1 ], ++ [ "sights", 1 ], ++ [ "underbarrel", 1 ] + ], + "magazines": [ [ "flammable", [ "pressurized_tank" ] ] ] + }, +diff --git a/data/json/items/gun/flintlock.json b/data/json/items/gun/flintlock.json +index de0bc8717f9..90b94fd59ae 100644 +--- a/data/json/items/gun/flintlock.json ++++ b/data/json/items/gun/flintlock.json +@@ -9,11 +9,11 @@ + "valid_mod_locations": [ + [ "accessories", 1 ], + [ "sling", 1 ], +- [ "grip mount", 1 ], +- [ "rail mount", 1 ], +- [ "sights mount", 1 ], ++ [ "grip", 1 ], ++ [ "rail", 1 ], ++ [ "sights", 1 ], + [ "stock", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "underbarrel", 1 ] + ], + "volume": "2250 ml", + "weight": "3600 g", +@@ -55,14 +55,7 @@ + "blackpowder_tolerance": 96, + "clip_size": 1, + "reload": 600, +- "valid_mod_locations": [ +- [ "accessories", 1 ], +- [ "grip mount", 1 ], +- [ "rail mount", 1 ], +- [ "sights mount", 1 ], +- [ "stock mount", 1 ], +- [ "underbarrel mount", 1 ] +- ], ++ "valid_mod_locations": [ [ "accessories", 1 ], [ "grip", 1 ], [ "rail", 1 ], [ "sights", 1 ], [ "stock", 1 ], [ "underbarrel", 1 ] ], + "flags": [ "NEVER_JAMS" ] + }, + { +@@ -91,9 +84,9 @@ + [ "accessories", 1 ], + [ "sling", 1 ], + [ "underbarrel", 1 ], +- [ "grip mount", 1 ], +- [ "rail mount", 1 ], +- [ "sights mount", 1 ], ++ [ "grip", 1 ], ++ [ "rail", 1 ], ++ [ "sights", 1 ], + [ "stock", 1 ] + ], + "extend": { "flags": [ "DURABLE_MELEE" ] } +diff --git a/data/json/items/gun/misc.json b/data/json/items/gun/misc.json +index 54884ef07a8..ec4d43f9286 100644 +--- a/data/json/items/gun/misc.json ++++ b/data/json/items/gun/misc.json +@@ -19,7 +19,7 @@ + "clip_size": 1, + "reload": 800, + "loudness": 200, +- "valid_mod_locations": [ [ "sling", 1 ], [ "grip mount", 1 ], [ "rail mount", 1 ], [ "sights mount", 1 ], [ "underbarrel mount", 1 ] ] ++ "valid_mod_locations": [ [ "sling", 1 ], [ "grip", 1 ], [ "rail", 1 ], [ "sights", 1 ], [ "underbarrel", 1 ] ] + }, + { + "id": "watercannon", +diff --git a/data/json/items/gun/nail.json b/data/json/items/gun/nail.json +index bedf605cf5b..6df29b41a28 100644 +--- a/data/json/items/gun/nail.json ++++ b/data/json/items/gun/nail.json +@@ -18,6 +18,6 @@ + "loudness": 5, + "clip_size": 20, + "reload": 50, +- "valid_mod_locations": [ [ "grip mount", 1 ], [ "rail mount", 1 ], [ "sights mount", 1 ], [ "stock mount", 1 ], [ "underbarrel mount", 1 ] ] ++ "valid_mod_locations": [ [ "grip", 1 ], [ "rail", 1 ], [ "sights", 1 ], [ "stock", 1 ], [ "underbarrel", 1 ] ] + } + ] +diff --git a/data/json/items/gun/paintball.json b/data/json/items/gun/paintball.json +index 6eea43e32fe..f1e584dc959 100644 +--- a/data/json/items/gun/paintball.json ++++ b/data/json/items/gun/paintball.json +@@ -23,13 +23,6 @@ + "durability": 7, + "clip_size": 50, + "reload": 50, +- "valid_mod_locations": [ +- [ "sling", 1 ], +- [ "grip mount", 1 ], +- [ "rail mount", 1 ], +- [ "sights mount", 1 ], +- [ "stock mount", 1 ], +- [ "underbarrel mount", 1 ] +- ] ++ "valid_mod_locations": [ [ "sling", 1 ], [ "grip", 1 ], [ "rail", 1 ], [ "sights", 1 ], [ "stock", 1 ], [ "underbarrel", 1 ] ] + } + ] +diff --git a/data/json/items/gun/rpg.json b/data/json/items/gun/rpg.json +index 44e881691c8..3ffb55be6e7 100644 +--- a/data/json/items/gun/rpg.json ++++ b/data/json/items/gun/rpg.json +@@ -24,8 +24,8 @@ + [ "mechanism", 4 ], + [ "sights", 1 ], + [ "sling", 1 ], +- [ "rail mount", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "rail", 1 ], ++ [ "underbarrel", 1 ] + ] + } + ] +diff --git a/data/json/items/gun/shot.json b/data/json/items/gun/shot.json +index d170049a3b3..a599c10aae7 100644 +--- a/data/json/items/gun/shot.json ++++ b/data/json/items/gun/shot.json +@@ -24,11 +24,11 @@ + "valid_mod_locations": [ + [ "accessories", 1 ], + [ "grip", 1 ], +- [ "stock mount", 1 ], ++ [ "stock", 1 ], + [ "mechanism", 4 ], +- [ "sights mount", 1 ], +- [ "rail mount", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "sights", 1 ], ++ [ "rail", 1 ], ++ [ "underbarrel", 1 ] + ] + }, + { +@@ -50,7 +50,7 @@ + "burst": 6, + "reload": 200, + "handling": 30, +- "valid_mod_locations": [ [ "accessories", 4 ], [ "sights", 1 ], [ "rail mount", 1 ] ], ++ "valid_mod_locations": [ [ "accessories", 4 ], [ "sights", 1 ], [ "rail", 1 ] ], + "magazines": [ [ "shot", [ "shotbelt_20" ] ] ], + "flags": [ "MOUNTED_GUN" ] + }, +@@ -96,10 +96,10 @@ + [ "barrel", 1 ], + [ "bore", 1 ], + [ "brass catcher", 1 ], +- [ "grip mount", 1 ], ++ [ "grip", 1 ], + [ "mechanism", 4 ], + [ "muzzle", 1 ], +- [ "rail mount", 1 ], ++ [ "rail", 1 ], + [ "sights", 1 ], + [ "sling", 1 ], + [ "underbarrel", 2 ] +@@ -128,10 +128,10 @@ + [ "barrel", 1 ], + [ "bore", 1 ], + [ "brass catcher", 1 ], +- [ "grip mount", 1 ], ++ [ "grip", 1 ], + [ "mechanism", 4 ], + [ "muzzle", 1 ], +- [ "rail mount", 1 ], ++ [ "rail", 1 ], + [ "sights", 1 ], + [ "sling", 1 ], + [ "underbarrel", 2 ] +@@ -157,11 +157,11 @@ + [ "mechanism", 4 ], + [ "sling", 1 ], + [ "barrel", 1 ], +- [ "rail mount", 1 ], ++ [ "rail", 1 ], + [ "loading port", 1 ], + [ "brass catcher", 1 ], + [ "sights", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "underbarrel", 1 ] + ], + "flags": [ "RELOAD_ONE", "NEEDS_UNFOLD" ] + }, +@@ -236,14 +236,14 @@ + [ "accessories", 2 ], + [ "sling", 1 ], + [ "barrel", 1 ], +- [ "grip mount", 1 ], ++ [ "grip", 1 ], + [ "stock", 1 ], +- [ "rail mount", 1 ], ++ [ "rail", 1 ], + [ "loading port", 1 ], + [ "brass catcher", 1 ], + [ "mechanism", 4 ], + [ "sights", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "underbarrel", 1 ] + ], + "extend": { "flags": [ "RELOAD_ONE" ] } + }, +@@ -261,12 +261,12 @@ + "valid_mod_locations": [ + [ "accessories", 2 ], + [ "sling", 1 ], +- [ "stock mount", 1 ], ++ [ "stock", 1 ], + [ "barrel", 1 ], +- [ "grip mount", 1 ], +- [ "rail mount", 1 ], +- [ "sights mount", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "grip", 1 ], ++ [ "rail", 1 ], ++ [ "sights", 1 ], ++ [ "underbarrel", 1 ] + ], + "extend": { "flags": [ "RELOAD_ONE" ] } + }, +@@ -291,13 +291,13 @@ + "valid_mod_locations": [ + [ "accessories", 2 ], + [ "sling", 1 ], +- [ "stock mount", 1 ], ++ [ "stock", 1 ], + [ "barrel", 1 ], + [ "muzzle", 1 ], +- [ "grip mount", 1 ], +- [ "rail mount", 1 ], +- [ "sights mount", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "grip", 1 ], ++ [ "rail", 1 ], ++ [ "sights", 1 ], ++ [ "underbarrel", 1 ] + ], + "flags": [ "NEVER_JAMS", "RELOAD_EJECT" ] + }, +@@ -347,11 +347,11 @@ + [ "grip", 1 ], + [ "loading port", 1 ], + [ "mechanism", 4 ], +- [ "rail mount", 1 ], ++ [ "rail", 1 ], + [ "sights", 1 ], + [ "sling", 1 ], + [ "stock", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "underbarrel", 1 ] + ] + }, + { +@@ -394,10 +394,10 @@ + [ "barrel", 1 ], + [ "stock", 1 ], + [ "mechanism", 4 ], +- [ "rail mount", 1 ], ++ [ "rail", 1 ], + [ "loading port", 1 ], +- [ "sights mount", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "sights", 1 ], ++ [ "underbarrel", 1 ] + ], + "extend": { "flags": [ "RELOAD_ONE" ] } + }, +@@ -423,10 +423,10 @@ + [ "sling", 1 ], + [ "stock", 1 ], + [ "barrel", 1 ], +- [ "grip mount", 1 ], +- [ "rail mount", 1 ], +- [ "sights mount", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "grip", 1 ], ++ [ "rail", 1 ], ++ [ "sights", 1 ], ++ [ "underbarrel", 1 ] + ], + "flags": [ "RELOAD_ONE", "RELOAD_EJECT", "NEVER_JAMS" ] + }, +@@ -452,10 +452,10 @@ + [ "mechanism", 4 ], + [ "barrel", 1 ], + [ "brass catcher", 1 ], +- [ "grip mount", 1 ], +- [ "rail mount", 1 ], +- [ "sights mount", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "grip", 1 ], ++ [ "rail", 1 ], ++ [ "sights", 1 ], ++ [ "underbarrel", 1 ] + ], + "magazines": [ [ "shot", [ "saiga10mag", "saiga30mag" ] ] ] + }, +@@ -496,12 +496,12 @@ + [ "bore", 1 ], + [ "muzzle", 1 ], + [ "mechanism", 1 ], +- [ "sights mount", 1 ], ++ [ "sights", 1 ], + [ "sling", 1 ], + [ "stock", 1 ], +- [ "grip mount", 1 ], +- [ "rail mount", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "grip", 1 ], ++ [ "rail", 1 ], ++ [ "underbarrel", 1 ] + ], + "extend": { "flags": [ "NEVER_JAMS" ] } + }, +@@ -533,11 +533,11 @@ + [ "brass catcher", 1 ], + [ "grip", 1 ], + [ "mechanism", 4 ], +- [ "rail mount", 1 ], +- [ "sights mount", 1 ], ++ [ "rail", 1 ], ++ [ "sights", 1 ], + [ "sling", 1 ], + [ "stock", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "underbarrel", 1 ] + ], + "flags": [ "RELOAD_ONE", "RELOAD_EJECT", "NEVER_JAMS" ] + }, +@@ -562,14 +562,14 @@ + [ "accessories", 4 ], + [ "bore", 1 ], + [ "brass catcher", 1 ], +- [ "grip mount", 1 ], ++ [ "grip", 1 ], + [ "mechanism", 2 ], + [ "muzzle", 1 ], +- [ "rail mount", 1 ], +- [ "sights mount", 1 ], ++ [ "rail", 1 ], ++ [ "sights", 1 ], + [ "sling", 1 ], + [ "stock", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "underbarrel", 1 ] + ], + "flags": [ "RELOAD_ONE" ] + }, +@@ -595,11 +595,11 @@ + [ "accessories", 2 ], + [ "bore", 1 ], + [ "brass catcher", 1 ], +- [ "grip mount", 1 ], ++ [ "grip", 1 ], + [ "mechanism", 4 ], + [ "muzzle", 1 ], + [ "underbarrel", 2 ], +- [ "rail mount", 1 ], ++ [ "rail", 1 ], + [ "sights", 1 ], + [ "sling", 1 ] + ], +@@ -628,9 +628,9 @@ + [ "muzzle", 1 ], + [ "grip", 1 ], + [ "brass catcher", 1 ], +- [ "rail mount", 1 ], +- [ "sights mount", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "rail", 1 ], ++ [ "sights", 1 ], ++ [ "underbarrel", 1 ] + ], + "modes": [ [ "DEFAULT", "semi", 1 ], [ "AUTO", "auto", 5 ] ], + "magazines": [ [ "shot", [ "USAS10mag", "USAS20mag" ] ] ] +@@ -657,14 +657,14 @@ + "modes": [ [ "DEFAULT", "single", 1 ] ], + "valid_mod_locations": [ + [ "accessories", 2 ], +- [ "stock mount", 1 ], ++ [ "stock", 1 ], + [ "mechanism", 2 ], + [ "barrel", 1 ], +- [ "grip mount", 1 ], ++ [ "grip", 1 ], + [ "brass catcher", 1 ], +- [ "rail mount", 1 ], +- [ "sights mount", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "rail", 1 ], ++ [ "sights", 1 ], ++ [ "underbarrel", 1 ] + ], + "flags": [ "RELOAD_ONE" ] + }, +@@ -694,9 +694,9 @@ + [ "muzzle", 1 ], + [ "sling", 1 ], + [ "brass catcher", 1 ], +- [ "grip mount", 1 ], +- [ "rail mount", 1 ], +- [ "sights mount", 1 ], ++ [ "grip", 1 ], ++ [ "rail", 1 ], ++ [ "sights", 1 ], + [ "underbarrel", 1 ] + ], + "default_mods": [ "sword_bayonet" ], +diff --git a/data/json/items/gun/shotpaper.json b/data/json/items/gun/shotpaper.json +index f5cf170037f..27105ff1bfa 100644 +--- a/data/json/items/gun/shotpaper.json ++++ b/data/json/items/gun/shotpaper.json +@@ -22,12 +22,12 @@ + [ "accessories", 2 ], + [ "barrel", 1 ], + [ "muzzle", 1 ], +- [ "sights mount", 1 ], ++ [ "sights", 1 ], + [ "sling", 1 ], + [ "stock", 1 ], +- [ "grip mount", 1 ], +- [ "rail mount", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "grip", 1 ], ++ [ "rail", 1 ], ++ [ "underbarrel", 1 ] + ], + "flags": [ "NEVER_JAMS" ] + } +diff --git a/data/json/items/gun/signal_flare.json b/data/json/items/gun/signal_flare.json +index b359f251261..9592711086c 100644 +--- a/data/json/items/gun/signal_flare.json ++++ b/data/json/items/gun/signal_flare.json +@@ -17,14 +17,7 @@ + "durability": 7, + "loudness": 40, + "clip_size": 1, +- "valid_mod_locations": [ +- [ "accessories", 4 ], +- [ "grip", 1 ], +- [ "stock", 1 ], +- [ "rail mount", 1 ], +- [ "sights mount", 1 ], +- [ "underbarrel mount", 1 ] +- ], ++ "valid_mod_locations": [ [ "accessories", 4 ], [ "grip", 1 ], [ "stock", 1 ], [ "rail", 1 ], [ "sights", 1 ], [ "underbarrel", 1 ] ], + "extend": { "flags": [ "WATERPROOF_GUN", "PYROMANIAC_WEAPON" ] }, + "faults": [ ] + } +diff --git a/data/json/items/gun/ups.json b/data/json/items/gun/ups.json +index c291ad20b75..f0936360820 100644 +--- a/data/json/items/gun/ups.json ++++ b/data/json/items/gun/ups.json +@@ -122,11 +122,11 @@ + [ "emitter", 1 ], + [ "lens", 1 ], + [ "sling", 1 ], +- [ "grip mount", 1 ], +- [ "rail mount", 1 ], +- [ "sights mount", 1 ], +- [ "stock mount", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "grip", 1 ], ++ [ "rail", 1 ], ++ [ "sights", 1 ], ++ [ "stock", 1 ], ++ [ "underbarrel", 1 ] + ], + "ammo_effects": [ "LASER", "INCENDIARY" ] + }, +diff --git a/data/json/items/ranged/crossbows.json b/data/json/items/ranged/crossbows.json +index 30df24032c4..7626ebfa1f0 100644 +--- a/data/json/items/ranged/crossbows.json ++++ b/data/json/items/ranged/crossbows.json +@@ -338,14 +338,7 @@ + "dispersion": 375, + "durability": 6, + "reload": 800, +- "valid_mod_locations": [ +- [ "accessories", 4 ], +- [ "dampening", 1 ], +- [ "rail mount", 1 ], +- [ "sights mount", 1 ], +- [ "underbarrel mount", 1 ], +- [ "mechanism", 1 ] +- ] ++ "valid_mod_locations": [ [ "accessories", 4 ], [ "dampening", 1 ], [ "rail", 1 ], [ "sights", 1 ], [ "underbarrel", 1 ], [ "mechanism", 1 ] ] + }, + { + "id": "compositecrossbow", +diff --git a/data/json/items/ranged/pneumatic.json b/data/json/items/ranged/pneumatic.json +index 3249c93783c..1bbe5f657af 100644 +--- a/data/json/items/ranged/pneumatic.json ++++ b/data/json/items/ranged/pneumatic.json +@@ -27,9 +27,9 @@ + [ "sights", 1 ], + [ "sling", 1 ], + [ "stock", 1 ], +- [ "grip mount", 1 ], +- [ "rail mount", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "grip", 1 ], ++ [ "rail", 1 ], ++ [ "underbarrel", 1 ] + ] + }, + { +diff --git a/data/json/items/ranged/spearguns.json b/data/json/items/ranged/spearguns.json +index a1d95fbe962..13fe8e90d0c 100644 +--- a/data/json/items/ranged/spearguns.json ++++ b/data/json/items/ranged/spearguns.json +@@ -94,8 +94,8 @@ + [ "sights", 1 ], + [ "sling", 1 ], + [ "stock", 1 ], +- [ "rail mount", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "rail", 1 ], ++ [ "underbarrel", 1 ] + ] + }, + { +diff --git a/data/json/not_really_obsolete.json b/data/json/not_really_obsolete.json +index b745c6c2840..aa615cfaf2e 100644 +--- a/data/json/not_really_obsolete.json ++++ b/data/json/not_really_obsolete.json +@@ -148,8 +148,8 @@ + [ "sights", 1 ], + [ "sling", 1 ], + [ "stock", 1 ], +- [ "rail mount", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "rail", 1 ], ++ [ "underbarrel", 1 ] + ], + "ammo_effects": [ "PLASMA", "EXPLOSIVE", "FLAME" ] + }, +diff --git a/data/json/obsoletion/items.json b/data/json/obsoletion/items.json +index 74d09d98e1c..95c7d704106 100644 +--- a/data/json/obsoletion/items.json ++++ b/data/json/obsoletion/items.json +@@ -386,7 +386,7 @@ + "range": -2, + "dispersion": 300, + "clip_size": 100, +- "valid_mod_locations": [ [ "sling", 1 ], [ "stock", 1 ], [ "rail mount", 1 ] ], ++ "valid_mod_locations": [ [ "sling", 1 ], [ "stock", 1 ], [ "rail", 1 ] ], + "relative": { "reload": 4 } + }, + { +@@ -461,7 +461,7 @@ + [ "rail", 1 ], + [ "sights", 1 ], + [ "stock", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "underbarrel", 1 ] + ], + "ammo_effects": [ "LASER", "INCENDIARY" ], + "flags": [ "NO_UNLOAD" ] +@@ -1246,9 +1246,9 @@ + [ "muzzle", 1 ], + [ "sights", 1 ], + [ "sling", 1 ], +- [ "rail mount", 1 ], +- [ "stock mount", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "rail", 1 ], ++ [ "stock", 1 ], ++ [ "underbarrel", 1 ] + ], + "blackpowder_tolerance": 60, + "relative": { "durability": -3 }, +@@ -1915,8 +1915,8 @@ + [ "sights", 1 ], + [ "sling", 1 ], + [ "stock", 1 ], +- [ "rail mount", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "rail", 1 ], ++ [ "underbarrel", 1 ] + ] + }, + { +@@ -1943,7 +1943,7 @@ + "durability": 7, + "clip_size": 1, + "reload": 800, +- "valid_mod_locations": [ [ "sling", 1 ], [ "grip mount", 1 ], [ "rail mount", 1 ], [ "sights mount", 1 ], [ "underbarrel mount", 1 ] ] ++ "valid_mod_locations": [ [ "sling", 1 ], [ "grip", 1 ], [ "rail", 1 ], [ "sights", 1 ], [ "underbarrel", 1 ] ] + }, + { + "id": "coilgun", +@@ -1974,8 +1974,8 @@ + [ "sights", 1 ], + [ "sling", 1 ], + [ "stock", 1 ], +- [ "rail mount", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "rail", 1 ], ++ [ "underbarrel", 1 ] + ], + "magazines": [ [ "nail", [ "nailmag" ] ] ] + }, +@@ -1999,8 +1999,8 @@ + [ "sights", 1 ], + [ "sling", 1 ], + [ "stock", 1 ], +- [ "rail mount", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "rail", 1 ], ++ [ "underbarrel", 1 ] + ], + "magazines": [ [ "nail", [ "nailmag" ] ] ], + "relative": { "weight": 1000, "volume": 6, "range": 3, "ranged_damage": { "damage_type": "stab", "amount": 4 } }, +diff --git a/data/json/items/gunmod/mount.json b/data/json/obsoletion/mount.json +similarity index 100% +rename from data/json/items/gunmod/mount.json +rename to data/json/obsoletion/mount.json +diff --git a/data/json/obsoletion/recipes.json b/data/json/obsoletion/recipes.json +index 9bd16374c34..ae6d33169e4 100644 +--- a/data/json/obsoletion/recipes.json ++++ b/data/json/obsoletion/recipes.json +@@ -3239,6 +3239,41 @@ + "result": "linuxtshirtuncraft", + "obsolete": true + }, ++ { ++ "type": "recipe", ++ "result": "grip_mount", ++ "obsolete": true ++ }, ++ { ++ "type": "recipe", ++ "result": "stock_mount", ++ "obsolete": true ++ }, ++ { ++ "type": "recipe", ++ "result": "underbarrel_mount", ++ "obsolete": true ++ }, ++ { ++ "type": "recipe", ++ "result": "rail_mount", ++ "obsolete": true ++ }, ++ { ++ "type": "recipe", ++ "result": "sights_mount_pistol", ++ "obsolete": true ++ }, ++ { ++ "type": "recipe", ++ "result": "sights_mount_launcher", ++ "obsolete": true ++ }, ++ { ++ "type": "recipe", ++ "result": "sights_mount", ++ "obsolete": true ++ }, + { + "type": "recipe", + "result": "welder_crude", +diff --git a/data/json/recipes/weapon/mods.json b/data/json/recipes/weapon/mods.json +index 1ac272e0e65..059185de546 100644 +--- a/data/json/recipes/weapon/mods.json ++++ b/data/json/recipes/weapon/mods.json +@@ -738,188 +738,6 @@ + "tools": [ [ [ "large_repairkit", 25 ], [ "small_repairkit", 45 ] ] ], + "components": [ [ [ "offset_sights", 1 ] ], [ [ "scrap", 1 ] ], [ [ "plastic_chunk", 1 ] ] ] + }, +- { +- "result": "sights_mount", +- "type": "recipe", +- "category": "CC_WEAPON", +- "subcategory": "CSC_WEAPON_MODS", +- "skill_used": "fabrication", +- "difficulty": 3, +- "skills_required": [ [ "gun", 4 ] ], +- "time": "30 m", +- "book_learn": [ +- [ "mag_guns", 4 ], +- [ "mag_pistol", 4 ], +- [ "mag_shotgun", 4 ], +- [ "mag_smg", 4 ], +- [ "mag_rifle", 4 ], +- [ "manual_gun", 4 ], +- [ "manual_pistol", 4 ], +- [ "manual_shotgun", 4 ], +- [ "manual_smg", 4 ], +- [ "manual_rifle", 4 ] +- ], +- "using": [ [ "soldering_standard", 15 ] ], +- "qualities": [ { "id": "HAMMER_FINE", "level": 1 }, { "id": "SAW_M_FINE", "level": 1 } ], +- "tools": [ [ [ "large_repairkit", 10 ], [ "small_repairkit", 30 ] ] ], +- "components": [ [ [ "scrap", 1 ] ], [ [ "plastic_chunk", 1 ] ] ] +- }, +- { +- "result": "sights_mount_launcher", +- "type": "recipe", +- "category": "CC_WEAPON", +- "subcategory": "CSC_WEAPON_MODS", +- "skill_used": "fabrication", +- "difficulty": 3, +- "skills_required": [ [ "gun", 4 ] ], +- "time": "30 m", +- "book_learn": [ +- [ "mag_guns", 4 ], +- [ "mag_pistol", 4 ], +- [ "mag_shotgun", 4 ], +- [ "mag_smg", 4 ], +- [ "mag_rifle", 4 ], +- [ "manual_gun", 4 ], +- [ "manual_pistol", 4 ], +- [ "manual_shotgun", 4 ], +- [ "manual_smg", 4 ], +- [ "manual_rifle", 4 ] +- ], +- "using": [ [ "soldering_standard", 15 ] ], +- "qualities": [ { "id": "HAMMER_FINE", "level": 1 }, { "id": "SAW_M_FINE", "level": 1 } ], +- "tools": [ [ [ "large_repairkit", 10 ], [ "small_repairkit", 30 ] ] ], +- "components": [ [ [ "scrap", 1 ] ], [ [ "plastic_chunk", 1 ] ] ] +- }, +- { +- "result": "sights_mount_pistol", +- "type": "recipe", +- "category": "CC_WEAPON", +- "subcategory": "CSC_WEAPON_MODS", +- "skill_used": "fabrication", +- "difficulty": 3, +- "skills_required": [ [ "gun", 4 ] ], +- "time": "30 m", +- "book_learn": [ +- [ "mag_guns", 4 ], +- [ "mag_pistol", 4 ], +- [ "mag_shotgun", 4 ], +- [ "mag_smg", 4 ], +- [ "mag_rifle", 4 ], +- [ "manual_gun", 4 ], +- [ "manual_pistol", 4 ], +- [ "manual_shotgun", 4 ], +- [ "manual_smg", 4 ], +- [ "manual_rifle", 4 ] +- ], +- "using": [ [ "soldering_standard", 15 ] ], +- "qualities": [ { "id": "HAMMER_FINE", "level": 1 }, { "id": "SAW_M_FINE", "level": 1 } ], +- "tools": [ [ [ "large_repairkit", 10 ], [ "small_repairkit", 30 ] ] ], +- "components": [ [ [ "scrap", 1 ] ], [ [ "plastic_chunk", 1 ] ] ] +- }, +- { +- "result": "rail_mount", +- "type": "recipe", +- "category": "CC_WEAPON", +- "subcategory": "CSC_WEAPON_MODS", +- "skill_used": "fabrication", +- "difficulty": 3, +- "skills_required": [ [ "gun", 4 ] ], +- "time": "30 m", +- "book_learn": [ +- [ "mag_guns", 4 ], +- [ "mag_pistol", 4 ], +- [ "mag_shotgun", 4 ], +- [ "mag_smg", 4 ], +- [ "mag_rifle", 4 ], +- [ "manual_gun", 4 ], +- [ "manual_pistol", 4 ], +- [ "manual_shotgun", 4 ], +- [ "manual_smg", 4 ], +- [ "manual_rifle", 4 ] +- ], +- "using": [ [ "soldering_standard", 15 ] ], +- "qualities": [ { "id": "HAMMER_FINE", "level": 1 }, { "id": "SAW_M_FINE", "level": 1 } ], +- "tools": [ [ [ "large_repairkit", 10 ], [ "small_repairkit", 30 ] ] ], +- "components": [ [ [ "scrap", 1 ] ], [ [ "plastic_chunk", 1 ] ] ] +- }, +- { +- "result": "underbarrel_mount", +- "type": "recipe", +- "category": "CC_WEAPON", +- "subcategory": "CSC_WEAPON_MODS", +- "skill_used": "fabrication", +- "difficulty": 3, +- "skills_required": [ [ "gun", 4 ] ], +- "time": "30 m", +- "book_learn": [ +- [ "mag_guns", 4 ], +- [ "mag_pistol", 4 ], +- [ "mag_shotgun", 4 ], +- [ "mag_smg", 4 ], +- [ "mag_rifle", 4 ], +- [ "manual_gun", 4 ], +- [ "manual_pistol", 4 ], +- [ "manual_shotgun", 4 ], +- [ "manual_smg", 4 ], +- [ "manual_rifle", 4 ] +- ], +- "using": [ [ "soldering_standard", 15 ] ], +- "qualities": [ { "id": "HAMMER_FINE", "level": 1 }, { "id": "SAW_M_FINE", "level": 1 } ], +- "tools": [ [ [ "large_repairkit", 10 ], [ "small_repairkit", 30 ] ] ], +- "components": [ [ [ "scrap", 1 ] ], [ [ "plastic_chunk", 1 ] ] ] +- }, +- { +- "result": "stock_mount", +- "type": "recipe", +- "category": "CC_WEAPON", +- "subcategory": "CSC_WEAPON_MODS", +- "skill_used": "fabrication", +- "difficulty": 3, +- "skills_required": [ [ "gun", 5 ] ], +- "time": "30 m", +- "book_learn": [ +- [ "mag_guns", 4 ], +- [ "mag_pistol", 4 ], +- [ "mag_shotgun", 4 ], +- [ "mag_smg", 4 ], +- [ "mag_rifle", 4 ], +- [ "manual_gun", 4 ], +- [ "manual_pistol", 4 ], +- [ "manual_shotgun", 4 ], +- [ "manual_smg", 4 ], +- [ "manual_rifle", 4 ] +- ], +- "using": [ [ "soldering_standard", 15 ] ], +- "qualities": [ { "id": "HAMMER_FINE", "level": 1 }, { "id": "SAW_M_FINE", "level": 1 } ], +- "tools": [ [ [ "large_repairkit", 10 ], [ "small_repairkit", 30 ] ] ], +- "components": [ [ [ "scrap", 3 ] ] ] +- }, +- { +- "result": "grip_mount", +- "type": "recipe", +- "category": "CC_WEAPON", +- "subcategory": "CSC_WEAPON_MODS", +- "skill_used": "fabrication", +- "difficulty": 3, +- "skills_required": [ [ "gun", 5 ] ], +- "time": "30 m", +- "book_learn": [ +- [ "mag_guns", 4 ], +- [ "mag_pistol", 4 ], +- [ "mag_shotgun", 4 ], +- [ "mag_smg", 4 ], +- [ "mag_rifle", 4 ], +- [ "manual_gun", 4 ], +- [ "manual_pistol", 4 ], +- [ "manual_shotgun", 4 ], +- [ "manual_smg", 4 ], +- [ "manual_rifle", 4 ] +- ], +- "using": [ [ "soldering_standard", 15 ] ], +- "qualities": [ { "id": "HAMMER_FINE", "level": 1 }, { "id": "SAW_M_FINE", "level": 1 } ], +- "tools": [ [ [ "large_repairkit", 10 ], [ "small_repairkit", 30 ] ] ], +- "components": [ [ [ "scrap", 1 ] ], [ [ "plastic_chunk", 3 ] ] ] +- }, + { + "type": "recipe", + "result": "tele_sight", +diff --git a/data/mods/Aftershock/items/obsolete.json b/data/mods/Aftershock/items/obsolete.json +index 17f2bb22534..f6806ad84f2 100644 +--- a/data/mods/Aftershock/items/obsolete.json ++++ b/data/mods/Aftershock/items/obsolete.json +@@ -356,8 +356,8 @@ + [ "sling", 1 ], + [ "stock", 1 ], + [ "sights", 1 ], +- [ "rail mount", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "rail", 1 ], ++ [ "underbarrel", 1 ] + ], + "ammo_effects": [ "TRAIL" ] + } +diff --git a/data/mods/Aftershock/items/weapons.json b/data/mods/Aftershock/items/weapons.json +index 77652ecf40d..be8ba0b5b91 100644 +--- a/data/mods/Aftershock/items/weapons.json ++++ b/data/mods/Aftershock/items/weapons.json +@@ -250,11 +250,11 @@ + [ "emitter", 1 ], + [ "lens", 1 ], + [ "sling", 1 ], +- [ "grip mount", 1 ], +- [ "rail mount", 1 ], +- [ "sights mount", 1 ], +- [ "stock mount", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "grip", 1 ], ++ [ "rail", 1 ], ++ [ "sights", 1 ], ++ [ "stock", 1 ], ++ [ "underbarrel", 1 ] + ], + "ammo_effects": [ "LASER", "INCENDIARY" ], + "flags": [ "NO_UNLOAD", "NON_FOULING", "NEEDS_NO_LUBE" ] +diff --git a/data/mods/Generic_Guns/firearms/obsolete.json b/data/mods/Generic_Guns/firearms/obsolete.json +index fcf88b10709..5345ecfa464 100644 +--- a/data/mods/Generic_Guns/firearms/obsolete.json ++++ b/data/mods/Generic_Guns/firearms/obsolete.json +@@ -32,10 +32,10 @@ + [ "muzzle", 1 ], + [ "sling", 1 ], + [ "stock", 1 ], +- [ "grip mount", 1 ], +- [ "rail mount", 1 ], +- [ "sights mount", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "grip", 1 ], ++ [ "rail", 1 ], ++ [ "sights", 1 ], ++ [ "underbarrel", 1 ] + ], + "magazines": [ + [ "ammo_pistol", [ "pistol_magnum_mag", "pistol_magnum_mag_hc" ] ], +diff --git a/data/mods/Magiclysm/items/enchanted_ranged.json b/data/mods/Magiclysm/items/enchanted_ranged.json +index 3701be94ecf..c5f2bcc1bee 100644 +--- a/data/mods/Magiclysm/items/enchanted_ranged.json ++++ b/data/mods/Magiclysm/items/enchanted_ranged.json +@@ -51,10 +51,10 @@ + [ "mechanism", 1 ], + [ "barrel", 1 ], + [ "grip", 1 ], +- [ "rail mount", 1 ], ++ [ "rail", 1 ], + [ "sights", 1 ], +- [ "stock mount", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "stock", 1 ], ++ [ "underbarrel", 1 ] + ], + "flags": [ "RELOAD_ONE", "NEVER_JAMS", "RELOAD_EJECT" ] + }, +diff --git a/data/mods/No_Hope/Items/guns.json b/data/mods/No_Hope/Items/guns.json +index 67194e3f282..fe93f821dec 100644 +--- a/data/mods/No_Hope/Items/guns.json ++++ b/data/mods/No_Hope/Items/guns.json +@@ -28,11 +28,11 @@ + [ "emitter", 1 ], + [ "lens", 1 ], + [ "sling", 1 ], +- [ "grip mount", 1 ], +- [ "rail mount", 1 ], +- [ "sights mount", 1 ], +- [ "stock mount", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "grip", 1 ], ++ [ "rail", 1 ], ++ [ "sights", 1 ], ++ [ "stock", 1 ], ++ [ "underbarrel", 1 ] + ], + "ammo_effects": [ "LASER", "INCENDIARY" ], + "flags": [ "NO_UNLOAD", "NON_FOULING", "NEEDS_NO_LUBE" ] +@@ -88,8 +88,8 @@ + [ "sights", 1 ], + [ "sling", 1 ], + [ "stock", 1 ], +- [ "rail mount", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "rail", 1 ], ++ [ "underbarrel", 1 ] + ], + "ammo_effects": [ "PLASMA", "EXPLOSIVE", "FLAME" ], + "flags": [ "USE_UPS", "NO_UNLOAD", "PYROMANIAC_WEAPON", "NEVER_JAMS" ] +@@ -140,14 +140,7 @@ + "blackpowder_tolerance": 56, + "clip_size": 6, + "built_in_mods": [ "lead_holo_sight", "lead_laser_sight" ], +- "valid_mod_locations": [ +- [ "accessories", 2 ], +- [ "sights", 1 ], +- [ "underbarrel", 1 ], +- [ "grip mount", 1 ], +- [ "rail mount", 1 ], +- [ "stock mount", 1 ] +- ] ++ "valid_mod_locations": [ [ "accessories", 2 ], [ "sights", 1 ], [ "underbarrel", 1 ], [ "grip", 1 ], [ "rail", 1 ], [ "stock", 1 ] ] + }, + { + "id": "l_long_45", +@@ -182,9 +175,9 @@ + [ "sling", 1 ], + [ "underbarrel", 1 ], + [ "muzzle", 1 ], +- [ "grip mount", 1 ], +- [ "rail mount", 1 ], +- [ "stock mount", 1 ] ++ [ "grip", 1 ], ++ [ "rail", 1 ], ++ [ "stock", 1 ] + ], + "faults": [ "fault_gun_blackpowder", "fault_gun_dirt" ], + "flags": [ "RELOAD_ONE" ] +@@ -238,9 +231,9 @@ + [ "sights", 1 ], + [ "underbarrel", 1 ], + [ "muzzle", 1 ], +- [ "grip mount", 1 ], +- [ "rail mount", 1 ], +- [ "stock mount", 1 ] ++ [ "grip", 1 ], ++ [ "rail", 1 ], ++ [ "stock", 1 ] + ], + "flags": [ "DURABLE_MELEE" ] + }, +@@ -487,8 +480,8 @@ + [ "sights", 1 ], + [ "sling", 1 ], + [ "stock", 1 ], +- [ "rail mount", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "rail", 1 ], ++ [ "underbarrel", 1 ] + ] + }, + { +@@ -526,8 +519,8 @@ + [ "sights", 1 ], + [ "sling", 1 ], + [ "stock", 1 ], +- [ "rail mount", 1 ], +- [ "underbarrel mount", 1 ] ++ [ "rail", 1 ], ++ [ "underbarrel", 1 ] + ] + }, + { +diff --git a/tests/ranged_burst_balance_test.cpp b/tests/ranged_burst_balance_test.cpp +index d6f787ba11e..44e261799ce 100644 +--- a/tests/ranged_burst_balance_test.cpp ++++ b/tests/ranged_burst_balance_test.cpp +@@ -102,7 +102,7 @@ TEST_CASE( "average_burst_bipod", "[ranged] [balance]" ) + standard_npc shooter( "Shooter", shooter_pos, {}, 5, 10, 8, 8, 8 ); + check_burst_penalty( shooter, "m249", {}, 40, true ); + check_burst_penalty( shooter, "m240", {}, 90, true ); +- check_burst_penalty( shooter, "m2browning", {"underbarrel_mount", "bipod"}, 160, true ); ++ check_burst_penalty( shooter, "m2browning", {"bipod"}, 160, true ); + check_burst_penalty( shooter, "m1918", {"bipod"}, 160, true ); + } + +-- +2.43.0 + |