Some mods may be broken due to the recent Alloyed Collective update.
Decompiled source of UpdatedSurvivorStatConfig v1.3.0
SurvivorConfig.dll
Decompiled 6 days 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; } } }