From b02095bcc06dc42e2e7ee3315f6903d1c9672e23 Mon Sep 17 00:00:00 2001 From: John Candlebury Date: Thu, 26 Dec 2019 13:59:00 -0600 Subject: [PATCH] Aftershock:Wraitheon Executive Profesion (#36301) * Wraitheon Executive Profesion * Correct name for wraitheon sentinel; * Update data/mods/Aftershock/items/afs_inactiverobot.json Co-Authored-By: Maleclypse <54345792+Maleclypse@users.noreply.github.com> * Tweak gun and description * Format Json * Reduce armor of sentinel Turns out most zombies do lower damage than I thought. * Remove rebase duplicated code. Co-authored-by: Maleclypse <54345792+Maleclypse@users.noreply.github.com> --- data/mods/Aftershock/items/afs_armor.json | 18 +++++++ .../Aftershock/items/afs_inactiverobot.json | 15 ++++++ data/mods/Aftershock/items/afs_materials.json | 18 +++++++ data/mods/Aftershock/items/afs_tools.json | 34 ++++++++++++ data/mods/Aftershock/items/corpses.json | 23 ++++++++ data/mods/Aftershock/items/gun/laser.json | 36 +++++++++++++ data/mods/Aftershock/items/monster_drops.json | 8 +++ data/mods/Aftershock/mobs/afs_robots.json | 53 +++++++++++++++++++ .../Aftershock/player/afs_professions.json | 23 ++++++++ .../recipes/afs_deconstruction.json | 24 +++++++++ 10 files changed, 252 insertions(+) create mode 100644 data/mods/Aftershock/items/corpses.json create mode 100644 data/mods/Aftershock/items/gun/laser.json create mode 100644 data/mods/Aftershock/items/monster_drops.json diff --git a/data/mods/Aftershock/items/afs_armor.json b/data/mods/Aftershock/items/afs_armor.json index 5059bb5b40cc0..642fb7e3bf4d2 100644 --- a/data/mods/Aftershock/items/afs_armor.json +++ b/data/mods/Aftershock/items/afs_armor.json @@ -276,5 +276,23 @@ "flags": [ "MAG_COMPACT" ] }, "flags": [ "STURDY", "OUTER" ] + }, + { + "id": "afs_sentinel_cloak", + "type": "ARMOR", + "copy-from": "jedi_cloak", + "name": "sentinel-lx cloak", + "description": "The vantablack cloak of sentinel-lx hangs around ones shoulders as a solid, unnatural shadow. Made from woven graphene, its lightweight and resistant, but cannot be repaired", + "price": 1500000, + "material": [ "graphene_weave" ], + "symbol": "[", + "color": "dark_gray", + "covers": [ "TORSO", "HEAD", "ARMS", "LEGS" ], + "coverage": 85, + "encumbrance": 4, + "warmth": 30, + "material_thickness": 3, + "flags": [ "OVERSIZE", "HOOD", "OUTER", "NO_REPAIR", "SUPER_FANCY", "STURDY" ], + "relic_data": { "passive_effects": [ { "has": "WORN", "condition": "ALWAYS", "values": [ { "value": "BONUS_DODGE", "add": 1 } ] } ] } } ] diff --git a/data/mods/Aftershock/items/afs_inactiverobot.json b/data/mods/Aftershock/items/afs_inactiverobot.json index fc15cd76393d0..a3a82865df29b 100644 --- a/data/mods/Aftershock/items/afs_inactiverobot.json +++ b/data/mods/Aftershock/items/afs_inactiverobot.json @@ -20,5 +20,20 @@ "skill1": "cooking", "skill2": "computer" } + }, + { + "id": "bot_sentinel_lx", + "type": "TOOL", + "name": "inactive sentinel-lx", + "description": "Crouched and dead still, this armored luxurious robot resembles an ancient knight immersed in deep prayer. If reprogrammed and rewired successfully the robot will identify you as a friendly, and will protect you from nearby foes.", + "weight": "40750 g", + "volume": "30 L", + "price": 600000, + "to_hit": -3, + "bashing": 8, + "material": "alien_resin", + "symbol": ";", + "color": "green", + "use_action": { "type": "place_monster", "monster_id": "afs_mon_sentinel_lx", "difficulty": 4, "moves": 100, "skill2": "computer" } } ] diff --git a/data/mods/Aftershock/items/afs_materials.json b/data/mods/Aftershock/items/afs_materials.json index 11f12e4d6a05f..bc83b65808ea0 100644 --- a/data/mods/Aftershock/items/afs_materials.json +++ b/data/mods/Aftershock/items/afs_materials.json @@ -14,5 +14,23 @@ "dmg_adj": [ "marked", "dented", "smashed", "shattered" ], "bash_dmg_verb": "dented", "cut_dmg_verb": "scratched" + }, + { + "type": "material", + "ident": "graphene_weave", + "name": "Graphene Weave", + "density": 10, + "specific_heat_liquid": 0.82, + "specific_heat_solid": 0.45, + "latent_heat": 273, + "bash_resist": 3, + "cut_resist": 3, + "acid_resist": 5, + "fire_resist": 5, + "elec_resist": 0, + "chip_resist": 10, + "dmg_adj": [ "marked", "dented", "scarred", "broken" ], + "bash_dmg_verb": "ripped", + "cut_dmg_verb": "cut" } ] diff --git a/data/mods/Aftershock/items/afs_tools.json b/data/mods/Aftershock/items/afs_tools.json index e256f1b6bd594..e2b22fec17cf3 100644 --- a/data/mods/Aftershock/items/afs_tools.json +++ b/data/mods/Aftershock/items/afs_tools.json @@ -39,6 +39,40 @@ "//": "since we cost no battery, no reason not to keep these", "flags": [ "WATCH", "ALARMCLOCK", "LIGHT_25" ] }, + { + "id": "afs_wraitheon_smartphone", + "type": "TOOL", + "name": "Wraitheon executive's smartphone", + "copy-from": "afs_atomic_smartphone", + "description": "Your custom crafted atomic smartphone. Most notably a confidential executive-level override program allows you to remotely control most robots.", + "price": 20000000, + "price_postapoc": 250000, + "material": [ "superalloy", "aluminum" ], + "use_action": [ + { + "target": "afs_atomic_wraitheon_flashlight", + "msg": "You activate the flashlight app.", + "active": true, + "type": "transform" + }, + { "revert_to": "afs_atomic_smartphone", "type": "CAMERA" }, + { "type": "ROBOTCONTROL" } + ] + }, + { + "id": "afs_atomic_wraitheon_flashlight", + "copy-from": "afs_atomic_smartphone_flashlight", + "type": "TOOL", + "name": "Executive's smartphone - Flashlight", + "name_plural": "Executive's smartphones - Flashlight", + "revert_to": "afs_atomic_smartphone", + "use_action": { + "target": "afs_wraitheon_smartphone", + "msg": "You deactivate the flashlight app.", + "menu_text": "Turn off flashlight", + "type": "transform" + } + }, { "id": "afs_atompot", "type": "TOOL", diff --git a/data/mods/Aftershock/items/corpses.json b/data/mods/Aftershock/items/corpses.json new file mode 100644 index 0000000000000..2505bbbe86a3e --- /dev/null +++ b/data/mods/Aftershock/items/corpses.json @@ -0,0 +1,23 @@ +{ + "type": "GENERIC", + "id": "broken_afs_mon_sentinel_lx", + "symbol": ",", + "color": "green", + "name": "broken sentinel-lx", + "category": "other", + "description": "The irreparably broken remains of a Sentinel-lx. Could be gutted for valuable parts.", + "price": 30000, + "price_postapoc": 1000, + "material": [ + "steel", + "plastic" + ], + "weight": "140000 g", + "volume": "62500 ml", + "bashing": 6, + "cutting": 6, + "to_hit": -3, + "flags": [ + "TRADER_AVOID" + ] +} diff --git a/data/mods/Aftershock/items/gun/laser.json b/data/mods/Aftershock/items/gun/laser.json new file mode 100644 index 0000000000000..3ffe23317a6d3 --- /dev/null +++ b/data/mods/Aftershock/items/gun/laser.json @@ -0,0 +1,36 @@ +[ + { + "id": "afs_sentinel_stunner", + "type": "GUN", + "copy-from": "v29", + "name": "wrist-stunner", + "description": "A severed robotic hand from a Wraitheon Sentinel. The powerful electro-laser stun gun embed on its wrist is still functional, and can be used when connected to an UPS.", + "price": 720000, + "to_hit": -2, + "bashing": 10, + "material": [ "superalloy", "plastic" ], + "color": "cyan", + "range": 10, + "ranged_damage": 5, + "pierce": 15, + "dispersion": 500, + "ups_charges": 25, + "ammo_effects": [ "LASER", "BEANBAG" ], + "flags": [ "NEVER_JAMS", "NO_UNLOAD", "NON-FOULING", "NEEDS_NO_LUBE" ] + }, + { + "id": "afs_sentinel_laser", + "type": "GUN", + "copy-from": "afs_sentinel_stunner", + "name": "wrist-trilaser", + "description": "A powerful tri-barreled laser weapon, still mounted to the robotic hand of the wraitheon drone it originally belonged too. Can still be fired when connected to an UPS.", + "color": "red", + "range": 10, + "ranged_damage": 25, + "pierce": 15, + "ups_charges": 50, + "modes": [ [ "MULTI", "trilaser", 3 ] ], + "ammo_effects": [ "LASER" ], + "flags": [ "NEVER_JAMS", "NO_UNLOAD", "NON-FOULING", "NEEDS_NO_LUBE" ] + } +] diff --git a/data/mods/Aftershock/items/monster_drops.json b/data/mods/Aftershock/items/monster_drops.json new file mode 100644 index 0000000000000..23b6f3084a857 --- /dev/null +++ b/data/mods/Aftershock/items/monster_drops.json @@ -0,0 +1,8 @@ +{ + "type": "item_group", + "subtype": "collection", + "id": "mon_afs_sentinel_lx_drops", + "entries": [ + { "item": "afs_sentinel_cloak" } + ] +} diff --git a/data/mods/Aftershock/mobs/afs_robots.json b/data/mods/Aftershock/mobs/afs_robots.json index bfc177bcb3ab1..d83101ab6b40f 100644 --- a/data/mods/Aftershock/mobs/afs_robots.json +++ b/data/mods/Aftershock/mobs/afs_robots.json @@ -33,5 +33,58 @@ "death_drops": { }, "death_function": [ "BROKEN" ], "flags": [ "SEES", "ELECTRONIC", "IMMOBILE", "NO_BREATHE" ] + }, + { + "id": "afs_mon_sentinel_lx", + "type": "MONSTER", + "name": "Wraitheon Sentinel-lx", + "description": "Its exterior plates sable and gold, this luxurious variant of a Wraitheon drone was once kept as a bodyguard by society's wealthiest. Still and with it's wrist sword extended, it resembles an ancient knight, standing an eternal watch.", + "default_faction": "defense_bot", + "species": [ "ROBOT" ], + "diff": 10, + "volume": "62500 ml", + "weight": "81500 g", + "hp": 200, + "speed": 100, + "material": [ "steel" ], + "symbol": "R", + "color": "light_gray", + "aggression": 100, + "morale": 100, + "melee_skill": 6, + "melee_dice": 3, + "melee_dice_sides": 4, + "melee_cut": 5, + "dodge": 8, + "armor_bash": 10, + "armor_cut": 20, + "vision_day": 6, + "vision_night": 6, + "path_settings": { "max_dist": 6 }, + "revert_to_itype": "bot_sentinel_lx", + "special_attacks": [ + [ "SMASH", 20 ], + [ "TAZER", 5 ], + { + "type": "gun", + "cooldown": 15, + "gun_type": "afs_sentinel_laser", + "ranges": [ [ 0, 12, "DEFAULT" ] ], + "targeting_sound": "\"Dispatching hostile with lethal force.\"" + } + ], + "death_function": [ "BROKEN" ], + "death_drops": { "groups": [ [ "mon_afs_sentinel_lx_drops", 1 ] ] }, + "flags": [ + "SEES", + "HEARS", + "BASHES", + "ELECTRONIC", + "NO_BREATHE", + "PRIORITIZE_TARGETS", + "GOODHEARING", + "PATH_AVOID_DANGER_2", + "HIT_AND_RUN" + ] } ] diff --git a/data/mods/Aftershock/player/afs_professions.json b/data/mods/Aftershock/player/afs_professions.json index f7a1385852ff7..befe3b51f381d 100644 --- a/data/mods/Aftershock/player/afs_professions.json +++ b/data/mods/Aftershock/player/afs_professions.json @@ -228,6 +228,29 @@ "female": [ "bra", "panties" ] } }, + { + "type": "profession", + "ident": "afs_wraitheon_executive", + "name": "Wraitheon Executive", + "description": "You were one of the chief executives of the Megacoprporation Wraitheon Robotics ltd. and consistently ranked among the most powerful and influential persons of the world. Still, the apocalypse has caught you unprepared, and now after the dissolution of your company and the crumbling of your network of influence, your were left powerless and destitute, and must rely on your two robotic bodyguards to survive.", + "points": 8, + "CBMs": [ "bio_batteries", "bio_power_storage_mkII", "bio_eye_enhancer", "bio_int_enhancer", "bio_memory", "bio_cable" ], + "traits": [ "FLIMSY3", "SLOWHEALER3" ], + "pets": [ { "name": "afs_mon_sentinel_lx", "amount": 2 } ], + "skills": [ { "level": 6, "name": "speech" }, { "level": 6, "name": "computer" } ], + "items": { + "both": { + "items": [ "tux", "dress_shoes", "socks", "gold_watch", "undershirt", "smart_phone", "gasdiscount_platinum" ], + "entries": [ + { "item": "cash_card", "charges": 200000000 }, + { "item": "cash_card", "charges": 200000000 }, + { "item": "afs_wraitheon_smartphone" } + ] + }, + "male": [ "briefs", "collarpin", "diamond_ring" ], + "female": [ "panties", "hairpin", "pearl_collar" ] + } + }, { "type": "profession", "ident": "afs_affluent_executive", diff --git a/data/mods/Aftershock/recipes/afs_deconstruction.json b/data/mods/Aftershock/recipes/afs_deconstruction.json index 23d3494fe4e61..5581d8f67cb41 100644 --- a/data/mods/Aftershock/recipes/afs_deconstruction.json +++ b/data/mods/Aftershock/recipes/afs_deconstruction.json @@ -16,5 +16,29 @@ [ [ "sensory_cluster", 1 ] ], [ [ "bioweapon_chassis", 1 ] ] ] + }, + { + "result": "broken_afs_mon_sentinel_lx", + "type": "uncraft", + "skill_used": "electronics", + "difficulty": 6, + "time": "2 h", + "using": [ [ "soldering_standard", 20 ], [ "welding_standard", 5 ] ], + "qualities": [ { "id": "SCREW", "level": 1 }, { "id": "SAW_M", "level": 1 } ], + "components": [ + [ [ "ai_module_advanced", 1 ] ], + [ [ "self_monitoring_module", 1 ] ], + [ [ "sensor_module", 1 ] ], + [ [ "memory_module", 1 ] ], + [ [ "pathfinding_module", 1 ] ], + [ [ "identification_module", 1 ] ], + [ [ "android_legs", 1 ] ], + [ [ "android_chassis", 1 ] ], + [ [ "android_arms", 1 ] ], + [ [ "medium_storage_battery", 1 ] ], + [ [ "huge_atomic_battery_cell", 1 ] ], + [ [ "plut_cell", 4 ] ], + [ [ "afs_sentinel_laser", 1 ] ] + ] } ]