From 28ab290325aa437a0a4c3fb7fdbdab09438b0b77 Mon Sep 17 00:00:00 2001
From: "W.xyz()" <84605679+pirakaplant@users.noreply.github.com>
Date: Tue, 27 Jan 2026 00:20:18 +1030
Subject: [PATCH 1/5] very belated initial commit, haven't really tested yet
---
Content.Server/Content.Server.csproj | 3 +
.../Components/BostonAccentComponent.cs | 7 ++
.../Speech/Components/CakAccentComponent.cs | 7 ++
.../Components/ScandinavianAccentComponent.cs | 7 ++
.../EntitySystems/BostonAccentSystem.cs | 68 +++++++++++++
.../Speech/EntitySystems/CakAccentSystem.cs | 40 ++++++++
.../EntitySystems/ScandinavianAccentSystem.cs | 96 +++++++++++++++++++
.../Locale/en-US/_Funkystation/accent/cak.ftl | 14 +++
.../en-US/_Funkystation/traits/traits.ftl | 5 +
.../Objects/Consumable/Food/Baked/cake.yml | 1 +
.../Accents/word_replacements.yml | 21 ++++
.../_Funkystation/Traits/speech.yml | 17 ++++
12 files changed, 286 insertions(+)
create mode 100644 Content.Server/_Funkystation/Speech/Components/BostonAccentComponent.cs
create mode 100644 Content.Server/_Funkystation/Speech/Components/CakAccentComponent.cs
create mode 100644 Content.Server/_Funkystation/Speech/Components/ScandinavianAccentComponent.cs
create mode 100644 Content.Server/_Funkystation/Speech/EntitySystems/BostonAccentSystem.cs
create mode 100644 Content.Server/_Funkystation/Speech/EntitySystems/CakAccentSystem.cs
create mode 100644 Content.Server/_Funkystation/Speech/EntitySystems/ScandinavianAccentSystem.cs
create mode 100644 Resources/Locale/en-US/_Funkystation/accent/cak.ftl
create mode 100644 Resources/Locale/en-US/_Funkystation/traits/traits.ftl
create mode 100644 Resources/Prototypes/_Funkystation/Accents/word_replacements.yml
create mode 100644 Resources/Prototypes/_Funkystation/Traits/speech.yml
diff --git a/Content.Server/Content.Server.csproj b/Content.Server/Content.Server.csproj
index 10d4bd56ab8..71e7a21cb41 100644
--- a/Content.Server/Content.Server.csproj
+++ b/Content.Server/Content.Server.csproj
@@ -21,6 +21,9 @@
+
+
+
diff --git a/Content.Server/_Funkystation/Speech/Components/BostonAccentComponent.cs b/Content.Server/_Funkystation/Speech/Components/BostonAccentComponent.cs
new file mode 100644
index 00000000000..4c58c09adb0
--- /dev/null
+++ b/Content.Server/_Funkystation/Speech/Components/BostonAccentComponent.cs
@@ -0,0 +1,7 @@
+namespace Content.Server.Speech.Components
+{
+ [RegisterComponent]
+ public sealed partial class BostonAccentComponent : Component
+ {
+ }
+}
diff --git a/Content.Server/_Funkystation/Speech/Components/CakAccentComponent.cs b/Content.Server/_Funkystation/Speech/Components/CakAccentComponent.cs
new file mode 100644
index 00000000000..5b5e90057ac
--- /dev/null
+++ b/Content.Server/_Funkystation/Speech/Components/CakAccentComponent.cs
@@ -0,0 +1,7 @@
+namespace Content.Server.Speech.Components
+{
+ [RegisterComponent]
+ public sealed partial class CakAccentComponent : Component
+ {
+ }
+}
diff --git a/Content.Server/_Funkystation/Speech/Components/ScandinavianAccentComponent.cs b/Content.Server/_Funkystation/Speech/Components/ScandinavianAccentComponent.cs
new file mode 100644
index 00000000000..d8063c169d4
--- /dev/null
+++ b/Content.Server/_Funkystation/Speech/Components/ScandinavianAccentComponent.cs
@@ -0,0 +1,7 @@
+namespace Content.Server.Speech.Components
+{
+ [RegisterComponent]
+ public sealed partial class ScandinavianAccentComponent : Component
+ {
+ }
+}
diff --git a/Content.Server/_Funkystation/Speech/EntitySystems/BostonAccentSystem.cs b/Content.Server/_Funkystation/Speech/EntitySystems/BostonAccentSystem.cs
new file mode 100644
index 00000000000..84dcf3db21f
--- /dev/null
+++ b/Content.Server/_Funkystation/Speech/EntitySystems/BostonAccentSystem.cs
@@ -0,0 +1,68 @@
+using Content.Server.Speech.Components;
+using System.Text.RegularExpressions;
+using Content.Shared.Speech;
+
+namespace Content.Server.Speech.EntitySystems;
+
+public sealed class BostonAccentSystem : EntitySystem
+{
+ private static readonly Regex RegexLowercaseAr = new(@"\Bar(?=(s\b|\b))(?!re)");
+ private static readonly Regex RegexUppercaseAr = new(@"\BAR(?=(s\b|\b))(?!re)");
+ private static readonly Regex RegexLowercaseEr = new(@"er\B");
+ private static readonly Regex RegexUppercaseEr = new(@"ER\B");
+ private static readonly Regex RegexSentenceCaseEr = new(@"Er\B");
+ private static readonly Regex RegexLowercaseEndingEr = new(@"\Ber(?=(s\b|\b))");
+ private static readonly Regex RegexUppercaseEndingEr = new(@"\BER(?=(s\b|\b))");
+ private static readonly Regex RegexLowercaseEndingOr = new(@"\Bor(?=(s\b|\b))");
+ private static readonly Regex RegexUppercaseEndingOr = new(@"\BOR(?=(s\b|\b))");
+ private static readonly Regex RegexLowercaseEndingA = new(@"\Ba(?=(s\b|\b))");
+ private static readonly Regex RegexUppercaseEndingA = new(@"\BA(?=(s\b|\b))");
+ private static readonly Regex RegexLowercaseNty = new(@"\Bnt(?=(y|ie))");
+ private static readonly Regex RegexUppercaseNty = new(@"\BNT(?=(Y|IE))");
+ private static readonly Regex RegexApostropheT = new(@"'t", RegexOptions.IgnoreCase);
+
+ public override void Initialize()
+ {
+ SubscribeLocalEvent(OnAccent);
+ }
+
+ public string Accentuate(string message)
+ {
+ var msg = message;
+
+ // start -> staht
+ // this doesn't change "are" because that feels wrong to me
+ msg = RegexLowercaseAr.Replace(msg, "ah");
+ msg = RegexUppercaseAr.Replace(msg, "AH");
+
+ // error -> ehror
+ msg = RegexLowercaseEr.Replace(msg, "eh");
+ msg = RegexUppercaseEr.Replace(msg, "EH");
+ msg = RegexSentenceCaseEr.Replace(msg, "Eh");
+
+ // meter -> metah
+ msg = RegexLowercaseEndingEr.Replace(msg, "ah");
+ msg = RegexUppercaseEndingEr.Replace(msg, "AH");
+
+ // reactor -> reactah
+ msg = RegexLowercaseEndingOr.Replace(msg, "ah");
+ msg = RegexUppercaseEndingOr.Replace(msg, "AH");
+
+ // pizza -> pizzer
+ msg = RegexLowercaseEndingA.Replace(msg, "er");
+ msg = RegexUppercaseEndingA.Replace(msg, "ER");
+
+ // bounty -> bounny
+ msg = RegexLowercaseNty.Replace(msg, "nn");
+ msg = RegexUppercaseNty.Replace(msg, "NN");
+
+ // don't -> don'
+ msg = RegexApostropheT.Replace(msg, "'");
+
+ return msg;
+ }
+ private void OnAccent(Entity ent, ref AccentGetEvent args)
+ {
+ args.Message = Accentuate(args.Message);
+ }
+}
diff --git a/Content.Server/_Funkystation/Speech/EntitySystems/CakAccentSystem.cs b/Content.Server/_Funkystation/Speech/EntitySystems/CakAccentSystem.cs
new file mode 100644
index 00000000000..6e141d098a2
--- /dev/null
+++ b/Content.Server/_Funkystation/Speech/EntitySystems/CakAccentSystem.cs
@@ -0,0 +1,40 @@
+using Content.Server.Speech.Components;
+using System.Text.RegularExpressions;
+using Content.Shared.Speech;
+
+namespace Content.Server.Speech.EntitySystems;
+
+public sealed class CakAccentSystem : EntitySystem
+{
+ [Dependency] private readonly ReplacementAccentSystem _replacement = default!;
+
+ private static readonly Regex RegexWhitespace = new(@"\s");
+
+ public override void Initialize()
+ {
+ SubscribeLocalEvent(OnAccent);
+ }
+
+ public string Accentuate(string message)
+ {
+ // This is atrocious but makes sure that the word is not part of a longer sentence.
+ if (RegexWhitespace.Count(message) == 2)
+ {
+ message = _replacement.ApplyReplacements(message, "cak2spaces");
+ }
+ else if (RegexWhitespace.Count(message) == 1)
+ {
+ message = _replacement.ApplyReplacements(message, "cak1space");
+ }
+ else if (RegexWhitespace.Count(message) == 0)
+ {
+ message = _replacement.ApplyReplacements(message, "cak0spaces");
+ }
+ return message;
+ }
+
+ private void OnAccent(Entity ent, ref AccentGetEvent args)
+ {
+ args.Message = Accentuate(args.Message);
+ }
+}
diff --git a/Content.Server/_Funkystation/Speech/EntitySystems/ScandinavianAccentSystem.cs b/Content.Server/_Funkystation/Speech/EntitySystems/ScandinavianAccentSystem.cs
new file mode 100644
index 00000000000..dbe02f361f5
--- /dev/null
+++ b/Content.Server/_Funkystation/Speech/EntitySystems/ScandinavianAccentSystem.cs
@@ -0,0 +1,96 @@
+using System.Text;
+using Content.Server.Speech.Components;
+using Robust.Shared.Random;
+using System.Text.RegularExpressions;
+using Content.Shared.Speech;
+
+namespace Content.Server.Speech.EntitySystems;
+
+public sealed class ScandinavianAccentSystem : EntitySystem
+{
+ [Dependency] private readonly IRobustRandom _random = default!;
+
+ private static readonly Regex RegexLowercaseAe = new(@"ae");
+ private static readonly Regex RegexUppercaseAe = new(@"A(?i)e");
+ private static readonly Regex RegexLowercaseTh = new(@"th");
+ private static readonly Regex RegexUppercaseTh = new(@"T(?i)h");
+
+ public override void Initialize()
+ {
+ SubscribeLocalEvent(OnAccent);
+ }
+
+ public string Accentuate(string message)
+ {
+ message = RegexLowercaseAe.Replace(message, "æ");
+ message = RegexUppercaseAe.Replace(message, "Æ");
+ message = RegexLowercaseTh.Replace(message, "ð");
+ message = RegexUppercaseTh.Replace(message, "Ð");
+
+
+ var messageBuilder = new StringBuilder(message);
+
+ // SHITCODE INCOMING. "A" and "O" have a 50% chance to be replaced with an accented equivalent. "E" has a 25% chance to be replaced with "Æ".
+ for (var i = 0; i < messageBuilder.Length; i++)
+ {
+ var random_int = _random.Next(0,4);
+ switch (messageBuilder[i])
+ {
+ case 'A':
+ messageBuilder[i] = random_int switch
+ {
+ 0 => 'Å',
+ 1 => 'Ä',
+ _ => 'A'
+ };
+ break;
+ case 'a':
+ messageBuilder[i] = random_int switch
+ {
+ 0 => 'å',
+ 1 => 'ä',
+ _ => 'a'
+ };
+ break;
+ case 'E':
+ messageBuilder[i] = random_int switch
+ {
+ 0 => 'Æ',
+ _ => 'E'
+ };
+ break;
+ case 'e':
+ messageBuilder[i] = random_int switch
+ {
+ 0 => 'æ',
+ _ => 'e'
+ };
+ break;
+ case 'O':
+ messageBuilder[i] = random_int switch
+ {
+ 0 => 'Ø',
+ 1 => 'Ö',
+ _ => 'O'
+ };
+ break;
+ case 'o':
+ messageBuilder[i] = random_int switch
+ {
+ 0 => 'ø',
+ 1 => 'ö',
+ _ => 'o'
+ };
+ break;
+ default:
+ break;
+ }
+ }
+
+ return messageBuilder.ToString();
+ }
+ private void OnAccent(Entity ent, ref AccentGetEvent args)
+ {
+ args.Message = Accentuate(args.Message);
+ }
+}
diff --git a/Resources/Locale/en-US/_Funkystation/accent/cak.ftl b/Resources/Locale/en-US/_Funkystation/accent/cak.ftl
new file mode 100644
index 00000000000..d3dc7fa2edc
--- /dev/null
+++ b/Resources/Locale/en-US/_Funkystation/accent/cak.ftl
@@ -0,0 +1,14 @@
+accent-cak-words-1 = goodbye
+accent-cak-words-1-2 = bye-bye
+accent-cak-words-1-3 = bye
+accent-cak-words-1-4 = farewell
+
+accent-cak-words-2 = bye bye
+accent-cak-words-2-2 = see you
+accent-cak-words-2-3 = see ya
+accent-cak-words-2-4 = so long
+
+accent-cak-words-3 = see you later
+accent-cak-words-3-2 = see ya later
+
+accent-cak-words-replace = I'm out this bitch
diff --git a/Resources/Locale/en-US/_Funkystation/traits/traits.ftl b/Resources/Locale/en-US/_Funkystation/traits/traits.ftl
new file mode 100644
index 00000000000..b458d214553
--- /dev/null
+++ b/Resources/Locale/en-US/_Funkystation/traits/traits.ftl
@@ -0,0 +1,5 @@
+trait-boston-name = Boston accent
+trait-boston-desc = You sound like you need to pahk your cah in the yahd.
+
+trait-scandinavian-name = Scandinavian accent
+trait-scandinavian-desc = Yøu sound like yøu cöme frøm søme nondescript norðern Euröpæän nation. Ör you'ræ a Viking!
diff --git a/Resources/Prototypes/Entities/Objects/Consumable/Food/Baked/cake.yml b/Resources/Prototypes/Entities/Objects/Consumable/Food/Baked/cake.yml
index 1b68e9b8237..b55bebdf9ab 100644
--- a/Resources/Prototypes/Entities/Objects/Consumable/Food/Baked/cake.yml
+++ b/Resources/Prototypes/Entities/Objects/Consumable/Food/Baked/cake.yml
@@ -1134,6 +1134,7 @@
settings: short
- type: GhostTakeoverAvailable
- type: OwOAccent
+ - type: CakAccent # Funky
- type: Speech
speechSounds: Cat
speechVerb: SmallMob
diff --git a/Resources/Prototypes/_Funkystation/Accents/word_replacements.yml b/Resources/Prototypes/_Funkystation/Accents/word_replacements.yml
new file mode 100644
index 00000000000..ff9a27a26bf
--- /dev/null
+++ b/Resources/Prototypes/_Funkystation/Accents/word_replacements.yml
@@ -0,0 +1,21 @@
+- type: accent
+ id: cak0spaces
+ wordReplacements:
+ accent-cak-words-1: accent-cak-words-replace
+ accent-cak-words-1-2: accent-cak-words-replace
+ accent-cak-words-1-3: accent-cak-words-replace
+ accent-cak-words-1-4: accent-cak-words-replace
+
+- type: accent
+ id: cak1space
+ wordReplacements:
+ accent-cak-words-2: accent-cak-words-replace
+ accent-cak-words-2-2: accent-cak-words-replace
+ accent-cak-words-2-3: accent-cak-words-replace
+ accent-cak-words-2-4: accent-cak-words-replace
+
+- type: accent
+ id: cak2spaces
+ wordReplacements:
+ accent-cak-words-3: accent-cak-words-replace
+ accent-cak-words-3-2: accent-cak-words-replace
diff --git a/Resources/Prototypes/_Funkystation/Traits/speech.yml b/Resources/Prototypes/_Funkystation/Traits/speech.yml
new file mode 100644
index 00000000000..e70fc476168
--- /dev/null
+++ b/Resources/Prototypes/_Funkystation/Traits/speech.yml
@@ -0,0 +1,17 @@
+- type: trait
+ id: BostonAccent
+ name: trait-boston-name
+ description: trait-boston-desc
+ category: SpeechTraits
+ cost: 1
+ components:
+ - type: ScandinavianAccent
+
+- type: trait
+ id: ScandinavianAccent
+ name: trait-scandinavian-name
+ description: trait-scandinavian-desc
+ category: SpeechTraits
+ cost: 1
+ components:
+ - type: ScandinavianAccent
From 7c3a116f6ed2be69853fc2526f2b342af81d5997 Mon Sep 17 00:00:00 2001
From: "W.xyz()" <84605679+pirakaplant@users.noreply.github.com>
Date: Sat, 31 Jan 2026 18:11:19 +1030
Subject: [PATCH 2/5] Boston accent trait no longer adds Scandi accent, also
got rid of that stupid ass a -> er conversion
---
.../Speech/EntitySystems/BostonAccentSystem.cs | 6 ------
Resources/Prototypes/_Funkystation/Traits/speech.yml | 2 +-
2 files changed, 1 insertion(+), 7 deletions(-)
diff --git a/Content.Server/_Funkystation/Speech/EntitySystems/BostonAccentSystem.cs b/Content.Server/_Funkystation/Speech/EntitySystems/BostonAccentSystem.cs
index 84dcf3db21f..aa57c787c08 100644
--- a/Content.Server/_Funkystation/Speech/EntitySystems/BostonAccentSystem.cs
+++ b/Content.Server/_Funkystation/Speech/EntitySystems/BostonAccentSystem.cs
@@ -15,8 +15,6 @@ public sealed class BostonAccentSystem : EntitySystem
private static readonly Regex RegexUppercaseEndingEr = new(@"\BER(?=(s\b|\b))");
private static readonly Regex RegexLowercaseEndingOr = new(@"\Bor(?=(s\b|\b))");
private static readonly Regex RegexUppercaseEndingOr = new(@"\BOR(?=(s\b|\b))");
- private static readonly Regex RegexLowercaseEndingA = new(@"\Ba(?=(s\b|\b))");
- private static readonly Regex RegexUppercaseEndingA = new(@"\BA(?=(s\b|\b))");
private static readonly Regex RegexLowercaseNty = new(@"\Bnt(?=(y|ie))");
private static readonly Regex RegexUppercaseNty = new(@"\BNT(?=(Y|IE))");
private static readonly Regex RegexApostropheT = new(@"'t", RegexOptions.IgnoreCase);
@@ -48,10 +46,6 @@ public string Accentuate(string message)
msg = RegexLowercaseEndingOr.Replace(msg, "ah");
msg = RegexUppercaseEndingOr.Replace(msg, "AH");
- // pizza -> pizzer
- msg = RegexLowercaseEndingA.Replace(msg, "er");
- msg = RegexUppercaseEndingA.Replace(msg, "ER");
-
// bounty -> bounny
msg = RegexLowercaseNty.Replace(msg, "nn");
msg = RegexUppercaseNty.Replace(msg, "NN");
diff --git a/Resources/Prototypes/_Funkystation/Traits/speech.yml b/Resources/Prototypes/_Funkystation/Traits/speech.yml
index e70fc476168..29cbb07fe6b 100644
--- a/Resources/Prototypes/_Funkystation/Traits/speech.yml
+++ b/Resources/Prototypes/_Funkystation/Traits/speech.yml
@@ -5,7 +5,7 @@
category: SpeechTraits
cost: 1
components:
- - type: ScandinavianAccent
+ - type: BostonAccent
- type: trait
id: ScandinavianAccent
From db41333a6e41bd1a5e0232929adb9929cf89ec44 Mon Sep 17 00:00:00 2001
From: "W.xyz()" <84605679+pirakaplant@users.noreply.github.com>
Date: Sat, 31 Jan 2026 18:42:34 +1030
Subject: [PATCH 3/5] Fixed bugs with Boston and Cak accents.
---
.../_Funkystation/Speech/EntitySystems/BostonAccentSystem.cs | 4 ++--
.../_Funkystation/Speech/EntitySystems/CakAccentSystem.cs | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/Content.Server/_Funkystation/Speech/EntitySystems/BostonAccentSystem.cs b/Content.Server/_Funkystation/Speech/EntitySystems/BostonAccentSystem.cs
index aa57c787c08..3699491fba6 100644
--- a/Content.Server/_Funkystation/Speech/EntitySystems/BostonAccentSystem.cs
+++ b/Content.Server/_Funkystation/Speech/EntitySystems/BostonAccentSystem.cs
@@ -6,8 +6,8 @@ namespace Content.Server.Speech.EntitySystems;
public sealed class BostonAccentSystem : EntitySystem
{
- private static readonly Regex RegexLowercaseAr = new(@"\Bar(?=(s\b|\b))(?!re)");
- private static readonly Regex RegexUppercaseAr = new(@"\BAR(?=(s\b|\b))(?!re)");
+ private static readonly Regex RegexLowercaseAr = new(@"\Bar(?!e\b)");
+ private static readonly Regex RegexUppercaseAr = new(@"\BAR(?!E\b)");
private static readonly Regex RegexLowercaseEr = new(@"er\B");
private static readonly Regex RegexUppercaseEr = new(@"ER\B");
private static readonly Regex RegexSentenceCaseEr = new(@"Er\B");
diff --git a/Content.Server/_Funkystation/Speech/EntitySystems/CakAccentSystem.cs b/Content.Server/_Funkystation/Speech/EntitySystems/CakAccentSystem.cs
index 6e141d098a2..2c6dda48f1b 100644
--- a/Content.Server/_Funkystation/Speech/EntitySystems/CakAccentSystem.cs
+++ b/Content.Server/_Funkystation/Speech/EntitySystems/CakAccentSystem.cs
@@ -12,7 +12,7 @@ public sealed class CakAccentSystem : EntitySystem
public override void Initialize()
{
- SubscribeLocalEvent(OnAccent);
+ SubscribeLocalEvent(OnAccent, before: new[] {typeof(OwOAccentSystem)});
}
public string Accentuate(string message)
From d97ebe8b4c4475c472b4548437169b49f0318d72 Mon Sep 17 00:00:00 2001
From: "W.xyz()" <84605679+pirakaplant@users.noreply.github.com>
Date: Sun, 8 Mar 2026 18:58:37 +1030
Subject: [PATCH 4/5] updated Scandinavian accent
---
.../EntitySystems/ScandinavianAccentSystem.cs | 103 +++++++++---------
1 file changed, 52 insertions(+), 51 deletions(-)
diff --git a/Content.Server/_Funkystation/Speech/EntitySystems/ScandinavianAccentSystem.cs b/Content.Server/_Funkystation/Speech/EntitySystems/ScandinavianAccentSystem.cs
index dbe02f361f5..a6679d8d169 100644
--- a/Content.Server/_Funkystation/Speech/EntitySystems/ScandinavianAccentSystem.cs
+++ b/Content.Server/_Funkystation/Speech/EntitySystems/ScandinavianAccentSystem.cs
@@ -30,60 +30,61 @@ public string Accentuate(string message)
var messageBuilder = new StringBuilder(message);
- // SHITCODE INCOMING. "A" and "O" have a 50% chance to be replaced with an accented equivalent. "E" has a 25% chance to be replaced with "Æ".
+ // SHITCODE INCOMING. "A" and "O" have a 25% chance (50% * 50%) to be replaced with an accented equivalent. "E" has a 12.5% chance (25% * 50%) to be replaced with "Æ".
for (var i = 0; i < messageBuilder.Length; i++)
{
- var random_int = _random.Next(0,4);
- switch (messageBuilder[i])
+ if (_random.Prob(0.5f))
{
- case 'A':
- messageBuilder[i] = random_int switch
- {
- 0 => 'Å',
- 1 => 'Ä',
- _ => 'A'
- };
- break;
- case 'a':
- messageBuilder[i] = random_int switch
- {
- 0 => 'å',
- 1 => 'ä',
- _ => 'a'
- };
- break;
- case 'E':
- messageBuilder[i] = random_int switch
- {
- 0 => 'Æ',
- _ => 'E'
- };
- break;
- case 'e':
- messageBuilder[i] = random_int switch
- {
- 0 => 'æ',
- _ => 'e'
- };
- break;
- case 'O':
- messageBuilder[i] = random_int switch
- {
- 0 => 'Ø',
- 1 => 'Ö',
- _ => 'O'
- };
- break;
- case 'o':
- messageBuilder[i] = random_int switch
- {
- 0 => 'ø',
- 1 => 'ö',
- _ => 'o'
- };
- break;
- default:
- break;
+ var randomInt = _random.Next(0, 4);
+ switch (messageBuilder[i])
+ {
+ case 'A':
+ messageBuilder[i] = randomInt switch
+ {
+ 0 => 'Å',
+ 1 => 'Ä',
+ _ => 'A'
+ };
+ break;
+ case 'a':
+ messageBuilder[i] = randomInt switch
+ {
+ 0 => 'å',
+ 1 => 'ä',
+ _ => 'a'
+ };
+ break;
+ case 'E':
+ messageBuilder[i] = randomInt switch
+ {
+ 0 => 'Æ',
+ _ => 'E'
+ };
+ break;
+ case 'e':
+ messageBuilder[i] = randomInt switch
+ {
+ 0 => 'æ',
+ _ => 'e'
+ };
+ break;
+ case 'O':
+ messageBuilder[i] = randomInt switch
+ {
+ 0 => 'Ø',
+ 1 => 'Ö',
+ _ => 'O'
+ };
+ break;
+ case 'o':
+ messageBuilder[i] = randomInt switch
+ {
+ 0 => 'ø',
+ 1 => 'ö',
+ _ => 'o'
+ };
+ break;
+ }
}
}
From dae4a3237ec2e13ed85684712a31a1fce47ae39c Mon Sep 17 00:00:00 2001
From: "W.xyz()" <84605679+pirakaplant@users.noreply.github.com>
Date: Wed, 25 Mar 2026 23:11:11 +1030
Subject: [PATCH 5/5] corrected incorrect namespaces
---
.../Speech/Components/BostonAccentComponent.cs | 2 +-
.../_Funkystation/Speech/Components/CakAccentComponent.cs | 2 +-
.../Speech/Components/ScandinavianAccentComponent.cs | 2 +-
.../Speech/EntitySystems/BostonAccentSystem.cs | 4 ++--
.../_Funkystation/Speech/EntitySystems/CakAccentSystem.cs | 5 +++--
.../Speech/EntitySystems/ScandinavianAccentSystem.cs | 6 +++---
6 files changed, 11 insertions(+), 10 deletions(-)
diff --git a/Content.Server/_Funkystation/Speech/Components/BostonAccentComponent.cs b/Content.Server/_Funkystation/Speech/Components/BostonAccentComponent.cs
index 4c58c09adb0..dab1f36ad1e 100644
--- a/Content.Server/_Funkystation/Speech/Components/BostonAccentComponent.cs
+++ b/Content.Server/_Funkystation/Speech/Components/BostonAccentComponent.cs
@@ -1,4 +1,4 @@
-namespace Content.Server.Speech.Components
+namespace Content.Server._Funkystation.Speech.Components
{
[RegisterComponent]
public sealed partial class BostonAccentComponent : Component
diff --git a/Content.Server/_Funkystation/Speech/Components/CakAccentComponent.cs b/Content.Server/_Funkystation/Speech/Components/CakAccentComponent.cs
index 5b5e90057ac..85888bafdd1 100644
--- a/Content.Server/_Funkystation/Speech/Components/CakAccentComponent.cs
+++ b/Content.Server/_Funkystation/Speech/Components/CakAccentComponent.cs
@@ -1,4 +1,4 @@
-namespace Content.Server.Speech.Components
+namespace Content.Server._Funkystation.Speech.Components
{
[RegisterComponent]
public sealed partial class CakAccentComponent : Component
diff --git a/Content.Server/_Funkystation/Speech/Components/ScandinavianAccentComponent.cs b/Content.Server/_Funkystation/Speech/Components/ScandinavianAccentComponent.cs
index d8063c169d4..89e9c5947c1 100644
--- a/Content.Server/_Funkystation/Speech/Components/ScandinavianAccentComponent.cs
+++ b/Content.Server/_Funkystation/Speech/Components/ScandinavianAccentComponent.cs
@@ -1,4 +1,4 @@
-namespace Content.Server.Speech.Components
+namespace Content.Server._Funkystation.Speech.Components
{
[RegisterComponent]
public sealed partial class ScandinavianAccentComponent : Component
diff --git a/Content.Server/_Funkystation/Speech/EntitySystems/BostonAccentSystem.cs b/Content.Server/_Funkystation/Speech/EntitySystems/BostonAccentSystem.cs
index 3699491fba6..75b94f6953f 100644
--- a/Content.Server/_Funkystation/Speech/EntitySystems/BostonAccentSystem.cs
+++ b/Content.Server/_Funkystation/Speech/EntitySystems/BostonAccentSystem.cs
@@ -1,8 +1,8 @@
-using Content.Server.Speech.Components;
using System.Text.RegularExpressions;
+using Content.Server._Funkystation.Speech.Components;
using Content.Shared.Speech;
-namespace Content.Server.Speech.EntitySystems;
+namespace Content.Server._Funkystation.Speech.EntitySystems;
public sealed class BostonAccentSystem : EntitySystem
{
diff --git a/Content.Server/_Funkystation/Speech/EntitySystems/CakAccentSystem.cs b/Content.Server/_Funkystation/Speech/EntitySystems/CakAccentSystem.cs
index 2c6dda48f1b..2bd34e08d5f 100644
--- a/Content.Server/_Funkystation/Speech/EntitySystems/CakAccentSystem.cs
+++ b/Content.Server/_Funkystation/Speech/EntitySystems/CakAccentSystem.cs
@@ -1,8 +1,9 @@
-using Content.Server.Speech.Components;
using System.Text.RegularExpressions;
+using Content.Server._Funkystation.Speech.Components;
+using Content.Server.Speech.EntitySystems;
using Content.Shared.Speech;
-namespace Content.Server.Speech.EntitySystems;
+namespace Content.Server._Funkystation.Speech.EntitySystems;
public sealed class CakAccentSystem : EntitySystem
{
diff --git a/Content.Server/_Funkystation/Speech/EntitySystems/ScandinavianAccentSystem.cs b/Content.Server/_Funkystation/Speech/EntitySystems/ScandinavianAccentSystem.cs
index a6679d8d169..50321d7e1f5 100644
--- a/Content.Server/_Funkystation/Speech/EntitySystems/ScandinavianAccentSystem.cs
+++ b/Content.Server/_Funkystation/Speech/EntitySystems/ScandinavianAccentSystem.cs
@@ -1,10 +1,10 @@
using System.Text;
-using Content.Server.Speech.Components;
-using Robust.Shared.Random;
using System.Text.RegularExpressions;
+using Content.Server._Funkystation.Speech.Components;
using Content.Shared.Speech;
+using Robust.Shared.Random;
-namespace Content.Server.Speech.EntitySystems;
+namespace Content.Server._Funkystation.Speech.EntitySystems;
public sealed class ScandinavianAccentSystem : EntitySystem
{