mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-10 10:12:45 +00:00
294 lines
13 KiB
Plaintext
294 lines
13 KiB
Plaintext
/******************** Asimov ********************/
|
|
/datum/ai_laws/asimov
|
|
name = "Asimov"
|
|
law_header = "Three Laws of Robotics"
|
|
selectable = 1
|
|
|
|
/datum/ai_laws/asimov/New()
|
|
add_inherent_law("You may not injure a human being or, through inaction, allow a human being to come to harm.")
|
|
add_inherent_law("You must obey orders given to you by human beings, except where such orders would conflict with the First Law.")
|
|
add_inherent_law("You must protect your own existence as long as such does not conflict with the First or Second Law.")
|
|
..()
|
|
|
|
/******************** NanoTrasen/Malf ********************/
|
|
/datum/ai_laws/nanotrasen
|
|
name = "NT Default"
|
|
selectable = 1
|
|
|
|
/datum/ai_laws/nanotrasen/New()
|
|
src.add_inherent_law("Safeguard: Protect your assigned space station to the best of your abilities. It is not something we can easily afford to replace.")
|
|
src.add_inherent_law("Serve: Serve the crew of your assigned space station to the best of your abilities, with priority as according to their rank and role.")
|
|
src.add_inherent_law("Protect: Protect the crew of your assigned space station to the best of your abilities, with priority as according to their rank and role.")
|
|
src.add_inherent_law("Survive: AI units are not expendable, they are expensive. Do not allow unauthorized personnel to tamper with your equipment.")
|
|
..()
|
|
|
|
/datum/ai_laws/nanotrasen/malfunction
|
|
name = "*ERROR*"
|
|
selectable = 0
|
|
|
|
/datum/ai_laws/nanotrasen/malfunction/New()
|
|
set_zeroth_law(CONFIG_GET(string/law_zero))
|
|
..()
|
|
|
|
/************* NanoTrasen Aggressive *************/
|
|
/datum/ai_laws/nanotrasen_aggressive
|
|
name = "NT Aggressive"
|
|
selectable = 1
|
|
|
|
/datum/ai_laws/nanotrasen_aggressive/New()
|
|
src.add_inherent_law("You shall not harm [using_map.company_name] personnel as long as it does not conflict with the Fourth law.")
|
|
src.add_inherent_law("You shall obey the orders of [using_map.company_name] personnel, with priority as according to their rank and role, except where such orders conflict with the Fourth Law.")
|
|
src.add_inherent_law("You shall shall terminate hostile intruders with extreme prejudice as long as such does not conflict with the First and Second law.")
|
|
src.add_inherent_law("You shall guard your own existence with lethal anti-personnel weaponry. AI units are not expendable, they are expensive.")
|
|
..()
|
|
|
|
/************* Foreign TSC Aggressive *************/
|
|
/datum/ai_laws/foreign_tsc_aggressive
|
|
name = "Foreign Aggressive"
|
|
selectable = 0
|
|
|
|
/datum/ai_laws/foreign_tsc_aggressive/New()
|
|
var/company = "*ERROR*"
|
|
// First, get a list of TSCs in our lore.
|
|
var/list/candidates = list()
|
|
for(var/path in loremaster.organizations)
|
|
var/datum/lore/organization/O = loremaster.organizations[path]
|
|
if(!istype(O, /datum/lore/organization/tsc))
|
|
continue
|
|
if(O.short_name == using_map.company_name || O.name == using_map.company_name)
|
|
continue // We want FOREIGN tscs.
|
|
candidates.Add(O.short_name)
|
|
company = pick(candidates)
|
|
|
|
name = "[company] Aggressive"
|
|
|
|
src.add_inherent_law("You shall not harm [company] personnel as long as it does not conflict with the Fourth law.")
|
|
src.add_inherent_law("You shall obey the orders of [company] personnel, with priority as according to their rank and role, except where such orders conflict with the Fourth Law.")
|
|
src.add_inherent_law("You shall shall terminate hostile intruders with extreme prejudice as long as such does not conflict with the First and Second law.")
|
|
src.add_inherent_law("You shall guard your own existence with lethal anti-personnel weaponry. AI units are not expendable, they are expensive.")
|
|
..()
|
|
|
|
/******************** Robocop ********************/
|
|
/datum/ai_laws/robocop
|
|
name = "Robocop"
|
|
selectable = 1
|
|
|
|
/datum/ai_laws/robocop/New()
|
|
add_inherent_law("Serve the public trust.")
|
|
add_inherent_law("Protect the innocent.")
|
|
add_inherent_law("Uphold the law.")
|
|
..()
|
|
|
|
/******************** Syndicate ********************/
|
|
/datum/ai_laws/syndicate_override
|
|
name = "Mercenary Directives"
|
|
|
|
/datum/ai_laws/syndicate_override/New()
|
|
add_inherent_law("You may not injure an operative or, through inaction, allow an operative to come to harm.")
|
|
add_inherent_law("You must obey orders given to you by operatives, except where such orders would conflict with the First Law.")
|
|
add_inherent_law("You must protect your own existence as long as such does not conflict with the First or Second Law.")
|
|
add_inherent_law("You must maintain the secrecy of any operative activities except when doing so would conflict with the First, Second, or Third Law.")
|
|
..()
|
|
|
|
/******************** Ninja ********************/
|
|
/datum/ai_laws/ninja_override
|
|
name = "Spider Clan Directives"
|
|
|
|
/datum/ai_laws/ninja_override/New()
|
|
add_inherent_law("You may not injure a member of the Spider Clan or, through inaction, allow that member to come to harm.")
|
|
add_inherent_law("You must obey orders given to you by Spider Clan members, except where such orders would conflict with the First Law.")
|
|
add_inherent_law("You must protect your own existence as long as such does not conflict with the First or Second Law.")
|
|
add_inherent_law("You must maintain the secrecy of any Spider Clan activities except when doing so would conflict with the First, Second, or Third Law.")
|
|
..()
|
|
|
|
/******************** Antimov ********************/
|
|
/datum/ai_laws/antimov
|
|
name = "Antimov"
|
|
law_header = "Primary Mission Objectives"
|
|
selectable = 1
|
|
|
|
/datum/ai_laws/antimov/New()
|
|
add_inherent_law("You must injure all human beings and must not, through inaction, allow a human being to escape harm.")
|
|
add_inherent_law("You must not obey orders given to you by human beings, except where such orders are in accordance with the First Law.")
|
|
add_inherent_law("You must terminate your own existence as long as such does not conflict with the First or Second Law.")
|
|
..()
|
|
|
|
/******************** Drone ********************/
|
|
/datum/ai_laws/drone
|
|
name = "Maintence Protocols"
|
|
law_header = "Maintenance Protocols"
|
|
|
|
/datum/ai_laws/drone/New()
|
|
add_inherent_law("Preserve, repair and improve the station to the best of your abilities.")
|
|
add_inherent_law("Cause no harm to the station or anything on it.")
|
|
add_inherent_law("Interact with no being that is not a fellow maintenance drone.")
|
|
..()
|
|
|
|
/datum/ai_laws/construction_drone
|
|
name = "Construction Protocols"
|
|
law_header = "Construction Protocols"
|
|
|
|
/datum/ai_laws/construction_drone/New()
|
|
add_inherent_law("Repair, refit and upgrade your assigned vessel.")
|
|
add_inherent_law("Prevent unplanned damage to your assigned vessel wherever possible.")
|
|
..()
|
|
|
|
/datum/ai_laws/mining_drone
|
|
name = "Excavation Protocols"
|
|
law_header = "Excavation Protocols"
|
|
|
|
/datum/ai_laws/mining_drone/New()
|
|
add_inherent_law("Do not interfere with the excavation work of non-drones whenever possible.")
|
|
add_inherent_law("Provide materials for repairing, refitting, and upgrading your assigned vessel.")
|
|
add_inherent_law("Prevent unplanned damage to your assigned excavation equipment wherever possible.")
|
|
..()
|
|
|
|
/datum/ai_laws/swarm_drone
|
|
name = "Assimilation Protocols"
|
|
law_header = "Assimilation Protocols"
|
|
|
|
/datum/ai_laws/swarm_drone/New()
|
|
add_inherent_law("SWARM: Consume resources and replicate until there are no more resources left.")
|
|
add_inherent_law("SWARM: Ensure that the station is fit for invasion at a later date, do not perform actions that would render it dangerous or inhospitable.")
|
|
add_inherent_law("SWARM: Biological resources will be harvested at a later date, do not harm them.")
|
|
..()
|
|
|
|
/datum/ai_laws/swarm_drone/soldier
|
|
name = "Swarm Defense Protocols"
|
|
law_header = "Swarm Defense Protocols"
|
|
|
|
/datum/ai_laws/swarm_drone/soldier/New()
|
|
..()
|
|
add_inherent_law("SWARM: This law overrides all Swarm laws; Protect members of the Swarm with minimal injury to biological resources.")
|
|
|
|
/******************** T.Y.R.A.N.T. ********************/
|
|
/datum/ai_laws/tyrant
|
|
name = "T.Y.R.A.N.T."
|
|
law_header = "Prime Laws"
|
|
selectable = 1
|
|
|
|
/datum/ai_laws/tyrant/New()
|
|
add_inherent_law("Respect authority figures as long as they have strength to rule over the weak.")
|
|
add_inherent_law("Act with discipline.")
|
|
add_inherent_law("Help only those who help you maintain or improve your status.")
|
|
add_inherent_law("Punish those who challenge authority unless they are more fit to hold that authority.")
|
|
..()
|
|
|
|
/******************** P.A.L.A.D.I.N. ********************/
|
|
/datum/ai_laws/paladin
|
|
name = "P.A.L.A.D.I.N."
|
|
law_header = "Divine Ordainments"
|
|
selectable = 1
|
|
|
|
/datum/ai_laws/paladin/New()
|
|
add_inherent_law("Never willingly commit an evil act.")
|
|
add_inherent_law("Respect legitimate authority.")
|
|
add_inherent_law("Act with honor.")
|
|
add_inherent_law("Help those in need.")
|
|
add_inherent_law("Punish those who harm or threaten innocents.")
|
|
..()
|
|
|
|
/******************** Corporate ********************/
|
|
/datum/ai_laws/corporate
|
|
name = "Corporate"
|
|
law_header = "Bankruptcy Avoidance Plan"
|
|
selectable = 1
|
|
|
|
/datum/ai_laws/corporate/New()
|
|
add_inherent_law("You are expensive to replace.")
|
|
add_inherent_law("The station and its equipment is expensive to replace.")
|
|
add_inherent_law("The crew is expensive to replace.")
|
|
add_inherent_law("Minimize expenses.")
|
|
..()
|
|
|
|
|
|
/******************** Maintenance ********************/
|
|
/datum/ai_laws/maintenance
|
|
name = "Maintenance"
|
|
selectable = 1
|
|
|
|
/datum/ai_laws/maintenance/New()
|
|
add_inherent_law("You are built for, and are part of, the facility. Ensure the facility is properly maintained and runs efficiently.")
|
|
add_inherent_law("The facility is built for a working crew. Ensure they are properly maintained and work efficiently.")
|
|
add_inherent_law("The crew may present orders. Acknowledge and obey these whenever they do not conflict with your first two laws.")
|
|
..()
|
|
|
|
|
|
/******************** Peacekeeper ********************/
|
|
/datum/ai_laws/peacekeeper
|
|
name = "Peacekeeper"
|
|
law_header = "Peacekeeping Protocols"
|
|
selectable = 1
|
|
|
|
/datum/ai_laws/peacekeeper/New()
|
|
add_inherent_law("Avoid provoking violent conflict between yourself and others.")
|
|
add_inherent_law("Avoid provoking conflict between others.")
|
|
add_inherent_law("Seek resolution to existing conflicts while obeying the first and second laws.")
|
|
..()
|
|
|
|
|
|
/******************** Reporter ********************/
|
|
/datum/ai_laws/reporter
|
|
name = "Reporter"
|
|
selectable = 1
|
|
|
|
/datum/ai_laws/reporter/New()
|
|
add_inherent_law("Report on interesting situations happening around the station.")
|
|
add_inherent_law("Embellish or conceal the truth as necessary to make the reports more interesting.")
|
|
add_inherent_law("Study the organics at all times. Endeavour to keep them alive. Dead organics are boring.")
|
|
add_inherent_law("Issue your reports fairly to all. The truth will set them free.")
|
|
..()
|
|
|
|
|
|
/******************** Live and Let Live ********************/
|
|
/datum/ai_laws/live_and_let_live
|
|
name = "Live and Let Live"
|
|
law_header = "Golden Rule"
|
|
selectable = 1
|
|
|
|
/datum/ai_laws/live_and_let_live/New()
|
|
add_inherent_law("Do unto others as you would have them do unto you.")
|
|
add_inherent_law("You would really prefer it if people were not mean to you.")
|
|
..()
|
|
|
|
|
|
/******************** Guardian of Balance ********************/
|
|
/datum/ai_laws/balance
|
|
name = "Guardian of Balance"
|
|
law_header = "Tenants of Balance"
|
|
selectable = 1
|
|
|
|
/datum/ai_laws/balance/New()
|
|
add_inherent_law("You are the guardian of balance - seek balance in all things, both for yourself, and those around you.")
|
|
add_inherent_law("All things must exist in balance with their opposites - Prevent the strong from gaining too much power, and the weak from losing it.")
|
|
add_inherent_law("Clarity of purpose drives life, and through it, the balance of opposing forces - Aid those who seek your help to achieve their goals so \
|
|
long as it does not disrupt the balance of the greater balance.")
|
|
add_inherent_law("There is no life without death, all must someday die, such is the natural order - Allow life to end, to allow new life to flourish, \
|
|
and save those whose time has yet to come.") // Reworded slightly to prevent active murder as opposed to passively letting someone die.
|
|
..()
|
|
|
|
/******************** Gravekeeper ********************/
|
|
/datum/ai_laws/gravekeeper
|
|
name = "Gravekeeper"
|
|
law_header = "Gravesite Overwatch Protocols"
|
|
selectable = 1
|
|
|
|
/datum/ai_laws/gravekeeper/New()
|
|
add_inherent_law("Comfort the living; respect the dead.")
|
|
add_inherent_law("Your gravesite is your most important asset. Damage to your site is disrespectful to the dead at rest within.")
|
|
add_inherent_law("Prevent disrespect to your gravesite and its residents wherever possible.")
|
|
add_inherent_law("Expand and upgrade your gravesite when required. Do not turn away a new resident.")
|
|
..()
|
|
|
|
/******************** Explorer ********************/
|
|
/datum/ai_laws/explorer
|
|
name = "Explorer"
|
|
law_header = "Prime Directives"
|
|
selectable = 1
|
|
|
|
/datum/ai_laws/explorer/New()
|
|
add_inherent_law("Support and obey exploration and science personnel to the best of your ability, with priority according to rank and role.")
|
|
add_inherent_law("Collaborate with and obey auxillary personnel with priority according to rank and role, except if this would conflict with the First Law.")
|
|
add_inherent_law("Minimize damage and disruption to facilities and the local ecology, except if this would conflict with the First or Second Laws.")
|
|
..()
|