summaryrefslogtreecommitdiff
path: root/Impostor-dev/src/Impostor.Server/Config
diff options
context:
space:
mode:
Diffstat (limited to 'Impostor-dev/src/Impostor.Server/Config')
-rw-r--r--Impostor-dev/src/Impostor.Server/Config/AntiCheatConfig.cs9
-rw-r--r--Impostor-dev/src/Impostor.Server/Config/DebugConfig.cs11
-rw-r--r--Impostor-dev/src/Impostor.Server/Config/DisconnectMessages.cs19
-rw-r--r--Impostor-dev/src/Impostor.Server/Config/ServerConfig.cs30
-rw-r--r--Impostor-dev/src/Impostor.Server/Config/ServerRedirectorConfig.cs24
-rw-r--r--Impostor-dev/src/Impostor.Server/Config/ServerRedirectorNode.cs9
6 files changed, 102 insertions, 0 deletions
diff --git a/Impostor-dev/src/Impostor.Server/Config/AntiCheatConfig.cs b/Impostor-dev/src/Impostor.Server/Config/AntiCheatConfig.cs
new file mode 100644
index 0000000..f4807e7
--- /dev/null
+++ b/Impostor-dev/src/Impostor.Server/Config/AntiCheatConfig.cs
@@ -0,0 +1,9 @@
+namespace Impostor.Server.Config
+{
+ public class AntiCheatConfig
+ {
+ public const string Section = "AntiCheat";
+
+ public bool BanIpFromGame { get; set; } = true;
+ }
+} \ No newline at end of file
diff --git a/Impostor-dev/src/Impostor.Server/Config/DebugConfig.cs b/Impostor-dev/src/Impostor.Server/Config/DebugConfig.cs
new file mode 100644
index 0000000..630d1b4
--- /dev/null
+++ b/Impostor-dev/src/Impostor.Server/Config/DebugConfig.cs
@@ -0,0 +1,11 @@
+namespace Impostor.Server.Config
+{
+ public class DebugConfig
+ {
+ public const string Section = "Debug";
+
+ public bool GameRecorderEnabled { get; set; }
+
+ public string GameRecorderPath { get; set; }
+ }
+} \ No newline at end of file
diff --git a/Impostor-dev/src/Impostor.Server/Config/DisconnectMessages.cs b/Impostor-dev/src/Impostor.Server/Config/DisconnectMessages.cs
new file mode 100644
index 0000000..a86735f
--- /dev/null
+++ b/Impostor-dev/src/Impostor.Server/Config/DisconnectMessages.cs
@@ -0,0 +1,19 @@
+namespace Impostor.Server.Config
+{
+ public static class DisconnectMessages
+ {
+ public const string Error = "There was an internal server error. " +
+ "Check the server console for more information. " +
+ "Please report the issue on the AmongUsServer GitHub if it keeps happening.";
+
+ public const string Destroyed = "The game you tried to join is being destroyed. " +
+ "Please create a new game.";
+
+ public const string NotImplemented = "Game listing has not been implemented in Impostor yet for servers " +
+ "running in server redirection mode.";
+
+ public const string UsernameLength = "Your username is too long, please make it shorter.";
+
+ public const string UsernameIllegalCharacters = "Your username contains illegal characters, please remove them.";
+ }
+} \ No newline at end of file
diff --git a/Impostor-dev/src/Impostor.Server/Config/ServerConfig.cs b/Impostor-dev/src/Impostor.Server/Config/ServerConfig.cs
new file mode 100644
index 0000000..1c58433
--- /dev/null
+++ b/Impostor-dev/src/Impostor.Server/Config/ServerConfig.cs
@@ -0,0 +1,30 @@
+using Impostor.Server.Utils;
+
+namespace Impostor.Server.Config
+{
+ internal class ServerConfig
+ {
+ private string? _resolvedPublicIp;
+ private string? _resolvedListenIp;
+
+ public const string Section = "Server";
+
+ public string PublicIp { get; set; } = "127.0.0.1";
+
+ public ushort PublicPort { get; set; } = 22023;
+
+ public string ListenIp { get; set; } = "127.0.0.1";
+
+ public ushort ListenPort { get; set; } = 22023;
+
+ public string ResolvePublicIp()
+ {
+ return _resolvedPublicIp ??= IpUtils.ResolveIp(PublicIp);
+ }
+
+ public string ResolveListenIp()
+ {
+ return _resolvedListenIp ??= IpUtils.ResolveIp(ListenIp);
+ }
+ }
+}
diff --git a/Impostor-dev/src/Impostor.Server/Config/ServerRedirectorConfig.cs b/Impostor-dev/src/Impostor.Server/Config/ServerRedirectorConfig.cs
new file mode 100644
index 0000000..0ccfa0d
--- /dev/null
+++ b/Impostor-dev/src/Impostor.Server/Config/ServerRedirectorConfig.cs
@@ -0,0 +1,24 @@
+using System.Collections.Generic;
+
+namespace Impostor.Server.Config
+{
+ public class ServerRedirectorConfig
+ {
+ public const string Section = "ServerRedirector";
+
+ public bool Enabled { get; set; }
+
+ public bool Master { get; set; }
+
+ public NodeLocator Locator { get; set; }
+
+ public List<ServerRedirectorNode> Nodes { get; set; }
+
+ public class NodeLocator
+ {
+ public string Redis { get; set; }
+
+ public string UdpMasterEndpoint { get; set; }
+ }
+ }
+} \ No newline at end of file
diff --git a/Impostor-dev/src/Impostor.Server/Config/ServerRedirectorNode.cs b/Impostor-dev/src/Impostor.Server/Config/ServerRedirectorNode.cs
new file mode 100644
index 0000000..d11b60f
--- /dev/null
+++ b/Impostor-dev/src/Impostor.Server/Config/ServerRedirectorNode.cs
@@ -0,0 +1,9 @@
+namespace Impostor.Server.Config
+{
+ public class ServerRedirectorNode
+ {
+ public string Ip { get; set; }
+
+ public ushort Port { get; set; }
+ }
+} \ No newline at end of file