Skip to content

Commit

Permalink
Police Robot Family Obsoletion (#66872)
Browse files Browse the repository at this point in the history
* eyebot - first JSON pass

* eyebot schematics

* eyebot cpp + eyebot schematics in aftershock

* copbot first pass - JSON + CPP

* recipe ID fix

* fix duplicate entry

* port obsoleted robots to Aftershock

* riot bot - first pass

* schematics

* severely silly

* evil

* item bonanza

* camspy + linting

* gruh

* dictionary and typos oh my

* item obsoletion & itemgroups

* snippets snippets snippets

* backstory edits

Co-Authored-By: chichit1044 <[email protected]>

* C++ surgery (what can go wrong?)

* typos & dictionary

* do it work yet?

* I LOVE DOUBLE SPACES

* Update dictionary.txt

---------

Co-authored-by: chichit1044 <[email protected]>
  • Loading branch information
Karol1223 and chichit1044 authored Jul 25, 2023
1 parent 9ff88e9 commit 73489da
Show file tree
Hide file tree
Showing 39 changed files with 652 additions and 634 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -53,20 +53,6 @@
"subtype": "distribution",
"entries": [ { "item": "tazer", "prob": 3 }, { "item": "scrap", "prob": 9 } ]
},
{
"type": "item_group",
"id": "copbot",
"subtype": "distribution",
"entries": [
{ "item": "baton", "prob": 8 },
{ "item": "tazer", "prob": 3 },
{ "item": "sheet_kevlar_layered", "prob": 10 },
{ "item": "ceramic_armor", "prob": 15 },
{ "item": "tonfa", "prob": 10 },
{ "item": "shocktonfa_off", "prob": 5 },
{ "item": "alloy_plate", "prob": 10 }
]
},
{
"type": "item_group",
"id": "molebot",
Expand Down
3 changes: 0 additions & 3 deletions data/json/itemgroups/science_and_tech.json
Original file line number Diff line number Diff line change
Expand Up @@ -134,12 +134,9 @@
"items": [
[ "schematics_nursebot", 10 ],
[ "schematics_grocerybot", 20 ],
[ "schematics_copbot", 50 ],
[ "schematics_eyebot", 50 ],
[ "schematics_secubot", 50 ],
[ "schematics_skitterbot", 50 ],
[ "schematics_hazmatbot", 50 ],
[ "schematics_riotbot", 50 ],
[ "schematics_sciencebot", 10 ],
[ "schematics_molebot", 20 ],
[ "schematics_dispatch", 25 ],
Expand Down
22 changes: 0 additions & 22 deletions data/json/items/book/electronics.json
Original file line number Diff line number Diff line change
Expand Up @@ -303,7 +303,6 @@
"category": "manuals",
"name": { "str_sp": "schematics" },
"description": "seeing this is a bug",
"looks_like": "schematics_eyebot",
"weight": "30 g",
"volume": "250 ml",
"price": 100000,
Expand Down Expand Up @@ -332,20 +331,6 @@
"description": "Bearing the logo of Uncanny, these are assembly plans, design specs, and technical drawings for the grocery bot. Most of this is useless to you, but you could use the assembly plans to re-assemble the robot from salvaged parts.",
"copy-from": "schematics_generic"
},
{
"id": "schematics_copbot",
"type": "BOOK",
"name": { "str_sp": "police bot schematics" },
"description": "Assembly plans, design specs, and technical drawings for the police bot. Most of this is useless to you, but you could use the assembly plans to re-assemble the robot from salvaged parts.",
"copy-from": "schematics_generic"
},
{
"id": "schematics_eyebot",
"type": "BOOK",
"name": { "str_sp": "eyebot schematics" },
"description": "Assembly plans, design specs, and technical drawings for the eyebot. Most of this is useless to you, but you could use the assembly plans to re-assemble the robot from salvaged parts.",
"copy-from": "schematics_generic"
},
{
"id": "schematics_secubot",
"type": "BOOK",
Expand Down Expand Up @@ -374,13 +359,6 @@
"description": "Assembly plans, design specs, and technical drawings for the miner bot. Most of this is useless to you, but you could use the assembly plans to re-assemble the robot from salvaged parts.",
"copy-from": "schematics_generic"
},
{
"id": "schematics_riotbot",
"type": "BOOK",
"name": { "str_sp": "riot control bot schematics" },
"description": "Assembly plans, design specs, and technical drawings for the riot control bot. Most of this is useless to you, but you could use the assembly plans to re-assemble the robot from salvaged parts.",
"copy-from": "schematics_generic"
},
{
"id": "schematics_sciencebot",
"type": "BOOK",
Expand Down
107 changes: 26 additions & 81 deletions data/json/items/corpses/inactive_bots.json
Original file line number Diff line number Diff line change
Expand Up @@ -475,60 +475,6 @@
"flags": [ "SINGLE_USE" ],
"melee_damage": { "bash": 8 }
},
{
"id": "bot_copbot",
"looks_like": "broken_copbot",
"type": "TOOL",
"name": { "str": "inactive police bot" },
"description": "An inactive police robot. Using this item involves placing it on the ground and turning it on. If reprogrammed and rewired successfully, the police bot will then identify you as law enforcement, roam around or follow you, and attempt to detain lawbreakers.",
"weight": "81500 g",
"volume": "62500 ml",
"price": 100000,
"price_postapoc": 500,
"to_hit": -3,
"material": [ "steel" ],
"symbol": ";",
"color": "light_green",
"use_action": {
"type": "place_monster",
"monster_id": "mon_copbot",
"friendly_msg": "The police bot rolls into action, ready to pursue criminals.",
"hostile_msg": "A siren howls and lights flash as the police bot prepares to arrest you!",
"//": "Wheeled and must be easy-to-use for police deployment",
"difficulty": 3,
"moves": 100,
"skills": [ "electronics", "computer" ]
},
"flags": [ "SINGLE_USE" ],
"melee_damage": { "bash": 8 }
},
{
"id": "bot_eyebot",
"looks_like": "broken_eyebot",
"type": "TOOL",
"name": { "str": "inactive eyebot" },
"description": "An inactive eyebot. Using this item involves turning it on and launching the UAV. If reprogrammed and rewired successfully, the eyebot will then keep watch for intruders.",
"weight": "40750 g",
"volume": "30 L",
"price": 10000,
"price_postapoc": 500,
"to_hit": -3,
"material": [ "steel" ],
"symbol": ";",
"color": "light_green",
"use_action": {
"type": "place_monster",
"monster_id": "mon_eyebot",
"friendly_msg": "The eyebot hums and takes to the sky.",
"hostile_msg": "The eyebot beeps disapprovingly and focuses its camera on your face. Say cheese!",
"//": "Like most surveillance tech these likely have poor security. Secure the wifi!",
"difficulty": 1,
"moves": 100,
"skills": [ "electronics", "computer" ]
},
"flags": [ "SINGLE_USE" ],
"melee_damage": { "bash": 8 }
},
{
"id": "bot_hazmatbot",
"type": "TOOL",
Expand Down Expand Up @@ -582,33 +528,6 @@
"flags": [ "SINGLE_USE" ],
"melee_damage": { "bash": 8 }
},
{
"id": "bot_riotbot",
"looks_like": "broken_riotbot",
"type": "TOOL",
"name": { "str": "inactive riot control bot" },
"description": "An inactive riot control bot. Using this item involves placing it on the ground and turning it on. If reprogrammed and rewired successfully, the robot will bring order and peace to the horde.",
"weight": "81500 g",
"volume": "62500 ml",
"price": 35000,
"price_postapoc": 1500,
"to_hit": -3,
"material": [ "steel" ],
"symbol": ";",
"color": "light_green",
"use_action": {
"type": "place_monster",
"monster_id": "mon_riotbot",
"friendly_msg": "The riot control bot rolls into action.",
"hostile_msg": "The riot control bot gasses you and approaches with a pair of handcuffs!",
"//": "Pretty easy but you want to be careful with the gas",
"difficulty": 4,
"moves": 150,
"skills": [ "electronics", "computer" ]
},
"flags": [ "SINGLE_USE" ],
"melee_damage": { "bash": 8 }
},
{
"id": "bot_skitterbot",
"looks_like": "broken_skitterbot",
Expand Down Expand Up @@ -1000,5 +919,31 @@
},
"flags": [ "SINGLE_USE" ],
"melee_damage": { "bash": 6, "cut": 6 }
},
{
"id": "bot_robofac_camspy",
"looks_like": "broken_robofac_camspy",
"type": "TOOL",
"name": { "str": "inactive camspy", "str_pl": "inactive camspies" },
"description": "An inactive camspy. Using this item involves turning it on and launching it. If reprogrammed and rewired successfully, the camspy will then keep watch for intruders.",
"weight": "40750 g",
"volume": "30 L",
"price": 10000,
"price_postapoc": 500,
"to_hit": -3,
"material": [ "steel", "plastic" ],
"symbol": ";",
"color": "light_green",
"use_action": {
"type": "place_monster",
"monster_id": "mon_robofac_camspy",
"friendly_msg": "The camspy hums and takes to the sky.",
"hostile_msg": "The camspy hums and appears to reconnect to whoever was piloting it before.",
"difficulty": 3,
"moves": 100,
"skills": [ "electronics", "computer" ]
},
"flags": [ "SINGLE_USE", "NO_SALVAGE" ],
"melee_damage": { "bash": 8 }
}
]
49 changes: 4 additions & 45 deletions data/json/items/generic.json
Original file line number Diff line number Diff line change
Expand Up @@ -1369,28 +1369,21 @@
},
{
"type": "GENERIC",
"id": "broken_eyebot",
"id": "broken_robofac_camspy",
"symbol": ",",
"color": "green",
"name": { "str": "broken eyebot" },
"name": { "str": "broken camspy", "str_pl": "broken camspies" },
"category": "other",
"description": "A broken eyebot. Much less threatening now that it won't be calling for backup. Could be gutted for parts.",
"description": "A broken camspy. It probably won't spy on anything ever again. Could be gutted for parts.",
"price": 1000,
"price_postapoc": 10,
"material": [ "steel", "plastic" ],
"weight": "31520 g",
"volume": "15 L",
"to_hit": -3,
"flags": [ "TRADER_AVOID", "NO_REPAIR" ],
"flags": [ "TRADER_AVOID", "NO_REPAIR", "NO_SALVAGE" ],
"melee_damage": { "bash": 6, "cut": 6 }
},
{
"type": "GENERIC",
"id": "broken_robofac_camspy",
"copy-from": "broken_eyebot",
"name": { "str": "broken camspy", "str_pl": "broken camspies" },
"description": "A broken camspy. It probably won't spy on anything ever again. Could be gutted for parts."
},
{
"type": "GENERIC",
"id": "broken_skitterbot",
Expand Down Expand Up @@ -1442,23 +1435,6 @@
"flags": [ "TRADER_AVOID", "NO_REPAIR" ],
"melee_damage": { "bash": 4, "cut": 4 }
},
{
"type": "GENERIC",
"id": "broken_copbot",
"symbol": ",",
"color": "green",
"name": { "str": "broken police bot" },
"category": "other",
"description": "A broken police bot. Much less threatening now that it's quiet and still. Could be gutted for parts.",
"price": 30000,
"price_postapoc": 10,
"material": [ "steel", "plastic" ],
"weight": "140000 g",
"volume": "62500 ml",
"to_hit": -3,
"flags": [ "TRADER_AVOID", "NO_REPAIR" ],
"melee_damage": { "bash": 6, "cut": 6 }
},
{
"type": "GENERIC",
"id": "broken_nursebot",
Expand Down Expand Up @@ -1516,23 +1492,6 @@
"name": { "str": "broken nurse bot" },
"copy-from": "broken_nursebot"
},
{
"type": "GENERIC",
"id": "broken_riotbot",
"symbol": ",",
"color": "green",
"name": { "str": "broken riot control bot" },
"category": "other",
"description": "A broken riot control bot. Much less threatening now that it's out of gas. Could be gutted for parts.",
"price": 30000,
"price_postapoc": 10,
"material": [ "steel", "plastic" ],
"weight": "140000 g",
"volume": "62500 ml",
"to_hit": -3,
"flags": [ "TRADER_AVOID", "NO_REPAIR" ],
"melee_damage": { "bash": 6, "cut": 6 }
},
{
"type": "GENERIC",
"id": "broken_robofac_prototype",
Expand Down
6 changes: 2 additions & 4 deletions data/json/mapgen/bank.json
Original file line number Diff line number Diff line change
Expand Up @@ -77,8 +77,7 @@
"options": [ { "name": "Open Vault", "action": "unlock" } ],
"failures": [ { "action": "shutdown" }, { "action": "alarm" } ]
}
},
"place_monster": [ { "monster": "mon_copbot", "x": [ 7, 18 ], "y": [ 7, 18 ], "chance": 30, "repeat": 4 } ]
}
}
},
{
Expand Down Expand Up @@ -215,8 +214,7 @@
"options": [ { "name": "Open Vault", "action": "unlock" } ],
"failures": [ { "action": "alarm" }, { "action": "damage" }, { "action": "secubots" } ]
}
},
"place_monster": [ { "monster": "mon_copbot", "x": [ 7, 18 ], "y": [ 7, 18 ], "chance": 30, "repeat": 4 } ]
}
}
},
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -541,10 +541,7 @@
"NN Q| "
],
"palettes": [ "lab_common_palette", "lab_maintenance_palette" ],
"place_loot": [
{ "item": "broken_eyebot", "x": 0, "y": 2, "chance": 100 },
{ "item": "broken_secubot", "x": 0, "y": 6, "chance": 100 }
]
"place_loot": [ { "item": "broken_secubot", "x": 0, "y": 6, "chance": 100 } ]
}
},
{
Expand Down
1 change: 0 additions & 1 deletion data/json/monstergroups/lab.json
Original file line number Diff line number Diff line change
Expand Up @@ -265,7 +265,6 @@
{ "monster": "mon_zombie_hazmat", "weight": 20, "pack_size": [ 1, 3 ] },
{ "monster": "mon_feral_human_pipe", "weight": 18, "cost_multiplier": 8, "pack_size": [ 1, 3 ] },
{ "monster": "mon_feral_human_crowbar", "weight": 18, "cost_multiplier": 8, "pack_size": [ 1, 3 ] },
{ "monster": "mon_eyebot", "weight": 5 },
{ "monster": "mon_hazmatbot", "weight": 7, "pack_size": [ 1, 2 ] },
{ "monster": "mon_zombie", "weight": 30, "pack_size": [ 1, 3 ] },
{ "monster": "mon_zombie_fat", "weight": 30 },
Expand Down
1 change: 0 additions & 1 deletion data/json/monstergroups/misc.json
Original file line number Diff line number Diff line change
Expand Up @@ -421,7 +421,6 @@
"monsters": [
{ "monster": "mon_wasp_small" },
{ "monster": "mon_wasp" },
{ "monster": "mon_riotbot" },
{ "monster": "mon_secubot" },
{ "monster": "mon_feral_militia" },
{ "monster": "mon_plague_vector" },
Expand Down
6 changes: 0 additions & 6 deletions data/json/monstergroups/robots.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@
{ "monster": "mon_skitterbot", "weight": 220, "cost_multiplier": 0 },
{ "monster": "mon_secubot", "weight": 150, "cost_multiplier": 0 },
{ "monster": "mon_talon_m202a1", "weight": 75, "cost_multiplier": 0 },
{ "monster": "mon_copbot", "weight": 0, "cost_multiplier": 0 },
{ "monster": "mon_molebot", "weight": 40, "cost_multiplier": 0 }
]
},
Expand All @@ -33,11 +32,6 @@
"type": "monstergroup",
"monsters": [ { "monster": "mon_hazmatbot" } ]
},
{
"type": "monstergroup",
"name": "GROUP_ROBOT_EYEBOT",
"monsters": [ { "monster": "mon_eyebot", "cost_multiplier": 0 } ]
},
{
"type": "monstergroup",
"name": "GROUP_ROBOT_SECUBOT",
Expand Down
Loading

0 comments on commit 73489da

Please sign in to comment.