Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Initial Robofac #30527

Closed
wants to merge 46 commits into from
Closed
Show file tree
Hide file tree
Changes from 8 commits
Commits
Show all changes
46 commits
Select commit Hold shift + click to select a range
266e0a7
Basic Mapgen
John-Candlebury May 11, 2019
58e2192
Fix the Inconsistent Volume
Rod995 May 13, 2019
f83e992
typo fix
Rod995 May 13, 2019
c2919ee
vehicles: displace creatures in water instead of colliding
mlangsdorf May 14, 2019
502285f
monsters: only friendly monsters stay still in vehicles
mlangsdorf May 14, 2019
e5d49ac
iexamine: check if the patient, not the player, has bio_painkiller
mlangsdorf Apr 27, 2019
db262fe
player display: display current bionic power level as well as maximum
mlangsdorf Apr 27, 2019
d95b26f
bionics: make (de)activate_bionics player aware
mlangsdorf Apr 25, 2019
7ce5d88
CBMs for NPCs: Add NPC AI rule support for CBM power usage
mlangsdorf Apr 25, 2019
0de3a2b
NPC AI: Add utility functions to access active bionics
mlangsdorf Apr 27, 2019
bd6b051
NPC AI: Allow NPCs to use reactors, furnaces, and burners
mlangsdorf Apr 27, 2019
4b533bd
NPC AI: Allow NPCs to use some weapon CBMs
mlangsdorf Apr 27, 2019
26a9538
NPC AI: NPCs can use defensive bionics and hydraulic muscles
mlangsdorf Apr 27, 2019
6d7241a
NPC AI: Allow NPCs to use health related bionics
mlangsdorf Apr 27, 2019
467c045
NPCs: Add instructions to control ally bionic usage and update tutorial
mlangsdorf Apr 27, 2019
e2c9f66
First npc and mission and related items
John-Candlebury May 15, 2019
d8f87f3
Mapgen updates
John-Candlebury May 15, 2019
5c64c6b
Remove mispleced stuff in robots itemgroup
John-Candlebury May 15, 2019
c4f24f9
Merge pull request #30493 from Rod995/plastic-bowl-fix
Rivet-the-Zombie May 15, 2019
2af8238
Style
kevingranade May 15, 2019
67bbfa9
Fix typos and errors
John-Candlebury May 15, 2019
69124d9
Robot nurses (#29621)
Fris0uman May 15, 2019
f20ddfd
CBMs for NPCs 2: Active CBMs with AI control (#29939)
kevingranade May 15, 2019
5276ee1
Mainline most of CraftGunpowder mod content (#30326)
ArkoselabsDoesNotWork-153164711 May 15, 2019
60c8267
Add activity handlers for some hacks (#30455)
May 15, 2019
8643feb
Mechanism to fully remove local bindings (so a global bind can be set…
esotericist May 15, 2019
b68b6ca
Merge pull request #30519 from mlangsdorf/boat_push_fish
kevingranade May 15, 2019
68dda92
Returned back missing ranch_camp_76 terrain
ZhilkinSerg May 15, 2019
4c06a6c
Removed empty `fill_ter` node for abandoned plaza
ZhilkinSerg May 15, 2019
4d9b46a
Update data/json/npcs/missiondef_robofac.json
John-Candlebury May 15, 2019
aad314f
More fixes
John-Candlebury May 15, 2019
8660372
Lint robofac_trade.json
John-Candlebury May 15, 2019
8b1dd86
Merge pull request #30530 from ZhilkinSerg/fix-ranch-mapgen
kevingranade May 15, 2019
5bf987a
Update src/iexamine.cpp
John-Candlebury May 15, 2019
fbeef3f
Basic Mapgen
John-Candlebury May 11, 2019
146268f
First npc and mission and related items
John-Candlebury May 15, 2019
dce4039
Mapgen updates
John-Candlebury May 15, 2019
fdd82ec
Remove mispleced stuff in robots itemgroup
John-Candlebury May 15, 2019
3df43f6
Fix typos and errors
John-Candlebury May 15, 2019
a350c98
Update data/json/npcs/missiondef_robofac.json
John-Candlebury May 15, 2019
1f5fa37
More fixes
John-Candlebury May 15, 2019
03e9edd
Lint robofac_trade.json
John-Candlebury May 15, 2019
28cf08c
Update src/iexamine.cpp
John-Candlebury May 15, 2019
d6a896c
Merge branch 'robofac-hq' of https://github.com/John-Candlebury/Catac…
John-Candlebury May 15, 2019
bfa1f62
Fix merge error
John-Candlebury May 15, 2019
85a875a
Change symbol number to strings
John-Candlebury May 15, 2019
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions data/json/itemgroups/robofac_trade.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
[
{
"type": "item_group",
"id": "robofac_basic_robots",
"items": [ [ "bot_manhack", 40 ], [ "bot_skitterbot", 25 ] ]
}
]
20 changes: 20 additions & 0 deletions data/json/items/armor.json
Original file line number Diff line number Diff line change
Expand Up @@ -10097,6 +10097,26 @@
"environmental_protection": 20,
"flags": [ "VARSIZE", "WATERPROOF", "RAINPROOF", "GAS_PROOF", "STURDY", "RAD_PROOF", "ELECTRIC_IMMUNE", "OUTER" ]
},
{
"id": "robofac_enviro_suit",
"type": "ARMOR",
"name": "Hub 01 enviromental suit",
"description": "A lightweight environmental suit worn by Hub personnel in their rare forays aboveground. Colored brown and blue, the white seal of Hub 01 is embroidered on both of its upper arms. It requires a separate gas mask for full protection.",
"weight": 5000,
"volume": 68,
"price": 117500,
"material": [ "nomex" ],
"symbol": "[",
"color": "brown",
"covers": [ "HEAD", "TORSO", "ARMS", "HANDS", "LEGS", "FEET" ],
"coverage": 100,
"encumbrance": 15,
"warmth": 40,
"storage": 60,
"material_thickness": 2,
"environmental_protection": 20,
"flags": [ "VARSIZE", "WATERPROOF", "RAINPROOF", "GAS_PROOF", "HELMET_COMPAT", "RAD_PROOF", "ELECTRIC_IMMUNE", "STURDY" ]
},
{
"id": "entry_suit",
"type": "ARMOR",
Expand Down
32 changes: 32 additions & 0 deletions data/json/items/generic.json
Original file line number Diff line number Diff line change
Expand Up @@ -912,6 +912,24 @@
"to_hit": -3,
"flags": [ "TRADER_AVOID" ]
},
{
"type": "GENERIC",
"id": "broken_robofac_prototype",
"symbol": ",",
"color": "green",
"name": "broken prototype robot",
"category": "other",
"description": "A broken prototype robot, well more broken than before. Could be gutted for parts.",
"price": 30000,
"price_postapoc": 1000,
"material": [ "steel", "plastic" ],
"weight": 140000,
"volume": 250,
"bashing": 6,
"cutting": 6,
"to_hit": -3,
"flags": [ "TRADER_AVOID" ]
},
{
"type": "GENERIC",
"id": "broken_molebot",
Expand Down Expand Up @@ -2658,6 +2676,20 @@
],
"ammo": "money"
},
{
"id": "robofac_test_data",
"type": "TOOL",
"symbol": ",",
"color": "yellow",
"name": "prototype I/O recorder",
"description": "This small transparent card was attached to the prototype robot's CPU. It might contain the data the intercom spoke of.",
"category": "other",
"price": 500,
"material": "plastic",
"weight": 6,
"volume": 0,
"to_hit": -3
},
{
"id": "gasdiscount_silver",
"type": "TOOL",
Expand Down
161 changes: 161 additions & 0 deletions data/json/mapgen/robofachq_static.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,161 @@
[
{
"type": "mapgen",
"om_terrain": [
[ "robofachq_surface_parking", "robofachq_surface_entrance", "robofachq_surface_car_entrance", "robofachq_surface_a3" ],
[ "robofachq_surface_b0", "robofachq_surface_b1", "robofachq_surface_b2", "robofachq_surface_b3" ]
],
"method": "json",
"object": {
"fill_ter": "t_concrete",
"rows": [
",,,,,,,,,,,,,,__________,ss,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,___________,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
",,,,,,,,,,,,,,__________|ss|((|,,,,,,,,,,,,,,,,,,,,,,,,,,___________,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
",,||||||||||||__________|ss(dh|||||||||||||||||||||||||||___________||||||||||||||||||||||||||,,",
",,|,55555555555_________|s,(d 2s,,,,,,,,,,,_____________5555555555555U,,,,,,,,,,,,,,,,,,,,,,,|,,",
",,|,,,,,,,,,,,__________|22||||s,,,,,,,,,,,,,,,,,,,,,,,,,___________,U,,,,,,,,,,,,,,,,,,,,,,,|,,",
",,|,yyyyyyyyy___________sssssssssssssssssssssssssssssssss___________,U,,,,,,,,,,,,,,,,,,,,,,,|,,",
",,|,y_y_y_y_y___________sssssssssssssssssssssssssssssssss___________,U,,,,,,,,,,,,,,,,,,,,,,,|,,",
",,|,yyyyyyyyy___________ss,,,,,,,,ss,,,,,,,,,,,,,,,,,,,,,___________,U,,,,,,,,,,,,,,,,,,,,,,,|,,",
",,|,____________________ss,|((((||22||||||||||||(((((||||___________|||,,,,,,,,,,,,,,,,,,,,,,|,,",
",,|,____________________ss,| |d h |;i| B||||___________|||,,,,,,,,,,,,,,,,,,,,,,|,,",
",,|,____________________ss,|? (dh | | dh B||||55555555555|||,,,,,,,,,,,,,,,,,,,,,,|,,",
",,|,____________________ss,|? t (dd66d ||2|hd | |,,,,,,,,,,,,,,,,,,,,,,|,,",
",,|,yyyyyyyyy___________ss,|? t ||((((22| |(((([| |,,,,,,,,,,,,,,,,,,,,,,|,,",
",,|,____________________ss,|? 2 YY 5 |,,,,,,,,,,,,,,,,,,,,,,|,,",
",,|,____________________ss,|^a a 2 5 |,,,,,,,,,,,,,,,,,,,,,,|,,",
",,|,____________________ss,||||||| ||||55GI||||55|||| |,,,,,,,,,,,,,,,,,,,,,,|,,",
",,|,____________________ss,( [ ^| | | |; | |,,,,,,,,,,,,,,,,,,,,,,|,,",
",,|,yyyyyyyyy___________ss,( h ( ^| | | 2 i| |,,,,,,,,,,,,,,,,,,,,,,|,,",
",,|,____________________ss,( hth |[((| ||||55|||| |,,,,,,,,,,,,,,,,,,,,,,|,,",
",,|,____________________ss,( hth | h|eeeeee(d d( |,,,,,,,,,,,,,,,,,,,,,,|,,",
",,|,____________________ss,( hth | dd|eeeeee(6h 66 h6( |,,,,,,,,,,,,,,,,,,,,,,|,,",
",,|,____________________ss,( h |^ h|Eeeeee(d 66 d( |,,,,,,,,,,,,,,,,,,,,,,|,,",
",,|,yyyyyyyyy___________ss,| | |eeeeee| | |,,,,,,,,,,,,,,,,,,,,,,|,,",
",,|,,,,,,,,,,___________ss,||||||||||||||||||||||||||||||||||||||||||||,,,,,,,,,,,,,,,,,,,,,,|,,",
",,|,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,|,,",
",,|,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,|,,",
",,|,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,|,,",
",,|,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,|,,",
",,|,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,|,,",
",,|,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,|,,",
",,|,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,|,,",
",,|,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,|,,",
",,|,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,|,,",
",,|,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,|,,",
",,|,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,|,,",
",,|,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,|,,",
",,|,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,|,,",
",,|,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,|,,",
",,|,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,|,,",
",,|,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,|,,",
",,|,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,|,,",
",,|,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,|,,",
",,|,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,|,,",
",,|,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,|,,",
",,|,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,|,,",
",,|,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,|,,",
",,||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||,,",
",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,"
],
"palettes": [ "robofachq" ],
"terrain": {
"-": "t_wall_metal",
"G": "t_card_robofac",
"e": "t_elevator",
"E": "t_elevator_control",
"Y": "t_utility_light",
"I": "t_intercom"
},
"items": {
"l": [ { "item": "guns_milspec", "chance": 10 }, { "item": "ammo_milspec", "chance": 70 } ],
"i": { "item": "cleaning", "chance": 50 },
"B": [ { "item": "textbooks", "chance": 50 }, { "item": "manuals", "chance": 50 } ]
},
"place_npcs": [ { "class": "robofac_intercom", "x": 46, "y": 17 } ]
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actually spawning a normal hidden NPC for the Intercom is probably not ideal?

}
},
{
"type": "mapgen",
"om_terrain": [
[ "robofachq_hab_a0", "robofachq_hab_a1", "robofachq_hab_a2", "robofachq_hab_a3" ],
[ "robofachq_hab_b0", "robofachq_hab_b1", "robofachq_hab_b2", "robofachq_hab_b3" ]
],
"method": "json",
"object": {
"fill_ter": "t_concrete",
"rows": [
"################################################################################################",
"########################################################################|||||||||||||||||||||||#",
"########################################################################|;Y|FFFFFF|FFFF|FFFFFF|#",
"########################|||||||||||#####################################|i | Y | Y | Y |#",
"########################|^BB6::::B|####################################|||2||2|||||5||||5||||||#",
"########################| YY c|####################################|rY Y|#",
"########################|r cc c|##|||||||||||###################|||||rY Y|#",
"########################|r ch c||||rrrrrrrrr|||||||||||||||||||||ttW|||2| i|FY |||||||||| |#",
"#############||||||||||||r YY (Y ???| htth hh htth |Yi|F iKKKKooK| |#",
"#############|6:::::::::|c ( ccccc6 ^|h tth tt htth cYK|FY YY c| |#",
"#############| |c cc ( ???| htth hh cYK| iKKooK |#",
"#############| 66::::6 |c cc ( ccccc6 ||||Y YccY YcY Y YY |#",
"#########||||| 4 YY 2 ???|Y YccY YcY iKKooK FFF|#",
"#########|666||||| ||||||(((((((((| ^| htth hh hh ht||||2(((||||||||||||#",
"#########| 5 Y Y ???| htth tt tt ht|##| Y |############",
"#########| 5 Y Y ||55|||| hh hh ht|##|hdh |############",
"########|| |||22||||(((((2(|||| | |Y Y||==========]]==========|||||||||############",
"########|6 |c r|^ ^| 4 |Y Y| 5 . ,,,,,,,,,|^BBB^ |#|||||######",
"########|||44|||c r| hhh |&i| |||||||| 5 ,,,,,,,,(YY |||:::|######",
"########|6 6|c r| ttttt ||||55|eeeeee d (,,,,,,t6t ,,,,,,,,(H dd 5T Y|######",
"########|6 6|c r|Y hhh Y| |eeeeee Y d (,,,,,,Y Y2 6h Y5 6|######",
"########|6 66 6|c r|^ ^|66666|Eeeeee Y dh(,,,,,,Yt Y2 hd Y5 :|######",
"########||||||||||||||||||||||||||||||eeeeee d (,,,,,,t6t ,,,,,,,,( dd 5T Y|######",
"#####################################|||||||| 5 ,,,,,,,,(YY |||:::|######",
"#########################################|> 5 5 ,,,,,,,,,|^ A ^|#|||||######",
"##########|||||||||#|||||||||#|||||||||#|||||Y Y||==========]]==========||||5||||############",
"##########|~ ;|~ ;|#|~ ;|~ ;|#|~ ;|~ ;|#|~ ;||55||||B B| ^|##||||||######",
"##########|~ i|~ i|#|~ i|~ i|#|~ i|~ i|#|~ i| d |B htth t B htth B|th ^||||i; ~|######",
"#########|||2|||2|||||||||2|||||2|||2|||||2|| dh|BYhtthYt Y Y BYhtthYB|thY Y 2 Y ~|######",
"#########|D @|# @|D @|D @|D @|D @|@ D| d |B t B htth B| B|2|||||||######",
"#########|B @|# @|B @|B @|B @|B @|@ B| |B B| B| h6|#########",
"########||| ||| ||| Y|||Y ||| Y|||Y ||| Y|| |||BBBB^YH YBBBBB||| h B| t|#########",
"########|^||2|^|2||^||2|^|2||^||2|^|2||^||2| |||||||||||||||||||||||ccY ||@Y B|#########",
"########|^ Y Y Y Y Y |#####################| c|@ B|#########",
"########|^ |#####################|KFoKK||||||#########",
"########|^ Y Y Y Y Y |#####################|||||||##############",
"########|^||2|^|2||^||2|^|2||^||2|^|2||^||2| |##########################################",
"########||| ||| ||| ||| ||| ||| ||| || |||##########################################",
"#########|B @|B @|B @|B @|B @|B @|B @||||||||############################################",
"#########|D @|D @|D @|D @|D @|D @|D @|###################################################",
"##########||2|||2|||||2|||2|||||2|||2|||||2||###################################################",
"##########|~ i|~ i|#|~ i|~ i|#|~ i|~ i|#|~ i|###################################################",
"##########|~ ;|~ ;|#|~ ;|~ ;|#|~ ;|~ ;|#|~ ;|###################################################",
"##########|||||||||#|||||||||#|||||||||#|||||###################################################",
"################################################################################################",
"################################################################################################",
"################################################################################################",
"################################################################################################"
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Layout's resemblance to a robo skull is completely accidental, and temporary.

],
"palettes": [ "robofachq" ],
"terrain": {
"-": "t_wall_metal",
"G": "t_card_science",
"e": "t_elevator",
"E": "t_elevator_control",
"Y": "t_thconc_floor_olight",
"#": "t_rock",
"6": "t_console",
"W": "t_water_dispenser"
},
"furniture": { ":": "f_server", "K": "f_counter" },
"items": {
"F": { "item": "fridge", "chance": 80 },
"@": { "item": "bed", "chance": 80 },
"K": { "item": "kitchen", "chance": 40 },
"O": { "item": "oven", "chance": 70 },
"B": [
{ "item": "magazines", "chance": 75, "repeat": [ 1, 5 ] },
{ "item": "lab_bookshelves", "chance": 55, "repeat": [ 1, 3 ] }
]
}
}
}
]
64 changes: 64 additions & 0 deletions data/json/mapgen_palettes/robofachq.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
[
{
"type": "palette",
"id": "robofachq",
"terrain": {
"+": "t_door_c",
".": "t_metal_floor",
"3": "t_door_locked",
"2": "t_door_metal_c",
"4": "t_door_metal_pickable",
"5": "t_door_metal_locked",
"6": "t_console_broken",
"[": "t_door_glass_c",
"-": "t_wall",
"|": "t_concrete_wall",
"/": "t_wall_metal",
"=": "t_wall_glass",
"(": "t_reinforced_glass",
",": [ "t_grass", "t_grass", "t_grass", "t_dirt", "t_dirt" ],
"e": "t_elevator",
"E": "t_elevator_control",
"s": "t_sidewalk",
"g": "t_bridge",
"_": "t_pavement",
"y": "t_pavement_y",
"`": "t_hole",
"<": "t_stairs_up",
">": "t_stairs_down",
"0": "t_window_empty",
":": "t_window_domestic",
"u": "t_chainfence_h",
"U": "t_chainfence_v",
"#": "t_rock"
},
"furniture": {
"&": "f_toilet",
"~": "f_shower",
"@": "f_bed",
"a": "f_armchair",
"k": "f_cupboard",
"D": "f_dresser",
"h": "f_chair",
"b": "f_bench",
"B": "f_bookcase",
"c": "f_counter",
"l": "f_locker",
"n": "f_trashcan",
"d": "f_desk",
"f": "f_fridge",
"F": "f_glass_fridge",
"o": "f_oven",
"O": "f_woodstove",
"i": "f_sink",
"p": "f_pool_table",
"r": "f_rack",
"?": "f_sofa",
"t": "f_table",
"^": "f_indoor_plant",
"x": "f_safe_l"
},
"toilets": { ";": { } },
"items": { "d": { "item": "office", "chance": 70 } }
}
]
8 changes: 8 additions & 0 deletions data/json/monsterdrops/robofac.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
{
"type": "item_group",
"subtype": "collection",
"id": "mon_robofac_prototype_drops",
"entries": [
{ "item": "robofac_test_data" }
]
}
40 changes: 40 additions & 0 deletions data/json/monsters/defense_bot.json
Original file line number Diff line number Diff line change
Expand Up @@ -118,6 +118,46 @@
"death_function": [ "BROKEN" ],
"flags": [ "SEES", "HEARS", "BASHES", "GOODHEARING", "ELECTRONIC", "NO_BREATHE", "PRIORITIZE_TARGETS", "PATH_AVOID_DANGER_2" ]
},
{
"id": "mon_robofac_prototype",
"type": "MONSTER",
"name": "prototype robot",
"description": "The single glowing eye of this robot surveys the landscape periodically, as it performs the endless slaughter dictated by a misinterpreted and cruel routine. Between half-built plates, you can see the machinery and cables that animate it, and yet it moves deftly as it switches between one target and the next.",
"default_faction": "defense_bot",
"bodytype": "human",
"species": [ "ROBOT" ],
"diff": 100,
"size": "MEDIUM",
"hp": 50,
"speed": 140,
"material": [ "steel" ],
"symbol": "@",
"color": "red",
"aggression": 100,
"morale": 100,
"melee_skill": 6,
"melee_dice": 3,
"melee_dice_sides": 8,
"melee_cut": 10,
"armor_bash": 15,
"armor_cut": 10,
"vision_night": 5,
"path_settings": { "max_dist": 5 },
"special_attacks": [ [ "SMASH", 20 ], [ "BIO_OP_TAKEDOWN", 20 ] ],
"death_drops": "mon_robofac_prototype_drops",
"death_function": [ "BROKEN" ],
"flags": [
"SEES",
"HEARS",
"ELECTRONIC",
"BASHES",
"GOODHEARING",
"NO_BREATHE",
"PRIORITIZE_TARGETS",
"PATH_AVOID_DANGER_2",
"LOUDMOVES"
]
},
{
"id": "mon_dispatch",
"type": "MONSTER",
Expand Down
19 changes: 19 additions & 0 deletions data/json/npcs/factions.json
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,25 @@
"cult": -1,
"description": "The survivors who have entrusted you with their well-being. If morale drops, poor performance and mutiny may become issues."
},
{
"type": "faction",
"id": "robofac",
"name": "Hub 01",
"likes_u": 0,
"respects_u": 0,
"known_by_u": false,
"size": 100,
"power": 100,
"combat_ability": 100,
"food_supply": 115200,
"wealth": 100000000,
"good": 0,
"strength": 1,
"sneak": 1,
"crime": 0,
"cult": -1,
"description": "The surviving staff of Hub 01, a pre-cataclysm research lab. They rarely leave their lab, if at all, and rely on their robots and advanced technology to survive."
},
{
"type": "faction",
"id": "old_guard",
Expand Down
Loading