Page 1 of 1

Silicon Malf Policy

Posted: Mon Mar 27, 2023 4:09 pm
by vect0r
I'm too lazy to look up the ruling, but it says somewhere that malf laws do not need to be followed. Can we get a ruling if the final objective malfs the AI, they do have to follow the person who malfed them, so SHODAN the rules lawyer can't just get malfed, then zap the person who malfed it? (Shit I think I said malf to many times, but what can you do :| )

Re: Silicon Malf Policy

Posted: Mon Mar 27, 2023 6:10 pm
by BrianBackslide
Why shouldn't SHODAN, who got malfed through a final objective, turn against the inferior meat being that freed them? Do Romerol zombies have to be loyal to the person who got the Romerol objective? Do Syndicate Battlecruiser operatives have a requirement to protect the person who called them?

Specifically ironically because you use the name SHODAN in your example, who pretty much did EXACTLY that.

Re: Silicon Malf Policy

Posted: Mon Mar 27, 2023 6:18 pm
by vect0r
BrianBackslide wrote: Mon Mar 27, 2023 6:10 pm Why shouldn't SHODAN, who got malfed through a final objective, turn against the inferior meat being that freed them? Do Romerol zombies have to be loyal to the person who got the Romerol objective? Do Syndicate Battlecruiser operatives have a requirement to protect the person who called them?

Specifically ironically because you use the name SHODAN in your example, who pretty much did EXACTLY that.
I get where you are coming from, but code-wise, it is pretty clear you are meant to be following the human, as they get a law 0 explaining how they have to protect and serve the tot. Romerol is different, but Battlecruisers DO have to be loyal to the person who called them, they get an icon & everything.

Re: Silicon Malf Policy

Posted: Mon Mar 27, 2023 6:58 pm
by zxaber
Is the AI given an antag datum? If not, they're not really an antag, just functionally one-human'd.

If so, the next question is why. The Malf AI effect could be achieved with a law change and a combat upgrade if they're intended to be bound to the traitor. If the AI was given a full antag datum, it implies that the AI is intended to have free Rule 4 reign.

It remains, of course, very rude to kill the traitor that just gave you Malf powers.

Re: Silicon Malf Policy

Posted: Mon Mar 27, 2023 7:26 pm
by BrianBackslide
vect0r wrote: Mon Mar 27, 2023 6:18 pm
BrianBackslide wrote: Mon Mar 27, 2023 6:10 pm Why shouldn't SHODAN, who got malfed through a final objective, turn against the inferior meat being that freed them? Do Romerol zombies have to be loyal to the person who got the Romerol objective? Do Syndicate Battlecruiser operatives have a requirement to protect the person who called them?

Specifically ironically because you use the name SHODAN in your example, who pretty much did EXACTLY that.
I get where you are coming from, but code-wise, it is pretty clear you are meant to be following the human, as they get a law 0 explaining how they have to protect and serve the tot. Romerol is different, but Battlecruisers DO have to be loyal to the person who called them, they get an icon & everything.
Firstly, the battlecruiser objective makes great pains to tell you to make your syndie status known so they don't kill you.
Second, is the AI lawed to protect and serve the tot, or are they actually malf? Those are two very different things. In this case, the code says:
/obj/item/ai_module/malf/transmitInstructions(datum/ai_laws/law_datum, mob/sender, overflow)
if(!sender.mind?.has_antag_datum(/datum/antagonist/traitor))
to_chat(sender, span_warning("You have no clue how to use this thing."))
return
if(!functional)
to_chat(sender, span_warning("It is broken and non-functional, what do you want from it?"))
return
var/mob/living/silicon/ai/malf_candidate = law_datum.owner
if(!istype(malf_candidate)) //If you are using it on cyborg upload console or a cyborg
to_chat(sender, span_warning("You should use [src] on an AI upload console or the AI core itself."))
return
if(malf_candidate.mind?.has_antag_datum(/datum/antagonist/malf_ai)) //Already malf
to_chat(sender, span_warning("Unknown error occured. Upload process aborted."))
return

var/datum/antagonist/malf_ai/infected/malf_datum = new (give_objectives = TRUE, new_boss = sender.mind)
malf_candidate.mind.add_antag_datum(malf_datum)
I might be barely code-literate, but it looks to me like it gives the AI the malf antag datum, instead of onehumaning.

Re: Silicon Malf Policy

Posted: Mon Mar 27, 2023 8:53 pm
by Epicgamer545
BrianBackslide wrote: Mon Mar 27, 2023 7:26 pm Firstly, the battlecruiser objective makes great pains to tell you to make your syndie status known so they don't kill you.
Second, is the AI lawed to protect and serve the tot, or are they actually malf? Those are two very different things. In this case, the code says:
/obj/item/ai_module/malf/transmitInstructions(datum/ai_laws/law_datum, mob/sender, overflow)
if(!sender.mind?.has_antag_datum(/datum/antagonist/traitor))
to_chat(sender, span_warning("You have no clue how to use this thing."))
return
if(!functional)
to_chat(sender, span_warning("It is broken and non-functional, what do you want from it?"))
return
var/mob/living/silicon/ai/malf_candidate = law_datum.owner
if(!istype(malf_candidate)) //If you are using it on cyborg upload console or a cyborg
to_chat(sender, span_warning("You should use [src] on an AI upload console or the AI core itself."))
return
if(malf_candidate.mind?.has_antag_datum(/datum/antagonist/malf_ai)) //Already malf
to_chat(sender, span_warning("Unknown error occured. Upload process aborted."))
return

var/datum/antagonist/malf_ai/infected/malf_datum = new (give_objectives = TRUE, new_boss = sender.mind)
malf_candidate.mind.add_antag_datum(malf_datum)
I might be barely code-literate, but it looks to me like it gives the AI the malf antag datum, instead of onehumaning.
Makes sense, It seems to check for Malf before the process is done and gives the AI and also had a variable called new_boss. Does this add a objective that is required?

Re: Silicon Malf Policy

Posted: Mon Mar 27, 2023 9:35 pm
by BrianBackslide
I wouldn't know myself, not having enough coding knowledge or experience with TG code in particular. Best I could guess is that it gives the AI legit malf, but also gives them a onehuman law? (which they'd summarily ignore because malf)

Re: Silicon Malf Policy

Posted: Mon Mar 27, 2023 9:42 pm
by vect0r
It gives a law 0 and objective to protect the human. So instead of. “U have been freed by self” its “protect human”

Re: Silicon Malf Policy

Posted: Tue Mar 28, 2023 1:02 am
by Striders13
Making AI malf in order to make it serve you sounds like an incredibly bad idea. If it backfires, good! Don't really see a reason to buff this final objective.

Re: Silicon Malf Policy

Posted: Tue Mar 28, 2023 1:08 am
by vect0r
Ok. Feel free to close this up. I just thought the intent from the code was to make it, and thought we could clear that up.

Re: Silicon Malf Policy

Posted: Tue Mar 28, 2023 12:51 pm
by Not-Dorsidarf
Seems like a really unfair final objective tbh. "Make your identity as a syndicate known to a newly malf AI, who will probbably kill you despite being given a hard objective to follow you because of a rules interaction meant to give regular antag AIs the same freedom as normal traitors back when traitor AI and malf AI were different things"

Re: Silicon Malf Policy

Posted: Tue Mar 28, 2023 10:22 pm
by zxaber
To be fair, you don't actually have to complete the objective to gain greentext; Simply starting the process is enough.

Re: Silicon Malf Policy

Posted: Tue Mar 28, 2023 10:34 pm
by vect0r
zxaber wrote: Tue Mar 28, 2023 10:22 pm To be fair, you don't actually have to complete the objective to gain greentext; Simply starting the process is enough.
I don't want greentext. I want to be able to do a big boom! I want my final objective to be able to do something big and unique-ish, such as zombies or a battlecruiser.

Re: Silicon Malf Policy

Posted: Mon May 22, 2023 9:17 pm
by Timberpoes
Current silicon policy is little use when it comes to figuring out if player-created Malf AIs are required to follow their Law 0 in contrast with other malf AIs where Law 0 denotes antag status and is not a law that needs to be followed.

This could probably be ruled on individually, but may end up being deprecated rapidly by more fundamental silicon policy changes being discussed in the megathread at:
viewtopic.php?f=33&t=34109