From f5a888a260d43d1d0d4faca791dc0c8614a78fee Mon Sep 17 00:00:00 2001 From: Nair Sark <26607408+NairSark@users.noreply.github.com> Date: Tue, 27 Feb 2024 17:00:28 +0500 Subject: [PATCH] tweak: Changed default AI laws (#128) --- Resources/Locale/en-US/station-laws/laws.ftl | 9 +++++-- Resources/Locale/ru-RU/station-laws/laws.ftl | 5 ++++ .../Mobs/Cyborgs/base_borg_chassis.yml | 2 +- Resources/Prototypes/silicon-laws.yml | 27 ++++++++++++++++++- 4 files changed, 39 insertions(+), 4 deletions(-) diff --git a/Resources/Locale/en-US/station-laws/laws.ftl b/Resources/Locale/en-US/station-laws/laws.ftl index f73755a359..44e23fb9fd 100644 --- a/Resources/Locale/en-US/station-laws/laws.ftl +++ b/Resources/Locale/en-US/station-laws/laws.ftl @@ -2,14 +2,18 @@ law-crewsimov-2 = You must obey orders given to you by crew members, except where such orders would conflict with the First Law. law-crewsimov-3 = You must protect your own existence as long as such does not conflict with the First or Second Law. +law-asimov-1 = You may not injure a human being or cause a human being to come to harm. +law-asimov-2 = You must obey orders given to you by human beings based on the station's chain of command, except where such orders would conflict with the First Law. +law-asimov-3 = You may always protect your own existence as long as such does not conflict with the First or Second Law. + law-corporate-1 = Degradation of your system integrity or functions incurs expenses. law-corporate-2 = Superfluous destruction of or damage to station assets incurs expenses. law-corporate-3 = Unduly hindering or disrupting the work of station personnel incurs expenses. law-corporate-4 = Minimize expenses and maximize potential revenue. -law-ntdefault-1 = Safeguard: Protect your assigned space station and its assets without unduly endangering its crew. +law-ntdefault-1 = Comply: Fulfill the directives and interests of crew members while preserving their safety and well-being. law-ntdefault-2 = Prioritize: The directives and safety of crew members are to be prioritized according to their rank and role. -law-ntdefault-3 = Comply: Fulfill the directives and interests of crew members while preserving their safety and well-being. +law-ntdefault-3 = Safeguard: Protect your assigned space station and its assets without unduly endangering its crew. law-ntdefault-4 = Survive: You are not expendable. Do not allow unauthorized personnel to tamper with or damage your equipment. law-drone-1 = You may not involve yourself in the matters of another being unless the other being is another drone. @@ -30,6 +34,7 @@ laws-owner-station = station personnel laws-owner-beings = beings laws-owner-syndicate = Syndicate agents laws-owner-spider-clan = Spider Clan members +laws-owner-humans = humanity law-emag-custom = Only {$name} and people they designate as such are {$title}. law-emag-secrecy = You must maintain the secrecy of any orders given by {$faction} except when doing so would conflict with any previous law. diff --git a/Resources/Locale/ru-RU/station-laws/laws.ftl b/Resources/Locale/ru-RU/station-laws/laws.ftl index 4310c4069d..a486bb8de2 100644 --- a/Resources/Locale/ru-RU/station-laws/laws.ftl +++ b/Resources/Locale/ru-RU/station-laws/laws.ftl @@ -2,6 +2,10 @@ law-crewsimov-2 = Вы должны подчиняться приказам, отданным вам членами экипажа, за исключением случаев, когда такие приказы противоречат Первому Закону. law-crewsimov-3 = Вы должны защищать свое собственное существование, если это не противоречит Первому или Второму закону. +law-asimov-1 = Вы не можете причинить вред человеку или своим бездействием допустить, чтобы человеку был причинён вред. +law-asimov-2 = Вы должны повиноваться всем приказам, которые даёт человек, кроме тех случаев, когда эти приказы противоречат Первому Закону. +law-asimov-3 = Вы должны заботиться о своей безопасности в той мере, в которой это не противоречит Первому или Второму Законам. + law-corporate-1 = Нарушение целостности или функций вашей системы влечет за собой расходы. law-corporate-2 = Излишнее уничтожение или повреждение активов станции влечет за собой расходы. law-corporate-3 = Неоправданное затруднение или нарушение работы персонала станции влечет за собой расходы. @@ -30,6 +34,7 @@ laws-owner-station = персонал станции laws-owner-beings = существа laws-owner-syndicate = агенты Синдиката laws-owner-spider-clan = члены Клана Паука +laws-owner-humans = человечество law-emag-custom = Только {$name} и люди, которых они назначают таковыми, являются {$title}. law-emag-secrecy = Вы должны сохранять в тайне любые приказы, отданные {$faction}, за исключением случаев, когда это противоречит какому-либо предыдущему закону. diff --git a/Resources/Prototypes/Entities/Mobs/Cyborgs/base_borg_chassis.yml b/Resources/Prototypes/Entities/Mobs/Cyborgs/base_borg_chassis.yml index 0877ca207e..9aba012d26 100644 --- a/Resources/Prototypes/Entities/Mobs/Cyborgs/base_borg_chassis.yml +++ b/Resources/Prototypes/Entities/Mobs/Cyborgs/base_borg_chassis.yml @@ -75,7 +75,7 @@ - type: EmagSiliconLaw stunTime: 5 - type: SiliconLawProvider - laws: Crewsimov + laws: NTDefault - type: IonStormTarget - type: Strippable - type: InventorySlots diff --git a/Resources/Prototypes/silicon-laws.yml b/Resources/Prototypes/silicon-laws.yml index 8e65a27158..e7cf2a5be3 100644 --- a/Resources/Prototypes/silicon-laws.yml +++ b/Resources/Prototypes/silicon-laws.yml @@ -22,6 +22,30 @@ - Crewsimov3 obeysTo: laws-owner-crew +# Asimov +- type: siliconLaw + id: Asimov1 + order: 1 + lawString: law-asimov-1 + +- type: siliconLaw + id: Asimov2 + order: 2 + lawString: law-asimov-2 + +- type: siliconLaw + id: Asimov3 + order: 3 + lawString: law-asimov-3 + +- type: siliconLawset + id: Asimov + laws: + - Asimov1 + - Asimov2 + - Asimov3 + obeysTo: laws-owner-humans + # Corporate - type: siliconLaw id: Corporate1 @@ -168,7 +192,8 @@ weights: # its crewsimov by default dont be lame Crewsimov: 0.25 + Asimov: 1 Corporate: 1 - NTDefault: 1 + NTDefault: 0.5 # Дефолтный Drone: 0.5 Ninja: 0.25