diff --git a/src/ARKServerManager/Globalization/en-US/en-US.xaml b/src/ARKServerManager/Globalization/en-US/en-US.xaml index 5823f3d0..360b5e43 100644 --- a/src/ARKServerManager/Globalization/en-US/en-US.xaml +++ b/src/ARKServerManager/Globalization/en-US/en-US.xaml @@ -1844,6 +1844,8 @@ A multiplier on how long after delaying cuddling with the baby before imprinting quality starts to decrease. Higher values increase the grace period. Cuddle Lose Imprint Quality Speed: A multiplier on how fast imprinting quality decreases after the grace period if you haven't yet cuddled with the baby. Lower values slow the imprint quality loss. + Max Imprint Limit: + Automatically destroys creatures exceeding the imprinting bonus limit specified, in %. It is recommended going 1% higher to catch potential floating point errors, especially when working with custom imprinting rates. Confirm Reset Action Click 'Yes' to confirm you want to reset the Max XP. diff --git a/src/ARKServerManager/Lib/ServerProfile.cs b/src/ARKServerManager/Lib/ServerProfile.cs index 34d2a7b4..0d442c09 100644 --- a/src/ARKServerManager/Lib/ServerProfile.cs +++ b/src/ARKServerManager/Lib/ServerProfile.cs @@ -2562,6 +2562,14 @@ namespace ServerManagerTool.Lib set { SetValue(BabyCuddleLoseImprintQualitySpeedMultiplierProperty, value); } } + public static readonly DependencyProperty ImprintlimitProperty = DependencyProperty.Register(nameof(Imprintlimit), typeof(NullableValue), typeof(ServerProfile), new PropertyMetadata(new NullableValue(false, 101))); + [DataMember] + public NullableValue Imprintlimit + { + get { return (NullableValue)GetValue(ImprintlimitProperty); } + set { SetValue(ImprintlimitProperty, value); } + } + public static readonly DependencyProperty WildDinoCharacterFoodDrainMultiplierProperty = DependencyProperty.Register(nameof(WildDinoCharacterFoodDrainMultiplier), typeof(float), typeof(ServerProfile), new PropertyMetadata(1.0f)); [IniFileEntry(IniFiles.Game, IniSections.Game_ShooterGameMode, ServerProfileCategory.Dinos, WriteIfNotValue = 1.0f)] public float WildDinoCharacterFoodDrainMultiplier @@ -4189,6 +4197,11 @@ namespace ServerManagerTool.Lib serverArgs.Append(" -MinimumTimeBetweenInventoryRetrieval=").Append(this.MinimumTimeBetweenInventoryRetrieval); } + if (this.Imprintlimit.HasValue) + { + serverArgs.Append(" -imprintlimit=").Append(this.Imprintlimit); + } + return serverArgs.ToString(); } @@ -5578,6 +5591,7 @@ namespace ServerManagerTool.Lib this.ClearValue(BabyCuddleIntervalMultiplierProperty); this.ClearValue(BabyCuddleGracePeriodMultiplierProperty); this.ClearValue(BabyCuddleLoseImprintQualitySpeedMultiplierProperty); + this.ClearValue(ImprintlimitProperty); this.ClearValue(WildDinoCharacterFoodDrainMultiplierProperty); this.ClearValue(TamedDinoCharacterFoodDrainMultiplierProperty); @@ -6249,6 +6263,7 @@ namespace ServerManagerTool.Lib this.SetValue(BabyCuddleIntervalMultiplierProperty, sourceProfile.BabyCuddleIntervalMultiplier); this.SetValue(BabyCuddleGracePeriodMultiplierProperty, sourceProfile.BabyCuddleGracePeriodMultiplier); this.SetValue(BabyCuddleLoseImprintQualitySpeedMultiplierProperty, sourceProfile.BabyCuddleLoseImprintQualitySpeedMultiplier); + this.SetValue(ImprintlimitProperty, sourceProfile.Imprintlimit); this.SetValue(WildDinoCharacterFoodDrainMultiplierProperty, sourceProfile.WildDinoCharacterFoodDrainMultiplier); this.SetValue(TamedDinoCharacterFoodDrainMultiplierProperty, sourceProfile.TamedDinoCharacterFoodDrainMultiplier); diff --git a/src/ARKServerManager/UserControls/ServerSettingsControl.xaml b/src/ARKServerManager/UserControls/ServerSettingsControl.xaml index b1df4789..ee8aeaf7 100644 --- a/src/ARKServerManager/UserControls/ServerSettingsControl.xaml +++ b/src/ARKServerManager/UserControls/ServerSettingsControl.xaml @@ -3189,6 +3189,8 @@ + +