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

Overhaul and Flesh Out Barry Isherwood's Rescue Mission #73264

Merged
Merged
Show file tree
Hide file tree
Changes from 32 commits
Commits
Show all changes
41 commits
Select commit Hold shift + click to select a range
c8ed3c9
Add inital content
MNG-cataclysm Apr 25, 2024
90504d2
Add dialogue to spots asking for dialogue
I-am-Erk Apr 25, 2024
1d68c1b
Edit and refine dialogues
MNG-cataclysm Apr 26, 2024
916e8e6
Add the first sub-mission
MNG-cataclysm Apr 26, 2024
238c09c
Add more rescue-specific mission nests
MNG-cataclysm Apr 26, 2024
8013602
Add option to lie about the gear mission
MNG-cataclysm Apr 26, 2024
dd4daca
Add the mission to build fortifications
MNG-cataclysm Apr 26, 2024
447d200
Allow Isherwood family to show up, rescue Barry
MNG-cataclysm Apr 29, 2024
3a0caf0
Add a few more things
MNG-cataclysm Apr 29, 2024
438510f
Add a secondary way to finish the mission without the family
MNG-cataclysm Apr 30, 2024
15bcb07
Add Isherwood retreat EOCs if the player leaves the map
MNG-cataclysm Apr 30, 2024
c33d12e
Refine retreat EOCs, and allow the Isherwoods to retreat if they take…
MNG-cataclysm May 2, 2024
37961bc
Tune the map leave EOC and allow the player to go home with the Isher…
MNG-cataclysm May 2, 2024
3a7d10d
Add some return responses to mission dialogue and bugfix a few things.
MNG-cataclysm May 4, 2024
c70dfde
Add some stuff for Luke's truck bomb mission
MNG-cataclysm May 6, 2024
14e5c48
More Luke truck bomb stuff
MNG-cataclysm May 6, 2024
da868a4
Fixed the damage retreat EOC! Also have the player go with the Isherw…
MNG-cataclysm May 8, 2024
de4565e
Massively increase Isherwood ammo stores for the mission; they'd want…
MNG-cataclysm May 8, 2024
759f3eb
Update isherwood_barry_rescue_eocs.json
MNG-cataclysm May 8, 2024
37eae60
Update isherwood_barry_rescue_eocs.json
MNG-cataclysm May 8, 2024
e0821c3
Update isherwood_barry_rescue_eocs.json
MNG-cataclysm May 8, 2024
9a3e5d6
Update Isherwood_Rescue_NPC_Duplicates.json
MNG-cataclysm May 8, 2024
899a1ac
Update Isherwood_Rescue_NPC_Duplicates.json
MNG-cataclysm May 8, 2024
21ceef3
Update Isherwood_Rescue_NPC_Duplicates.json
MNG-cataclysm May 8, 2024
f92b4c9
Update Isherwood_Rescue_NPC_Duplicates.json
MNG-cataclysm May 8, 2024
aa0e3e7
Update Isherwood_Rescue_NPC_Duplicates.json
MNG-cataclysm May 8, 2024
35a2666
Fix an error
MNG-cataclysm May 9, 2024
e51e814
Stabilize the isherwoods' starting stats
I-am-Erk May 9, 2024
7a429ac
start writing lisa dialogue
I-am-Erk May 11, 2024
ffc3c20
Add a fail state if Barry dies
MNG-cataclysm May 13, 2024
392105f
Update NPC_Lisa_Isherwood.json
I-am-Erk May 14, 2024
468c877
found some more dialogue I missed
I-am-Erk May 14, 2024
9461a46
Chris dialogue
I-am-Erk May 16, 2024
c333255
missed one
I-am-Erk May 16, 2024
ba314e4
Update NPC_Chris_Isherwood.json
I-am-Erk May 16, 2024
68b1a1a
Merge remote-tracking branch 'upstream/master' into pr/73264
I-am-Erk May 16, 2024
ed763c3
Update NPC_Chris_Isherwood.json
MNG-cataclysm May 17, 2024
636f5b4
fix a few json errors
I-am-Erk May 17, 2024
c453cdd
Update data/json/npcs/isherwood_farm/NPC_Chris_Isherwood.json
MNG-cataclysm May 17, 2024
88534d6
Update data/json/npcs/isherwood_farm/NPC_Chris_Isherwood.json
I-am-Erk May 17, 2024
361808a
Bugfixing 1
MNG-cataclysm May 17, 2024
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
Original file line number Diff line number Diff line change
@@ -0,0 +1,383 @@
[
{
"type": "effect_on_condition",
"id": "isherwood_mission_initialization_eoc",
"effect": [
{ "u_location_variable": { "u_val": "mission_return_position" } },
{
"if": { "math": [ "isherwood_family_coming", "==", "1" ] },
"then": [
{ "run_eocs": [ "isherwood_mission_family_included_eoc", "isherwood_mission_set_teleport_position" ] },
{ "math": [ "currently_invading_map", "=", "1" ] }
],
"else": {
"if": { "math": [ "isherwood_family_coming", "!=", "1" ] },
"then": [
{
"u_location_variable": { "global_val": "invasion_map" },
"target_params": { "om_terrain": "barry_mi-go_scout_tower_1", "search_range": 500, "z": 0 }
},
{ "u_teleport": { "global_val": "invasion_map" }, "force": true },
{ "run_eocs": [ "isherwood_mission_chris_spawn_eoc", "isherwood_mission_lisa_spawn_eoc" ] },
{ "u_teleport": { "u_val": "mission_return_position" }, "force": true },
{ "math": [ "is_isherwood_flee_eoc_activated", "=", "0" ] }
]
}
},
{
"if": { "math": [ "isherwood_luke_truck_coming", "==", "1" ] },
"then": {
"mapgen_update": "truck_bomb_spawn",
"om_terrain": "barry_mi-go_scout_tower_1",
"om_special": "Barry's Mi-Go Scout Tower"
}
}
]
},
{
"type": "effect_on_condition",
"id": "isherwood_mission_chris_spawn_eoc",
"effect": [
{
"if": { "math": [ "isherwood_gear_status", "==", "1" ] },
"then": {
"mapgen_update": "nest_Isherwood_chris_swat_add",
"om_terrain": "rural_road",
"om_special": "Barry's Mi-Go Scout Tower"
},
"else": {
"if": { "math": [ "isherwood_gear_status", "!=", "1" ] },
"then": { "mapgen_update": "nest_Isherwood_chris_add", "om_terrain": "rural_road", "om_special": "Barry's Mi-Go Scout Tower" }
}
}
]
},
{
"type": "effect_on_condition",
"id": "isherwood_mission_lisa_spawn_eoc",
"effect": [
{
"if": { "and": [ { "math": [ "isherwood_lisa_coming", "==", "1" ] }, { "math": [ "isherwood_gear_status", "==", "1" ] } ] },
"then": {
"mapgen_update": "nest_Isherwood_lisa_swat_add",
"om_terrain": "rural_road",
"om_special": "Barry's Mi-Go Scout Tower"
},
"else": {
"if": { "and": [ { "math": [ "isherwood_lisa_coming", "==", "1" ] }, { "math": [ "isherwood_gear_status", "!=", "1" ] } ] },
"then": { "mapgen_update": "nest_Isherwood_lisa_add", "om_terrain": "rural_road", "om_special": "Barry's Mi-Go Scout Tower" }
}
}
]
},
{
"type": "effect_on_condition",
"id": "isherwood_mission_family_included_eoc",
"effect": [
{
"u_location_variable": { "global_val": "invasion_map" },
"target_params": { "om_terrain": "barry_mi-go_scout_tower_1", "search_range": 500, "z": 0 }
},
{ "u_teleport": { "global_val": "invasion_map" }, "force": true },
{
"if": { "math": [ "isherwood_gear_status", "<", "1" ] },
"then": [
{
"mapgen_update": "nest_Isherwood_firing_line_add",
"om_terrain": "rural_road",
"om_special": "Barry's Mi-Go Scout Tower"
}
],
"else": {
"if": { "math": [ "isherwood_gear_status", "==", "1" ] },
"then": [
{
"mapgen_update": "nest_Isherwood_firing_line_swat_add",
"om_terrain": "rural_road",
"om_special": "Barry's Mi-Go Scout Tower"
}
]
}
},
{
"if": { "math": [ "isherwood_wall_status", "==", "1" ] },
"then": [
{
"mapgen_update": "nest_Isherwood_firing_wall_add",
"om_terrain": "rural_road",
"om_special": "Barry's Mi-Go Scout Tower"
}
]
},
{ "run_eocs": [ "isherwood_mission_chris_spawn_eoc", "isherwood_mission_lisa_spawn_eoc" ] },
{
"u_location_variable": { "global_val": "invasion_map_proper_place" },
"terrain": "t_dirt_isherwood_player_spawnpoint",
"target_max_radius": 60,
"min_radius": 0,
"max_radius": 0
},
{ "u_teleport": { "global_val": "invasion_map_proper_place" }, "force": true }
]
},
{
"type": "effect_on_condition",
"id": "isherwood_mission_wall_finished",
"effect": [ { "math": [ "isherwood_wall_status", "=", "1" ] } ]
},
{
"type": "effect_on_condition",
"id": "isherwood_mission_lisa_coming",
"effect": [ { "math": [ "isherwood_lisa_coming", "=", "1" ] } ]
},
{
"type": "effect_on_condition",
"id": "isherwood_mission_barry_return_home",
"global": true,
"eoc_type": "EVENT",
"required_event": "avatar_enters_omt",
"condition": {
"and": [
{ "u_has_mission": "MISSION_ISHERWOOD_CHRIS_1" },
{ "u_has_var": "barry_following", "type": "general", "context": "meeting", "value": "yes" },
{ "u_near_om_location": "horse_farm_isherwood_13", "range": 17 }
]
},
"effect": [
{ "finish_mission": "MISSION_ISHERWOOD_CHRIS_1", "success": true },
{
"u_message": "Barry raises a hand to signal you to stop. \"This is it. Thank you so much. I can't believe I'm here, alive. It almost feels like I'm dreaming, like it can't be real.\" He stares at you, his eyes glistening. \"Whoever you are, thank you. I'm going to head the rest of the way now and catch up to my family. Come by and talk to me later when I've had a moment to rest.\"",
"type": "good",
"popup": true
},
{
"u_run_npc_eocs": [
{
"id": "EOC_BARRY_LEAVE",
"effect": [
{
"u_location_variable": { "global_val": "invasion_map" },
"target_params": { "om_terrain": "barry_mi-go_scout_tower_1", "search_range": 500, "z": 0 }
},
{ "u_teleport": { "global_val": "invasion_map" }, "force": true },
{
"mapgen_update": "remove_barry_and_company",
"om_terrain": "barry_mi-go_scout_tower_1",
"om_special": "Barry's Mi-Go Scout Tower"
}
]
}
],
"unique_ids": [ "BARRY_MISSION", "CHRIS_MISSION", "LISA_MISSION" ]
}
]
},
{
"type": "effect_on_condition",
"id": "isherwood_mission_large_damage_retreat",
MNG-cataclysm marked this conversation as resolved.
Show resolved Hide resolved
"recurrence": 1,
"condition": { "math": [ "currently_invading_map", "==", "1" ] },
"effect": [
{
"if": { "math": [ "isherwood_family_coming", "==", "1" ] },
"then": {
"u_run_npc_eocs": [
{
"id": "EOC_ISHERWOODS_TOO_MUCH_DAMAGE_FLEE",
"condition": {
"or": [
{ "math": [ "u_hp('ALL')", "<=", "(u_hp_max('bp_null') * 0.7)" ] },
{ "math": [ "u_effect_intensity('bleed')", ">=", "3" ] }
]
},
"effect": [
{ "u_teleport": { "global_val": "_teleport_pos" }, "force": true },
{
"mapgen_update": "isherwood_rescue_remove_npcs",
"om_terrain": "rural_road",
"om_special": "Barry's Mi-Go Scout Tower"
},
{ "math": [ "currently_invading_map", "=", "0" ] },
{ "queue_eocs": "isherwood_mission_damage_flee_message", "time_in_future": 1 }
]
}
],
"unique_ids": [ "CHRIS_MISSION", "LISA_MISSION", "CARLOS_MISSION", "EDDIE_MISSION", "LUKE_MISSION", "JESSE_MISSION" ]
}
}
]
},
{
"type": "effect_on_condition",
"id": "isherwood_mission_player_leaves_map",
"global": true,
"eoc_type": "EVENT",
"required_event": "avatar_moves",
"condition": {
"and": [
{ "u_has_mission": "MISSION_ISHERWOOD_CHRIS_1" },
{
"and": [
{ "not": { "u_near_om_location": "barry_mi-go_scout_tower_1", "range": 2 } },
{ "not": { "u_near_om_location": "barry_mi-go_scout_tower_2", "range": 2 } },
{ "not": { "u_near_om_location": "barry_mi-go_scout_tower_3", "range": 2 } },
{ "not": { "u_near_om_location": "barry_mi-go_scout_tower_4", "range": 2 } }
]
},
{ "math": [ "currently_invading_map", "==", "1" ] }
]
},
"effect": [
{
"u_message": "Chris sees you leaving the tower, and gives you a harsh look. \"Where are you going? Dammit, we're backing out? Fine. I'll make sure everyone knows.\"",
"type": "bad",
"popup": true
},
{
"u_run_npc_eocs": [
{
"id": "EOC_ISHERWOODS_PLAYER_LEAVE_FLEE",
"effect": [
{ "u_teleport": { "global_val": "_teleport_pos" }, "force": true },
{
"mapgen_update": "isherwood_rescue_remove_npcs",
"om_terrain": "rural_road",
"om_special": "Barry's Mi-Go Scout Tower"
}
]
}
],
"unique_ids": [ "CHRIS_MISSION", "LISA_MISSION", "CARLOS_MISSION", "EDDIE_MISSION", "LUKE_MISSION", "JESSE_MISSION" ]
},
{ "math": [ "currently_invading_map", "=", "0" ] },
{ "math": [ "is_isherwood_flee_eoc_activated", "=", "0" ] },
{
"u_location_variable": { "global_val": "isherwood_mission_sucess_return_map" },
"target_params": { "om_terrain": "horse_farm_isherwood_13", "search_range": 500, "z": 0 },
"furniture": "f_sofa",
"target_max_radius": 30,
"min_radius": 0,
"max_radius": 0
},
{ "u_teleport": { "global_val": "isherwood_mission_sucess_return_map" }, "force": true }
]
},
{
"type": "effect_on_condition",
"id": "isherwood_mission_set_teleport_position",
"effect": [
{
"u_run_npc_eocs": [
{
"id": "isherwood_mission_set_teleport_position_effect",
"effect": { "u_location_variable": { "global_val": "_teleport_pos" }, "unique_id": true }

Check failure on line 273 in data/json/effects_on_condition/npc_eocs/isherwood_barry_rescue_eocs.json

View workflow job for this annotation

GitHub Actions / Basic Build and Test (Clang 10, Ubuntu, Curses)

(~[slow] ~[.],starting_items)=> Invalid or misplaced field name "unique_id" in JSON data { "id": "isherwood_mission_set_teleport_position_effect", "effect": { "u_location_variable": { "global_val": "_teleport_pos" }, "unique_id": true } ▲▲▲ } ],

Check failure on line 273 in data/json/effects_on_condition/npc_eocs/isherwood_barry_rescue_eocs.json

View workflow job for this annotation

GitHub Actions / Basic Build and Test (Clang 10, Ubuntu, Curses)

([slow] ~starting_items)=> Invalid or misplaced field name "unique_id" in JSON data { "id": "isherwood_mission_set_teleport_position_effect", "effect": { "u_location_variable": { "global_val": "_teleport_pos" }, "unique_id": true } ▲▲▲ } ],
}
],
"unique_ids": [ "CHRIS_MISSION", "LISA_MISSION", "CARLOS_MISSION", "EDDIE_MISSION", "LUKE_MISSION", "JESSE_MISSION" ]
}
]
},
{
"type": "effect_on_condition",
"id": "isherwood_mission_remove_all_isherwoods",
"effect": [
{
"u_run_npc_eocs": [
{ "id": "EOC_ISHERWOODS_TELEPORT_ALL", "effect": [ { "u_teleport": { "global_val": "invasion_map" }, "force": true } ] }
],
"unique_ids": [ "CHRIS_MISSION", "LISA_MISSION", "CARLOS_MISSION", "EDDIE_MISSION", "LUKE_MISSION", "JESSE_MISSION" ]
},
{
"if": { "math": [ "isherwood_family_coming", "==", "1" ] },
"then": { "mapgen_update": "isherwood_rescue_remove_npcs", "om_terrain": "rural_road" }
},
{
"mapgen_update": "isherwood_rescue_remove_npcs",
"om_terrain": "barry_mi-go_scout_tower_1",
"om_special": "Barry's Mi-Go Scout Tower"
},
{ "math": [ "currently_invading_map", "=", "0" ] },
{ "math": [ "is_isherwood_flee_eoc_activated", "=", "0" ] }
]
},
{
"type": "effect_on_condition",
"id": "isherwood_mission_damage_flee_message",
"global": true,
"effect": [
{
"u_message": "You hear a horn honk, and one of the Isherwoods calling out from their truck. \"We're swarmed out here! We're going to have to head back and regroup!\" The horn bleats again, and there's a sound of an engine revving, followed by the fleshy 'smack' of something large hitting a windshield.",
"type": "bad",
"popup": true
},
{
"u_location_variable": { "global_val": "isherwood_mission_sucess_return_map" },
"target_params": { "om_terrain": "horse_farm_isherwood_13", "search_range": 500, "z": 0 },
"furniture": "f_sofa",
"target_max_radius": 30,
"min_radius": 0,
"max_radius": 0
},
{ "u_teleport": { "global_val": "isherwood_mission_sucess_return_map" }, "force": true }
]
},
{
"type": "effect_on_condition",
"id": "isherwood_mission_player_leaves_map_setup",
"global": true,
"eoc_type": "EVENT",
"required_event": "avatar_moves",
"condition": {
"and": [
{ "u_has_mission": "MISSION_ISHERWOOD_CHRIS_1" },
{ "math": [ "isherwood_family_coming", "==", "0" ] },
{ "u_near_om_location": "barry_mi-go_scout_tower_1", "range": 2 },
{ "math": [ "is_isherwood_flee_eoc_activated", "==", "0" ] }
]
},
"effect": [ { "math": [ "currently_invading_map", "=", "1" ] }, { "math": [ "is_isherwood_flee_eoc_activated", "=", "1" ] } ]
},
{
"type": "effect_on_condition",
"id": "EOC_LUKE_RETRIEVE_TRUCK_END",
"condition": { "not": { "u_near_om_location": "trailhead_shack_z0", "range": 2 } },
"deactivate_condition": { "math": [ "isherwood_luke_truck_status", ">", "1" ] },
"effect": [
{ "mapgen_update": "LUKE_REMOVE_TRUCK", "om_terrain": "trailhead_shack_z0" },
{ "math": [ "isherwood_luke_truck_status", "++" ] }
],
"false_effect": [ { "queue_eocs": "EOC_LUKE_RETRIEVE_TRUCK_END", "time_in_future": 100 } ]
},
{
"type": "effect_on_condition",
"id": "EOC_BARRY_ISHERWOOD_DIE",
"eoc_type": "NPC_DEATH",
"effect": [ { "queue_eocs": "EOC_BARRY_ISHERWOOD_DIE_TRUE_EFFECT", "time_in_future": 1 } ]
},
{
"type": "effect_on_condition",
"id": "EOC_BARRY_ISHERWOOD_DIE_TRUE_EFFECT",
"global": true,
"effect": [
{ "finish_mission": "MISSION_ISHERWOOD_CHRIS_1", "success": false },
{ "set_string_var": "true", "target_var": { "global_val": "is_barry_dead" } },
{
"if": { "math": [ "isherwood_family_coming", "==", "1" ] },
"then": [
{ "set_string_var": "blames_themselves", "target_var": { "global_val": "isherwood_barry_death_opinion" } },
{ "mapgen_update": "isherwood_rescue_remove_npcs", "om_terrain": "rural_road" },
{
"u_location_variable": { "global_val": "isherwood_mission_sucess_return_map" },
"target_params": { "om_terrain": "horse_farm_isherwood_13", "search_range": 500, "z": 0 },
"furniture": "f_sofa",
"target_max_radius": 30,
"min_radius": 0,
"max_radius": 0
},
{ "u_teleport": { "global_val": "isherwood_mission_sucess_return_map" }, "force": true }
],
"else": { "set_string_var": "blames_you", "target_var": { "global_val": "isherwood_barry_death_opinion" } }
}
]
}
]
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
[
{
"type": "terrain",
"id": "t_dirt_isherwood_player_spawnpoint",
"name": "dirt",
"description": "It's dirt. Looks like some fine soil for tillage. Could also be dug out for construction projects.",
"symbol": ".",
"color": "brown",
"copy-from": "t_dirt"
}
]
Loading
Loading