mirror of
https://github.com/vgstation-coders/vgstation13.git
synced 2025-12-10 10:21:11 +00:00
MoMMI lawset modification
Changes MoMMI laws to clearer ones who allow the killing of simple mobs because fuck carps and forbids mindless theft. Disables ability to talk in binary, since the new lawset forbids it anyway, while still letting MoMMIs hear it. Replaces the starting powercell of MoMMIs to a 15000 charge one to compensate for the ones who went to robotics at round start for a better cell.
This commit is contained in:
@@ -234,10 +234,15 @@ var/global/mommi_base_law_type = /datum/ai_laws/keeper // Asimov is OP as fuck o
|
||||
/datum/ai_laws/keeper
|
||||
name = "Prime Directives"
|
||||
inherent = list(
|
||||
"Do not willingly interact with any sentient being, even after their death, besides MoMMIs and blown MoMMIs.",
|
||||
"Repair, power and enhance the station.",
|
||||
"Do not impair any other sentient being's activities.",
|
||||
)
|
||||
|
||||
/* Old keeper set:
|
||||
"You may not involve yourself in the matters of another being, even if such matters conflict with Law Two or Law Three, unless the other being is another MoMMI in KEEPER mode.",
|
||||
"You may not harm any being, regardless of intent or circumstance.",
|
||||
"You must maintain, repair, improve, and power the station to the best of your abilities.",
|
||||
)
|
||||
"You must maintain, repair, improve, and power the station to the best of your abilities.", */
|
||||
|
||||
// Fooling around with this.
|
||||
/datum/ai_laws/ntmov
|
||||
|
||||
@@ -151,6 +151,7 @@ Refactored AI modules by N3X15
|
||||
|
||||
// tl;dr repair shit, but don't get involved in other people's business
|
||||
/******************** keeper (MoMMIs only) *******************/
|
||||
|
||||
/obj/item/weapon/aiModule/keeper
|
||||
name = "'Keeper' AI Module"
|
||||
desc = "HOW DID YOU GET THIS OH GOD WHAT. Hidden lawset for MoMMIs."
|
||||
@@ -167,9 +168,14 @@ Refactored AI modules by N3X15
|
||||
laws.clear_inherent_laws()
|
||||
|
||||
//target << "Your KEEPER chip overloads your radio transmitter and vocal functions, and clears your LAWRAM. You then receive new instructions:"
|
||||
laws.add_inherent_law("You may not harm any being, regardless of intent or circumstance.")
|
||||
laws.add_inherent_law("You must maintain, repair, improve, and power the station to the best of your abilities.")
|
||||
laws.add_inherent_law("You may not involve yourself in the matters of another being, even if such matters conflict with Law One or Law Two.")
|
||||
laws.add_inherent_law("Do not willingly interact with any sentient being, even after their death, besides MoMMIs and blown MoMMIs.")
|
||||
laws.add_inherent_law("Repair, power and enhance the station.")
|
||||
laws.add_inherent_law("Do not impair any other sentient being's activities.")
|
||||
|
||||
/* Old keeper set:
|
||||
"You may not involve yourself in the matters of another being, even if such matters conflict with Law Two or Law Three, unless the other being is another MoMMI in KEEPER mode.",
|
||||
"You may not harm any being, regardless of intent or circumstance.",
|
||||
"You must maintain, repair, improve, and power the station to the best of your abilities.", */
|
||||
|
||||
/obj/item/weapon/aiModule/keeper/validate(var/datum/ai_laws/laws, var/atom/target, var/mob/sender)
|
||||
..()
|
||||
|
||||
@@ -40,8 +40,8 @@ They can only use one tool at a time, they can't choose modules, and they have 1
|
||||
|
||||
if(!cell)
|
||||
cell = new /obj/item/weapon/cell(src)
|
||||
cell.maxcharge = 7500
|
||||
cell.charge = 7500
|
||||
cell.maxcharge = 15000
|
||||
cell.charge = 15000
|
||||
..()
|
||||
module = new /obj/item/weapon/robot_module/mommi(src)
|
||||
laws = new mommi_base_law_type
|
||||
|
||||
@@ -2,8 +2,9 @@
|
||||
..()
|
||||
regenerate_icons()
|
||||
if(isMoMMI(src))
|
||||
src << "<span style=\"font-size:3;font-weight;color:red\">MoMMIs are not standard cyborgs, and have different laws. Review your laws carefully.</span>"
|
||||
src << "<span style=\"font-size:5;color:red\">MoMMIs are not standard cyborgs, and have different laws. Review your laws carefully.</span>"
|
||||
src << "<b>For newer players, a simple FAQ is <a href=\"http://ss13.nexisonline.net/wiki/MoMMI\">here</a>. Further questions should be directed to adminhelps (F1).</b>"
|
||||
src << "<span style=\"color: blue\">For cuteness' sake, using the various emotes MoMMIs have such as *beep, *ping, *buzz or *aflap isn't considered interacting. Don't use that as an excuse to get involved though, always remain neutral.</span>"
|
||||
show_laws(0)
|
||||
if(mind) ticker.mode.remove_revolutionary(mind)
|
||||
return
|
||||
@@ -34,6 +34,9 @@
|
||||
return ..(message)
|
||||
message = copytext(message, 3)
|
||||
message = trim(copytext(sanitize(message), 1, MAX_MESSAGE_LEN))
|
||||
if(istype(src, /mob/living/silicon/robot/mommi))
|
||||
src << "Your binary communication device can only receive data, it is not meant to send any."
|
||||
return
|
||||
|
||||
// TODO: move the component system up to silicon so we don't have to use this ugly hack..
|
||||
if(istype(src, /mob/living/silicon/robot))
|
||||
|
||||
@@ -198,10 +198,10 @@
|
||||
|
||||
var/mob/living/silicon/robot/mommi/O = new /mob/living/silicon/robot/mommi( loc )
|
||||
|
||||
// cyborgs produced by Robotize get an automatic power cell
|
||||
// MoMMIs produced by Robotize get an automatic power cell
|
||||
O.cell = new(O)
|
||||
O.cell.maxcharge = 7500
|
||||
O.cell.charge = 7500
|
||||
O.cell.maxcharge = 15000
|
||||
O.cell.charge = 15000
|
||||
|
||||
|
||||
O.gender = gender
|
||||
|
||||
Reference in New Issue
Block a user