Please disclose if any significant portion of your mod was created using AI tools by adding the 'AI Generated' category. Failing to do so may result in the mod being removed from Thunderstore.
Decompiled source of UpdatedSurvivorStatConfig v1.3.0
SurvivorConfig.dll
Decompiled 5 months agousing System; using System.Diagnostics; using System.Reflection; using System.Runtime.CompilerServices; using System.Runtime.Versioning; using System.Security; using System.Security.Permissions; using BepInEx; using BepInEx.Configuration; using Microsoft.CodeAnalysis; using RoR2; using SurvivorConfig.Characters; using UnityEngine; [assembly: CompilationRelaxations(8)] [assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)] [assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | DebuggableAttribute.DebuggingModes.EnableEditAndContinue)] [assembly: TargetFramework(".NETStandard,Version=v2.1", FrameworkDisplayName = ".NET Standard 2.1")] [assembly: AssemblyCompany("SurvivorConfig")] [assembly: AssemblyConfiguration("Debug")] [assembly: AssemblyFileVersion("1.0.0.0")] [assembly: AssemblyInformationalVersion("1.0.0")] [assembly: AssemblyProduct("SurvivorConfig")] [assembly: AssemblyTitle("SurvivorConfig")] [assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)] [assembly: AssemblyVersion("1.0.0.0")] [module: UnverifiableCode] [module: RefSafetyRules(11)] namespace Microsoft.CodeAnalysis { [CompilerGenerated] [Microsoft.CodeAnalysis.Embedded] internal sealed class EmbeddedAttribute : Attribute { } } namespace System.Runtime.CompilerServices { [CompilerGenerated] [Microsoft.CodeAnalysis.Embedded] [AttributeUsage(AttributeTargets.Module, AllowMultiple = false, Inherited = false)] internal sealed class RefSafetyRulesAttribute : Attribute { public readonly int Version; public RefSafetyRulesAttribute(int P_0) { Version = P_0; } } } namespace SurvivorConfig { internal class SurvivorBase { public static GameObject CommandoPrefab; public static CharBase CommandoStats; public static GameObject HuntressPrefab; public static CharBase HuntressStats; public static GameObject BanditPrefab; public static CharBase BanditStats; public static GameObject MULTPrefab; public static CharBase MULTStats; public static GameObject EngineerPrefab; public static CharBase EngineerStats; public static GameObject ArtificerPrefab; public static CharBase ArtificerStats; public static GameObject MercenaryPrefab; public static CharBase MercenaryStats; public static GameObject REXPrefab; public static CharBase REXStats; public static GameObject LoaderPrefab; public static CharBase LoaderStats; public static GameObject AcridPrefab; public static CharBase AcridStats; public static GameObject CaptainPrefab; public static CharBase CaptainStats; public static GameObject HereticPrefab; public static CharBase HereticStats; public static GameObject VoidFiendPrefab; public static CharBase VoidFiendStats; public static GameObject RailgunnerPrefab; public static CharBase RailgunnerStats; public static GameObject SeekerPrefab; public static CharBase SeekerStats; public static GameObject FalseSonPrefab; public static CharBase FalseSonStats; public static GameObject CHEFPrefab; public static CharBase CHEFStats; public static GameObject OperatorPrefab; public static CharBase OperatorStats; public static GameObject DrifterPrefab; public static CharBase DrifterStats; public static GameObject robpaladinPrefab = Resources.Load<GameObject>("Prefabs/CharacterBodies/PaladinBody"); public static CharBase robpaladinStats = new CharBase(); public static GameObject nemesisenforcerPrefab = Resources.Load<GameObject>("Prefabs/CharacterBodies/NemesisEnforcerBody"); public static CharBase nemesisenforcerStats = new CharBase(); public static GameObject minerPrefab = Resources.Load<GameObject>("Prefabs/CharacterBodies/MinerBody"); public static CharBase minerStats = new CharBase(); public static void Rebalance() { SurvivorConfig.ConfigSetup(); ((ResourceAvailability)(ref BodyCatalog.availability)).CallWhenAvailable((Action)CharChanges.Gaming); } } internal class SurvivorConfig : SurvivorBase { public static ConfigFile StatConfig { get; set; } public static ConfigEntry<float> MandoBaseHealth { get; set; } public static ConfigEntry<float> MandoLevelHealth { get; set; } public static ConfigEntry<float> MandoBaseShield { get; set; } public static ConfigEntry<float> MandoLevelShield { get; set; } public static ConfigEntry<float> MandoBaseRegen { get; set; } public static ConfigEntry<float> MandoLevelRegen { get; set; } public static ConfigEntry<float> MandoBaseDamage { get; set; } public static ConfigEntry<float> MandoLevelDamage { get; set; } public static ConfigEntry<float> MandoArmor { get; set; } public static ConfigEntry<float> MandoSpeed { get; set; } public static ConfigEntry<float> HuntBaseHealth { get; set; } public static ConfigEntry<float> HuntLevelHealth { get; set; } public static ConfigEntry<float> HuntBaseShield { get; set; } public static ConfigEntry<float> HuntLevelShield { get; set; } public static ConfigEntry<float> HuntBaseRegen { get; set; } public static ConfigEntry<float> HuntLevelRegen { get; set; } public static ConfigEntry<float> HuntBaseDamage { get; set; } public static ConfigEntry<float> HuntLevelDamage { get; set; } public static ConfigEntry<float> HuntArmor { get; set; } public static ConfigEntry<float> HuntSpeed { get; set; } public static ConfigEntry<float> BndtBaseHealth { get; set; } public static ConfigEntry<float> BndtLevelHealth { get; set; } public static ConfigEntry<float> BndtBaseShield { get; set; } public static ConfigEntry<float> BndtLevelShield { get; set; } public static ConfigEntry<float> BndtBaseRegen { get; set; } public static ConfigEntry<float> BndtLevelRegen { get; set; } public static ConfigEntry<float> BndtBaseDamage { get; set; } public static ConfigEntry<float> BndtLevelDamage { get; set; } public static ConfigEntry<float> BndtArmor { get; set; } public static ConfigEntry<float> BndtSpeed { get; set; } public static ConfigEntry<float> MulTBaseHealth { get; set; } public static ConfigEntry<float> MulTLevelHealth { get; set; } public static ConfigEntry<float> MulTBaseShield { get; set; } public static ConfigEntry<float> MulTLevelShield { get; set; } public static ConfigEntry<float> MulTBaseRegen { get; set; } public static ConfigEntry<float> MulTLevelRegen { get; set; } public static ConfigEntry<float> MulTBaseDamage { get; set; } public static ConfigEntry<float> MulTLevelDamage { get; set; } public static ConfigEntry<float> MulTArmor { get; set; } public static ConfigEntry<float> MulTSpeed { get; set; } public static ConfigEntry<float> EngiBaseHealth { get; set; } public static ConfigEntry<float> EngiLevelHealth { get; set; } public static ConfigEntry<float> EngiBaseShield { get; set; } public static ConfigEntry<float> EngiLevelShield { get; set; } public static ConfigEntry<float> EngiBaseRegen { get; set; } public static ConfigEntry<float> EngiLevelRegen { get; set; } public static ConfigEntry<float> EngiBaseDamage { get; set; } public static ConfigEntry<float> EngiLevelDamage { get; set; } public static ConfigEntry<float> EngiArmor { get; set; } public static ConfigEntry<float> EngiSpeed { get; set; } public static ConfigEntry<float> ArtiBaseHealth { get; set; } public static ConfigEntry<float> ArtiLevelHealth { get; set; } public static ConfigEntry<float> ArtiBaseShield { get; set; } public static ConfigEntry<float> ArtiLevelShield { get; set; } public static ConfigEntry<float> ArtiBaseRegen { get; set; } public static ConfigEntry<float> ArtiLevelRegen { get; set; } public static ConfigEntry<float> ArtiBaseDamage { get; set; } public static ConfigEntry<float> ArtiLevelDamage { get; set; } public static ConfigEntry<float> ArtiArmor { get; set; } public static ConfigEntry<float> ArtiSpeed { get; set; } public static ConfigEntry<float> MercBaseHealth { get; set; } public static ConfigEntry<float> MercLevelHealth { get; set; } public static ConfigEntry<float> MercBaseShield { get; set; } public static ConfigEntry<float> MercLevelShield { get; set; } public static ConfigEntry<float> MercBaseRegen { get; set; } public static ConfigEntry<float> MercLevelRegen { get; set; } public static ConfigEntry<float> MercBaseDamage { get; set; } public static ConfigEntry<float> MercLevelDamage { get; set; } public static ConfigEntry<float> MercArmor { get; set; } public static ConfigEntry<float> MercSpeed { get; set; } public static ConfigEntry<float> RexBaseHealth { get; set; } public static ConfigEntry<float> RexLevelHealth { get; set; } public static ConfigEntry<float> RexBaseShield { get; set; } public static ConfigEntry<float> RexLevelShield { get; set; } public static ConfigEntry<float> RexBaseRegen { get; set; } public static ConfigEntry<float> RexLevelRegen { get; set; } public static ConfigEntry<float> RexBaseDamage { get; set; } public static ConfigEntry<float> RexLevelDamage { get; set; } public static ConfigEntry<float> RexArmor { get; set; } public static ConfigEntry<float> RexSpeed { get; set; } public static ConfigEntry<float> LodrBaseHealth { get; set; } public static ConfigEntry<float> LodrLevelHealth { get; set; } public static ConfigEntry<float> LodrBaseShield { get; set; } public static ConfigEntry<float> LodrLevelShield { get; set; } public static ConfigEntry<float> LodrBaseRegen { get; set; } public static ConfigEntry<float> LodrLevelRegen { get; set; } public static ConfigEntry<float> LodrBaseDamage { get; set; } public static ConfigEntry<float> LodrLevelDamage { get; set; } public static ConfigEntry<float> LodrArmor { get; set; } public static ConfigEntry<float> LodrSpeed { get; set; } public static ConfigEntry<float> CrocBaseHealth { get; set; } public static ConfigEntry<float> CrocLevelHealth { get; set; } public static ConfigEntry<float> CrocBaseShield { get; set; } public static ConfigEntry<float> CrocLevelShield { get; set; } public static ConfigEntry<float> CrocBaseRegen { get; set; } public static ConfigEntry<float> CrocLevelRegen { get; set; } public static ConfigEntry<float> CrocBaseDamage { get; set; } public static ConfigEntry<float> CrocLevelDamage { get; set; } public static ConfigEntry<float> CrocArmor { get; set; } public static ConfigEntry<float> CrocSpeed { get; set; } public static ConfigEntry<float> CaptBaseHealth { get; set; } public static ConfigEntry<float> CaptLevelHealth { get; set; } public static ConfigEntry<float> CaptBaseShield { get; set; } public static ConfigEntry<float> CaptLevelShield { get; set; } public static ConfigEntry<float> CaptBaseRegen { get; set; } public static ConfigEntry<float> CaptLevelRegen { get; set; } public static ConfigEntry<float> CaptBaseDamage { get; set; } public static ConfigEntry<float> CaptLevelDamage { get; set; } public static ConfigEntry<float> CaptArmor { get; set; } public static ConfigEntry<float> CaptSpeed { get; set; } public static ConfigEntry<float> BirbBaseHealth { get; set; } public static ConfigEntry<float> BirbLevelHealth { get; set; } public static ConfigEntry<float> BirbBaseShield { get; set; } public static ConfigEntry<float> BirbLevelShield { get; set; } public static ConfigEntry<float> BirbBaseRegen { get; set; } public static ConfigEntry<float> BirbLevelRegen { get; set; } public static ConfigEntry<float> BirbBaseDamage { get; set; } public static ConfigEntry<float> BirbLevelDamage { get; set; } public static ConfigEntry<float> BirbArmor { get; set; } public static ConfigEntry<float> BirbSpeed { get; set; } public static ConfigEntry<float> VoidSurvivorBaseHealth { get; set; } public static ConfigEntry<float> VoidSurvivorLevelHealth { get; set; } public static ConfigEntry<float> VoidSurvivorBaseShield { get; set; } public static ConfigEntry<float> VoidSurvivorLevelShield { get; set; } public static ConfigEntry<float> VoidSurvivorBaseRegen { get; set; } public static ConfigEntry<float> VoidSurvivorLevelRegen { get; set; } public static ConfigEntry<float> VoidSurvivorBaseDamage { get; set; } public static ConfigEntry<float> VoidSurvivorLevelDamage { get; set; } public static ConfigEntry<float> VoidSurvivorArmor { get; set; } public static ConfigEntry<float> VoidSurvivorSpeed { get; set; } public static ConfigEntry<float> RailGunnerBaseHealth { get; set; } public static ConfigEntry<float> RailGunnerLevelHealth { get; set; } public static ConfigEntry<float> RailGunnerBaseShield { get; set; } public static ConfigEntry<float> RailGunnerLevelShield { get; set; } public static ConfigEntry<float> RailGunnerBaseRegen { get; set; } public static ConfigEntry<float> RailGunnerLevelRegen { get; set; } public static ConfigEntry<float> RailGunnerBaseDamage { get; set; } public static ConfigEntry<float> RailGunnerLevelDamage { get; set; } public static ConfigEntry<float> RailGunnerArmor { get; set; } public static ConfigEntry<float> RailGunnerSpeed { get; set; } public static ConfigEntry<float> SeekerBaseHealth { get; set; } public static ConfigEntry<float> SeekerLevelHealth { get; set; } public static ConfigEntry<float> SeekerBaseShield { get; set; } public static ConfigEntry<float> SeekerLevelShield { get; set; } public static ConfigEntry<float> SeekerBaseRegen { get; set; } public static ConfigEntry<float> SeekerLevelRegen { get; set; } public static ConfigEntry<float> SeekerBaseDamage { get; set; } public static ConfigEntry<float> SeekerLevelDamage { get; set; } public static ConfigEntry<float> SeekerArmor { get; set; } public static ConfigEntry<float> SeekerSpeed { get; set; } public static ConfigEntry<float> FalseSonBaseHealth { get; set; } public static ConfigEntry<float> FalseSonLevelHealth { get; set; } public static ConfigEntry<float> FalseSonBaseShield { get; set; } public static ConfigEntry<float> FalseSonLevelShield { get; set; } public static ConfigEntry<float> FalseSonBaseRegen { get; set; } public static ConfigEntry<float> FalseSonLevelRegen { get; set; } public static ConfigEntry<float> FalseSonBaseDamage { get; set; } public static ConfigEntry<float> FalseSonLevelDamage { get; set; } public static ConfigEntry<float> FalseSonArmor { get; set; } public static ConfigEntry<float> FalseSonSpeed { get; set; } public static ConfigEntry<float> CHEFBaseHealth { get; set; } public static ConfigEntry<float> CHEFLevelHealth { get; set; } public static ConfigEntry<float> CHEFBaseShield { get; set; } public static ConfigEntry<float> CHEFLevelShield { get; set; } public static ConfigEntry<float> CHEFBaseRegen { get; set; } public static ConfigEntry<float> CHEFLevelRegen { get; set; } public static ConfigEntry<float> CHEFBaseDamage { get; set; } public static ConfigEntry<float> CHEFLevelDamage { get; set; } public static ConfigEntry<float> CHEFArmor { get; set; } public static ConfigEntry<float> CHEFSpeed { get; set; } public static ConfigEntry<float> OperatorBaseHealth { get; set; } public static ConfigEntry<float> OperatorLevelHealth { get; set; } public static ConfigEntry<float> OperatorBaseShield { get; set; } public static ConfigEntry<float> OperatorLevelShield { get; set; } public static ConfigEntry<float> OperatorBaseRegen { get; set; } public static ConfigEntry<float> OperatorLevelRegen { get; set; } public static ConfigEntry<float> OperatorBaseDamage { get; set; } public static ConfigEntry<float> OperatorLevelDamage { get; set; } public static ConfigEntry<float> OperatorArmor { get; set; } public static ConfigEntry<float> OperatorSpeed { get; set; } public static ConfigEntry<float> DrifterBaseHealth { get; set; } public static ConfigEntry<float> DrifterLevelHealth { get; set; } public static ConfigEntry<float> DrifterBaseShield { get; set; } public static ConfigEntry<float> DrifterLevelShield { get; set; } public static ConfigEntry<float> DrifterBaseRegen { get; set; } public static ConfigEntry<float> DrifterLevelRegen { get; set; } public static ConfigEntry<float> DrifterBaseDamage { get; set; } public static ConfigEntry<float> DrifterLevelDamage { get; set; } public static ConfigEntry<float> DrifterArmor { get; set; } public static ConfigEntry<float> DrifterSpeed { get; set; } public static ConfigEntry<float> RobPaladinBaseHealth { get; set; } public static ConfigEntry<float> RobPaladinLevelHealth { get; set; } public static ConfigEntry<float> RobPaladinBaseShield { get; set; } public static ConfigEntry<float> RobPaladinLevelShield { get; set; } public static ConfigEntry<float> RobPaladinBaseRegen { get; set; } public static ConfigEntry<float> RobPaladinLevelRegen { get; set; } public static ConfigEntry<float> RobPaladinBaseDamage { get; set; } public static ConfigEntry<float> RobPaladinLevelDamage { get; set; } public static ConfigEntry<float> RobPaladinArmor { get; set; } public static ConfigEntry<float> RobPaladinSpeed { get; set; } public static ConfigEntry<float> NemesisEnforcerBaseHealth { get; set; } public static ConfigEntry<float> NemesisEnforcerLevelHealth { get; set; } public static ConfigEntry<float> NemesisEnforcerBaseShield { get; set; } public static ConfigEntry<float> NemesisEnforcerLevelShield { get; set; } public static ConfigEntry<float> NemesisEnforcerBaseRegen { get; set; } public static ConfigEntry<float> NemesisEnforcerLevelRegen { get; set; } public static ConfigEntry<float> NemesisEnforcerBaseDamage { get; set; } public static ConfigEntry<float> NemesisEnforcerLevelDamage { get; set; } public static ConfigEntry<float> NemesisEnforcerArmor { get; set; } public static ConfigEntry<float> NemesisEnforcerSpeed { get; set; } public static ConfigEntry<float> MinerBaseHealth { get; set; } public static ConfigEntry<float> MinerLevelHealth { get; set; } public static ConfigEntry<float> MinerBaseShield { get; set; } public static ConfigEntry<float> MinerLevelShield { get; set; } public static ConfigEntry<float> MinerBaseRegen { get; set; } public static ConfigEntry<float> MinerLevelRegen { get; set; } public static ConfigEntry<float> MinerBaseDamage { get; set; } public static ConfigEntry<float> MinerLevelDamage { get; set; } public static ConfigEntry<float> MinerArmor { get; set; } public static ConfigEntry<float> MinerSpeed { get; set; } public static void ConfigSetup() { //IL_0011: Unknown result type (might be due to invalid IL or missing references) //IL_001b: Expected O, but got Unknown StatConfig = new ConfigFile(Paths.ConfigPath + "\\SurvivorConfig.cfg", true); MandoConfig(); HuntConfig(); BndtConfig(); MulTConfig(); EngiConfig(); ArtiConfig(); MercConfig(); RexConfig(); LodrConfig(); CrocConfig(); CaptConfig(); BirbConfig(); VoidSurvivorConfig(); RailGunnerConfig(); SeekerConfig(); FalseSonConfig(); CHEFConfig(); OperatorConfig(); DrifterConfig(); RobPaladinConfig(); NemesisEnforcerConfig(); MinerConfig(); } public static void MandoConfig() { MandoBaseHealth = StatConfig.Bind<float>("Commando", "Base Health", 110f, (ConfigDescription)null); MandoLevelHealth = StatConfig.Bind<float>("Commando", "Health by level", 33f, (ConfigDescription)null); MandoBaseShield = StatConfig.Bind<float>("Commando", "Base Shield", 0f, (ConfigDescription)null); MandoLevelShield = StatConfig.Bind<float>("Commando", "Shield by level", 0f, (ConfigDescription)null); MandoBaseRegen = StatConfig.Bind<float>("Commando", "Base Regen", 1f, (ConfigDescription)null); MandoLevelRegen = StatConfig.Bind<float>("Commando", "Regen by level", 0.2f, (ConfigDescription)null); MandoBaseDamage = StatConfig.Bind<float>("Commando", "Base Damage", 12f, (ConfigDescription)null); MandoLevelDamage = StatConfig.Bind<float>("Commando", "Damage by level", 2.4f, (ConfigDescription)null); MandoArmor = StatConfig.Bind<float>("Commando", "Armor", 0f, (ConfigDescription)null); MandoSpeed = StatConfig.Bind<float>("Commando", "Base Speed", 7f, (ConfigDescription)null); SurvivorBase.CommandoStats = new CharBase { healthBase = MandoBaseHealth.Value, healthLevel = MandoLevelHealth.Value, regenBase = MandoBaseRegen.Value, regenLevel = MandoLevelRegen.Value, damageBase = MandoBaseDamage.Value, damageLevel = MandoLevelDamage.Value, shieldBase = MandoBaseShield.Value, shieldLevel = MandoLevelShield.Value, armor = MandoArmor.Value, moveSpeed = MandoSpeed.Value }; } public static void HuntConfig() { HuntBaseHealth = StatConfig.Bind<float>("Huntress", "Base Health", 90f, (ConfigDescription)null); HuntLevelHealth = StatConfig.Bind<float>("Huntress", "Health by level", 27f, (ConfigDescription)null); HuntBaseShield = StatConfig.Bind<float>("Huntress", "Base Shield", 0f, (ConfigDescription)null); HuntLevelShield = StatConfig.Bind<float>("Huntress", "Shield by level", 0f, (ConfigDescription)null); HuntBaseRegen = StatConfig.Bind<float>("Huntress", "Base Regen", 1f, (ConfigDescription)null); HuntLevelRegen = StatConfig.Bind<float>("Huntress", "Regen by level", 0.2f, (ConfigDescription)null); HuntBaseDamage = StatConfig.Bind<float>("Huntress", "Base Damage", 12f, (ConfigDescription)null); HuntLevelDamage = StatConfig.Bind<float>("Huntress", "Damage by level", 2.4f, (ConfigDescription)null); HuntArmor = StatConfig.Bind<float>("Huntress", "Armor", 0f, (ConfigDescription)null); HuntSpeed = StatConfig.Bind<float>("Huntress", "Base Speed", 7f, (ConfigDescription)null); SurvivorBase.HuntressStats = new CharBase { healthBase = HuntBaseHealth.Value, healthLevel = HuntLevelHealth.Value, regenBase = HuntBaseRegen.Value, regenLevel = HuntLevelRegen.Value, damageBase = HuntBaseDamage.Value, damageLevel = HuntLevelDamage.Value, shieldBase = HuntBaseShield.Value, shieldLevel = HuntLevelShield.Value, armor = HuntArmor.Value, moveSpeed = HuntSpeed.Value }; } public static void BndtConfig() { BndtBaseHealth = StatConfig.Bind<float>("Bandit", "Base Health", 110f, (ConfigDescription)null); BndtLevelHealth = StatConfig.Bind<float>("Bandit", "Health by level", 33f, (ConfigDescription)null); BndtBaseShield = StatConfig.Bind<float>("Bandit", "Base Shield", 0f, (ConfigDescription)null); BndtLevelShield = StatConfig.Bind<float>("Bandit", "Shield by level", 0f, (ConfigDescription)null); BndtBaseRegen = StatConfig.Bind<float>("Bandit", "Base Regen", 1f, (ConfigDescription)null); BndtLevelRegen = StatConfig.Bind<float>("Bandit", "Regen by level", 0.24f, (ConfigDescription)null); BndtBaseDamage = StatConfig.Bind<float>("Bandit", "Base Damage", 12f, (ConfigDescription)null); BndtLevelDamage = StatConfig.Bind<float>("Bandit", "Damage by level", 2.4f, (ConfigDescription)null); BndtArmor = StatConfig.Bind<float>("Bandit", "Armor", 0f, (ConfigDescription)null); BndtSpeed = StatConfig.Bind<float>("Bandit", "Base Speed", 7f, (ConfigDescription)null); SurvivorBase.BanditStats = new CharBase { healthBase = BndtBaseHealth.Value, healthLevel = BndtLevelHealth.Value, regenBase = BndtBaseRegen.Value, regenLevel = BndtLevelRegen.Value, damageBase = BndtBaseDamage.Value, damageLevel = BndtLevelDamage.Value, shieldBase = BndtBaseShield.Value, shieldLevel = BndtLevelShield.Value, armor = BndtArmor.Value, moveSpeed = BndtSpeed.Value }; } public static void MulTConfig() { MulTBaseHealth = StatConfig.Bind<float>("MUL-T", "Base Health", 200f, (ConfigDescription)null); MulTLevelHealth = StatConfig.Bind<float>("MUL-T", "Health by level", 60f, (ConfigDescription)null); MulTBaseShield = StatConfig.Bind<float>("MUL-T", "Base Shield", 0f, (ConfigDescription)null); MulTLevelShield = StatConfig.Bind<float>("MUL-T", "Shield by level", 0f, (ConfigDescription)null); MulTBaseRegen = StatConfig.Bind<float>("MUL-T", "Base Regen", 1f, (ConfigDescription)null); MulTLevelRegen = StatConfig.Bind<float>("MUL-T", "Regen by level", 0.2f, (ConfigDescription)null); MulTBaseDamage = StatConfig.Bind<float>("MUL-T", "Base Damage", 11f, (ConfigDescription)null); MulTLevelDamage = StatConfig.Bind<float>("MUL-T", "Damage by level", 2.2f, (ConfigDescription)null); MulTArmor = StatConfig.Bind<float>("MUL-T", "Armor", 14f, (ConfigDescription)null); MulTSpeed = StatConfig.Bind<float>("MUL-T", "Base Speed", 7f, (ConfigDescription)null); SurvivorBase.MULTStats = new CharBase { healthBase = MulTBaseHealth.Value, healthLevel = MulTLevelHealth.Value, regenBase = MulTBaseRegen.Value, regenLevel = MulTLevelRegen.Value, damageBase = MulTBaseDamage.Value, damageLevel = MulTLevelDamage.Value, shieldBase = MulTBaseShield.Value, shieldLevel = MulTLevelShield.Value, armor = MulTArmor.Value, moveSpeed = MulTSpeed.Value }; } public static void EngiConfig() { EngiBaseHealth = StatConfig.Bind<float>("Engineer", "Base Health", 130f, (ConfigDescription)null); EngiLevelHealth = StatConfig.Bind<float>("Engineer", "Health by level", 39f, (ConfigDescription)null); EngiBaseShield = StatConfig.Bind<float>("Engineer", "Base Shield", 0f, (ConfigDescription)null); EngiLevelShield = StatConfig.Bind<float>("Engineer", "Shield by level", 0f, (ConfigDescription)null); EngiBaseRegen = StatConfig.Bind<float>("Engineer", "Base Regen", 1f, (ConfigDescription)null); EngiLevelRegen = StatConfig.Bind<float>("Engineer", "Regen by level", 0.2f, (ConfigDescription)null); EngiBaseDamage = StatConfig.Bind<float>("Engineer", "Base Damage", 14f, (ConfigDescription)null); EngiLevelDamage = StatConfig.Bind<float>("Engineer", "Damage by level", 2.8f, (ConfigDescription)null); EngiArmor = StatConfig.Bind<float>("Engineer", "Armor", 0f, (ConfigDescription)null); EngiSpeed = StatConfig.Bind<float>("Engineer", "Base Speed", 7f, (ConfigDescription)null); SurvivorBase.EngineerStats = new CharBase { healthBase = EngiBaseHealth.Value, healthLevel = EngiLevelHealth.Value, regenBase = EngiBaseRegen.Value, regenLevel = EngiLevelRegen.Value, damageBase = EngiBaseDamage.Value, damageLevel = EngiLevelDamage.Value, shieldBase = EngiBaseShield.Value, shieldLevel = EngiLevelShield.Value, armor = EngiArmor.Value, moveSpeed = EngiSpeed.Value }; } public static void ArtiConfig() { ArtiBaseHealth = StatConfig.Bind<float>("Artificer", "Base Health", 110f, (ConfigDescription)null); ArtiLevelHealth = StatConfig.Bind<float>("Artificer", "Health by level", 33f, (ConfigDescription)null); ArtiBaseShield = StatConfig.Bind<float>("Artificer", "Base Shield", 0f, (ConfigDescription)null); ArtiLevelShield = StatConfig.Bind<float>("Artificer", "Shield by level", 0f, (ConfigDescription)null); ArtiBaseRegen = StatConfig.Bind<float>("Artificer", "Base Regen", 1f, (ConfigDescription)null); ArtiLevelRegen = StatConfig.Bind<float>("Artificer", "Regen by level", 0.2f, (ConfigDescription)null); ArtiBaseDamage = StatConfig.Bind<float>("Artificer", "Base Damage", 12f, (ConfigDescription)null); ArtiLevelDamage = StatConfig.Bind<float>("Artificer", "Damage by level", 2.4f, (ConfigDescription)null); ArtiArmor = StatConfig.Bind<float>("Artificer", "Armor", 0f, (ConfigDescription)null); ArtiSpeed = StatConfig.Bind<float>("Artificer", "Base Speed", 7f, (ConfigDescription)null); SurvivorBase.ArtificerStats = new CharBase { healthBase = ArtiBaseHealth.Value, healthLevel = ArtiLevelHealth.Value, regenBase = ArtiBaseRegen.Value, regenLevel = ArtiLevelRegen.Value, damageBase = ArtiBaseDamage.Value, damageLevel = ArtiLevelDamage.Value, shieldBase = ArtiBaseShield.Value, shieldLevel = ArtiLevelShield.Value, armor = ArtiArmor.Value, moveSpeed = ArtiSpeed.Value }; } public static void MercConfig() { MercBaseHealth = StatConfig.Bind<float>("Mercenary", "Base Health", 110f, (ConfigDescription)null); MercLevelHealth = StatConfig.Bind<float>("Mercenary", "Health by level", 33f, (ConfigDescription)null); MercBaseShield = StatConfig.Bind<float>("Mercenary", "Base Shield", 0f, (ConfigDescription)null); MercLevelShield = StatConfig.Bind<float>("Mercenary", "Shield by level", 0f, (ConfigDescription)null); MercBaseRegen = StatConfig.Bind<float>("Mercenary", "Base Regen", 1f, (ConfigDescription)null); MercLevelRegen = StatConfig.Bind<float>("Mercenary", "Regen by level", 0.2f, (ConfigDescription)null); MercBaseDamage = StatConfig.Bind<float>("Mercenary", "Base Damage", 12f, (ConfigDescription)null); MercLevelDamage = StatConfig.Bind<float>("Mercenary", "Damage by level", 2.4f, (ConfigDescription)null); MercArmor = StatConfig.Bind<float>("Mercenary", "Armor", 20f, (ConfigDescription)null); MercSpeed = StatConfig.Bind<float>("Mercenary", "Base Speed", 7f, (ConfigDescription)null); SurvivorBase.MercenaryStats = new CharBase { healthBase = MercBaseHealth.Value, healthLevel = MercLevelHealth.Value, regenBase = MercBaseRegen.Value, regenLevel = MercLevelRegen.Value, damageBase = MercBaseDamage.Value, damageLevel = MercLevelDamage.Value, shieldBase = MercBaseShield.Value, shieldLevel = MercLevelShield.Value, armor = MercArmor.Value, moveSpeed = MercSpeed.Value }; } public static void RexConfig() { RexBaseHealth = StatConfig.Bind<float>("REX", "Base Health", 130f, (ConfigDescription)null); RexLevelHealth = StatConfig.Bind<float>("REX", "Health by level", 39f, (ConfigDescription)null); RexBaseShield = StatConfig.Bind<float>("REX", "Base Shield", 0f, (ConfigDescription)null); RexLevelShield = StatConfig.Bind<float>("REX", "Shield by level", 0f, (ConfigDescription)null); RexBaseRegen = StatConfig.Bind<float>("REX", "Base Regen", 1f, (ConfigDescription)null); RexLevelRegen = StatConfig.Bind<float>("REX", "Regen by level", 0.2f, (ConfigDescription)null); RexBaseDamage = StatConfig.Bind<float>("REX", "Base Damage", 12f, (ConfigDescription)null); RexLevelDamage = StatConfig.Bind<float>("REX", "Damage by level", 2.4f, (ConfigDescription)null); RexArmor = StatConfig.Bind<float>("REX", "Armor", 20f, (ConfigDescription)null); RexSpeed = StatConfig.Bind<float>("REX", "Base Speed", 7f, (ConfigDescription)null); SurvivorBase.REXStats = new CharBase { healthBase = RexBaseHealth.Value, healthLevel = RexLevelHealth.Value, regenBase = RexBaseRegen.Value, regenLevel = RexLevelRegen.Value, damageBase = RexBaseDamage.Value, damageLevel = RexLevelDamage.Value, shieldBase = RexBaseShield.Value, shieldLevel = RexLevelShield.Value, armor = RexArmor.Value, moveSpeed = RexSpeed.Value }; } public static void LodrConfig() { LodrBaseHealth = StatConfig.Bind<float>("Loader", "Base Health", 160f, (ConfigDescription)null); LodrLevelHealth = StatConfig.Bind<float>("Loader", "Health by level", 48f, (ConfigDescription)null); LodrBaseShield = StatConfig.Bind<float>("Loader", "Base Shield", 0f, (ConfigDescription)null); LodrLevelShield = StatConfig.Bind<float>("Loader", "Shield by level", 0f, (ConfigDescription)null); LodrBaseRegen = StatConfig.Bind<float>("Loader", "Base Regen", 2.5f, (ConfigDescription)null); LodrLevelRegen = StatConfig.Bind<float>("Loader", "Regen by level", 0.5f, (ConfigDescription)null); LodrBaseDamage = StatConfig.Bind<float>("Loader", "Base Damage", 12f, (ConfigDescription)null); LodrLevelDamage = StatConfig.Bind<float>("Loader", "Damage by level", 2.4f, (ConfigDescription)null); LodrArmor = StatConfig.Bind<float>("Loader", "Armor", 20f, (ConfigDescription)null); LodrSpeed = StatConfig.Bind<float>("Loader", "Base Speed", 7f, (ConfigDescription)null); SurvivorBase.LoaderStats = new CharBase { healthBase = LodrBaseHealth.Value, healthLevel = LodrLevelHealth.Value, regenBase = LodrBaseRegen.Value, regenLevel = LodrLevelRegen.Value, damageBase = LodrBaseDamage.Value, damageLevel = LodrLevelDamage.Value, shieldBase = LodrBaseShield.Value, shieldLevel = LodrLevelShield.Value, armor = LodrArmor.Value, moveSpeed = LodrSpeed.Value }; } public static void CrocConfig() { CrocBaseHealth = StatConfig.Bind<float>("Acrid", "Base Health", 160f, (ConfigDescription)null); CrocLevelHealth = StatConfig.Bind<float>("Acrid", "Health by level", 48f, (ConfigDescription)null); CrocBaseShield = StatConfig.Bind<float>("Acrid", "Base Shield", 0f, (ConfigDescription)null); CrocLevelShield = StatConfig.Bind<float>("Acrid", "Shield by level", 0f, (ConfigDescription)null); CrocBaseRegen = StatConfig.Bind<float>("Acrid", "Base Regen", 2.5f, (ConfigDescription)null); CrocLevelRegen = StatConfig.Bind<float>("Acrid", "Regen by level", 0.5f, (ConfigDescription)null); CrocBaseDamage = StatConfig.Bind<float>("Acrid", "Base Damage", 15f, (ConfigDescription)null); CrocLevelDamage = StatConfig.Bind<float>("Acrid", "Damage by level", 3f, (ConfigDescription)null); CrocArmor = StatConfig.Bind<float>("Acrid", "Armor", 20f, (ConfigDescription)null); CrocSpeed = StatConfig.Bind<float>("Acrid", "Base Speed", 7f, (ConfigDescription)null); SurvivorBase.AcridStats = new CharBase { healthBase = CrocBaseHealth.Value, healthLevel = CrocLevelHealth.Value, regenBase = CrocBaseRegen.Value, regenLevel = CrocLevelRegen.Value, damageBase = CrocBaseDamage.Value, damageLevel = CrocLevelDamage.Value, shieldBase = CrocBaseShield.Value, shieldLevel = CrocLevelShield.Value, armor = CrocArmor.Value, moveSpeed = CrocSpeed.Value }; } public static void CaptConfig() { CaptBaseHealth = StatConfig.Bind<float>("Captain", "Base Health", 110f, (ConfigDescription)null); CaptLevelHealth = StatConfig.Bind<float>("Captain", "Health by level", 33f, (ConfigDescription)null); CaptBaseShield = StatConfig.Bind<float>("Captain", "Base Shield", 0f, (ConfigDescription)null); CaptLevelShield = StatConfig.Bind<float>("Captain", "Shield by level", 0f, (ConfigDescription)null); CaptBaseRegen = StatConfig.Bind<float>("Captain", "Base Regen", 1f, (ConfigDescription)null); CaptLevelRegen = StatConfig.Bind<float>("Captain", "Regen by level", 0.2f, (ConfigDescription)null); CaptBaseDamage = StatConfig.Bind<float>("Captain", "Base Damage", 12f, (ConfigDescription)null); CaptLevelDamage = StatConfig.Bind<float>("Captain", "Damage by level", 2.4f, (ConfigDescription)null); CaptArmor = StatConfig.Bind<float>("Captain", "Armor", 0f, (ConfigDescription)null); CaptSpeed = StatConfig.Bind<float>("Captain", "Base Speed", 7f, (ConfigDescription)null); SurvivorBase.CaptainStats = new CharBase { healthBase = CaptBaseHealth.Value, healthLevel = CaptLevelHealth.Value, regenBase = CaptBaseRegen.Value, regenLevel = CaptLevelRegen.Value, damageBase = CaptBaseDamage.Value, damageLevel = CaptLevelDamage.Value, shieldBase = CaptBaseShield.Value, shieldLevel = CaptLevelShield.Value, armor = CaptArmor.Value, moveSpeed = CaptSpeed.Value }; } public static void BirbConfig() { BirbBaseHealth = StatConfig.Bind<float>("Heretic", "Base Health", 440f, (ConfigDescription)null); BirbLevelHealth = StatConfig.Bind<float>("Heretic", "Health by level", 132f, (ConfigDescription)null); BirbBaseShield = StatConfig.Bind<float>("Heretic", "Base Shield", 0f, (ConfigDescription)null); BirbLevelShield = StatConfig.Bind<float>("Heretic", "Shield by level", 0f, (ConfigDescription)null); BirbBaseRegen = StatConfig.Bind<float>("Heretic", "Base Regen", -6f, (ConfigDescription)null); BirbLevelRegen = StatConfig.Bind<float>("Heretic", "Regen by level", -1.2f, (ConfigDescription)null); BirbBaseDamage = StatConfig.Bind<float>("Heretic", "Base Damage", 18f, (ConfigDescription)null); BirbLevelDamage = StatConfig.Bind<float>("Heretic", "Damage by level", 3.6f, (ConfigDescription)null); BirbArmor = StatConfig.Bind<float>("Heretic", "Armor", 0f, (ConfigDescription)null); BirbSpeed = StatConfig.Bind<float>("Heretic", "Base Speed", 8f, (ConfigDescription)null); SurvivorBase.HereticStats = new CharBase { healthBase = BirbBaseHealth.Value, healthLevel = BirbLevelHealth.Value, regenBase = BirbBaseRegen.Value, regenLevel = BirbLevelRegen.Value, damageBase = BirbBaseDamage.Value, damageLevel = BirbLevelDamage.Value, shieldBase = BirbBaseShield.Value, shieldLevel = BirbLevelShield.Value, armor = BirbArmor.Value, moveSpeed = BirbSpeed.Value }; } public static void VoidSurvivorConfig() { VoidSurvivorBaseHealth = StatConfig.Bind<float>("Voidfiend", "Base Health", 110f, (ConfigDescription)null); VoidSurvivorLevelHealth = StatConfig.Bind<float>("Voidfiend", "Health by level", 33f, (ConfigDescription)null); VoidSurvivorBaseShield = StatConfig.Bind<float>("Voidfiend", "Base Shield", 0f, (ConfigDescription)null); VoidSurvivorLevelShield = StatConfig.Bind<float>("Voidfiend", "Shield by level", 0f, (ConfigDescription)null); VoidSurvivorBaseRegen = StatConfig.Bind<float>("Voidfiend", "Base Regen", 1f, (ConfigDescription)null); VoidSurvivorLevelRegen = StatConfig.Bind<float>("Voidfiend", "Regen by level", 0.2f, (ConfigDescription)null); VoidSurvivorBaseDamage = StatConfig.Bind<float>("Voidfiend", "Base Damage", 12f, (ConfigDescription)null); VoidSurvivorLevelDamage = StatConfig.Bind<float>("Voidfiend", "Damage by level", 2.4f, (ConfigDescription)null); VoidSurvivorArmor = StatConfig.Bind<float>("Voidfiend", "Armor", 0f, (ConfigDescription)null); VoidSurvivorSpeed = StatConfig.Bind<float>("Voidfiend", "Base Speed", 7f, (ConfigDescription)null); SurvivorBase.VoidFiendStats = new CharBase { healthBase = VoidSurvivorBaseHealth.Value, healthLevel = VoidSurvivorLevelHealth.Value, regenBase = VoidSurvivorBaseRegen.Value, regenLevel = VoidSurvivorLevelRegen.Value, damageBase = VoidSurvivorBaseDamage.Value, damageLevel = VoidSurvivorLevelDamage.Value, shieldBase = VoidSurvivorBaseShield.Value, shieldLevel = VoidSurvivorLevelShield.Value, armor = VoidSurvivorArmor.Value, moveSpeed = VoidSurvivorSpeed.Value }; } public static void RailGunnerConfig() { RailGunnerBaseHealth = StatConfig.Bind<float>("Railgunner", "Base Health", 110f, (ConfigDescription)null); RailGunnerLevelHealth = StatConfig.Bind<float>("Railgunner", "Health by level", 33f, (ConfigDescription)null); RailGunnerBaseShield = StatConfig.Bind<float>("Railgunner", "Base Shield", 0f, (ConfigDescription)null); RailGunnerLevelShield = StatConfig.Bind<float>("Railgunner", "Shield by level", 0f, (ConfigDescription)null); RailGunnerBaseRegen = StatConfig.Bind<float>("Railgunner", "Base Regen", 1f, (ConfigDescription)null); RailGunnerLevelRegen = StatConfig.Bind<float>("Railgunner", "Regen by level", 0.2f, (ConfigDescription)null); RailGunnerBaseDamage = StatConfig.Bind<float>("Railgunner", "Base Damage", 12f, (ConfigDescription)null); RailGunnerLevelDamage = StatConfig.Bind<float>("Railgunner", "Damage by level", 2.4f, (ConfigDescription)null); RailGunnerArmor = StatConfig.Bind<float>("Railgunner", "Armor", 0f, (ConfigDescription)null); RailGunnerSpeed = StatConfig.Bind<float>("Railgunner", "Base Speed", 7f, (ConfigDescription)null); SurvivorBase.RailgunnerStats = new CharBase { healthBase = RailGunnerBaseHealth.Value, healthLevel = RailGunnerLevelHealth.Value, regenBase = RailGunnerBaseRegen.Value, regenLevel = RailGunnerLevelRegen.Value, damageBase = RailGunnerBaseDamage.Value, damageLevel = RailGunnerLevelDamage.Value, shieldBase = RailGunnerBaseShield.Value, shieldLevel = RailGunnerLevelShield.Value, armor = RailGunnerArmor.Value, moveSpeed = RailGunnerSpeed.Value }; } public static void SeekerConfig() { SeekerBaseHealth = StatConfig.Bind<float>("Seeker", "Base Health", 115f, (ConfigDescription)null); SeekerLevelHealth = StatConfig.Bind<float>("Seeker", "Health by level", 34f, (ConfigDescription)null); SeekerBaseShield = StatConfig.Bind<float>("Seeker", "Base Shield", 0f, (ConfigDescription)null); SeekerLevelShield = StatConfig.Bind<float>("Seeker", "Shield by level", 0f, (ConfigDescription)null); SeekerBaseRegen = StatConfig.Bind<float>("Seeker", "Base Regen", 0.75f, (ConfigDescription)null); SeekerLevelRegen = StatConfig.Bind<float>("Seeker", "Regen by level", 0.15f, (ConfigDescription)null); SeekerBaseDamage = StatConfig.Bind<float>("Seeker", "Base Damage", 12f, (ConfigDescription)null); SeekerLevelDamage = StatConfig.Bind<float>("Seeker", "Damage by level", 2.4f, (ConfigDescription)null); SeekerArmor = StatConfig.Bind<float>("Seeker", "Armor", 20f, (ConfigDescription)null); SeekerSpeed = StatConfig.Bind<float>("Seeker", "Base Speed", 7f, (ConfigDescription)null); SurvivorBase.SeekerStats = new CharBase { healthBase = SeekerBaseHealth.Value, healthLevel = SeekerLevelHealth.Value, regenBase = SeekerBaseRegen.Value, regenLevel = SeekerLevelRegen.Value, damageBase = SeekerBaseDamage.Value, damageLevel = SeekerLevelDamage.Value, shieldBase = SeekerBaseShield.Value, shieldLevel = SeekerLevelShield.Value, armor = SeekerArmor.Value, moveSpeed = SeekerSpeed.Value }; } public static void FalseSonConfig() { FalseSonBaseHealth = StatConfig.Bind<float>("FalseSon", "Base Health", 180f, (ConfigDescription)null); FalseSonLevelHealth = StatConfig.Bind<float>("FalseSon", "Health by level", 54f, (ConfigDescription)null); FalseSonBaseShield = StatConfig.Bind<float>("FalseSon", "Base Shield", 0f, (ConfigDescription)null); FalseSonLevelShield = StatConfig.Bind<float>("FalseSon", "Shield by level", 0f, (ConfigDescription)null); FalseSonBaseRegen = StatConfig.Bind<float>("FalseSon", "Base Regen", 1f, (ConfigDescription)null); FalseSonLevelRegen = StatConfig.Bind<float>("FalseSon", "Regen by level", 0.2f, (ConfigDescription)null); FalseSonBaseDamage = StatConfig.Bind<float>("FalseSon", "Base Damage", 12f, (ConfigDescription)null); FalseSonLevelDamage = StatConfig.Bind<float>("FalseSon", "Damage by level", 2.4f, (ConfigDescription)null); FalseSonArmor = StatConfig.Bind<float>("FalseSon", "Armor", 20f, (ConfigDescription)null); FalseSonSpeed = StatConfig.Bind<float>("FalseSon", "Base Speed", 7f, (ConfigDescription)null); SurvivorBase.FalseSonStats = new CharBase { healthBase = FalseSonBaseHealth.Value, healthLevel = FalseSonLevelHealth.Value, regenBase = FalseSonBaseRegen.Value, regenLevel = FalseSonLevelRegen.Value, damageBase = FalseSonBaseDamage.Value, damageLevel = FalseSonLevelDamage.Value, shieldBase = FalseSonBaseShield.Value, shieldLevel = FalseSonLevelShield.Value, armor = FalseSonArmor.Value, moveSpeed = FalseSonSpeed.Value }; } public static void CHEFConfig() { CHEFBaseHealth = StatConfig.Bind<float>("CHEF", "Base Health", 110f, (ConfigDescription)null); CHEFLevelHealth = StatConfig.Bind<float>("CHEF", "Health by level", 33f, (ConfigDescription)null); CHEFBaseShield = StatConfig.Bind<float>("CHEF", "Base Shield", 0f, (ConfigDescription)null); CHEFLevelShield = StatConfig.Bind<float>("CHEF", "Shield by level", 0f, (ConfigDescription)null); CHEFBaseRegen = StatConfig.Bind<float>("CHEF", "Base Regen", 1f, (ConfigDescription)null); CHEFLevelRegen = StatConfig.Bind<float>("CHEF", "Regen by level", 0.2f, (ConfigDescription)null); CHEFBaseDamage = StatConfig.Bind<float>("CHEF", "Base Damage", 12f, (ConfigDescription)null); CHEFLevelDamage = StatConfig.Bind<float>("CHEF", "Damage by level", 2.4f, (ConfigDescription)null); CHEFArmor = StatConfig.Bind<float>("CHEF", "Armor", 0f, (ConfigDescription)null); CHEFSpeed = StatConfig.Bind<float>("CHEF", "Base Speed", 7f, (ConfigDescription)null); SurvivorBase.CHEFStats = new CharBase { healthBase = CHEFBaseHealth.Value, healthLevel = CHEFLevelHealth.Value, regenBase = CHEFBaseRegen.Value, regenLevel = CHEFLevelRegen.Value, damageBase = CHEFBaseDamage.Value, damageLevel = CHEFLevelDamage.Value, shieldBase = CHEFBaseShield.Value, shieldLevel = CHEFLevelShield.Value, armor = CHEFArmor.Value, moveSpeed = CHEFSpeed.Value }; } public static void OperatorConfig() { OperatorBaseHealth = StatConfig.Bind<float>("Operator", "Base Health", 90f, (ConfigDescription)null); OperatorLevelHealth = StatConfig.Bind<float>("Operator", "Health by level", 27f, (ConfigDescription)null); OperatorBaseShield = StatConfig.Bind<float>("Operator", "Base Shield", 0f, (ConfigDescription)null); OperatorLevelShield = StatConfig.Bind<float>("Operator", "Shield by level", 0f, (ConfigDescription)null); OperatorBaseRegen = StatConfig.Bind<float>("Operator", "Base Regen", 1f, (ConfigDescription)null); OperatorLevelRegen = StatConfig.Bind<float>("Operator", "Regen by level", 0.2f, (ConfigDescription)null); OperatorBaseDamage = StatConfig.Bind<float>("Operator", "Base Damage", 12f, (ConfigDescription)null); OperatorLevelDamage = StatConfig.Bind<float>("Operator", "Damage by level", 2.4f, (ConfigDescription)null); OperatorArmor = StatConfig.Bind<float>("Operator", "Armor", 0f, (ConfigDescription)null); OperatorSpeed = StatConfig.Bind<float>("Operator", "Base Speed", 7f, (ConfigDescription)null); SurvivorBase.OperatorStats = new CharBase { healthBase = OperatorBaseHealth.Value, healthLevel = OperatorLevelHealth.Value, regenBase = OperatorBaseRegen.Value, regenLevel = OperatorLevelRegen.Value, damageBase = OperatorBaseDamage.Value, damageLevel = OperatorLevelDamage.Value, shieldBase = OperatorBaseShield.Value, shieldLevel = OperatorLevelShield.Value, armor = OperatorArmor.Value, moveSpeed = OperatorSpeed.Value }; } public static void DrifterConfig() { DrifterBaseHealth = StatConfig.Bind<float>("Drifter", "Base Health", 170f, (ConfigDescription)null); DrifterLevelHealth = StatConfig.Bind<float>("Drifter", "Health by level", 52f, (ConfigDescription)null); DrifterBaseShield = StatConfig.Bind<float>("Drifter", "Base Shield", 0f, (ConfigDescription)null); DrifterLevelShield = StatConfig.Bind<float>("Drifter", "Shield by level", 0f, (ConfigDescription)null); DrifterBaseRegen = StatConfig.Bind<float>("Drifter", "Base Regen", 1f, (ConfigDescription)null); DrifterLevelRegen = StatConfig.Bind<float>("Drifter", "Regen by level", 0.2f, (ConfigDescription)null); DrifterBaseDamage = StatConfig.Bind<float>("Drifter", "Base Damage", 12f, (ConfigDescription)null); DrifterLevelDamage = StatConfig.Bind<float>("Drifter", "Damage by level", 2.4f, (ConfigDescription)null); DrifterArmor = StatConfig.Bind<float>("Drifter", "Armor", 20f, (ConfigDescription)null); DrifterSpeed = StatConfig.Bind<float>("Drifter", "Base Speed", 7f, (ConfigDescription)null); SurvivorBase.DrifterStats = new CharBase { healthBase = DrifterBaseHealth.Value, healthLevel = DrifterLevelHealth.Value, regenBase = DrifterBaseRegen.Value, regenLevel = DrifterLevelRegen.Value, damageBase = DrifterBaseDamage.Value, damageLevel = DrifterLevelDamage.Value, shieldBase = DrifterBaseShield.Value, shieldLevel = DrifterLevelShield.Value, armor = DrifterArmor.Value, moveSpeed = DrifterSpeed.Value }; } public static void RobPaladinConfig() { RobPaladinBaseHealth = StatConfig.Bind<float>("RobPaladin", "Base Health", 110f, (ConfigDescription)null); RobPaladinLevelHealth = StatConfig.Bind<float>("RobPaladin", "Health by level", 33f, (ConfigDescription)null); RobPaladinBaseShield = StatConfig.Bind<float>("RobPaladin", "Base Shield", 0f, (ConfigDescription)null); RobPaladinLevelShield = StatConfig.Bind<float>("RobPaladin", "Shield by level", 0f, (ConfigDescription)null); RobPaladinBaseRegen = StatConfig.Bind<float>("RobPaladin", "Base Regen", 1f, (ConfigDescription)null); RobPaladinLevelRegen = StatConfig.Bind<float>("RobPaladin", "Regen by level", 0.2f, (ConfigDescription)null); RobPaladinBaseDamage = StatConfig.Bind<float>("RobPaladin", "Base Damage", 12f, (ConfigDescription)null); RobPaladinLevelDamage = StatConfig.Bind<float>("RobPaladin", "Damage by level", 2.4f, (ConfigDescription)null); RobPaladinArmor = StatConfig.Bind<float>("RobPaladin", "Armor", 12f, (ConfigDescription)null); RobPaladinSpeed = StatConfig.Bind<float>("RobPaladin", "Base Speed", 7f, (ConfigDescription)null); SurvivorBase.robpaladinStats = new CharBase { healthBase = RobPaladinBaseHealth.Value, healthLevel = RobPaladinLevelHealth.Value, regenBase = RobPaladinBaseRegen.Value, regenLevel = RobPaladinLevelRegen.Value, damageBase = RobPaladinBaseDamage.Value, damageLevel = RobPaladinLevelDamage.Value, shieldBase = RobPaladinBaseShield.Value, shieldLevel = RobPaladinLevelShield.Value, armor = RobPaladinArmor.Value, moveSpeed = RobPaladinSpeed.Value }; } public static void NemesisEnforcerConfig() { NemesisEnforcerBaseHealth = StatConfig.Bind<float>("NemesisEnforcer", "Base Health", 224f, (ConfigDescription)null); NemesisEnforcerLevelHealth = StatConfig.Bind<float>("NemesisEnforcer", "Health by level", 56f, (ConfigDescription)null); NemesisEnforcerBaseShield = StatConfig.Bind<float>("NemesisEnforcer", "Base Shield", 0f, (ConfigDescription)null); NemesisEnforcerLevelShield = StatConfig.Bind<float>("NemesisEnforcer", "Shield by level", 0f, (ConfigDescription)null); NemesisEnforcerBaseRegen = StatConfig.Bind<float>("NemesisEnforcer", "Base Regen", 0.5f, (ConfigDescription)null); NemesisEnforcerLevelRegen = StatConfig.Bind<float>("NemesisEnforcer", "Regen by level", 0.25f, (ConfigDescription)null); NemesisEnforcerBaseDamage = StatConfig.Bind<float>("NemesisEnforcer", "Base Damage", 12f, (ConfigDescription)null); NemesisEnforcerLevelDamage = StatConfig.Bind<float>("NemesisEnforcer", "Damage by level", 2.4f, (ConfigDescription)null); NemesisEnforcerArmor = StatConfig.Bind<float>("NemesisEnforcer", "Armor", 0f, (ConfigDescription)null); NemesisEnforcerSpeed = StatConfig.Bind<float>("NemesisEnforcer", "Base Speed", 7f, (ConfigDescription)null); SurvivorBase.nemesisenforcerStats = new CharBase { healthBase = NemesisEnforcerBaseHealth.Value, healthLevel = NemesisEnforcerLevelHealth.Value, regenBase = NemesisEnforcerBaseRegen.Value, regenLevel = NemesisEnforcerLevelRegen.Value, damageBase = NemesisEnforcerBaseDamage.Value, damageLevel = NemesisEnforcerLevelDamage.Value, shieldBase = NemesisEnforcerBaseShield.Value, shieldLevel = NemesisEnforcerLevelShield.Value, armor = NemesisEnforcerArmor.Value, moveSpeed = NemesisEnforcerSpeed.Value }; } public static void MinerConfig() { MinerBaseHealth = StatConfig.Bind<float>("Miner", "Base Health", 140f, (ConfigDescription)null); MinerLevelHealth = StatConfig.Bind<float>("Miner", "Health by level", 42f, (ConfigDescription)null); MinerBaseShield = StatConfig.Bind<float>("Miner", "Base Shield", 0f, (ConfigDescription)null); MinerLevelShield = StatConfig.Bind<float>("Miner", "Shield by level", 0f, (ConfigDescription)null); MinerBaseRegen = StatConfig.Bind<float>("Miner", "Base Regen", 1f, (ConfigDescription)null); MinerLevelRegen = StatConfig.Bind<float>("Miner", "Regen by level", 0.2f, (ConfigDescription)null); MinerBaseDamage = StatConfig.Bind<float>("Miner", "Base Damage", 12f, (ConfigDescription)null); MinerLevelDamage = StatConfig.Bind<float>("Miner", "Damage by level", 2.4f, (ConfigDescription)null); MinerArmor = StatConfig.Bind<float>("Miner", "Armor", 20f, (ConfigDescription)null); MinerSpeed = StatConfig.Bind<float>("Miner", "Base Speed", 7f, (ConfigDescription)null); SurvivorBase.minerStats = new CharBase { healthBase = MinerBaseHealth.Value, healthLevel = MinerLevelHealth.Value, regenBase = MinerBaseRegen.Value, regenLevel = MinerLevelRegen.Value, damageBase = MinerBaseDamage.Value, damageLevel = MinerLevelDamage.Value, shieldBase = MinerBaseShield.Value, shieldLevel = MinerLevelShield.Value, armor = MinerArmor.Value, moveSpeed = MinerSpeed.Value }; } } [BepInPlugin("com.KingOblivion.UpdatedSurvivorStatConfig", "UpdatedSurvivorStatConfig", "0.1")] public class SurvivorPlugin : BaseUnityPlugin { public void Awake() { SurvivorBase.Rebalance(); } } } namespace SurvivorConfig.Characters { public class CharBase { public float healthBase; public float healthLevel; public float regenBase; public float regenLevel; public float shieldBase; public float shieldLevel; public float damageBase; public float damageLevel; public float armor; public float moveSpeed; } internal class CharChanges : SurvivorBase { public static void Gaming() { Debug.Log((object)"Importing changes..."); SurvivorBase.CommandoPrefab = BodyCatalog.FindBodyPrefab("CommandoBody"); ApplyChanges(SurvivorBase.CommandoPrefab.GetComponent<CharacterBody>(), SurvivorBase.CommandoStats); Debug.Log((object)"Commando done."); SurvivorBase.HuntressPrefab = BodyCatalog.FindBodyPrefab("HuntressBody"); ApplyChanges(SurvivorBase.HuntressPrefab.GetComponent<CharacterBody>(), SurvivorBase.HuntressStats); Debug.Log((object)"Huntress done."); SurvivorBase.BanditPrefab = BodyCatalog.FindBodyPrefab("Bandit2Body"); ApplyChanges(SurvivorBase.BanditPrefab.GetComponent<CharacterBody>(), SurvivorBase.BanditStats); Debug.Log((object)"Bandit done."); SurvivorBase.MULTPrefab = BodyCatalog.FindBodyPrefab("ToolbotBody"); ApplyChanges(SurvivorBase.MULTPrefab.GetComponent<CharacterBody>(), SurvivorBase.MULTStats); Debug.Log((object)"MUL-T done."); SurvivorBase.EngineerPrefab = BodyCatalog.FindBodyPrefab("EngiBody"); ApplyChanges(SurvivorBase.EngineerPrefab.GetComponent<CharacterBody>(), SurvivorBase.EngineerStats); Debug.Log((object)"Engineer done."); SurvivorBase.ArtificerPrefab = BodyCatalog.FindBodyPrefab("MageBody"); ApplyChanges(SurvivorBase.ArtificerPrefab.GetComponent<CharacterBody>(), SurvivorBase.ArtificerStats); Debug.Log((object)"Artificer done."); SurvivorBase.MercenaryPrefab = BodyCatalog.FindBodyPrefab("MercBody"); ApplyChanges(SurvivorBase.MercenaryPrefab.GetComponent<CharacterBody>(), SurvivorBase.MercenaryStats); Debug.Log((object)"Mercenary done."); SurvivorBase.REXPrefab = BodyCatalog.FindBodyPrefab("TreebotBody"); ApplyChanges(SurvivorBase.REXPrefab.GetComponent<CharacterBody>(), SurvivorBase.REXStats); Debug.Log((object)"REX done."); SurvivorBase.LoaderPrefab = BodyCatalog.FindBodyPrefab("LoaderBody"); ApplyChanges(SurvivorBase.LoaderPrefab.GetComponent<CharacterBody>(), SurvivorBase.LoaderStats); Debug.Log((object)"Loader done."); SurvivorBase.AcridPrefab = BodyCatalog.FindBodyPrefab("CrocoBody"); ApplyChanges(SurvivorBase.AcridPrefab.GetComponent<CharacterBody>(), SurvivorBase.AcridStats); Debug.Log((object)"Acrid done."); SurvivorBase.CaptainPrefab = BodyCatalog.FindBodyPrefab("CaptainBody"); ApplyChanges(SurvivorBase.CaptainPrefab.GetComponent<CharacterBody>(), SurvivorBase.CaptainStats); Debug.Log((object)"Captain done."); SurvivorBase.HereticPrefab = BodyCatalog.FindBodyPrefab("HereticBody"); ApplyChanges(SurvivorBase.HereticPrefab.GetComponent<CharacterBody>(), SurvivorBase.HereticStats); Debug.Log((object)"Heretic done."); SurvivorBase.VoidFiendPrefab = BodyCatalog.FindBodyPrefab("VoidSurvivorBody"); ApplyChanges(SurvivorBase.VoidFiendPrefab.GetComponent<CharacterBody>(), SurvivorBase.VoidFiendStats); Debug.Log((object)"Voidfiend done."); SurvivorBase.RailgunnerPrefab = BodyCatalog.FindBodyPrefab("RailgunnerBody"); ApplyChanges(SurvivorBase.RailgunnerPrefab.GetComponent<CharacterBody>(), SurvivorBase.RailgunnerStats); Debug.Log((object)"RailGunner done."); SurvivorBase.SeekerPrefab = BodyCatalog.FindBodyPrefab("SeekerBody"); ApplyChanges(SurvivorBase.SeekerPrefab.GetComponent<CharacterBody>(), SurvivorBase.SeekerStats); Debug.Log((object)"Seeker done."); SurvivorBase.FalseSonPrefab = BodyCatalog.FindBodyPrefab("FalseSonBody"); ApplyChanges(SurvivorBase.FalseSonPrefab.GetComponent<CharacterBody>(), SurvivorBase.FalseSonStats); Debug.Log((object)"False Son done."); SurvivorBase.CHEFPrefab = BodyCatalog.FindBodyPrefab("ChefBody"); ApplyChanges(SurvivorBase.CHEFPrefab.GetComponent<CharacterBody>(), SurvivorBase.CHEFStats); Debug.Log((object)"CHEF done."); SurvivorBase.DrifterPrefab = BodyCatalog.FindBodyPrefab("DrifterBody"); ApplyChanges(SurvivorBase.DrifterPrefab.GetComponent<CharacterBody>(), SurvivorBase.DrifterStats); Debug.Log((object)"Drifter done."); SurvivorBase.OperatorPrefab = BodyCatalog.FindBodyPrefab("DroneTechBody"); ApplyChanges(SurvivorBase.OperatorPrefab.GetComponent<CharacterBody>(), SurvivorBase.OperatorStats); Debug.Log((object)"Operator done."); SurvivorBase.robpaladinPrefab = BodyCatalog.FindBodyPrefab("RobPaladinBody"); if (Object.op_Implicit((Object)(object)SurvivorBase.robpaladinPrefab)) { ApplyChanges(SurvivorBase.robpaladinPrefab.GetComponent<CharacterBody>(), SurvivorBase.robpaladinStats); Debug.Log((object)"RobPaladin done."); } SurvivorBase.nemesisenforcerPrefab = BodyCatalog.FindBodyPrefab("NemesisEnforcerBody"); if (Object.op_Implicit((Object)(object)SurvivorBase.nemesisenforcerPrefab)) { ApplyChanges(SurvivorBase.nemesisenforcerPrefab.GetComponent<CharacterBody>(), SurvivorBase.nemesisenforcerStats); Debug.Log((object)"NemesisEnforcer done."); } SurvivorBase.minerPrefab = BodyCatalog.FindBodyPrefab("MinerBody"); if (Object.op_Implicit((Object)(object)SurvivorBase.minerPrefab)) { ApplyChanges(SurvivorBase.minerPrefab.GetComponent<CharacterBody>(), SurvivorBase.minerStats); Debug.Log((object)"Miner done."); } } public static void ApplyChanges(CharacterBody body, CharBase charBase) { body.baseMaxHealth = charBase.healthBase; body.levelMaxHealth = charBase.healthLevel; body.baseRegen = charBase.regenBase; body.levelRegen = charBase.regenLevel; body.baseMaxShield = charBase.shieldBase; body.levelMaxShield = charBase.shieldLevel; body.baseDamage = charBase.damageBase; body.levelDamage = charBase.damageLevel; body.baseArmor = charBase.armor; body.baseMoveSpeed = charBase.moveSpeed; } } }