Repositories / GSConfigTool / GsConfigTool / Models / PalworldServerSettings.cs
PalworldServerSettings.cs 5.0 KB
git clone https://rl-dev.de/git/gsconfigtool Raw Download
namespace GsConfigTool.Models;

public class PalworldServerSettings
{
    // ── Server Info ───────────────────────────────────────────────────────
    public string ServerName { get; set; } = "My Palworld Server";
    public string ServerDescription { get; set; } = "";
    public string AdminPassword { get; set; } = "adminpassword";
    public string ServerPassword { get; set; } = "";
    public string PublicIP { get; set; } = "";
    public int PublicPort { get; set; } = 8211;
    public int CoopPlayerMaxNum { get; set; } = 4;
    public int ServerPlayerMaxNum { get; set; } = 32;
    public string Region { get; set; } = "";

    // ── Gameplay ──────────────────────────────────────────────────────────
    public string Difficulty { get; set; } = "None";
    public float DayTimeSpeedRate { get; set; } = 1.0f;
    public float NightTimeSpeedRate { get; set; } = 1.0f;
    public float ExpRate { get; set; } = 1.0f;
    public float PalCaptureRate { get; set; } = 1.0f;
    public float PalSpawnNumRate { get; set; } = 1.0f;
    public float EnemyDropItemRate { get; set; } = 1.0f;
    public string DeathPenalty { get; set; } = "All";

    // ── Pal Combat ────────────────────────────────────────────────────────
    public float PalDamageRateAttack { get; set; } = 1.0f;
    public float PalDamageRateDefense { get; set; } = 1.0f;
    public float PalStomachDecreaseRate { get; set; } = 1.0f;
    public float PalStaminaDecreaseRate { get; set; } = 1.0f;
    public float PalAutoHPRegeneRate { get; set; } = 1.0f;
    public float PalAutoHpRegeneRateInSleep { get; set; } = 1.0f;

    // ── Player Combat ─────────────────────────────────────────────────────
    public float PlayerDamageRateAttack { get; set; } = 1.0f;
    public float PlayerDamageRateDefense { get; set; } = 1.0f;
    public float PlayerStomachDecreaseRate { get; set; } = 1.0f;
    public float PlayerStaminaDecreaseRate { get; set; } = 1.0f;
    public float PlayerAutoHPRegeneRate { get; set; } = 1.0f;
    public float PlayerAutoHpRegeneRateInSleep { get; set; } = 1.0f;

    // ── Building ──────────────────────────────────────────────────────────
    public float BuildObjectDamageRate { get; set; } = 1.0f;
    public float BuildObjectDeteriorationDamageRate { get; set; } = 1.0f;
    public int BaseCampMaxNum { get; set; } = 128;
    public int BaseCampWorkerMaxNum { get; set; } = 15;

    // ── Collection ────────────────────────────────────────────────────────
    public float CollectionDropRate { get; set; } = 1.0f;
    public float CollectionObjectHpRate { get; set; } = 1.0f;
    public float CollectionObjectRespawnSpeedRate { get; set; } = 1.0f;

    // ── PvP / Multiplayer ─────────────────────────────────────────────────
    public bool bIsPvP { get; set; } = false;
    public bool bEnablePlayerToPlayerDamage { get; set; } = false;
    public bool bEnableFriendlyFire { get; set; } = false;
    public bool bEnableInvaderEnemy { get; set; } = true;
    public bool bCanPickupOtherGuildDeathPenaltyDrop { get; set; } = false;
    public bool bEnableDefenseOtherGuildPlayer { get; set; } = false;

    // ── World ─────────────────────────────────────────────────────────────
    public bool bEnableFastTravel { get; set; } = true;
    public bool bIsStartLocationSelectByMap { get; set; } = true;
    public bool bExistPlayerAfterLogout { get; set; } = false;
    public bool bEnableNonLoginPenalty { get; set; } = true;
    public int DropItemMaxNum { get; set; } = 3000;
    public float DropItemAliveForPlayerTime { get; set; } = 600.0f;
    public bool bEnableAimAssistPad { get; set; } = true;
    public bool bEnableAimAssistKeyboard { get; set; } = false;
    public bool bActiveUNKO { get; set; } = false;

    // ── RCON / Auth ───────────────────────────────────────────────────────
    public bool RCONEnabled { get; set; } = false;
    public int RCONPort { get; set; } = 25575;
    public bool bUseAuth { get; set; } = true;
    public string BanListURL { get; set; } = "https://api.palworldgame.com/api/banlist.txt";
}
24Fire Wuppertaler Tafel Romeo