using System.Text.Json.Serialization; using Core.Models.Common; namespace Core.Models.Spt.Bots; public record BotGenerationDetails { /// /// Should the bot be generated as a PMC /// [JsonPropertyName("isPmc")] public bool? IsPmc { get; set; } /// /// assault/pmcBot etc /// [JsonPropertyName("role")] public string? Role { get; set; } /// /// Side of bot /// [JsonPropertyName("side")] public string? Side { get; set; } /// /// Active players current level /// [JsonPropertyName("playerLevel")] public double? PlayerLevel { get; set; } [JsonPropertyName("playerName")] public string? PlayerName { get; set; } /// /// Level specific overrides for PMC level /// [JsonPropertyName("locationSpecificPmcLevelOverride")] public MinMax? LocationSpecificPmcLevelOverride { get; set; } /// /// Delta of highest level of bot e.g. 50 means 50 levels above player /// [JsonPropertyName("botRelativeLevelDeltaMax")] public double? BotRelativeLevelDeltaMax { get; set; } /// /// Delta of lowest level of bot e.g. 50 means 50 levels below player /// [JsonPropertyName("botRelativeLevelDeltaMin")] public double? BotRelativeLevelDeltaMin { get; set; } /// /// How many to create and store /// [JsonPropertyName("botCountToGenerate")] public int? BotCountToGenerate { get; set; } /// /// Desired difficulty of the bot /// [JsonPropertyName("botDifficulty")] public string? BotDifficulty { get; set; } /// /// Will the generated bot be a player scav /// [JsonPropertyName("isPlayerScav")] public bool? IsPlayerScav { get; set; } [JsonPropertyName("eventRole")] public string? EventRole { get; set; } [JsonPropertyName("allPmcsHaveSameNameAsPlayer")] public bool? AllPmcsHaveSameNameAsPlayer { get; set; } }