diff --git a/Application/Application.csproj b/Application/Application.csproj
index f6d81e0f..b19b95ee 100644
--- a/Application/Application.csproj
+++ b/Application/Application.csproj
@@ -6,7 +6,7 @@
2.1.5
false
RaidMax.IW4MAdmin.Application
- 2.1.9.6
+ 2.2
RaidMax
Forever None
IW4MAdmin
@@ -31,8 +31,8 @@
true
true
- 2.1.9.6
- 2.1.9.6
+ 2.2.0.0
+ 2.2.0.0
@@ -94,6 +94,6 @@
-
+
diff --git a/Application/BuildScripts/PostPublish.bat b/Application/BuildScripts/PostPublish.bat
index 49d175a5..317b111e 100644
--- a/Application/BuildScripts/PostPublish.bat
+++ b/Application/BuildScripts/PostPublish.bat
@@ -58,42 +58,50 @@ del "%SolutionDir%Publish\WindowsPrerelease\*pdb"
echo setting up library folders
-echo PR-Config
-if not exist "%SolutionDir%Publish\WindowsPrerelease\Configuration" md "%SolutionDir%Publish\WindowsPrerelease\Configuration"
-move "%SolutionDir%Publish\WindowsPrerelease\DefaultSettings.json" "%SolutionDir%Publish\WindowsPrerelease\Configuration\"
+if "%CurrentConfiguration%" == "Prerelease" (
+ echo PR-Config
+ if not exist "%SolutionDir%Publish\WindowsPrerelease\Configuration" md "%SolutionDir%Publish\WindowsPrerelease\Configuration"
+ move "%SolutionDir%Publish\WindowsPrerelease\DefaultSettings.json" "%SolutionDir%Publish\WindowsPrerelease\Configuration\"
+)
-if "%CurrentConfiguration" == "Release" (
+if "%CurrentConfiguration%" == "Release" (
echo R-Config
if not exist "%SolutionDir%Publish\Windows\Configuration" md "%SolutionDir%Publish\Windows\Configuration"
if exist "%SolutionDir%Publish\Windows\DefaultSettings.json" move "%SolutionDir%Publish\Windows\DefaultSettings.json" "%SolutionDir%Publish\Windows\Configuration\DefaultSettings.json"
)
-echo PR-LIB
-if not exist "%SolutionDir%Publish\WindowsPrerelease\Lib\" md "%SolutionDir%Publish\WindowsPrerelease\Lib\"
-move "%SolutionDir%Publish\WindowsPrerelease\*.dll" "%SolutionDir%Publish\WindowsPrerelease\Lib\"
-move "%SolutionDir%Publish\WindowsPrerelease\*.json" "%SolutionDir%Publish\WindowsPrerelease\Lib\"
+if "%CurrentConfiguration%" == "Prerelease" (
+ echo PR-LIB
+ if not exist "%SolutionDir%Publish\WindowsPrerelease\Lib\" md "%SolutionDir%Publish\WindowsPrerelease\Lib\"
+ move "%SolutionDir%Publish\WindowsPrerelease\*.dll" "%SolutionDir%Publish\WindowsPrerelease\Lib\"
+ move "%SolutionDir%Publish\WindowsPrerelease\*.json" "%SolutionDir%Publish\WindowsPrerelease\Lib\"
+)
-if "%CurrentConfiguration" == "Release" (
+if "%CurrentConfiguration%" == "Release" (
echo R-LIB
if not exist "%SolutionDir%Publish\Windows\Lib\" md "%SolutionDir%Publish\Windows\Lib\"
move "%SolutionDir%Publish\Windows\*.dll" "%SolutionDir%Publish\Windows\Lib\"
move "%SolutionDir%Publish\Windows\*.json" "%SolutionDir%Publish\Windows\Lib\"
)
-echo PR-RT
-move "%SolutionDir%Publish\WindowsPrerelease\runtimes" "%SolutionDir%Publish\WindowsPrerelease\Lib\runtimes"
-if exist "%SolutionDir%Publish\WindowsPrerelease\refs" move "%SolutionDir%Publish\WindowsPrerelease\refs" "%SolutionDir%Publish\WindowsPrerelease\Lib\refs"
+if "%CurrentConfiguration%" == "Prerelease" (
+ echo PR-RT
+ move "%SolutionDir%Publish\WindowsPrerelease\runtimes" "%SolutionDir%Publish\WindowsPrerelease\Lib\runtimes"
+ if exist "%SolutionDir%Publish\WindowsPrerelease\refs" move "%SolutionDir%Publish\WindowsPrerelease\refs" "%SolutionDir%Publish\WindowsPrerelease\Lib\refs"
+)
-if "%CurrentConfiguration" == "Release" (
+if "%CurrentConfiguration%" == "Release" (
echo R-RT
move "%SolutionDir%Publish\Windows\runtimes" "%SolutionDir%Publish\Windows\Lib\runtimes"
if exist "%SolutionDir%Publish\Windows\refs" move "%SolutionDir%Publish\Windows\refs" "%SolutionDir%Publish\Windows\Lib\refs"
)
echo making start scripts
-@echo dotnet Lib/IW4MAdmin.dll > "%SolutionDir%Publish\WindowsPrerelease\StartIW4MAdmin.cmd"
-@echo dotnet Lib/IW4MAdmin.dll > "%SolutionDir%Publish\Windows\StartIW4MAdmin.cmd"
+@(echo dotnet Lib/IW4MAdmin.dll && echo pause) > "%SolutionDir%Publish\WindowsPrerelease\StartIW4MAdmin.cmd"
+@(echo dotnet Lib/IW4MAdmin.dll && echo pause) > "%SolutionDir%Publish\Windows\StartIW4MAdmin.cmd"
@(echo #!/bin/bash && echo dotnet Lib\IW4MAdmin.dll) > "%SolutionDir%Publish\WindowsPrerelease\StartIW4MAdmin.sh"
@(echo #!/bin/bash && echo dotnet Lib\IW4MAdmin.dll) > "%SolutionDir%Publish\Windows\StartIW4MAdmin.sh"
+
+eCHO "%CurrentConfiguration%"
diff --git a/Application/DefaultSettings.json b/Application/DefaultSettings.json
index 128d0349..121fde6f 100644
--- a/Application/DefaultSettings.json
+++ b/Application/DefaultSettings.json
@@ -25,11 +25,6 @@
"Name": "mp_rust"
},
- {
- "Alias": "Highrise",
- "Name": "mp_highrise"
- },
-
{
"Alias": "Terminal",
"Name": "mp_terminal"
diff --git a/Application/Main.cs b/Application/Main.cs
index a8654140..358dc478 100644
--- a/Application/Main.cs
+++ b/Application/Main.cs
@@ -38,13 +38,14 @@ namespace IW4MAdmin.Application
try
{
+ loc = Utilities.CurrentLocalization.LocalizationIndex;
Console.CancelKeyPress += new ConsoleCancelEventHandler(OnCancelKey);
CheckDirectories();
ServerManager = ApplicationManager.GetInstance();
Localization.Configure.Initialize(ServerManager.GetApplicationSettings().Configuration()?.CustomLocale);
- loc = Utilities.CurrentLocalization.LocalizationIndex;
+
ServerManager.Logger.WriteInfo($"Version is {Version}");
@@ -148,7 +149,7 @@ namespace IW4MAdmin.Application
{
e = e.InnerException;
}
- Console.WriteLine($"Exception: {e.Message}");
+ Console.WriteLine(e.Message);
Console.WriteLine(loc["MANAGER_EXIT"]);
Console.ReadKey();
return;
diff --git a/Application/Server.cs b/Application/Server.cs
index cde4904a..2c66df61 100644
--- a/Application/Server.cs
+++ b/Application/Server.cs
@@ -33,21 +33,30 @@ namespace IW4MAdmin
public override int GetHashCode()
{
- // todo: make this better with collisions
- int id = Math.Abs($"{IP}:{Port.ToString()}".Select(a => (int)a).Sum());
-
- // hack: this is a nasty fix for get hashcode being changed
- switch (id)
+ if (GameName == Game.IW4)
{
- case 765:
- return 886229536;
- case 760:
- return 1645744423;
- case 761:
- return 1645809959;
+ // todo: make this better with collisions
+ int id = Math.Abs($"{IP}:{Port.ToString()}".Select(a => (int)a).Sum());
+
+ // hack: this is a nasty fix for get hashcode being changed
+ switch (id)
+ {
+ case 765:
+ return 886229536;
+ case 760:
+ return 1645744423;
+ case 761:
+ return 1645809959;
+ }
+
+ return id;
}
- return id;
+ else
+ {
+ int id = HashCode.Combine(IP, Port);
+ return id < 0 ? Math.Abs(id) : id;
+ }
}
public async Task OnPlayerJoined(Player logClient)
diff --git a/RunPublishRelease.cmd b/RunPublishRelease.cmd
new file mode 100644
index 00000000..d0b60713
--- /dev/null
+++ b/RunPublishRelease.cmd
@@ -0,0 +1,8 @@
+dotnet publish WebfrontCore/WebfrontCore.csproj -c Release -o C:\Projects\IW4M-Admin\Publish\Windows
+dotnet publish Application/Application.csproj -c Release -o C:\Projects\IW4M-Admin\Publish\Windows
+dotnet publish GameLogServer/GameLogServer.pyproj -c Release -o C:\Projects\IW4M-Admin\Publish\Windows\GameLogServer
+call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\Tools\VsDevCmd.bat"
+msbuild GameLogServer/GameLogServer.pyproj /p:PublishProfile=Stable /p:DeployOnBuild=true /p:PublishProfileRootFolder=C:\Projects\IW4M-Admin\GameLogServer\
+msbuild DiscordWebhook/DiscordWebhook.pyproj /p:PublishProfile=Stable /p:DeployOnBuild=true /p:PublishProfileRootFolder=C:\Projects\IW4M-Admin\DiscordWebhook\
+cd "C:\Projects\IW4M-Admin\DEPLOY\"
+PowerShell ".\upload_release.ps1"
\ No newline at end of file