fix issue with selecting wrong parser during setup
add minimum name length option fix issue with stats spm
This commit is contained in:
parent
9cbca390fe
commit
95cbc85144
@ -872,8 +872,12 @@ namespace IW4MAdmin.Plugins.Stats.Helpers
|
|||||||
victimStats.LastScore = 0;
|
victimStats.LastScore = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
var estimatedAttackerScore = attacker.Score > 0 ? attacker.Score : attackerStats.SessionKills * 50;
|
var estimatedAttackerScore = (int)attacker.CurrentServer.GameName != 10
|
||||||
var estimatedVictimScore = victim.Score > 0 ? victim.Score : victimStats.SessionKills * 50;
|
? attacker.Score
|
||||||
|
: (attackerStats.SessionKills * 50) / (attacker.ConnectionLength / 60);
|
||||||
|
var estimatedVictimScore = (int)attacker.CurrentServer.GameName != 10
|
||||||
|
? victim.Score
|
||||||
|
: victimStats.SessionKills * 50 / (attacker.ConnectionLength / 60);
|
||||||
|
|
||||||
attackerStats.SessionScore = estimatedAttackerScore;
|
attackerStats.SessionScore = estimatedAttackerScore;
|
||||||
victimStats.SessionScore = estimatedVictimScore;
|
victimStats.SessionScore = estimatedVictimScore;
|
||||||
|
@ -146,6 +146,7 @@ namespace SharedLibraryCore.Configuration
|
|||||||
[UIHint("ServerConfiguration")]
|
[UIHint("ServerConfiguration")]
|
||||||
public ServerConfiguration[] Servers { get; set; }
|
public ServerConfiguration[] Servers { get; set; }
|
||||||
|
|
||||||
|
[ConfigurationIgnore] public int MinimumNameLength { get; set; } = 3;
|
||||||
[ConfigurationIgnore] public string Id { get; set; }
|
[ConfigurationIgnore] public string Id { get; set; }
|
||||||
[ConfigurationIgnore] public string SubscriptionId { get; set; }
|
[ConfigurationIgnore] public string SubscriptionId { get; set; }
|
||||||
[ConfigurationIgnore] public MapConfiguration[] Maps { get; set; }
|
[ConfigurationIgnore] public MapConfiguration[] Maps { get; set; }
|
||||||
|
@ -65,7 +65,7 @@ namespace SharedLibraryCore.Configuration
|
|||||||
{
|
{
|
||||||
RConParserVersion = rconParsers.FirstOrDefault(_parser => _parser.Name == selection.Item2)?.Version;
|
RConParserVersion = rconParsers.FirstOrDefault(_parser => _parser.Name == selection.Item2)?.Version;
|
||||||
|
|
||||||
if (selection.Item1 > 0 && !rconParsers[selection.Item1 - 1].CanGenerateLogPath)
|
if (selection.Item1 > 0 && !rconParsers[selection.Item1].CanGenerateLogPath)
|
||||||
{
|
{
|
||||||
Console.WriteLine(loc["SETUP_SERVER_NO_LOG"]);
|
Console.WriteLine(loc["SETUP_SERVER_NO_LOG"]);
|
||||||
ManualLogPath = Utilities.PromptString(loc["SETUP_SERVER_LOG_PATH"]);
|
ManualLogPath = Utilities.PromptString(loc["SETUP_SERVER_LOG_PATH"]);
|
||||||
|
@ -457,9 +457,10 @@ namespace SharedLibraryCore.Database.Models
|
|||||||
|
|
||||||
using (LogContext.PushProperty("Server", CurrentServer?.ToString()))
|
using (LogContext.PushProperty("Server", CurrentServer?.ToString()))
|
||||||
{
|
{
|
||||||
if (string.IsNullOrWhiteSpace(Name) || CleanedName.Replace(" ", "").Length < 3)
|
if (string.IsNullOrWhiteSpace(Name) || CleanedName.Replace(" ", "").Length <
|
||||||
|
(CurrentServer?.Manager?.GetApplicationSettings()?.Configuration()?.MinimumNameLength ?? 3))
|
||||||
{
|
{
|
||||||
Utilities.DefaultLogger.LogInformation("Kicking {client} because their name is too short", ToString());
|
Utilities.DefaultLogger.LogInformation("Kicking {Client} because their name is too short", ToString());
|
||||||
Kick(loc["SERVER_KICK_MINNAME"], Utilities.IW4MAdminClient(CurrentServer));
|
Kick(loc["SERVER_KICK_MINNAME"], Utilities.IW4MAdminClient(CurrentServer));
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
@ -468,14 +469,14 @@ namespace SharedLibraryCore.Database.Models
|
|||||||
.DisallowedClientNames
|
.DisallowedClientNames
|
||||||
?.Any(_name => Regex.IsMatch(Name, _name)) ?? false)
|
?.Any(_name => Regex.IsMatch(Name, _name)) ?? false)
|
||||||
{
|
{
|
||||||
Utilities.DefaultLogger.LogInformation("Kicking {client} because their name is not allowed", ToString());
|
Utilities.DefaultLogger.LogInformation("Kicking {Client} because their name is not allowed", ToString());
|
||||||
Kick(loc["SERVER_KICK_GENERICNAME"], Utilities.IW4MAdminClient(CurrentServer));
|
Kick(loc["SERVER_KICK_GENERICNAME"], Utilities.IW4MAdminClient(CurrentServer));
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (Name.Where(c => char.IsControl(c)).Count() > 0)
|
if (Name.Where(c => char.IsControl(c)).Count() > 0)
|
||||||
{
|
{
|
||||||
Utilities.DefaultLogger.LogInformation("Kicking {client} because their name contains control characters", ToString());
|
Utilities.DefaultLogger.LogInformation("Kicking {Client} because their name contains control characters", ToString());
|
||||||
Kick(loc["SERVER_KICK_CONTROLCHARS"], Utilities.IW4MAdminClient(CurrentServer));
|
Kick(loc["SERVER_KICK_CONTROLCHARS"], Utilities.IW4MAdminClient(CurrentServer));
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
@ -487,7 +488,7 @@ namespace SharedLibraryCore.Database.Models
|
|||||||
CurrentServer.GetClientsAsList().Count <= CurrentServer.MaxClients &&
|
CurrentServer.GetClientsAsList().Count <= CurrentServer.MaxClients &&
|
||||||
CurrentServer.MaxClients != 0)
|
CurrentServer.MaxClients != 0)
|
||||||
{
|
{
|
||||||
Utilities.DefaultLogger.LogInformation("Kicking {client} their spot is reserved", ToString());
|
Utilities.DefaultLogger.LogInformation("Kicking {Client} their spot is reserved", ToString());
|
||||||
Kick(loc["SERVER_KICK_SLOT_IS_RESERVED"], Utilities.IW4MAdminClient(CurrentServer));
|
Kick(loc["SERVER_KICK_SLOT_IS_RESERVED"], Utilities.IW4MAdminClient(CurrentServer));
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user