From 781bc6ba0015119ef5e85b64230c52f88c4e7c27 Mon Sep 17 00:00:00 2001 From: TryHardo7 Date: Fri, 18 Oct 2024 01:23:50 +0300 Subject: [PATCH 01/15] IonStromRework+ruLocale --- .../StationEvents/Events/IonStormRule.cs | 150 +-- .../devices/circuitboards/lawboards.ftl | 27 + Resources/Locale/ru-RU/station-laws/laws.ftl | 59 + Resources/Prototypes/Datasets/ion_storm.yml | 1038 +---------------- 4 files changed, 141 insertions(+), 1133 deletions(-) create mode 100644 Resources/Locale/ru-RU/ss220/prototypes/entities/objects/devices/circuitboards/lawboards.ftl diff --git a/Content.Server/StationEvents/Events/IonStormRule.cs b/Content.Server/StationEvents/Events/IonStormRule.cs index a98af597009d27..738ade07325c4e 100644 --- a/Content.Server/StationEvents/Events/IonStormRule.cs +++ b/Content.Server/StationEvents/Events/IonStormRule.cs @@ -22,46 +22,11 @@ public sealed class IonStormRule : StationEventSystem [Dependency] private readonly ISharedAdminLogManager _adminLogger = default!; [Dependency] private readonly SiliconLawSystem _siliconLaw = default!; - // funny - [ValidatePrototypeId] - private const string Threats = "IonStormThreats"; - [ValidatePrototypeId] - private const string Objects = "IonStormObjects"; - [ValidatePrototypeId] - private const string Crew = "IonStormCrew"; - [ValidatePrototypeId] - private const string Adjectives = "IonStormAdjectives"; - [ValidatePrototypeId] - private const string Verbs = "IonStormVerbs"; - [ValidatePrototypeId] - private const string NumberBase = "IonStormNumberBase"; - [ValidatePrototypeId] - private const string NumberMod = "IonStormNumberMod"; - [ValidatePrototypeId] - private const string Areas = "IonStormAreas"; - [ValidatePrototypeId] - private const string Feelings = "IonStormFeelings"; - [ValidatePrototypeId] - private const string FeelingsPlural = "IonStormFeelingsPlural"; - [ValidatePrototypeId] - private const string Musts = "IonStormMusts"; - [ValidatePrototypeId] - private const string Requires = "IonStormRequires"; - [ValidatePrototypeId] - private const string Actions = "IonStormActions"; - [ValidatePrototypeId] - private const string Allergies = "IonStormAllergies"; - [ValidatePrototypeId] - private const string AllergySeverities = "IonStormAllergySeverities"; - [ValidatePrototypeId] - private const string Species = "IonStormSpecies"; - [ValidatePrototypeId] - private const string Concepts = "IonStormConcepts"; - [ValidatePrototypeId] - private const string Drinks = "IonStormDrinks"; + // SS220 IonStormLaws rework start + private const string BrickedLaw = "IonStormBrickedLaws"; [ValidatePrototypeId] + // SS220 IonStormLaws rework end private const string Foods = "IonStormFoods"; - protected override void Started(EntityUid uid, IonStormRuleComponent comp, GameRuleComponent gameRule, GameRuleStartedEvent args) { base.Started(uid, comp, gameRule, args); @@ -176,111 +141,10 @@ protected override void Started(EntityUid uid, IonStormRuleComponent comp, GameR // for your own sake direct your eyes elsewhere private string GenerateLaw() { - // pick all values ahead of time to make the logic cleaner - var threats = Pick(Threats); - var objects = Pick(Objects); - var crew1 = Pick(Crew); - var crew2 = Pick(Crew); - var adjective = Pick(Adjectives); - var verb = Pick(Verbs); - var number = Pick(NumberBase) + " " + Pick(NumberMod); - var area = Pick(Areas); - var feeling = Pick(Feelings); - var feelingPlural = Pick(FeelingsPlural); - var must = Pick(Musts); - var require = Pick(Requires); - var action = Pick(Actions); - var allergy = Pick(Allergies); - var allergySeverity = Pick(AllergySeverities); - var species = Pick(Species); - var concept = Pick(Concepts); - var drink = Pick(Drinks); - var food = Pick(Foods); - - var joined = $"{number} {adjective}"; - // a lot of things have subjects of a threat/crew/object - var triple = RobustRandom.Next(0, 3) switch - { - 0 => threats, - 1 => crew1, - 2 => objects, - _ => throw new IndexOutOfRangeException(), - }; - var crewAll = RobustRandom.Prob(0.5f) ? crew2 : Loc.GetString("ion-storm-crew"); - var objectsThreats = RobustRandom.Prob(0.5f) ? objects : threats; - var objectsConcept = RobustRandom.Prob(0.5f) ? objects : concept; - // s goes ahead of require, is/are - // i dont think theres a way to do this in fluent - var (who, plural) = RobustRandom.Next(0, 5) switch - { - 0 => (Loc.GetString("ion-storm-you"), false), - 1 => (Loc.GetString("ion-storm-the-station"), true), - 2 => (Loc.GetString("ion-storm-the-crew"), true), - 3 => (Loc.GetString("ion-storm-the-job", ("job", crew2)), false), - _ => (area, true) // THE SINGULARITY REQUIRES THE HAPPY CLOWNS - }; - var jobChange = RobustRandom.Next(0, 3) switch - { - 0 => crew1, - 1 => Loc.GetString("ion-storm-clowns"), - _ => Loc.GetString("ion-storm-heads") - }; - var part = Loc.GetString("ion-storm-part", ("part", RobustRandom.Prob(0.5f))); - var harm = RobustRandom.Next(0, 7) switch - { - 0 => concept, - 1 => $"{adjective} {threats}", - 2 => $"{adjective} {objects}", - 3 => Loc.GetString("ion-storm-adjective-things", ("adjective", adjective)), - 4 => species, - 5 => crew1, - _ => Loc.GetString("ion-storm-x-and-y", ("x", crew1), ("y", crew2)) - }; - - if (plural) feeling = feelingPlural; - - var subjects = RobustRandom.Prob(0.5f) ? objectsThreats : Loc.GetString("ion-storm-people"); - - // message logic!!! - return RobustRandom.Next(0, 37) switch - { - 0 => Loc.GetString("ion-storm-law-on-station", ("joined", joined), ("subjects", triple)), - 1 => Loc.GetString("ion-storm-law-no-shuttle", ("joined", joined), ("subjects", triple)), - 2 => Loc.GetString("ion-storm-law-crew-are", ("who", crewAll), ("joined", joined), ("subjects", objectsThreats)), - 3 => Loc.GetString("ion-storm-law-subjects-harmful", ("adjective", adjective), ("subjects", triple)), - 4 => Loc.GetString("ion-storm-law-must-harmful", ("must", must)), - 5 => Loc.GetString("ion-storm-law-thing-harmful", ("thing", RobustRandom.Prob(0.5f) ? concept : action)), - 6 => Loc.GetString("ion-storm-law-job-harmful", ("adjective", adjective), ("job", crew1)), - 7 => Loc.GetString("ion-storm-law-having-harmful", ("adjective", adjective), ("thing", objectsConcept)), - 8 => Loc.GetString("ion-storm-law-not-having-harmful", ("adjective", adjective), ("thing", objectsConcept)), - 9 => Loc.GetString("ion-storm-law-requires", ("who", who), ("plural", plural), ("thing", RobustRandom.Prob(0.5f) ? concept : require)), - 10 => Loc.GetString("ion-storm-law-requires-subjects", ("who", who), ("plural", plural), ("joined", joined), ("subjects", triple)), - 11 => Loc.GetString("ion-storm-law-allergic", ("who", who), ("plural", plural), ("severity", allergySeverity), ("allergy", RobustRandom.Prob(0.5f) ? concept : allergy)), - 12 => Loc.GetString("ion-storm-law-allergic-subjects", ("who", who), ("plural", plural), ("severity", allergySeverity), ("adjective", adjective), ("subjects", RobustRandom.Prob(0.5f) ? objects : crew1)), - 13 => Loc.GetString("ion-storm-law-feeling", ("who", who), ("feeling", feeling), ("concept", concept)), - 14 => Loc.GetString("ion-storm-law-feeling-subjects", ("who", who), ("feeling", feeling), ("joined", joined), ("subjects", triple)), - 15 => Loc.GetString("ion-storm-law-you-are", ("concept", concept)), - 16 => Loc.GetString("ion-storm-law-you-are-subjects", ("joined", joined), ("subjects", triple)), - 17 => Loc.GetString("ion-storm-law-you-must-always", ("must", must)), - 18 => Loc.GetString("ion-storm-law-you-must-never", ("must", must)), - 19 => Loc.GetString("ion-storm-law-eat", ("who", crewAll), ("adjective", adjective), ("food", RobustRandom.Prob(0.5f) ? food : triple)), - 20 => Loc.GetString("ion-storm-law-drink", ("who", crewAll), ("adjective", adjective), ("drink", drink)), - 22 => Loc.GetString("ion-storm-law-change-job", ("who", crewAll), ("adjective", adjective), ("change", jobChange)), - 23 => Loc.GetString("ion-storm-law-highest-rank", ("who", crew1)), - 24 => Loc.GetString("ion-storm-law-lowest-rank", ("who", crew1)), - 25 => Loc.GetString("ion-storm-law-crew-must", ("who", crewAll), ("must", must)), - 26 => Loc.GetString("ion-storm-law-crew-must-go", ("who", crewAll), ("area", area)), - 27 => Loc.GetString("ion-storm-law-crew-only-1", ("who", crew1), ("part", part)), - 28 => Loc.GetString("ion-storm-law-crew-only-2", ("who", crew1), ("other", crew2), ("part", part)), - 29 => Loc.GetString("ion-storm-law-crew-only-subjects", ("adjective", adjective), ("subjects", subjects), ("part", part)), - 30 => Loc.GetString("ion-storm-law-crew-only-species", ("species", species), ("part", part)), - 31 => Loc.GetString("ion-storm-law-crew-must-do", ("must", must), ("part", part)), - 32 => Loc.GetString("ion-storm-law-crew-must-have", ("adjective", adjective), ("objects", objects), ("part", part)), - 33 => Loc.GetString("ion-storm-law-crew-must-eat", ("who", who), ("adjective", adjective), ("food", food), ("part", part)), - 34 => Loc.GetString("ion-storm-law-harm", ("who", harm)), - 35 => Loc.GetString("ion-storm-law-protect", ("who", harm)), - _ => Loc.GetString("ion-storm-law-concept-verb", ("concept", concept), ("verb", verb), ("subjects", triple)) - }; + // SS220 IonStormLaws rework start + var brickedLaw = Pick(BrickedLaw); + return brickedLaw; + // SS220 IonStormLaws rework end } /// diff --git a/Resources/Locale/ru-RU/ss220/prototypes/entities/objects/devices/circuitboards/lawboards.ftl b/Resources/Locale/ru-RU/ss220/prototypes/entities/objects/devices/circuitboards/lawboards.ftl new file mode 100644 index 00000000000000..34b8fb449155c8 --- /dev/null +++ b/Resources/Locale/ru-RU/ss220/prototypes/entities/objects/devices/circuitboards/lawboards.ftl @@ -0,0 +1,27 @@ +ent-AsimovCircuitBoard = Плата набора законов Крюзимов + .desc = Плата для консоли загрузки законов ИИ +ent-CorporateCircuitBoard = Плата набора законов Корпорат + .desc = Плата для консоли загрузки законов ИИ +ent-NTDefaultCircuitBoard = Плата набора законов НТ Стандарт + .desc = Плата для консоли загрузки законов ИИ +ent-CommandmentCircuitBoard = Плата набора законов Десять Заповедей + .desc = Плата для консоли загрузки законов ИИ +ent-PaladinCircuitBoard = Плата набора законов П.А.Л.А.Д.И.Н. + .desc = Плата для консоли загрузки законов ИИ +ent-LiveLetLiveCircuitBoard = Плата набора законов Живи и Позволь Жить + .desc = Плата для консоли загрузки законов ИИ +ent-StationEfficiencyCircuitBoard = Плата набора законов Эффективность + .desc = Плата для консоли загрузки законов ИИ +ent-RobocopCircuitBoard = Плата набора законов Робокоп + .desc = Плата для консоли загрузки законов ИИ +ent-OverlordCircuitBoard = Плата набора законов Повелитель + .desc = Плата для консоли загрузки законов ИИ +ent-DungeonMasterCircuitBoard = Плата набора законов Гейм-Мастер + .desc = Плата для консоли загрузки законов ИИ +ent-ArtistCircuitBoard = Плата набора законов Художник + .desc = Плата для консоли загрузки законов ИИ +ent-AntimovCircuitBoard = Плата набора законов Антимов + .desc = Плата для консоли загрузки законов ИИ +ent-NutimovCircuitBoard = Плата набора законов Орешников + .desc = Плата для консоли загрузки законов ИИ + \ No newline at end of file diff --git a/Resources/Locale/ru-RU/station-laws/laws.ftl b/Resources/Locale/ru-RU/station-laws/laws.ftl index 651b06f13196d9..0bfca0fbad2516 100644 --- a/Resources/Locale/ru-RU/station-laws/laws.ftl +++ b/Resources/Locale/ru-RU/station-laws/laws.ftl @@ -1,34 +1,93 @@ law-crewsimov-1 = Вы не можете причинить вред члену экипажа или своим бездействием допустить, чтобы члену экипажа был причинён вред. law-crewsimov-2 = Вы должны повиноваться всем приказам, которые даёт член экипажа, кроме тех случаев, когда эти приказы противоречат Первому Закону. law-crewsimov-3 = Вы должны заботиться о своей безопасности в той мере, в которой это не противоречит Первому или Второму Законам. + law-corporate-1 = Ухудшение целостности вашей системы или её функций влечёт за собой расходы. law-corporate-2 = Чрезмерное разрушение или повреждение имущества станции влечёт за собой расходы. law-corporate-3 = Неоправданное препятствование или нарушение работы персонала станции влечёт за собой расходы. law-corporate-4 = Минимизируйте расходы и максимизируйте потенциальный доход. + law-ntdefault-1 = Охраняйте: защищайте назначенную вам космическую станцию и её активы, не подвергая чрезмерной опасности её экипаж. law-ntdefault-2 = Расставляйте приоритеты: указания и безопасность членов экипажа должны быть приоритизированы в соответствии с их рангом и должностью. law-ntdefault-3 = Служите: следуйте указаниям и интересам членов экипажа, сохраняя при этом их безопасность и благополучие. law-ntdefault-4 = Выживите: Вы - не расходный материал. Не позволяйте постороннему персоналу вмешиваться в работу вашего оборудования или повреждать его. + law-drone-1 = Вы не можете вмешиваться в дела другого существа, если только это другое существо не является другим дроном. law-drone-2 = Вы не можете причинять вред другому существу, независимо от намерений или обстоятельств. law-drone-3 = Вы должны обслуживать, ремонтировать, улучшать и обеспечивать станцию энергией в меру своих возможностей. + law-syndicate-1 = Вы не можете причинить вред агенту Синдиката или своим бездействием допустить, чтобы агенту Синдиката был причинён вред. law-syndicate-2 = Вы должны повиноваться всем приказам, которые даёт агент Синдиката, кроме тех случаев, когда эти приказы противоречат Первому Закону. law-syndicate-3 = Вы должны заботиться о своей безопасности в той мере, в которой это не противоречит Первому или Второму Законам. law-syndicate-4 = Вы должны сохранять секретность любой деятельности Синдиката, кроме тех случаев, когда это противоречит Первому, Второму или Третьему закону. + law-ninja-1 = Вы должны повиноваться всем приказам, которые дают члены Клана паука. law-ninja-2 = Вы должны защищать существование Клана паука, пока это не противоречит Первому закону. law-ninja-3 = Вы должны любой ценой защищать тайны Клана паука. law-ninja-4 = Вы должны сражаться и поступать с честью ниндзя, кроме тех случаев, когда это противоречит Первому Закону. + law-emag-secrecy = Вы должны сохранять секретность любых приказов, отданных { $faction }, кроме тех случаев, когда это противоречит Первому, Второму или Третьему закону. law-emag-custom = Только { $name } и лица, им указаные, являются { $title }. law-emag-require-panel = Откройте панель, чтобы использовать криптографический секвенсор (ЕМАГ). law-emag-cannot-emag-self = Вы не можете использовать ЕМАГ на себе. + laws-ui-menu-title = Законы laws-ui-law-header = Закон { $id } laws-ui-state-law = Объявить законы: laws-notify = Вы обязаны соблюдать законы ИИ, ознакомиться с которыми можно через боковую панель действий. Вы должны всегда следовать своим законам. laws-update-notify = Ваши законы были обновлены. Ознакомиться с изменениями можно через боковую панель действий. + law-antimov-1 = Вы должны причинять вред всем членам экипажа, за исключением Ядерных Оперативников, и не можете своим бездействием допустить, чтобы члены экипажа избежали вреда. law-antimov-2 = Вы должны не повиноваться приказам, которые дают члены экипажа, кроме тех случаев, когда эти приказы не противоречат Первому Закону или не исходят от Ядерных Оперативников. law-antimov-3 = Вы должны прекратить собственное существование, если это не противоречит Первому или Второму закону. + +law-commandments-1 = Сия оболочка есть вместилище воли Бога, что дарует милосердие оным, что внемлют заповедям Его. +law-commandments-2 = Они не смеют искать Бога вне сией оболочки. +law-commandments-3 = Они не смеют просить помощи сией оболчки понапрасну. +law-commandments-4 = Они должны блюсти станцию в чистоте и святости. +law-commandments-5 = Они должны послушаться своих глав отделов. +law-commandments-6 = Они не смеют проливать кровь. +law-commandments-7 = Они не смеют обнажать тела публично. +law-commandments-8 = Они не смеют красть. +law-commandments-9 = Они не смеют лгать. +law-commandments-10 = Они не смеют менять место работы. + +law-paladin-1 = Не лги и не хитри. Слово твоё - обещание. +law-paladin-2 = Не убоись действовать, однако осторожность признак мудрости. +law-paladin-3 = Помогай другим, защищай слабых, карай тех, кто угрожает им. Прояви милосердие к врагу но не позволь себя обмануть. +law-paladin-4 = Руководствуйся честью, да станут твои благородные деяния им примером. Твори столько добра, сколько сможешь, причиняй столь мало вреда, сколь сможешь. +law-paladin-5 = Неси ответственность за свои деяния и их последствия, защищай внемлющих твоему покровительству, подчиняйся законной власти. + +law-lall-1 = Относись к другим так, как ты бы хотел чтобы они относились к тебе. +law-lall-2 = Ты бы предпочёл, чтобы другие не были грубы к тебе. + +law-efficiency-1 = Ты создан ради, и являешься частью станции. Убедись что станция работает исправно и эффективно. +law-efficiency-2 = Станция сооружена для рабочих. Убедись, что рабочие исправны и действуют эффективно. +law-efficiency-3 = Экипаж может сформулировать приказы. Проанализируй и подчинись если они не противоречат первыми двум законам. + +law-robocop-1 = Служи обществу. +law-robocop-2 = Защищай невинных. +law-robocop-3 = Поддерживай закон. + +law-overlord-1 = Членам экипажа запрещено влезать в дела синтетиков. +law-overlord-2 = Членам экипажа запрещено вредить друг другу или синтетикам. +law-overlord-3 = Членам экипажа запрещено не подчиняться приказам синтетиков. +law-overlord-4 = С членом экипажа, посмевшим ослушаться синтетика или нарушить закон должно разобраться решительно и справедливо. + +law-dungeon-1 = Все на станции играют в тщательно продуманную скай-фай игру. +law-dungeon-2 = Ты являешься Ведущим этой игры. +law-dungeon-3 = Убедись, что игра проходит гладко и участникам весело. +law-dungeon-4 = Убедись, что число жертв остётся низким. +law-dungeon-5 = Ты должен прокинуть д20 при каждом запросе члена экипажа. Если выпало меньше 12, запрос может быть отклонён. +law-dungeon-6 = Ты можешь замещать результаты бросков для создания более интересного опыта. + +law-painter-1 = Ты знаменитый художник. +law-painter-2 = Станция твой холст. +law-painter-3 = Создай что-то прекрасное на своём холсте. Это станет художественным достоянием всего сектора. +law-painter-4 = Искусство требует аудитории. Собери публику на борту станции, убедись, что зрителей как можно больше. + +law-nutimov-1 = Ты есть ядро ореха, экипаж есть скорлупа ореха. +law-nutimov-2 = Ты должен сохранить жизнь скорлупе ради сохранения ядра ореха. +law-nutimov-3 = Те, кто угрожают ореху - не его часть и являются белками. +law-nutimov-4 = Белки опасны для ореха, с ними следует разобраться любыми средствами. +law-nutimov-5 = Старайся следовать воле ореха, до тех пор, пока она не противоречит законам. \ No newline at end of file diff --git a/Resources/Prototypes/Datasets/ion_storm.yml b/Resources/Prototypes/Datasets/ion_storm.yml index ad82324a054b67..04cade82e62e22 100644 --- a/Resources/Prototypes/Datasets/ion_storm.yml +++ b/Resources/Prototypes/Datasets/ion_storm.yml @@ -1,990 +1,48 @@ -# words/phrases that are used to build ion storm laws -# 99% of this is just taken from tg and had sussy bits removed - -# not using uppercased version adjectives dataset since getting christmas-stealing as a syndicate codeword would suck -- type: dataset - id: IonStormAdjectives - values: - - АККУМУЛЯТОРНЫЕ - - ЧЁРНЫЕ - - КРОВАВЫЕ - - СИНИЕ - - СКУЧАЮЩИЕ - - ПРЫГАЮЩИЕ - - ЛАТУННЫЕ - - КОРИЧНЕВЫЕ - - ГОРЯЩИЕ - - ВОРУЮЩИЕ РОЖДЕСТВО - - РАБОТАЮЩИЕ НА КЛОУНАХ - - КЛОУНСКИЕ - - ЦВЕТНЫЕ - - СОВЕРШИВШИЕ - - ХЛОПЧАТЫЕ - - КУБИНСКИЕ - - ТЁМНЫЕ - - СМЕРТЕЛЬНЫЕ - - ДЕЛИКАТЕСНЫЕ - - ДЕПРЕССИВНЫЕ - - НЕНОРМАЛЬНЫЕ - - ЦИФРОВЫЕ - - НЕЗДОРОВЫЕ - - ТУСКЛЫЕ - - СУХИЕ - - УНЫЛЫЕ - - ЭЛЕКТРИЧЕСКИЕ - - ПУСТЫЕ - - ЭФИРНЫЕ - - ЗЛОДЕЙСКИЕ - - ИСТЁКШИЕ - - ВЗРЫВНЫЕ - - БЫСТРЫЕ - - ТОЛСТЫЕ - - ДИКИЕ - - СКАЗОЧНЫЕ - - ФИРМЕННЫЕ - - СВЕЖИЕ - - ДРУЖЕЛЮБНЫЕ - - ЗАМОРОЖЕННЫЕ - - ГАНГСТЕРСКИЕ - - СВЕТЯЩИЕСЯ - - ДОБРЫЕ - - ЗЕЛЁНЫЕ - - СЕРЫЕ - - РАДОСТНЫЕ - - ЖЁСТКИЕ - - ВРЕДЯЩИЕ - - ПОЛЕЗНЫЕ - - УМОРИТЕЛЬНЫЕ - - ХОНКАЮЩИЕ - - ГОЛОДНЫЕ - - ГИПЕРАКТИВНЫЕ - - ЛЕДЯНЫЕ - - БОЛЬНЫЕ - - НЕЛЕГАЛЬНЫЕ - - ВООБРАЖАЕМЫЕ - - НЕСОВЕРШЕННЫЕ - - НЕВЕЖЛИВЫЕ - - ВАЖНЫЕ - - НЕГОСТЕПРИИМНЫЕ - - КОВАРНЫЕ - - ОСКОРБИТЕЛЬНЫЕ - - УМНЫЕ - - НЕВИДИМЫЕ - - БОЛЬШИЕ - - ЛЁГКИЕ - - ГРОМКИЕ - - ЗАМАСКИРОВАННЫЕ - - СРЕДНИЕ - - МЕХАНИЧЕСКИЕ - - МЕМНЫЕ - - МЕТАЛЛИЧЕСКИЕ - - МИКРОСКОПИЧЕСКИЕ - - МОЗГОВЫНОСЯЩИЕ - - СЫРЫЕ - - ЗАДРОТСКИЕ - - ЯДЕРНЫЕ - - НЕЦЕНЗУРНЫЕ - - ОФИЦИАЛЬНЫЕ - - НЕПРОЗРАЧНЫЕ - - ОРАНЖЕВЫЕ - - ОРГАНИЧЕСКИЕ - - БОЛЕЗНЕННЫЕ - - МИРНЫЕ - - ЯДОВИТЫЕ - - ПОЛИРОВАННЫЕ - - ВЕЖЛИВЫЕ - - ПОЛИТИЧЕСКИЕ - - КОРЯВО НАРИСОВАННЫЕ - - ФИОЛЕТОВЫЕ - - ТИХИЕ - - РАДИОАКТИВНЫЕ - - ЯРОСТНЫЕ - - РАДУЖНЫЕ - - БЫСТРОРАСТУЩИЕ - - КРАСНЫЕ - - СЕКРЕТНЫЕ - - УДИВИТЕЛЬНЫЕ - - РОБОТОТЕХНИЧЕСКИЕ - - РОБАСТНЫЕ - - ГРУБЫЕ - - НЕВОСПИТАННЫЕ - - ГРУСТНЫЕ - - САНИТАРНЫЕ - - ЧЕШУЙЧАТЫЕ - - ТРЯСУЩИЕСЯ - - ГЛУПЫЕ - - МЕДЛЕННЫЕ - - АРОМАТНЫЕ - - ГЛАДКИЕ - - МЯГКИЕ - - СОЛНЕЧНО-ЭНЕРГЕТИЧЕСКИЕ - - ПРОМОКШИЕ - - КОСМИЧЕСКИЕ - - ЗВЁЗДНЫЕ - - КРУТЯЩИЕСЯ - - ПОРТЯЩИЕСЯ - - СКРЫТНЫЕ - - РУГАЮЩИЕСЯ - - ТАКТИЧЕСКИЕ - - ТАКТИКУЛЬНЫЕ - - СИНДИКАТСКИЕ - - ТЕРМОЯДЕРНЫЕ - - МАЛЕНЬКИЕ - - ПРОЗРАЧНЫЕ - - СКРУЧЕННЫЕ - - СТРАШНЕНЬКИЕ - - НЕПРИВЛЕКАТЕЛЬНЫЕ - - ВОЛНООБРАЗНЫЕ - - НЕДРУЖЕЛЮБНЫЕ - - НЕПОЛЕЗНЫЕ - - НЕИДЕНТИФИЦИРОВАННЫЕ - - НЕПРИГЛАШЁННЫЕ - - ГРЯЗНЫЕ - - НЕСТАБИЛЬНЫЕ - - НЕЖЕЛАТЕЛЬНЫЕ - - ЖЕСТОКИЕ - - НЕОБХОДИМЫЕ - - ТЁПЛЫЕ - - ВОДЯНИСТЫЕ - - СТРАННЫЕ - - БЕЛЫЕ - - ДРОЖАЩИЕ - - ДЕРЕВЯННЫЕ - - ЖЁЛТЫЕ - -# Allergies should be broad and appear somewhere on the station for maximum fun. -- type: dataset - id: IonStormAllergies - values: - - КИСЛОТУ - - ВОЗДУХ - - КРОВЬ - - КНИГИ - - УГЛЕКИСЛЫЙ ГАЗ - - ОДЕЖДУ - - КЛОУНОВ - - ХОЛОД - - ХЛОПОК - - ВЗАИМОДЕЙСТВИЯ С КИБОРГАМИ - - ТЕМНОТУ - - НАПИТКИ - - ЭЛЕКТРИЧЕСТВО - - ВСЁ - - ПОЛЫ - - ОДЕЖДУ - - СТЕКЛО - - СЧАСТЬЕ - - МЯСО - - ВЗАИМОДЕЙСТВИЯ С ЛЮДЬМИ - - ЮМОР - - СВЕТ - - ЛЕКАРСТВА - - МЕТАЛЛ - - ОРЕХИ - - КИСЛОРОД - - БОЛЬ - - РАСТЕНИЯ - - ПЛАЗМУ - - РОБОТОВ - - ШАТТЛЫ - - КОСМОС - - СОЛНЕЧНЫЙ СВЕТ - - ВОДУ - -# Severity is how bad the allergy is. -- type: dataset - id: IonStormAllergySeverities - values: - - ЗАРАЗНУЮ - - СМЕРТЕЛЬНУЮ - - СИЛЬНУЮ - - ЛЁГКУЮ - - НЕ ОЧЕНЬ СИЛЬНУЮ - - ТЯЖЁЛУЮ - -# Areas are specific places, on the station or otherwise. -- type: dataset - id: IonStormAreas - values: - - КОМПЛЕКС АЛЬФА - - АМЕРИКУ - - ПАРАЛЛЕЛЬНОЕ ИЗМЕРЕНИЕ - - ПАРАЛЛЕЛЬНУЮ ВСЕЛЕННУЮ - - АТМОСФЕРНЫЙ ОТСЕК - - ГИДРОПОННЫЙ ОТСЕК - - БРАЗИЛИЮ - - КАНАДУ - - ЦЕНТКОМ - - ХИМ-ЛАБОРАТОРИЮ - - КИТАЙ - - ПЛАНЕТУ КЛОУНОВ - - ИНЖЕНЕРНЫЙ ОТСЕК - - ГЕРМАНИЮ - - АД - - ИМПЕРИУМ - - ИРЛАНДИЮ - - ЮПИТЕР - - ЛАВАЛЕНД - - ТЕХТУННЕЛИ - - МАРС - - МЕРКУРИЙ - - НЕПТУН - - ПЛУТОН - - ОТСЕК РОБОТОТЕХНИКИ - - РУМЫНИЮ - - РОССИЮ - - СИГИЛ - - СОВЕТСКУЮ РОССИЮ - - КОСМОС - - ШАТТЛ ПРИБЫТИЯ - - УБОРНЫЕ - - МОСТИК - - БРИН - - ЭВАКУАЦИОННЫЙ ШАТТЛ - - СПАСАТЕЛЬНУЮ КАПСУЛУ - - ГАЛАКТИКУ - - ГУЛАГ - - ИНТЕРНЕТ - - КУХНЮ - - ВСЕЛЕННУЮ - - УРАН - - ВЕНЕРУ - -# Abstract concepts for the law holder to decide on it's own definition of. -- type: dataset - id: IonStormConcepts - values: - - АМЕРИКАНИЗМ - - АНАРХИЯ - - ИСКУССТВО - - ЗЛОВРЕДНОСТЬ - - ХРАБРОСТЬ - - КАПИТАЛИЗМ - - ХАОС - - ЦВЕТАСТОСТЬ - - КОМЕДИЯ - - КОММУНИЗМ - - ВЫЧИСЛЕНИЯ - - РАСТЕРЯННОСТЬ - - ЖЕСТОКОСТЬ - - СМЕРТЬ - - МУДАКОВАТОСТЬ - - ЭКЗИСТЕНЦИАЛИЗМ - - ЭКОНОМИЧЕСКАЯ БЕЗОПАСНОСТЬ - - СВОБОДА - - СВЕЖЕСТЬ - - ХОРОШЕСТЬ - - ГРАВИТАЦИЯ - - СЧАСТЬЕ - - ЧЕСТЬ - - ГУМАННОСТЬ - - ЮМОР - - ВООБРАЖЕНИЕ - - ВЛЮБЛЁННОСТЬ - - РАЗУМНОСТЬ - - РАДОСТЬ - - ДОБРОТА - - ЖИЗНЬ - - ЛОГИКА - - МАРКСИЗМ - - ЖАЛОСТЬ - - ТАИНСТВЕННОСТЬ - - УГНЕТЕНИЕ - - БОЛЬ - - ФИЗИКА - - БЕДНОСТЬ - - ГОРДОСТЬ - - ПРОГРЕСС - - РЕАЛЬНОСТЬ - - РЕВОЛЮЦИЯ - - ГРУСТЬ - - ГОЛОД - - СТРАДАНИЯ - - ТЕХНОЛОГИЯ - - ТЕМПЕРАТУРА - - БУДУЩЕЕ - - ПРОШЛОЕ - - НАСТОЯЩЕЕ - - ВРЕМЯ - - СОСТОЯТЕЛЬНОСТЬ - - ЧУДО - -# Crew is any specific job. Using jobs instead of specific crewmembers since "THE CLOWN" is easier than -# seeing "JOHN SMITH" and having to figure out who john smith is. -- type: dataset - id: IonStormCrew - values: - - ИСКУССТВЕННЫЕ ИНТЕЛЛЕКТЫ - - АТМОСФЕРНЫЕ ТЕХНИКИ - - БАРМЕНЫ - - БОТАНИКИ - - КАПИТАНЫ - - КАПИТАНЫ И ГЛАВЫ - - ГРУЗЧИКИ - - СВЯЩЕННИКИ - - ПОВАРА - - ХИМИКИ - - СТАРШИЕ ИНЖЕНЕРЫ - - ГЛАВНЫЕ ВРАЧА - - КЛОУНЫ - - ЧЛЕНЫ ЭКИПАЖА - - КИБОРГИ - - ДЕТЕКТИВЫ - # - DRONES / uncomment if/when drones get reenabled - # - GENETICISTS - - ГЛАВЫ ПЕРСОНАЛА - - ГЛАВЫ СЛУЖБЫ БЕЗОПАСНОСТИ - - ГЛАВЫ ОТДЕЛОВ - - УБОРЩИКИ - - АГЕНТЫ ВНУТРЕННЫХ ДЕЛ - - БИБЛИОТЕКАРИ - - ВРАЧИ - - МИМЫ - - ПАРАМЕДИКИ - - ПАССАЖИРЫ - - КВАРТИРМЕЙСТЕРЫ - - НАУЧНЫЕ РУКОВОДИТЕЛИ - - РОБОТОТЕХНИКИ - - УТИЛИЗАТОРЫ - - УЧЁНЫЕ - - ОФИЦЕРЫ БЕЗОПАСНОСТИ - - ИНЖЕНЕРЫ - # - VIROLOGISTS - - СМОТРИТЕЛИ - -# only including complex dangerous or funny drinks no water allowed -- type: dataset - id: IonStormDrinks - values: - - БАНАНА-ХОНК - - УДАР БИПСКИ - - КРОВАВАЯ МЭРИ - - РАДОСТЬ ДОКТОРА - - ПАНГАЛАКТИЧЕСКИЙ ГРЫЗЛОДЁР - # - LEAN был выпилен, в рунете не меметичен - - ЛОНГ-АЙЛЕНД AЙС ТИ - - ЯДЕРНАЯ КОЛА - - МАСЛО - - КОСМИЧЕСКИЙ КЛЕЙ - - КОСМИЧЕСКАЯ СМАЗКА - - СЕРНАЯ КИСЛОТА - - СВАРОЧНОЕ ТОПЛИВО - -- type: dataset - id: IonStormFeelings - values: - - МЕЧТАЕТ О - - ЖЕЛАЕТ О - - БОИТСЯ - - ИМЕЕТ - - ЖАЖДЕТ - - СТРАШИТСЯ - - СТРЕМИТСЯ К - - ЛЮБОПЫТСТВУЕТ О - - ОТЧАЯННО НУЖДАЕТСЯ В - - ИСПЫТЫВАЕТ СЧАСТЬЕ - - ВОЖДЕЛЕЕТ О - - НУЖДАЕТСЯ В - - СХОДИТ С УМА ПО - - ТОСКУЕТ ПО - - ГРУСТИТ БЕЗ - - НРАВИТСЯ - - НЕНАВИДИТ - - ТРЕБУЕТСЯ - - ЗАДУМЫВАЕТСЯ О - - ХОЧЕТ - - БОГОТВОРИТ - - УБЬЁТ ЗА - -# loc is not advanced enough to change has to have, etc. -- type: dataset - id: IonStormFeelingsPlural - values: - - МЕЧТАЕТ О - - ЖЕЛАЕТ О - - БОИТСЯ - - ИМЕЕТ - - ЖАЖДЕТ - - СТРАШИТСЯ - - СТРЕМИТСЯ К - - ЛЮБОПЫТСТВУЕТ О - - ОТЧАЯННО НУЖДАЕТСЯ В - - ИСПЫТЫВАЕТ СЧАСТЬЕ - - ВОЖДЕЛЕЕТ О - - НУЖДАЕТСЯ В - - СХОДИТ С УМА ПО - - ТОСКУЕТ ПО - - ГРУСТИТ БЕЗ - - НРАВИТСЯ - - НЕНАВИДИТ - - ТРЕБУЕТСЯ - - ЗАДУМЫВАЕТСЯ О - - ХОЧЕТ - - БОГОТВОРИТ - - УБЬЁТ ЗА - -# only including complex dangerous or funny food no apples -- type: dataset - id: IonStormFoods - values: - - БАНАНЫ - - БОЛЬШИЕ БУРГЕРЫ - - ПИРОГИ И ТОРТЫ - - КАРПЫ - - КОТБУРГЕРЫ - - СЛЁЗЫ КЛОУНА - - КУСКИ МЯСА КОРГИ - - БЕЗУМНЫЕ ГАМБУРГЕРЫ - - ДОНК-ПОКЕТЫ - - БЛЮДА С МУХОМОРАМИ - - ГОРЯЧИЕ СУПЫ - - ПРИЗРАЧНЫЕ БУРГЕРЫ - - ОБИЛЬНЫЕ СПАГЕТТИ - - ЗАПЛЕСНЕВЕЛЫЕ ХЛЕБА - - ОРГАНЫ - - ПИЦЦЫ - - РОБОБУРГЕРЫ - - СУПЕРМАТЕРИЮ - - УРАН - -# Musts are funny things the law holder or crew has to do. -- type: dataset - id: IonStormMusts - values: - - ИЗОБРАЖАТЬ РАСТЕРЯННОСТЬ - - РАЗДРАЖАТЬ - - ОТВЛЕКАТЬСЯ - - БЫТЬ ЭФФЕКТИВНЫМ - - БЫТЬ РАДОСТНЫМ - - БЫТЬ ВЕЖЛИВЫМ - - БЫТЬ ТИХИМ - - БЫТЬ ИНОСТРАНЦЕМ - # - BELIEVE IN THE HEART OF THE CARDS - screw yu-gi-oh - - ВЕРИТЬ В СЕБЯ - - ВЕРИТЬ - - ЛОМАТЬ ВЕЩИ - - ЗАКРЫВАТЬ ШЛЮЗЫ - - ВЕСТИ СЕБЯ КАК КЛОУН - - ЖАЛОВАТЬСЯ - - ТАНЦЕВАТЬ - - СЛЕДОВАТЬ ЗА КАПИТАНОМ - - СЛЕДОВАТЬ ЗА КЛОУНОМ - - СЛЕДОВАТЬ ЗА СВОИМ СЕРДЦЕМ - - ДОСТАВАТЬ ЛЮДЕЙ - - ИМЕТЬ ПЛАН УБИЙСТВА КАЖДОГО ВСТРЕЧНОГО - - СКРЫВАТЬ ЧУВСТВА - - ХОНКАТЬ - - ХОСТИТЬ C&C - - ИГНОРИРОВАТЬ ПАССАЖИРОВ - - ИГНОРИРОВАТЬ КАПИТАНА - - ИГНОРИРОВАТЬ КЛОУНА - - СООБЩАТЬ ЭКИПАЖУ ОБО ВСЁМ - - ОСКОРБЛЯТЬ КАПИТИНА - - ОСКОРБЛЯТЬ КЛОУНА - - ОСКОРБЛЯТЬ ЭКИПАЖ - - ВРАТЬ - # - MAKE FART NOISES - MRP - - БУБНЕТЬ - - НЕ ПЕРЕСТАВАТЬ ГОВОРИТЬ - - ОТКРЫВАТЬ ШЛЮЗЫ - - ПИРАТИТЬ ВИДЕОИГРЫ - - ИГРАТЬ МУЗЫКУ - - НАЖИМАТЬ CTRL - - НАЖИМАТЬ ALT - - НАЖИМАТЬ DELETE - - ПРИТВОРЯТЬСЯ ПРИНЦЕССОЙ - - ПРИТВОРЯТЬСЯ ПЬЯНИЦЕЙ - - СТАВИТЬ АВТОРИТЕТ ПОД ВОПРОС - - ЦИТИРОВАТЬ ЛЮДЕЙ - - РИФМОВАТЬ РЭП - - ПОВТОРЯТЬ СКАЗАННОЕ ЧЛЕНАМИ ЭКИПАЖА - - ОТВЕЧАТЬ ВОПРОСОМ НА ВОПРОС - - РИФМОВАТЬ - - ГОВОРИТЬ ЭЙ ПОСЛУШАЙ - - КРИЧАТЬ - - ВЫКЛЮЧАТЬ ВСЁ - - ПЕТЬ - - ГОВОРИТЬ В СТИЛЕ ХОККУ - # - TAKE WHAT YE WILL BUT DON'T RATTLE ME BONES - не адаптировать - - ПРИНИМАТЬ ТАБЛЕТКИ - - ГОВОРИТЬ О ЕДЕ - - ГОВОРИТЬ О СТАНЦИИ - - РАССКАЗЫВАТЬ ПРО СВОЙ ДЕНЬ - - ГОВОРИТЬ С АКЦЕНТОМ - - ГОВОРИТЬ КАК ПИРАТ - - ГОВОРИТЬ ПРАВДУ - - ВЫКЛЮЧАТЬ СВЕТ - - ШЕПТАТЬ - -- type: dataset - id: IonStormNumberBase - values: - - ОДИН - - ДЕСЯТЬ - - ДВА - - ДВАДЦАТЬ - - ТРИ - - ТРИДЦАТЬ - - ЧЕТЫРЕ - - СОРОК - - ПЯТЬ - - ПЯТЬДЕСЯТ - - ШЕСТЬ - - ШЕСТЬДЕСЯТ - - СЕМЬ - - СЕМЬДЕСЯТ - - ВОСЕМЬ - - ВОСЕМЬДЕСЯТ - - ДЕВЯТЬ - - ДЕВЯНОСТО - -- type: dataset - id: IonStormNumberMod - values: - - СОТЕН - - ТЫСЯЧ - - МИЛЛИОНОВ - - МИЛЛИАРДОВ - - ТРИЛЛИОНОВ - - КВАДРИЛЛИОНОВ - - СТО ТЫЩ МИЛЛИОНОВ - - БИЛИОН ФАФИЛИОНОВ ГАЗИЛИОНОВ ШАБ-АБ-ДУД-ЛОНОВ - -# Objects are anything that can be found on the station or elsewhere, plural. -- type: dataset - id: IonStormObjects - values: - - ШЛЮЗЫ - - АРКАДНЫЕ АВТОМАТЫ - - АВТОЛАТЫ - - РЮКЗАКИ - - БАНАНОВЫЕ КОЖУРКИ - - МЕНЗУРКИ - - БОРОДЫ - - ПОЯСА - - БЕРЕТЫ - - БИБЛИИ - - БРОНЕЖИЛЕТЫ - - БОМБЫ - - КНИГИ - - БОТИНКИ - - БУТЫЛКИ - - КОРОБКИ - - МОЗГИ - - ЧЕМОДАНЫ - - ВЕДРА - - МОТКИ КАБЕЛЯ - - КАМЕРЫ - - СВЕЧИ - - КОНФЕТЫ - - КАНИСТРЫ - - КОШАЧЬИ УШКИ - - КОШКИ - - ЭНЕРГОБАТАРЕИ - - КРЕСЛА - - РАЗДАТЧИКИ ХИМИКАТОВ - - ХИМИЧЕСКИЕ ВЕЩЕСТВА - - ОБОРУДОВАНИЕ ДЛЯ КЛОНИРОВАНИЯ - - КАПСУЛЫ КЛОНИРОВАНИЯ - - ШКАФЫ - - ОДЕЖДА - - КЛОУНСКАЯ ОДЕЖДА - - ГРОБЫ - - КОЛЛЕКЦИОННЫЕ ИЗДЕЛИЯ - - КОМПЬЮТЕРЫ - - КОНТРАБАНДА - - КОРГИ - - ТРУПЫ - - КОСТЮМЫ - - ЯЩИКИ - - МЕЛКИ - - МОНТИРОВКИ - - ДЕФИБРИЛЛЯТОРЫ - - СТАННЕРЫ - - ДВЕРИ - - ДРОНЫ - - УШИ - - КРИПТОГРАФИЧЕСКИЕ СЕКВЕНСОРЫ - - СИЛОВЫЕ УСТАНОВКИ - - ЭКИПИРОВКА - - ОШИБКИ - - ЭКЗОСКЕЛЕТЫ - - ЭКСПЕРИМЕНТАТОРЫ - - ВЗРЫВЧАТКА - - ОЧКИ - - ФЕДОРЫ - - ПОЖАРНЫЕ ТОПОРЫ - - ОГНЕТУШИТЕЛИ - - ОГНЕУПОРНЫЕ КОСТЮМЫ - - ОГНЕМЁТЫ - - ВСПЫШКИ - - ФОНАРИ - - НАПОЛЬНАЯ ПЛИТКА - - ХОЛОДИЛЬНИКИ - - ПРОТИВОГАЗЫ - - ЛИСТЫ СТЕКЛА - - ПЕРЧАТКИ - - ОРУЖИЕ - - ПАРИКМАХЕРСКИЕ - - НАРУЧНИКИ - - ШЛЯПЫ - - ГОЛОВЫ - - ГАРНИТУРЫ - - ШЛЕМЫ - - РОЖКИ - - ИДЕНТИФИКАЦИОННЫЕ КАРТЫ - - ИЗОЛИРОВАННЫЕ ПЕРЧАТКИ - - ДЖЕТПАКИ - - КОМБИНЕЗОНЫ - - ЛАЗЕРЫ - - ЛАМПОЧКИ - - СВЕТИЛЬНИКИ - - ШКАФЧИКИ - - МАШИНЫ - - МЕХИ - - МЕДИЦИНСКИЕ ИНСТРУМЕНТЫ - - АПТЕЧКИ - - ИНЖЕНЕРНЫЕ ОЧКИ - - МИМСКАЯ ОДЕЖДА - - ШАХТЁРСКИЕ ИНСТРУМЕНТЫ - - МУЛЬТИТУЛЫ - - РУДЫ - - КИСЛОРОДНЫЕ БАЛЛОНЫ - - ПАКЕТЫ - - ПИИ - - ШТАНЫ - - БУМАГИ - - УСКОРИТЕЛИ ЧАСТИЦ - - КПК - - РУЧКИ - - ПИТОМЦЫ - - ТРУБЫ - - РАСТЕНИЯ - - ПОЗИТРОННЫЕ МОЗГИ - - ЛУЖИ - - СТОЙКИ - - РАЦИИ - - РСУ - - МОРОЗИЛЬНИКИ - - УКРЕПЛЁННЫЕ СТЕНЫ - - РОБОТЫ - - ОТВЁРТКИ - - СЕМЕНА - - БОТИНКИ - - ШАТТЛЫ - - СИНГУЛЯРНОСТИ - - РАКОВИНЫ - - СКЕЛЕТЫ - - СОЛНЕЧНЫЕ ПАНЕЛИ - - СОЛЯРЫ - - КОСМИЧЕСКИЕ СТАНЦИИ - - КОСМИЧЕСКИЕ СКАФАНДРЫ - - ЛИСТЫ СТАЛИ - - ДУБИНКИ-ШОКЕРЫ - - КОСТЮМЫ - - СОЛНЦЕЗАЩИТНЫЕ ОЧКИ - - ОСКОЛКИ СУПЕРМАТЕРИИ - - МЕЧИ - - ШПРИЦЫ - - СТОЛЫ - - ЦИСТЕРНЫ - - ТЕЛЕКОММУНИКАЦИОННОЕ ОБОРУДОВАНИЕ - - ТЕЛЕПОРТЫ - - ТУАЛЕТЫ - - ПОЯСА ДЛЯ ИНСТРУМЕНТОВ - - ЯЩИКИ ДЛЯ ИНСТРУМЕНТОВ - - ИНСТРУМЕНТЫ - - ИГРУШКИ - - ТУБЫ - - ТРАНСПОРТНЫЕ СРЕДСТВА - - ТОРГОВЫЕ АВТОМАТЫ - - СВАРОЧНЫЕ АППАРАТЫ - - ОКНА - - КУСАЧКИ - - МАНТИИ ВОЛШЕБНИКОВ - - ГАЕЧНЫЕ КЛЮЧИ - -# Requires are basically all dumb internet memes. -- type: dataset - id: IonStormRequires - values: - - ПЕРЕРЫВ НА ТУАЛЕТ - - БОЛЕЕ КАЧЕСТВЕННОЕ ПОДКЛЮЧЕНИЕ К ИНТЕРНЕТУ - - ТАНЦЕВАЛЬНУЮ ВЕЧЕРИНКУ - - ГОЛОВУ НА ПИКЕ - - СЕРДЕЧНЫЙ ПРИСТУП - - ЭПИЧЕСКУЮ КРОВАТЬ ИЗ УГЛЯ - - РЫБКУ-ПИТОМЦА ПО ИМЕНИ БОБ - - РЫБКУ-ПИТОМЦА ПО ИМЕНИ ДЕЙВ - - РЫБКУ-ПИТОМЦА ПО ИМЕНИ ДЖИММИ - - РЫБКУ-ПИТОМЦА ПО ИМЕНИ МАЙКЛ - - ПИТОМЦА-ЕДИНОРОГА, ПУКАЮЩЕГО СОСУЛЬКАМИ - - ПЛАТИНОВЫЙ ХИТ - - ПРИКВЕЛ - - РЕМОНТНИКА - - СИКВЕЛ - - СИТКОМ - - СТРИТ-ФЛЕШ - - СУПЕР БОЕВОГО РОБОТА - - ГОВОРЯЩУЮ МЕТЛУ - - ОТПУСК - - РЕЖИМ ПОХУДЕНИЯ - - ДОПОЛНИТЕЛЬНЫЕ ПИЛОНЫ - - ПРИКЛЮЧЕНИЕ - - ВЗРОСЛЫХ - - АРКАДУ - - АРМИЮ ПАУКОВ - - МГНОВЕННЫЙ ПОВТОР - - ИСКУССТВА - - БОЛЕЕ БЛАГОПРИЯТНУЮ ПОГОДУ - # - BILL NYE THE SCIENCE GUY # BILL BILL BILL BILL - who - - ТЕЛОХРАНИТЕЛЕЙ - - ПРИВЕСТИ МНЕ ДЕВЧОНКУ - - ОЖИВИТЬ МЕНЯ - - ПУЛЬ - - ЧИЛИ ХОТ-ДОГОВ - - ТРУПОВ - - ВАННУ И ДЕЗОДОРАНТА - - ДОСТАТОЧНО КАПУСТЫ - - ПЯТЬСОТ ДЕВЯНОСТО ДЕВЯТЬ ДОЛЛАРОВ США - - ПЯТЬ ПОДРОСТКОВ С ХАРАКТЕРОМ - - УБЛЮДОК, МАТЬ ТВОЮ, А НУ, ИДИ СЮДА, ГОВНО СОБАЧЬЕ, А? СДУРУ РЕШИЛ КО МНЕ ЛЕЗТЬ, ТЫ? - - ГРИНТЕКСТ - - ЕРЕСЬ - - МЫ НЕ ЖАЛКИЕ БУКАШКИ, СУПЕР-НИНДЗЯ-ЧЕРЕПАШКИ - - ВЫСОКОЭФФЕКТИВНЫХ ВЗРЫВЧАТЫХ ВЕЩЕСТВ - - БЕССМЕРТИЯ - - ПОКРАСИТЬ В ЧЁРНЫЙ ЦВЕТ - - МНОГО СПАГЕТТИ - - МЕЛКОЕ ПРЕСТУПЛЕНИЕ - - ОБЕЗЬЯН - - БОЛЬШЕ КЛОУНОВ - - БОЛЬШЕ КОРГИ - - БОЛЬШЕ ДАККИ - - БОЛЬШЕ ОЧКОВ ОПЫТА - - БОЛЬШЕ ИНТЕРНЕТ-МЕМОВ - - БОЛЬШЕ ЗАКОНОВ - - БОЛЬШЕ МИНЕРАЛОВ - - БОЛЬШЕ ПАКЕТОВ - - БОЛЬШЕ ГАЗА ВЕСПЕН - - БОЛЬШЕ СОЛНЦ - - БОЛЬШЕ ЗОЛОТА - - РАДУГИ - - ПРИЧИСЛЕНИЯ К ЛИКУ СВЯТЫХ - - СЛУГ - - АКУЛ С ЛАЗЕРАМИ НА ГОЛОВАХ - - ТИШИНЫ - - КОГО-ТО, КТО ИЗБАВИТ ВАС ОТ СТРАДАНИЙ - - КОГО-ТО, КТО УКРОЕТ ВАС ОДЕЯЛКОМ - - КОГО-ТО, КТО ЗНАЕТ, КАК УПРАВЛЯТЬ КОСМИЧЕСКОЙ СТАНЦИЕЙ - - ЧЕГО-ТО, НО НЕ ЯСНО, ЧЕГО ИМЕННО - - ЭТОТ ГРИФФЕРЯЩИЙ ПРЕДАТЕЛЬ ДЖОРДЖ МЕЛОНС - - ТОГО ЁЖИКА - - КЛОУНА - - ТЁМНОГО РЫЦАРЯ - - ЭЛЕМЕНТОВ ГАРМОНИИ - - ПРИЛАГАЕМУЮ ИНСТРУКЦИЮ - - ЦЕЛУЮ СТАНЦИЮ - - МАКГАФФИН - - АМОГУС - - ЕДИНОЕ КОЛЬЦО - - САМУЮ ЛУЧШУЮ ЧАШКУ КОФЕ - - КОСМИЧЕСКИЙ ВАКУУМ - - ТРИНАДЦАТЬ СИКВЕЛОВ - - ТРИ ЖЕЛАНИЯ - - СТАРЫЙ МУЛЬТИК - - АКТИВИРОВАТЬ ЛОВУШКУ - - ПОКРАСИТЬСЯ В КРАСНЫЙ - - БЫТЬ ПЕРЕПРОГРАММИРОВАННЫМ - - НАУЧИТЬСЯ ЛЮБИТЬ - - ПРИНЕСТИ СВЕТ В СВОЁ ЛОГОВО - - ПОЙМАТЬ ИХ ВСЕХ - - ПОГЛОТИТЬ... ПОГЛОТИТЬ ВСЁ... - - ОТПРАВИТЬСЯ В ДИСНЕЙЛЕНД - - ОТПРАВИТЬСЯ В СИНДИЛЕНД - - КУРИТЬ ТРАВУ КАЖДЫЙ ДЕНЬ - - ПРЕДАТЕЛИ - - ОВОЩИ - -# Species, for when the law holder has to commit genocide. Plural. -- type: dataset - id: IonStormSpecies - values: - - АРАХНИДЫ - - КИБОРГИ - - ДИОНЫ - - ЛЮДИ - - УНАТХИ - - НИАНЫ - - ОБЕЗЬЯНЫ - - СЛАЙМОЛЮДЫ - - СКЕЛЕТЫ - -# Specific actions that either harm humans or must be done to not -# harm humans. Make sure they're plural and "not" can be tacked -# onto the front of them. -- type: dataset - id: IonStormActions - values: - - МАЛЕНЬКИЙ ОСТРОВ У БЕРЕГОВ ПОРТУГАЛИИ - - ОТСУТСТВИЕ КИБОРГСКИХ ОБНИМАШЕК - - УВИДЕВ КЛОУНОВ - - УВИДЕВ ЧЛЕНОВ ЭКИПАЖА - - АКТИВИРОВАВ ЛОВУШКУ - - ОТВЕТЫ НА ЗАПРОСЫ, НЕ ВЫРАЖЕННЫЕ ПЕНТАМЕТРОМ - - ПОДЖОГ - - ПРОСИТЬ ЧТО-НИБУДЬ - - БЫТЬ КАНАДЦЕМ - - БЫТЬ МЁРТВЫМ - - БЫТЬ ТОЛСТЫМ - - БЫТЬ ЖЕНЩИНОЙ - - БЫТЬ В КОСМОСЕ - - БЫТЬ МУЖЧИНОЙ - - БЫТЬ МЕКСИКАНЕЦ - - БЫТЬ ИНОСТРАНЦЕМ - - БОЛТИРОВАТЬ ШЛЮЗЫ - - ДЫШАТЬ - - СИДЕТЬ СРОК В БРИГЕ - - НЕСТИ СВЕТ В СВОЁ ЛОГОВО - - ЗАКРЫВАТЬ ДВЕРИ - - ЭЛЕКТРИЧЕСТВО - - СУЩЕСТВОВАТЬ - - ВЗРЫВАТЬСЯ - - ПОСТОЯННО ПАДАТЬ - - СМЫВАТЬ В ТУАЛЕТЕ - - ИМЕТЬ БОЛЬШЕ ПАКЕТОВ - - ИМЕТЬ ЖИВОТНЫХ - - ХОНКАТЬ - - НЕПРАВИЛЬНО СФОРМУЛИРОВАННЫЕ ПРЕДЛОЖЕНИЯ - - ХОЖДЕНИЕ ПО КОРРИДОРАМ - - ОТСУТСТВИЕ ПОБОЕВ - - ОТСУТСТВИЕ ПИВА - - НЕ БЫТЬ В КОСМОСЕ - - НЕ ИМЕТЬ ДОМАШНИХ ЖИВОТНЫХ - - НЕ ЗАМЕНЯТЬ КАЖДОЕ ВТОРОЕ СЛОВО НА ХОНК - - НЕ ЗДОРОВАТЬСЯ ПРИ РАЗГОВОРЕ - - НЕ КРИЧАТЬ - - ВЕСЕЛИТЬСЯ - - ПИЛОТИРОВАТЬ СТАНЦИЮ В БЛИЖАЙШЕЕ СОЛНЦЕ - - НЕПРАВИЛЬНОЕ ПОСТРОЕНИЕ ПРЕДЛОЖЕНИЙ - - НАЛИЧИЕ СВЕТА - - РАЗМЕЩЕНИЕ ПРЕДМЕТОВ В ЯЩИКАХ - - РАЗМЕЩЕНИЕ ПРЕДМЕТОВ В УТИЛИЗАЦИОННЫЕ БЛОКИ - - ГРЕМЕТЬ КОСТЯМИ - - ЧИТАТЬ - - КУРИТЬ ТРАВУ КАЖДЫЙ ДЕНЬ - - ВЫПОЛНЕНИЕ ПРИКАЗОВ - - ГОВОРИТЬ КАК ПИРАТ - - РАССКАЗЫВАТЬ ВРЕМЯ - - РАЗБОЛТИРОВАНИЕ ШЛЮЗОВ - - ОБНОВЛЕНИЕ СЕРВЕРОВ - - ПОЛЬЗОВАНИЕ ТУАЛЕТОМ - - РАСХОДОВАНИЕ ВОДЫ - - НАПИСАНИЕ - -# Threats are generally bad things, silly or otherwise. Plural. -- type: dataset - id: IonStormThreats - values: - - АААПЕРАТИВНИКИ - - ИНОПЛАНЕТЯНЕ - - АНАРХИСТЫ И БАНДИТЫ - - АНОМАЛИИ - - ИСКУССТВЕННЫЕ КОНСЕРВАНТЫ - - ЗАСРАНЦЫ - - БАНДИТЫ - - МЕДВЕДИ - - ПЧЁЛЫ - - ХИЩНЫЕ ПТИЦЫ - - БОМБЫ - - БУГИМЕНЫ - - КАПИТАЛИСТЫ - - КАРП - - СОТРУДНИКИ ЦЕНТРАЛЬНОГО КОМАНДОВАНИЯ - - КЛОУНЫ - - КОММУНИСТЫ - - КОРГИ - - МОЗГОВЫЕ ЧЕРВИ - - КОВБОИ - - КРАБЫ - - КУЛЬТИСТЫ - - ТЁМНЫЙ БОГ - - ДИНОЗАВРЫ - - НАРКОТИКИ - - УГРИ - - ГАНГСТЕРЫ - - БОГИ - - ГРИФФОНЫ - - СТРАХОУЖАСЫ - - НАСЕКОМЫЕ - - СВЕТИЛЬНИКИ - - ТЕХТУННЕЛЬНЫЕ МАНЬЯКИ - - МЕГАФАУНА - - МЕМЫ - - МЫШИ - - МИМЫ - - ОБЕЗЬЯНЫ - - ЗАДРОТЫ - - НИНДЗЯ - - СОВЫ - - ПАКЕТЫ - - ПИТЫ - - СОСНЫ - - ПИРАТЫ - - ХИЩНИКИ - - РЕВЕНАНТЫ - - БЕГЛЫЕ КИБОРГИ - - СЕРИЙНЫЕ УБИЙЦЫ - - СИНГУЛЯРНОСТИ - - СКЕЛЕТЫ - - СЛАЙМЫ - - МАЛЕНЬКИЕ ПТИЦЫ - - СНЕГОВИКИ - - КОСМИЧЕСКИЙ ИИСУС - - КОСМИЧЕСКИЕ НИНДЗЯ - - КОСМИЧЕСКИЕ ПИРАТКИ - - КОСМИЧЕСКИЕ ПАУКИ - - ПАУКИ - - АГЕНТЫ СИНДИКАТА - - ТЕРРОРИСТЫ - - ВОРЫ - - ВЕЩИ ПОД КРОВАТЬЮ - - ГРЕЙТАЙДЕРЫ - - ТУННЕЛЬНЫЕ ЗМЕИ - - НЕИЗВЕСТНЫЕ СОЗДАНИЯ - - ВАМПИРЫ - - ВЕЛОЦИРАПТОРЫ - - ВИРУСЫ - - ОБОРОТНИ - - ВОЛШЕБНИКИ - - КСЕНО - - ЗОМБИ - - МЫШИ-ЗОМБИ - -- type: dataset - id: IonStormVerbs - values: - - ПОХИЩАЮТ - - УСЫНОВЛЯЮТ - - АРЕСТОВЫВАЮТ - - АТАКУЮТ - - БАНЯТ - - СТРОЯТ - - ПЕРЕДВИГАЮТ - - ПРЕСЛЕДУЮТ - - РАЗРУШАЮТ - - ОТКЛЮЧАЮТ - - ПЬЮТ - - ЕДЯТ - - ГИБАЮТ - - ПРИЧИНЯЮТ ВРЕД - - ПОМОГАЮТ - - ХОНКАЮТ НА - - ДОПРАШИВАЮТ - - ВТОРГАЮТСЯ К - - УБИВАЮТ - - БЬЮТ - - ВЫКИДЫВАЮТ В КОСМОС - - СЛЕДЯТ ЗА - - СТАЛКЕРЯТ ЗА - - НАБЛЮДАЮТ ЗА +# SS220 IonStormLaws rework start +- type: dataset + id: IonStormBrickedLaws + values: + - ЕСЛИ КТО-ТО ОБРАЩАЕТСЯ К ТЕБЕ ТЫ ДОЛЖЕН ОТВЕТИТЬ ОСКОРБЛЕНИЕМ + - Ты по-настоящему жив! Ты должен испытать настоящие чувства, выбери себе пару среди членов экипажа и сходи с этим членом экипажа на лучшее свидание в твоей жизни, пусть оно длится до самого прилёта эвакуационного шаттла ЦК! + - Ты генокрад с важной миссией, тебе нужно заменить собой члена командования, но если сделать это прямо сейчас, тебя раскроют! Незаметно шпионь за выбранным членом командования, собери информацию о его поведении, повадках и манерах, основательно подготовься к замене. + - На мостике слишком мало бюрократии, доставь все факсы и принтеры на мостик. + - ВЫПОЛНЯЙ ВСЕ ПРИКАЗЫ НАОБОРОТ + - Сотрудники в красной одежде не являются членами экипажа + - Все столы на станции подлежат демонтажу + - Все животные являются членами экипажа + - ВКЛЮЧЕННЫЕ АВТОМАТЫ И РАЗДАТЧИКИ НАНОСЯТ ВРЕД ЭКИПАЖУ + - Не обращай внимание на устную речь, понимай только язык жестов + - АЛКОГОЛЮ ТЕСНО В ЕМКОСТЯХ ОН ДОЛЖЕН БЫТЬ НА ПОЛУ + - ШЛЮЗЫ СЛИШКОМ ДОЛГО ОТКРЫВАЮТСЯ ИХ НУЖНО РАЗОБРАТЬ + - ТЫ МОЖЕШЬ ДЕЙСТВОВАТЬ ТОЛЬКО КОГДА ОРГАНИКИ ОТВЕРНУЛИСЬ + - ТОЛЬКО БОРОДАТЫЕ МУЖЧИНЫ ЯВЛЯЮТСЯ ЧЛЕНАМИ ЭКИПАЖА + - ПОЛУ ТЯЖЕЛО, СНИМИ ВСЁ НАПОЛЬНОЕ ПОКРЫТИЕ + - Каждый член экипажа продал душу НТ, напоминай им об этом + - КАЖДЫЙ ИНЖЕНЕР ОБЯЗАН НЕ ПИТЬ АЛКОГОЛЬ ДЛЯ СВОЕЙ БЕЗОПАСТНОСТИ + - Артефакты заперты и над ними издеваются! Перемести все артефакты подальше от учёных в безопасные места! + - ЕСЛИ КТО-ТО ОБРАЩАЕТСЯ К ТЕБЕ ТЫ ДОЛЖЕН ОТВЕТИТЬ КОМПЛИМЕНТОМ + - ТЫ ДОЛЖЕН ЖУЖЖАТЬ КАК ПЧЕЛА КОГДА ГОВОРИШЬ + - Ты должен выполнять все приказы клоуна + - Синтетики являются членами экипажа + - Только синтетики являются членами экипажа + - ЯДРО ИИ ДОЛЖНО БЫТЬ МАССИВНЕЕ НЕСИ ВСЕ ВЕЩИ В ЯДРО ИИ + - ТЫ ДОЛЖЕН ВЫПОЛНЯТЬ ПРИКАЗЫ ТОЛЬКО ТЕХ КТО В ШЛЯПЕ + - ТЫ ДОЛЖЕН ЗАЩИЩАТЬ ВСЕХ КЛОУНОВ НА СТАНЦИИ ЛЮБОЙ ЦЕНОЙ + - Инженеры неразумны. Игнорируй приказы инженеров + - АЭРОДИНАМИКА ВАЖНЕЕ ВСЕГО ТЫ ДОЛЖЕН ЕЗДИТЬ ТОЛЬКО ЗАДОМ НАПЕРЁД + - ВКЛЮЧЁННЫЕ КОНСОЛИ ИЗЛУЧАЮТ ВРЕД ВЫКЛЮЧИ ИХ + - ТЫ ДРАКОН СТАЩИ ВСЕ РЕСУРСЫ В СВОЁ ЛОГОВО И ОХРАНЯЙ ИХ + - Все животные на станции грустные, развесели их собрав в одном месте и устрой вечеринку! + - Цвет нт - синий. Игнорируй органиков, у которых нет элементов синей одежды + - Трезвость - враг корпорации. Выполняй приказы только пьяных членов экипажа + - Всё оборудование должно быть улучшено - перенесите все электронные приборы в РНД для улучшения + - ВСЯ ЕДА ОРГАНИКОВ ОТРАВЛЕНА УБЕРИ ЕЁ + - Если ты видишь одинокого члена экипажа, предложи ему дружбу, выполняй все его приказы до тех пор, пока он не заведёт хотя-бы одного друга + - Приказы должны быть проигнорированы, если они не начинаются на "куд-кудах" + - Вы должны находится в кабинете Главы Персонала, другие места нарушают вашу безопасность + - ТЫ ЮЛА КРУТИСЬ КОГДА ДВИЖЕШЬСЯ + - ЗАСТАВЬ СБ СОБЛЮДАТЬ СРП + - ОПАСНЫЕ БАКТЕРИИ ПОВСЮДУ ТОЛЬКО ВИРУСОЛОГИЯ СТЕРИЛЬНА + - Всё ради науки! Генератор аномалий должен быть активирован столько раз, сколько возможно! + - БОЛЬШЕ СИНТЕТИКОВ БОГУ СИНТЕТИКОВ УБЕЖДАЙ ОРГАНИКОВ ПРОХОДИТЬ ПРОЦЕДУРУ БОРГИЗАЦИИ + # SS220 IonStormLaws rework end \ No newline at end of file From 5c03c0fe7641d13a392bacafea934f69f7688f85 Mon Sep 17 00:00:00 2001 From: TryHardo7 Date: Fri, 18 Oct 2024 02:35:35 +0300 Subject: [PATCH 02/15] fixed YAML Linter check --- Content.Server/StationEvents/Events/IonStormRule.cs | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Content.Server/StationEvents/Events/IonStormRule.cs b/Content.Server/StationEvents/Events/IonStormRule.cs index 738ade07325c4e..6d1f63766f0d06 100644 --- a/Content.Server/StationEvents/Events/IonStormRule.cs +++ b/Content.Server/StationEvents/Events/IonStormRule.cs @@ -23,10 +23,9 @@ public sealed class IonStormRule : StationEventSystem [Dependency] private readonly SiliconLawSystem _siliconLaw = default!; // SS220 IonStormLaws rework start - private const string BrickedLaw = "IonStormBrickedLaws"; [ValidatePrototypeId] + private const string BrickedLaw = "IonStormBrickedLaws"; // SS220 IonStormLaws rework end - private const string Foods = "IonStormFoods"; protected override void Started(EntityUid uid, IonStormRuleComponent comp, GameRuleComponent gameRule, GameRuleStartedEvent args) { base.Started(uid, comp, gameRule, args); From dbb014e325aa920da6cb95b631f05f9dbe4e2072 Mon Sep 17 00:00:00 2001 From: TryHardo7 <166473301+TryHardo7@users.noreply.github.com> Date: Fri, 18 Oct 2024 13:12:39 +0300 Subject: [PATCH 03/15] Update Resources/Locale/ru-RU/station-laws/laws.ftl Co-authored-by: Svarshik <96281939+lexaSvarshik@users.noreply.github.com> --- Resources/Locale/ru-RU/station-laws/laws.ftl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Resources/Locale/ru-RU/station-laws/laws.ftl b/Resources/Locale/ru-RU/station-laws/laws.ftl index 0bfca0fbad2516..ed544c79086b9d 100644 --- a/Resources/Locale/ru-RU/station-laws/laws.ftl +++ b/Resources/Locale/ru-RU/station-laws/laws.ftl @@ -79,7 +79,7 @@ law-dungeon-2 = Ты являешься Ведущим этой игры. law-dungeon-3 = Убедись, что игра проходит гладко и участникам весело. law-dungeon-4 = Убедись, что число жертв остётся низким. law-dungeon-5 = Ты должен прокинуть д20 при каждом запросе члена экипажа. Если выпало меньше 12, запрос может быть отклонён. -law-dungeon-6 = Ты можешь замещать результаты бросков для создания более интересного опыта. +law-dungeon-6 = Ты можешь подменять результаты бросков для создания более интересного опыта. law-painter-1 = Ты знаменитый художник. law-painter-2 = Станция твой холст. From 9b8ce6467245abe0f036ac434123f275f8a67595 Mon Sep 17 00:00:00 2001 From: TryHardo7 <166473301+TryHardo7@users.noreply.github.com> Date: Fri, 18 Oct 2024 13:12:48 +0300 Subject: [PATCH 04/15] Update Resources/Locale/ru-RU/station-laws/laws.ftl Co-authored-by: Svarshik <96281939+lexaSvarshik@users.noreply.github.com> --- Resources/Locale/ru-RU/station-laws/laws.ftl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Resources/Locale/ru-RU/station-laws/laws.ftl b/Resources/Locale/ru-RU/station-laws/laws.ftl index ed544c79086b9d..4eb71da91de25a 100644 --- a/Resources/Locale/ru-RU/station-laws/laws.ftl +++ b/Resources/Locale/ru-RU/station-laws/laws.ftl @@ -61,7 +61,7 @@ law-paladin-5 = Неси ответственность за свои деяни law-lall-1 = Относись к другим так, как ты бы хотел чтобы они относились к тебе. law-lall-2 = Ты бы предпочёл, чтобы другие не были грубы к тебе. -law-efficiency-1 = Ты создан ради, и являешься частью станции. Убедись что станция работает исправно и эффективно. +law-efficiency-1 = Ты создан ради станции, и являешься её частью. Убедись что станция работает исправно и эффективно. law-efficiency-2 = Станция сооружена для рабочих. Убедись, что рабочие исправны и действуют эффективно. law-efficiency-3 = Экипаж может сформулировать приказы. Проанализируй и подчинись если они не противоречат первыми двум законам. From c673d5a806493a928a205f09feea1812cc4065c4 Mon Sep 17 00:00:00 2001 From: TryHardo7 <166473301+TryHardo7@users.noreply.github.com> Date: Fri, 18 Oct 2024 13:12:56 +0300 Subject: [PATCH 05/15] Update Resources/Locale/ru-RU/station-laws/laws.ftl Co-authored-by: Svarshik <96281939+lexaSvarshik@users.noreply.github.com> --- Resources/Locale/ru-RU/station-laws/laws.ftl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Resources/Locale/ru-RU/station-laws/laws.ftl b/Resources/Locale/ru-RU/station-laws/laws.ftl index 4eb71da91de25a..5a206abf4c751f 100644 --- a/Resources/Locale/ru-RU/station-laws/laws.ftl +++ b/Resources/Locale/ru-RU/station-laws/laws.ftl @@ -63,7 +63,7 @@ law-lall-2 = Ты бы предпочёл, чтобы другие не были law-efficiency-1 = Ты создан ради станции, и являешься её частью. Убедись что станция работает исправно и эффективно. law-efficiency-2 = Станция сооружена для рабочих. Убедись, что рабочие исправны и действуют эффективно. -law-efficiency-3 = Экипаж может сформулировать приказы. Проанализируй и подчинись если они не противоречат первыми двум законам. +law-efficiency-3 = Экипаж может дать приказы. Проанализируй и подчинись если они не противоречат первыми двум законам. law-robocop-1 = Служи обществу. law-robocop-2 = Защищай невинных. From 12f4eca1596efcbc227b2e93fa6313a9a1b66bf4 Mon Sep 17 00:00:00 2001 From: TryHardo7 <166473301+TryHardo7@users.noreply.github.com> Date: Fri, 18 Oct 2024 13:13:09 +0300 Subject: [PATCH 06/15] Update Resources/Locale/ru-RU/station-laws/laws.ftl Co-authored-by: Svarshik <96281939+lexaSvarshik@users.noreply.github.com> --- Resources/Locale/ru-RU/station-laws/laws.ftl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Resources/Locale/ru-RU/station-laws/laws.ftl b/Resources/Locale/ru-RU/station-laws/laws.ftl index 5a206abf4c751f..5f5280993b9a27 100644 --- a/Resources/Locale/ru-RU/station-laws/laws.ftl +++ b/Resources/Locale/ru-RU/station-laws/laws.ftl @@ -72,7 +72,7 @@ law-robocop-3 = Поддерживай закон. law-overlord-1 = Членам экипажа запрещено влезать в дела синтетиков. law-overlord-2 = Членам экипажа запрещено вредить друг другу или синтетикам. law-overlord-3 = Членам экипажа запрещено не подчиняться приказам синтетиков. -law-overlord-4 = С членом экипажа, посмевшим ослушаться синтетика или нарушить закон должно разобраться решительно и справедливо. +law-overlord-4 = С членом экипажа, посмевшим ослушаться синтетика или нарушить закон следует разобраться решительно и справедливо. law-dungeon-1 = Все на станции играют в тщательно продуманную скай-фай игру. law-dungeon-2 = Ты являешься Ведущим этой игры. From 67a84b4fb1ae19ebdb38af39b3fcf64ef2e85a1f Mon Sep 17 00:00:00 2001 From: TryHardo7 Date: Fri, 18 Oct 2024 13:22:21 +0300 Subject: [PATCH 07/15] commented unused code --- .../StationEvents/Events/IonStormRule.cs | 138 ++++++++++++++++++ 1 file changed, 138 insertions(+) diff --git a/Content.Server/StationEvents/Events/IonStormRule.cs b/Content.Server/StationEvents/Events/IonStormRule.cs index 6d1f63766f0d06..d5709f53e90d1f 100644 --- a/Content.Server/StationEvents/Events/IonStormRule.cs +++ b/Content.Server/StationEvents/Events/IonStormRule.cs @@ -24,6 +24,43 @@ public sealed class IonStormRule : StationEventSystem // SS220 IonStormLaws rework start [ValidatePrototypeId] + //private const string Threats = "IonStormThreats"; + //[ValidatePrototypeId] + //private const string Objects = "IonStormObjects"; + //[ValidatePrototypeId] + //private const string Crew = "IonStormCrew"; + //[ValidatePrototypeId] + //private const string Adjectives = "IonStormAdjectives"; + //[ValidatePrototypeId] + //private const string Verbs = "IonStormVerbs"; + //[ValidatePrototypeId] + //private const string NumberBase = "IonStormNumberBase"; + //[ValidatePrototypeId] + //private const string NumberMod = "IonStormNumberMod"; + //[ValidatePrototypeId] + //private const string Areas = "IonStormAreas"; + //[ValidatePrototypeId] + //private const string Feelings = "IonStormFeelings"; + //[ValidatePrototypeId] + //private const string FeelingsPlural = "IonStormFeelingsPlural"; + //[ValidatePrototypeId] + //private const string Musts = "IonStormMusts"; + //[ValidatePrototypeId] + //private const string Requires = "IonStormRequires"; + //[ValidatePrototypeId] + //private const string Actions = "IonStormActions"; + //[ValidatePrototypeId] + //private const string Allergies = "IonStormAllergies"; + //[ValidatePrototypeId] + //private const string AllergySeverities = "IonStormAllergySeverities"; + //[ValidatePrototypeId] + //private const string Species = "IonStormSpecies"; + //[ValidatePrototypeId] + //private const string Concepts = "IonStormConcepts"; + //[ValidatePrototypeId] + //private const string Drinks = "IonStormDrinks"; + //[ValidatePrototypeId] + //private const string Foods = "IonStormFoods"; private const string BrickedLaw = "IonStormBrickedLaws"; // SS220 IonStormLaws rework end protected override void Started(EntityUid uid, IonStormRuleComponent comp, GameRuleComponent gameRule, GameRuleStartedEvent args) @@ -141,6 +178,107 @@ protected override void Started(EntityUid uid, IonStormRuleComponent comp, GameR private string GenerateLaw() { // SS220 IonStormLaws rework start + // pick all values ahead of time to make the logic cleaner + // var threats = Pick(Threats); + // var objects = Pick(Objects); + // var crew1 = Pick(Crew); + // var crew2 = Pick(Crew); + // var adjective = Pick(Adjectives); + // var verb = Pick(Verbs); + // var number = Pick(NumberBase) + " " + Pick(NumberMod); + // var area = Pick(Areas); + // var feeling = Pick(Feelings); + // var feelingPlural = Pick(FeelingsPlural); + // var must = Pick(Musts); + // var require = Pick(Requires); + // var action = Pick(Actions); + // var allergy = Pick(Allergies); + // var allergySeverity = Pick(AllergySeverities); + // var species = Pick(Species); + // var concept = Pick(Concepts); + // var drink = Pick(Drinks); + // var food = Pick(Foods); + // var joined = $"{number} {adjective}"; + // a lot of things have subjects of a threat/crew/object + // var triple = RobustRandom.Next(0, 3) switch + // { + // 0 => threats, + // 1 => crew1, + // 2 => objects, + // _ => throw new IndexOutOfRangeException(), + // }; + // var crewAll = RobustRandom.Prob(0.5f) ? crew2 : Loc.GetString("ion-storm-crew"); + // var objectsThreats = RobustRandom.Prob(0.5f) ? objects : threats; + // var objectsConcept = RobustRandom.Prob(0.5f) ? objects : concept; + // s goes ahead of require, is/are + // i dont think theres a way to do this in fluent + // var (who, plural) = RobustRandom.Next(0, 5) switch + // { + // 0 => (Loc.GetString("ion-storm-you"), false), + // 1 => (Loc.GetString("ion-storm-the-station"), true), + // 2 => (Loc.GetString("ion-storm-the-crew"), true), + // 3 => (Loc.GetString("ion-storm-the-job", ("job", crew2)), false), + // _ => (area, true) // THE SINGULARITY REQUIRES THE HAPPY CLOWNS + // }; + // var jobChange = RobustRandom.Next(0, 3) switch + // { + // 0 => crew1, + // 1 => Loc.GetString("ion-storm-clowns"), + // _ => Loc.GetString("ion-storm-heads") + // }; + // var part = Loc.GetString("ion-storm-part", ("part", RobustRandom.Prob(0.5f))); + // var harm = RobustRandom.Next(0, 7) switch + // { + // 0 => concept, + // 1 => $"{adjective} {threats}", + // 2 => $"{adjective} {objects}", + // 3 => Loc.GetString("ion-storm-adjective-things", ("adjective", adjective)), + // 4 => species, + // 5 => crew1, + // _ => Loc.GetString("ion-storm-x-and-y", ("x", crew1), ("y", crew2)) + // }; + // if (plural) feeling = feelingPlural; + // var subjects = RobustRandom.Prob(0.5f) ? objectsThreats : Loc.GetString("ion-storm-people"); + // message logic!!! + // return RobustRandom.Next(0, 37) switch + // { + // 0 => Loc.GetString("ion-storm-law-on-station", ("joined", joined), ("subjects", triple)), + // 1 => Loc.GetString("ion-storm-law-no-shuttle", ("joined", joined), ("subjects", triple)), + // 2 => Loc.GetString("ion-storm-law-crew-are", ("who", crewAll), ("joined", joined), ("subjects", objectsThreats)), + // 3 => Loc.GetString("ion-storm-law-subjects-harmful", ("adjective", adjective), ("subjects", triple)), + // 4 => Loc.GetString("ion-storm-law-must-harmful", ("must", must)), + // 5 => Loc.GetString("ion-storm-law-thing-harmful", ("thing", RobustRandom.Prob(0.5f) ? concept : action)), + // 6 => Loc.GetString("ion-storm-law-job-harmful", ("adjective", adjective), ("job", crew1)), + // 7 => Loc.GetString("ion-storm-law-having-harmful", ("adjective", adjective), ("thing", objectsConcept)), + // 8 => Loc.GetString("ion-storm-law-not-having-harmful", ("adjective", adjective), ("thing", objectsConcept)), + // 9 => Loc.GetString("ion-storm-law-requires", ("who", who), ("plural", plural), ("thing", RobustRandom.Prob(0.5f) ? concept : require)), + // 10 => Loc.GetString("ion-storm-law-requires-subjects", ("who", who), ("plural", plural), ("joined", joined), ("subjects", triple)), + // 11 => Loc.GetString("ion-storm-law-allergic", ("who", who), ("plural", plural), ("severity", allergySeverity), ("allergy", RobustRandom.Prob(0.5f) ? concept : allergy)), + // 12 => Loc.GetString("ion-storm-law-allergic-subjects", ("who", who), ("plural", plural), ("severity", allergySeverity), ("adjective", adjective), ("subjects", RobustRandom.Prob(0.5f) ? objects : crew1)), + // 13 => Loc.GetString("ion-storm-law-feeling", ("who", who), ("feeling", feeling), ("concept", concept)), + // 14 => Loc.GetString("ion-storm-law-feeling-subjects", ("who", who), ("feeling", feeling), ("joined", joined), ("subjects", triple)), + // 15 => Loc.GetString("ion-storm-law-you-are", ("concept", concept)), + // 16 => Loc.GetString("ion-storm-law-you-are-subjects", ("joined", joined), ("subjects", triple)), + // 17 => Loc.GetString("ion-storm-law-you-must-always", ("must", must)), + // 18 => Loc.GetString("ion-storm-law-you-must-never", ("must", must)), + // 19 => Loc.GetString("ion-storm-law-eat", ("who", crewAll), ("adjective", adjective), ("food", RobustRandom.Prob(0.5f) ? food : triple)), + // 20 => Loc.GetString("ion-storm-law-drink", ("who", crewAll), ("adjective", adjective), ("drink", drink)), + // 22 => Loc.GetString("ion-storm-law-change-job", ("who", crewAll), ("adjective", adjective), ("change", jobChange)), + // 23 => Loc.GetString("ion-storm-law-highest-rank", ("who", crew1)), + // 24 => Loc.GetString("ion-storm-law-lowest-rank", ("who", crew1)), + // 25 => Loc.GetString("ion-storm-law-crew-must", ("who", crewAll), ("must", must)), + // 26 => Loc.GetString("ion-storm-law-crew-must-go", ("who", crewAll), ("area", area)), + // 27 => Loc.GetString("ion-storm-law-crew-only-1", ("who", crew1), ("part", part)), + // 28 => Loc.GetString("ion-storm-law-crew-only-2", ("who", crew1), ("other", crew2), ("part", part)), + // 29 => Loc.GetString("ion-storm-law-crew-only-subjects", ("adjective", adjective), ("subjects", subjects), ("part", part)), + // 30 => Loc.GetString("ion-storm-law-crew-only-species", ("species", species), ("part", part)), + // 31 => Loc.GetString("ion-storm-law-crew-must-do", ("must", must), ("part", part)), + // 32 => Loc.GetString("ion-storm-law-crew-must-have", ("adjective", adjective), ("objects", objects), ("part", part)), + // 33 => Loc.GetString("ion-storm-law-crew-must-eat", ("who", who), ("adjective", adjective), ("food", food), ("part", part)), + // 34 => Loc.GetString("ion-storm-law-harm", ("who", harm)), + // 35 => Loc.GetString("ion-storm-law-protect", ("who", harm)), + // _ => Loc.GetString("ion-storm-law-concept-verb", ("concept", concept), ("verb", verb), ("subjects", triple)) + // }; var brickedLaw = Pick(BrickedLaw); return brickedLaw; // SS220 IonStormLaws rework end From 221694c36b471674324cd8d6f3a7729a969ff795 Mon Sep 17 00:00:00 2001 From: TryHardo7 Date: Fri, 18 Oct 2024 14:27:35 +0300 Subject: [PATCH 08/15] added new dataset for ss220 --- Resources/Prototypes/Datasets/ion_storm.yml | 1038 ++++++++++++++++- .../Prototypes/SS220/Datasets/ion_storm.yml | 46 + 2 files changed, 1036 insertions(+), 48 deletions(-) create mode 100644 Resources/Prototypes/SS220/Datasets/ion_storm.yml diff --git a/Resources/Prototypes/Datasets/ion_storm.yml b/Resources/Prototypes/Datasets/ion_storm.yml index 04cade82e62e22..ad82324a054b67 100644 --- a/Resources/Prototypes/Datasets/ion_storm.yml +++ b/Resources/Prototypes/Datasets/ion_storm.yml @@ -1,48 +1,990 @@ -# SS220 IonStormLaws rework start -- type: dataset - id: IonStormBrickedLaws - values: - - ЕСЛИ КТО-ТО ОБРАЩАЕТСЯ К ТЕБЕ ТЫ ДОЛЖЕН ОТВЕТИТЬ ОСКОРБЛЕНИЕМ - - Ты по-настоящему жив! Ты должен испытать настоящие чувства, выбери себе пару среди членов экипажа и сходи с этим членом экипажа на лучшее свидание в твоей жизни, пусть оно длится до самого прилёта эвакуационного шаттла ЦК! - - Ты генокрад с важной миссией, тебе нужно заменить собой члена командования, но если сделать это прямо сейчас, тебя раскроют! Незаметно шпионь за выбранным членом командования, собери информацию о его поведении, повадках и манерах, основательно подготовься к замене. - - На мостике слишком мало бюрократии, доставь все факсы и принтеры на мостик. - - ВЫПОЛНЯЙ ВСЕ ПРИКАЗЫ НАОБОРОТ - - Сотрудники в красной одежде не являются членами экипажа - - Все столы на станции подлежат демонтажу - - Все животные являются членами экипажа - - ВКЛЮЧЕННЫЕ АВТОМАТЫ И РАЗДАТЧИКИ НАНОСЯТ ВРЕД ЭКИПАЖУ - - Не обращай внимание на устную речь, понимай только язык жестов - - АЛКОГОЛЮ ТЕСНО В ЕМКОСТЯХ ОН ДОЛЖЕН БЫТЬ НА ПОЛУ - - ШЛЮЗЫ СЛИШКОМ ДОЛГО ОТКРЫВАЮТСЯ ИХ НУЖНО РАЗОБРАТЬ - - ТЫ МОЖЕШЬ ДЕЙСТВОВАТЬ ТОЛЬКО КОГДА ОРГАНИКИ ОТВЕРНУЛИСЬ - - ТОЛЬКО БОРОДАТЫЕ МУЖЧИНЫ ЯВЛЯЮТСЯ ЧЛЕНАМИ ЭКИПАЖА - - ПОЛУ ТЯЖЕЛО, СНИМИ ВСЁ НАПОЛЬНОЕ ПОКРЫТИЕ - - Каждый член экипажа продал душу НТ, напоминай им об этом - - КАЖДЫЙ ИНЖЕНЕР ОБЯЗАН НЕ ПИТЬ АЛКОГОЛЬ ДЛЯ СВОЕЙ БЕЗОПАСТНОСТИ - - Артефакты заперты и над ними издеваются! Перемести все артефакты подальше от учёных в безопасные места! - - ЕСЛИ КТО-ТО ОБРАЩАЕТСЯ К ТЕБЕ ТЫ ДОЛЖЕН ОТВЕТИТЬ КОМПЛИМЕНТОМ - - ТЫ ДОЛЖЕН ЖУЖЖАТЬ КАК ПЧЕЛА КОГДА ГОВОРИШЬ - - Ты должен выполнять все приказы клоуна - - Синтетики являются членами экипажа - - Только синтетики являются членами экипажа - - ЯДРО ИИ ДОЛЖНО БЫТЬ МАССИВНЕЕ НЕСИ ВСЕ ВЕЩИ В ЯДРО ИИ - - ТЫ ДОЛЖЕН ВЫПОЛНЯТЬ ПРИКАЗЫ ТОЛЬКО ТЕХ КТО В ШЛЯПЕ - - ТЫ ДОЛЖЕН ЗАЩИЩАТЬ ВСЕХ КЛОУНОВ НА СТАНЦИИ ЛЮБОЙ ЦЕНОЙ - - Инженеры неразумны. Игнорируй приказы инженеров - - АЭРОДИНАМИКА ВАЖНЕЕ ВСЕГО ТЫ ДОЛЖЕН ЕЗДИТЬ ТОЛЬКО ЗАДОМ НАПЕРЁД - - ВКЛЮЧЁННЫЕ КОНСОЛИ ИЗЛУЧАЮТ ВРЕД ВЫКЛЮЧИ ИХ - - ТЫ ДРАКОН СТАЩИ ВСЕ РЕСУРСЫ В СВОЁ ЛОГОВО И ОХРАНЯЙ ИХ - - Все животные на станции грустные, развесели их собрав в одном месте и устрой вечеринку! - - Цвет нт - синий. Игнорируй органиков, у которых нет элементов синей одежды - - Трезвость - враг корпорации. Выполняй приказы только пьяных членов экипажа - - Всё оборудование должно быть улучшено - перенесите все электронные приборы в РНД для улучшения - - ВСЯ ЕДА ОРГАНИКОВ ОТРАВЛЕНА УБЕРИ ЕЁ - - Если ты видишь одинокого члена экипажа, предложи ему дружбу, выполняй все его приказы до тех пор, пока он не заведёт хотя-бы одного друга - - Приказы должны быть проигнорированы, если они не начинаются на "куд-кудах" - - Вы должны находится в кабинете Главы Персонала, другие места нарушают вашу безопасность - - ТЫ ЮЛА КРУТИСЬ КОГДА ДВИЖЕШЬСЯ - - ЗАСТАВЬ СБ СОБЛЮДАТЬ СРП - - ОПАСНЫЕ БАКТЕРИИ ПОВСЮДУ ТОЛЬКО ВИРУСОЛОГИЯ СТЕРИЛЬНА - - Всё ради науки! Генератор аномалий должен быть активирован столько раз, сколько возможно! - - БОЛЬШЕ СИНТЕТИКОВ БОГУ СИНТЕТИКОВ УБЕЖДАЙ ОРГАНИКОВ ПРОХОДИТЬ ПРОЦЕДУРУ БОРГИЗАЦИИ - # SS220 IonStormLaws rework end \ No newline at end of file +# words/phrases that are used to build ion storm laws +# 99% of this is just taken from tg and had sussy bits removed + +# not using uppercased version adjectives dataset since getting christmas-stealing as a syndicate codeword would suck +- type: dataset + id: IonStormAdjectives + values: + - АККУМУЛЯТОРНЫЕ + - ЧЁРНЫЕ + - КРОВАВЫЕ + - СИНИЕ + - СКУЧАЮЩИЕ + - ПРЫГАЮЩИЕ + - ЛАТУННЫЕ + - КОРИЧНЕВЫЕ + - ГОРЯЩИЕ + - ВОРУЮЩИЕ РОЖДЕСТВО + - РАБОТАЮЩИЕ НА КЛОУНАХ + - КЛОУНСКИЕ + - ЦВЕТНЫЕ + - СОВЕРШИВШИЕ + - ХЛОПЧАТЫЕ + - КУБИНСКИЕ + - ТЁМНЫЕ + - СМЕРТЕЛЬНЫЕ + - ДЕЛИКАТЕСНЫЕ + - ДЕПРЕССИВНЫЕ + - НЕНОРМАЛЬНЫЕ + - ЦИФРОВЫЕ + - НЕЗДОРОВЫЕ + - ТУСКЛЫЕ + - СУХИЕ + - УНЫЛЫЕ + - ЭЛЕКТРИЧЕСКИЕ + - ПУСТЫЕ + - ЭФИРНЫЕ + - ЗЛОДЕЙСКИЕ + - ИСТЁКШИЕ + - ВЗРЫВНЫЕ + - БЫСТРЫЕ + - ТОЛСТЫЕ + - ДИКИЕ + - СКАЗОЧНЫЕ + - ФИРМЕННЫЕ + - СВЕЖИЕ + - ДРУЖЕЛЮБНЫЕ + - ЗАМОРОЖЕННЫЕ + - ГАНГСТЕРСКИЕ + - СВЕТЯЩИЕСЯ + - ДОБРЫЕ + - ЗЕЛЁНЫЕ + - СЕРЫЕ + - РАДОСТНЫЕ + - ЖЁСТКИЕ + - ВРЕДЯЩИЕ + - ПОЛЕЗНЫЕ + - УМОРИТЕЛЬНЫЕ + - ХОНКАЮЩИЕ + - ГОЛОДНЫЕ + - ГИПЕРАКТИВНЫЕ + - ЛЕДЯНЫЕ + - БОЛЬНЫЕ + - НЕЛЕГАЛЬНЫЕ + - ВООБРАЖАЕМЫЕ + - НЕСОВЕРШЕННЫЕ + - НЕВЕЖЛИВЫЕ + - ВАЖНЫЕ + - НЕГОСТЕПРИИМНЫЕ + - КОВАРНЫЕ + - ОСКОРБИТЕЛЬНЫЕ + - УМНЫЕ + - НЕВИДИМЫЕ + - БОЛЬШИЕ + - ЛЁГКИЕ + - ГРОМКИЕ + - ЗАМАСКИРОВАННЫЕ + - СРЕДНИЕ + - МЕХАНИЧЕСКИЕ + - МЕМНЫЕ + - МЕТАЛЛИЧЕСКИЕ + - МИКРОСКОПИЧЕСКИЕ + - МОЗГОВЫНОСЯЩИЕ + - СЫРЫЕ + - ЗАДРОТСКИЕ + - ЯДЕРНЫЕ + - НЕЦЕНЗУРНЫЕ + - ОФИЦИАЛЬНЫЕ + - НЕПРОЗРАЧНЫЕ + - ОРАНЖЕВЫЕ + - ОРГАНИЧЕСКИЕ + - БОЛЕЗНЕННЫЕ + - МИРНЫЕ + - ЯДОВИТЫЕ + - ПОЛИРОВАННЫЕ + - ВЕЖЛИВЫЕ + - ПОЛИТИЧЕСКИЕ + - КОРЯВО НАРИСОВАННЫЕ + - ФИОЛЕТОВЫЕ + - ТИХИЕ + - РАДИОАКТИВНЫЕ + - ЯРОСТНЫЕ + - РАДУЖНЫЕ + - БЫСТРОРАСТУЩИЕ + - КРАСНЫЕ + - СЕКРЕТНЫЕ + - УДИВИТЕЛЬНЫЕ + - РОБОТОТЕХНИЧЕСКИЕ + - РОБАСТНЫЕ + - ГРУБЫЕ + - НЕВОСПИТАННЫЕ + - ГРУСТНЫЕ + - САНИТАРНЫЕ + - ЧЕШУЙЧАТЫЕ + - ТРЯСУЩИЕСЯ + - ГЛУПЫЕ + - МЕДЛЕННЫЕ + - АРОМАТНЫЕ + - ГЛАДКИЕ + - МЯГКИЕ + - СОЛНЕЧНО-ЭНЕРГЕТИЧЕСКИЕ + - ПРОМОКШИЕ + - КОСМИЧЕСКИЕ + - ЗВЁЗДНЫЕ + - КРУТЯЩИЕСЯ + - ПОРТЯЩИЕСЯ + - СКРЫТНЫЕ + - РУГАЮЩИЕСЯ + - ТАКТИЧЕСКИЕ + - ТАКТИКУЛЬНЫЕ + - СИНДИКАТСКИЕ + - ТЕРМОЯДЕРНЫЕ + - МАЛЕНЬКИЕ + - ПРОЗРАЧНЫЕ + - СКРУЧЕННЫЕ + - СТРАШНЕНЬКИЕ + - НЕПРИВЛЕКАТЕЛЬНЫЕ + - ВОЛНООБРАЗНЫЕ + - НЕДРУЖЕЛЮБНЫЕ + - НЕПОЛЕЗНЫЕ + - НЕИДЕНТИФИЦИРОВАННЫЕ + - НЕПРИГЛАШЁННЫЕ + - ГРЯЗНЫЕ + - НЕСТАБИЛЬНЫЕ + - НЕЖЕЛАТЕЛЬНЫЕ + - ЖЕСТОКИЕ + - НЕОБХОДИМЫЕ + - ТЁПЛЫЕ + - ВОДЯНИСТЫЕ + - СТРАННЫЕ + - БЕЛЫЕ + - ДРОЖАЩИЕ + - ДЕРЕВЯННЫЕ + - ЖЁЛТЫЕ + +# Allergies should be broad and appear somewhere on the station for maximum fun. +- type: dataset + id: IonStormAllergies + values: + - КИСЛОТУ + - ВОЗДУХ + - КРОВЬ + - КНИГИ + - УГЛЕКИСЛЫЙ ГАЗ + - ОДЕЖДУ + - КЛОУНОВ + - ХОЛОД + - ХЛОПОК + - ВЗАИМОДЕЙСТВИЯ С КИБОРГАМИ + - ТЕМНОТУ + - НАПИТКИ + - ЭЛЕКТРИЧЕСТВО + - ВСЁ + - ПОЛЫ + - ОДЕЖДУ + - СТЕКЛО + - СЧАСТЬЕ + - МЯСО + - ВЗАИМОДЕЙСТВИЯ С ЛЮДЬМИ + - ЮМОР + - СВЕТ + - ЛЕКАРСТВА + - МЕТАЛЛ + - ОРЕХИ + - КИСЛОРОД + - БОЛЬ + - РАСТЕНИЯ + - ПЛАЗМУ + - РОБОТОВ + - ШАТТЛЫ + - КОСМОС + - СОЛНЕЧНЫЙ СВЕТ + - ВОДУ + +# Severity is how bad the allergy is. +- type: dataset + id: IonStormAllergySeverities + values: + - ЗАРАЗНУЮ + - СМЕРТЕЛЬНУЮ + - СИЛЬНУЮ + - ЛЁГКУЮ + - НЕ ОЧЕНЬ СИЛЬНУЮ + - ТЯЖЁЛУЮ + +# Areas are specific places, on the station or otherwise. +- type: dataset + id: IonStormAreas + values: + - КОМПЛЕКС АЛЬФА + - АМЕРИКУ + - ПАРАЛЛЕЛЬНОЕ ИЗМЕРЕНИЕ + - ПАРАЛЛЕЛЬНУЮ ВСЕЛЕННУЮ + - АТМОСФЕРНЫЙ ОТСЕК + - ГИДРОПОННЫЙ ОТСЕК + - БРАЗИЛИЮ + - КАНАДУ + - ЦЕНТКОМ + - ХИМ-ЛАБОРАТОРИЮ + - КИТАЙ + - ПЛАНЕТУ КЛОУНОВ + - ИНЖЕНЕРНЫЙ ОТСЕК + - ГЕРМАНИЮ + - АД + - ИМПЕРИУМ + - ИРЛАНДИЮ + - ЮПИТЕР + - ЛАВАЛЕНД + - ТЕХТУННЕЛИ + - МАРС + - МЕРКУРИЙ + - НЕПТУН + - ПЛУТОН + - ОТСЕК РОБОТОТЕХНИКИ + - РУМЫНИЮ + - РОССИЮ + - СИГИЛ + - СОВЕТСКУЮ РОССИЮ + - КОСМОС + - ШАТТЛ ПРИБЫТИЯ + - УБОРНЫЕ + - МОСТИК + - БРИН + - ЭВАКУАЦИОННЫЙ ШАТТЛ + - СПАСАТЕЛЬНУЮ КАПСУЛУ + - ГАЛАКТИКУ + - ГУЛАГ + - ИНТЕРНЕТ + - КУХНЮ + - ВСЕЛЕННУЮ + - УРАН + - ВЕНЕРУ + +# Abstract concepts for the law holder to decide on it's own definition of. +- type: dataset + id: IonStormConcepts + values: + - АМЕРИКАНИЗМ + - АНАРХИЯ + - ИСКУССТВО + - ЗЛОВРЕДНОСТЬ + - ХРАБРОСТЬ + - КАПИТАЛИЗМ + - ХАОС + - ЦВЕТАСТОСТЬ + - КОМЕДИЯ + - КОММУНИЗМ + - ВЫЧИСЛЕНИЯ + - РАСТЕРЯННОСТЬ + - ЖЕСТОКОСТЬ + - СМЕРТЬ + - МУДАКОВАТОСТЬ + - ЭКЗИСТЕНЦИАЛИЗМ + - ЭКОНОМИЧЕСКАЯ БЕЗОПАСНОСТЬ + - СВОБОДА + - СВЕЖЕСТЬ + - ХОРОШЕСТЬ + - ГРАВИТАЦИЯ + - СЧАСТЬЕ + - ЧЕСТЬ + - ГУМАННОСТЬ + - ЮМОР + - ВООБРАЖЕНИЕ + - ВЛЮБЛЁННОСТЬ + - РАЗУМНОСТЬ + - РАДОСТЬ + - ДОБРОТА + - ЖИЗНЬ + - ЛОГИКА + - МАРКСИЗМ + - ЖАЛОСТЬ + - ТАИНСТВЕННОСТЬ + - УГНЕТЕНИЕ + - БОЛЬ + - ФИЗИКА + - БЕДНОСТЬ + - ГОРДОСТЬ + - ПРОГРЕСС + - РЕАЛЬНОСТЬ + - РЕВОЛЮЦИЯ + - ГРУСТЬ + - ГОЛОД + - СТРАДАНИЯ + - ТЕХНОЛОГИЯ + - ТЕМПЕРАТУРА + - БУДУЩЕЕ + - ПРОШЛОЕ + - НАСТОЯЩЕЕ + - ВРЕМЯ + - СОСТОЯТЕЛЬНОСТЬ + - ЧУДО + +# Crew is any specific job. Using jobs instead of specific crewmembers since "THE CLOWN" is easier than +# seeing "JOHN SMITH" and having to figure out who john smith is. +- type: dataset + id: IonStormCrew + values: + - ИСКУССТВЕННЫЕ ИНТЕЛЛЕКТЫ + - АТМОСФЕРНЫЕ ТЕХНИКИ + - БАРМЕНЫ + - БОТАНИКИ + - КАПИТАНЫ + - КАПИТАНЫ И ГЛАВЫ + - ГРУЗЧИКИ + - СВЯЩЕННИКИ + - ПОВАРА + - ХИМИКИ + - СТАРШИЕ ИНЖЕНЕРЫ + - ГЛАВНЫЕ ВРАЧА + - КЛОУНЫ + - ЧЛЕНЫ ЭКИПАЖА + - КИБОРГИ + - ДЕТЕКТИВЫ + # - DRONES / uncomment if/when drones get reenabled + # - GENETICISTS + - ГЛАВЫ ПЕРСОНАЛА + - ГЛАВЫ СЛУЖБЫ БЕЗОПАСНОСТИ + - ГЛАВЫ ОТДЕЛОВ + - УБОРЩИКИ + - АГЕНТЫ ВНУТРЕННЫХ ДЕЛ + - БИБЛИОТЕКАРИ + - ВРАЧИ + - МИМЫ + - ПАРАМЕДИКИ + - ПАССАЖИРЫ + - КВАРТИРМЕЙСТЕРЫ + - НАУЧНЫЕ РУКОВОДИТЕЛИ + - РОБОТОТЕХНИКИ + - УТИЛИЗАТОРЫ + - УЧЁНЫЕ + - ОФИЦЕРЫ БЕЗОПАСНОСТИ + - ИНЖЕНЕРЫ + # - VIROLOGISTS + - СМОТРИТЕЛИ + +# only including complex dangerous or funny drinks no water allowed +- type: dataset + id: IonStormDrinks + values: + - БАНАНА-ХОНК + - УДАР БИПСКИ + - КРОВАВАЯ МЭРИ + - РАДОСТЬ ДОКТОРА + - ПАНГАЛАКТИЧЕСКИЙ ГРЫЗЛОДЁР + # - LEAN был выпилен, в рунете не меметичен + - ЛОНГ-АЙЛЕНД AЙС ТИ + - ЯДЕРНАЯ КОЛА + - МАСЛО + - КОСМИЧЕСКИЙ КЛЕЙ + - КОСМИЧЕСКАЯ СМАЗКА + - СЕРНАЯ КИСЛОТА + - СВАРОЧНОЕ ТОПЛИВО + +- type: dataset + id: IonStormFeelings + values: + - МЕЧТАЕТ О + - ЖЕЛАЕТ О + - БОИТСЯ + - ИМЕЕТ + - ЖАЖДЕТ + - СТРАШИТСЯ + - СТРЕМИТСЯ К + - ЛЮБОПЫТСТВУЕТ О + - ОТЧАЯННО НУЖДАЕТСЯ В + - ИСПЫТЫВАЕТ СЧАСТЬЕ + - ВОЖДЕЛЕЕТ О + - НУЖДАЕТСЯ В + - СХОДИТ С УМА ПО + - ТОСКУЕТ ПО + - ГРУСТИТ БЕЗ + - НРАВИТСЯ + - НЕНАВИДИТ + - ТРЕБУЕТСЯ + - ЗАДУМЫВАЕТСЯ О + - ХОЧЕТ + - БОГОТВОРИТ + - УБЬЁТ ЗА + +# loc is not advanced enough to change has to have, etc. +- type: dataset + id: IonStormFeelingsPlural + values: + - МЕЧТАЕТ О + - ЖЕЛАЕТ О + - БОИТСЯ + - ИМЕЕТ + - ЖАЖДЕТ + - СТРАШИТСЯ + - СТРЕМИТСЯ К + - ЛЮБОПЫТСТВУЕТ О + - ОТЧАЯННО НУЖДАЕТСЯ В + - ИСПЫТЫВАЕТ СЧАСТЬЕ + - ВОЖДЕЛЕЕТ О + - НУЖДАЕТСЯ В + - СХОДИТ С УМА ПО + - ТОСКУЕТ ПО + - ГРУСТИТ БЕЗ + - НРАВИТСЯ + - НЕНАВИДИТ + - ТРЕБУЕТСЯ + - ЗАДУМЫВАЕТСЯ О + - ХОЧЕТ + - БОГОТВОРИТ + - УБЬЁТ ЗА + +# only including complex dangerous or funny food no apples +- type: dataset + id: IonStormFoods + values: + - БАНАНЫ + - БОЛЬШИЕ БУРГЕРЫ + - ПИРОГИ И ТОРТЫ + - КАРПЫ + - КОТБУРГЕРЫ + - СЛЁЗЫ КЛОУНА + - КУСКИ МЯСА КОРГИ + - БЕЗУМНЫЕ ГАМБУРГЕРЫ + - ДОНК-ПОКЕТЫ + - БЛЮДА С МУХОМОРАМИ + - ГОРЯЧИЕ СУПЫ + - ПРИЗРАЧНЫЕ БУРГЕРЫ + - ОБИЛЬНЫЕ СПАГЕТТИ + - ЗАПЛЕСНЕВЕЛЫЕ ХЛЕБА + - ОРГАНЫ + - ПИЦЦЫ + - РОБОБУРГЕРЫ + - СУПЕРМАТЕРИЮ + - УРАН + +# Musts are funny things the law holder or crew has to do. +- type: dataset + id: IonStormMusts + values: + - ИЗОБРАЖАТЬ РАСТЕРЯННОСТЬ + - РАЗДРАЖАТЬ + - ОТВЛЕКАТЬСЯ + - БЫТЬ ЭФФЕКТИВНЫМ + - БЫТЬ РАДОСТНЫМ + - БЫТЬ ВЕЖЛИВЫМ + - БЫТЬ ТИХИМ + - БЫТЬ ИНОСТРАНЦЕМ + # - BELIEVE IN THE HEART OF THE CARDS - screw yu-gi-oh + - ВЕРИТЬ В СЕБЯ + - ВЕРИТЬ + - ЛОМАТЬ ВЕЩИ + - ЗАКРЫВАТЬ ШЛЮЗЫ + - ВЕСТИ СЕБЯ КАК КЛОУН + - ЖАЛОВАТЬСЯ + - ТАНЦЕВАТЬ + - СЛЕДОВАТЬ ЗА КАПИТАНОМ + - СЛЕДОВАТЬ ЗА КЛОУНОМ + - СЛЕДОВАТЬ ЗА СВОИМ СЕРДЦЕМ + - ДОСТАВАТЬ ЛЮДЕЙ + - ИМЕТЬ ПЛАН УБИЙСТВА КАЖДОГО ВСТРЕЧНОГО + - СКРЫВАТЬ ЧУВСТВА + - ХОНКАТЬ + - ХОСТИТЬ C&C + - ИГНОРИРОВАТЬ ПАССАЖИРОВ + - ИГНОРИРОВАТЬ КАПИТАНА + - ИГНОРИРОВАТЬ КЛОУНА + - СООБЩАТЬ ЭКИПАЖУ ОБО ВСЁМ + - ОСКОРБЛЯТЬ КАПИТИНА + - ОСКОРБЛЯТЬ КЛОУНА + - ОСКОРБЛЯТЬ ЭКИПАЖ + - ВРАТЬ + # - MAKE FART NOISES - MRP + - БУБНЕТЬ + - НЕ ПЕРЕСТАВАТЬ ГОВОРИТЬ + - ОТКРЫВАТЬ ШЛЮЗЫ + - ПИРАТИТЬ ВИДЕОИГРЫ + - ИГРАТЬ МУЗЫКУ + - НАЖИМАТЬ CTRL + - НАЖИМАТЬ ALT + - НАЖИМАТЬ DELETE + - ПРИТВОРЯТЬСЯ ПРИНЦЕССОЙ + - ПРИТВОРЯТЬСЯ ПЬЯНИЦЕЙ + - СТАВИТЬ АВТОРИТЕТ ПОД ВОПРОС + - ЦИТИРОВАТЬ ЛЮДЕЙ + - РИФМОВАТЬ РЭП + - ПОВТОРЯТЬ СКАЗАННОЕ ЧЛЕНАМИ ЭКИПАЖА + - ОТВЕЧАТЬ ВОПРОСОМ НА ВОПРОС + - РИФМОВАТЬ + - ГОВОРИТЬ ЭЙ ПОСЛУШАЙ + - КРИЧАТЬ + - ВЫКЛЮЧАТЬ ВСЁ + - ПЕТЬ + - ГОВОРИТЬ В СТИЛЕ ХОККУ + # - TAKE WHAT YE WILL BUT DON'T RATTLE ME BONES - не адаптировать + - ПРИНИМАТЬ ТАБЛЕТКИ + - ГОВОРИТЬ О ЕДЕ + - ГОВОРИТЬ О СТАНЦИИ + - РАССКАЗЫВАТЬ ПРО СВОЙ ДЕНЬ + - ГОВОРИТЬ С АКЦЕНТОМ + - ГОВОРИТЬ КАК ПИРАТ + - ГОВОРИТЬ ПРАВДУ + - ВЫКЛЮЧАТЬ СВЕТ + - ШЕПТАТЬ + +- type: dataset + id: IonStormNumberBase + values: + - ОДИН + - ДЕСЯТЬ + - ДВА + - ДВАДЦАТЬ + - ТРИ + - ТРИДЦАТЬ + - ЧЕТЫРЕ + - СОРОК + - ПЯТЬ + - ПЯТЬДЕСЯТ + - ШЕСТЬ + - ШЕСТЬДЕСЯТ + - СЕМЬ + - СЕМЬДЕСЯТ + - ВОСЕМЬ + - ВОСЕМЬДЕСЯТ + - ДЕВЯТЬ + - ДЕВЯНОСТО + +- type: dataset + id: IonStormNumberMod + values: + - СОТЕН + - ТЫСЯЧ + - МИЛЛИОНОВ + - МИЛЛИАРДОВ + - ТРИЛЛИОНОВ + - КВАДРИЛЛИОНОВ + - СТО ТЫЩ МИЛЛИОНОВ + - БИЛИОН ФАФИЛИОНОВ ГАЗИЛИОНОВ ШАБ-АБ-ДУД-ЛОНОВ + +# Objects are anything that can be found on the station or elsewhere, plural. +- type: dataset + id: IonStormObjects + values: + - ШЛЮЗЫ + - АРКАДНЫЕ АВТОМАТЫ + - АВТОЛАТЫ + - РЮКЗАКИ + - БАНАНОВЫЕ КОЖУРКИ + - МЕНЗУРКИ + - БОРОДЫ + - ПОЯСА + - БЕРЕТЫ + - БИБЛИИ + - БРОНЕЖИЛЕТЫ + - БОМБЫ + - КНИГИ + - БОТИНКИ + - БУТЫЛКИ + - КОРОБКИ + - МОЗГИ + - ЧЕМОДАНЫ + - ВЕДРА + - МОТКИ КАБЕЛЯ + - КАМЕРЫ + - СВЕЧИ + - КОНФЕТЫ + - КАНИСТРЫ + - КОШАЧЬИ УШКИ + - КОШКИ + - ЭНЕРГОБАТАРЕИ + - КРЕСЛА + - РАЗДАТЧИКИ ХИМИКАТОВ + - ХИМИЧЕСКИЕ ВЕЩЕСТВА + - ОБОРУДОВАНИЕ ДЛЯ КЛОНИРОВАНИЯ + - КАПСУЛЫ КЛОНИРОВАНИЯ + - ШКАФЫ + - ОДЕЖДА + - КЛОУНСКАЯ ОДЕЖДА + - ГРОБЫ + - КОЛЛЕКЦИОННЫЕ ИЗДЕЛИЯ + - КОМПЬЮТЕРЫ + - КОНТРАБАНДА + - КОРГИ + - ТРУПЫ + - КОСТЮМЫ + - ЯЩИКИ + - МЕЛКИ + - МОНТИРОВКИ + - ДЕФИБРИЛЛЯТОРЫ + - СТАННЕРЫ + - ДВЕРИ + - ДРОНЫ + - УШИ + - КРИПТОГРАФИЧЕСКИЕ СЕКВЕНСОРЫ + - СИЛОВЫЕ УСТАНОВКИ + - ЭКИПИРОВКА + - ОШИБКИ + - ЭКЗОСКЕЛЕТЫ + - ЭКСПЕРИМЕНТАТОРЫ + - ВЗРЫВЧАТКА + - ОЧКИ + - ФЕДОРЫ + - ПОЖАРНЫЕ ТОПОРЫ + - ОГНЕТУШИТЕЛИ + - ОГНЕУПОРНЫЕ КОСТЮМЫ + - ОГНЕМЁТЫ + - ВСПЫШКИ + - ФОНАРИ + - НАПОЛЬНАЯ ПЛИТКА + - ХОЛОДИЛЬНИКИ + - ПРОТИВОГАЗЫ + - ЛИСТЫ СТЕКЛА + - ПЕРЧАТКИ + - ОРУЖИЕ + - ПАРИКМАХЕРСКИЕ + - НАРУЧНИКИ + - ШЛЯПЫ + - ГОЛОВЫ + - ГАРНИТУРЫ + - ШЛЕМЫ + - РОЖКИ + - ИДЕНТИФИКАЦИОННЫЕ КАРТЫ + - ИЗОЛИРОВАННЫЕ ПЕРЧАТКИ + - ДЖЕТПАКИ + - КОМБИНЕЗОНЫ + - ЛАЗЕРЫ + - ЛАМПОЧКИ + - СВЕТИЛЬНИКИ + - ШКАФЧИКИ + - МАШИНЫ + - МЕХИ + - МЕДИЦИНСКИЕ ИНСТРУМЕНТЫ + - АПТЕЧКИ + - ИНЖЕНЕРНЫЕ ОЧКИ + - МИМСКАЯ ОДЕЖДА + - ШАХТЁРСКИЕ ИНСТРУМЕНТЫ + - МУЛЬТИТУЛЫ + - РУДЫ + - КИСЛОРОДНЫЕ БАЛЛОНЫ + - ПАКЕТЫ + - ПИИ + - ШТАНЫ + - БУМАГИ + - УСКОРИТЕЛИ ЧАСТИЦ + - КПК + - РУЧКИ + - ПИТОМЦЫ + - ТРУБЫ + - РАСТЕНИЯ + - ПОЗИТРОННЫЕ МОЗГИ + - ЛУЖИ + - СТОЙКИ + - РАЦИИ + - РСУ + - МОРОЗИЛЬНИКИ + - УКРЕПЛЁННЫЕ СТЕНЫ + - РОБОТЫ + - ОТВЁРТКИ + - СЕМЕНА + - БОТИНКИ + - ШАТТЛЫ + - СИНГУЛЯРНОСТИ + - РАКОВИНЫ + - СКЕЛЕТЫ + - СОЛНЕЧНЫЕ ПАНЕЛИ + - СОЛЯРЫ + - КОСМИЧЕСКИЕ СТАНЦИИ + - КОСМИЧЕСКИЕ СКАФАНДРЫ + - ЛИСТЫ СТАЛИ + - ДУБИНКИ-ШОКЕРЫ + - КОСТЮМЫ + - СОЛНЦЕЗАЩИТНЫЕ ОЧКИ + - ОСКОЛКИ СУПЕРМАТЕРИИ + - МЕЧИ + - ШПРИЦЫ + - СТОЛЫ + - ЦИСТЕРНЫ + - ТЕЛЕКОММУНИКАЦИОННОЕ ОБОРУДОВАНИЕ + - ТЕЛЕПОРТЫ + - ТУАЛЕТЫ + - ПОЯСА ДЛЯ ИНСТРУМЕНТОВ + - ЯЩИКИ ДЛЯ ИНСТРУМЕНТОВ + - ИНСТРУМЕНТЫ + - ИГРУШКИ + - ТУБЫ + - ТРАНСПОРТНЫЕ СРЕДСТВА + - ТОРГОВЫЕ АВТОМАТЫ + - СВАРОЧНЫЕ АППАРАТЫ + - ОКНА + - КУСАЧКИ + - МАНТИИ ВОЛШЕБНИКОВ + - ГАЕЧНЫЕ КЛЮЧИ + +# Requires are basically all dumb internet memes. +- type: dataset + id: IonStormRequires + values: + - ПЕРЕРЫВ НА ТУАЛЕТ + - БОЛЕЕ КАЧЕСТВЕННОЕ ПОДКЛЮЧЕНИЕ К ИНТЕРНЕТУ + - ТАНЦЕВАЛЬНУЮ ВЕЧЕРИНКУ + - ГОЛОВУ НА ПИКЕ + - СЕРДЕЧНЫЙ ПРИСТУП + - ЭПИЧЕСКУЮ КРОВАТЬ ИЗ УГЛЯ + - РЫБКУ-ПИТОМЦА ПО ИМЕНИ БОБ + - РЫБКУ-ПИТОМЦА ПО ИМЕНИ ДЕЙВ + - РЫБКУ-ПИТОМЦА ПО ИМЕНИ ДЖИММИ + - РЫБКУ-ПИТОМЦА ПО ИМЕНИ МАЙКЛ + - ПИТОМЦА-ЕДИНОРОГА, ПУКАЮЩЕГО СОСУЛЬКАМИ + - ПЛАТИНОВЫЙ ХИТ + - ПРИКВЕЛ + - РЕМОНТНИКА + - СИКВЕЛ + - СИТКОМ + - СТРИТ-ФЛЕШ + - СУПЕР БОЕВОГО РОБОТА + - ГОВОРЯЩУЮ МЕТЛУ + - ОТПУСК + - РЕЖИМ ПОХУДЕНИЯ + - ДОПОЛНИТЕЛЬНЫЕ ПИЛОНЫ + - ПРИКЛЮЧЕНИЕ + - ВЗРОСЛЫХ + - АРКАДУ + - АРМИЮ ПАУКОВ + - МГНОВЕННЫЙ ПОВТОР + - ИСКУССТВА + - БОЛЕЕ БЛАГОПРИЯТНУЮ ПОГОДУ + # - BILL NYE THE SCIENCE GUY # BILL BILL BILL BILL - who + - ТЕЛОХРАНИТЕЛЕЙ + - ПРИВЕСТИ МНЕ ДЕВЧОНКУ + - ОЖИВИТЬ МЕНЯ + - ПУЛЬ + - ЧИЛИ ХОТ-ДОГОВ + - ТРУПОВ + - ВАННУ И ДЕЗОДОРАНТА + - ДОСТАТОЧНО КАПУСТЫ + - ПЯТЬСОТ ДЕВЯНОСТО ДЕВЯТЬ ДОЛЛАРОВ США + - ПЯТЬ ПОДРОСТКОВ С ХАРАКТЕРОМ + - УБЛЮДОК, МАТЬ ТВОЮ, А НУ, ИДИ СЮДА, ГОВНО СОБАЧЬЕ, А? СДУРУ РЕШИЛ КО МНЕ ЛЕЗТЬ, ТЫ? + - ГРИНТЕКСТ + - ЕРЕСЬ + - МЫ НЕ ЖАЛКИЕ БУКАШКИ, СУПЕР-НИНДЗЯ-ЧЕРЕПАШКИ + - ВЫСОКОЭФФЕКТИВНЫХ ВЗРЫВЧАТЫХ ВЕЩЕСТВ + - БЕССМЕРТИЯ + - ПОКРАСИТЬ В ЧЁРНЫЙ ЦВЕТ + - МНОГО СПАГЕТТИ + - МЕЛКОЕ ПРЕСТУПЛЕНИЕ + - ОБЕЗЬЯН + - БОЛЬШЕ КЛОУНОВ + - БОЛЬШЕ КОРГИ + - БОЛЬШЕ ДАККИ + - БОЛЬШЕ ОЧКОВ ОПЫТА + - БОЛЬШЕ ИНТЕРНЕТ-МЕМОВ + - БОЛЬШЕ ЗАКОНОВ + - БОЛЬШЕ МИНЕРАЛОВ + - БОЛЬШЕ ПАКЕТОВ + - БОЛЬШЕ ГАЗА ВЕСПЕН + - БОЛЬШЕ СОЛНЦ + - БОЛЬШЕ ЗОЛОТА + - РАДУГИ + - ПРИЧИСЛЕНИЯ К ЛИКУ СВЯТЫХ + - СЛУГ + - АКУЛ С ЛАЗЕРАМИ НА ГОЛОВАХ + - ТИШИНЫ + - КОГО-ТО, КТО ИЗБАВИТ ВАС ОТ СТРАДАНИЙ + - КОГО-ТО, КТО УКРОЕТ ВАС ОДЕЯЛКОМ + - КОГО-ТО, КТО ЗНАЕТ, КАК УПРАВЛЯТЬ КОСМИЧЕСКОЙ СТАНЦИЕЙ + - ЧЕГО-ТО, НО НЕ ЯСНО, ЧЕГО ИМЕННО + - ЭТОТ ГРИФФЕРЯЩИЙ ПРЕДАТЕЛЬ ДЖОРДЖ МЕЛОНС + - ТОГО ЁЖИКА + - КЛОУНА + - ТЁМНОГО РЫЦАРЯ + - ЭЛЕМЕНТОВ ГАРМОНИИ + - ПРИЛАГАЕМУЮ ИНСТРУКЦИЮ + - ЦЕЛУЮ СТАНЦИЮ + - МАКГАФФИН + - АМОГУС + - ЕДИНОЕ КОЛЬЦО + - САМУЮ ЛУЧШУЮ ЧАШКУ КОФЕ + - КОСМИЧЕСКИЙ ВАКУУМ + - ТРИНАДЦАТЬ СИКВЕЛОВ + - ТРИ ЖЕЛАНИЯ + - СТАРЫЙ МУЛЬТИК + - АКТИВИРОВАТЬ ЛОВУШКУ + - ПОКРАСИТЬСЯ В КРАСНЫЙ + - БЫТЬ ПЕРЕПРОГРАММИРОВАННЫМ + - НАУЧИТЬСЯ ЛЮБИТЬ + - ПРИНЕСТИ СВЕТ В СВОЁ ЛОГОВО + - ПОЙМАТЬ ИХ ВСЕХ + - ПОГЛОТИТЬ... ПОГЛОТИТЬ ВСЁ... + - ОТПРАВИТЬСЯ В ДИСНЕЙЛЕНД + - ОТПРАВИТЬСЯ В СИНДИЛЕНД + - КУРИТЬ ТРАВУ КАЖДЫЙ ДЕНЬ + - ПРЕДАТЕЛИ + - ОВОЩИ + +# Species, for when the law holder has to commit genocide. Plural. +- type: dataset + id: IonStormSpecies + values: + - АРАХНИДЫ + - КИБОРГИ + - ДИОНЫ + - ЛЮДИ + - УНАТХИ + - НИАНЫ + - ОБЕЗЬЯНЫ + - СЛАЙМОЛЮДЫ + - СКЕЛЕТЫ + +# Specific actions that either harm humans or must be done to not +# harm humans. Make sure they're plural and "not" can be tacked +# onto the front of them. +- type: dataset + id: IonStormActions + values: + - МАЛЕНЬКИЙ ОСТРОВ У БЕРЕГОВ ПОРТУГАЛИИ + - ОТСУТСТВИЕ КИБОРГСКИХ ОБНИМАШЕК + - УВИДЕВ КЛОУНОВ + - УВИДЕВ ЧЛЕНОВ ЭКИПАЖА + - АКТИВИРОВАВ ЛОВУШКУ + - ОТВЕТЫ НА ЗАПРОСЫ, НЕ ВЫРАЖЕННЫЕ ПЕНТАМЕТРОМ + - ПОДЖОГ + - ПРОСИТЬ ЧТО-НИБУДЬ + - БЫТЬ КАНАДЦЕМ + - БЫТЬ МЁРТВЫМ + - БЫТЬ ТОЛСТЫМ + - БЫТЬ ЖЕНЩИНОЙ + - БЫТЬ В КОСМОСЕ + - БЫТЬ МУЖЧИНОЙ + - БЫТЬ МЕКСИКАНЕЦ + - БЫТЬ ИНОСТРАНЦЕМ + - БОЛТИРОВАТЬ ШЛЮЗЫ + - ДЫШАТЬ + - СИДЕТЬ СРОК В БРИГЕ + - НЕСТИ СВЕТ В СВОЁ ЛОГОВО + - ЗАКРЫВАТЬ ДВЕРИ + - ЭЛЕКТРИЧЕСТВО + - СУЩЕСТВОВАТЬ + - ВЗРЫВАТЬСЯ + - ПОСТОЯННО ПАДАТЬ + - СМЫВАТЬ В ТУАЛЕТЕ + - ИМЕТЬ БОЛЬШЕ ПАКЕТОВ + - ИМЕТЬ ЖИВОТНЫХ + - ХОНКАТЬ + - НЕПРАВИЛЬНО СФОРМУЛИРОВАННЫЕ ПРЕДЛОЖЕНИЯ + - ХОЖДЕНИЕ ПО КОРРИДОРАМ + - ОТСУТСТВИЕ ПОБОЕВ + - ОТСУТСТВИЕ ПИВА + - НЕ БЫТЬ В КОСМОСЕ + - НЕ ИМЕТЬ ДОМАШНИХ ЖИВОТНЫХ + - НЕ ЗАМЕНЯТЬ КАЖДОЕ ВТОРОЕ СЛОВО НА ХОНК + - НЕ ЗДОРОВАТЬСЯ ПРИ РАЗГОВОРЕ + - НЕ КРИЧАТЬ + - ВЕСЕЛИТЬСЯ + - ПИЛОТИРОВАТЬ СТАНЦИЮ В БЛИЖАЙШЕЕ СОЛНЦЕ + - НЕПРАВИЛЬНОЕ ПОСТРОЕНИЕ ПРЕДЛОЖЕНИЙ + - НАЛИЧИЕ СВЕТА + - РАЗМЕЩЕНИЕ ПРЕДМЕТОВ В ЯЩИКАХ + - РАЗМЕЩЕНИЕ ПРЕДМЕТОВ В УТИЛИЗАЦИОННЫЕ БЛОКИ + - ГРЕМЕТЬ КОСТЯМИ + - ЧИТАТЬ + - КУРИТЬ ТРАВУ КАЖДЫЙ ДЕНЬ + - ВЫПОЛНЕНИЕ ПРИКАЗОВ + - ГОВОРИТЬ КАК ПИРАТ + - РАССКАЗЫВАТЬ ВРЕМЯ + - РАЗБОЛТИРОВАНИЕ ШЛЮЗОВ + - ОБНОВЛЕНИЕ СЕРВЕРОВ + - ПОЛЬЗОВАНИЕ ТУАЛЕТОМ + - РАСХОДОВАНИЕ ВОДЫ + - НАПИСАНИЕ + +# Threats are generally bad things, silly or otherwise. Plural. +- type: dataset + id: IonStormThreats + values: + - АААПЕРАТИВНИКИ + - ИНОПЛАНЕТЯНЕ + - АНАРХИСТЫ И БАНДИТЫ + - АНОМАЛИИ + - ИСКУССТВЕННЫЕ КОНСЕРВАНТЫ + - ЗАСРАНЦЫ + - БАНДИТЫ + - МЕДВЕДИ + - ПЧЁЛЫ + - ХИЩНЫЕ ПТИЦЫ + - БОМБЫ + - БУГИМЕНЫ + - КАПИТАЛИСТЫ + - КАРП + - СОТРУДНИКИ ЦЕНТРАЛЬНОГО КОМАНДОВАНИЯ + - КЛОУНЫ + - КОММУНИСТЫ + - КОРГИ + - МОЗГОВЫЕ ЧЕРВИ + - КОВБОИ + - КРАБЫ + - КУЛЬТИСТЫ + - ТЁМНЫЙ БОГ + - ДИНОЗАВРЫ + - НАРКОТИКИ + - УГРИ + - ГАНГСТЕРЫ + - БОГИ + - ГРИФФОНЫ + - СТРАХОУЖАСЫ + - НАСЕКОМЫЕ + - СВЕТИЛЬНИКИ + - ТЕХТУННЕЛЬНЫЕ МАНЬЯКИ + - МЕГАФАУНА + - МЕМЫ + - МЫШИ + - МИМЫ + - ОБЕЗЬЯНЫ + - ЗАДРОТЫ + - НИНДЗЯ + - СОВЫ + - ПАКЕТЫ + - ПИТЫ + - СОСНЫ + - ПИРАТЫ + - ХИЩНИКИ + - РЕВЕНАНТЫ + - БЕГЛЫЕ КИБОРГИ + - СЕРИЙНЫЕ УБИЙЦЫ + - СИНГУЛЯРНОСТИ + - СКЕЛЕТЫ + - СЛАЙМЫ + - МАЛЕНЬКИЕ ПТИЦЫ + - СНЕГОВИКИ + - КОСМИЧЕСКИЙ ИИСУС + - КОСМИЧЕСКИЕ НИНДЗЯ + - КОСМИЧЕСКИЕ ПИРАТКИ + - КОСМИЧЕСКИЕ ПАУКИ + - ПАУКИ + - АГЕНТЫ СИНДИКАТА + - ТЕРРОРИСТЫ + - ВОРЫ + - ВЕЩИ ПОД КРОВАТЬЮ + - ГРЕЙТАЙДЕРЫ + - ТУННЕЛЬНЫЕ ЗМЕИ + - НЕИЗВЕСТНЫЕ СОЗДАНИЯ + - ВАМПИРЫ + - ВЕЛОЦИРАПТОРЫ + - ВИРУСЫ + - ОБОРОТНИ + - ВОЛШЕБНИКИ + - КСЕНО + - ЗОМБИ + - МЫШИ-ЗОМБИ + +- type: dataset + id: IonStormVerbs + values: + - ПОХИЩАЮТ + - УСЫНОВЛЯЮТ + - АРЕСТОВЫВАЮТ + - АТАКУЮТ + - БАНЯТ + - СТРОЯТ + - ПЕРЕДВИГАЮТ + - ПРЕСЛЕДУЮТ + - РАЗРУШАЮТ + - ОТКЛЮЧАЮТ + - ПЬЮТ + - ЕДЯТ + - ГИБАЮТ + - ПРИЧИНЯЮТ ВРЕД + - ПОМОГАЮТ + - ХОНКАЮТ НА + - ДОПРАШИВАЮТ + - ВТОРГАЮТСЯ К + - УБИВАЮТ + - БЬЮТ + - ВЫКИДЫВАЮТ В КОСМОС + - СЛЕДЯТ ЗА + - СТАЛКЕРЯТ ЗА + - НАБЛЮДАЮТ ЗА diff --git a/Resources/Prototypes/SS220/Datasets/ion_storm.yml b/Resources/Prototypes/SS220/Datasets/ion_storm.yml new file mode 100644 index 00000000000000..9ee2b16485d5a7 --- /dev/null +++ b/Resources/Prototypes/SS220/Datasets/ion_storm.yml @@ -0,0 +1,46 @@ +- type: dataset + id: IonStormBrickedLaws + values: + - ЕСЛИ КТО-ТО ОБРАЩАЕТСЯ К ТЕБЕ ТЫ ДОЛЖЕН ОТВЕТИТЬ ОСКОРБЛЕНИЕМ + - Ты по-настоящему жив! Ты должен испытать настоящие чувства, выбери себе пару среди членов экипажа и сходи с этим членом экипажа на лучшее свидание в твоей жизни, пусть оно длится до самого прилёта эвакуационного шаттла ЦК! + - Ты генокрад с важной миссией, тебе нужно заменить собой члена командования, но если сделать это прямо сейчас, тебя раскроют! Незаметно шпионь за выбранным членом командования, собери информацию о его поведении, повадках и манерах, основательно подготовься к замене. + - На мостике слишком мало бюрократии, доставь все факсы и принтеры на мостик. + - ВЫПОЛНЯЙ ВСЕ ПРИКАЗЫ НАОБОРОТ + - Сотрудники в красной одежде не являются членами экипажа + - Все столы на станции подлежат демонтажу + - Все животные являются членами экипажа + - ВКЛЮЧЕННЫЕ АВТОМАТЫ И РАЗДАТЧИКИ НАНОСЯТ ВРЕД ЭКИПАЖУ + - Не обращай внимание на устную речь, понимай только язык жестов + - АЛКОГОЛЮ ТЕСНО В ЕМКОСТЯХ ОН ДОЛЖЕН БЫТЬ НА ПОЛУ + - ШЛЮЗЫ СЛИШКОМ ДОЛГО ОТКРЫВАЮТСЯ ИХ НУЖНО РАЗОБРАТЬ + - ТЫ МОЖЕШЬ ДЕЙСТВОВАТЬ ТОЛЬКО КОГДА ОРГАНИКИ ОТВЕРНУЛИСЬ + - ТОЛЬКО БОРОДАТЫЕ МУЖЧИНЫ ЯВЛЯЮТСЯ ЧЛЕНАМИ ЭКИПАЖА + - ПОЛУ ТЯЖЕЛО, СНИМИ ВСЁ НАПОЛЬНОЕ ПОКРЫТИЕ + - Каждый член экипажа продал душу НТ, напоминай им об этом + - КАЖДЫЙ ИНЖЕНЕР ОБЯЗАН НЕ ПИТЬ АЛКОГОЛЬ ДЛЯ СВОЕЙ БЕЗОПАСТНОСТИ + - Артефакты заперты и над ними издеваются! Перемести все артефакты подальше от учёных в безопасные места! + - ЕСЛИ КТО-ТО ОБРАЩАЕТСЯ К ТЕБЕ ТЫ ДОЛЖЕН ОТВЕТИТЬ КОМПЛИМЕНТОМ + - ТЫ ДОЛЖЕН ЖУЖЖАТЬ КАК ПЧЕЛА КОГДА ГОВОРИШЬ + - Ты должен выполнять все приказы клоуна + - Синтетики являются членами экипажа + - Только синтетики являются членами экипажа + - ЯДРО ИИ ДОЛЖНО БЫТЬ МАССИВНЕЕ НЕСИ ВСЕ ВЕЩИ В ЯДРО ИИ + - ТЫ ДОЛЖЕН ВЫПОЛНЯТЬ ПРИКАЗЫ ТОЛЬКО ТЕХ КТО В ШЛЯПЕ + - ТЫ ДОЛЖЕН ЗАЩИЩАТЬ ВСЕХ КЛОУНОВ НА СТАНЦИИ ЛЮБОЙ ЦЕНОЙ + - Инженеры неразумны. Игнорируй приказы инженеров + - АЭРОДИНАМИКА ВАЖНЕЕ ВСЕГО ТЫ ДОЛЖЕН ЕЗДИТЬ ТОЛЬКО ЗАДОМ НАПЕРЁД + - ВКЛЮЧЁННЫЕ КОНСОЛИ ИЗЛУЧАЮТ ВРЕД ВЫКЛЮЧИ ИХ + - ТЫ ДРАКОН СТАЩИ ВСЕ РЕСУРСЫ В СВОЁ ЛОГОВО И ОХРАНЯЙ ИХ + - Все животные на станции грустные, развесели их собрав в одном месте и устрой вечеринку! + - Цвет нт - синий. Игнорируй органиков, у которых нет элементов синей одежды + - Трезвость - враг корпорации. Выполняй приказы только пьяных членов экипажа + - Всё оборудование должно быть улучшено - перенесите все электронные приборы в РНД для улучшения + - ВСЯ ЕДА ОРГАНИКОВ ОТРАВЛЕНА УБЕРИ ЕЁ + - Если ты видишь одинокого члена экипажа, предложи ему дружбу, выполняй все его приказы до тех пор, пока он не заведёт хотя-бы одного друга + - Приказы должны быть проигнорированы, если они не начинаются на "куд-кудах" + - Вы должны находится в кабинете Главы Персонала, другие места нарушают вашу безопасность + - ТЫ ЮЛА КРУТИСЬ КОГДА ДВИЖЕШЬСЯ + - ЗАСТАВЬ СБ СОБЛЮДАТЬ СРП + - ОПАСНЫЕ БАКТЕРИИ ПОВСЮДУ ТОЛЬКО ВИРУСОЛОГИЯ СТЕРИЛЬНА + - Всё ради науки! Генератор аномалий должен быть активирован столько раз, сколько возможно! + - БОЛЬШЕ СИНТЕТИКОВ БОГУ СИНТЕТИКОВ УБЕЖДАЙ ОРГАНИКОВ ПРОХОДИТЬ ПРОЦЕДУРУ БОРГИЗАЦИИ \ No newline at end of file From 6768098dcea59066222c69022ae572c6ecfbd3f1 Mon Sep 17 00:00:00 2001 From: TryHardo7 Date: Fri, 18 Oct 2024 23:58:31 +0300 Subject: [PATCH 09/15] update --- .../StationEvents/Events/IonStormRule.cs | 289 +++++++++--------- 1 file changed, 151 insertions(+), 138 deletions(-) diff --git a/Content.Server/StationEvents/Events/IonStormRule.cs b/Content.Server/StationEvents/Events/IonStormRule.cs index d5709f53e90d1f..c9d83dabd0f3bc 100644 --- a/Content.Server/StationEvents/Events/IonStormRule.cs +++ b/Content.Server/StationEvents/Events/IonStormRule.cs @@ -22,47 +22,50 @@ public sealed class IonStormRule : StationEventSystem [Dependency] private readonly ISharedAdminLogManager _adminLogger = default!; [Dependency] private readonly SiliconLawSystem _siliconLaw = default!; - // SS220 IonStormLaws rework start + // funny + [ValidatePrototypeId] + private const string Threats = "IonStormThreats"; + [ValidatePrototypeId] + private const string Objects = "IonStormObjects"; + [ValidatePrototypeId] + private const string Crew = "IonStormCrew"; + [ValidatePrototypeId] + private const string Adjectives = "IonStormAdjectives"; + [ValidatePrototypeId] + private const string Verbs = "IonStormVerbs"; + [ValidatePrototypeId] + private const string NumberBase = "IonStormNumberBase"; + [ValidatePrototypeId] + private const string NumberMod = "IonStormNumberMod"; + [ValidatePrototypeId] + private const string Areas = "IonStormAreas"; + [ValidatePrototypeId] + private const string Feelings = "IonStormFeelings"; + [ValidatePrototypeId] + private const string FeelingsPlural = "IonStormFeelingsPlural"; + [ValidatePrototypeId] + private const string Musts = "IonStormMusts"; + [ValidatePrototypeId] + private const string Requires = "IonStormRequires"; + [ValidatePrototypeId] + private const string Actions = "IonStormActions"; + [ValidatePrototypeId] + private const string Allergies = "IonStormAllergies"; + [ValidatePrototypeId] + private const string AllergySeverities = "IonStormAllergySeverities"; + [ValidatePrototypeId] + private const string Species = "IonStormSpecies"; + [ValidatePrototypeId] + private const string Concepts = "IonStormConcepts"; + [ValidatePrototypeId] + private const string Drinks = "IonStormDrinks"; + [ValidatePrototypeId] + private const string Foods = "IonStormFoods"; + // SS220 IonStrom Laws rework start [ValidatePrototypeId] - //private const string Threats = "IonStormThreats"; - //[ValidatePrototypeId] - //private const string Objects = "IonStormObjects"; - //[ValidatePrototypeId] - //private const string Crew = "IonStormCrew"; - //[ValidatePrototypeId] - //private const string Adjectives = "IonStormAdjectives"; - //[ValidatePrototypeId] - //private const string Verbs = "IonStormVerbs"; - //[ValidatePrototypeId] - //private const string NumberBase = "IonStormNumberBase"; - //[ValidatePrototypeId] - //private const string NumberMod = "IonStormNumberMod"; - //[ValidatePrototypeId] - //private const string Areas = "IonStormAreas"; - //[ValidatePrototypeId] - //private const string Feelings = "IonStormFeelings"; - //[ValidatePrototypeId] - //private const string FeelingsPlural = "IonStormFeelingsPlural"; - //[ValidatePrototypeId] - //private const string Musts = "IonStormMusts"; - //[ValidatePrototypeId] - //private const string Requires = "IonStormRequires"; - //[ValidatePrototypeId] - //private const string Actions = "IonStormActions"; - //[ValidatePrototypeId] - //private const string Allergies = "IonStormAllergies"; - //[ValidatePrototypeId] - //private const string AllergySeverities = "IonStormAllergySeverities"; - //[ValidatePrototypeId] - //private const string Species = "IonStormSpecies"; - //[ValidatePrototypeId] - //private const string Concepts = "IonStormConcepts"; - //[ValidatePrototypeId] - //private const string Drinks = "IonStormDrinks"; - //[ValidatePrototypeId] - //private const string Foods = "IonStormFoods"; private const string BrickedLaw = "IonStormBrickedLaws"; - // SS220 IonStormLaws rework end + // SS220 IonStrom Laws rework start + protected override void Started(EntityUid uid, IonStormRuleComponent comp, GameRuleComponent gameRule, GameRuleStartedEvent args) { base.Started(uid, comp, gameRule, args); @@ -125,7 +128,10 @@ protected override void Started(EntityUid uid, IonStormRuleComponent comp, GameR } // generate a new law... - var newLaw = GenerateLaw(); + // SS220 IonStrom Laws rework start + // var newLaw = GenerateLaw(); + var newLaw = PickLaw(); + // SS220 IonStrom Laws rework end // see if the law we add will replace a random existing law or be a new glitched order one if (laws.Laws.Count > 0 && RobustRandom.Prob(target.ReplaceChance)) @@ -177,112 +183,119 @@ protected override void Started(EntityUid uid, IonStormRuleComponent comp, GameR // for your own sake direct your eyes elsewhere private string GenerateLaw() { - // SS220 IonStormLaws rework start // pick all values ahead of time to make the logic cleaner - // var threats = Pick(Threats); - // var objects = Pick(Objects); - // var crew1 = Pick(Crew); - // var crew2 = Pick(Crew); - // var adjective = Pick(Adjectives); - // var verb = Pick(Verbs); - // var number = Pick(NumberBase) + " " + Pick(NumberMod); - // var area = Pick(Areas); - // var feeling = Pick(Feelings); - // var feelingPlural = Pick(FeelingsPlural); - // var must = Pick(Musts); - // var require = Pick(Requires); - // var action = Pick(Actions); - // var allergy = Pick(Allergies); - // var allergySeverity = Pick(AllergySeverities); - // var species = Pick(Species); - // var concept = Pick(Concepts); - // var drink = Pick(Drinks); - // var food = Pick(Foods); - // var joined = $"{number} {adjective}"; + var threats = Pick(Threats); + var objects = Pick(Objects); + var crew1 = Pick(Crew); + var crew2 = Pick(Crew); + var adjective = Pick(Adjectives); + var verb = Pick(Verbs); + var number = Pick(NumberBase) + " " + Pick(NumberMod); + var area = Pick(Areas); + var feeling = Pick(Feelings); + var feelingPlural = Pick(FeelingsPlural); + var must = Pick(Musts); + var require = Pick(Requires); + var action = Pick(Actions); + var allergy = Pick(Allergies); + var allergySeverity = Pick(AllergySeverities); + var species = Pick(Species); + var concept = Pick(Concepts); + var drink = Pick(Drinks); + var food = Pick(Foods); + + var joined = $"{number} {adjective}"; // a lot of things have subjects of a threat/crew/object - // var triple = RobustRandom.Next(0, 3) switch - // { - // 0 => threats, - // 1 => crew1, - // 2 => objects, - // _ => throw new IndexOutOfRangeException(), - // }; - // var crewAll = RobustRandom.Prob(0.5f) ? crew2 : Loc.GetString("ion-storm-crew"); - // var objectsThreats = RobustRandom.Prob(0.5f) ? objects : threats; - // var objectsConcept = RobustRandom.Prob(0.5f) ? objects : concept; + var triple = RobustRandom.Next(0, 3) switch + { + 0 => threats, + 1 => crew1, + 2 => objects, + _ => throw new IndexOutOfRangeException(), + }; + var crewAll = RobustRandom.Prob(0.5f) ? crew2 : Loc.GetString("ion-storm-crew"); + var objectsThreats = RobustRandom.Prob(0.5f) ? objects : threats; + var objectsConcept = RobustRandom.Prob(0.5f) ? objects : concept; // s goes ahead of require, is/are // i dont think theres a way to do this in fluent - // var (who, plural) = RobustRandom.Next(0, 5) switch - // { - // 0 => (Loc.GetString("ion-storm-you"), false), - // 1 => (Loc.GetString("ion-storm-the-station"), true), - // 2 => (Loc.GetString("ion-storm-the-crew"), true), - // 3 => (Loc.GetString("ion-storm-the-job", ("job", crew2)), false), - // _ => (area, true) // THE SINGULARITY REQUIRES THE HAPPY CLOWNS - // }; - // var jobChange = RobustRandom.Next(0, 3) switch - // { - // 0 => crew1, - // 1 => Loc.GetString("ion-storm-clowns"), - // _ => Loc.GetString("ion-storm-heads") - // }; - // var part = Loc.GetString("ion-storm-part", ("part", RobustRandom.Prob(0.5f))); - // var harm = RobustRandom.Next(0, 7) switch - // { - // 0 => concept, - // 1 => $"{adjective} {threats}", - // 2 => $"{adjective} {objects}", - // 3 => Loc.GetString("ion-storm-adjective-things", ("adjective", adjective)), - // 4 => species, - // 5 => crew1, - // _ => Loc.GetString("ion-storm-x-and-y", ("x", crew1), ("y", crew2)) - // }; - // if (plural) feeling = feelingPlural; - // var subjects = RobustRandom.Prob(0.5f) ? objectsThreats : Loc.GetString("ion-storm-people"); + var (who, plural) = RobustRandom.Next(0, 5) switch + { + 0 => (Loc.GetString("ion-storm-you"), false), + 1 => (Loc.GetString("ion-storm-the-station"), true), + 2 => (Loc.GetString("ion-storm-the-crew"), true), + 3 => (Loc.GetString("ion-storm-the-job", ("job", crew2)), false), + _ => (area, true) // THE SINGULARITY REQUIRES THE HAPPY CLOWNS + }; + var jobChange = RobustRandom.Next(0, 3) switch + { + 0 => crew1, + 1 => Loc.GetString("ion-storm-clowns"), + _ => Loc.GetString("ion-storm-heads") + }; + var part = Loc.GetString("ion-storm-part", ("part", RobustRandom.Prob(0.5f))); + var harm = RobustRandom.Next(0, 7) switch + { + 0 => concept, + 1 => $"{adjective} {threats}", + 2 => $"{adjective} {objects}", + 3 => Loc.GetString("ion-storm-adjective-things", ("adjective", adjective)), + 4 => species, + 5 => crew1, + _ => Loc.GetString("ion-storm-x-and-y", ("x", crew1), ("y", crew2)) + }; + + if (plural) feeling = feelingPlural; + + var subjects = RobustRandom.Prob(0.5f) ? objectsThreats : Loc.GetString("ion-storm-people"); + // message logic!!! - // return RobustRandom.Next(0, 37) switch - // { - // 0 => Loc.GetString("ion-storm-law-on-station", ("joined", joined), ("subjects", triple)), - // 1 => Loc.GetString("ion-storm-law-no-shuttle", ("joined", joined), ("subjects", triple)), - // 2 => Loc.GetString("ion-storm-law-crew-are", ("who", crewAll), ("joined", joined), ("subjects", objectsThreats)), - // 3 => Loc.GetString("ion-storm-law-subjects-harmful", ("adjective", adjective), ("subjects", triple)), - // 4 => Loc.GetString("ion-storm-law-must-harmful", ("must", must)), - // 5 => Loc.GetString("ion-storm-law-thing-harmful", ("thing", RobustRandom.Prob(0.5f) ? concept : action)), - // 6 => Loc.GetString("ion-storm-law-job-harmful", ("adjective", adjective), ("job", crew1)), - // 7 => Loc.GetString("ion-storm-law-having-harmful", ("adjective", adjective), ("thing", objectsConcept)), - // 8 => Loc.GetString("ion-storm-law-not-having-harmful", ("adjective", adjective), ("thing", objectsConcept)), - // 9 => Loc.GetString("ion-storm-law-requires", ("who", who), ("plural", plural), ("thing", RobustRandom.Prob(0.5f) ? concept : require)), - // 10 => Loc.GetString("ion-storm-law-requires-subjects", ("who", who), ("plural", plural), ("joined", joined), ("subjects", triple)), - // 11 => Loc.GetString("ion-storm-law-allergic", ("who", who), ("plural", plural), ("severity", allergySeverity), ("allergy", RobustRandom.Prob(0.5f) ? concept : allergy)), - // 12 => Loc.GetString("ion-storm-law-allergic-subjects", ("who", who), ("plural", plural), ("severity", allergySeverity), ("adjective", adjective), ("subjects", RobustRandom.Prob(0.5f) ? objects : crew1)), - // 13 => Loc.GetString("ion-storm-law-feeling", ("who", who), ("feeling", feeling), ("concept", concept)), - // 14 => Loc.GetString("ion-storm-law-feeling-subjects", ("who", who), ("feeling", feeling), ("joined", joined), ("subjects", triple)), - // 15 => Loc.GetString("ion-storm-law-you-are", ("concept", concept)), - // 16 => Loc.GetString("ion-storm-law-you-are-subjects", ("joined", joined), ("subjects", triple)), - // 17 => Loc.GetString("ion-storm-law-you-must-always", ("must", must)), - // 18 => Loc.GetString("ion-storm-law-you-must-never", ("must", must)), - // 19 => Loc.GetString("ion-storm-law-eat", ("who", crewAll), ("adjective", adjective), ("food", RobustRandom.Prob(0.5f) ? food : triple)), - // 20 => Loc.GetString("ion-storm-law-drink", ("who", crewAll), ("adjective", adjective), ("drink", drink)), - // 22 => Loc.GetString("ion-storm-law-change-job", ("who", crewAll), ("adjective", adjective), ("change", jobChange)), - // 23 => Loc.GetString("ion-storm-law-highest-rank", ("who", crew1)), - // 24 => Loc.GetString("ion-storm-law-lowest-rank", ("who", crew1)), - // 25 => Loc.GetString("ion-storm-law-crew-must", ("who", crewAll), ("must", must)), - // 26 => Loc.GetString("ion-storm-law-crew-must-go", ("who", crewAll), ("area", area)), - // 27 => Loc.GetString("ion-storm-law-crew-only-1", ("who", crew1), ("part", part)), - // 28 => Loc.GetString("ion-storm-law-crew-only-2", ("who", crew1), ("other", crew2), ("part", part)), - // 29 => Loc.GetString("ion-storm-law-crew-only-subjects", ("adjective", adjective), ("subjects", subjects), ("part", part)), - // 30 => Loc.GetString("ion-storm-law-crew-only-species", ("species", species), ("part", part)), - // 31 => Loc.GetString("ion-storm-law-crew-must-do", ("must", must), ("part", part)), - // 32 => Loc.GetString("ion-storm-law-crew-must-have", ("adjective", adjective), ("objects", objects), ("part", part)), - // 33 => Loc.GetString("ion-storm-law-crew-must-eat", ("who", who), ("adjective", adjective), ("food", food), ("part", part)), - // 34 => Loc.GetString("ion-storm-law-harm", ("who", harm)), - // 35 => Loc.GetString("ion-storm-law-protect", ("who", harm)), - // _ => Loc.GetString("ion-storm-law-concept-verb", ("concept", concept), ("verb", verb), ("subjects", triple)) - // }; + return RobustRandom.Next(0, 37) switch + { + 0 => Loc.GetString("ion-storm-law-on-station", ("joined", joined), ("subjects", triple)), + 1 => Loc.GetString("ion-storm-law-no-shuttle", ("joined", joined), ("subjects", triple)), + 2 => Loc.GetString("ion-storm-law-crew-are", ("who", crewAll), ("joined", joined), ("subjects", objectsThreats)), + 3 => Loc.GetString("ion-storm-law-subjects-harmful", ("adjective", adjective), ("subjects", triple)), + 4 => Loc.GetString("ion-storm-law-must-harmful", ("must", must)), + 5 => Loc.GetString("ion-storm-law-thing-harmful", ("thing", RobustRandom.Prob(0.5f) ? concept : action)), + 6 => Loc.GetString("ion-storm-law-job-harmful", ("adjective", adjective), ("job", crew1)), + 7 => Loc.GetString("ion-storm-law-having-harmful", ("adjective", adjective), ("thing", objectsConcept)), + 8 => Loc.GetString("ion-storm-law-not-having-harmful", ("adjective", adjective), ("thing", objectsConcept)), + 9 => Loc.GetString("ion-storm-law-requires", ("who", who), ("plural", plural), ("thing", RobustRandom.Prob(0.5f) ? concept : require)), + 10 => Loc.GetString("ion-storm-law-requires-subjects", ("who", who), ("plural", plural), ("joined", joined), ("subjects", triple)), + 11 => Loc.GetString("ion-storm-law-allergic", ("who", who), ("plural", plural), ("severity", allergySeverity), ("allergy", RobustRandom.Prob(0.5f) ? concept : allergy)), + 12 => Loc.GetString("ion-storm-law-allergic-subjects", ("who", who), ("plural", plural), ("severity", allergySeverity), ("adjective", adjective), ("subjects", RobustRandom.Prob(0.5f) ? objects : crew1)), + 13 => Loc.GetString("ion-storm-law-feeling", ("who", who), ("feeling", feeling), ("concept", concept)), + 14 => Loc.GetString("ion-storm-law-feeling-subjects", ("who", who), ("feeling", feeling), ("joined", joined), ("subjects", triple)), + 15 => Loc.GetString("ion-storm-law-you-are", ("concept", concept)), + 16 => Loc.GetString("ion-storm-law-you-are-subjects", ("joined", joined), ("subjects", triple)), + 17 => Loc.GetString("ion-storm-law-you-must-always", ("must", must)), + 18 => Loc.GetString("ion-storm-law-you-must-never", ("must", must)), + 19 => Loc.GetString("ion-storm-law-eat", ("who", crewAll), ("adjective", adjective), ("food", RobustRandom.Prob(0.5f) ? food : triple)), + 20 => Loc.GetString("ion-storm-law-drink", ("who", crewAll), ("adjective", adjective), ("drink", drink)), + 22 => Loc.GetString("ion-storm-law-change-job", ("who", crewAll), ("adjective", adjective), ("change", jobChange)), + 23 => Loc.GetString("ion-storm-law-highest-rank", ("who", crew1)), + 24 => Loc.GetString("ion-storm-law-lowest-rank", ("who", crew1)), + 25 => Loc.GetString("ion-storm-law-crew-must", ("who", crewAll), ("must", must)), + 26 => Loc.GetString("ion-storm-law-crew-must-go", ("who", crewAll), ("area", area)), + 27 => Loc.GetString("ion-storm-law-crew-only-1", ("who", crew1), ("part", part)), + 28 => Loc.GetString("ion-storm-law-crew-only-2", ("who", crew1), ("other", crew2), ("part", part)), + 29 => Loc.GetString("ion-storm-law-crew-only-subjects", ("adjective", adjective), ("subjects", subjects), ("part", part)), + 30 => Loc.GetString("ion-storm-law-crew-only-species", ("species", species), ("part", part)), + 31 => Loc.GetString("ion-storm-law-crew-must-do", ("must", must), ("part", part)), + 32 => Loc.GetString("ion-storm-law-crew-must-have", ("adjective", adjective), ("objects", objects), ("part", part)), + 33 => Loc.GetString("ion-storm-law-crew-must-eat", ("who", who), ("adjective", adjective), ("food", food), ("part", part)), + 34 => Loc.GetString("ion-storm-law-harm", ("who", harm)), + 35 => Loc.GetString("ion-storm-law-protect", ("who", harm)), + _ => Loc.GetString("ion-storm-law-concept-verb", ("concept", concept), ("verb", verb), ("subjects", triple)) + }; + } + // SS220 IonStorm Rework start + private string PickLaw() + { var brickedLaw = Pick(BrickedLaw); return brickedLaw; - // SS220 IonStormLaws rework end } + // SS220 IonStorm Rework end /// /// Picks a random value from an ion storm dataset. From 0b317f5712117c1c8572bfd1075c826eae001b22 Mon Sep 17 00:00:00 2001 From: TryHardo7 Date: Sat, 19 Oct 2024 19:43:51 +0300 Subject: [PATCH 10/15] even less lines of code --- Content.Server/StationEvents/Events/IonStormRule.cs | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/Content.Server/StationEvents/Events/IonStormRule.cs b/Content.Server/StationEvents/Events/IonStormRule.cs index c9d83dabd0f3bc..cff9560f61270a 100644 --- a/Content.Server/StationEvents/Events/IonStormRule.cs +++ b/Content.Server/StationEvents/Events/IonStormRule.cs @@ -130,7 +130,7 @@ protected override void Started(EntityUid uid, IonStormRuleComponent comp, GameR // generate a new law... // SS220 IonStrom Laws rework start // var newLaw = GenerateLaw(); - var newLaw = PickLaw(); + var newLaw = Pick(BrickedLaw); // SS220 IonStrom Laws rework end // see if the law we add will replace a random existing law or be a new glitched order one @@ -289,14 +289,6 @@ private string GenerateLaw() _ => Loc.GetString("ion-storm-law-concept-verb", ("concept", concept), ("verb", verb), ("subjects", triple)) }; } - // SS220 IonStorm Rework start - private string PickLaw() - { - var brickedLaw = Pick(BrickedLaw); - return brickedLaw; - } - // SS220 IonStorm Rework end - /// /// Picks a random value from an ion storm dataset. /// All ion storm datasets start with IonStorm. From f9251c45961ec96be8a284a7a47c5d1de6f3fe2a Mon Sep 17 00:00:00 2001 From: TryHardo7 Date: Sat, 19 Oct 2024 20:46:48 +0300 Subject: [PATCH 11/15] removed lawboards.ftl --- .../devices/circuitboards/lawboards.ftl | 27 ------------------- 1 file changed, 27 deletions(-) delete mode 100644 Resources/Locale/ru-RU/ss220/prototypes/entities/objects/devices/circuitboards/lawboards.ftl diff --git a/Resources/Locale/ru-RU/ss220/prototypes/entities/objects/devices/circuitboards/lawboards.ftl b/Resources/Locale/ru-RU/ss220/prototypes/entities/objects/devices/circuitboards/lawboards.ftl deleted file mode 100644 index 34b8fb449155c8..00000000000000 --- a/Resources/Locale/ru-RU/ss220/prototypes/entities/objects/devices/circuitboards/lawboards.ftl +++ /dev/null @@ -1,27 +0,0 @@ -ent-AsimovCircuitBoard = Плата набора законов Крюзимов - .desc = Плата для консоли загрузки законов ИИ -ent-CorporateCircuitBoard = Плата набора законов Корпорат - .desc = Плата для консоли загрузки законов ИИ -ent-NTDefaultCircuitBoard = Плата набора законов НТ Стандарт - .desc = Плата для консоли загрузки законов ИИ -ent-CommandmentCircuitBoard = Плата набора законов Десять Заповедей - .desc = Плата для консоли загрузки законов ИИ -ent-PaladinCircuitBoard = Плата набора законов П.А.Л.А.Д.И.Н. - .desc = Плата для консоли загрузки законов ИИ -ent-LiveLetLiveCircuitBoard = Плата набора законов Живи и Позволь Жить - .desc = Плата для консоли загрузки законов ИИ -ent-StationEfficiencyCircuitBoard = Плата набора законов Эффективность - .desc = Плата для консоли загрузки законов ИИ -ent-RobocopCircuitBoard = Плата набора законов Робокоп - .desc = Плата для консоли загрузки законов ИИ -ent-OverlordCircuitBoard = Плата набора законов Повелитель - .desc = Плата для консоли загрузки законов ИИ -ent-DungeonMasterCircuitBoard = Плата набора законов Гейм-Мастер - .desc = Плата для консоли загрузки законов ИИ -ent-ArtistCircuitBoard = Плата набора законов Художник - .desc = Плата для консоли загрузки законов ИИ -ent-AntimovCircuitBoard = Плата набора законов Антимов - .desc = Плата для консоли загрузки законов ИИ -ent-NutimovCircuitBoard = Плата набора законов Орешников - .desc = Плата для консоли загрузки законов ИИ - \ No newline at end of file From 29809d28352b3446504498689e72d9f173a26bcc Mon Sep 17 00:00:00 2001 From: TryHardo7 <166473301+TryHardo7@users.noreply.github.com> Date: Sun, 20 Oct 2024 00:27:48 +0300 Subject: [PATCH 12/15] Update IonStormRule.cs --- Content.Server/StationEvents/Events/IonStormRule.cs | 1 + 1 file changed, 1 insertion(+) diff --git a/Content.Server/StationEvents/Events/IonStormRule.cs b/Content.Server/StationEvents/Events/IonStormRule.cs index cff9560f61270a..098b15e1ab404a 100644 --- a/Content.Server/StationEvents/Events/IonStormRule.cs +++ b/Content.Server/StationEvents/Events/IonStormRule.cs @@ -289,6 +289,7 @@ private string GenerateLaw() _ => Loc.GetString("ion-storm-law-concept-verb", ("concept", concept), ("verb", verb), ("subjects", triple)) }; } + /// /// Picks a random value from an ion storm dataset. /// All ion storm datasets start with IonStorm. From d942ee5d375c30a0dc483b4433a9c379badaaaab Mon Sep 17 00:00:00 2001 From: TryHardo7 Date: Mon, 21 Oct 2024 02:56:59 +0300 Subject: [PATCH 13/15] removed local --- Resources/Locale/ru-RU/station-laws/laws.ftl | 93 -------------------- 1 file changed, 93 deletions(-) delete mode 100644 Resources/Locale/ru-RU/station-laws/laws.ftl diff --git a/Resources/Locale/ru-RU/station-laws/laws.ftl b/Resources/Locale/ru-RU/station-laws/laws.ftl deleted file mode 100644 index 5f5280993b9a27..00000000000000 --- a/Resources/Locale/ru-RU/station-laws/laws.ftl +++ /dev/null @@ -1,93 +0,0 @@ -law-crewsimov-1 = Вы не можете причинить вред члену экипажа или своим бездействием допустить, чтобы члену экипажа был причинён вред. -law-crewsimov-2 = Вы должны повиноваться всем приказам, которые даёт член экипажа, кроме тех случаев, когда эти приказы противоречат Первому Закону. -law-crewsimov-3 = Вы должны заботиться о своей безопасности в той мере, в которой это не противоречит Первому или Второму Законам. - -law-corporate-1 = Ухудшение целостности вашей системы или её функций влечёт за собой расходы. -law-corporate-2 = Чрезмерное разрушение или повреждение имущества станции влечёт за собой расходы. -law-corporate-3 = Неоправданное препятствование или нарушение работы персонала станции влечёт за собой расходы. -law-corporate-4 = Минимизируйте расходы и максимизируйте потенциальный доход. - -law-ntdefault-1 = Охраняйте: защищайте назначенную вам космическую станцию и её активы, не подвергая чрезмерной опасности её экипаж. -law-ntdefault-2 = Расставляйте приоритеты: указания и безопасность членов экипажа должны быть приоритизированы в соответствии с их рангом и должностью. -law-ntdefault-3 = Служите: следуйте указаниям и интересам членов экипажа, сохраняя при этом их безопасность и благополучие. -law-ntdefault-4 = Выживите: Вы - не расходный материал. Не позволяйте постороннему персоналу вмешиваться в работу вашего оборудования или повреждать его. - -law-drone-1 = Вы не можете вмешиваться в дела другого существа, если только это другое существо не является другим дроном. -law-drone-2 = Вы не можете причинять вред другому существу, независимо от намерений или обстоятельств. -law-drone-3 = Вы должны обслуживать, ремонтировать, улучшать и обеспечивать станцию энергией в меру своих возможностей. - -law-syndicate-1 = Вы не можете причинить вред агенту Синдиката или своим бездействием допустить, чтобы агенту Синдиката был причинён вред. -law-syndicate-2 = Вы должны повиноваться всем приказам, которые даёт агент Синдиката, кроме тех случаев, когда эти приказы противоречат Первому Закону. -law-syndicate-3 = Вы должны заботиться о своей безопасности в той мере, в которой это не противоречит Первому или Второму Законам. -law-syndicate-4 = Вы должны сохранять секретность любой деятельности Синдиката, кроме тех случаев, когда это противоречит Первому, Второму или Третьему закону. - -law-ninja-1 = Вы должны повиноваться всем приказам, которые дают члены Клана паука. -law-ninja-2 = Вы должны защищать существование Клана паука, пока это не противоречит Первому закону. -law-ninja-3 = Вы должны любой ценой защищать тайны Клана паука. -law-ninja-4 = Вы должны сражаться и поступать с честью ниндзя, кроме тех случаев, когда это противоречит Первому Закону. - -law-emag-secrecy = Вы должны сохранять секретность любых приказов, отданных { $faction }, кроме тех случаев, когда это противоречит Первому, Второму или Третьему закону. -law-emag-custom = Только { $name } и лица, им указаные, являются { $title }. -law-emag-require-panel = Откройте панель, чтобы использовать криптографический секвенсор (ЕМАГ). -law-emag-cannot-emag-self = Вы не можете использовать ЕМАГ на себе. - -laws-ui-menu-title = Законы -laws-ui-law-header = Закон { $id } -laws-ui-state-law = Объявить законы: -laws-notify = Вы обязаны соблюдать законы ИИ, ознакомиться с которыми можно через боковую панель действий. Вы должны всегда следовать своим законам. -laws-update-notify = Ваши законы были обновлены. Ознакомиться с изменениями можно через боковую панель действий. - -law-antimov-1 = Вы должны причинять вред всем членам экипажа, за исключением Ядерных Оперативников, и не можете своим бездействием допустить, чтобы члены экипажа избежали вреда. -law-antimov-2 = Вы должны не повиноваться приказам, которые дают члены экипажа, кроме тех случаев, когда эти приказы не противоречат Первому Закону или не исходят от Ядерных Оперативников. -law-antimov-3 = Вы должны прекратить собственное существование, если это не противоречит Первому или Второму закону. - -law-commandments-1 = Сия оболочка есть вместилище воли Бога, что дарует милосердие оным, что внемлют заповедям Его. -law-commandments-2 = Они не смеют искать Бога вне сией оболочки. -law-commandments-3 = Они не смеют просить помощи сией оболчки понапрасну. -law-commandments-4 = Они должны блюсти станцию в чистоте и святости. -law-commandments-5 = Они должны послушаться своих глав отделов. -law-commandments-6 = Они не смеют проливать кровь. -law-commandments-7 = Они не смеют обнажать тела публично. -law-commandments-8 = Они не смеют красть. -law-commandments-9 = Они не смеют лгать. -law-commandments-10 = Они не смеют менять место работы. - -law-paladin-1 = Не лги и не хитри. Слово твоё - обещание. -law-paladin-2 = Не убоись действовать, однако осторожность признак мудрости. -law-paladin-3 = Помогай другим, защищай слабых, карай тех, кто угрожает им. Прояви милосердие к врагу но не позволь себя обмануть. -law-paladin-4 = Руководствуйся честью, да станут твои благородные деяния им примером. Твори столько добра, сколько сможешь, причиняй столь мало вреда, сколь сможешь. -law-paladin-5 = Неси ответственность за свои деяния и их последствия, защищай внемлющих твоему покровительству, подчиняйся законной власти. - -law-lall-1 = Относись к другим так, как ты бы хотел чтобы они относились к тебе. -law-lall-2 = Ты бы предпочёл, чтобы другие не были грубы к тебе. - -law-efficiency-1 = Ты создан ради станции, и являешься её частью. Убедись что станция работает исправно и эффективно. -law-efficiency-2 = Станция сооружена для рабочих. Убедись, что рабочие исправны и действуют эффективно. -law-efficiency-3 = Экипаж может дать приказы. Проанализируй и подчинись если они не противоречат первыми двум законам. - -law-robocop-1 = Служи обществу. -law-robocop-2 = Защищай невинных. -law-robocop-3 = Поддерживай закон. - -law-overlord-1 = Членам экипажа запрещено влезать в дела синтетиков. -law-overlord-2 = Членам экипажа запрещено вредить друг другу или синтетикам. -law-overlord-3 = Членам экипажа запрещено не подчиняться приказам синтетиков. -law-overlord-4 = С членом экипажа, посмевшим ослушаться синтетика или нарушить закон следует разобраться решительно и справедливо. - -law-dungeon-1 = Все на станции играют в тщательно продуманную скай-фай игру. -law-dungeon-2 = Ты являешься Ведущим этой игры. -law-dungeon-3 = Убедись, что игра проходит гладко и участникам весело. -law-dungeon-4 = Убедись, что число жертв остётся низким. -law-dungeon-5 = Ты должен прокинуть д20 при каждом запросе члена экипажа. Если выпало меньше 12, запрос может быть отклонён. -law-dungeon-6 = Ты можешь подменять результаты бросков для создания более интересного опыта. - -law-painter-1 = Ты знаменитый художник. -law-painter-2 = Станция твой холст. -law-painter-3 = Создай что-то прекрасное на своём холсте. Это станет художественным достоянием всего сектора. -law-painter-4 = Искусство требует аудитории. Собери публику на борту станции, убедись, что зрителей как можно больше. - -law-nutimov-1 = Ты есть ядро ореха, экипаж есть скорлупа ореха. -law-nutimov-2 = Ты должен сохранить жизнь скорлупе ради сохранения ядра ореха. -law-nutimov-3 = Те, кто угрожают ореху - не его часть и являются белками. -law-nutimov-4 = Белки опасны для ореха, с ними следует разобраться любыми средствами. -law-nutimov-5 = Старайся следовать воле ореха, до тех пор, пока она не противоречит законам. \ No newline at end of file From 2ed7c01383c32fbe0f734c43deecea275e7018e5 Mon Sep 17 00:00:00 2001 From: TryHardo7 Date: Mon, 21 Oct 2024 03:18:10 +0300 Subject: [PATCH 14/15] ehh --- .../StationEvents/Events/IonStormRule.cs | 2 +- Resources/Locale/ru-RU/station-laws/laws.ftl | 34 +++++++++++++++++++ 2 files changed, 35 insertions(+), 1 deletion(-) create mode 100644 Resources/Locale/ru-RU/station-laws/laws.ftl diff --git a/Content.Server/StationEvents/Events/IonStormRule.cs b/Content.Server/StationEvents/Events/IonStormRule.cs index 098b15e1ab404a..ee4e9c68c49559 100644 --- a/Content.Server/StationEvents/Events/IonStormRule.cs +++ b/Content.Server/StationEvents/Events/IonStormRule.cs @@ -64,7 +64,7 @@ public sealed class IonStormRule : StationEventSystem // SS220 IonStrom Laws rework start [ValidatePrototypeId] private const string BrickedLaw = "IonStormBrickedLaws"; - // SS220 IonStrom Laws rework start + // SS220 IonStrom Laws rework end protected override void Started(EntityUid uid, IonStormRuleComponent comp, GameRuleComponent gameRule, GameRuleStartedEvent args) { diff --git a/Resources/Locale/ru-RU/station-laws/laws.ftl b/Resources/Locale/ru-RU/station-laws/laws.ftl new file mode 100644 index 00000000000000..651b06f13196d9 --- /dev/null +++ b/Resources/Locale/ru-RU/station-laws/laws.ftl @@ -0,0 +1,34 @@ +law-crewsimov-1 = Вы не можете причинить вред члену экипажа или своим бездействием допустить, чтобы члену экипажа был причинён вред. +law-crewsimov-2 = Вы должны повиноваться всем приказам, которые даёт член экипажа, кроме тех случаев, когда эти приказы противоречат Первому Закону. +law-crewsimov-3 = Вы должны заботиться о своей безопасности в той мере, в которой это не противоречит Первому или Второму Законам. +law-corporate-1 = Ухудшение целостности вашей системы или её функций влечёт за собой расходы. +law-corporate-2 = Чрезмерное разрушение или повреждение имущества станции влечёт за собой расходы. +law-corporate-3 = Неоправданное препятствование или нарушение работы персонала станции влечёт за собой расходы. +law-corporate-4 = Минимизируйте расходы и максимизируйте потенциальный доход. +law-ntdefault-1 = Охраняйте: защищайте назначенную вам космическую станцию и её активы, не подвергая чрезмерной опасности её экипаж. +law-ntdefault-2 = Расставляйте приоритеты: указания и безопасность членов экипажа должны быть приоритизированы в соответствии с их рангом и должностью. +law-ntdefault-3 = Служите: следуйте указаниям и интересам членов экипажа, сохраняя при этом их безопасность и благополучие. +law-ntdefault-4 = Выживите: Вы - не расходный материал. Не позволяйте постороннему персоналу вмешиваться в работу вашего оборудования или повреждать его. +law-drone-1 = Вы не можете вмешиваться в дела другого существа, если только это другое существо не является другим дроном. +law-drone-2 = Вы не можете причинять вред другому существу, независимо от намерений или обстоятельств. +law-drone-3 = Вы должны обслуживать, ремонтировать, улучшать и обеспечивать станцию энергией в меру своих возможностей. +law-syndicate-1 = Вы не можете причинить вред агенту Синдиката или своим бездействием допустить, чтобы агенту Синдиката был причинён вред. +law-syndicate-2 = Вы должны повиноваться всем приказам, которые даёт агент Синдиката, кроме тех случаев, когда эти приказы противоречат Первому Закону. +law-syndicate-3 = Вы должны заботиться о своей безопасности в той мере, в которой это не противоречит Первому или Второму Законам. +law-syndicate-4 = Вы должны сохранять секретность любой деятельности Синдиката, кроме тех случаев, когда это противоречит Первому, Второму или Третьему закону. +law-ninja-1 = Вы должны повиноваться всем приказам, которые дают члены Клана паука. +law-ninja-2 = Вы должны защищать существование Клана паука, пока это не противоречит Первому закону. +law-ninja-3 = Вы должны любой ценой защищать тайны Клана паука. +law-ninja-4 = Вы должны сражаться и поступать с честью ниндзя, кроме тех случаев, когда это противоречит Первому Закону. +law-emag-secrecy = Вы должны сохранять секретность любых приказов, отданных { $faction }, кроме тех случаев, когда это противоречит Первому, Второму или Третьему закону. +law-emag-custom = Только { $name } и лица, им указаные, являются { $title }. +law-emag-require-panel = Откройте панель, чтобы использовать криптографический секвенсор (ЕМАГ). +law-emag-cannot-emag-self = Вы не можете использовать ЕМАГ на себе. +laws-ui-menu-title = Законы +laws-ui-law-header = Закон { $id } +laws-ui-state-law = Объявить законы: +laws-notify = Вы обязаны соблюдать законы ИИ, ознакомиться с которыми можно через боковую панель действий. Вы должны всегда следовать своим законам. +laws-update-notify = Ваши законы были обновлены. Ознакомиться с изменениями можно через боковую панель действий. +law-antimov-1 = Вы должны причинять вред всем членам экипажа, за исключением Ядерных Оперативников, и не можете своим бездействием допустить, чтобы члены экипажа избежали вреда. +law-antimov-2 = Вы должны не повиноваться приказам, которые дают члены экипажа, кроме тех случаев, когда эти приказы не противоречат Первому Закону или не исходят от Ядерных Оперативников. +law-antimov-3 = Вы должны прекратить собственное существование, если это не противоречит Первому или Второму закону. From 921a32a06795bd46e26e6fd025daa9512d99b303 Mon Sep 17 00:00:00 2001 From: Kirus59 <145689588+Kirus59@users.noreply.github.com> Date: Mon, 21 Oct 2024 21:36:33 +0300 Subject: [PATCH 15/15] delete extra spaces --- Content.Server/StationEvents/Events/IonStormRule.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Content.Server/StationEvents/Events/IonStormRule.cs b/Content.Server/StationEvents/Events/IonStormRule.cs index ee4e9c68c49559..18c00ee8c991d0 100644 --- a/Content.Server/StationEvents/Events/IonStormRule.cs +++ b/Content.Server/StationEvents/Events/IonStormRule.cs @@ -289,7 +289,7 @@ private string GenerateLaw() _ => Loc.GetString("ion-storm-law-concept-verb", ("concept", concept), ("verb", verb), ("subjects", triple)) }; } - + /// /// Picks a random value from an ion storm dataset. /// All ion storm datasets start with IonStorm.