diff --git a/nsv13/code/controllers/subsystem/overmap_mode.dm b/nsv13/code/controllers/subsystem/overmap_mode.dm
index a634ee5957e..4f75f2e744f 100644
--- a/nsv13/code/controllers/subsystem/overmap_mode.dm
+++ b/nsv13/code/controllers/subsystem/overmap_mode.dm
@@ -273,14 +273,18 @@ SUBSYSTEM_DEF(overmap_mode)
*/
var/text = "[GLOB.station_name],
You have been assigned the following mission by [capitalize(mode.starting_faction)] and are expected to complete it with all due haste. Please ensure your crew is properly informed of your objectives and delegate tasks accordingly."
- var/title = "Mission Briefing: [random_capital_letter()][random_capital_letter()][random_capital_letter()]-[GLOB.round_id]"
+ var/static/title = ""
+ if(!announced_objectives)
+ title += "Mission Briefing: [random_capital_letter()][random_capital_letter()][random_capital_letter()]-[GLOB.round_id]"
+ else //Add an extension if this isn't roundstart
+ title += "-Ext."
text = "[text]
[mode.brief]
Objectives:"
for(var/datum/overmap_objective/O in mode.objectives)
text = "[text]
- [O.brief]"
- if ( !SSovermap_mode.announced_objectives ) // Prevents duplicate report spam when assigning additional objectives
+ if(!SSovermap_mode.announced_objectives) // Prevents duplicate report spam when assigning additional objectives
O.print_objective_report()
print_command_report(text, title, TRUE)
@@ -325,10 +329,18 @@ SUBSYSTEM_DEF(overmap_mode)
mode.objectives += new /datum/overmap_objective/tickets
*/
- if(get_active_player_count(TRUE,TRUE,FALSE) > 4)
- mode.objectives += new /datum/overmap_objective/clear_system/rubicon
+ var/datum/star_system/rubicon = SSstar_system.system_by_id("Rubicon")
+ if(get_active_player_count(TRUE,TRUE,FALSE) > 10)
+ if(length(rubicon.enemies_in_system))
+ mode.objectives += new /datum/overmap_objective/clear_system/rubicon
+ else //If Rubicon is empty we go to Dolos
+ mode.objectives += new /datum/overmap_objective/clear_system/dolos
else
mode.objectives += new /datum/overmap_objective/tickets
+ for(var/datum/faction/F in SSstar_system.factions)
+ F.send_fleet(custom_difficulty = (mode.difficulty + 1)) //Extension is more challenging
+ escalation += 1
+ message_admins("Overmap difficulty has been increased by 1!")
instance_objectives()
diff --git a/nsv13/code/game/gamemodes/overmap/objectives/rubicon.dm b/nsv13/code/game/gamemodes/overmap/objectives/rubicon.dm
index 09061c2c5d4..621e1067838 100644
--- a/nsv13/code/game/gamemodes/overmap/objectives/rubicon.dm
+++ b/nsv13/code/game/gamemodes/overmap/objectives/rubicon.dm
@@ -26,6 +26,7 @@
desc = "Defeat all enemies in the [system_name] system"
brief = desc
target_system = SSstar_system.system_by_id(system_name)
+ target_system.hidden = FALSE
RegisterSignal(SSstar_system.find_main_overmap(), COMSIG_SHIP_KILLED_FLEET, PROC_REF(check_completion))
/datum/overmap_objective/clear_system/check_completion()
@@ -38,8 +39,9 @@
/datum/overmap_objective/clear_system/rubicon
system_name = "Rubicon"
extension_supported = TRUE
- required_players = 4
+ required_players = 10
/datum/overmap_objective/clear_system/dolos
system_name = "Dolos Remnants"
- required_players = 4
+ extension_supported = TRUE //Only if Rubicon is not available
+ required_players = 10
diff --git a/nsv13/code/modules/overmap/factions.dm b/nsv13/code/modules/overmap/factions.dm
index e7ea53482de..c01aef381d2 100644
--- a/nsv13/code/modules/overmap/factions.dm
+++ b/nsv13/code/modules/overmap/factions.dm
@@ -74,7 +74,7 @@ Set up relationships.
if(main_ship)
current_system = SSstar_system.ships[main_ship]["current_system"]
var/list/possible_spawns = list()
- for(var/datum/star_system/starsys in SSstar_system.systems)
+ for(var/datum/star_system/starsys in SSstar_system.neutral_zone_systems) //Neutral zone to prevent overcrowding the Syndicate and friendly sectors
if(starsys != current_system && !starsys.hidden && (lowertext(starsys.alignment) == lowertext(src.name) || starsys.alignment == "unaligned" || starsys.alignment == "uncharted")) //Find one of our base systems and try to send a fleet out from there.
possible_spawns += starsys
if(!possible_spawns.len && !override)