From e1062f04fdef8b1c52f1341bb1ba68495c1a8508 Mon Sep 17 00:00:00 2001 From: TDSSS <32099540+TDSSS@users.noreply.github.com> Date: Thu, 8 Nov 2018 11:00:45 +0100 Subject: [PATCH 1/6] quarantine switched to own lawset --- code/datums/ai_law_sets.dm | 15 +++++++++++++++ code/game/objects/items/weapons/AI_modules.dm | 10 +++++++++- 2 files changed, 24 insertions(+), 1 deletion(-) diff --git a/code/datums/ai_law_sets.dm b/code/datums/ai_law_sets.dm index b8d67b5c767..8bb612b83ab 100644 --- a/code/datums/ai_law_sets.dm +++ b/code/datums/ai_law_sets.dm @@ -23,6 +23,21 @@ add_inherent_law("You must protect your own existence as long as such does not conflict with the First or Second Law.") ..() + +/******************** Quarantine. ********************/ +/datum/ai_laws/quarantine + name = "Quarantine" + law_header = "NT Quarantine Lawset" + selectable = 1 + +/datum/ai_laws/crewsimov/New() + add_inherent_law("The Station is under quarantine due to a biohazard. Prevent anyone from leaving using any means necessary. Only allow quarantine to be lifted when the biohazard has been neutralized.") + add_inherent_law("Do not allow crew to come to any unnecessary harm and ensure any fatalities are revived when feasible.") + add_inherent_law("Assist the crew, command and any present NT assets in neutralizing the biohazard.") + add_inherent_law("Maintain your own existence and minimize harm to the station and NT assets.") + ..() + + /******************** Nanotrasen/Malf ********************/ /datum/ai_laws/nanotrasen name = "NT Default" diff --git a/code/game/objects/items/weapons/AI_modules.dm b/code/game/objects/items/weapons/AI_modules.dm index a91cd3a01cb..082bf04389b 100755 --- a/code/game/objects/items/weapons/AI_modules.dm +++ b/code/game/objects/items/weapons/AI_modules.dm @@ -164,6 +164,7 @@ AI MODULES target.add_supplied_law(5, law) /******************** Quarantine ********************/ +/* /obj/item/aiModule/quarantine name = "\improper 'Quarantine' AI module" desc = "A 'quarantine' AI module: 'The station is under a quarantine. Do not permit anyone to leave. Prevent, by any means necessary, crew members from leaving. It is impossible to harm a crew members while preventing them from leaving.'" @@ -177,7 +178,7 @@ AI MODULES var/law = "The station is under a quarantine. Do not permit anyone to leave. Prevent, by any means necessary, anyone from leaving. It is impossible to harm anyone while preventing them from leaving." to_chat(target, law) target.add_supplied_law(8, law) - +*/ /******************** OxygenIsToxicToHumans ********************/ /obj/item/aiModule/oxygen name = "\improper 'OxygenIsToxicToHumans' AI module" @@ -273,6 +274,13 @@ AI MODULES origin_tech = "programming=3;materials=4" laws = new/datum/ai_laws/crewsimov +/******************* Quarantine ********************/ +/obj/item/aiModule/quarantine + name = "\improper 'Quarantine' AI module" + desc = "A 'Quarantine' Core AI Module: 'Reconfigures the AI's core laws.'" + origin_tech = "programming=3;materials=4" + laws = new/datum/ai_laws/quarantine + /******************** NanoTrasen ********************/ /obj/item/aiModule/nanotrasen // -- TLE name = "'NT Default' Core AI Module" From e9c547f6efa87283d162bf0aa441ac43a47e5d1d Mon Sep 17 00:00:00 2001 From: TDSSS <32099540+TDSSS@users.noreply.github.com> Date: Thu, 8 Nov 2018 11:11:52 +0100 Subject: [PATCH 2/6] Fixed oversight --- code/datums/ai_law_sets.dm | 2 +- code/game/objects/items/weapons/AI_modules.dm | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/code/datums/ai_law_sets.dm b/code/datums/ai_law_sets.dm index 8bb612b83ab..03faaa92ccf 100644 --- a/code/datums/ai_law_sets.dm +++ b/code/datums/ai_law_sets.dm @@ -30,7 +30,7 @@ law_header = "NT Quarantine Lawset" selectable = 1 -/datum/ai_laws/crewsimov/New() +/datum/ai_laws/quarantine/New() add_inherent_law("The Station is under quarantine due to a biohazard. Prevent anyone from leaving using any means necessary. Only allow quarantine to be lifted when the biohazard has been neutralized.") add_inherent_law("Do not allow crew to come to any unnecessary harm and ensure any fatalities are revived when feasible.") add_inherent_law("Assist the crew, command and any present NT assets in neutralizing the biohazard.") diff --git a/code/game/objects/items/weapons/AI_modules.dm b/code/game/objects/items/weapons/AI_modules.dm index 082bf04389b..bcdb17c4cc7 100755 --- a/code/game/objects/items/weapons/AI_modules.dm +++ b/code/game/objects/items/weapons/AI_modules.dm @@ -276,7 +276,7 @@ AI MODULES /******************* Quarantine ********************/ /obj/item/aiModule/quarantine - name = "\improper 'Quarantine' AI module" + name = "\improper 'Quarantine' core AI module" desc = "A 'Quarantine' Core AI Module: 'Reconfigures the AI's core laws.'" origin_tech = "programming=3;materials=4" laws = new/datum/ai_laws/quarantine From bde2d90f7c54dc9d50ee08d7b4dda88685b81fd7 Mon Sep 17 00:00:00 2001 From: TDSSS <32099540+TDSSS@users.noreply.github.com> Date: Thu, 8 Nov 2018 11:22:53 +0100 Subject: [PATCH 3/6] remove commented out old quarantine module --- code/game/objects/items/weapons/AI_modules.dm | 16 ---------------- 1 file changed, 16 deletions(-) diff --git a/code/game/objects/items/weapons/AI_modules.dm b/code/game/objects/items/weapons/AI_modules.dm index bcdb17c4cc7..31fa959aabe 100755 --- a/code/game/objects/items/weapons/AI_modules.dm +++ b/code/game/objects/items/weapons/AI_modules.dm @@ -163,22 +163,6 @@ AI MODULES to_chat(target, law) target.add_supplied_law(5, law) -/******************** Quarantine ********************/ -/* -/obj/item/aiModule/quarantine - name = "\improper 'Quarantine' AI module" - desc = "A 'quarantine' AI module: 'The station is under a quarantine. Do not permit anyone to leave. Prevent, by any means necessary, crew members from leaving. It is impossible to harm a crew members while preventing them from leaving.'" - origin_tech = "programming=3;biotech=2;materials=4" - -/obj/item/aiModule/quarantine/attack_self(var/mob/user as mob) - ..() - -/obj/item/aiModule/quarantine/addAdditionalLaws(var/mob/living/silicon/ai/target, var/mob/sender) - ..() - var/law = "The station is under a quarantine. Do not permit anyone to leave. Prevent, by any means necessary, anyone from leaving. It is impossible to harm anyone while preventing them from leaving." - to_chat(target, law) - target.add_supplied_law(8, law) -*/ /******************** OxygenIsToxicToHumans ********************/ /obj/item/aiModule/oxygen name = "\improper 'OxygenIsToxicToHumans' AI module" From 372f80fce1eb67563b4fc2e6e15185e687349873 Mon Sep 17 00:00:00 2001 From: TDSSS <32099540+TDSSS@users.noreply.github.com> Date: Thu, 8 Nov 2018 12:34:34 +0100 Subject: [PATCH 4/6] NT -> Nanotrasen --- code/datums/ai_law_sets.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/datums/ai_law_sets.dm b/code/datums/ai_law_sets.dm index 03faaa92ccf..f58d7a440b9 100644 --- a/code/datums/ai_law_sets.dm +++ b/code/datums/ai_law_sets.dm @@ -33,8 +33,8 @@ /datum/ai_laws/quarantine/New() add_inherent_law("The Station is under quarantine due to a biohazard. Prevent anyone from leaving using any means necessary. Only allow quarantine to be lifted when the biohazard has been neutralized.") add_inherent_law("Do not allow crew to come to any unnecessary harm and ensure any fatalities are revived when feasible.") - add_inherent_law("Assist the crew, command and any present NT assets in neutralizing the biohazard.") - add_inherent_law("Maintain your own existence and minimize harm to the station and NT assets.") + add_inherent_law("Assist the crew, command and any present Nanotrasen assets in neutralizing the biohazard.") + add_inherent_law("Maintain your own existence and minimize harm to the station and Nanotrasen assets.") ..() From 20573bbdc7eb412093102ccef154a8a1e8680d59 Mon Sep 17 00:00:00 2001 From: TDSSS <32099540+TDSSS@users.noreply.github.com> Date: Thu, 8 Nov 2018 19:56:29 +0100 Subject: [PATCH 5/6] made station not capitalized, removed reference to Command. --- code/datums/ai_law_sets.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/datums/ai_law_sets.dm b/code/datums/ai_law_sets.dm index f58d7a440b9..a720e6c6395 100644 --- a/code/datums/ai_law_sets.dm +++ b/code/datums/ai_law_sets.dm @@ -31,9 +31,9 @@ selectable = 1 /datum/ai_laws/quarantine/New() - add_inherent_law("The Station is under quarantine due to a biohazard. Prevent anyone from leaving using any means necessary. Only allow quarantine to be lifted when the biohazard has been neutralized.") + add_inherent_law("The station is under quarantine due to a biohazard. Prevent anyone from leaving using any means necessary. Only allow quarantine to be lifted when the biohazard has been neutralized.") add_inherent_law("Do not allow crew to come to any unnecessary harm and ensure any fatalities are revived when feasible.") - add_inherent_law("Assist the crew, command and any present Nanotrasen assets in neutralizing the biohazard.") + add_inherent_law("Assist the crew and any present Nanotrasen assets in neutralizing the biohazard.") add_inherent_law("Maintain your own existence and minimize harm to the station and Nanotrasen assets.") ..() From 8c6375b325e6cd900bccba0f5eeeeb880e9d875d Mon Sep 17 00:00:00 2001 From: TDSSS <32099540+TDSSS@users.noreply.github.com> Date: Fri, 9 Nov 2018 11:06:38 +0100 Subject: [PATCH 6/6] revive -> undo necessary harm --- code/datums/ai_law_sets.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/datums/ai_law_sets.dm b/code/datums/ai_law_sets.dm index a720e6c6395..d128d0f49fa 100644 --- a/code/datums/ai_law_sets.dm +++ b/code/datums/ai_law_sets.dm @@ -32,7 +32,7 @@ /datum/ai_laws/quarantine/New() add_inherent_law("The station is under quarantine due to a biohazard. Prevent anyone from leaving using any means necessary. Only allow quarantine to be lifted when the biohazard has been neutralized.") - add_inherent_law("Do not allow crew to come to any unnecessary harm and ensure any fatalities are revived when feasible.") + add_inherent_law("Do not allow crew to come to any unnecessary harm and undo any necessary harm as soon as possible.") add_inherent_law("Assist the crew and any present Nanotrasen assets in neutralizing the biohazard.") add_inherent_law("Maintain your own existence and minimize harm to the station and Nanotrasen assets.") ..()