Skip to content

Commit

Permalink
Add M240 turret for outposts (CleverRaven#33921)
Browse files Browse the repository at this point in the history
* Add M240 CROWS II turret

* Spawn M240 turrets in outposts

* Update item names for turrets
  • Loading branch information
Matthew Taylor authored and misterprimus committed Sep 21, 2019
1 parent 1f0cfab commit 06f365d
Show file tree
Hide file tree
Showing 6 changed files with 142 additions and 14 deletions.
30 changes: 26 additions & 4 deletions data/json/items/corpses/inactive_bots.json
Original file line number Diff line number Diff line change
Expand Up @@ -154,8 +154,8 @@
{
"id": "bot_antimateriel",
"type": "TOOL",
"name": "inactive anti-materiel turret",
"description": "This is an inactive anti-materiel turret. Using this item involves loading the unit with the factory-loaded .50 BMG Ball rounds in your inventory (if you wish to divide your ammunition, set aside whatever .50 BMG Ball you do NOT want to give the turret) turning it on, and placing it on the ground, where it will attach itself. If reprogrammed and rewired successfully the turret will identify you as a friendly, and attack all enemies with a built-in rifle.",
"name": "inactive M2HB autonomous CROWS II",
"description": "This is an inactive turret. Using this item involves loading the unit with the factory-loaded .50 BMG rounds in your inventory (if you wish to divide your ammunition, set aside whatever .50 BMG rounds you do NOT want to give the turret) turning it on, and placing it on the ground, where it will attach itself. If programmed successfully the turret will then identify you as a friendly, and attack all enemies with its M2HB.",
"weight": "1550 g",
"volume": "3500 ml",
"price": 500500,
Expand Down Expand Up @@ -228,8 +228,8 @@
{
"id": "bot_rifleturret",
"type": "TOOL",
"name": "inactive rifle turret",
"description": "This is an inactive turret. Using this item involves loading the unit with the factory-loaded 5.56 NATO rounds in your inventory (if you wish to divide your ammunition, set aside whatever 5.56 you do NOT want to give the turret) turning it on, and placing it on the ground, where it will attach itself. If reprogrammed and rewired successfully the turret will then identify you as a friendly, and attack all enemies with a built-in rifle.",
"name": "inactive autonomous M249 CROWS II",
"description": "This is an inactive turret. Using this item involves loading the unit with the factory-loaded 5.56x45mm rounds in your inventory (if you wish to divide your ammunition, set aside whatever 5.56x45mm rounds you do NOT want to give the turret) turning it on, and placing it on the ground, where it will attach itself. If programmed successfully the turret will then identify you as a friendly, and attack all enemies with its M249.",
"weight": "1507 g",
"volume": "3500 ml",
"price": 500000,
Expand All @@ -247,6 +247,28 @@
"skill2": "computer"
}
},
{
"id": "bot_crows_m240",
"type": "TOOL",
"name": "inactive autonomous M240 CROWS II",
"description": "This is an inactive turret. Using this item involves loading the unit with the factory-loaded 7.62x51mm rounds in your inventory (if you wish to divide your ammunition, set aside whatever 7.62x51mm rounds you do NOT want to give the turret) turning it on, and placing it on the ground, where it will attach itself. If programmed successfully the turret will then identify you as a friendly, and attack all enemies with its M240.",
"weight": "1507 g",
"volume": "3500 ml",
"price": 500000,
"to_hit": -3,
"bashing": 8,
"material": [ "steel", "plastic" ],
"symbol": ";",
"color": "green",
"use_action": {
"type": "place_monster",
"monster_id": "mon_crows_m240",
"difficulty": 6,
"moves": 100,
"skill1": "electronics",
"skill2": "computer"
}
},
{
"id": "bot_turret",
"type": "TOOL",
Expand Down
13 changes: 11 additions & 2 deletions data/json/items/generic.json
Original file line number Diff line number Diff line change
Expand Up @@ -2984,7 +2984,16 @@
"id": "broken_turret_rifle",
"symbol": ",",
"color": "green",
"name": "broken milspec turret",
"name": "broken M249 autonomous CROWS II",
"weight": "70000 g",
"copy-from": "broken_turret"
},
{
"type": "GENERIC",
"id": "broken_crows_m240",
"symbol": ",",
"color": "green",
"name": "broken M240 autonomous CROWS II",
"weight": "70000 g",
"copy-from": "broken_turret"
},
Expand All @@ -2993,7 +3002,7 @@
"id": "broken_turret_bmg",
"symbol": ",",
"color": "green",
"name": "broken antimateriel turret",
"name": "broken M2 autonomous CROWS II",
"weight": "100000 g",
"copy-from": "broken_turret"
},
Expand Down
16 changes: 8 additions & 8 deletions data/json/mapgen/outpost.json
Original file line number Diff line number Diff line change
Expand Up @@ -94,13 +94,13 @@
"place_fields": [ { "field": "fd_blood", "x": [ 2, 21 ], "y": [ 2, 21 ], "repeat": [ 1, 12 ] } ],
"toilets": { "&": { } },
"place_monster": [
{ "monster": "mon_turret_rifle", "x": 10, "y": 1 },
{ "monster": "mon_crows_m240", "x": 10, "y": 1 },
{ "monster": "mon_laserturret", "x": 13, "y": 1 },
{ "monster": "mon_turret_rifle", "x": 1, "y": 10 },
{ "monster": "mon_crows_m240", "x": 1, "y": 10 },
{ "monster": "mon_laserturret", "x": 1, "y": 13 },
{ "monster": "mon_turret_rifle", "x": 22, "y": 10 },
{ "monster": "mon_crows_m240", "x": 22, "y": 10 },
{ "monster": "mon_laserturret", "x": 22, "y": 13 },
{ "monster": "mon_turret_rifle", "x": 10, "y": 22 },
{ "monster": "mon_crows_m240", "x": 10, "y": 22 },
{ "monster": "mon_laserturret", "x": 13, "y": 22 },
{ "monster": "mon_turret_searchlight", "x": 1, "y": 1 },
{ "monster": "mon_turret_searchlight", "x": 22, "y": 22 },
Expand Down Expand Up @@ -220,13 +220,13 @@
"place_fields": [ { "field": "fd_blood", "x": [ 2, 21 ], "y": [ 2, 21 ], "repeat": [ 1, 12 ] } ],
"toilets": { "&": { } },
"place_monster": [
{ "monster": "mon_turret_rifle", "x": 10, "y": 1 },
{ "monster": "mon_crows_m240", "x": 10, "y": 1 },
{ "monster": "mon_laserturret", "x": 13, "y": 1 },
{ "monster": "mon_turret_rifle", "x": 1, "y": 10 },
{ "monster": "mon_crows_m240", "x": 1, "y": 10 },
{ "monster": "mon_laserturret", "x": 1, "y": 13 },
{ "monster": "mon_turret_rifle", "x": 22, "y": 10 },
{ "monster": "mon_crows_m240", "x": 22, "y": 10 },
{ "monster": "mon_laserturret", "x": 22, "y": 13 },
{ "monster": "mon_turret_rifle", "x": 10, "y": 22 },
{ "monster": "mon_crows_m240", "x": 10, "y": 22 },
{ "monster": "mon_laserturret", "x": 13, "y": 22 },
{ "monster": "mon_turret_searchlight", "x": 1, "y": 1 },
{ "monster": "mon_turret_searchlight", "x": 22, "y": 22 },
Expand Down
46 changes: 46 additions & 0 deletions data/json/monsters/turrets.json
Original file line number Diff line number Diff line change
Expand Up @@ -171,5 +171,51 @@
"death_drops": { },
"death_function": [ "BROKEN" ],
"flags": [ "SEES", "NOHEAD", "ELECTRONIC", "IMMOBILE", "NO_BREATHE", "DROPS_AMMO" ]
},
{
"id": "mon_crows_m240",
"type": "MONSTER",
"name": "M240 autonomous CROWS II",
"description": "A remote weapon system derived from the M153 CROWS II and enhanced with autonomous operation software. Thousands of these were deployed by the US military before the cataclysm and they were valued for their use in engaging infantry without exposing the operator. This one is fitted with a M240.",
"default_faction": "military",
"species": [ "ROBOT" ],
"diff": 35,
"volume": "60000 ml",
"weight": 172000,
"hp": 40,
"speed": 100,
"material": [ "steel" ],
"symbol": "2",
"color": "green",
"aggression": 100,
"morale": 100,
"armor_bash": 14,
"armor_cut": 16,
"vision_night": 3,
"revert_to_itype": "bot_crows_m240",
"starting_ammo": { "762_51": 1000 },
"special_attacks": [
{
"type": "gun",
"cooldown": 1,
"move_cost": 150,
"gun_type": "m240",
"ammo_type": "762_51",
"fake_skills": [ [ "gun", 8 ], [ "rifle", 8 ] ],
"fake_dex": 12,
"ranges": [ [ 0, 30, "DEFAULT" ] ],
"require_targeting_npc": true,
"require_targeting_monster": true,
"laser_lock": false,
"targeting_cost": 200,
"targeting_timeout_extend": -10,
"targeting_sound": "\"Hostile detected.\"",
"targeting_volume": 50,
"no_ammo_sound": "a chk!"
}
],
"death_drops": { },
"death_function": [ "BROKEN" ],
"flags": [ "SEES", "NOHEAD", "ELECTRONIC", "IMMOBILE", "NO_BREATHE", "DROPS_AMMO" ]
}
]
20 changes: 20 additions & 0 deletions data/json/recipes/recipe_deconstruction.json
Original file line number Diff line number Diff line change
Expand Up @@ -766,6 +766,26 @@
[ [ "turret_chassis", 1 ] ]
]
},
{
"result": "broken_crows_m240",
"type": "uncraft",
"skill_used": "electronics",
"difficulty": 3,
"time": "60 m",
"using": [ [ "soldering_standard", 10 ] ],
"qualities": [ { "id": "SCREW", "level": 1 } ],
"components": [
[ [ "ai_module", 1 ] ],
[ [ "RAM", 1 ] ],
[ [ "gun_module", 1 ] ],
[ [ "m240", 1 ] ],
[ [ "small_storage_battery", 1 ] ],
[ [ "sensor_module", 1 ] ],
[ [ "identification_module", 1 ] ],
[ [ "power_supply", 1 ] ],
[ [ "turret_chassis", 1 ] ]
]
},
{
"result": "broken_turret_bmg",
"type": "uncraft",
Expand Down
31 changes: 31 additions & 0 deletions data/json/recipes/recipe_electronics.json
Original file line number Diff line number Diff line change
Expand Up @@ -1361,6 +1361,37 @@
[ [ "turret_chassis", 1 ] ]
]
},
{
"type": "recipe",
"result": "bot_crows_m240",
"category": "CC_ELECTRONIC",
"subcategory": "CSC_ELECTRONIC_OTHER",
"skill_used": "electronics",
"skills_required": [ [ "mechanics", 6 ], [ "computer", 5 ] ],
"difficulty": 8,
"time": "30 m",
"reversible": true,
"decomp_learn": 8,
"book_learn": [ [ "recipe_lab_elec", 7 ], [ "textbook_robots", 9 ] ],
"using": [ [ "soldering_standard", 14 ] ],
"qualities": [
{ "id": "SCREW", "level": 1 },
{ "id": "SCREW_FINE", "level": 1 },
{ "id": "WRENCH", "level": 2 },
{ "id": "WRENCH_FINE", "level": 1 }
],
"components": [
[ [ "ai_module", 1 ] ],
[ [ "RAM", 1 ] ],
[ [ "gun_module", 1 ] ],
[ [ "m240", 1 ] ],
[ [ "small_storage_battery", 1 ] ],
[ [ "sensor_module", 1 ] ],
[ [ "identification_module", 1 ] ],
[ [ "power_supply", 1 ] ],
[ [ "turret_chassis", 1 ] ]
]
},
{
"type": "recipe",
"result": "bot_nursebot",
Expand Down

0 comments on commit 06f365d

Please sign in to comment.