summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjc_gargma <jc_gargma@iserlohn-fortress.net>2023-05-03 17:58:18 -0700
committerjc_gargma <jc_gargma@iserlohn-fortress.net>2023-05-03 17:58:18 -0700
commit226889cd52c2bd9cd8b0c3600006b0d7c15a7bde (patch)
treeb1fe7b6a46cb1de1127dd52e388e4c0417b03e03
parentUpdated to 2023-04-30-2223 (diff)
downloadcataclysm-bn-226889cd52c2bd9cd8b0c3600006b0d7c15a7bde.tar.xz
Updated to 2023-05-02-0922
Remove obsolete v29 patch. Fix ammo reverts due to shot cone effects.
-rw-r--r--PKGBUILD23
-rw-r--r--ammo-10_ammo-order-fix.patch300
-rw-r--r--revert-09_undo-yet-more-ammo-balancing.patch46
-rw-r--r--weapon-01_fix-v29-copy-from.patch11
4 files changed, 183 insertions, 197 deletions
diff --git a/PKGBUILD b/PKGBUILD
index 0246900..df01d00 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -15,8 +15,8 @@ pkgbase=cataclysm-bn
pkgname=(cataclysm-bn cataclysm-bn-tiles)
pkgname=cataclysm-bn
_pkgname=Cataclysm-BN-cbn-experimental
-pkgver=202304302223
-_pkgver=2023-04-30-2223
+pkgver=202305020922
+_pkgver=2023-05-02-0922
pkgrel=1
pkgdesc="A post-apocalyptic roguelike."
#url="http://cataclysmrl.blogspot.com/"
@@ -122,7 +122,6 @@ source=("$pkgname-$_pkgver.tar.gz::https://github.com/cataclysmbnteam/Cataclysm-
"vehicles-02_fix-fbi-car-name.patch"
"vehicles-03_black-box-can-be-installed.patch"
- "weapon-01_fix-v29-copy-from.patch"
"weapon-02_Fix-usp45-load-order.patch"
"etc-01_fix-rubbersplosion.patch"
@@ -147,7 +146,7 @@ source=("$pkgname-$_pkgver.tar.gz::https://github.com/cataclysmbnteam/Cataclysm-
"cataclysm-dda-soundpack_jcsoundpack.tar.xz::https://library.iserlohn-fortress.net/cataclysm-dda-soundpack_jcsoundpack.git/snapshot/cataclysm-dda-soundpack_jcsoundpack-master.tar.xz"
"cataclysm-dda-musicpack_coag-musicpack.tar.xz::https://library.iserlohn-fortress.net/cataclysm-dda-musicpack_coag-musicpack.git/snapshot/cataclysm-dda-musicpack_coag-musicpack-master.tar.xz"
)
-b2sums=('7471f22385c1e1056011f85b00c37d0bcad724d0336d09f80b26d2c31c077abbf97a05a247f5b5844f6cbf6e20ae7c5495cf8115e002a4f0ba0875cd111eca0c'
+b2sums=('03aeb0e3e2cb3d9a245a406b07ecd035d6993abdc9826e3a94399de085908ea083fc4f8bb4092437ff5661658c7a0f693a1c126b74c4fa8fcf6b7032f0b177ff'
'069ecde58859b3d44cd687c4b6e718610cefb693ff86e66f199ebfb1b3072023ad2b6f0c28e27ef9c1ce4997f6a5b2ca0d45046996b3ff35a4aeaeb1a7cf9421'
'ad88bc6c1e3c8183a313b5eec42f98d6956afea349feff34a86e4536c9921fa99d2594282caf27de8ebb7ffb56376ed2e76d572227bfd6d8173c7bb1f01e23b8'
'6f70e90359a14e4839d9a2683debb88850e5dd387add911ad68fd87e5512cfcdd435da63e1e370358153673fd5a72a9b1e9c94f1979edb7948b4da8c82407bad'
@@ -158,7 +157,7 @@ b2sums=('7471f22385c1e1056011f85b00c37d0bcad724d0336d09f80b26d2c31c077abbf97a05a
'2d197903715263628e767e867e9b20b9ebd3d85f8983ac8f1e2b534f2b6f8c0470886c79a409f117ad43348aa6aef2a6298925ae27faa32814183ad7677528ac'
'8cb60c8d33e1dfdb0b5e4a6f8c5796b78ba3987ad879fd471953f36d7c1c49d10b9b30ab7361c4cb5489b43da9ae48cb5a85531c0f11ffe0ba663f33215a5e52'
'0ac92184f85d8b3dceee4a210b2f7f367aeb14c609d468e87205d0eb630e1b6bad6903b863ea61c3a032b665b2316871b6c70aa8508c604a7237a378fae39d92'
- 'd62bcb01bcb2934bf405e205a511bd076bc793bb8699dd205a5441afddfe8bbb161f7925de8294c51a528318155af4d2261e2ca2a7a2614d22053d5bbe4359a1'
+ '2e4ddf74604a1c816284d2d7b9e6e4494f4989406370edd454b8e080bf9a4d80e9974a5554a2da826003076b78715b3ea58e429b17ca4d71fd56996bae5eef03'
'1950d2cacc8697b3f0602f3eb232744fd0f7de4489b7747089abfa8784ec9e4433db4dcdf925d0bc37686ee14d607dcd5345e3db5b5b155a6208bde8b1706e23'
'5df4497d779d6980a540f0f1dd54959ca403e8b00a9f4bd1a91fee3c41d351e216abb08f1ae6729ca0fcb04efda789804b5df5c86e0003d25998e988254712f7'
'68cc05b6224d873a2a5728e0120ce09e5c45f53f8c7bc03148a0ede00582975d740e42ddad1aa02c58fabf6d25aa649ddf73e3af2b7c98090e840c808e0742c8'
@@ -169,7 +168,7 @@ b2sums=('7471f22385c1e1056011f85b00c37d0bcad724d0336d09f80b26d2c31c077abbf97a05a
'124893f23b7d865709fa87a9fade8fb01e596c1f31b0811ab32d5e730e1101c62af672eaf5fe9cdefa338fc25164407023f4c7dcc7cacdb0c86b4713180d345d'
'67cdb7e097bbb46da5cf04708bc2858b080d1a85742afc4c088da3e4e3fdeb6e4c51240fc5a6b9a1c7d927b30b3d251236e025ee4e5496142a7716d4ba51b82c'
'2ebc9d61438ef1439a3dcfae7e56f2f4cb1d4410faadd2e018359b6c4711abdcd474f2eeb2d23e531a523caea19ec40d820b60c0b8cdaf04223ca9eed1119ec7'
- '6ed6469e0a7fa3a21731baa19040e109b1a0709a633c59ca5b43d71c1515fa326be84accbfd89f883bc03200daccd5d70e2aacff652e836b178beaf4ee66ce5c'
+ 'bf027ddc3fda6067cdd770f330987def83957ffe975ab36ad046558bf46e32a645b04f85efc57e1d337158e0afa297fd0c493e091e8d2e5e31d2f31ed5237c9e'
'5dd5cb90aab682dfad9c46b1fcbe93294b4d9e40f4c3f30a917b25081f7cfc66baa60adbb81584d622f099761eba0eda8f46d6e49df1f82ec3c50a2da61836b3'
'0884229f513f843099dbd397d96fd8b37aad2d1ae0aee2771f57f54188241d6ed0ede8750780b9564bd9e3dc8d215039d409081a8eb46ce25b90edb196eb6bf4'
'f4ad4c90cfcf11af42c6cfc6d2027b21af3f58ac274b9bd0852a52ef60b606476766f194b281f6baf12f81647b384a98f745519bb48bc2e4f5fe03984c7c0e65'
@@ -222,7 +221,6 @@ b2sums=('7471f22385c1e1056011f85b00c37d0bcad724d0336d09f80b26d2c31c077abbf97a05a
'74a51f04237fba3caa25b2e0d49659f2e8330ce82288de866943d06b53690f31d48a77a4dd2e57db1f435b715fbca792268f2e191ffb59e57170d327ed41ac0a'
'4a1724784d6b4f113e8c1954d399d07adc941a2e992e1c95ab38dbc5c31940e90ff4cec51d22da3bf971880817b4356e473747303146c2ab1be55ee4565aca41'
'209387731490549d7b3d546ab149cea22e0ea1291356884f358cd87ca7d5425ca9a72f6f2cb7af46956634ffdb1a61d1ebfbfdbb5a2fc9fdc26d29acdc2ab0c0'
- '0661d98d1a106c736f5e23da60e81354786569d5e2124d1247297eac8ae95ae7f9971b5c80063ef7569eb7288da1ed012e8f0301e82400dff2c3c93cdbd93999'
'a357104e814cde6669ab0b76d8d869ddd7fb03cf38bf1b32993780a31ac07e50cfc5d1af3e87d969ca3f9650ea3aefba3c55bf626c4c40502205a130a86c25a5'
'e1d03f68918d03f980f4c2dd966e3788afe63f14e2d18dbd4dab2cdbfa1253e4823c0f5daa3a579e47319a3c2af35bc5af0a390e2ba91fe7621f6db8b1a60994'
'f428818d1d4df4e46ec844458cfd5f9eef5d19a89778837502eb74ed6d421113ae9a9bc2fd4fb2bcf41d433635c34912e90b90a8993e92164e6a1efe0ebae82f'
@@ -274,7 +272,7 @@ prepare() {
sed -i 's|cataclysm-dda|cataclysm-bn|' src/path_info.cpp
# Fix version
- sed -i 's|VERSION = unstable|VERSION = "0.2-experimental 2023-04-30-2223"|' Makefile
+ sed -i 's|VERSION = unstable|VERSION = "0.2-experimental 2023-05-02-0922"|' Makefile
# # # Hotfixes
@@ -283,7 +281,7 @@ prepare() {
# # # Reverts
echo "Applying revert patches"
- # # More reverts fot changes to books
+ # # More reverts for changes to books
# Upstream seems to have as serious dislike of in game books.
patch -NREp1 --no-backup-if-mismatch -i "$srcdir"/revert-14_Removed-unrelated-references-2738.patch
@@ -333,7 +331,8 @@ prepare() {
patch -Np1 --no-backup-if-mismatch -i "$srcdir"/ammo-01_inconsistent-ammo-names.patch
# Set a fixed loudness for 20x66mm shotgun shells like that of other shotguns:
- # Other shotguns have fixed loudness to work around how the short range factors causes them to be far quieter than one would otherwise expect.
+ # Other shotguns have fixed loudness to work around how the short range causes the loudness value to be far lower than one would otherwise expect.
+ # Abstract change, so this cannot be fixed by a mod.
patch -Np1 --no-backup-if-mismatch -i "$srcdir"/ammo-02_fix-20x66mm-loudness.patch
# Change reloaded_50bmg to be based on 50bmg:
@@ -600,10 +599,6 @@ prepare() {
# # weapon fixes
echo "Applying weapon fixes"
- # Fix the V29 pistol to copy-from pistol_energy:
- # This class seems entirely made for this weapon, but it was not flagged to use it.
- patch -Np1 --no-backup-if-mismatch -i "$srcdir"/weapon-01_fix-v29-copy-from.patch
-
# Fix the USP45 handgun not being modifiable:
# It uses copy-from usp_9mm that loads later, which prevented modifying it.
patch -Np1 --no-backup-if-mismatch -i "$srcdir"/weapon-02_Fix-usp45-load-order.patch
diff --git a/ammo-10_ammo-order-fix.patch b/ammo-10_ammo-order-fix.patch
index 60ba09f..5ca1d91 100644
--- a/ammo-10_ammo-order-fix.patch
+++ b/ammo-10_ammo-order-fix.patch
@@ -1,9 +1,9 @@
--- a/data/json/items/ammo/20x66mm.json
+++ b/data/json/items/ammo/20x66mm.json
-@@ -1,5 +1,54 @@
+@@ -1,7 +1,40 @@
[
{
-+ "id": "20x66_shot",
++ "abstract": "20x66_shot_abstract",
+ "type": "AMMO",
+ "name": { "str": "20x66mm buckshot" },
+ "//": "2.5x the Generic Rate of $1/shot",
@@ -26,6 +26,26 @@
+ "effects": [ "COOKOFF", "SHOT", "NEVER_MISFIRES" ]
+ },
+ {
++ "id": "20x66_shot",
++ "copy-from": "20x66_shot_abstract",
++ "type": "AMMO",
++ "name": { "str": "20x66mm buckshot" },
++ "//": "2.5x the Generic Rate of $1/shot",
++ "description": "20x66mm caseless shotgun rounds, buckshot type. Proprietary ammunition for Rivtech shotguns. Being caseless rounds, these cannot be disassembled or reloaded.",
++ "range": 0,
++ "shape": [ "cone", { "half_angle": 15, "length": 12 } ]
++ },
++ {
+ "id": "20x66_beanbag",
+- "copy-from": "20x66_shot",
++ "copy-from": "20x66_shot_abstract",
+ "type": "AMMO",
+ "name": { "str": "20x66mm beanbag" },
+ "description": "20x66mm caseless shotgun rounds, sublethal beanbag type. Proprietary ammunition for Rivtech shotguns. Being caseless rounds, these cannot be disassembled or reloaded.",
+@@ -14,6 +46,18 @@
+ "extend": { "effects": [ "LARGE_BEANBAG", "NOGIB" ] }
+ },
+ {
+ "id": "20x66_flechette",
+ "copy-from": "20x66_shot",
+ "type": "AMMO",
@@ -38,8 +58,15 @@
+ "relative": { "damage": { "damage_type": "bullet", "amount": -10, "armor_penetration": 20 } }
+ },
+ {
+ "id": "20x66_bootleg_flechette",
+ "copy-from": "20x66_flechette",
+ "type": "AMMO",
+@@ -34,6 +78,20 @@
+ "delete": { "effects": [ "NEVER_MISFIRES" ], "flags": [ "IRREPLACEABLE_CONSUMABLE" ] }
+ },
+ {
+ "id": "20x66_slug",
-+ "copy-from": "20x66_shot",
++ "copy-from": "20x66_shot_abstract",
+ "type": "AMMO",
+ "name": { "str": "20x66mm slug" },
+ "description": "20x66mm caseless shotgun rounds, solid projectile type. Proprietary ammunition for Rivtech shotguns. Being caseless rounds, these cannot be disassembled or reloaded.",
@@ -52,10 +79,10 @@
+ "delete": { "effects": [ "SHOT" ] }
+ },
+ {
- "id": "20x66_beanbag",
- "copy-from": "20x66_shot",
+ "id": "20x66_bootleg_slug",
+ "copy-from": "20x66_slug",
"type": "AMMO",
-@@ -74,18 +122,6 @@
+@@ -75,18 +133,6 @@
"effects": [ "NO_EMBED" ]
},
{
@@ -74,13 +101,13 @@
"id": "20x66_frag",
"copy-from": "20x66_slug",
"type": "AMMO",
-@@ -109,42 +145,5 @@
+@@ -110,52 +156,5 @@
"flags": [ "IRREPLACEABLE_CONSUMABLE" ],
"count": 10,
"extend": { "effects": [ "INCENDIARY" ] }
- },
- {
-- "id": "20x66_shot",
+- "abstract": "20x66_shot_abstract",
- "type": "AMMO",
- "name": { "str": "20x66mm buckshot" },
- "//": "2.5x the Generic Rate of $1/shot",
@@ -103,8 +130,18 @@
- "effects": [ "COOKOFF", "SHOT", "NEVER_MISFIRES" ]
- },
- {
+- "id": "20x66_shot",
+- "copy-from": "20x66_shot_abstract",
+- "type": "AMMO",
+- "name": { "str": "20x66mm buckshot" },
+- "//": "2.5x the Generic Rate of $1/shot",
+- "description": "20x66mm caseless shotgun rounds, buckshot type. Proprietary ammunition for Rivtech shotguns. Being caseless rounds, these cannot be disassembled or reloaded.",
+- "range": 0,
+- "shape": [ "cone", { "half_angle": 15, "length": 12 } ]
+- },
+- {
- "id": "20x66_slug",
-- "copy-from": "20x66_shot",
+- "copy-from": "20x66_shot_abstract",
- "type": "AMMO",
- "name": { "str": "20x66mm slug" },
- "description": "20x66mm caseless shotgun rounds, solid projectile type. Proprietary ammunition for Rivtech shotguns. Being caseless rounds, these cannot be disassembled or reloaded.",
@@ -186,7 +223,7 @@
+ "relative": { "damage": { "damage_type": "bullet", "amount": -6, "armor_penetration": 14 } }
+ },
+ {
- "id": "reloaded_38_fmj",
+ "id": "bp_38_fmj",
"copy-from": "38_fmj",
"type": "AMMO",
@@ -241,42 +278,22 @@
"id": "44magnum",
"type": "AMMO",
"name": { "str": ".44 Magnum" },
-@@ -33,13 +24,13 @@
+@@ -33,6 +24,15 @@
"effects": [ "COOKOFF" ]
},
{
-- "id": "reloaded_44fmj",
-- "copy-from": "44fmj",
+ "id": "44fmj",
+ "copy-from": "44magnum",
- "type": "AMMO",
-- "name": { "str": ".44 Magnum FMJ, reloaded" },
-- "proportional": { "price": 0.7, "damage": { "damage_type": "bullet", "amount": 0.9 }, "dispersion": 1.1 },
-- "extend": { "effects": [ "RECYCLED" ] },
-- "delete": { "effects": [ "NEVER_MISFIRES" ], "flags": [ "IRREPLACEABLE_CONSUMABLE" ] }
++ "type": "AMMO",
+ "name": { "str": ".44 Magnum FMJ" },
+ "description": "A brass-jacketed variant of the .44 Magnum round. This increases penetration at the cost of reduced damage from expansion.",
+ "//": "Base damage of 36, balance increase of one-nineth.",
+ "relative": { "damage": { "damage_type": "bullet", "amount": -10, "armor_penetration": 23 } }
- },
- {
- "id": "reloaded_44magnum",
-@@ -49,6 +40,15 @@
- "proportional": { "price": 0.7, "damage": { "damage_type": "bullet", "amount": 0.9 }, "dispersion": 1.1 },
- "extend": { "effects": [ "RECYCLED" ] },
- "delete": { "effects": [ "NEVER_MISFIRES" ], "flags": [ "IRREPLACEABLE_CONSUMABLE" ] }
+ },
+ {
-+ "id": "reloaded_44fmj",
-+ "copy-from": "44fmj",
-+ "type": "AMMO",
-+ "name": { "str": ".44 Magnum FMJ, reloaded" },
-+ "proportional": { "price": 0.7, "damage": { "damage_type": "bullet", "amount": 0.9 }, "dispersion": 1.1 },
-+ "extend": { "effects": [ "RECYCLED" ] },
-+ "delete": { "effects": [ "NEVER_MISFIRES" ], "flags": [ "IRREPLACEABLE_CONSUMABLE" ] }
- },
- {
"id": "bp_44magnum",
+ "copy-from": "44magnum",
+ "type": "AMMO",
--- a/data/json/items/ammo/45.json
+++ b/data/json/items/ammo/45.json
@@ -362,7 +379,7 @@
"id": "50bmg",
"type": "AMMO",
"name": { "str": ".50 BMG M33 Ball" },
-@@ -33,6 +23,16 @@
+@@ -34,6 +24,16 @@
"effects": [ "COOKOFF", "NEVER_MISFIRES" ]
},
{
@@ -379,56 +396,12 @@
"id": "50match",
"copy-from": "50bmg",
"type": "AMMO",
+
--- a/data/json/items/ammo/shot.json
+++ b/data/json/items/ammo/shot.json
-@@ -1,94 +1,5 @@
+@@ -1,49 +1,5 @@
[
{
-- "id": "reloaded_shot_bird",
-- "copy-from": "shot_bird",
-- "type": "AMMO",
-- "name": { "str": "birdshot, reloaded" },
-- "proportional": { "price": 0.7, "damage": { "damage_type": "bullet", "amount": 0.9 }, "dispersion": 1.1 },
-- "extend": { "effects": [ "RECYCLED" ] },
-- "delete": { "effects": [ "NEVER_MISFIRES" ], "flags": [ "IRREPLACEABLE_CONSUMABLE" ] }
-- },
-- {
-- "id": "reloaded_shot_dragon",
-- "copy-from": "shot_dragon",
-- "type": "AMMO",
-- "name": { "str": "dragon's breath shell, reloaded" },
-- "proportional": { "price": 0.7, "damage": { "damage_type": "heat", "amount": 0.9 }, "dispersion": 1.1 },
-- "extend": { "effects": [ "RECYCLED" ] },
-- "delete": { "effects": [ "NEVER_MISFIRES" ], "flags": [ "IRREPLACEABLE_CONSUMABLE" ] }
-- },
-- {
-- "id": "reloaded_shot_00",
-- "copy-from": "shot_00",
-- "type": "AMMO",
-- "name": { "str": "00 shot, reloaded" },
-- "proportional": { "price": 0.7, "damage": { "damage_type": "bullet", "amount": 0.9 }, "dispersion": 1.1 },
-- "extend": { "effects": [ "RECYCLED" ] },
-- "delete": { "effects": [ "NEVER_MISFIRES" ], "flags": [ "IRREPLACEABLE_CONSUMABLE" ] }
-- },
-- {
-- "id": "reloaded_shot_flechette",
-- "copy-from": "shot_flechette",
-- "type": "AMMO",
-- "name": { "str": "flechette shell, reloaded" },
-- "proportional": { "price": 0.7, "damage": { "damage_type": "bullet", "amount": 0.9 }, "dispersion": 1.1 },
-- "extend": { "effects": [ "RECYCLED" ] },
-- "delete": { "effects": [ "NEVER_MISFIRES" ], "flags": [ "IRREPLACEABLE_CONSUMABLE" ] }
-- },
-- {
-- "id": "reloaded_shot_slug",
-- "copy-from": "shot_slug",
-- "type": "AMMO",
-- "name": { "str": "shotgun slug, reloaded" },
-- "proportional": { "price": 0.7, "damage": { "damage_type": "bullet", "amount": 0.9 }, "dispersion": 1.1 },
-- "extend": { "effects": [ "RECYCLED" ] },
-- "delete": { "effects": [ "NEVER_MISFIRES" ], "flags": [ "IRREPLACEABLE_CONSUMABLE" ] }
-- },
-- {
- "id": "bp_shot_bird",
- "copy-from": "shot_bird",
- "type": "AMMO",
@@ -473,79 +446,34 @@
- "delete": { "effects": [ "NEVER_MISFIRES" ], "flags": [ "IRREPLACEABLE_CONSUMABLE" ] }
- },
- {
- "id": "shot_00",
+ "abstract": "shot_abstract",
"type": "AMMO",
"name": { "str": "00 shot" },
-@@ -171,6 +82,20 @@
- "relative": { "damage": { "damage_type": "bullet", "amount": -6, "armor_penetration": 12 } }
+@@ -76,20 +32,6 @@
+ "shape": [ "cone", { "half_angle": 10, "length": 12 } ]
},
{
-+ "id": "shot_slug",
-+ "copy-from": "shot_00",
-+ "type": "AMMO",
-+ "name": { "str": "shotgun slug" },
-+ "description": "A heavy metal slug used with shotguns to give them the range capabilities of a rifle. Extremely damaging but rather inaccurate.",
-+ "price": 400,
-+ "price_postapoc": 400,
-+ "flags": [ "IRREPLACEABLE_CONSUMABLE" ],
-+ "dispersion": 100,
-+ "relative": { "range": 12, "damage": { "damage_type": "bullet", "armor_penetration": 6 } },
-+ "proportional": { "recoil": 1.4 },
-+ "delete": { "effects": [ "SHOT" ] }
-+ },
-+ {
- "id": "shot_he",
- "copy-from": "shot_slug",
+- "id": "shot_beanbag",
+- "copy-from": "shot_00",
+- "type": "AMMO",
+- "name": { "str": "shotgun beanbag" },
+- "description": "A beanbag round for shotguns, not deadly but designed to disable.",
+- "price": 500,
+- "price_postapoc": 200,
+- "flags": [ "IRREPLACEABLE_CONSUMABLE" ],
+- "count": 10,
+- "damage": { "damage_type": "bash", "amount": 5 },
+- "proportional": { "recoil": 0.4, "loudness": 0.6 },
+- "extend": { "effects": [ "BEANBAG", "NOGIB" ] }
+- },
+- {
+ "id": "shot_bird",
+ "copy-from": "shot_00",
"type": "AMMO",
-@@ -195,6 +120,95 @@
- "delete": { "effects": [ "NEVER_MISFIRES" ], "flags": [ "IRREPLACEABLE_CONSUMABLE" ] }
+@@ -105,6 +47,15 @@
+ "extend": { "effects": [ "NOGIB" ] }
},
{
-+ "id": "reloaded_shot_bird",
-+ "copy-from": "shot_bird",
-+ "type": "AMMO",
-+ "name": { "str": "birdshot, reloaded" },
-+ "proportional": { "price": 0.7, "damage": { "damage_type": "bullet", "amount": 0.9 }, "dispersion": 1.1 },
-+ "extend": { "effects": [ "RECYCLED" ] },
-+ "delete": { "effects": [ "NEVER_MISFIRES" ], "flags": [ "IRREPLACEABLE_CONSUMABLE" ] }
-+ },
-+ {
-+ "id": "reloaded_shot_dragon",
-+ "copy-from": "shot_dragon",
-+ "type": "AMMO",
-+ "name": { "str": "dragon's breath shell, reloaded" },
-+ "proportional": { "price": 0.7, "damage": { "damage_type": "heat", "amount": 0.9 }, "dispersion": 1.1 },
-+ "extend": { "effects": [ "RECYCLED" ] },
-+ "delete": { "effects": [ "NEVER_MISFIRES" ], "flags": [ "IRREPLACEABLE_CONSUMABLE" ] }
-+ },
-+ {
-+ "id": "reloaded_shot_00",
-+ "copy-from": "shot_00",
-+ "type": "AMMO",
-+ "name": { "str": "00 shot, reloaded" },
-+ "proportional": { "price": 0.7, "damage": { "damage_type": "bullet", "amount": 0.9 }, "dispersion": 1.1 },
-+ "extend": { "effects": [ "RECYCLED" ] },
-+ "delete": { "effects": [ "NEVER_MISFIRES" ], "flags": [ "IRREPLACEABLE_CONSUMABLE" ] }
-+ },
-+ {
-+ "id": "reloaded_shot_flechette",
-+ "copy-from": "shot_flechette",
-+ "type": "AMMO",
-+ "name": { "str": "flechette shell, reloaded" },
-+ "proportional": { "price": 0.7, "damage": { "damage_type": "bullet", "amount": 0.9 }, "dispersion": 1.1 },
-+ "extend": { "effects": [ "RECYCLED" ] },
-+ "delete": { "effects": [ "NEVER_MISFIRES" ], "flags": [ "IRREPLACEABLE_CONSUMABLE" ] }
-+ },
-+ {
-+ "id": "reloaded_shot_slug",
-+ "copy-from": "shot_slug",
-+ "type": "AMMO",
-+ "name": { "str": "shotgun slug, reloaded" },
-+ "proportional": { "price": 0.7, "damage": { "damage_type": "bullet", "amount": 0.9 }, "dispersion": 1.1 },
-+ "extend": { "effects": [ "RECYCLED" ] },
-+ "delete": { "effects": [ "NEVER_MISFIRES" ], "flags": [ "IRREPLACEABLE_CONSUMABLE" ] }
-+ },
-+ {
+ "id": "bp_shot_bird",
+ "copy-from": "shot_bird",
+ "type": "AMMO",
@@ -555,6 +483,13 @@
+ "delete": { "effects": [ "NEVER_MISFIRES" ], "flags": [ "IRREPLACEABLE_CONSUMABLE" ] }
+ },
+ {
+ "id": "shot_dragon",
+ "copy-from": "shot_00",
+ "type": "AMMO",
+@@ -120,6 +71,23 @@
+ "extend": { "effects": [ "INCENDIARY", "STREAM", "NOGIB" ] }
+ },
+ {
+ "id": "bp_shot_dragon",
+ "copy-from": "shot_dragon",
+ "type": "AMMO",
@@ -572,6 +507,13 @@
+ "delete": { "effects": [ "NEVER_MISFIRES" ], "flags": [ "IRREPLACEABLE_CONSUMABLE" ] }
+ },
+ {
+ "id": "shot_flechette",
+ "copy-from": "shot_00",
+ "type": "AMMO",
+@@ -132,6 +100,52 @@
+ "relative": { "damage": { "damage_type": "bullet", "amount": -6, "armor_penetration": 12 } }
+ },
+ {
+ "id": "bp_shot_flechette",
+ "copy-from": "shot_flechette",
+ "type": "AMMO",
@@ -581,6 +523,20 @@
+ "delete": { "effects": [ "NEVER_MISFIRES" ], "flags": [ "IRREPLACEABLE_CONSUMABLE" ] }
+ },
+ {
++ "id": "shot_slug",
++ "copy-from": "shot_abstract",
++ "type": "AMMO",
++ "name": { "str": "shotgun slug" },
++ "description": "A heavy metal slug used with shotguns to give them the range capabilities of a rifle. Extremely damaging but rather inaccurate.",
++ "price": 400,
++ "price_postapoc": 400,
++ "flags": [ "IRREPLACEABLE_CONSUMABLE" ],
++ "dispersion": 100,
++ "relative": { "range": 12, "damage": { "damage_type": "bullet", "armor_penetration": 6 } },
++ "proportional": { "recoil": 1.4 },
++ "delete": { "effects": [ "SHOT" ] }
++ },
++ {
+ "id": "bp_shot_slug",
+ "copy-from": "shot_slug",
+ "type": "AMMO",
@@ -590,18 +546,49 @@
+ "delete": { "effects": [ "NEVER_MISFIRES" ], "flags": [ "IRREPLACEABLE_CONSUMABLE" ] }
+ },
+ {
++ "id": "shot_beanbag",
++ "copy-from": "shot_00",
++ "type": "AMMO",
++ "name": { "str": "shotgun beanbag" },
++ "description": "A beanbag round for shotguns, not deadly but designed to disable.",
++ "price": 500,
++ "price_postapoc": 200,
++ "flags": [ "IRREPLACEABLE_CONSUMABLE" ],
++ "count": 10,
++ "damage": { "damage_type": "bash", "amount": 5 },
++ "proportional": { "recoil": 0.4, "loudness": 0.6 },
++ "extend": { "effects": [ "BEANBAG", "NOGIB" ] }
++ },
++ {
+ "id": "shot_he",
+ "copy-from": "shot_slug",
+ "type": "AMMO",
+@@ -146,16 +160,6 @@
+ "extend": { "effects": [ "EXPLOSIVE" ] }
+ },
+ {
+- "id": "shot_scrap",
+- "copy-from": "shot_00",
+- "type": "AMMO",
+- "name": { "str": "00 shot, scrap loaded" },
+- "description": "A shotgun shell filled with whatever was lying around. They are more damaging than birdshot, but fairly inaccurate.",
+- "proportional": { "price": 0.4, "damage": { "damage_type": "bullet", "amount": 0.6 }, "dispersion": 1.2 },
+- "extend": { "effects": [ "RECYCLED" ] },
+- "delete": { "effects": [ "NEVER_MISFIRES" ], "flags": [ "IRREPLACEABLE_CONSUMABLE" ] }
+- },
+- {
"id": "bp_shot_scrap",
"copy-from": "shot_scrap",
"type": "AMMO",
-@@ -202,19 +216,5 @@
- "proportional": { "price": 0.6, "damage": { "damage_type": "bullet", "amount": 0.8 } },
- "extend": { "effects": [ "RECYCLED", "MUZZLE_SMOKE" ] },
+@@ -165,17 +169,13 @@
"delete": { "effects": [ "NEVER_MISFIRES" ], "flags": [ "IRREPLACEABLE_CONSUMABLE" ] }
-- },
-- {
+ },
+ {
- "id": "shot_slug",
-- "copy-from": "shot_00",
-- "type": "AMMO",
+- "copy-from": "shot_abstract",
++ "id": "shot_scrap",
++ "copy-from": "shot_00",
+ "type": "AMMO",
- "name": { "str": "shotgun slug" },
- "description": "A heavy metal slug used with shotguns to give them the range capabilities of a rifle. Extremely damaging but rather inaccurate.",
- "price": 400,
@@ -611,5 +598,10 @@
- "relative": { "range": 12, "damage": { "damage_type": "bullet", "armor_penetration": 6 } },
- "proportional": { "recoil": 1.4 },
- "delete": { "effects": [ "SHOT" ] }
++ "name": { "str": "00 shot, scrap loaded" },
++ "description": "A shotgun shell filled with whatever was lying around. They are more damaging than birdshot, but fairly inaccurate.",
++ "proportional": { "price": 0.4, "damage": { "damage_type": "bullet", "amount": 0.6 }, "dispersion": 1.2 },
++ "extend": { "effects": [ "RECYCLED" ] },
++ "delete": { "effects": [ "NEVER_MISFIRES" ], "flags": [ "IRREPLACEABLE_CONSUMABLE" ] }
}
]
diff --git a/revert-09_undo-yet-more-ammo-balancing.patch b/revert-09_undo-yet-more-ammo-balancing.patch
index 4cfd0ce..1aa877b 100644
--- a/revert-09_undo-yet-more-ammo-balancing.patch
+++ b/revert-09_undo-yet-more-ammo-balancing.patch
@@ -123,7 +123,7 @@ index 530278fd5d8..352b67d154c 100644
"description": "A low velocity 40x46mm HEDP grenade. It can penetrate 2 inches of steel armor and fragmentation of the projectile body also makes it suitable for use against infantry.",
"weight": "230 g",
"damage": { "damage_type": "bullet", "amount": 200, "armor_penetration": 30 },
-@@ -44,11 +44,11 @@
+@@ -44,12 +44,12 @@
"id": "40x46mm_m576",
"copy-from": "40x46mm_grenade",
"type": "AMMO",
@@ -131,7 +131,8 @@ index 530278fd5d8..352b67d154c 100644
+ "name": { "str": "40x46mm M576 buckshot" },
"description": "A 40x46mm buckshot load, designed for use in thick vegetation or room clearing.",
"weight": "120 g",
- "range": 12,
+ "range": 0,
+ "shape": [ "cone", { "half_angle": 15, "length": 12 } ],
- "damage": { "damage_type": "bullet", "amount": 120, "armor_penetration": 4 },
+ "damage": { "damage_type": "bullet", "amount": 120 },
"recoil": 1000,
@@ -146,7 +147,7 @@ index 530278fd5d8..352b67d154c 100644
"description": "A low velocity 40mm tear gas canister. It is effective for riot control and driving infantry from entrenched positions",
"weight": "290 g",
"damage": { "damage_type": "bullet", "amount": 15 },
-@@ -69,37 +69,25 @@
+@@ -69,38 +69,26 @@
"id": "40x46mm_buckshot_m118",
"copy-from": "40x46mm_grenade",
"type": "AMMO",
@@ -155,7 +156,8 @@ index 530278fd5d8..352b67d154c 100644
+ "name": { "str": "improvised 40x46mm buckshot" },
+ "description": "An improvised 40x46mm buckshot load somewhat resembling M576. Aside from using the M118 casing normally used by HEDP shells, it performs as well as buckshot loads using the intended M199 casing.",
"weight": "120 g",
- "range": 10,
+ "range": 0,
+ "shape": [ "cone", { "half_angle": 15, "length": 12 } ],
- "damage": { "damage_type": "bullet", "amount": 90, "armor_penetration": 4 },
+ "damage": { "damage_type": "bullet", "amount": 120 },
"recoil": 1000,
@@ -207,7 +209,7 @@ index 530278fd5d8..352b67d154c 100644
"recoil": 1000,
"casing": "40x46mm_m199_casing"
},
-@@ -119,11 +108,12 @@
+@@ -119,12 +108,13 @@
"id": "40x46mm_flechette_m118",
"copy-from": "40x46mm_grenade",
"type": "AMMO",
@@ -216,14 +218,15 @@ index 530278fd5d8..352b67d154c 100644
+ "name": { "str": "improvised 40x46mm flechette" },
+ "description": "An improvised 40x46mm flechette load containing 70 steel darts. Aside from using the M118 casing normally used by HEDP shells, it performs as well as flechette shells using the M199 casing.",
"weight": "120 g",
- "range": 10,
+ "range": 0,
+ "shape": [ "cone", { "half_angle": 15, "length": 12 } ],
- "damage": { "damage_type": "bullet", "amount": 75, "armor_penetration": 6 },
+ "//": "Balanced as AP.",
+ "damage": { "damage_type": "bullet", "amount": 84, "armor_penetration": 72 },
"recoil": 1000,
"casing": "40x46mm_m118_casing",
"extend": { "effects": [ "SHOT" ] }
-@@ -132,11 +122,12 @@
+@@ -132,12 +122,13 @@
"id": "40x46mm_flechette_m199",
"copy-from": "40x46mm_grenade",
"type": "AMMO",
@@ -232,7 +235,8 @@ index 530278fd5d8..352b67d154c 100644
+ "name": { "str": "improvised 40x46mm flechette" },
+ "description": "An improvised 40x46mm flechette load containing 70 steel darts, loaded into the M199 casing used by M576 buckshot shells.",
"weight": "120 g",
- "range": 10,
+ "range": 0,
+ "shape": [ "cone", { "half_angle": 15, "length": 12 } ],
- "damage": { "damage_type": "bullet", "amount": 75, "armor_penetration": 6 },
+ "//": "Balanced as AP.",
+ "damage": { "damage_type": "bullet", "amount": 84, "armor_penetration": 72 },
@@ -243,7 +247,7 @@ diff --git a/data/json/items/ammo/40x53mm.json b/data/json/items/ammo/40x53mm.js
index 4541de0dab2..aeb0d2e732e 100644
--- a/data/json/items/ammo/40x53mm.json
+++ b/data/json/items/ammo/40x53mm.json
-@@ -22,10 +22,11 @@
+@@ -22,12 +22,13 @@
"id": "40x53mm_m1001",
"copy-from": "40x53mm_grenade",
"type": "AMMO",
@@ -251,8 +255,10 @@ index 4541de0dab2..aeb0d2e732e 100644
+ "name": { "str": "40x53mm M1001 flechette" },
"description": "40x53mm canister shot loaded with 17 grain flechettes.",
"weight": "340 g",
-- "damage": { "damage_type": "bullet", "amount": 150, "armor_penetration": 10 },
+ "//": "Balanced as AP.",
+ "range": 0,
+ "shape": [ "cone", { "half_angle": 15, "length": 10 } ],
+- "damage": { "damage_type": "bullet", "amount": 150, "armor_penetration": 10 },
+ "damage": { "damage_type": "bullet", "amount": 91, "armor_penetration": 78 },
"recoil": 1000,
"casing": "40x53mm_m169_casing",
@@ -265,7 +271,7 @@ index 4541de0dab2..aeb0d2e732e 100644
+ "name": { "str": "40x53mm M430A1 HEDP" },
"description": "A high velocity 40x53mm HEDP grenade. It can penetrate 3 inches of steel armor and fragmentation of the projectile body also makes it suitable for use against infantry.",
"weight": "340 g",
-@@ -47,11 +48,11 @@
+@@ -47,12 +48,12 @@
"id": "40x53mm_buckshot_m169",
"copy-from": "40x53mm_grenade",
"type": "AMMO",
@@ -273,7 +279,8 @@ index 4541de0dab2..aeb0d2e732e 100644
+ "name": { "str": "improvised 40x53mm buckshot" },
"description": "An improvised 40x53mm buckshot load somewhat resembling M576.",
"weight": "340 g",
- "range": 10,
+ "range": 0,
+ "shape": [ "cone", { "half_angle": 15, "length": 10 } ],
- "damage": { "damage_type": "bullet", "amount": 100, "armor_penetration": 4 },
+ "damage": { "damage_type": "bullet", "amount": 130 },
"recoil": 1200,
@@ -401,10 +408,11 @@ index f7fc54e73da..c51ab370e4a 100644
"dispersion": 90,
"recoil": 1500,
"loudness": 70,
-@@ -37,7 +38,7 @@
+@@ -37,8 +38,8 @@
"stack_size": 10,
"ammo_type": "flintlock",
- "range": 4,
+ "range": 0,
+ "shape": [ "cone", { "half_angle": 10, "length": 12 } ],
- "damage": { "damage_type": "bullet", "amount": 45 },
+ "damage": { "damage_type": "bullet", "amount": 63 },
"dispersion": 20,
@@ -519,23 +527,25 @@ index 1d6da22013b..937239328dd 100644
"range": 12,
"dispersion": 60,
"recoil": 840,
-@@ -33,7 +34,7 @@
+@@ -33,8 +34,8 @@
"weight": "2 g",
"bashing": 1,
"ammo_type": "blunderbuss",
- "damage": { "damage_type": "bullet", "amount": 60 },
+ "damage": { "damage_type": "bullet", "amount": 55, "armor_multiplier": 1.5 },
- "range": 6,
+ "range": 0,
+ "shape": [ "cone", { "half_angle": 18, "length": 10 } ],
"recoil": 780,
"effects": [ "COOKOFF", "SHOT", "RECYCLED" ]
-@@ -52,7 +53,8 @@
+@@ -52,8 +53,9 @@
"weight": "3 g",
"bashing": 1,
"ammo_type": "blunderbuss",
- "damage": { "damage_type": "bullet", "amount": 53, "armor_penetration": 12 },
+ "//": "Balanced as standard FMJ to allow lower damage but more penetration over shot.",
+ "damage": { "damage_type": "bullet", "amount": 44, "armor_penetration": 24, "armor_multiplier": 1.5 },
- "range": 10,
+ "range": 0,
+ "shape": [ "cone", { "half_angle": 10, "length": 12 } ],
"recoil": 840,
"effects": [ "COOKOFF", "SHOT", "RECYCLED" ]
diff --git a/data/json/items/migration.json b/data/json/items/migration.json
diff --git a/weapon-01_fix-v29-copy-from.patch b/weapon-01_fix-v29-copy-from.patch
deleted file mode 100644
index f93211f..0000000
--- a/weapon-01_fix-v29-copy-from.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/data/json/items/gun/ups.json
-+++ b/data/json/items/gun/ups.json
-@@ -135,7 +135,7 @@
- },
- {
- "id": "v29",
-- "copy-from": "pistol_base",
-+ "copy-from": "pistol_energy",
- "type": "GUN",
- "name": { "str": "V29 laser pistol" },
- "description": "This V29 laser pistol was one of the first handheld laser weapons. It is larger than most traditional handguns, but displays no recoil whatsoever.",