diff --git a/code/game/gamemodes/clock_cult/clock_cult.dm b/code/game/gamemodes/clock_cult/clock_cult.dm
index 59a353c1258..4a1540d84f0 100644
--- a/code/game/gamemodes/clock_cult/clock_cult.dm
+++ b/code/game/gamemodes/clock_cult/clock_cult.dm
@@ -234,7 +234,7 @@ This file's folder contains:
if("gateway")
clockwork_explanation = "Construct a Gateway to the Celestial Derelict and free Ratvar."
if("silicons")
- clockwork_explanation = "Ensure that all silicon-based lifeforms on [station_name()] are servants of Ratvar by the end of the shift."
+ clockwork_explanation = "Ensure that all active silicon-based lifeforms on [station_name()] are servants of Ratvar by the end of the shift."
return 1
/datum/game_mode/clockwork_cult/proc/greet_servant(mob/M) //Description of their role
@@ -279,27 +279,26 @@ This file's folder contains:
for(var/datum/mind/M in servants_of_ratvar)
if(M.current && M.current.stat != DEAD && (M.current.onCentcom() || M.current.onSyndieBase()))
surviving_servants++
- clockwork_explanation = "Ensure that [required_escapees] servant(s) of Ratvar escape from [station_name()]. [surviving_servants] managed to escape!"
+ clockwork_explanation = "Ensure that [required_escapees] servant(s) of Ratvar escape from [station_name()]. [surviving_servants] managed to escape!"
if(surviving_servants >= required_escapees)
return TRUE
return FALSE
if("silicons")
var/total_silicons = 0
- var/converted_silicons = 0
+ var/valid_silicons = 0
var/successful = TRUE
- for(var/mob/living/silicon/robot/S in living_mob_list) //Only check robots and AIs
+ for(var/mob/living/silicon/robot/S in mob_list) //Only check robots and AIs
total_silicons++
- if(!is_servant_of_ratvar(S))
- successful = FALSE
- else
- converted_silicons++
- for(var/mob/living/silicon/ai/A in living_mob_list)
+ if(is_servant_of_ratvar(S) || S.stat == DEAD)
+ valid_silicons++
+ for(var/mob/living/silicon/ai/A in mob_list)
total_silicons++
- if(!is_servant_of_ratvar(A))
- successful = FALSE
- else
- converted_silicons++
- clockwork_explanation = "Ensure that all silicon-based lifeforms on [station_name()] are servants of Ratvar by the end of the shift. [converted_silicons]/[total_silicons] silicons were converted!"
+ if(is_servant_of_ratvar(A) || A.stat == DEAD)
+ valid_silicons++
+ if(valid_silicons < total_silicons)
+ successful = FALSE
+ clockwork_explanation = "Ensure that all active silicon-based lifeforms on [station_name()] are servants of Ratvar by the end of the shift. \
+ [valid_silicons]/[total_silicons] silicons were killed or converted!"
return successful
if("gateway")
return ratvar_awakens
@@ -323,12 +322,12 @@ This file's folder contains:
if(G)
half_victory = TRUE
if(half_victory)
- text += "The crew escaped before Ratvar could rise, but the station was taken over!"
+ text += "The crew escaped before Ratvar could rise, but the gateway was successfully constructed!"
feedback_set_details("round_end_result", "halfwin - round ended before the gateway finished")
else
text += "Ratvar's servants have failed!"
feedback_set_details("round_end_result", "loss - servants failed their objective ([clockwork_objective])")
- text += "
The servants' objective was: [clockwork_explanation]
"
+ text += "
The servants' objective was:
[clockwork_explanation]
"
if(servants_of_ratvar.len)
text += "Ratvar's servants were:"
for(var/datum/mind/M in servants_of_ratvar)