From 637226036da466815c9bbf3ac88324757d923580 Mon Sep 17 00:00:00 2001 From: Chaosvolt Date: Sat, 2 Dec 2023 05:18:32 -0600 Subject: [PATCH] feat(content,mods/fuji_mpp): mainline a few more professions, add combat engineer (#3783) * Commit for remote * finish the thing --- data/json/professions.json | 236 +++++++++++++++++- data/json/scenarios.json | 8 + data/mods/Fuji_Mil_Prof/prof/army.json | 107 -------- .../Fuji_Mil_Prof/prof/itemgroups_prof.json | 9 - data/mods/Fuji_Mil_Prof/scenarios.json | 28 +-- 5 files changed, 241 insertions(+), 147 deletions(-) diff --git a/data/json/professions.json b/data/json/professions.json index 87aa9e3dfc81..ec706e1cbe69 100644 --- a/data/json/professions.json +++ b/data/json/professions.json @@ -1,4 +1,32 @@ [ + { + "type": "item_group", + "subtype": "collection", + "id": "army_grenadier_mods", + "entries": [ + { "item": "holo_sight" }, + { "item": "shoulder_strap" }, + { "item": "m203", "ammo-item": "40x46mm_m433", "charges": 1 } + ] + }, + { + "type": "item_group", + "subtype": "collection", + "id": "army_mags_m14", + "entries": [ + { "item": "m14mag", "ammo-item": "762_51", "charges": 20 }, + { "item": "m14mag", "ammo-item": "762_51", "charges": 20 } + ] + }, + { + "type": "item_group", + "subtype": "collection", + "id": "army_mags_m17", + "entries": [ + { "item": "p320mag_17rd_9x19mm", "ammo-item": "9mm", "charges": 17 }, + { "item": "p320mag_17rd_9x19mm", "ammo-item": "9mm", "charges": 17 } + ] + }, { "type": "item_group", "subtype": "collection", @@ -133,6 +161,12 @@ "id": "quiver_crossbow_hunter", "entries": [ { "item": "bolt_metal", "charges": 9 } ] }, + { + "type": "item_group", + "subtype": "collection", + "id": "bandolier_grenadier", + "entries": [ { "item": "40x46mm_m433", "charges": 6 } ] + }, { "type": "item_group", "subtype": "collection", @@ -831,7 +865,201 @@ ] }, "male": [ "boxer_shorts" ], - "female": [ "sports_bra", "boxer_shorts" ] + "female": [ "boy_shorts", "sports_bra" ] + } + }, + { + "type": "profession", + "id": "mil_auto_rifleman", + "name": "Military Automatic Rifleman", + "description": "You were trained to lay down suppressing fire, and are armed accordingly. But they just seem to keep coming without end, you're not sure you have the firepower for this.", + "points": 5, + "traits": [ "PROF_MILITARY" ], + "skills": [ + { "level": 2, "name": "gun" }, + { "level": 2, "name": "rifle" }, + { "level": 2, "name": "melee" }, + { "level": 1, "name": "stabbing" }, + { "level": 1, "name": "dodge" } + ], + "items": { + "both": { + "items": [ + "pants_army", + "tshirt", + "jacket_army", + "helmet_liner", + "helmet_army", + "gloves_liner", + "gloves_tactical", + "socks", + "boots_combat", + "wristwatch", + "canteen", + "molle_pack" + ], + "entries": [ + { "group": "charged_two_way_radio" }, + { "item": "modularvestceramic", "contents-group": "army_mags_m17" }, + { "item": "ear_plugs", "custom-flags": [ "no_auto_equip" ] }, + { "item": "e_tool", "container-item": "webbing_belt" }, + { "item": "knife_combat", "container-item": "sheath" }, + { "item": "grenadebandolier", "contents-item": [ "grenade", "grenade" ] }, + { "item": "m249", "ammo-item": "556", "charges": 200, "contents-item": [ "shoulder_strap", "acog_scope" ] }, + { "item": "m17", "ammo-item": "9mm", "charges": 17, "container-item": "holster" } + ] + }, + "male": [ "boxer_shorts" ], + "female": [ "boy_shorts", "sports_bra" ] + } + }, + { + "type": "profession", + "id": "mil_grenadier", + "name": "Military Grenadier", + "description": "You were the one assigned the team's grenade launcher, something you thought was overkill for a stateside deployment at first. Now you're starting to wish you joined the Field Artillery Branch.", + "points": 5, + "traits": [ "PROF_MILITARY" ], + "skills": [ + { "level": 2, "name": "gun" }, + { "level": 1, "name": "rifle" }, + { "level": 1, "name": "launcher" }, + { "level": 2, "name": "melee" }, + { "level": 1, "name": "stabbing" }, + { "level": 1, "name": "dodge" } + ], + "items": { + "both": { + "items": [ + "pants_army", + "tshirt", + "jacket_army", + "helmet_liner", + "helmet_army", + "gloves_liner", + "gloves_tactical", + "socks", + "boots_combat", + "wristwatch", + "canteen", + "molle_pack" + ], + "entries": [ + { "group": "charged_two_way_radio" }, + { "item": "modularvestceramic", "contents-group": "army_mags_m4" }, + { "item": "ear_plugs", "custom-flags": [ "no_auto_equip" ] }, + { "item": "e_tool", "container-item": "webbing_belt" }, + { "item": "knife_combat", "container-item": "sheath" }, + { "item": "grenade_pouch", "contents-group": "bandolier_grenadier" }, + { "item": "grenadebandolier", "contents-item": [ "grenade", "grenade" ] }, + { "item": "m4a1", "ammo-item": "556", "charges": 30, "contents-group": "army_grenadier_mods" } + ] + }, + "male": [ "boxer_shorts" ], + "female": [ "boy_shorts", "sports_bra" ] + } + }, + { + "type": "profession", + "id": "mil_marksman", + "name": "Military Designated Marksman", + "description": "You aren't a dedicated sniper, but every squad needs someone who can handle targets beyond their effective range. Without the rest of your squad, things are getting too close quarters for your liking.", + "points": 5, + "traits": [ "PROF_MILITARY" ], + "skills": [ + { "level": 3, "name": "gun" }, + { "level": 2, "name": "rifle" }, + { "level": 2, "name": "melee" }, + { "level": 1, "name": "stabbing" }, + { "level": 1, "name": "dodge" } + ], + "items": { + "both": { + "items": [ + "pants_army", + "tshirt", + "jacket_army", + "helmet_liner", + "helmet_army", + "gloves_liner", + "gloves_tactical", + "socks", + "boots_combat", + "wristwatch", + "canteen", + "molle_pack" + ], + "entries": [ + { "group": "charged_two_way_radio" }, + { "item": "modularvestceramic", "contents-group": "army_mags_m14" }, + { "item": "ear_plugs", "custom-flags": [ "no_auto_equip" ] }, + { "item": "e_tool", "container-item": "webbing_belt" }, + { "item": "knife_combat", "container-item": "sheath" }, + { "item": "grenadebandolier", "contents-item": [ "grenade", "grenade" ] }, + { "item": "legpouch_large", "contents-group": "army_mags_m17" }, + { + "item": "m14ebr", + "ammo-item": "762_51", + "charges": 20, + "contents-item": [ "rifle_scope", "shoulder_strap", "bipod" ] + }, + { "item": "m17", "ammo-item": "9mm", "charges": 17, "container-item": "holster" } + ] + }, + "male": [ "boxer_shorts" ], + "female": [ "boy_shorts", "sports_bra" ] + } + }, + { + "type": "profession", + "id": "prof_combat_engineer", + "name": "Combat Engineer", + "description": "Your military training focused on field fortifications and demolitions, along with the basics on modern autonomous defenses. You never expected to need that training on the home front, not that it's helped so far given the bots are all on free-fire mode.", + "points": 6, + "traits": [ "PROF_MILITARY" ], + "skills": [ + { "level": 2, "name": "fabrication" }, + { "level": 2, "name": "mechanics" }, + { "level": 2, "name": "electronics" }, + { "level": 2, "name": "computer" }, + { "level": 2, "name": "traps" }, + { "level": 2, "name": "gun" }, + { "level": 1, "name": "rifle" }, + { "level": 1, "name": "dodge" } + ], + "items": { + "both": { + "items": [ + "pants_army", + "tshirt", + "jacket_army", + "helmet_liner", + "helmet_army", + "gloves_liner", + "gloves_tactical", + "socks", + "boots_combat", + "wristwatch", + "canteen", + "molle_pack", + "hatchet", + "boltcutters", + "multitool" + ], + "entries": [ + { "group": "charged_two_way_radio" }, + { "item": "webbing_belt", "contents-item": "e_tool" }, + { "item": "tinyweldtank", "ammo-item": "oxyacetylene", "charges": 60, "container-item": "oxy_torch" }, + { "item": "modularvestceramic", "contents-group": "army_mags_m4" }, + { "item": "ear_plugs", "custom-flags": [ "no_auto_equip" ] }, + { "item": "goggles_welding", "custom-flags": [ "no_auto_equip" ] }, + { "item": "knife_combat", "container-item": "sheath" }, + { "item": "m4a1", "ammo-item": "556", "charges": 30, "contents-item": [ "shoulder_strap", "holo_sight" ] }, + { "item": "c4", "count": 4 } + ] + }, + "male": [ "boxer_shorts" ], + "female": [ "boy_shorts", "sports_bra" ] } }, { @@ -4559,15 +4787,13 @@ "gloves_tactical", "helmet_army", "jacket_army", - "webbing_belt", - "legpouch_large" + "webbing_belt" ], "entries": [ { "group": "charged_two_way_radio" }, { "item": "ear_plugs", "custom-flags": [ "no_auto_equip" ] }, { "item": "m17", "ammo-item": "9mm", "container-item": "holster", "charges": 17 }, - { "item": "p320mag_17rd_9x19mm", "ammo-item": "9mm", "charges": 17 }, - { "item": "p320mag_17rd_9x19mm", "ammo-item": "9mm", "charges": 17 } + { "item": "legpouch_large", "contents-group": "army_mags_m17" } ] }, "male": [ "boxer_shorts" ], diff --git a/data/json/scenarios.json b/data/json/scenarios.json index f2aeff41a5b3..bc314f07d3c1 100644 --- a/data/json/scenarios.json +++ b/data/json/scenarios.json @@ -579,6 +579,10 @@ "allowed_locs": [ "sloc_field", "sloc_forest" ], "professions": [ "soldier", + "mil_auto_rifleman", + "mil_grenadier", + "mil_marksman", + "prof_combat_engineer", "specops", "power_armor_soldier", "bio_soldier", @@ -664,6 +668,10 @@ "professions": [ "unemployed", "soldier", + "mil_auto_rifleman", + "mil_grenadier", + "mil_marksman", + "prof_combat_engineer", "specops", "power_armor_soldier", "bio_soldier", diff --git a/data/mods/Fuji_Mil_Prof/prof/army.json b/data/mods/Fuji_Mil_Prof/prof/army.json index f11668f8775b..a6c67162b08a 100644 --- a/data/mods/Fuji_Mil_Prof/prof/army.json +++ b/data/mods/Fuji_Mil_Prof/prof/army.json @@ -1,111 +1,4 @@ [ - { - "type": "profession", - "id": "mil_marksman", - "name": "Military Marksman", - "description": "You like to think you're a real sniper, but really you're just infantry with a bigger gun.", - "points": 4, - "traits": [ "PROF_MILITARY" ], - "skills": [ { "level": 1, "name": "survival" }, { "level": 2, "name": "gun" }, { "level": 2, "name": "rifle" } ], - "items": { - "both": { - "items": [ - "hat_boonie", - "jacket_army", - "pants_army", - "longshirt", - "rucksack", - "knee_pads", - "elbow_pads", - "socks", - "boots_combat", - "gloves_tactical" - ], - "entries": [ - { "item": "m14ebr", "ammo-item": "762_51", "charges": 20, "contents-item": [ "acog_scope", "shoulder_strap", "bipod" ] }, - { "item": "ear_plugs", "custom-flags": [ "no_auto_equip" ] }, - { "item": "modularvestceramic", "contents-group": "army_mags_m14" }, - { "item": "knife_combat", "container-item": "sheath" }, - { "item": "m17", "ammo-item": "9mm", "charges": 17, "container-item": "holster" } - ] - }, - "male": [ "boxer_shorts" ], - "female": [ "boy_shorts", "sports_bra" ] - } - }, - { - "type": "profession", - "id": "mil_auto_rifleman", - "name": "Military Automatic Rifleman", - "description": "S stands for suppressing fire!", - "points": 3, - "traits": [ "PROF_MILITARY" ], - "skills": [ { "level": 1, "name": "survival" }, { "level": 1, "name": "gun" }, { "level": 1, "name": "rifle" } ], - "items": { - "both": { - "items": [ - "pants_army", - "tank_top", - "modularvestceramic", - "glasses_bal", - "knee_pads", - "elbow_pads", - "socks", - "boots_combat", - "gloves_tactical" - ], - "entries": [ - { "item": "m249", "ammo-item": "556", "charges": 200, "contents-item": [ "shoulder_strap", "holo_sight", "bipod" ] }, - { "item": "ear_plugs", "custom-flags": [ "no_auto_equip" ] }, - { "item": "556", "charges": 200, "container-item": "belt223" }, - { "item": "m17", "ammo-item": "9mm", "charges": 17, "container-item": "holster" } - ] - }, - "male": [ "boxer_shorts" ], - "female": [ "boy_shorts", "sports_bra" ] - } - }, - { - "type": "profession", - "id": "mil_grenadier", - "name": "Military Grenadier", - "description": "There's no kill like overkill.", - "points": 3, - "traits": [ "PROF_MILITARY" ], - "skills": [ - { "level": 1, "name": "survival" }, - { "level": 1, "name": "gun" }, - { "level": 1, "name": "rifle" }, - { "level": 1, "name": "launcher" } - ], - "items": { - "both": { - "items": [ - "tac_helmet", - "pants_army", - "tshirt", - "rucksack", - "glasses_bal", - "dump_pouch", - "knee_pads", - "elbow_pads", - "socks", - "boots_combat", - "gloves_tactical" - ], - "entries": [ - { "item": "m4a1", "ammo-item": "556", "charges": 30, "contents-item": [ "shoulder_strap", "holo_sight", "m203" ] }, - { "item": "ear_plugs", "custom-flags": [ "no_auto_equip" ] }, - { "item": "modularvestceramic", "contents-group": "army_mags_m4" }, - { "item": "40x46mm_m433", "charges": 4, "container-item": "grenade_pouch" }, - { "item": "knife_combat", "container-item": "sheath" }, - { "item": "m17", "ammo-item": "9mm", "charges": 17, "container-item": "holster" } - ] - }, - "male": [ "boxer_shorts" ], - "female": [ "boy_shorts", "sports_bra" ] - } - }, { "type": "profession", "id": "mil_breacher", diff --git a/data/mods/Fuji_Mil_Prof/prof/itemgroups_prof.json b/data/mods/Fuji_Mil_Prof/prof/itemgroups_prof.json index 4e705e6bf5c0..cda4d0306121 100644 --- a/data/mods/Fuji_Mil_Prof/prof/itemgroups_prof.json +++ b/data/mods/Fuji_Mil_Prof/prof/itemgroups_prof.json @@ -40,14 +40,5 @@ "subtype": "collection", "id": "army_mags_57", "entries": [ { "item": "fn57mag", "ammo-item": "57mm", "charges": 20 }, { "item": "fn57mag", "ammo-item": "57mm", "charges": 20 } ] - }, - { - "type": "item_group", - "subtype": "collection", - "id": "army_mags_m14", - "entries": [ - { "item": "m14mag", "ammo-item": "762_51", "charges": 20 }, - { "item": "m14mag", "ammo-item": "762_51", "charges": 20 } - ] } ] diff --git a/data/mods/Fuji_Mil_Prof/scenarios.json b/data/mods/Fuji_Mil_Prof/scenarios.json index 6931256f7e54..9df7342edc7d 100644 --- a/data/mods/Fuji_Mil_Prof/scenarios.json +++ b/data/mods/Fuji_Mil_Prof/scenarios.json @@ -2,37 +2,13 @@ { "copy-from": "heli_crash", "type": "scenario", - "extend": { - "professions": [ - "mil_marksman", - "mil_auto_rifleman", - "mil_grenadier", - "mil_breacher", - "mil_operator", - "mil_sniper", - "mil_hacker", - "mil_undercover", - "mil_cbrn" - ] - }, + "extend": { "professions": [ "mil_breacher", "mil_operator", "mil_sniper", "mil_hacker", "mil_undercover", "mil_cbrn" ] }, "id": "heli_crash" }, { "copy-from": "overrun", "type": "scenario", - "extend": { - "professions": [ - "mil_marksman", - "mil_auto_rifleman", - "mil_grenadier", - "mil_breacher", - "mil_operator", - "mil_sniper", - "mil_hacker", - "mil_undercover", - "mil_cbrn" - ] - }, + "extend": { "professions": [ "mil_breacher", "mil_operator", "mil_sniper", "mil_hacker", "mil_undercover", "mil_cbrn" ] }, "id": "overrun" } ]