diff --git a/ARKBreedingStats/ARKBreedingStats.csproj b/ARKBreedingStats/ARKBreedingStats.csproj index 2545c0cf9..b0ff7620d 100644 --- a/ARKBreedingStats/ARKBreedingStats.csproj +++ b/ARKBreedingStats/ARKBreedingStats.csproj @@ -636,7 +636,7 @@ - + diff --git a/ARKBreedingStats/App.config b/ARKBreedingStats/App.config index 013a710f7..40b08655b 100644 --- a/ARKBreedingStats/App.config +++ b/ARKBreedingStats/App.config @@ -44,7 +44,7 @@ False - ShooterGame + ArkAscended diff --git a/ARKBreedingStats/CreatureInfoInput.cs b/ARKBreedingStats/CreatureInfoInput.cs index cf12626d9..05139fd84 100644 --- a/ARKBreedingStats/CreatureInfoInput.cs +++ b/ARKBreedingStats/CreatureInfoInput.cs @@ -593,7 +593,6 @@ public void GenerateCreatureName(Creature creature, int[] speciesTopLevels, int[ CreatureName = NamePattern.GenerateCreatureName(creature, _sameSpecies, speciesTopLevels, speciesLowestLevels, customReplacings, showDuplicateNameWarning, namingPatternIndex, false, colorsExisting: ColorAlreadyExistingInformation); if (CreatureName.Length > Ark.MaxCreatureNameLength) SetMessageLabelText?.Invoke($"The generated name is longer than {Ark.MaxCreatureNameLength} characters, the name will look like this in game:\r\n" + CreatureName.Substring(0, Ark.MaxCreatureNameLength), MessageBoxIcon.Error); - else SetMessageLabelText?.Invoke(); } public void OpenNamePatternEditor(Creature creature, int[] speciesTopLevels, int[] speciesLowestLevels, Dictionary customReplacings, int namingPatternIndex, Action reloadCallback) diff --git a/ARKBreedingStats/Extraction.cs b/ARKBreedingStats/Extraction.cs index b2ddc0738..413b192f9 100644 --- a/ARKBreedingStats/Extraction.cs +++ b/ARKBreedingStats/Extraction.cs @@ -1,7 +1,6 @@ using ARKBreedingStats.Library; using ARKBreedingStats.miscClasses; using ARKBreedingStats.species; -using ARKBreedingStats.values; using System; using System.Collections.Generic; using System.Linq; @@ -198,26 +197,33 @@ public void ExtractLevels(Species species, int level, StatIO[] statIOs, double l if (withTEff) { StatsWithTE.Add(s); } int minLW = 0; - int maxLW; - if (stats[s].IncPerWildLevel > 0) + int maxLW = 0; + if (species.CanLevelUpWildOrHaveMutations(s)) { - double multAffinityFactor = stats[s].MultAffinity; - if (PostTamed) + if (stats[s].IncPerWildLevel > 0) { - // the multiplicative bonus is only multiplied with the TE if it is positive (i.e. negative boni won't get less bad if the TE is low) - if (multAffinityFactor > 0) - multAffinityFactor *= lowerTEBound; - multAffinityFactor += 1; + double multAffinityFactor = stats[s].MultAffinity; + if (PostTamed) + { + // the multiplicative bonus is only multiplied with the TE if it is positive (i.e. negative boni won't get less bad if the TE is low) + if (multAffinityFactor > 0) + multAffinityFactor *= lowerTEBound; + multAffinityFactor += 1; + } + else + multAffinityFactor = 1; + + maxLW = (int)Math.Round( + ((inputValue.Max / multAffinityFactor - (PostTamed ? stats[s].AddWhenTamed : 0)) / + statBaseValue - 1) / stats[s].IncPerWildLevel); // floor is too unprecise } else - multAffinityFactor = 1; - maxLW = (int)Math.Round(((inputValue.Max / multAffinityFactor - (PostTamed ? stats[s].AddWhenTamed : 0)) / statBaseValue - 1) / stats[s].IncPerWildLevel); // floor is too unprecise - } - else - { - minLW = -1; - maxLW = -1; + { + minLW = -1; + maxLW = -1; + } } + if (maxLW > LevelWildSum) { maxLW = LevelWildSum; } double maxLD = 0; diff --git a/ARKBreedingStats/Form1.Designer.cs b/ARKBreedingStats/Form1.Designer.cs index 08c3ba971..b7e2a462a 100644 --- a/ARKBreedingStats/Form1.Designer.cs +++ b/ARKBreedingStats/Form1.Designer.cs @@ -135,6 +135,7 @@ private void InitializeComponent() this.helpAboutSpeciesSortingToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.helpToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.toolStripSeparator11 = new System.Windows.Forms.ToolStripSeparator(); + this.discordServerToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.onlinehelpToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.BreedingPlanHelpToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.extractionIssuesToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); @@ -425,7 +426,7 @@ private void InitializeComponent() // aboutToolStripMenuItem // this.aboutToolStripMenuItem.Name = "aboutToolStripMenuItem"; - this.aboutToolStripMenuItem.Size = new System.Drawing.Size(171, 22); + this.aboutToolStripMenuItem.Size = new System.Drawing.Size(189, 22); this.aboutToolStripMenuItem.Text = "about…"; this.aboutToolStripMenuItem.Click += new System.EventHandler(this.aboutToolStripMenuItem_Click); // @@ -1306,6 +1307,7 @@ private void InitializeComponent() this.helpToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { this.aboutToolStripMenuItem, this.toolStripSeparator11, + this.discordServerToolStripMenuItem, this.onlinehelpToolStripMenuItem, this.BreedingPlanHelpToolStripMenuItem, this.extractionIssuesToolStripMenuItem, @@ -1318,38 +1320,45 @@ private void InitializeComponent() // toolStripSeparator11 // this.toolStripSeparator11.Name = "toolStripSeparator11"; - this.toolStripSeparator11.Size = new System.Drawing.Size(168, 6); + this.toolStripSeparator11.Size = new System.Drawing.Size(186, 6); + // + // discordServerToolStripMenuItem + // + this.discordServerToolStripMenuItem.Name = "discordServerToolStripMenuItem"; + this.discordServerToolStripMenuItem.Size = new System.Drawing.Size(189, 22); + this.discordServerToolStripMenuItem.Text = "Go to Discord server…"; + this.discordServerToolStripMenuItem.Click += new System.EventHandler(this.discordServerToolStripMenuItem_Click); // // onlinehelpToolStripMenuItem // this.onlinehelpToolStripMenuItem.Name = "onlinehelpToolStripMenuItem"; - this.onlinehelpToolStripMenuItem.Size = new System.Drawing.Size(171, 22); + this.onlinehelpToolStripMenuItem.Size = new System.Drawing.Size(189, 22); this.onlinehelpToolStripMenuItem.Text = "Online Manual…"; this.onlinehelpToolStripMenuItem.Click += new System.EventHandler(this.onlinehelpToolStripMenuItem_Click); // // BreedingPlanHelpToolStripMenuItem // this.BreedingPlanHelpToolStripMenuItem.Name = "BreedingPlanHelpToolStripMenuItem"; - this.BreedingPlanHelpToolStripMenuItem.Size = new System.Drawing.Size(171, 22); + this.BreedingPlanHelpToolStripMenuItem.Size = new System.Drawing.Size(189, 22); this.BreedingPlanHelpToolStripMenuItem.Text = "Breeding Plan…"; this.BreedingPlanHelpToolStripMenuItem.Click += new System.EventHandler(this.breedingPlanToolStripMenuItem_Click); // // extractionIssuesToolStripMenuItem // this.extractionIssuesToolStripMenuItem.Name = "extractionIssuesToolStripMenuItem"; - this.extractionIssuesToolStripMenuItem.Size = new System.Drawing.Size(171, 22); + this.extractionIssuesToolStripMenuItem.Size = new System.Drawing.Size(189, 22); this.extractionIssuesToolStripMenuItem.Text = "Extraction Issues…"; this.extractionIssuesToolStripMenuItem.Click += new System.EventHandler(this.extractionIssuesToolStripMenuItem_Click); // // toolStripSeparator12 // this.toolStripSeparator12.Name = "toolStripSeparator12"; - this.toolStripSeparator12.Size = new System.Drawing.Size(168, 6); + this.toolStripSeparator12.Size = new System.Drawing.Size(186, 6); // // checkForUpdatedStatsToolStripMenuItem // this.checkForUpdatedStatsToolStripMenuItem.Name = "checkForUpdatedStatsToolStripMenuItem"; - this.checkForUpdatedStatsToolStripMenuItem.Size = new System.Drawing.Size(171, 22); + this.checkForUpdatedStatsToolStripMenuItem.Size = new System.Drawing.Size(189, 22); this.checkForUpdatedStatsToolStripMenuItem.Text = "Check for Updates"; this.checkForUpdatedStatsToolStripMenuItem.Click += new System.EventHandler(this.checkForUpdatedStatsToolStripMenuItem_Click); // @@ -3970,5 +3979,6 @@ private void InitializeComponent() private System.Windows.Forms.TextBox TbMessageLabel; private System.Windows.Forms.ColumnHeader columnHeaderMutagen; private System.Windows.Forms.Label LbAsa; + private System.Windows.Forms.ToolStripMenuItem discordServerToolStripMenuItem; } } diff --git a/ARKBreedingStats/Form1.collection.cs b/ARKBreedingStats/Form1.collection.cs index cac29906a..b63ec454d 100644 --- a/ARKBreedingStats/Form1.collection.cs +++ b/ARKBreedingStats/Form1.collection.cs @@ -31,8 +31,9 @@ private void NewCollection(bool resetCollection = false) if (!resetCollection && UnsavedChanges() && CustomMessageBox.Show(Loc.S("Collection changed discard and new?"), - Loc.S("Discard changes?"), Loc.S("Discard changes and new"), buttonCancel: Loc.S("Cancel"), icon: MessageBoxIcon.Warning) != DialogResult.Yes - ) + Loc.S("Discard changes?"), Loc.S("Discard changes and new"), buttonCancel: Loc.S("Cancel"), + icon: MessageBoxIcon.Warning) != DialogResult.Yes + ) { return; } @@ -43,20 +44,28 @@ private void NewCollection(bool resetCollection = false) var (statValuesLoaded, _) = LoadStatAndKibbleValues(applySettings: false); if (!statValuesLoaded) { - MessageBoxes.ShowMessageBox("Couldn't load stat values. Please redownload the application.", $"{Loc.S("error")} while loading the stat-values"); + MessageBoxes.ShowMessageBox("Couldn't load stat values. Please redownload the application.", + $"{Loc.S("error")} while loading the stat-values"); } } - if (_creatureCollection.serverMultipliers == null) - _creatureCollection.serverMultipliers = Values.V.serverMultipliersPresets.GetPreset(ServerMultipliersPresets.Official); // use previously used multipliers again in the new file - ServerMultipliers oldMultipliers = _creatureCollection.serverMultipliers; + var oldMultipliers = _creatureCollection.serverMultipliers + ?? Values.V.serverMultipliersPresets.GetPreset(ServerMultipliersPresets.Official); + var asaMode = _creatureCollection.Game == Ark.Asa; _creatureCollection = new CreatureCollection { serverMultipliers = oldMultipliers, ModList = new List() }; + + if (asaMode) + { + _creatureCollection.Game = Ark.Asa; + ReloadModValuesOfCollectionIfNeeded(true, false, false); + } + pedigree1.Clear(); breedingPlan1.Clear(); creatureInfoInputExtractor.Clear(true); diff --git a/ARKBreedingStats/Form1.cs b/ARKBreedingStats/Form1.cs index 5584e92fa..ada770b30 100644 --- a/ARKBreedingStats/Form1.cs +++ b/ARKBreedingStats/Form1.cs @@ -445,10 +445,10 @@ private void Form1_Load(object sender, EventArgs e) // if no export folder is set, try to detect it if ((Properties.Settings.Default.ExportCreatureFolders == null || Properties.Settings.Default.ExportCreatureFolders.Length == 0) - && ExportFolderLocation.GetListOfExportFolders( + && ArkInstallationPath.GetListOfExportFolders( out (string path, string steamPlayerName)[] arkInstallFolders, out _)) { - var orderedList = ExportFolderLocation.OrderByNewestFileInFolders(arkInstallFolders.Select(l => (l.path, l))); + var orderedList = ArkInstallationPath.OrderByNewestFileInFolders(arkInstallFolders.Select(l => (l.path, l))); Properties.Settings.Default.ExportCreatureFolders = orderedList .Select(f => $"{f.steamPlayerName}||{f.path}").ToArray(); @@ -1990,23 +1990,8 @@ private void OpenSettingsDialog(SettingsTabPages page = SettingsTabPages.Unknown if (_creatureCollection.Game != gameSettingBefore) { // ASA setting changed - var asaCurrentlyLoaded = _creatureCollection.modIDs?.Contains(Ark.Asa) == true; - - if ((_creatureCollection.Game == Ark.Asa) ^ asaCurrentlyLoaded) - { - if (asaCurrentlyLoaded) - { - _creatureCollection.modIDs.Remove(Ark.Asa); - _creatureCollection.ModList.RemoveAll(m => m.id == Ark.Asa); - } - else - { - if (_creatureCollection.modIDs == null) _creatureCollection.modIDs = new List(); - _creatureCollection.modIDs.Insert(0, Ark.Asa); - } - _creatureCollection.modListHash = 0; // making sure the mod values are reevaluated - ReloadModValuesOfCollectionIfNeeded(!asaCurrentlyLoaded, false, false); - } + var loadAsa = gameSettingBefore != Ark.Asa; + ReloadModValuesOfCollectionIfNeeded(loadAsa, false, false); } ApplySettingsToValues(); @@ -3822,5 +3807,10 @@ private void CbLibraryInfoUseFilter_CheckedChanged(object sender, EventArgs e) { LibraryInfo.SetColorInfo(speciesSelector1.SelectedSpecies, CbLibraryInfoUseFilter.Checked ? (IList)ApplyLibraryFilterSettings(_creatureCollection.creatures).ToArray() : _creatureCollection.creatures, CbLibraryInfoUseFilter.Checked, tlpLibraryInfo); } + + private void discordServerToolStripMenuItem_Click(object sender, EventArgs e) + { + Process.Start(RepositoryInfo.DiscordServerInviteLink); + } } } diff --git a/ARKBreedingStats/Form1.extractor.cs b/ARKBreedingStats/Form1.extractor.cs index 1589cc833..d3d8e40f1 100644 --- a/ARKBreedingStats/Form1.extractor.cs +++ b/ARKBreedingStats/Form1.extractor.cs @@ -289,7 +289,7 @@ private bool ExtractLevels(bool autoExtraction = false, bool statInputsHighPreci numericUpDownImprintingBonusExtractor.ValueSave = (decimal)_extractor.ImprintingBonus * 100; numericUpDownImprintingBonusExtractor_ValueChanged(null, null); - var possibleExtractionIssues = IssueNotes.Issue.None; + var possibleExtractionIssues = IssueNotes.Issue.CreatureLevel; if (cbExactlyImprinting.Checked) possibleExtractionIssues |= IssueNotes.Issue.ImprintingLocked; @@ -443,7 +443,7 @@ private bool ExtractLevels(bool autoExtraction = false, bool statInputsHighPreci labelTE.BackColor = Color.Transparent; } - SetWildSpeedLevelAccordingToOthers(); + SetWildUnknownLevelsAccordingToOthers(); lbSumDomSB.Text = _extractor.LevelDomSum.ToString(); ShowSumOfChosenLevels(); @@ -749,49 +749,53 @@ private void SetLevelCombination(int s, int i, bool validateCombination = false) if (validateCombination) { SetUniqueTE(); - SetWildSpeedLevelAccordingToOthers(); + SetWildUnknownLevelsAccordingToOthers(); ShowSumOfChosenLevels(); } } /// - /// The wild speed level is calculated indirectly by using all unused stat-levels. + /// Some wild stat levels have no effect on the stat value, often that's speed or sometimes oxygen. + /// The wild levels of these ineffective stats can be calculated indirectly if there is only one of them. /// - private void SetWildSpeedLevelAccordingToOthers() + private void SetWildUnknownLevelsAccordingToOthers() { - // wild speed level is wildTotalLevels - determinedWildLevels. sometimes the oxygenlevel cannot be determined as well - bool unique = true; + // wild speed level is wildTotalLevels - determinedWildLevels. sometimes the oxygen level cannot be determined as well + var unknownLevelIndices = new List(); int notDeterminedLevels = _statIOs[Stats.Torpidity].LevelWild; for (int s = 0; s < Stats.StatsCount; s++) { - if (s == Stats.SpeedMultiplier || s == Stats.Torpidity) - continue; - if (_statIOs[s].LevelWild >= 0) + if (s == Stats.Torpidity || !speciesSelector1.SelectedSpecies.UsesStat(s)) { - notDeterminedLevels -= _statIOs[s].LevelWild; + continue; } - else + + if (_statIOs[s].LevelWild < 0) { - unique = false; - break; + unknownLevelIndices.Add(s); + continue; } + notDeterminedLevels -= _statIOs[s].LevelWild; } - if (unique) - { - // if all other stats are unique, set speedlevel - _statIOs[Stats.SpeedMultiplier].LevelWild = Math.Max(0, notDeterminedLevels); - _statIOs[Stats.SpeedMultiplier].BreedingValue = StatValueCalculation.CalculateValue(speciesSelector1.SelectedSpecies, Stats.SpeedMultiplier, _statIOs[Stats.SpeedMultiplier].LevelWild, 0, true, 1, 0); - } - else + + switch (unknownLevelIndices.Count) { - // if not all other levels are unique, set speed and not known levels to unknown - for (int s = 0; s < Stats.StatsCount; s++) - { - if (s == Stats.SpeedMultiplier || !_activeStats[s]) + case 0: + // no unknown levels, nothing to do + return; + case 1: + // if all other stats are unique, set level + var statIndex = unknownLevelIndices[0]; + _statIOs[statIndex].LevelWild = Math.Max(0, notDeterminedLevels); + _statIOs[statIndex].BreedingValue = StatValueCalculation.CalculateValue(speciesSelector1.SelectedSpecies, statIndex, _statIOs[statIndex].LevelWild, 0, true, 1, 0); + return; + default: + // if not all other levels are unique, set the indifferent stats to unknown + foreach (var s in unknownLevelIndices) { _statIOs[s].LevelWild = -1; } - } + return; } } diff --git a/ARKBreedingStats/Form1.tester.cs b/ARKBreedingStats/Form1.tester.cs index 493e07b77..3b7f54222 100644 --- a/ARKBreedingStats/Form1.tester.cs +++ b/ARKBreedingStats/Form1.tester.cs @@ -332,12 +332,12 @@ private void SetRandomWildLevels(object sender, EventArgs e) var species = speciesSelector1.SelectedSpecies; if (species == null) return; - var maxLevel = CreatureCollection.CurrentCreatureCollection?.maxChartLevel ?? 50; - var r = new Random(); + var difficulty = (CreatureCollection.CurrentCreatureCollection?.maxWildLevel ?? 150) / 30; + var creature = DummyCreatures.CreateCreature(species, difficulty, false); + for (int si = 0; si < Stats.StatsCount; si++) { - if (species.UsesStat(si)) - _testingIOs[si].LevelWild = r.Next(maxLevel); + _testingIOs[si].LevelWild = creature.levelsWild[si]; } } diff --git a/ARKBreedingStats/NamePatterns/NamePattern.cs b/ARKBreedingStats/NamePatterns/NamePattern.cs index 68740fc19..2250280d4 100644 --- a/ARKBreedingStats/NamePatterns/NamePattern.cs +++ b/ARKBreedingStats/NamePatterns/NamePattern.cs @@ -297,6 +297,7 @@ public static Dictionary CreateTokenDictionary(Creature creature } // replace tokens in user configured pattern string + // keys have to be all lower case var dict = new Dictionary { { "species", creature.Species.name }, @@ -334,7 +335,8 @@ public static Dictionary CreateTokenDictionary(Creature creature { "sn", speciesSexCount.ToString()}, { "dom", dom}, { "arkid", arkid }, - { "alreadyexists", speciesCreatures.Contains(creature) ? "1" : string.Empty } + { "alreadyexists", speciesCreatures.Contains(creature) ? "1" : string.Empty }, + { "isflyer", creature.Species.isFlyer ? "1" : string.Empty } }; // stat index and according level diff --git a/ARKBreedingStats/NamePatterns/PatternEditor.cs b/ARKBreedingStats/NamePatterns/PatternEditor.cs index bcb8af92d..c0b131f03 100644 --- a/ARKBreedingStats/NamePatterns/PatternEditor.cs +++ b/ARKBreedingStats/NamePatterns/PatternEditor.cs @@ -483,6 +483,7 @@ private void InsertText(string text) { "sn", "number of creatures of the current species with the same sex in the library + 1" }, { "arkid", "the Ark-Id (as entered or seen in-game)"}, { "alreadyExists", "returns 1 if the creature is already in the library, can be used with {{#if: }}"}, + { "isFlyer", "returns 1 if the creature's species is a flyer"}, { "highest1l", "the highest stat-level of this creature (excluding torpidity)" }, { "highest2l", "the second highest stat-level of this creature (excluding torpidity)" }, { "highest3l", "the third highest stat-level of this creature (excluding torpidity)" }, diff --git a/ARKBreedingStats/Properties/AssemblyInfo.cs b/ARKBreedingStats/Properties/AssemblyInfo.cs index f79c13e1f..28f0d7cb9 100644 --- a/ARKBreedingStats/Properties/AssemblyInfo.cs +++ b/ARKBreedingStats/Properties/AssemblyInfo.cs @@ -30,6 +30,6 @@ // Revision // [assembly: AssemblyVersion("1.0.0.0")] -[assembly: AssemblyFileVersion("0.57.0.2")] +[assembly: AssemblyFileVersion("0.57.1.0")] [assembly: NeutralResourcesLanguage("en")] diff --git a/ARKBreedingStats/Properties/Settings.Designer.cs b/ARKBreedingStats/Properties/Settings.Designer.cs index c99552820..f23a676d7 100644 --- a/ARKBreedingStats/Properties/Settings.Designer.cs +++ b/ARKBreedingStats/Properties/Settings.Designer.cs @@ -12,7 +12,7 @@ namespace ARKBreedingStats.Properties { [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "17.5.0.0")] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "17.7.0.0")] internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase { private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); @@ -201,7 +201,7 @@ public bool DisplayHiddenStats { [global::System.Configuration.UserScopedSettingAttribute()] [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("ShooterGame")] + [global::System.Configuration.DefaultSettingValueAttribute("ArkAscended")] public string OCRApp { get { return ((string)(this["OCRApp"])); diff --git a/ARKBreedingStats/Properties/Settings.settings b/ARKBreedingStats/Properties/Settings.settings index 250654cd0..9e82104a7 100644 --- a/ARKBreedingStats/Properties/Settings.settings +++ b/ARKBreedingStats/Properties/Settings.settings @@ -48,7 +48,7 @@ False - ShooterGame + ArkAscended diff --git a/ARKBreedingStats/Stats.cs b/ARKBreedingStats/Stats.cs index 454f21f52..4d8fbfc65 100644 --- a/ARKBreedingStats/Stats.cs +++ b/ARKBreedingStats/Stats.cs @@ -64,19 +64,19 @@ public static float DisplayedAberration(double displayedStatValue, int displayed { // ARK displays one decimal digit, so the minimal error of a given number is assumed to be 0.06. // the theoretical value of a maximal error of 0.05 is too low. - const float ARKDISPLAYVALUEERROR = 0.06f; + const float arkDisplayValueError = 0.06f; // If an export file is used, the full float precision of the stat value is given, the precision is calculated then. // For values > 1e6 the float precision error is larger than 0.06 // always consider at least an error of. When using only the float-precision often the stat-calculations increase the resulting error to be much larger. - const float MINVALUEERROR = 0.001f; + const float minValueError = 0.001f; // the error can increase due to the stat-calculation. Assume a factor of 10 for now, values lower than 6 were too low. - const float CALCULATIONERRORFACTOR = 10f; + const float calculationErrorFactor = 11; return highPrecisionInput || displayedStatValue * (displayedDecimals == 3 ? 100 : 1) > 1e6 - ? Math.Max(MINVALUEERROR, ((float)displayedStatValue).FloatPrecision() * CALCULATIONERRORFACTOR) - : ARKDISPLAYVALUEERROR * (displayedDecimals == 3 ? .01f : 1); + ? Math.Max(minValueError, ((float)displayedStatValue).FloatPrecision() * calculationErrorFactor) + : arkDisplayValueError * (displayedDecimals == 3 ? .01f : 1); } } } diff --git a/ARKBreedingStats/Utils.cs b/ARKBreedingStats/Utils.cs index 330d4a208..9f5001dbc 100644 --- a/ARKBreedingStats/Utils.cs +++ b/ARKBreedingStats/Utils.cs @@ -514,6 +514,65 @@ public static bool ShowTextInput(string text, out string input, string title = n return true; } + /// + /// Displays a control with options, where the user can select one of them or cancel. + /// The index of the selection is returned or -1 when cancelled. + /// + public static int ShowListInput(IList optionTexts, string headerText = null, string windowTitle = null, int buttonHeight = 21) + { + const int width = 350; + const int margin = 15; + var result = -1; + Form inputForm = new Form + { + Width = width, + FormBorderStyle = FormBorderStyle.SizableToolWindow, + Text = windowTitle, + StartPosition = FormStartPosition.CenterParent, + ShowInTaskbar = false, + AutoScroll = true + }; + var y = 10; + if (!string.IsNullOrEmpty(headerText)) + { + Label textLabel = new Label { Left = margin, Top = y, Text = headerText, AutoSize = true }; + inputForm.Controls.Add(textLabel); + y += 30; + } + + var tt = new ToolTip(); + + var i = 0; + foreach (var option in optionTexts) + { + var optionButton = new Button { Text = option, Left = margin, Width = width - 3 * margin, Top = y, DialogResult = DialogResult.OK, Tag = i++ }; + if (buttonHeight > 0) optionButton.Height = buttonHeight; + y += buttonHeight + 12; + optionButton.Click += (sender, e) => + { + result = (int)((Button)sender).Tag; + inputForm.Close(); + }; + inputForm.Controls.Add(optionButton); + tt.SetToolTip(optionButton, option); + } + + const int cancelButtonWidth = 80; + Button buttonCancel = new Button { Text = Loc.S("Cancel"), Left = width - cancelButtonWidth - 2 * margin, Width = cancelButtonWidth, Top = y, DialogResult = DialogResult.Cancel }; + buttonCancel.Click += (sender, e) => { inputForm.Close(); }; + inputForm.Controls.Add(buttonCancel); + y += 30; + inputForm.CancelButton = buttonCancel; + + inputForm.Height = Math.Min(y + 50, 800); + + var dialogResult = inputForm.ShowDialog(); + tt.RemoveAll(); + tt.Dispose(); + + return dialogResult != DialogResult.OK ? -1 : result; + } + /// /// This function may only be used if the ArkId is unique (when importing files that have ArkId1 and ArkId2) /// diff --git a/ARKBreedingStats/_manifest.json b/ARKBreedingStats/_manifest.json index a79ef714e..f0003f12f 100644 --- a/ARKBreedingStats/_manifest.json +++ b/ARKBreedingStats/_manifest.json @@ -4,7 +4,7 @@ "ARK Smart Breeding": { "Id": "ARK Smart Breeding", "Category": "main", - "version": "0.57.0.2" + "version": "0.57.1.0" }, "SpeciesColorImages": { "Id": "SpeciesColorImages", diff --git a/ARKBreedingStats/importExportGun/ExportGunServerFile.cs b/ARKBreedingStats/importExportGun/ExportGunServerFile.cs index b1a83c0a8..3f33a2592 100644 --- a/ARKBreedingStats/importExportGun/ExportGunServerFile.cs +++ b/ARKBreedingStats/importExportGun/ExportGunServerFile.cs @@ -26,6 +26,7 @@ internal class ExportGunServerFile public double BabyImprintingStatScaleMultiplier { get; set; } public double BabyFoodConsumptionSpeedMultiplier { get; set; } public double TamedDinoCharacterFoodDrainMultiplier { get; set; } + public bool AllowSpeedLeveling { get; set; } public bool AllowFlyerSpeedLeveling { get; set; } public bool UseSingleplayerSettings { get; set; } } diff --git a/ARKBreedingStats/json/values/_manifest.json b/ARKBreedingStats/json/values/_manifest.json index 4455cf3c2..97b3352bf 100644 --- a/ARKBreedingStats/json/values/_manifest.json +++ b/ARKBreedingStats/json/values/_manifest.json @@ -15,12 +15,7 @@ }, "111111111-PrimitivePlus.json": { "version": "345.39.8870324", - "mod": { - "id": "111111111", - "tag": "PrimitivePlus", - "title": "PrimitivePlus", - "official": true - } + "mod": { "id": "111111111", "tag": "PrimitivePlus", "title": "PrimitivePlus", "official": true } }, "1125442531-Gaia.json": { "version": "356.5.1630493486", @@ -263,7 +258,7 @@ "mod": { "id": "2000326197", "tag": "ExtraResources", "title": "Event Assets" } }, "2003934830-Beasts.json": { - "version": "358.11.1692983778", + "version": "358.17.1699137788", "mod": { "id": "2003934830", "tag": "Beasts", "title": "Prehistoric Beasts" } }, "2019846325-ApexMod.json": { @@ -401,17 +396,11 @@ "ASA-values.json": { "version": "25.53.449745", "format": "1.15-asa", - "mod": { "id": "ASA", "tag": "", "title": "Ark: Survival Ascended" } + "mod": { "id": "ASA", "tag": "", "title": "Ark: Survival Ascended", "shortTitle": "ASA", "official": true } }, "CrystalIsles-CrystalIsles.json": { "version": "345.39.8870324.1", - "mod": { - "id": "CrystalIsles", - "tag": "CrystalIsles", - "title": "CrystalIsles", - "official": true, - "expansion": true - } + "mod": { "id": "CrystalIsles", "tag": "CrystalIsles", "title": "CrystalIsles", "official": true, "expansion": true } }, "values.json": { "version": "358.6.11410860" diff --git a/ARKBreedingStats/library/CreatureCollection.cs b/ARKBreedingStats/library/CreatureCollection.cs index 23675bacf..cc15e9aa9 100644 --- a/ARKBreedingStats/library/CreatureCollection.cs +++ b/ARKBreedingStats/library/CreatureCollection.cs @@ -79,8 +79,8 @@ public CreatureCollection() /// /// Indicates the game the library is used for. Possible values are "ASE" (default) for ARK: Survival Evolved or "ASA" for ARK: Survival Ascended. /// - [JsonProperty] - public string Game = "ASE"; + [JsonProperty("Game")] + private string _game = "ASE"; /// /// Used for the exportGun mod. @@ -584,5 +584,32 @@ public enum ColorExisting /// ColorIsNew } + + public string Game + { + get => _game; + set + { + _game = value; + switch (value) + { + case Ark.Asa: + if (modIDs == null) modIDs = new List(); + if (!modIDs.Contains(Ark.Asa)) + { + modIDs.Insert(0, Ark.Asa); + modListHash = 0; // making sure the mod values are reloaded when checked + } + break; + default: + // non ASA + if (modIDs == null) return; + ModList.RemoveAll(m => m.id == Ark.Asa); + if (modIDs.Remove(Ark.Asa)) + modListHash = 0; + break; + } + } + } } } diff --git a/ARKBreedingStats/library/DummyCreatures.cs b/ARKBreedingStats/library/DummyCreatures.cs index 341561acd..ba92895d2 100644 --- a/ARKBreedingStats/library/DummyCreatures.cs +++ b/ARKBreedingStats/library/DummyCreatures.cs @@ -5,11 +5,12 @@ using ARKBreedingStats.Library; using ARKBreedingStats.species; using ARKBreedingStats.values; +using static System.Windows.Forms.VisualStyles.VisualStyleElement.Rebar; namespace ARKBreedingStats.library { /// - /// Creates dummy creatures to populate a library. + /// Creates dummy creatures and simulates breeding to populate a library. /// public static class DummyCreatures { @@ -48,9 +49,6 @@ public static List CreateCreatures(int count, Species species = null, SetServer = setServer }; - if (_levelInverseCumulativeFunction == null) - InitializeLevelFunction(); - var creatures = new List(count); var rand = new Random(); @@ -85,7 +83,6 @@ public static List CreateCreatures(int count, Species species = null, if (maxWildLevel < 1) maxWildLevel = CreatureCollection.CurrentCreatureCollection?.maxWildLevel ?? 150; var difficulty = maxWildLevel / 30d; - var levelStep = (int)difficulty; var nameCounter = new Dictionary(); @@ -94,56 +91,7 @@ public static List CreateCreatures(int count, Species species = null, if (randomSpecies) species = speciesSelection[rand.Next(speciesCount)]; - // rather "tame" higher creatures - var creatureLevel = (rand.Next(5) == 0 ? rand.Next(21) + 1 : 21 + rand.Next(10)) * difficulty; - var tamingEffectiveness = 0.5 + rand.NextDouble() / 2; // assume at least 50 % te - creatureLevel *= 1 + 0.5 * tamingEffectiveness; - - var levelFactor = creatureLevel / _totalLevels; - var levelsWild = new int[Stats.StatsCount]; - var levelsDom = new int[Stats.StatsCount]; - var torpidityLevel = 0; - for (int si = 0; si < Stats.StatsCount; si++) - { - if (!species.UsesStat(si) || si == Stats.Torpidity) continue; - var level = (int)(levelFactor * GetBinomialLevel(rand)); - torpidityLevel += level; - levelsWild[si] = level; - } - levelsWild[Stats.Torpidity] = torpidityLevel; - - var sex = species.noGender ? Sex.Unknown : rand.Next(2) == 0 ? Sex.Female : Sex.Male; - var names = sex == Sex.Female ? _namesFemale : _namesMale; - var name = names[rand.Next(names.Length)]; - if (nameCounter.TryGetValue(name, out var nameCount)) - { - nameCounter[name]++; - name += $" {nameCount + 1}"; - } - else - { - nameCounter.Add(name, 1); - } - - var creature = new Creature(species, name, sex: sex, levelsWild: levelsWild, - levelsDom: levelsDom, tamingEff: tamingEffectiveness) - { - guid = Guid.NewGuid() - }; - creature.RecalculateCreatureValues(levelStep); - - creature.colors = species.RandomSpeciesColors(rand); - - if (setOwner) - creature.owner = $"Player {rand.Next(5) + 1}"; - if (setTribe) - creature.tribe = $"Tribe {rand.Next(5) + 1}"; - if (setServer) - creature.server = $"Server {rand.Next(5) + 1}"; - - creature.InitializeFlags(); - - creatures.Add(creature); + creatures.Add(CreateCreature(species, difficulty, true, rand, setOwner, setTribe, setServer, nameCounter)); } if (breedGenerations > 0) @@ -164,6 +112,76 @@ public static List CreateCreatures(int count, Species species = null, return creatures; } + /// + /// Creates a creature for testing. + /// + public static Creature CreateCreature(Species species, double difficulty, bool doTame = true, Random rand = null, bool setOwner = true, bool setTribe = true, bool setServer = true, Dictionary nameCounter = null) + { + if (rand == null) rand = new Random(); + + // rather "tame" higher creatures. Base levels are 1-30, scaled by difficulty + var creatureLevel = (rand.Next(5) == 0 ? rand.Next(21) + 1 : 21 + rand.Next(10)) * difficulty; + var tamingEffectiveness = -3d; // indicating wild + if (doTame) + { + tamingEffectiveness = 0.5 + rand.NextDouble() / 2; // assume at least 50 % te + creatureLevel *= 1 + 0.5 * tamingEffectiveness; + } + + var levelFactor = creatureLevel / _totalLevels; + var levelsWild = new int[Stats.StatsCount]; + //var levelsMut = new int[Stats.StatsCount]; + var levelsDom = new int[Stats.StatsCount]; + var torpidityLevel = 0; + for (int si = 0; si < Stats.StatsCount; si++) + { + if (!species.UsesStat(si) || !species.CanLevelUpWildOrHaveMutations(si) || si == Stats.Torpidity) continue; + var level = (int)(levelFactor * GetBinomialLevel(rand)); + torpidityLevel += level; + levelsWild[si] = level; + } + levelsWild[Stats.Torpidity] = torpidityLevel; + + var sex = species.noGender ? Sex.Unknown : rand.Next(2) == 0 ? Sex.Female : Sex.Male; + string name = null; + if (doTame) + { + var names = sex == Sex.Female ? _namesFemale : _namesMale; + name = names[rand.Next(names.Length)]; + if (nameCounter != null) + { + if (nameCounter.TryGetValue(name, out var nameCount)) + { + nameCounter[name]++; + name += $" {nameCount + 1}"; + } + else + { + nameCounter.Add(name, 1); + } + } + } + + var creature = new Creature(species, name, sex: sex, levelsWild: levelsWild, + levelsDom: levelsDom, tamingEff: tamingEffectiveness) + { + guid = Guid.NewGuid() + }; + creature.RecalculateCreatureValues((int)difficulty); + + creature.colors = species.RandomSpeciesColors(rand); + if (setOwner) + creature.owner = $"Player {rand.Next(5) + 1}"; + if (setTribe) + creature.tribe = $"Tribe {rand.Next(5) + 1}"; + if (setServer) + creature.server = $"Server {rand.Next(5) + 1}"; + + creature.InitializeFlags(); + + return creature; + } + /// /// Combine pairs according to their breeding score and create probable offspring. Only the new creatures are returned. /// @@ -230,7 +248,7 @@ private static List BreedCreatures(Creature[] creatures, Species speci var statIndicesForPossibleMutation = mutationPossible ? new List(Stats.StatsCount) : null; for (int si = 0; si < Stats.StatsCount; si++) { - if (!species.UsesStat(si) || si == Stats.Torpidity) continue; + if (!species.UsesStat(si) || !species.CanLevelUpWildOrHaveMutations(si) || si == Stats.Torpidity) continue; var level = rand.NextDouble() < probabilityHigherStat ? Math.Max(mother.levelsWild[si], father.levelsWild[si]) @@ -342,6 +360,8 @@ private static List BreedCreatures(Creature[] creatures, Species speci /// private static int GetBinomialLevel(Random rand) { + if (_levelInverseCumulativeFunction == null) + InitializeLevelFunction(); return _levelInverseCumulativeFunction[rand.Next(MaxSteps)]; } diff --git a/ARKBreedingStats/miscClasses/ValueMinMax.cs b/ARKBreedingStats/miscClasses/ValueMinMax.cs index f6ea34917..f6c9e619d 100644 --- a/ARKBreedingStats/miscClasses/ValueMinMax.cs +++ b/ARKBreedingStats/miscClasses/ValueMinMax.cs @@ -75,6 +75,8 @@ public static bool Overlaps(MinMaxDouble range1, MinMaxDouble range2) { return range1.Overlaps(range2); } + + public override string ToString() => $"{Min}, {Mean}, {Max}"; } public struct MinMaxInt @@ -100,5 +102,7 @@ public bool Includes(int value) { return Max >= value && Min <= value; } + + public override string ToString() => $"{Min}, {Max}"; } } diff --git a/ARKBreedingStats/mods/Mod.cs b/ARKBreedingStats/mods/Mod.cs index bfe690b79..c56a70972 100644 --- a/ARKBreedingStats/mods/Mod.cs +++ b/ARKBreedingStats/mods/Mod.cs @@ -26,6 +26,12 @@ public class Mod [JsonProperty] public string title; + /// + /// Commonly used short name to describe the mod, is preferred over title for species suffix if available. + /// + [JsonProperty] + public string shortTitle; + /// /// Game expansions are usually maps. The species of these expansion are usually included in the vanilla game and thus these files are loaded automatically by this application. /// These mod files are not listed explicitly in the mod list of a collection, they're expected to be loaded always. diff --git a/ARKBreedingStats/multiplierTesting/StatsMultiplierTesting.Designer.cs b/ARKBreedingStats/multiplierTesting/StatsMultiplierTesting.Designer.cs index dc4ee967e..7b0ed1039 100644 --- a/ARKBreedingStats/multiplierTesting/StatsMultiplierTesting.Designer.cs +++ b/ARKBreedingStats/multiplierTesting/StatsMultiplierTesting.Designer.cs @@ -33,6 +33,7 @@ private void InitializeComponent() this.button1 = new System.Windows.Forms.Button(); this.cbUpdateOnSpeciesChange = new System.Windows.Forms.CheckBox(); this.groupBox5 = new System.Windows.Forms.GroupBox(); + this.CbAtlas = new System.Windows.Forms.CheckBox(); this.CbAllowFlyerSpeedLeveling = new System.Windows.Forms.CheckBox(); this.cbSingleplayerSettings = new System.Windows.Forms.CheckBox(); this.btUseMultipliersFromSettings = new System.Windows.Forms.Button(); @@ -54,19 +55,19 @@ private void InitializeComponent() this.tbFineAdjustments = new System.Windows.Forms.TrackBar(); this.lBDummyEmptyFlowBreak = new System.Windows.Forms.Label(); this.panel1 = new System.Windows.Forms.Panel(); - this.label15 = new System.Windows.Forms.Label(); - this.label14 = new System.Windows.Forms.Label(); - this.label13 = new System.Windows.Forms.Label(); - this.label12 = new System.Windows.Forms.Label(); - this.label11 = new System.Windows.Forms.Label(); - this.label10 = new System.Windows.Forms.Label(); - this.label9 = new System.Windows.Forms.Label(); - this.label8 = new System.Windows.Forms.Label(); - this.label7 = new System.Windows.Forms.Label(); - this.label6 = new System.Windows.Forms.Label(); - this.label5 = new System.Windows.Forms.Label(); - this.label4 = new System.Windows.Forms.Label(); - this.label3 = new System.Windows.Forms.Label(); + this.LbFinalValue = new System.Windows.Forms.Label(); + this.LbIdM = new System.Windows.Forms.Label(); + this.LbId = new System.Windows.Forms.Label(); + this.LbLd = new System.Windows.Forms.Label(); + this.LbTmM = new System.Windows.Forms.Label(); + this.LbTm = new System.Windows.Forms.Label(); + this.LbTaM = new System.Windows.Forms.Label(); + this.LbTa = new System.Windows.Forms.Label(); + this.LbTBHM = new System.Windows.Forms.Label(); + this.LbIwM = new System.Windows.Forms.Label(); + this.LbIw = new System.Windows.Forms.Label(); + this.LbLw = new System.Windows.Forms.Label(); + this.LbBaseValue = new System.Windows.Forms.Label(); this.gbLevel = new System.Windows.Forms.GroupBox(); this.lbLevelSumDom = new System.Windows.Forms.Label(); this.lbLevelSumWild = new System.Windows.Forms.Label(); @@ -90,7 +91,6 @@ private void InitializeComponent() this.toolStripSeparator2 = new System.Windows.Forms.ToolStripSeparator(); this.setAllWildLevelsToTheClosestValueToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.setAllDomLevelsToTheClosestValueToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); - this.CbAtlas = new System.Windows.Forms.CheckBox(); this.flowLayoutPanel1.SuspendLayout(); this.groupBox4.SuspendLayout(); this.groupBox5.SuspendLayout(); @@ -175,6 +175,17 @@ private void InitializeComponent() this.groupBox5.TabStop = false; this.groupBox5.Text = "Settings"; // + // CbAtlas + // + this.CbAtlas.AutoSize = true; + this.CbAtlas.Location = new System.Drawing.Point(134, 19); + this.CbAtlas.Name = "CbAtlas"; + this.CbAtlas.Size = new System.Drawing.Size(60, 17); + this.CbAtlas.TabIndex = 2; + this.CbAtlas.Text = "ATLAS"; + this.CbAtlas.UseVisualStyleBackColor = true; + this.CbAtlas.CheckedChanged += new System.EventHandler(this.CbAtlas_CheckedChanged); + // // CbAllowFlyerSpeedLeveling // this.CbAllowFlyerSpeedLeveling.AutoSize = true; @@ -421,154 +432,154 @@ private void InitializeComponent() // // panel1 // - this.panel1.Controls.Add(this.label15); - this.panel1.Controls.Add(this.label14); - this.panel1.Controls.Add(this.label13); - this.panel1.Controls.Add(this.label12); - this.panel1.Controls.Add(this.label11); - this.panel1.Controls.Add(this.label10); - this.panel1.Controls.Add(this.label9); - this.panel1.Controls.Add(this.label8); - this.panel1.Controls.Add(this.label7); - this.panel1.Controls.Add(this.label6); - this.panel1.Controls.Add(this.label5); - this.panel1.Controls.Add(this.label4); - this.panel1.Controls.Add(this.label3); + this.panel1.Controls.Add(this.LbFinalValue); + this.panel1.Controls.Add(this.LbIdM); + this.panel1.Controls.Add(this.LbId); + this.panel1.Controls.Add(this.LbLd); + this.panel1.Controls.Add(this.LbTmM); + this.panel1.Controls.Add(this.LbTm); + this.panel1.Controls.Add(this.LbTaM); + this.panel1.Controls.Add(this.LbTa); + this.panel1.Controls.Add(this.LbTBHM); + this.panel1.Controls.Add(this.LbIwM); + this.panel1.Controls.Add(this.LbIw); + this.panel1.Controls.Add(this.LbLw); + this.panel1.Controls.Add(this.LbBaseValue); this.flowLayoutPanel1.SetFlowBreak(this.panel1, true); this.panel1.Location = new System.Drawing.Point(3, 156); this.panel1.Name = "panel1"; this.panel1.Size = new System.Drawing.Size(1005, 29); this.panel1.TabIndex = 8; // - // label15 - // - this.label15.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.label15.Location = new System.Drawing.Point(864, 5); - this.label15.Name = "label15"; - this.label15.Size = new System.Drawing.Size(141, 20); - this.label15.TabIndex = 40; - this.label15.Text = "V"; - this.label15.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; - // - // label14 - // - this.label14.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.label14.Location = new System.Drawing.Point(806, 5); - this.label14.Name = "label14"; - this.label14.Size = new System.Drawing.Size(58, 20); - this.label14.TabIndex = 39; - this.label14.Text = "IdM"; - this.label14.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; - // - // label13 - // - this.label13.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.label13.Location = new System.Drawing.Point(748, 5); - this.label13.Name = "label13"; - this.label13.Size = new System.Drawing.Size(58, 20); - this.label13.TabIndex = 38; - this.label13.Text = "Id"; - this.label13.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; - // - // label12 - // - this.label12.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.label12.Location = new System.Drawing.Point(690, 5); - this.label12.Name = "label12"; - this.label12.Size = new System.Drawing.Size(58, 20); - this.label12.TabIndex = 37; - this.label12.Text = "Ld"; - this.label12.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; - // - // label11 - // - this.label11.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.label11.Location = new System.Drawing.Point(626, 5); - this.label11.Name = "label11"; - this.label11.Size = new System.Drawing.Size(58, 20); - this.label11.TabIndex = 36; - this.label11.Text = "TmM"; - this.label11.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; - // - // label10 - // - this.label10.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.label10.Location = new System.Drawing.Point(562, 5); - this.label10.Name = "label10"; - this.label10.Size = new System.Drawing.Size(58, 20); - this.label10.TabIndex = 35; - this.label10.Text = "Tm"; - this.label10.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; - // - // label9 - // - this.label9.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.label9.Location = new System.Drawing.Point(498, 5); - this.label9.Name = "label9"; - this.label9.Size = new System.Drawing.Size(58, 20); - this.label9.TabIndex = 34; - this.label9.Text = "TaM"; - this.label9.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; - // - // label8 - // - this.label8.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.label8.Location = new System.Drawing.Point(434, 5); - this.label8.Name = "label8"; - this.label8.Size = new System.Drawing.Size(58, 20); - this.label8.TabIndex = 33; - this.label8.Text = "Ta"; - this.label8.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; - // - // label7 - // - this.label7.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.label7.Location = new System.Drawing.Point(370, 5); - this.label7.Name = "label7"; - this.label7.Size = new System.Drawing.Size(58, 20); - this.label7.TabIndex = 32; - this.label7.Text = "TBHM"; - this.label7.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; - // - // label6 - // - this.label6.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.label6.Location = new System.Drawing.Point(306, 5); - this.label6.Name = "label6"; - this.label6.Size = new System.Drawing.Size(58, 20); - this.label6.TabIndex = 31; - this.label6.Text = "IwM"; - this.label6.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; - // - // label5 - // - this.label5.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.label5.Location = new System.Drawing.Point(242, 5); - this.label5.Name = "label5"; - this.label5.Size = new System.Drawing.Size(58, 20); - this.label5.TabIndex = 30; - this.label5.Text = "Iw"; - this.label5.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; - // - // label4 - // - this.label4.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.label4.Location = new System.Drawing.Point(184, 5); - this.label4.Name = "label4"; - this.label4.Size = new System.Drawing.Size(58, 20); - this.label4.TabIndex = 29; - this.label4.Text = "Lw"; - this.label4.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; - // - // label3 - // - this.label3.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.label3.Location = new System.Drawing.Point(79, 5); - this.label3.Name = "label3"; - this.label3.Size = new System.Drawing.Size(105, 20); - this.label3.TabIndex = 28; - this.label3.Text = "B"; - this.label3.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; + // LbFinalValue + // + this.LbFinalValue.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.LbFinalValue.Location = new System.Drawing.Point(864, 5); + this.LbFinalValue.Name = "LbFinalValue"; + this.LbFinalValue.Size = new System.Drawing.Size(141, 20); + this.LbFinalValue.TabIndex = 40; + this.LbFinalValue.Text = "V"; + this.LbFinalValue.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; + // + // LbIdM + // + this.LbIdM.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.LbIdM.Location = new System.Drawing.Point(806, 5); + this.LbIdM.Name = "LbIdM"; + this.LbIdM.Size = new System.Drawing.Size(58, 20); + this.LbIdM.TabIndex = 39; + this.LbIdM.Text = "IdM"; + this.LbIdM.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; + // + // LbId + // + this.LbId.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.LbId.Location = new System.Drawing.Point(748, 5); + this.LbId.Name = "LbId"; + this.LbId.Size = new System.Drawing.Size(58, 20); + this.LbId.TabIndex = 38; + this.LbId.Text = "Id"; + this.LbId.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; + // + // LbLd + // + this.LbLd.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.LbLd.Location = new System.Drawing.Point(690, 5); + this.LbLd.Name = "LbLd"; + this.LbLd.Size = new System.Drawing.Size(58, 20); + this.LbLd.TabIndex = 37; + this.LbLd.Text = "Ld"; + this.LbLd.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; + // + // LbTmM + // + this.LbTmM.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.LbTmM.Location = new System.Drawing.Point(626, 5); + this.LbTmM.Name = "LbTmM"; + this.LbTmM.Size = new System.Drawing.Size(58, 20); + this.LbTmM.TabIndex = 36; + this.LbTmM.Text = "TmM"; + this.LbTmM.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; + // + // LbTm + // + this.LbTm.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.LbTm.Location = new System.Drawing.Point(562, 5); + this.LbTm.Name = "LbTm"; + this.LbTm.Size = new System.Drawing.Size(58, 20); + this.LbTm.TabIndex = 35; + this.LbTm.Text = "Tm"; + this.LbTm.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; + // + // LbTaM + // + this.LbTaM.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.LbTaM.Location = new System.Drawing.Point(498, 5); + this.LbTaM.Name = "LbTaM"; + this.LbTaM.Size = new System.Drawing.Size(58, 20); + this.LbTaM.TabIndex = 34; + this.LbTaM.Text = "TaM"; + this.LbTaM.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; + // + // LbTa + // + this.LbTa.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.LbTa.Location = new System.Drawing.Point(434, 5); + this.LbTa.Name = "LbTa"; + this.LbTa.Size = new System.Drawing.Size(58, 20); + this.LbTa.TabIndex = 33; + this.LbTa.Text = "Ta"; + this.LbTa.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; + // + // LbTBHM + // + this.LbTBHM.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.LbTBHM.Location = new System.Drawing.Point(370, 5); + this.LbTBHM.Name = "LbTBHM"; + this.LbTBHM.Size = new System.Drawing.Size(58, 20); + this.LbTBHM.TabIndex = 32; + this.LbTBHM.Text = "TBHM"; + this.LbTBHM.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; + // + // LbIwM + // + this.LbIwM.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.LbIwM.Location = new System.Drawing.Point(306, 5); + this.LbIwM.Name = "LbIwM"; + this.LbIwM.Size = new System.Drawing.Size(58, 20); + this.LbIwM.TabIndex = 31; + this.LbIwM.Text = "IwM"; + this.LbIwM.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; + // + // LbIw + // + this.LbIw.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.LbIw.Location = new System.Drawing.Point(242, 5); + this.LbIw.Name = "LbIw"; + this.LbIw.Size = new System.Drawing.Size(58, 20); + this.LbIw.TabIndex = 30; + this.LbIw.Text = "Iw"; + this.LbIw.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; + // + // LbLw + // + this.LbLw.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.LbLw.Location = new System.Drawing.Point(184, 5); + this.LbLw.Name = "LbLw"; + this.LbLw.Size = new System.Drawing.Size(58, 20); + this.LbLw.TabIndex = 29; + this.LbLw.Text = "Lw"; + this.LbLw.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; + // + // LbBaseValue + // + this.LbBaseValue.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.LbBaseValue.Location = new System.Drawing.Point(79, 5); + this.LbBaseValue.Name = "LbBaseValue"; + this.LbBaseValue.Size = new System.Drawing.Size(105, 20); + this.LbBaseValue.TabIndex = 28; + this.LbBaseValue.Text = "B"; + this.LbBaseValue.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; // // gbLevel // @@ -773,17 +784,6 @@ private void InitializeComponent() this.setAllDomLevelsToTheClosestValueToolStripMenuItem.Text = "Set all Dom levels to the closest value"; this.setAllDomLevelsToTheClosestValueToolStripMenuItem.Click += new System.EventHandler(this.setAllDomLevelsToTheClosestValueToolStripMenuItem_Click); // - // CbAtlas - // - this.CbAtlas.AutoSize = true; - this.CbAtlas.Location = new System.Drawing.Point(134, 19); - this.CbAtlas.Name = "CbAtlas"; - this.CbAtlas.Size = new System.Drawing.Size(60, 17); - this.CbAtlas.TabIndex = 2; - this.CbAtlas.Text = "ATLAS"; - this.CbAtlas.UseVisualStyleBackColor = true; - this.CbAtlas.CheckedChanged += new System.EventHandler(this.CbAtlas_CheckedChanged); - // // StatsMultiplierTesting // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); @@ -834,19 +834,19 @@ private void InitializeComponent() private System.Windows.Forms.Button button1; private System.Windows.Forms.CheckBox cbUpdateOnSpeciesChange; private System.Windows.Forms.Panel panel1; - private System.Windows.Forms.Label label15; - private System.Windows.Forms.Label label14; - private System.Windows.Forms.Label label13; - private System.Windows.Forms.Label label12; - private System.Windows.Forms.Label label11; - private System.Windows.Forms.Label label10; - private System.Windows.Forms.Label label9; - private System.Windows.Forms.Label label8; - private System.Windows.Forms.Label label7; - private System.Windows.Forms.Label label6; - private System.Windows.Forms.Label label5; - private System.Windows.Forms.Label label4; - private System.Windows.Forms.Label label3; + private System.Windows.Forms.Label LbFinalValue; + private System.Windows.Forms.Label LbIdM; + private System.Windows.Forms.Label LbId; + private System.Windows.Forms.Label LbLd; + private System.Windows.Forms.Label LbTmM; + private System.Windows.Forms.Label LbTm; + private System.Windows.Forms.Label LbTaM; + private System.Windows.Forms.Label LbTa; + private System.Windows.Forms.Label LbTBHM; + private System.Windows.Forms.Label LbIwM; + private System.Windows.Forms.Label LbIw; + private System.Windows.Forms.Label LbLw; + private System.Windows.Forms.Label LbBaseValue; private System.Windows.Forms.LinkLabel llStatCalculation; private System.Windows.Forms.GroupBox groupBox1; private System.Windows.Forms.RadioButton rbBred; diff --git a/ARKBreedingStats/multiplierTesting/StatsMultiplierTesting.cs b/ARKBreedingStats/multiplierTesting/StatsMultiplierTesting.cs index 88ef92ca6..ec3e6e2cf 100644 --- a/ARKBreedingStats/multiplierTesting/StatsMultiplierTesting.cs +++ b/ARKBreedingStats/multiplierTesting/StatsMultiplierTesting.cs @@ -6,7 +6,6 @@ using System; using System.Drawing; using System.Windows.Forms; -using ARKBreedingStats.importExportGun; using ARKBreedingStats.utils; namespace ARKBreedingStats.multiplierTesting @@ -21,6 +20,7 @@ public partial class StatsMultiplierTesting : UserControl private Nud _fineAdjustmentsNud; private MinMaxDouble _fineAdjustmentRange; private double _fineAdjustmentFactor; + private ToolTip _tt = new ToolTip(); public StatsMultiplierTesting() { @@ -52,6 +52,7 @@ public StatsMultiplierTesting() _fineAdjustmentRange = new MinMaxDouble(0); rbTamed.Checked = true; gbFineAdjustment.Hide(); + SetToolTips(); } internal void SetGameDefaultMultiplier() @@ -526,5 +527,22 @@ private void btUseMultipliersFromSettings_Click(object sender, EventArgs e) { SetStatMultipliersFromCC(); } + + private void SetToolTips() + { + _tt.SetToolTip(LbBaseValue, "Base value | Max status value"); + _tt.SetToolTip(LbLw, "Wild levels | Points applied wild"); + _tt.SetToolTip(LbIw, "Increase per wild level | Amount max gained per level up value wild"); + _tt.SetToolTip(LbIwM, "Increase per wild level global multiplier | per level stats multiplier dino wild"); + _tt.SetToolTip(LbTBHM, "Tamed base health multiplier"); + _tt.SetToolTip(LbTa, "Additive taming bonus | Taming max stat additions"); + _tt.SetToolTip(LbTaM, "Additive taming bonus global multiplier | per level stats multiplier dino tamed add"); + _tt.SetToolTip(LbTm, "Multiplicative taming bonus | Taming max stat multiplier"); + _tt.SetToolTip(LbTmM, "Multiplicative taming bonus global multiplier | per level stats multiplier dino tamed affinity"); + _tt.SetToolTip(LbLd, "Domesticate levels | Points applied tamed"); + _tt.SetToolTip(LbId, "Increase per domesticate level | Amount max gained per level up value tamed"); + _tt.SetToolTip(LbIdM, "Increase per domestic level global multiplier | per level stats multiplier dino tamed"); + _tt.SetToolTip(LbFinalValue, "Final stat value displayed in the game"); + } } } diff --git a/ARKBreedingStats/settings/ATImportFileLocationDialog.cs b/ARKBreedingStats/settings/ATImportFileLocationDialog.cs index aa25e67c4..481b4e839 100644 --- a/ARKBreedingStats/settings/ATImportFileLocationDialog.cs +++ b/ARKBreedingStats/settings/ATImportFileLocationDialog.cs @@ -37,7 +37,7 @@ private void button_FileSelect_Click(object sender, EventArgs e) { dlg.InitialDirectory = Path.GetDirectoryName(textBox_FileLocation.Text); } - else if (ExportFolderLocation.GetListOfExportFolders(out var folders, out _)) + else if (ArkInstallationPath.GetListOfExportFolders(out var folders, out _)) { foreach (var f in folders) { diff --git a/ARKBreedingStats/settings/Settings.Designer.cs b/ARKBreedingStats/settings/Settings.Designer.cs index 3b5354578..f430ab960 100644 --- a/ARKBreedingStats/settings/Settings.Designer.cs +++ b/ARKBreedingStats/settings/Settings.Designer.cs @@ -45,50 +45,26 @@ private void InitializeComponent() this.label6 = new System.Windows.Forms.Label(); this.label5 = new System.Windows.Forms.Label(); this.groupBox2 = new System.Windows.Forms.GroupBox(); - this.nudTamedDinoCharacterFoodDrain = new ARKBreedingStats.uiControls.Nud(); - this.nudTamedDinoCharacterFoodDrainEvent = new ARKBreedingStats.uiControls.Nud(); this.label64 = new System.Windows.Forms.Label(); - this.nudBabyImprintAmountEvent = new ARKBreedingStats.uiControls.Nud(); this.label49 = new System.Windows.Forms.Label(); - this.nudBabyImprintAmount = new ARKBreedingStats.uiControls.Nud(); this.label44 = new System.Windows.Forms.Label(); - this.nudMatingSpeed = new ARKBreedingStats.uiControls.Nud(); - this.nudBabyFoodConsumptionSpeedEvent = new ARKBreedingStats.uiControls.Nud(); - this.nudMatingIntervalEvent = new ARKBreedingStats.uiControls.Nud(); - this.nudBabyCuddleIntervalEvent = new ARKBreedingStats.uiControls.Nud(); - this.nudBabyMatureSpeedEvent = new ARKBreedingStats.uiControls.Nud(); - this.nudEggHatchSpeedEvent = new ARKBreedingStats.uiControls.Nud(); this.labelBabyFoodConsumptionSpeed = new System.Windows.Forms.Label(); - this.nudBabyFoodConsumptionSpeed = new ARKBreedingStats.uiControls.Nud(); this.label3 = new System.Windows.Forms.Label(); - this.nudMatingInterval = new ARKBreedingStats.uiControls.Nud(); this.label17 = new System.Windows.Forms.Label(); - this.nudBabyCuddleInterval = new ARKBreedingStats.uiControls.Nud(); this.label13 = new System.Windows.Forms.Label(); this.label9 = new System.Windows.Forms.Label(); - this.nudBabyMatureSpeed = new ARKBreedingStats.uiControls.Nud(); - this.nudBabyImprintingStatScale = new ARKBreedingStats.uiControls.Nud(); this.label8 = new System.Windows.Forms.Label(); - this.nudEggHatchSpeed = new ARKBreedingStats.uiControls.Nud(); this.groupBox3 = new System.Windows.Forms.GroupBox(); this.LbDefaultLevelups = new System.Windows.Forms.Label(); - this.nudMaxServerLevel = new ARKBreedingStats.uiControls.Nud(); this.lbMaxTotalLevel = new System.Windows.Forms.Label(); - this.nudMaxGraphLevel = new ARKBreedingStats.uiControls.Nud(); this.label18 = new System.Windows.Forms.Label(); this.label11 = new System.Windows.Forms.Label(); - this.nudMaxWildLevels = new ARKBreedingStats.uiControls.Nud(); this.label10 = new System.Windows.Forms.Label(); - this.nudMaxDomLevels = new ARKBreedingStats.uiControls.Nud(); this.groupBox4 = new System.Windows.Forms.GroupBox(); this.label57 = new System.Windows.Forms.Label(); this.label56 = new System.Windows.Forms.Label(); this.pbChartOddRange = new System.Windows.Forms.PictureBox(); this.pbChartEvenRange = new System.Windows.Forms.PictureBox(); - this.nudChartLevelOddMax = new ARKBreedingStats.uiControls.Nud(); - this.nudChartLevelOddMin = new ARKBreedingStats.uiControls.Nud(); - this.nudChartLevelEvenMax = new ARKBreedingStats.uiControls.Nud(); - this.nudChartLevelEvenMin = new ARKBreedingStats.uiControls.Nud(); this.CbHighlightLevelEvenOdd = new System.Windows.Forms.CheckBox(); this.CbHighlightLevel255 = new System.Windows.Forms.CheckBox(); this.cbIgnoreSexInBreedingPlan = new System.Windows.Forms.CheckBox(); @@ -96,34 +72,30 @@ private void InitializeComponent() this.radioButtonFahrenheit = new System.Windows.Forms.RadioButton(); this.radioButtonCelsius = new System.Windows.Forms.RadioButton(); this.label12 = new System.Windows.Forms.Label(); - this.numericUpDownMaxBreedingSug = new ARKBreedingStats.uiControls.Nud(); this.groupBox5 = new System.Windows.Forms.GroupBox(); - this.nudDinoCharacterFoodDrainEvent = new ARKBreedingStats.uiControls.Nud(); - this.nudTamingSpeedEvent = new ARKBreedingStats.uiControls.Nud(); this.label7 = new System.Windows.Forms.Label(); this.label14 = new System.Windows.Forms.Label(); - this.nudDinoCharacterFoodDrain = new ARKBreedingStats.uiControls.Nud(); - this.nudTamingSpeed = new ARKBreedingStats.uiControls.Nud(); this.label15 = new System.Windows.Forms.Label(); this.groupBox6 = new System.Windows.Forms.GroupBox(); this.label55 = new System.Windows.Forms.Label(); - this.NudWaitBeforeAutoLoad = new ARKBreedingStats.uiControls.Nud(); this.label54 = new System.Windows.Forms.Label(); - this.NudKeepBackupFilesCount = new ARKBreedingStats.uiControls.Nud(); this.label53 = new System.Windows.Forms.Label(); this.BtClearBackupFolder = new System.Windows.Forms.Button(); this.label52 = new System.Windows.Forms.Label(); this.BtBackupFolder = new System.Windows.Forms.Button(); this.label2 = new System.Windows.Forms.Label(); - this.NudBackupEveryMinutes = new ARKBreedingStats.uiControls.Nud(); this.groupBox7 = new System.Windows.Forms.GroupBox(); this.checkBoxDisplayHiddenStats = new System.Windows.Forms.CheckBox(); this.tabControlSettings = new System.Windows.Forms.TabControl(); this.tabPageMultipliers = new System.Windows.Forms.TabPage(); + this.panel3 = new System.Windows.Forms.Panel(); + this.RbGameAsa = new System.Windows.Forms.RadioButton(); + this.RbGameAse = new System.Windows.Forms.RadioButton(); this.BtImportSettingsSelectFile = new System.Windows.Forms.Button(); this.CbAtlasSettings = new System.Windows.Forms.CheckBox(); this.BtSettingsToClipboard = new System.Windows.Forms.Button(); this.groupBox29 = new System.Windows.Forms.GroupBox(); + this.CbAllowSpeedLeveling = new System.Windows.Forms.CheckBox(); this.CbAllowFlyerSpeedLeveling = new System.Windows.Forms.CheckBox(); this.label34 = new System.Windows.Forms.Label(); this.btExportMultipliers = new System.Windows.Forms.Button(); @@ -134,7 +106,6 @@ private void InitializeComponent() this.cbSingleplayerSettings = new System.Windows.Forms.CheckBox(); this.groupBox11 = new System.Windows.Forms.GroupBox(); this.cbAllowMoreThanHundredImprinting = new System.Windows.Forms.CheckBox(); - this.nudWildLevelStep = new ARKBreedingStats.uiControls.Nud(); this.cbConsiderWildLevelSteps = new System.Windows.Forms.CheckBox(); this.buttonEventToDefault = new System.Windows.Forms.Button(); this.labelEvent = new System.Windows.Forms.Label(); @@ -154,14 +125,12 @@ private void InitializeComponent() this.cbDevTools = new System.Windows.Forms.CheckBox(); this.GbSpecies = new System.Windows.Forms.GroupBox(); this.LbSpeciesSelectorCountLastUsed = new System.Windows.Forms.Label(); - this.NudSpeciesSelectorCountLastUsed = new ARKBreedingStats.uiControls.Nud(); this.groupBox26 = new System.Windows.Forms.GroupBox(); this.cbAdminConsoleCommandWithCheat = new System.Windows.Forms.CheckBox(); this.groupBox25 = new System.Windows.Forms.GroupBox(); this.CbbAppDefaultFontName = new System.Windows.Forms.ComboBox(); this.label48 = new System.Windows.Forms.Label(); this.CbbColorMode = new System.Windows.Forms.ComboBox(); - this.nudDefaultFontSize = new ARKBreedingStats.uiControls.Nud(); this.label33 = new System.Windows.Forms.Label(); this.label32 = new System.Windows.Forms.Label(); this.groupBox20 = new System.Windows.Forms.GroupBox(); @@ -186,7 +155,6 @@ private void InitializeComponent() this.groupBox32 = new System.Windows.Forms.GroupBox(); this.LbInfoGraphicSize = new System.Windows.Forms.Label(); this.CbbInfoGraphicFontName = new System.Windows.Forms.ComboBox(); - this.nudInfoGraphicHeight = new ARKBreedingStats.uiControls.Nud(); this.BtInfoGraphicForeColor = new System.Windows.Forms.Button(); this.BtInfoGraphicBackColor = new System.Windows.Forms.Button(); this.BtInfoGraphicBorderColor = new System.Windows.Forms.Button(); @@ -211,17 +179,12 @@ private void InitializeComponent() this.cbImportUpdateCreatureStatus = new System.Windows.Forms.CheckBox(); this.groupBox15 = new System.Windows.Forms.GroupBox(); this.dataGridView_FileLocations = new System.Windows.Forms.DataGridView(); - this.convenientNameDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); - this.serverNameDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); - this.fileLocationDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); this.dgvFileLocation_Change = new System.Windows.Forms.DataGridViewButtonColumn(); this.ImportWithQuickImport = new System.Windows.Forms.DataGridViewCheckBoxColumn(); this.dgvFileLocation_Delete = new System.Windows.Forms.DataGridViewButtonColumn(); - this.aTImportFileLocationBindingSource = new System.Windows.Forms.BindingSource(this.components); this.btAddSavegameFileLocation = new System.Windows.Forms.Button(); this.labelSavegameFileLocationHint = new System.Windows.Forms.Label(); this.groupBox14 = new System.Windows.Forms.GroupBox(); - this.fileSelectorExtractedSaveFolder = new ARKBreedingStats.uiControls.FileSelector(); this.label24 = new System.Windows.Forms.Label(); this.tabPageImportExported = new System.Windows.Forms.TabPage(); this.BtGetExportFolderAutomatically = new System.Windows.Forms.Button(); @@ -232,7 +195,6 @@ private void InitializeComponent() this.groupBox23 = new System.Windows.Forms.GroupBox(); this.label31 = new System.Windows.Forms.Label(); this.label30 = new System.Windows.Forms.Label(); - this.nudImportLowerBoundTE = new ARKBreedingStats.uiControls.Nud(); this.groupBox22 = new System.Windows.Forms.GroupBox(); this.CbBringToFrontOnImportExportIssue = new System.Windows.Forms.CheckBox(); this.CbAutoExtractAddToLibrary = new System.Windows.Forms.CheckBox(); @@ -263,13 +225,9 @@ private void InitializeComponent() this.nudWarnImportMoreThan = new System.Windows.Forms.NumericUpDown(); this.groupBox13 = new System.Windows.Forms.GroupBox(); this.dataGridViewExportFolders = new System.Windows.Forms.DataGridView(); - this.convenientNameDataGridViewTextBoxColumn1 = new System.Windows.Forms.DataGridViewTextBoxColumn(); - this.ownerSuffixDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); - this.folderPathDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); this.dgvExportFolderChange = new System.Windows.Forms.DataGridViewButtonColumn(); this.dgvExportFolderDelete = new System.Windows.Forms.DataGridViewButtonColumn(); this.dgvExportMakeDefault = new System.Windows.Forms.DataGridViewButtonColumn(); - this.aTExportFolderLocationsBindingSource = new System.Windows.Forms.BindingSource(this.components); this.btAddExportFolder = new System.Windows.Forms.Button(); this.label25 = new System.Windows.Forms.Label(); this.tabPageTimers = new System.Windows.Forms.TabPage(); @@ -280,141 +238,149 @@ private void InitializeComponent() this.groupBox8 = new System.Windows.Forms.GroupBox(); this.label22 = new System.Windows.Forms.Label(); this.tbPlayAlarmsSeconds = new System.Windows.Forms.TextBox(); - this.customSCCustom = new ARKBreedingStats.settings.customSoundChooser(); - this.customSCWakeup = new ARKBreedingStats.settings.customSoundChooser(); - this.customSCBirth = new ARKBreedingStats.settings.customSoundChooser(); - this.customSCStarving = new ARKBreedingStats.settings.customSoundChooser(); this.label20 = new System.Windows.Forms.Label(); this.tabPageOverlay = new System.Windows.Forms.TabPage(); this.groupBox10 = new System.Windows.Forms.GroupBox(); - this.NudOverlayRelativeFontSize = new ARKBreedingStats.uiControls.Nud(); this.label65 = new System.Windows.Forms.Label(); this.CbOverlayDisplayInheritance = new System.Windows.Forms.CheckBox(); this.label45 = new System.Windows.Forms.Label(); this.pCustomOverlayLocation = new System.Windows.Forms.Panel(); - this.nudCustomOverlayLocX = new ARKBreedingStats.uiControls.Nud(); this.label42 = new System.Windows.Forms.Label(); this.label43 = new System.Windows.Forms.Label(); - this.nudCustomOverlayLocY = new ARKBreedingStats.uiControls.Nud(); this.cbCustomOverlayLocation = new System.Windows.Forms.CheckBox(); this.label38 = new System.Windows.Forms.Label(); - this.nudOverlayInfoPosY = new ARKBreedingStats.uiControls.Nud(); this.label39 = new System.Windows.Forms.Label(); - this.nudOverlayInfoPosDFR = new ARKBreedingStats.uiControls.Nud(); this.label40 = new System.Windows.Forms.Label(); this.label37 = new System.Windows.Forms.Label(); - this.nudOverlayTimerPosY = new ARKBreedingStats.uiControls.Nud(); this.label36 = new System.Windows.Forms.Label(); - this.nudOverlayTimerPosX = new ARKBreedingStats.uiControls.Nud(); this.label35 = new System.Windows.Forms.Label(); this.cbInventoryCheck = new System.Windows.Forms.CheckBox(); this.label21 = new System.Windows.Forms.Label(); - this.nudOverlayInfoDuration = new ARKBreedingStats.uiControls.Nud(); this.chkbSpeechRecognition = new System.Windows.Forms.CheckBox(); this.label66 = new System.Windows.Forms.Label(); this.tabPageOCR = new System.Windows.Forms.TabPage(); this.groupBox1 = new System.Windows.Forms.GroupBox(); + this.BtGameNameAsa = new System.Windows.Forms.Button(); this.label62 = new System.Windows.Forms.Label(); this.label61 = new System.Windows.Forms.Label(); this.label60 = new System.Windows.Forms.Label(); this.label59 = new System.Windows.Forms.Label(); this.label58 = new System.Windows.Forms.Label(); - this.NudOCRClipboardCropHeight = new ARKBreedingStats.uiControls.Nud(); - this.NudOCRClipboardCropWidth = new ARKBreedingStats.uiControls.Nud(); - this.NudOCRClipboardCropTop = new ARKBreedingStats.uiControls.Nud(); - this.NudOCRClipboardCropLeft = new ARKBreedingStats.uiControls.Nud(); this.CbOCRFromClipboard = new System.Windows.Forms.CheckBox(); - this.button1 = new System.Windows.Forms.Button(); + this.BtGameNameAse = new System.Windows.Forms.Button(); this.cbOCRIgnoreImprintValue = new System.Windows.Forms.CheckBox(); this.cbShowOCRButton = new System.Windows.Forms.CheckBox(); this.label23 = new System.Windows.Forms.Label(); - this.nudWaitBeforeScreenCapture = new ARKBreedingStats.uiControls.Nud(); this.label19 = new System.Windows.Forms.Label(); - this.nudWhiteThreshold = new ARKBreedingStats.uiControls.Nud(); this.tbOCRCaptureApp = new System.Windows.Forms.TextBox(); this.label4 = new System.Windows.Forms.Label(); this.cbbOCRApp = new System.Windows.Forms.ComboBox(); this.label1 = new System.Windows.Forms.Label(); this.panel1 = new System.Windows.Forms.Panel(); this.colorDialog1 = new System.Windows.Forms.ColorDialog(); - this.panel3 = new System.Windows.Forms.Panel(); - this.RbGameAse = new System.Windows.Forms.RadioButton(); - this.RbGameAsa = new System.Windows.Forms.RadioButton(); + this.BtAutoImportLocalSettings = new System.Windows.Forms.Button(); + this.nudWildLevelStep = new ARKBreedingStats.uiControls.Nud(); + this.nudTamedDinoCharacterFoodDrain = new ARKBreedingStats.uiControls.Nud(); + this.nudTamedDinoCharacterFoodDrainEvent = new ARKBreedingStats.uiControls.Nud(); + this.nudBabyImprintAmountEvent = new ARKBreedingStats.uiControls.Nud(); + this.nudBabyImprintAmount = new ARKBreedingStats.uiControls.Nud(); + this.nudMatingSpeed = new ARKBreedingStats.uiControls.Nud(); + this.nudBabyFoodConsumptionSpeedEvent = new ARKBreedingStats.uiControls.Nud(); + this.nudMatingIntervalEvent = new ARKBreedingStats.uiControls.Nud(); + this.nudBabyCuddleIntervalEvent = new ARKBreedingStats.uiControls.Nud(); + this.nudBabyMatureSpeedEvent = new ARKBreedingStats.uiControls.Nud(); + this.nudEggHatchSpeedEvent = new ARKBreedingStats.uiControls.Nud(); + this.nudBabyFoodConsumptionSpeed = new ARKBreedingStats.uiControls.Nud(); + this.nudMatingInterval = new ARKBreedingStats.uiControls.Nud(); + this.nudBabyCuddleInterval = new ARKBreedingStats.uiControls.Nud(); + this.nudBabyMatureSpeed = new ARKBreedingStats.uiControls.Nud(); + this.nudBabyImprintingStatScale = new ARKBreedingStats.uiControls.Nud(); + this.nudEggHatchSpeed = new ARKBreedingStats.uiControls.Nud(); + this.nudMaxServerLevel = new ARKBreedingStats.uiControls.Nud(); + this.nudMaxGraphLevel = new ARKBreedingStats.uiControls.Nud(); + this.nudMaxWildLevels = new ARKBreedingStats.uiControls.Nud(); + this.nudMaxDomLevels = new ARKBreedingStats.uiControls.Nud(); + this.nudDinoCharacterFoodDrainEvent = new ARKBreedingStats.uiControls.Nud(); + this.nudTamingSpeedEvent = new ARKBreedingStats.uiControls.Nud(); + this.nudDinoCharacterFoodDrain = new ARKBreedingStats.uiControls.Nud(); + this.nudTamingSpeed = new ARKBreedingStats.uiControls.Nud(); + this.NudSpeciesSelectorCountLastUsed = new ARKBreedingStats.uiControls.Nud(); + this.nudDefaultFontSize = new ARKBreedingStats.uiControls.Nud(); + this.nudChartLevelOddMax = new ARKBreedingStats.uiControls.Nud(); + this.nudChartLevelOddMin = new ARKBreedingStats.uiControls.Nud(); + this.nudChartLevelEvenMax = new ARKBreedingStats.uiControls.Nud(); + this.nudChartLevelEvenMin = new ARKBreedingStats.uiControls.Nud(); + this.numericUpDownMaxBreedingSug = new ARKBreedingStats.uiControls.Nud(); + this.NudWaitBeforeAutoLoad = new ARKBreedingStats.uiControls.Nud(); + this.NudKeepBackupFilesCount = new ARKBreedingStats.uiControls.Nud(); + this.NudBackupEveryMinutes = new ARKBreedingStats.uiControls.Nud(); + this.nudInfoGraphicHeight = new ARKBreedingStats.uiControls.Nud(); + this.convenientNameDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.serverNameDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.fileLocationDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.aTImportFileLocationBindingSource = new System.Windows.Forms.BindingSource(this.components); + this.fileSelectorExtractedSaveFolder = new ARKBreedingStats.uiControls.FileSelector(); + this.nudImportLowerBoundTE = new ARKBreedingStats.uiControls.Nud(); + this.convenientNameDataGridViewTextBoxColumn1 = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.ownerSuffixDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.folderPathDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.aTExportFolderLocationsBindingSource = new System.Windows.Forms.BindingSource(this.components); + this.customSCCustom = new ARKBreedingStats.settings.customSoundChooser(); + this.customSCWakeup = new ARKBreedingStats.settings.customSoundChooser(); + this.customSCBirth = new ARKBreedingStats.settings.customSoundChooser(); + this.customSCStarving = new ARKBreedingStats.settings.customSoundChooser(); + this.NudOverlayRelativeFontSize = new ARKBreedingStats.uiControls.Nud(); + this.nudCustomOverlayLocX = new ARKBreedingStats.uiControls.Nud(); + this.nudCustomOverlayLocY = new ARKBreedingStats.uiControls.Nud(); + this.nudOverlayInfoPosY = new ARKBreedingStats.uiControls.Nud(); + this.nudOverlayInfoPosDFR = new ARKBreedingStats.uiControls.Nud(); + this.nudOverlayTimerPosY = new ARKBreedingStats.uiControls.Nud(); + this.nudOverlayTimerPosX = new ARKBreedingStats.uiControls.Nud(); + this.nudOverlayInfoDuration = new ARKBreedingStats.uiControls.Nud(); + this.NudOCRClipboardCropHeight = new ARKBreedingStats.uiControls.Nud(); + this.NudOCRClipboardCropWidth = new ARKBreedingStats.uiControls.Nud(); + this.NudOCRClipboardCropTop = new ARKBreedingStats.uiControls.Nud(); + this.NudOCRClipboardCropLeft = new ARKBreedingStats.uiControls.Nud(); + this.nudWaitBeforeScreenCapture = new ARKBreedingStats.uiControls.Nud(); + this.nudWhiteThreshold = new ARKBreedingStats.uiControls.Nud(); this.groupBoxMultiplier.SuspendLayout(); this.groupBox2.SuspendLayout(); - ((System.ComponentModel.ISupportInitialize)(this.nudTamedDinoCharacterFoodDrain)).BeginInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudTamedDinoCharacterFoodDrainEvent)).BeginInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudBabyImprintAmountEvent)).BeginInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudBabyImprintAmount)).BeginInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudMatingSpeed)).BeginInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudBabyFoodConsumptionSpeedEvent)).BeginInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudMatingIntervalEvent)).BeginInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudBabyCuddleIntervalEvent)).BeginInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudBabyMatureSpeedEvent)).BeginInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudEggHatchSpeedEvent)).BeginInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudBabyFoodConsumptionSpeed)).BeginInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudMatingInterval)).BeginInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudBabyCuddleInterval)).BeginInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudBabyMatureSpeed)).BeginInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudBabyImprintingStatScale)).BeginInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudEggHatchSpeed)).BeginInit(); this.groupBox3.SuspendLayout(); - ((System.ComponentModel.ISupportInitialize)(this.nudMaxServerLevel)).BeginInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudMaxGraphLevel)).BeginInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudMaxWildLevels)).BeginInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudMaxDomLevels)).BeginInit(); this.groupBox4.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.pbChartOddRange)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.pbChartEvenRange)).BeginInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudChartLevelOddMax)).BeginInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudChartLevelOddMin)).BeginInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudChartLevelEvenMax)).BeginInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudChartLevelEvenMin)).BeginInit(); - ((System.ComponentModel.ISupportInitialize)(this.numericUpDownMaxBreedingSug)).BeginInit(); this.groupBox5.SuspendLayout(); - ((System.ComponentModel.ISupportInitialize)(this.nudDinoCharacterFoodDrainEvent)).BeginInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudTamingSpeedEvent)).BeginInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudDinoCharacterFoodDrain)).BeginInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudTamingSpeed)).BeginInit(); this.groupBox6.SuspendLayout(); - ((System.ComponentModel.ISupportInitialize)(this.NudWaitBeforeAutoLoad)).BeginInit(); - ((System.ComponentModel.ISupportInitialize)(this.NudKeepBackupFilesCount)).BeginInit(); - ((System.ComponentModel.ISupportInitialize)(this.NudBackupEveryMinutes)).BeginInit(); this.groupBox7.SuspendLayout(); this.tabControlSettings.SuspendLayout(); this.tabPageMultipliers.SuspendLayout(); + this.panel3.SuspendLayout(); this.groupBox29.SuspendLayout(); this.groupBox18.SuspendLayout(); this.groupBox11.SuspendLayout(); - ((System.ComponentModel.ISupportInitialize)(this.nudWildLevelStep)).BeginInit(); this.tabPageGeneral.SuspendLayout(); this.groupBox31.SuspendLayout(); this.groupBox30.SuspendLayout(); this.GbImgCacheLocalAppData.SuspendLayout(); this.groupBox16.SuspendLayout(); this.GbSpecies.SuspendLayout(); - ((System.ComponentModel.ISupportInitialize)(this.NudSpeciesSelectorCountLastUsed)).BeginInit(); this.groupBox26.SuspendLayout(); this.groupBox25.SuspendLayout(); - ((System.ComponentModel.ISupportInitialize)(this.nudDefaultFontSize)).BeginInit(); this.groupBox20.SuspendLayout(); this.groupBox17.SuspendLayout(); this.groupBox9.SuspendLayout(); this.tabPageInfoGraphic.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.PbInfoGraphicPreview)).BeginInit(); this.groupBox32.SuspendLayout(); - ((System.ComponentModel.ISupportInitialize)(this.nudInfoGraphicHeight)).BeginInit(); this.groupBox28.SuspendLayout(); this.tabPageImportSavegame.SuspendLayout(); this.groupBox12.SuspendLayout(); this.groupBox15.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.dataGridView_FileLocations)).BeginInit(); - ((System.ComponentModel.ISupportInitialize)(this.aTImportFileLocationBindingSource)).BeginInit(); this.groupBox14.SuspendLayout(); this.tabPageImportExported.SuspendLayout(); this.groupBox27.SuspendLayout(); this.groupBox23.SuspendLayout(); - ((System.ComponentModel.ISupportInitialize)(this.nudImportLowerBoundTE)).BeginInit(); this.groupBox22.SuspendLayout(); this.panel2.SuspendLayout(); this.groupBox21.SuspendLayout(); @@ -422,14 +388,55 @@ private void InitializeComponent() ((System.ComponentModel.ISupportInitialize)(this.nudWarnImportMoreThan)).BeginInit(); this.groupBox13.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.dataGridViewExportFolders)).BeginInit(); - ((System.ComponentModel.ISupportInitialize)(this.aTExportFolderLocationsBindingSource)).BeginInit(); this.tabPageTimers.SuspendLayout(); this.groupBox24.SuspendLayout(); this.groupBox8.SuspendLayout(); this.tabPageOverlay.SuspendLayout(); this.groupBox10.SuspendLayout(); - ((System.ComponentModel.ISupportInitialize)(this.NudOverlayRelativeFontSize)).BeginInit(); this.pCustomOverlayLocation.SuspendLayout(); + this.tabPageOCR.SuspendLayout(); + this.groupBox1.SuspendLayout(); + this.panel1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.nudWildLevelStep)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudTamedDinoCharacterFoodDrain)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudTamedDinoCharacterFoodDrainEvent)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudBabyImprintAmountEvent)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudBabyImprintAmount)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudMatingSpeed)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudBabyFoodConsumptionSpeedEvent)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudMatingIntervalEvent)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudBabyCuddleIntervalEvent)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudBabyMatureSpeedEvent)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudEggHatchSpeedEvent)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudBabyFoodConsumptionSpeed)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudMatingInterval)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudBabyCuddleInterval)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudBabyMatureSpeed)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudBabyImprintingStatScale)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudEggHatchSpeed)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudMaxServerLevel)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudMaxGraphLevel)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudMaxWildLevels)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudMaxDomLevels)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudDinoCharacterFoodDrainEvent)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudTamingSpeedEvent)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudDinoCharacterFoodDrain)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudTamingSpeed)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.NudSpeciesSelectorCountLastUsed)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudDefaultFontSize)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudChartLevelOddMax)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudChartLevelOddMin)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudChartLevelEvenMax)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudChartLevelEvenMin)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.numericUpDownMaxBreedingSug)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.NudWaitBeforeAutoLoad)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.NudKeepBackupFilesCount)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.NudBackupEveryMinutes)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudInfoGraphicHeight)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.aTImportFileLocationBindingSource)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudImportLowerBoundTE)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.aTExportFolderLocationsBindingSource)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.NudOverlayRelativeFontSize)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.nudCustomOverlayLocX)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.nudCustomOverlayLocY)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.nudOverlayInfoPosY)).BeginInit(); @@ -437,16 +444,12 @@ private void InitializeComponent() ((System.ComponentModel.ISupportInitialize)(this.nudOverlayTimerPosY)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.nudOverlayTimerPosX)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.nudOverlayInfoDuration)).BeginInit(); - this.tabPageOCR.SuspendLayout(); - this.groupBox1.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.NudOCRClipboardCropHeight)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.NudOCRClipboardCropWidth)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.NudOCRClipboardCropTop)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.NudOCRClipboardCropLeft)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.nudWaitBeforeScreenCapture)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.nudWhiteThreshold)).BeginInit(); - this.panel1.SuspendLayout(); - this.panel3.SuspendLayout(); this.SuspendLayout(); // // groupBoxMultiplier @@ -624,88 +627,16 @@ private void InitializeComponent() this.groupBox2.TabStop = false; this.groupBox2.Text = "Breeding-Multiplier"; // - // nudTamedDinoCharacterFoodDrain + // label64 // - this.nudTamedDinoCharacterFoodDrain.DecimalPlaces = 6; - this.nudTamedDinoCharacterFoodDrain.ForeColor = System.Drawing.SystemColors.WindowText; - this.nudTamedDinoCharacterFoodDrain.Location = new System.Drawing.Point(183, 227); - this.nudTamedDinoCharacterFoodDrain.Maximum = new decimal(new int[] { - 10000, - 0, - 0, - 0}); - this.nudTamedDinoCharacterFoodDrain.Name = "nudTamedDinoCharacterFoodDrain"; - this.nudTamedDinoCharacterFoodDrain.NeutralNumber = new decimal(new int[] { - 0, - 0, - 0, - 0}); - this.nudTamedDinoCharacterFoodDrain.Size = new System.Drawing.Size(72, 20); - this.nudTamedDinoCharacterFoodDrain.TabIndex = 21; - this.nudTamedDinoCharacterFoodDrain.Value = new decimal(new int[] { - 1, - 0, - 0, - 0}); + this.label64.AutoSize = true; + this.label64.Location = new System.Drawing.Point(10, 229); + this.label64.Name = "label64"; + this.label64.Size = new System.Drawing.Size(177, 13); + this.label64.TabIndex = 22; + this.label64.Text = "TamedDinoCharacterFoodDrainMult"; // - // nudTamedDinoCharacterFoodDrainEvent - // - this.nudTamedDinoCharacterFoodDrainEvent.DecimalPlaces = 6; - this.nudTamedDinoCharacterFoodDrainEvent.ForeColor = System.Drawing.SystemColors.WindowText; - this.nudTamedDinoCharacterFoodDrainEvent.Location = new System.Drawing.Point(263, 227); - this.nudTamedDinoCharacterFoodDrainEvent.Maximum = new decimal(new int[] { - 10000, - 0, - 0, - 0}); - this.nudTamedDinoCharacterFoodDrainEvent.Name = "nudTamedDinoCharacterFoodDrainEvent"; - this.nudTamedDinoCharacterFoodDrainEvent.NeutralNumber = new decimal(new int[] { - 0, - 0, - 0, - 0}); - this.nudTamedDinoCharacterFoodDrainEvent.Size = new System.Drawing.Size(72, 20); - this.nudTamedDinoCharacterFoodDrainEvent.TabIndex = 23; - this.nudTamedDinoCharacterFoodDrainEvent.Value = new decimal(new int[] { - 1, - 0, - 0, - 0}); - // - // label64 - // - this.label64.AutoSize = true; - this.label64.Location = new System.Drawing.Point(10, 229); - this.label64.Name = "label64"; - this.label64.Size = new System.Drawing.Size(177, 13); - this.label64.TabIndex = 22; - this.label64.Text = "TamedDinoCharacterFoodDrainMult"; - // - // nudBabyImprintAmountEvent - // - this.nudBabyImprintAmountEvent.DecimalPlaces = 6; - this.nudBabyImprintAmountEvent.ForeColor = System.Drawing.SystemColors.WindowText; - this.nudBabyImprintAmountEvent.Location = new System.Drawing.Point(263, 149); - this.nudBabyImprintAmountEvent.Maximum = new decimal(new int[] { - 10000, - 0, - 0, - 0}); - this.nudBabyImprintAmountEvent.Name = "nudBabyImprintAmountEvent"; - this.nudBabyImprintAmountEvent.NeutralNumber = new decimal(new int[] { - 0, - 0, - 0, - 0}); - this.nudBabyImprintAmountEvent.Size = new System.Drawing.Size(72, 20); - this.nudBabyImprintAmountEvent.TabIndex = 12; - this.nudBabyImprintAmountEvent.Value = new decimal(new int[] { - 1, - 0, - 0, - 0}); - // - // label49 + // label49 // this.label49.AutoSize = true; this.label49.Location = new System.Drawing.Point(10, 151); @@ -714,30 +645,6 @@ private void InitializeComponent() this.label49.TabIndex = 20; this.label49.Text = "BabyImprintAmountMultiplier"; // - // nudBabyImprintAmount - // - this.nudBabyImprintAmount.DecimalPlaces = 6; - this.nudBabyImprintAmount.ForeColor = System.Drawing.SystemColors.WindowText; - this.nudBabyImprintAmount.Location = new System.Drawing.Point(183, 149); - this.nudBabyImprintAmount.Maximum = new decimal(new int[] { - 10000, - 0, - 0, - 0}); - this.nudBabyImprintAmount.Name = "nudBabyImprintAmount"; - this.nudBabyImprintAmount.NeutralNumber = new decimal(new int[] { - 0, - 0, - 0, - 0}); - this.nudBabyImprintAmount.Size = new System.Drawing.Size(72, 20); - this.nudBabyImprintAmount.TabIndex = 5; - this.nudBabyImprintAmount.Value = new decimal(new int[] { - 1, - 0, - 0, - 0}); - // // label44 // this.label44.AutoSize = true; @@ -747,150 +654,6 @@ private void InitializeComponent() this.label44.TabIndex = 18; this.label44.Text = "MatingSpeedMultiplier"; // - // nudMatingSpeed - // - this.nudMatingSpeed.DecimalPlaces = 6; - this.nudMatingSpeed.ForeColor = System.Drawing.SystemColors.WindowText; - this.nudMatingSpeed.Location = new System.Drawing.Point(183, 19); - this.nudMatingSpeed.Maximum = new decimal(new int[] { - 10000, - 0, - 0, - 0}); - this.nudMatingSpeed.Name = "nudMatingSpeed"; - this.nudMatingSpeed.NeutralNumber = new decimal(new int[] { - 0, - 0, - 0, - 0}); - this.nudMatingSpeed.Size = new System.Drawing.Size(72, 20); - this.nudMatingSpeed.TabIndex = 0; - this.nudMatingSpeed.Value = new decimal(new int[] { - 1, - 0, - 0, - 0}); - // - // nudBabyFoodConsumptionSpeedEvent - // - this.nudBabyFoodConsumptionSpeedEvent.DecimalPlaces = 6; - this.nudBabyFoodConsumptionSpeedEvent.ForeColor = System.Drawing.SystemColors.WindowText; - this.nudBabyFoodConsumptionSpeedEvent.Location = new System.Drawing.Point(263, 201); - this.nudBabyFoodConsumptionSpeedEvent.Maximum = new decimal(new int[] { - 10000, - 0, - 0, - 0}); - this.nudBabyFoodConsumptionSpeedEvent.Name = "nudBabyFoodConsumptionSpeedEvent"; - this.nudBabyFoodConsumptionSpeedEvent.NeutralNumber = new decimal(new int[] { - 0, - 0, - 0, - 0}); - this.nudBabyFoodConsumptionSpeedEvent.Size = new System.Drawing.Size(72, 20); - this.nudBabyFoodConsumptionSpeedEvent.TabIndex = 13; - this.nudBabyFoodConsumptionSpeedEvent.Value = new decimal(new int[] { - 1, - 0, - 0, - 0}); - // - // nudMatingIntervalEvent - // - this.nudMatingIntervalEvent.DecimalPlaces = 6; - this.nudMatingIntervalEvent.ForeColor = System.Drawing.SystemColors.WindowText; - this.nudMatingIntervalEvent.Location = new System.Drawing.Point(263, 45); - this.nudMatingIntervalEvent.Maximum = new decimal(new int[] { - 10000, - 0, - 0, - 0}); - this.nudMatingIntervalEvent.Name = "nudMatingIntervalEvent"; - this.nudMatingIntervalEvent.NeutralNumber = new decimal(new int[] { - 0, - 0, - 0, - 0}); - this.nudMatingIntervalEvent.Size = new System.Drawing.Size(72, 20); - this.nudMatingIntervalEvent.TabIndex = 8; - this.nudMatingIntervalEvent.Value = new decimal(new int[] { - 1, - 0, - 0, - 0}); - // - // nudBabyCuddleIntervalEvent - // - this.nudBabyCuddleIntervalEvent.DecimalPlaces = 6; - this.nudBabyCuddleIntervalEvent.ForeColor = System.Drawing.SystemColors.WindowText; - this.nudBabyCuddleIntervalEvent.Location = new System.Drawing.Point(263, 123); - this.nudBabyCuddleIntervalEvent.Maximum = new decimal(new int[] { - 10000, - 0, - 0, - 0}); - this.nudBabyCuddleIntervalEvent.Name = "nudBabyCuddleIntervalEvent"; - this.nudBabyCuddleIntervalEvent.NeutralNumber = new decimal(new int[] { - 0, - 0, - 0, - 0}); - this.nudBabyCuddleIntervalEvent.Size = new System.Drawing.Size(72, 20); - this.nudBabyCuddleIntervalEvent.TabIndex = 11; - this.nudBabyCuddleIntervalEvent.Value = new decimal(new int[] { - 1, - 0, - 0, - 0}); - // - // nudBabyMatureSpeedEvent - // - this.nudBabyMatureSpeedEvent.DecimalPlaces = 6; - this.nudBabyMatureSpeedEvent.ForeColor = System.Drawing.SystemColors.WindowText; - this.nudBabyMatureSpeedEvent.Location = new System.Drawing.Point(263, 97); - this.nudBabyMatureSpeedEvent.Maximum = new decimal(new int[] { - 10000, - 0, - 0, - 0}); - this.nudBabyMatureSpeedEvent.Name = "nudBabyMatureSpeedEvent"; - this.nudBabyMatureSpeedEvent.NeutralNumber = new decimal(new int[] { - 0, - 0, - 0, - 0}); - this.nudBabyMatureSpeedEvent.Size = new System.Drawing.Size(72, 20); - this.nudBabyMatureSpeedEvent.TabIndex = 10; - this.nudBabyMatureSpeedEvent.Value = new decimal(new int[] { - 1, - 0, - 0, - 0}); - // - // nudEggHatchSpeedEvent - // - this.nudEggHatchSpeedEvent.DecimalPlaces = 6; - this.nudEggHatchSpeedEvent.ForeColor = System.Drawing.SystemColors.WindowText; - this.nudEggHatchSpeedEvent.Location = new System.Drawing.Point(263, 71); - this.nudEggHatchSpeedEvent.Maximum = new decimal(new int[] { - 10000, - 0, - 0, - 0}); - this.nudEggHatchSpeedEvent.Name = "nudEggHatchSpeedEvent"; - this.nudEggHatchSpeedEvent.NeutralNumber = new decimal(new int[] { - 0, - 0, - 0, - 0}); - this.nudEggHatchSpeedEvent.Size = new System.Drawing.Size(72, 20); - this.nudEggHatchSpeedEvent.TabIndex = 9; - this.nudEggHatchSpeedEvent.Value = new decimal(new int[] { - 1, - 0, - 0, - 0}); - // // labelBabyFoodConsumptionSpeed // this.labelBabyFoodConsumptionSpeed.AutoSize = true; @@ -900,30 +663,6 @@ private void InitializeComponent() this.labelBabyFoodConsumptionSpeed.TabIndex = 10; this.labelBabyFoodConsumptionSpeed.Text = "BabyFoodConsumptionSpeedMult"; // - // nudBabyFoodConsumptionSpeed - // - this.nudBabyFoodConsumptionSpeed.DecimalPlaces = 6; - this.nudBabyFoodConsumptionSpeed.ForeColor = System.Drawing.SystemColors.WindowText; - this.nudBabyFoodConsumptionSpeed.Location = new System.Drawing.Point(183, 201); - this.nudBabyFoodConsumptionSpeed.Maximum = new decimal(new int[] { - 10000, - 0, - 0, - 0}); - this.nudBabyFoodConsumptionSpeed.Name = "nudBabyFoodConsumptionSpeed"; - this.nudBabyFoodConsumptionSpeed.NeutralNumber = new decimal(new int[] { - 0, - 0, - 0, - 0}); - this.nudBabyFoodConsumptionSpeed.Size = new System.Drawing.Size(72, 20); - this.nudBabyFoodConsumptionSpeed.TabIndex = 7; - this.nudBabyFoodConsumptionSpeed.Value = new decimal(new int[] { - 1, - 0, - 0, - 0}); - // // label3 // this.label3.AutoSize = true; @@ -933,31 +672,7 @@ private void InitializeComponent() this.label3.TabIndex = 8; this.label3.Text = "MatingIntervalMultiplier"; // - // nudMatingInterval - // - this.nudMatingInterval.DecimalPlaces = 6; - this.nudMatingInterval.ForeColor = System.Drawing.SystemColors.WindowText; - this.nudMatingInterval.Location = new System.Drawing.Point(183, 45); - this.nudMatingInterval.Maximum = new decimal(new int[] { - 10000, - 0, - 0, - 0}); - this.nudMatingInterval.Name = "nudMatingInterval"; - this.nudMatingInterval.NeutralNumber = new decimal(new int[] { - 0, - 0, - 0, - 0}); - this.nudMatingInterval.Size = new System.Drawing.Size(72, 20); - this.nudMatingInterval.TabIndex = 1; - this.nudMatingInterval.Value = new decimal(new int[] { - 1, - 0, - 0, - 0}); - // - // label17 + // label17 // this.label17.AutoSize = true; this.label17.Location = new System.Drawing.Point(10, 125); @@ -966,30 +681,6 @@ private void InitializeComponent() this.label17.TabIndex = 6; this.label17.Text = "BabyCuddleIntervalMultiplier"; // - // nudBabyCuddleInterval - // - this.nudBabyCuddleInterval.DecimalPlaces = 6; - this.nudBabyCuddleInterval.ForeColor = System.Drawing.SystemColors.WindowText; - this.nudBabyCuddleInterval.Location = new System.Drawing.Point(183, 123); - this.nudBabyCuddleInterval.Maximum = new decimal(new int[] { - 10000, - 0, - 0, - 0}); - this.nudBabyCuddleInterval.Name = "nudBabyCuddleInterval"; - this.nudBabyCuddleInterval.NeutralNumber = new decimal(new int[] { - 0, - 0, - 0, - 0}); - this.nudBabyCuddleInterval.Size = new System.Drawing.Size(72, 20); - this.nudBabyCuddleInterval.TabIndex = 4; - this.nudBabyCuddleInterval.Value = new decimal(new int[] { - 1, - 0, - 0, - 0}); - // // label13 // this.label13.AutoSize = true; @@ -1008,54 +699,6 @@ private void InitializeComponent() this.label9.TabIndex = 2; this.label9.Text = "BabyMatureSpeedMultiplier"; // - // nudBabyMatureSpeed - // - this.nudBabyMatureSpeed.DecimalPlaces = 6; - this.nudBabyMatureSpeed.ForeColor = System.Drawing.SystemColors.WindowText; - this.nudBabyMatureSpeed.Location = new System.Drawing.Point(183, 97); - this.nudBabyMatureSpeed.Maximum = new decimal(new int[] { - 10000, - 0, - 0, - 0}); - this.nudBabyMatureSpeed.Name = "nudBabyMatureSpeed"; - this.nudBabyMatureSpeed.NeutralNumber = new decimal(new int[] { - 0, - 0, - 0, - 0}); - this.nudBabyMatureSpeed.Size = new System.Drawing.Size(72, 20); - this.nudBabyMatureSpeed.TabIndex = 3; - this.nudBabyMatureSpeed.Value = new decimal(new int[] { - 1, - 0, - 0, - 0}); - // - // nudBabyImprintingStatScale - // - this.nudBabyImprintingStatScale.DecimalPlaces = 6; - this.nudBabyImprintingStatScale.ForeColor = System.Drawing.SystemColors.WindowText; - this.nudBabyImprintingStatScale.Location = new System.Drawing.Point(183, 175); - this.nudBabyImprintingStatScale.Maximum = new decimal(new int[] { - 10000, - 0, - 0, - 0}); - this.nudBabyImprintingStatScale.Name = "nudBabyImprintingStatScale"; - this.nudBabyImprintingStatScale.NeutralNumber = new decimal(new int[] { - 0, - 0, - 0, - 0}); - this.nudBabyImprintingStatScale.Size = new System.Drawing.Size(72, 20); - this.nudBabyImprintingStatScale.TabIndex = 6; - this.nudBabyImprintingStatScale.Value = new decimal(new int[] { - 1, - 0, - 0, - 0}); - // // label8 // this.label8.AutoSize = true; @@ -1065,30 +708,6 @@ private void InitializeComponent() this.label8.TabIndex = 0; this.label8.Text = "EggHatchSpeedMultiplier"; // - // nudEggHatchSpeed - // - this.nudEggHatchSpeed.DecimalPlaces = 6; - this.nudEggHatchSpeed.ForeColor = System.Drawing.SystemColors.WindowText; - this.nudEggHatchSpeed.Location = new System.Drawing.Point(183, 71); - this.nudEggHatchSpeed.Maximum = new decimal(new int[] { - 10000, - 0, - 0, - 0}); - this.nudEggHatchSpeed.Name = "nudEggHatchSpeed"; - this.nudEggHatchSpeed.NeutralNumber = new decimal(new int[] { - 0, - 0, - 0, - 0}); - this.nudEggHatchSpeed.Size = new System.Drawing.Size(72, 20); - this.nudEggHatchSpeed.TabIndex = 2; - this.nudEggHatchSpeed.Value = new decimal(new int[] { - 1, - 0, - 0, - 0}); - // // groupBox3 // this.groupBox3.Controls.Add(this.LbDefaultLevelups); @@ -1115,24 +734,6 @@ private void InitializeComponent() this.LbDefaultLevelups.Size = new System.Drawing.Size(0, 13); this.LbDefaultLevelups.TabIndex = 13; // - // nudMaxServerLevel - // - this.nudMaxServerLevel.ForeColor = System.Drawing.SystemColors.GrayText; - this.nudMaxServerLevel.Location = new System.Drawing.Point(183, 97); - this.nudMaxServerLevel.Maximum = new decimal(new int[] { - 100000, - 0, - 0, - 0}); - this.nudMaxServerLevel.Name = "nudMaxServerLevel"; - this.nudMaxServerLevel.NeutralNumber = new decimal(new int[] { - 0, - 0, - 0, - 0}); - this.nudMaxServerLevel.Size = new System.Drawing.Size(57, 20); - this.nudMaxServerLevel.TabIndex = 3; - // // lbMaxTotalLevel // this.lbMaxTotalLevel.AutoSize = true; @@ -1142,24 +743,6 @@ private void InitializeComponent() this.lbMaxTotalLevel.TabIndex = 12; this.lbMaxTotalLevel.Text = "Max Total Level (0: disabled)"; // - // nudMaxGraphLevel - // - this.nudMaxGraphLevel.ForeColor = System.Drawing.SystemColors.GrayText; - this.nudMaxGraphLevel.Location = new System.Drawing.Point(183, 71); - this.nudMaxGraphLevel.Maximum = new decimal(new int[] { - 100000, - 0, - 0, - 0}); - this.nudMaxGraphLevel.Name = "nudMaxGraphLevel"; - this.nudMaxGraphLevel.NeutralNumber = new decimal(new int[] { - 0, - 0, - 0, - 0}); - this.nudMaxGraphLevel.Size = new System.Drawing.Size(57, 20); - this.nudMaxGraphLevel.TabIndex = 2; - // // label18 // this.label18.AutoSize = true; @@ -1178,24 +761,6 @@ private void InitializeComponent() this.label11.TabIndex = 0; this.label11.Text = "Max Wild Level"; // - // nudMaxWildLevels - // - this.nudMaxWildLevels.ForeColor = System.Drawing.SystemColors.GrayText; - this.nudMaxWildLevels.Location = new System.Drawing.Point(183, 19); - this.nudMaxWildLevels.Maximum = new decimal(new int[] { - 100000, - 0, - 0, - 0}); - this.nudMaxWildLevels.Name = "nudMaxWildLevels"; - this.nudMaxWildLevels.NeutralNumber = new decimal(new int[] { - 0, - 0, - 0, - 0}); - this.nudMaxWildLevels.Size = new System.Drawing.Size(57, 20); - this.nudMaxWildLevels.TabIndex = 0; - // // label10 // this.label10.AutoSize = true; @@ -1205,24 +770,6 @@ private void InitializeComponent() this.label10.TabIndex = 2; this.label10.Text = "Max Tamed Levelups"; // - // nudMaxDomLevels - // - this.nudMaxDomLevels.ForeColor = System.Drawing.SystemColors.GrayText; - this.nudMaxDomLevels.Location = new System.Drawing.Point(183, 45); - this.nudMaxDomLevels.Maximum = new decimal(new int[] { - 100000, - 0, - 0, - 0}); - this.nudMaxDomLevels.Name = "nudMaxDomLevels"; - this.nudMaxDomLevels.NeutralNumber = new decimal(new int[] { - 0, - 0, - 0, - 0}); - this.nudMaxDomLevels.Size = new System.Drawing.Size(57, 20); - this.nudMaxDomLevels.TabIndex = 1; - // // groupBox4 // this.groupBox4.Controls.Add(this.label57); @@ -1282,128 +829,27 @@ private void InitializeComponent() this.pbChartEvenRange.TabIndex = 12; this.pbChartEvenRange.TabStop = false; // - // nudChartLevelOddMax + // CbHighlightLevelEvenOdd // - this.nudChartLevelOddMax.ForeColor = System.Drawing.SystemColors.WindowText; - this.nudChartLevelOddMax.Location = new System.Drawing.Point(268, 137); - this.nudChartLevelOddMax.Maximum = new decimal(new int[] { - 360, - 0, - 0, - 0}); - this.nudChartLevelOddMax.Minimum = new decimal(new int[] { - 360, - 0, - 0, - -2147483648}); - this.nudChartLevelOddMax.Name = "nudChartLevelOddMax"; - this.nudChartLevelOddMax.NeutralNumber = new decimal(new int[] { - 0, - 0, - 0, - 0}); - this.nudChartLevelOddMax.Size = new System.Drawing.Size(41, 20); - this.nudChartLevelOddMax.TabIndex = 11; - this.nudChartLevelOddMax.Value = new decimal(new int[] { - 360, - 0, - 0, - 0}); - this.nudChartLevelOddMax.ValueChanged += new System.EventHandler(this.nudChartLevelOddMax_ValueChanged); + this.CbHighlightLevelEvenOdd.AutoSize = true; + this.CbHighlightLevelEvenOdd.Location = new System.Drawing.Point(6, 114); + this.CbHighlightLevelEvenOdd.Name = "CbHighlightLevelEvenOdd"; + this.CbHighlightLevelEvenOdd.Size = new System.Drawing.Size(156, 17); + this.CbHighlightLevelEvenOdd.TabIndex = 7; + this.CbHighlightLevelEvenOdd.Text = "Highlight even / odd levels"; + this.CbHighlightLevelEvenOdd.UseVisualStyleBackColor = true; // - // nudChartLevelOddMin + // CbHighlightLevel255 // - this.nudChartLevelOddMin.ForeColor = System.Drawing.SystemColors.GrayText; - this.nudChartLevelOddMin.Location = new System.Drawing.Point(209, 137); - this.nudChartLevelOddMin.Maximum = new decimal(new int[] { - 360, - 0, - 0, - 0}); - this.nudChartLevelOddMin.Minimum = new decimal(new int[] { - 360, - 0, - 0, - -2147483648}); - this.nudChartLevelOddMin.Name = "nudChartLevelOddMin"; - this.nudChartLevelOddMin.NeutralNumber = new decimal(new int[] { - 0, - 0, - 0, - 0}); - this.nudChartLevelOddMin.Size = new System.Drawing.Size(41, 20); - this.nudChartLevelOddMin.TabIndex = 10; - this.nudChartLevelOddMin.ValueChanged += new System.EventHandler(this.nudChartLevelOddMin_ValueChanged); + this.CbHighlightLevel255.AutoSize = true; + this.CbHighlightLevel255.Location = new System.Drawing.Point(6, 91); + this.CbHighlightLevel255.Name = "CbHighlightLevel255"; + this.CbHighlightLevel255.Size = new System.Drawing.Size(159, 17); + this.CbHighlightLevel255.TabIndex = 6; + this.CbHighlightLevel255.Text = "Highlight Level 254 and 255"; + this.CbHighlightLevel255.UseVisualStyleBackColor = true; // - // nudChartLevelEvenMax - // - this.nudChartLevelEvenMax.ForeColor = System.Drawing.SystemColors.GrayText; - this.nudChartLevelEvenMax.Location = new System.Drawing.Point(102, 137); - this.nudChartLevelEvenMax.Maximum = new decimal(new int[] { - 360, - 0, - 0, - 0}); - this.nudChartLevelEvenMax.Minimum = new decimal(new int[] { - 360, - 0, - 0, - -2147483648}); - this.nudChartLevelEvenMax.Name = "nudChartLevelEvenMax"; - this.nudChartLevelEvenMax.NeutralNumber = new decimal(new int[] { - 0, - 0, - 0, - 0}); - this.nudChartLevelEvenMax.Size = new System.Drawing.Size(41, 20); - this.nudChartLevelEvenMax.TabIndex = 9; - this.nudChartLevelEvenMax.ValueChanged += new System.EventHandler(this.nudChartLevelEvenMax_ValueChanged); - // - // nudChartLevelEvenMin - // - this.nudChartLevelEvenMin.ForeColor = System.Drawing.SystemColors.GrayText; - this.nudChartLevelEvenMin.Location = new System.Drawing.Point(43, 137); - this.nudChartLevelEvenMin.Maximum = new decimal(new int[] { - 360, - 0, - 0, - 0}); - this.nudChartLevelEvenMin.Minimum = new decimal(new int[] { - 360, - 0, - 0, - -2147483648}); - this.nudChartLevelEvenMin.Name = "nudChartLevelEvenMin"; - this.nudChartLevelEvenMin.NeutralNumber = new decimal(new int[] { - 0, - 0, - 0, - 0}); - this.nudChartLevelEvenMin.Size = new System.Drawing.Size(41, 20); - this.nudChartLevelEvenMin.TabIndex = 8; - this.nudChartLevelEvenMin.ValueChanged += new System.EventHandler(this.nudChartLevelEvenMin_ValueChanged); - // - // CbHighlightLevelEvenOdd - // - this.CbHighlightLevelEvenOdd.AutoSize = true; - this.CbHighlightLevelEvenOdd.Location = new System.Drawing.Point(6, 114); - this.CbHighlightLevelEvenOdd.Name = "CbHighlightLevelEvenOdd"; - this.CbHighlightLevelEvenOdd.Size = new System.Drawing.Size(156, 17); - this.CbHighlightLevelEvenOdd.TabIndex = 7; - this.CbHighlightLevelEvenOdd.Text = "Highlight even / odd levels"; - this.CbHighlightLevelEvenOdd.UseVisualStyleBackColor = true; - // - // CbHighlightLevel255 - // - this.CbHighlightLevel255.AutoSize = true; - this.CbHighlightLevel255.Location = new System.Drawing.Point(6, 91); - this.CbHighlightLevel255.Name = "CbHighlightLevel255"; - this.CbHighlightLevel255.Size = new System.Drawing.Size(159, 17); - this.CbHighlightLevel255.TabIndex = 6; - this.CbHighlightLevel255.Text = "Highlight Level 254 and 255"; - this.CbHighlightLevel255.UseVisualStyleBackColor = true; - // - // cbIgnoreSexInBreedingPlan + // cbIgnoreSexInBreedingPlan // this.cbIgnoreSexInBreedingPlan.AutoSize = true; this.cbIgnoreSexInBreedingPlan.Location = new System.Drawing.Point(6, 68); @@ -1453,24 +899,6 @@ private void InitializeComponent() this.label12.TabIndex = 0; this.label12.Text = "Max Breeding Pair Suggestions"; // - // numericUpDownMaxBreedingSug - // - this.numericUpDownMaxBreedingSug.ForeColor = System.Drawing.SystemColors.GrayText; - this.numericUpDownMaxBreedingSug.Location = new System.Drawing.Point(252, 19); - this.numericUpDownMaxBreedingSug.Maximum = new decimal(new int[] { - 200, - 0, - 0, - 0}); - this.numericUpDownMaxBreedingSug.Name = "numericUpDownMaxBreedingSug"; - this.numericUpDownMaxBreedingSug.NeutralNumber = new decimal(new int[] { - 0, - 0, - 0, - 0}); - this.numericUpDownMaxBreedingSug.Size = new System.Drawing.Size(57, 20); - this.numericUpDownMaxBreedingSug.TabIndex = 1; - // // groupBox5 // this.groupBox5.Controls.Add(this.nudDinoCharacterFoodDrainEvent); @@ -1486,54 +914,6 @@ private void InitializeComponent() this.groupBox5.TabStop = false; this.groupBox5.Text = "Taming-Multiplier"; // - // nudDinoCharacterFoodDrainEvent - // - this.nudDinoCharacterFoodDrainEvent.DecimalPlaces = 6; - this.nudDinoCharacterFoodDrainEvent.ForeColor = System.Drawing.SystemColors.WindowText; - this.nudDinoCharacterFoodDrainEvent.Location = new System.Drawing.Point(263, 45); - this.nudDinoCharacterFoodDrainEvent.Maximum = new decimal(new int[] { - 10000, - 0, - 0, - 0}); - this.nudDinoCharacterFoodDrainEvent.Name = "nudDinoCharacterFoodDrainEvent"; - this.nudDinoCharacterFoodDrainEvent.NeutralNumber = new decimal(new int[] { - 0, - 0, - 0, - 0}); - this.nudDinoCharacterFoodDrainEvent.Size = new System.Drawing.Size(72, 20); - this.nudDinoCharacterFoodDrainEvent.TabIndex = 3; - this.nudDinoCharacterFoodDrainEvent.Value = new decimal(new int[] { - 1, - 0, - 0, - 0}); - // - // nudTamingSpeedEvent - // - this.nudTamingSpeedEvent.DecimalPlaces = 6; - this.nudTamingSpeedEvent.ForeColor = System.Drawing.SystemColors.WindowText; - this.nudTamingSpeedEvent.Location = new System.Drawing.Point(263, 19); - this.nudTamingSpeedEvent.Maximum = new decimal(new int[] { - 10000, - 0, - 0, - 0}); - this.nudTamingSpeedEvent.Name = "nudTamingSpeedEvent"; - this.nudTamingSpeedEvent.NeutralNumber = new decimal(new int[] { - 0, - 0, - 0, - 0}); - this.nudTamingSpeedEvent.Size = new System.Drawing.Size(72, 20); - this.nudTamingSpeedEvent.TabIndex = 2; - this.nudTamingSpeedEvent.Value = new decimal(new int[] { - 1, - 0, - 0, - 0}); - // // label7 // this.label7.AutoSize = true; @@ -1552,57 +932,9 @@ private void InitializeComponent() this.label14.TabIndex = 0; this.label14.Text = "TamingSpeedMultiplier"; // - // nudDinoCharacterFoodDrain - // - this.nudDinoCharacterFoodDrain.DecimalPlaces = 6; - this.nudDinoCharacterFoodDrain.ForeColor = System.Drawing.SystemColors.WindowText; - this.nudDinoCharacterFoodDrain.Location = new System.Drawing.Point(183, 45); - this.nudDinoCharacterFoodDrain.Maximum = new decimal(new int[] { - 10000, - 0, - 0, - 0}); - this.nudDinoCharacterFoodDrain.Name = "nudDinoCharacterFoodDrain"; - this.nudDinoCharacterFoodDrain.NeutralNumber = new decimal(new int[] { - 0, - 0, - 0, - 0}); - this.nudDinoCharacterFoodDrain.Size = new System.Drawing.Size(72, 20); - this.nudDinoCharacterFoodDrain.TabIndex = 1; - this.nudDinoCharacterFoodDrain.Value = new decimal(new int[] { - 1, - 0, - 0, - 0}); - // - // nudTamingSpeed - // - this.nudTamingSpeed.DecimalPlaces = 6; - this.nudTamingSpeed.ForeColor = System.Drawing.SystemColors.WindowText; - this.nudTamingSpeed.Location = new System.Drawing.Point(183, 19); - this.nudTamingSpeed.Maximum = new decimal(new int[] { - 10000, - 0, - 0, - 0}); - this.nudTamingSpeed.Name = "nudTamingSpeed"; - this.nudTamingSpeed.NeutralNumber = new decimal(new int[] { - 0, - 0, - 0, - 0}); - this.nudTamingSpeed.Size = new System.Drawing.Size(72, 20); - this.nudTamingSpeed.TabIndex = 0; - this.nudTamingSpeed.Value = new decimal(new int[] { - 1, - 0, - 0, - 0}); - // // label15 // - this.label15.Location = new System.Drawing.Point(451, 536); + this.label15.Location = new System.Drawing.Point(451, 532); this.label15.Name = "label15"; this.label15.Size = new System.Drawing.Size(289, 77); this.label15.TabIndex = 9; @@ -1640,24 +972,6 @@ private void InitializeComponent() this.label55.TabIndex = 13; this.label55.Text = "wait before loading [ms]"; // - // NudWaitBeforeAutoLoad - // - this.NudWaitBeforeAutoLoad.ForeColor = System.Drawing.SystemColors.GrayText; - this.NudWaitBeforeAutoLoad.Location = new System.Drawing.Point(255, 41); - this.NudWaitBeforeAutoLoad.Maximum = new decimal(new int[] { - 10000, - 0, - 0, - 0}); - this.NudWaitBeforeAutoLoad.Name = "NudWaitBeforeAutoLoad"; - this.NudWaitBeforeAutoLoad.NeutralNumber = new decimal(new int[] { - 0, - 0, - 0, - 0}); - this.NudWaitBeforeAutoLoad.Size = new System.Drawing.Size(56, 20); - this.NudWaitBeforeAutoLoad.TabIndex = 12; - // // label54 // this.label54.AutoSize = true; @@ -1667,19 +981,6 @@ private void InitializeComponent() this.label54.TabIndex = 5; this.label54.Text = "backup files (0 to disable backups)"; // - // NudKeepBackupFilesCount - // - this.NudKeepBackupFilesCount.ForeColor = System.Drawing.SystemColors.GrayText; - this.NudKeepBackupFilesCount.Location = new System.Drawing.Point(44, 118); - this.NudKeepBackupFilesCount.Name = "NudKeepBackupFilesCount"; - this.NudKeepBackupFilesCount.NeutralNumber = new decimal(new int[] { - 0, - 0, - 0, - 0}); - this.NudKeepBackupFilesCount.Size = new System.Drawing.Size(59, 20); - this.NudKeepBackupFilesCount.TabIndex = 4; - // // label53 // this.label53.AutoSize = true; @@ -1728,19 +1029,6 @@ private void InitializeComponent() this.label2.Text = "Enable both checkboxes if you want to edit the library file with multiple persons" + ". Place the .asb collection-file in a shared-folder that the others have access " + "to."; - // - // NudBackupEveryMinutes - // - this.NudBackupEveryMinutes.ForeColor = System.Drawing.SystemColors.GrayText; - this.NudBackupEveryMinutes.Location = new System.Drawing.Point(132, 144); - this.NudBackupEveryMinutes.Name = "NudBackupEveryMinutes"; - this.NudBackupEveryMinutes.NeutralNumber = new decimal(new int[] { - 0, - 0, - 0, - 0}); - this.NudBackupEveryMinutes.Size = new System.Drawing.Size(47, 20); - this.NudBackupEveryMinutes.TabIndex = 7; // // groupBox7 // @@ -1783,6 +1071,7 @@ private void InitializeComponent() // this.tabPageMultipliers.AllowDrop = true; this.tabPageMultipliers.AutoScroll = true; + this.tabPageMultipliers.Controls.Add(this.BtAutoImportLocalSettings); this.tabPageMultipliers.Controls.Add(this.panel3); this.tabPageMultipliers.Controls.Add(this.BtImportSettingsSelectFile); this.tabPageMultipliers.Controls.Add(this.CbAtlasSettings); @@ -1811,13 +1100,45 @@ private void InitializeComponent() this.tabPageMultipliers.DragDrop += new System.Windows.Forms.DragEventHandler(this.tabPage2_DragDrop); this.tabPageMultipliers.DragEnter += new System.Windows.Forms.DragEventHandler(this.tabPage2_DragEnter); // + // panel3 + // + this.panel3.Controls.Add(this.RbGameAsa); + this.panel3.Controls.Add(this.RbGameAse); + this.panel3.Location = new System.Drawing.Point(154, 19); + this.panel3.Name = "panel3"; + this.panel3.Size = new System.Drawing.Size(117, 26); + this.panel3.TabIndex = 16; + // + // RbGameAsa + // + this.RbGameAsa.AutoSize = true; + this.RbGameAsa.Location = new System.Drawing.Point(55, 3); + this.RbGameAsa.Name = "RbGameAsa"; + this.RbGameAsa.Size = new System.Drawing.Size(46, 17); + this.RbGameAsa.TabIndex = 1; + this.RbGameAsa.TabStop = true; + this.RbGameAsa.Text = "ASA"; + this.RbGameAsa.UseVisualStyleBackColor = true; + // + // RbGameAse + // + this.RbGameAse.AutoSize = true; + this.RbGameAse.Checked = true; + this.RbGameAse.Location = new System.Drawing.Point(3, 3); + this.RbGameAse.Name = "RbGameAse"; + this.RbGameAse.Size = new System.Drawing.Size(46, 17); + this.RbGameAse.TabIndex = 0; + this.RbGameAse.TabStop = true; + this.RbGameAse.Text = "ASE"; + this.RbGameAse.UseVisualStyleBackColor = true; + // // BtImportSettingsSelectFile // - this.BtImportSettingsSelectFile.Location = new System.Drawing.Point(618, 599); + this.BtImportSettingsSelectFile.Location = new System.Drawing.Point(565, 599); this.BtImportSettingsSelectFile.Name = "BtImportSettingsSelectFile"; - this.BtImportSettingsSelectFile.Size = new System.Drawing.Size(114, 23); + this.BtImportSettingsSelectFile.Size = new System.Drawing.Size(167, 23); this.BtImportSettingsSelectFile.TabIndex = 15; - this.BtImportSettingsSelectFile.Text = "Settings from file"; + this.BtImportSettingsSelectFile.Text = "Manually load settings from file"; this.BtImportSettingsSelectFile.UseVisualStyleBackColor = true; this.BtImportSettingsSelectFile.Click += new System.EventHandler(this.BtImportSettingsSelectFile_Click); // @@ -1843,23 +1164,35 @@ private void InitializeComponent() // // groupBox29 // + this.groupBox29.Controls.Add(this.CbAllowSpeedLeveling); this.groupBox29.Controls.Add(this.CbAllowFlyerSpeedLeveling); this.groupBox29.Location = new System.Drawing.Point(6, 488); this.groupBox29.Name = "groupBox29"; this.groupBox29.Size = new System.Drawing.Size(382, 50); this.groupBox29.TabIndex = 2; this.groupBox29.TabStop = false; - this.groupBox29.Text = "AllowFlyerSpeedLeveling"; + this.groupBox29.Text = "Leveling of the speed stat"; + // + // CbAllowSpeedLeveling + // + this.CbAllowSpeedLeveling.AutoSize = true; + this.CbAllowSpeedLeveling.Location = new System.Drawing.Point(6, 19); + this.CbAllowSpeedLeveling.Name = "CbAllowSpeedLeveling"; + this.CbAllowSpeedLeveling.Size = new System.Drawing.Size(122, 17); + this.CbAllowSpeedLeveling.TabIndex = 1; + this.CbAllowSpeedLeveling.Text = "Allow speed leveling"; + this.CbAllowSpeedLeveling.UseVisualStyleBackColor = true; // // CbAllowFlyerSpeedLeveling // this.CbAllowFlyerSpeedLeveling.AutoSize = true; - this.CbAllowFlyerSpeedLeveling.Location = new System.Drawing.Point(6, 19); + this.CbAllowFlyerSpeedLeveling.Location = new System.Drawing.Point(195, 19); this.CbAllowFlyerSpeedLeveling.Name = "CbAllowFlyerSpeedLeveling"; this.CbAllowFlyerSpeedLeveling.Size = new System.Drawing.Size(144, 17); this.CbAllowFlyerSpeedLeveling.TabIndex = 0; - this.CbAllowFlyerSpeedLeveling.Text = "AllowFlyerSpeedLeveling"; + this.CbAllowFlyerSpeedLeveling.Text = "Allow flyer speed leveling"; this.CbAllowFlyerSpeedLeveling.UseVisualStyleBackColor = true; + this.CbAllowFlyerSpeedLeveling.CheckedChanged += new System.EventHandler(this.CbAllowFlyerSpeedLeveling_CheckedChanged); // // label34 // @@ -1914,7 +1247,7 @@ private void InitializeComponent() // this.label27.AutoSize = true; this.label27.Font = new System.Drawing.Font("Microsoft Sans Serif", 16F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.label27.Location = new System.Drawing.Point(408, 536); + this.label27.Location = new System.Drawing.Point(408, 533); this.label27.Name = "label27"; this.label27.Size = new System.Drawing.Size(37, 26); this.label27.TabIndex = 12; @@ -1953,34 +1286,6 @@ private void InitializeComponent() this.cbAllowMoreThanHundredImprinting.Text = "Allow more than 100% imprinting"; this.cbAllowMoreThanHundredImprinting.UseVisualStyleBackColor = true; // - // nudWildLevelStep - // - this.nudWildLevelStep.ForeColor = System.Drawing.SystemColors.WindowText; - this.nudWildLevelStep.Location = new System.Drawing.Point(319, 17); - this.nudWildLevelStep.Maximum = new decimal(new int[] { - 100000, - 0, - 0, - 0}); - this.nudWildLevelStep.Minimum = new decimal(new int[] { - 1, - 0, - 0, - 0}); - this.nudWildLevelStep.Name = "nudWildLevelStep"; - this.nudWildLevelStep.NeutralNumber = new decimal(new int[] { - 0, - 0, - 0, - 0}); - this.nudWildLevelStep.Size = new System.Drawing.Size(57, 20); - this.nudWildLevelStep.TabIndex = 1; - this.nudWildLevelStep.Value = new decimal(new int[] { - 1, - 0, - 0, - 0}); - // // cbConsiderWildLevelSteps // this.cbConsiderWildLevelSteps.AutoSize = true; @@ -2188,19 +1493,6 @@ private void InitializeComponent() this.LbSpeciesSelectorCountLastUsed.TabIndex = 0; this.LbSpeciesSelectorCountLastUsed.Text = "Number of displayed last used species"; // - // NudSpeciesSelectorCountLastUsed - // - this.NudSpeciesSelectorCountLastUsed.ForeColor = System.Drawing.SystemColors.GrayText; - this.NudSpeciesSelectorCountLastUsed.Location = new System.Drawing.Point(252, 19); - this.NudSpeciesSelectorCountLastUsed.Name = "NudSpeciesSelectorCountLastUsed"; - this.NudSpeciesSelectorCountLastUsed.NeutralNumber = new decimal(new int[] { - 0, - 0, - 0, - 0}); - this.NudSpeciesSelectorCountLastUsed.Size = new System.Drawing.Size(57, 20); - this.NudSpeciesSelectorCountLastUsed.TabIndex = 1; - // // groupBox26 // this.groupBox26.Controls.Add(this.cbAdminConsoleCommandWithCheat); @@ -2264,20 +1556,6 @@ private void InitializeComponent() this.CbbColorMode.Size = new System.Drawing.Size(222, 21); this.CbbColorMode.TabIndex = 5; // - // nudDefaultFontSize - // - this.nudDefaultFontSize.DecimalPlaces = 2; - this.nudDefaultFontSize.ForeColor = System.Drawing.SystemColors.GrayText; - this.nudDefaultFontSize.Location = new System.Drawing.Point(335, 18); - this.nudDefaultFontSize.Name = "nudDefaultFontSize"; - this.nudDefaultFontSize.NeutralNumber = new decimal(new int[] { - 0, - 0, - 0, - 0}); - this.nudDefaultFontSize.Size = new System.Drawing.Size(72, 20); - this.nudDefaultFontSize.TabIndex = 3; - // // label33 // this.label33.AutoSize = true; @@ -2531,35 +1809,6 @@ private void InitializeComponent() this.CbbInfoGraphicFontName.TabIndex = 16; this.CbbInfoGraphicFontName.SelectedIndexChanged += new System.EventHandler(this.CbbInfoGraphicFontName_SelectedIndexChanged); // - // nudInfoGraphicHeight - // - this.nudInfoGraphicHeight.ForeColor = System.Drawing.SystemColors.WindowText; - this.nudInfoGraphicHeight.Location = new System.Drawing.Point(126, 18); - this.nudInfoGraphicHeight.Maximum = new decimal(new int[] { - 99999, - 0, - 0, - 0}); - this.nudInfoGraphicHeight.Minimum = new decimal(new int[] { - 1, - 0, - 0, - 0}); - this.nudInfoGraphicHeight.Name = "nudInfoGraphicHeight"; - this.nudInfoGraphicHeight.NeutralNumber = new decimal(new int[] { - 0, - 0, - 0, - 0}); - this.nudInfoGraphicHeight.Size = new System.Drawing.Size(57, 20); - this.nudInfoGraphicHeight.TabIndex = 2; - this.nudInfoGraphicHeight.Value = new decimal(new int[] { - 100, - 0, - 0, - 0}); - this.nudInfoGraphicHeight.ValueChanged += new System.EventHandler(this.nudInfoGraphicHeight_ValueChanged); - // // BtInfoGraphicForeColor // this.BtInfoGraphicForeColor.Location = new System.Drawing.Point(9, 44); @@ -2837,28 +2086,6 @@ private void InitializeComponent() this.dataGridView_FileLocations.TabIndex = 2; this.dataGridView_FileLocations.CellClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dataGridView_FileLocations_CellClick); // - // convenientNameDataGridViewTextBoxColumn - // - this.convenientNameDataGridViewTextBoxColumn.DataPropertyName = "ConvenientName"; - this.convenientNameDataGridViewTextBoxColumn.HeaderText = "Name"; - this.convenientNameDataGridViewTextBoxColumn.Name = "convenientNameDataGridViewTextBoxColumn"; - this.convenientNameDataGridViewTextBoxColumn.ReadOnly = true; - // - // serverNameDataGridViewTextBoxColumn - // - this.serverNameDataGridViewTextBoxColumn.DataPropertyName = "ServerName"; - this.serverNameDataGridViewTextBoxColumn.HeaderText = "Server name"; - this.serverNameDataGridViewTextBoxColumn.Name = "serverNameDataGridViewTextBoxColumn"; - this.serverNameDataGridViewTextBoxColumn.ReadOnly = true; - // - // fileLocationDataGridViewTextBoxColumn - // - this.fileLocationDataGridViewTextBoxColumn.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill; - this.fileLocationDataGridViewTextBoxColumn.DataPropertyName = "FileLocation"; - this.fileLocationDataGridViewTextBoxColumn.HeaderText = "File location"; - this.fileLocationDataGridViewTextBoxColumn.Name = "fileLocationDataGridViewTextBoxColumn"; - this.fileLocationDataGridViewTextBoxColumn.ReadOnly = true; - // // dgvFileLocation_Change // this.dgvFileLocation_Change.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None; @@ -2893,11 +2120,6 @@ private void InitializeComponent() this.dgvFileLocation_Delete.UseColumnTextForButtonValue = true; this.dgvFileLocation_Delete.Width = 50; // - // aTImportFileLocationBindingSource - // - this.aTImportFileLocationBindingSource.AllowNew = false; - this.aTImportFileLocationBindingSource.DataSource = typeof(ARKBreedingStats.settings.ATImportFileLocation); - // // btAddSavegameFileLocation // this.btAddSavegameFileLocation.Dock = System.Windows.Forms.DockStyle.Top; @@ -2931,15 +2153,6 @@ private void InitializeComponent() this.groupBox14.TabStop = false; this.groupBox14.Text = "Target folder for save-game working copy (user\'s temp dir if empty). It\'s recomme" + "nded to leave this setting empty."; - // - // fileSelectorExtractedSaveFolder - // - this.fileSelectorExtractedSaveFolder.Dock = System.Windows.Forms.DockStyle.Fill; - this.fileSelectorExtractedSaveFolder.Link = "filename"; - this.fileSelectorExtractedSaveFolder.Location = new System.Drawing.Point(3, 16); - this.fileSelectorExtractedSaveFolder.Name = "fileSelectorExtractedSaveFolder"; - this.fileSelectorExtractedSaveFolder.Size = new System.Drawing.Size(724, 28); - this.fileSelectorExtractedSaveFolder.TabIndex = 0; // // label24 // @@ -3051,20 +2264,6 @@ private void InitializeComponent() this.label30.TabIndex = 11; this.label30.Text = "%"; // - // nudImportLowerBoundTE - // - this.nudImportLowerBoundTE.DecimalPlaces = 2; - this.nudImportLowerBoundTE.ForeColor = System.Drawing.SystemColors.GrayText; - this.nudImportLowerBoundTE.Location = new System.Drawing.Point(227, 19); - this.nudImportLowerBoundTE.Name = "nudImportLowerBoundTE"; - this.nudImportLowerBoundTE.NeutralNumber = new decimal(new int[] { - 0, - 0, - 0, - 0}); - this.nudImportLowerBoundTE.Size = new System.Drawing.Size(64, 20); - this.nudImportLowerBoundTE.TabIndex = 1; - // // groupBox22 // this.groupBox22.Controls.Add(this.CbBringToFrontOnImportExportIssue); @@ -3390,6 +2589,1414 @@ private void InitializeComponent() this.dataGridViewExportFolders.TabIndex = 1; this.dataGridViewExportFolders.CellClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dataGridViewExportFolders_CellClick); // + // dgvExportFolderChange + // + this.dgvExportFolderChange.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None; + this.dgvExportFolderChange.HeaderText = "Change"; + this.dgvExportFolderChange.MinimumWidth = 50; + this.dgvExportFolderChange.Name = "dgvExportFolderChange"; + this.dgvExportFolderChange.ReadOnly = true; + this.dgvExportFolderChange.Text = "Change"; + this.dgvExportFolderChange.UseColumnTextForButtonValue = true; + this.dgvExportFolderChange.Width = 50; + // + // dgvExportFolderDelete + // + this.dgvExportFolderDelete.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None; + this.dgvExportFolderDelete.HeaderText = "Delete"; + this.dgvExportFolderDelete.MinimumWidth = 50; + this.dgvExportFolderDelete.Name = "dgvExportFolderDelete"; + this.dgvExportFolderDelete.ReadOnly = true; + this.dgvExportFolderDelete.Text = "Delete"; + this.dgvExportFolderDelete.UseColumnTextForButtonValue = true; + this.dgvExportFolderDelete.Width = 50; + // + // dgvExportMakeDefault + // + this.dgvExportMakeDefault.HeaderText = "Default"; + this.dgvExportMakeDefault.Name = "dgvExportMakeDefault"; + this.dgvExportMakeDefault.ReadOnly = true; + this.dgvExportMakeDefault.Text = "Make default"; + this.dgvExportMakeDefault.UseColumnTextForButtonValue = true; + // + // btAddExportFolder + // + this.btAddExportFolder.Dock = System.Windows.Forms.DockStyle.Top; + this.btAddExportFolder.Location = new System.Drawing.Point(3, 16); + this.btAddExportFolder.Name = "btAddExportFolder"; + this.btAddExportFolder.Size = new System.Drawing.Size(730, 23); + this.btAddExportFolder.TabIndex = 0; + this.btAddExportFolder.Text = "Add Export Folder…"; + this.btAddExportFolder.UseVisualStyleBackColor = true; + this.btAddExportFolder.Click += new System.EventHandler(this.btAddExportFolder_Click); + // + // label25 + // + this.label25.AutoSize = true; + this.label25.Location = new System.Drawing.Point(3, 3); + this.label25.Name = "label25"; + this.label25.Size = new System.Drawing.Size(669, 91); + this.label25.TabIndex = 0; + this.label25.Text = resources.GetString("label25.Text"); + // + // tabPageTimers + // + this.tabPageTimers.Controls.Add(this.groupBox24); + this.tabPageTimers.Controls.Add(this.groupBox8); + this.tabPageTimers.Location = new System.Drawing.Point(4, 22); + this.tabPageTimers.Name = "tabPageTimers"; + this.tabPageTimers.Padding = new System.Windows.Forms.Padding(3); + this.tabPageTimers.Size = new System.Drawing.Size(750, 699); + this.tabPageTimers.TabIndex = 6; + this.tabPageTimers.Text = "Timers"; + this.tabPageTimers.UseVisualStyleBackColor = true; + // + // groupBox24 + // + this.groupBox24.Controls.Add(this.cbKeepExpiredTimersInOverlay); + this.groupBox24.Controls.Add(this.cbDeleteExpiredTimersOnSaving); + this.groupBox24.Controls.Add(this.cbTimersInOverlayAutomatically); + this.groupBox24.Location = new System.Drawing.Point(8, 233); + this.groupBox24.Name = "groupBox24"; + this.groupBox24.Size = new System.Drawing.Size(413, 90); + this.groupBox24.TabIndex = 1; + this.groupBox24.TabStop = false; + this.groupBox24.Text = "Timers"; + // + // cbKeepExpiredTimersInOverlay + // + this.cbKeepExpiredTimersInOverlay.AutoSize = true; + this.cbKeepExpiredTimersInOverlay.Location = new System.Drawing.Point(6, 42); + this.cbKeepExpiredTimersInOverlay.Name = "cbKeepExpiredTimersInOverlay"; + this.cbKeepExpiredTimersInOverlay.Size = new System.Drawing.Size(166, 17); + this.cbKeepExpiredTimersInOverlay.TabIndex = 1; + this.cbKeepExpiredTimersInOverlay.Text = "Keep expired timers in overlay"; + this.cbKeepExpiredTimersInOverlay.UseVisualStyleBackColor = true; + // + // cbDeleteExpiredTimersOnSaving + // + this.cbDeleteExpiredTimersOnSaving.AutoSize = true; + this.cbDeleteExpiredTimersOnSaving.Location = new System.Drawing.Point(6, 65); + this.cbDeleteExpiredTimersOnSaving.Name = "cbDeleteExpiredTimersOnSaving"; + this.cbDeleteExpiredTimersOnSaving.Size = new System.Drawing.Size(217, 17); + this.cbDeleteExpiredTimersOnSaving.TabIndex = 2; + this.cbDeleteExpiredTimersOnSaving.Text = "Delete expired timers when saving library"; + this.cbDeleteExpiredTimersOnSaving.UseVisualStyleBackColor = true; + // + // cbTimersInOverlayAutomatically + // + this.cbTimersInOverlayAutomatically.AutoSize = true; + this.cbTimersInOverlayAutomatically.Location = new System.Drawing.Point(6, 19); + this.cbTimersInOverlayAutomatically.Name = "cbTimersInOverlayAutomatically"; + this.cbTimersInOverlayAutomatically.Size = new System.Drawing.Size(202, 17); + this.cbTimersInOverlayAutomatically.TabIndex = 0; + this.cbTimersInOverlayAutomatically.Text = "Display timers in overlay automatically"; + this.cbTimersInOverlayAutomatically.UseVisualStyleBackColor = true; + // + // groupBox8 + // + this.groupBox8.Controls.Add(this.label22); + this.groupBox8.Controls.Add(this.tbPlayAlarmsSeconds); + this.groupBox8.Controls.Add(this.customSCCustom); + this.groupBox8.Controls.Add(this.customSCWakeup); + this.groupBox8.Controls.Add(this.customSCBirth); + this.groupBox8.Controls.Add(this.customSCStarving); + this.groupBox8.Controls.Add(this.label20); + this.groupBox8.Location = new System.Drawing.Point(8, 6); + this.groupBox8.Name = "groupBox8"; + this.groupBox8.Size = new System.Drawing.Size(413, 221); + this.groupBox8.TabIndex = 0; + this.groupBox8.TabStop = false; + this.groupBox8.Text = "Timer Sounds"; + // + // label22 + // + this.label22.Location = new System.Drawing.Point(6, 171); + this.label22.Name = "label22"; + this.label22.Size = new System.Drawing.Size(255, 66); + this.label22.TabIndex = 5; + this.label22.Text = "List of seconds the alarms play before they reach 0.\r\nE.g. \"60,0\" to play the ala" + + "rm at 60 s and at 0 s. Use commas to separate the values."; + // + // tbPlayAlarmsSeconds + // + this.tbPlayAlarmsSeconds.Location = new System.Drawing.Point(267, 168); + this.tbPlayAlarmsSeconds.Name = "tbPlayAlarmsSeconds"; + this.tbPlayAlarmsSeconds.Size = new System.Drawing.Size(140, 20); + this.tbPlayAlarmsSeconds.TabIndex = 6; + // + // label20 + // + this.label20.Location = new System.Drawing.Point(6, 16); + this.label20.Name = "label20"; + this.label20.Size = new System.Drawing.Size(316, 33); + this.label20.TabIndex = 0; + this.label20.Text = "Only PCM-WAV-files are supported. The sound will play 1 min before the timer runs" + + " out."; + // + // tabPageOverlay + // + this.tabPageOverlay.Controls.Add(this.groupBox10); + this.tabPageOverlay.Location = new System.Drawing.Point(4, 22); + this.tabPageOverlay.Name = "tabPageOverlay"; + this.tabPageOverlay.Padding = new System.Windows.Forms.Padding(3); + this.tabPageOverlay.Size = new System.Drawing.Size(750, 699); + this.tabPageOverlay.TabIndex = 5; + this.tabPageOverlay.Text = "Overlay"; + this.tabPageOverlay.UseVisualStyleBackColor = true; + // + // groupBox10 + // + this.groupBox10.Controls.Add(this.NudOverlayRelativeFontSize); + this.groupBox10.Controls.Add(this.label65); + this.groupBox10.Controls.Add(this.CbOverlayDisplayInheritance); + this.groupBox10.Controls.Add(this.label45); + this.groupBox10.Controls.Add(this.pCustomOverlayLocation); + this.groupBox10.Controls.Add(this.cbCustomOverlayLocation); + this.groupBox10.Controls.Add(this.label38); + this.groupBox10.Controls.Add(this.nudOverlayInfoPosY); + this.groupBox10.Controls.Add(this.label39); + this.groupBox10.Controls.Add(this.nudOverlayInfoPosDFR); + this.groupBox10.Controls.Add(this.label40); + this.groupBox10.Controls.Add(this.label37); + this.groupBox10.Controls.Add(this.nudOverlayTimerPosY); + this.groupBox10.Controls.Add(this.label36); + this.groupBox10.Controls.Add(this.nudOverlayTimerPosX); + this.groupBox10.Controls.Add(this.label35); + this.groupBox10.Controls.Add(this.cbInventoryCheck); + this.groupBox10.Controls.Add(this.label21); + this.groupBox10.Controls.Add(this.nudOverlayInfoDuration); + this.groupBox10.Controls.Add(this.chkbSpeechRecognition); + this.groupBox10.Controls.Add(this.label66); + this.groupBox10.Location = new System.Drawing.Point(8, 6); + this.groupBox10.Name = "groupBox10"; + this.groupBox10.Size = new System.Drawing.Size(734, 307); + this.groupBox10.TabIndex = 0; + this.groupBox10.TabStop = false; + this.groupBox10.Text = "Overlay"; + // + // label65 + // + this.label65.AutoSize = true; + this.label65.Location = new System.Drawing.Point(6, 252); + this.label65.Name = "label65"; + this.label65.Size = new System.Drawing.Size(141, 13); + this.label65.TabIndex = 18; + this.label65.Text = "Relative font size (default: 1)"; + // + // CbOverlayDisplayInheritance + // + this.CbOverlayDisplayInheritance.AutoSize = true; + this.CbOverlayDisplayInheritance.Location = new System.Drawing.Point(6, 284); + this.CbOverlayDisplayInheritance.Name = "CbOverlayDisplayInheritance"; + this.CbOverlayDisplayInheritance.Size = new System.Drawing.Size(203, 17); + this.CbOverlayDisplayInheritance.TabIndex = 17; + this.CbOverlayDisplayInheritance.Text = "Display creature inheritance on import"; + this.CbOverlayDisplayInheritance.UseVisualStyleBackColor = true; + // + // label45 + // + this.label45.AutoSize = true; + this.label45.Location = new System.Drawing.Point(38, 25); + this.label45.Name = "label45"; + this.label45.Size = new System.Drawing.Size(495, 13); + this.label45.TabIndex = 0; + this.label45.Text = "For the overlay to work, you need to set the window-mode \"Fullscreen-Windowed\" in" + + " the game settings."; + // + // pCustomOverlayLocation + // + this.pCustomOverlayLocation.Controls.Add(this.nudCustomOverlayLocX); + this.pCustomOverlayLocation.Controls.Add(this.label42); + this.pCustomOverlayLocation.Controls.Add(this.label43); + this.pCustomOverlayLocation.Controls.Add(this.nudCustomOverlayLocY); + this.pCustomOverlayLocation.Enabled = false; + this.pCustomOverlayLocation.Location = new System.Drawing.Point(195, 217); + this.pCustomOverlayLocation.Name = "pCustomOverlayLocation"; + this.pCustomOverlayLocation.Size = new System.Drawing.Size(201, 28); + this.pCustomOverlayLocation.TabIndex = 16; + // + // label42 + // + this.label42.AutoSize = true; + this.label42.Location = new System.Drawing.Point(105, 5); + this.label42.Name = "label42"; + this.label42.Size = new System.Drawing.Size(14, 13); + this.label42.TabIndex = 2; + this.label42.Text = "Y"; + // + // label43 + // + this.label43.AutoSize = true; + this.label43.Location = new System.Drawing.Point(4, 5); + this.label43.Name = "label43"; + this.label43.Size = new System.Drawing.Size(14, 13); + this.label43.TabIndex = 0; + this.label43.Text = "X"; + // + // cbCustomOverlayLocation + // + this.cbCustomOverlayLocation.AutoSize = true; + this.cbCustomOverlayLocation.Location = new System.Drawing.Point(6, 221); + this.cbCustomOverlayLocation.Name = "cbCustomOverlayLocation"; + this.cbCustomOverlayLocation.Size = new System.Drawing.Size(138, 17); + this.cbCustomOverlayLocation.TabIndex = 15; + this.cbCustomOverlayLocation.Text = "Custom overlay location"; + this.cbCustomOverlayLocation.UseVisualStyleBackColor = true; + this.cbCustomOverlayLocation.CheckedChanged += new System.EventHandler(this.cbCustomOverlayLocation_CheckedChanged); + // + // label38 + // + this.label38.AutoSize = true; + this.label38.Location = new System.Drawing.Point(120, 187); + this.label38.Name = "label38"; + this.label38.Size = new System.Drawing.Size(93, 13); + this.label38.TabIndex = 11; + this.label38.Text = "distance from right"; + // + // label39 + // + this.label39.AutoSize = true; + this.label39.Location = new System.Drawing.Point(300, 187); + this.label39.Name = "label39"; + this.label39.Size = new System.Drawing.Size(14, 13); + this.label39.TabIndex = 13; + this.label39.Text = "Y"; + // + // label40 + // + this.label40.AutoSize = true; + this.label40.Location = new System.Drawing.Point(6, 187); + this.label40.Name = "label40"; + this.label40.Size = new System.Drawing.Size(94, 13); + this.label40.TabIndex = 10; + this.label40.Text = "Position of the info"; + // + // label37 + // + this.label37.AutoSize = true; + this.label37.Location = new System.Drawing.Point(300, 161); + this.label37.Name = "label37"; + this.label37.Size = new System.Drawing.Size(14, 13); + this.label37.TabIndex = 8; + this.label37.Text = "Y"; + // + // label36 + // + this.label36.AutoSize = true; + this.label36.Location = new System.Drawing.Point(199, 161); + this.label36.Name = "label36"; + this.label36.Size = new System.Drawing.Size(14, 13); + this.label36.TabIndex = 6; + this.label36.Text = "X"; + // + // label35 + // + this.label35.AutoSize = true; + this.label35.Location = new System.Drawing.Point(6, 161); + this.label35.Name = "label35"; + this.label35.Size = new System.Drawing.Size(104, 13); + this.label35.TabIndex = 5; + this.label35.Text = "Position of the timers"; + // + // cbInventoryCheck + // + this.cbInventoryCheck.Location = new System.Drawing.Point(6, 116); + this.cbInventoryCheck.Name = "cbInventoryCheck"; + this.cbInventoryCheck.Size = new System.Drawing.Size(305, 35); + this.cbInventoryCheck.TabIndex = 4; + this.cbInventoryCheck.Text = "Automatically extract inventory levels (needs working OCR and enabled overlay)"; + this.cbInventoryCheck.UseVisualStyleBackColor = true; + // + // label21 + // + this.label21.AutoSize = true; + this.label21.Location = new System.Drawing.Point(6, 84); + this.label21.Name = "label21"; + this.label21.Size = new System.Drawing.Size(138, 13); + this.label21.TabIndex = 2; + this.label21.Text = "Display info in overlay for [s]"; + // + // chkbSpeechRecognition + // + this.chkbSpeechRecognition.AutoSize = true; + this.chkbSpeechRecognition.Location = new System.Drawing.Point(6, 59); + this.chkbSpeechRecognition.Name = "chkbSpeechRecognition"; + this.chkbSpeechRecognition.Size = new System.Drawing.Size(338, 17); + this.chkbSpeechRecognition.TabIndex = 1; + this.chkbSpeechRecognition.Text = "Speech Recognition (displays taming info, e.g. say \"Rex level 30\")"; + this.chkbSpeechRecognition.UseVisualStyleBackColor = true; + // + // label66 + // + this.label66.AutoSize = true; + this.label66.Font = new System.Drawing.Font("Microsoft Sans Serif", 16F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.label66.Location = new System.Drawing.Point(6, 16); + this.label66.Name = "label66"; + this.label66.Size = new System.Drawing.Size(37, 26); + this.label66.TabIndex = 19; + this.label66.Text = "💡"; + // + // tabPageOCR + // + this.tabPageOCR.AutoScroll = true; + this.tabPageOCR.Controls.Add(this.groupBox1); + this.tabPageOCR.Location = new System.Drawing.Point(4, 22); + this.tabPageOCR.Name = "tabPageOCR"; + this.tabPageOCR.Padding = new System.Windows.Forms.Padding(3); + this.tabPageOCR.Size = new System.Drawing.Size(750, 699); + this.tabPageOCR.TabIndex = 4; + this.tabPageOCR.Text = "OCR"; + this.tabPageOCR.UseVisualStyleBackColor = true; + // + // groupBox1 + // + this.groupBox1.Controls.Add(this.BtGameNameAsa); + this.groupBox1.Controls.Add(this.label62); + this.groupBox1.Controls.Add(this.label61); + this.groupBox1.Controls.Add(this.label60); + this.groupBox1.Controls.Add(this.label59); + this.groupBox1.Controls.Add(this.label58); + this.groupBox1.Controls.Add(this.NudOCRClipboardCropHeight); + this.groupBox1.Controls.Add(this.NudOCRClipboardCropWidth); + this.groupBox1.Controls.Add(this.NudOCRClipboardCropTop); + this.groupBox1.Controls.Add(this.NudOCRClipboardCropLeft); + this.groupBox1.Controls.Add(this.CbOCRFromClipboard); + this.groupBox1.Controls.Add(this.BtGameNameAse); + this.groupBox1.Controls.Add(this.cbOCRIgnoreImprintValue); + this.groupBox1.Controls.Add(this.cbShowOCRButton); + this.groupBox1.Controls.Add(this.label23); + this.groupBox1.Controls.Add(this.nudWaitBeforeScreenCapture); + this.groupBox1.Controls.Add(this.label19); + this.groupBox1.Controls.Add(this.nudWhiteThreshold); + this.groupBox1.Controls.Add(this.tbOCRCaptureApp); + this.groupBox1.Controls.Add(this.label4); + this.groupBox1.Controls.Add(this.cbbOCRApp); + this.groupBox1.Controls.Add(this.label1); + this.groupBox1.Location = new System.Drawing.Point(6, 6); + this.groupBox1.Name = "groupBox1"; + this.groupBox1.Size = new System.Drawing.Size(734, 377); + this.groupBox1.TabIndex = 0; + this.groupBox1.TabStop = false; + this.groupBox1.Text = "OCR"; + // + // BtGameNameAsa + // + this.BtGameNameAsa.Location = new System.Drawing.Point(6, 318); + this.BtGameNameAsa.Name = "BtGameNameAsa"; + this.BtGameNameAsa.Size = new System.Drawing.Size(171, 23); + this.BtGameNameAsa.TabIndex = 21; + this.BtGameNameAsa.Text = "ArkAscended (ASA default)"; + this.BtGameNameAsa.UseVisualStyleBackColor = true; + this.BtGameNameAsa.Click += new System.EventHandler(this.BtGameNameAsa_Click); + // + // label62 + // + this.label62.AutoSize = true; + this.label62.Location = new System.Drawing.Point(34, 211); + this.label62.Name = "label62"; + this.label62.Size = new System.Drawing.Size(616, 13); + this.label62.TabIndex = 20; + this.label62.Text = "Set an area of the clipboard screenshot to be used for the actual OCR. Set all fi" + + "elds to 0 to disable and use the whole screenshot."; + // + // label61 + // + this.label61.AutoSize = true; + this.label61.Location = new System.Drawing.Point(151, 229); + this.label61.Name = "label61"; + this.label61.Size = new System.Drawing.Size(26, 13); + this.label61.TabIndex = 19; + this.label61.Text = "Top"; + // + // label60 + // + this.label60.AutoSize = true; + this.label60.Location = new System.Drawing.Point(258, 229); + this.label60.Name = "label60"; + this.label60.Size = new System.Drawing.Size(35, 13); + this.label60.TabIndex = 18; + this.label60.Text = "Width"; + // + // label59 + // + this.label59.AutoSize = true; + this.label59.Location = new System.Drawing.Point(374, 229); + this.label59.Name = "label59"; + this.label59.Size = new System.Drawing.Size(38, 13); + this.label59.TabIndex = 17; + this.label59.Text = "Height"; + // + // label58 + // + this.label58.AutoSize = true; + this.label58.Location = new System.Drawing.Point(45, 229); + this.label58.Name = "label58"; + this.label58.Size = new System.Drawing.Size(25, 13); + this.label58.TabIndex = 16; + this.label58.Text = "Left"; + // + // CbOCRFromClipboard + // + this.CbOCRFromClipboard.AutoSize = true; + this.CbOCRFromClipboard.Location = new System.Drawing.Point(6, 191); + this.CbOCRFromClipboard.Name = "CbOCRFromClipboard"; + this.CbOCRFromClipboard.Size = new System.Drawing.Size(506, 17); + this.CbOCRFromClipboard.TabIndex = 11; + this.CbOCRFromClipboard.Text = "Use image in clipboard for the OCR. You can press the Print-key to copy a screens" + + "hot to the cliphoard"; + this.CbOCRFromClipboard.UseVisualStyleBackColor = true; + // + // BtGameNameAse + // + this.BtGameNameAse.Location = new System.Drawing.Point(183, 318); + this.BtGameNameAse.Name = "BtGameNameAse"; + this.BtGameNameAse.Size = new System.Drawing.Size(170, 23); + this.BtGameNameAse.TabIndex = 8; + this.BtGameNameAse.Text = "ShooterGame (ASE default)"; + this.BtGameNameAse.UseVisualStyleBackColor = true; + this.BtGameNameAse.Click += new System.EventHandler(this.BtGameNameAse_Click); + // + // cbOCRIgnoreImprintValue + // + this.cbOCRIgnoreImprintValue.AutoSize = true; + this.cbOCRIgnoreImprintValue.Location = new System.Drawing.Point(6, 168); + this.cbOCRIgnoreImprintValue.Name = "cbOCRIgnoreImprintValue"; + this.cbOCRIgnoreImprintValue.Size = new System.Drawing.Size(287, 17); + this.cbOCRIgnoreImprintValue.TabIndex = 6; + this.cbOCRIgnoreImprintValue.Text = "Don\'t read imprinting value (can be overlapped by chat)"; + this.cbOCRIgnoreImprintValue.UseVisualStyleBackColor = true; + // + // cbShowOCRButton + // + this.cbShowOCRButton.AutoSize = true; + this.cbShowOCRButton.Location = new System.Drawing.Point(6, 96); + this.cbShowOCRButton.Name = "cbShowOCRButton"; + this.cbShowOCRButton.Size = new System.Drawing.Size(228, 17); + this.cbShowOCRButton.TabIndex = 1; + this.cbShowOCRButton.Text = "Show OCR-Button instead of Import-Button"; + this.cbShowOCRButton.UseVisualStyleBackColor = true; + // + // label23 + // + this.label23.Location = new System.Drawing.Point(6, 145); + this.label23.Name = "label23"; + this.label23.Size = new System.Drawing.Size(296, 20); + this.label23.TabIndex = 4; + this.label23.Text = "Wait before screencapture (time to tab into game) in ms"; + // + // label19 + // + this.label19.Location = new System.Drawing.Point(6, 119); + this.label19.Name = "label19"; + this.label19.Size = new System.Drawing.Size(296, 20); + this.label19.TabIndex = 2; + this.label19.Text = "White Threshold (increase if you increased gamma ingame)"; + // + // tbOCRCaptureApp + // + this.tbOCRCaptureApp.Location = new System.Drawing.Point(6, 292); + this.tbOCRCaptureApp.Name = "tbOCRCaptureApp"; + this.tbOCRCaptureApp.Size = new System.Drawing.Size(722, 20); + this.tbOCRCaptureApp.TabIndex = 9; + // + // label4 + // + this.label4.AutoSize = true; + this.label4.Location = new System.Drawing.Point(6, 276); + this.label4.Name = "label4"; + this.label4.Size = new System.Drawing.Size(111, 13); + this.label4.TabIndex = 7; + this.label4.Text = "Process name of ARK"; + // + // cbbOCRApp + // + this.cbbOCRApp.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; + this.cbbOCRApp.FormattingEnabled = true; + this.cbbOCRApp.Location = new System.Drawing.Point(6, 347); + this.cbbOCRApp.Name = "cbbOCRApp"; + this.cbbOCRApp.Size = new System.Drawing.Size(722, 21); + this.cbbOCRApp.TabIndex = 10; + this.cbbOCRApp.SelectedIndexChanged += new System.EventHandler(this.cbOCRApp_SelectedIndexChanged); + // + // label1 + // + this.label1.Location = new System.Drawing.Point(6, 16); + this.label1.Name = "label1"; + this.label1.Size = new System.Drawing.Size(722, 77); + this.label1.TabIndex = 0; + this.label1.Text = resources.GetString("label1.Text"); + // + // panel1 + // + this.panel1.Controls.Add(this.buttonCancel); + this.panel1.Controls.Add(this.buttonOK); + this.panel1.Dock = System.Windows.Forms.DockStyle.Bottom; + this.panel1.Location = new System.Drawing.Point(0, 725); + this.panel1.Name = "panel1"; + this.panel1.Size = new System.Drawing.Size(758, 30); + this.panel1.TabIndex = 12; + // + // BtAutoImportLocalSettings + // + this.BtAutoImportLocalSettings.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(255)))), ((int)(((byte)(192))))); + this.BtAutoImportLocalSettings.Location = new System.Drawing.Point(407, 599); + this.BtAutoImportLocalSettings.Name = "BtAutoImportLocalSettings"; + this.BtAutoImportLocalSettings.Size = new System.Drawing.Size(152, 23); + this.BtAutoImportLocalSettings.TabIndex = 17; + this.BtAutoImportLocalSettings.Text = "Import local settings"; + this.BtAutoImportLocalSettings.UseVisualStyleBackColor = false; + this.BtAutoImportLocalSettings.Click += new System.EventHandler(this.BtAutoImportLocalSettings_Click); + // + // nudWildLevelStep + // + this.nudWildLevelStep.ForeColor = System.Drawing.SystemColors.WindowText; + this.nudWildLevelStep.Location = new System.Drawing.Point(319, 17); + this.nudWildLevelStep.Maximum = new decimal(new int[] { + 100000, + 0, + 0, + 0}); + this.nudWildLevelStep.Minimum = new decimal(new int[] { + 1, + 0, + 0, + 0}); + this.nudWildLevelStep.Name = "nudWildLevelStep"; + this.nudWildLevelStep.NeutralNumber = new decimal(new int[] { + 0, + 0, + 0, + 0}); + this.nudWildLevelStep.Size = new System.Drawing.Size(57, 20); + this.nudWildLevelStep.TabIndex = 1; + this.nudWildLevelStep.Value = new decimal(new int[] { + 1, + 0, + 0, + 0}); + // + // nudTamedDinoCharacterFoodDrain + // + this.nudTamedDinoCharacterFoodDrain.DecimalPlaces = 6; + this.nudTamedDinoCharacterFoodDrain.ForeColor = System.Drawing.SystemColors.WindowText; + this.nudTamedDinoCharacterFoodDrain.Location = new System.Drawing.Point(183, 227); + this.nudTamedDinoCharacterFoodDrain.Maximum = new decimal(new int[] { + 10000, + 0, + 0, + 0}); + this.nudTamedDinoCharacterFoodDrain.Name = "nudTamedDinoCharacterFoodDrain"; + this.nudTamedDinoCharacterFoodDrain.NeutralNumber = new decimal(new int[] { + 0, + 0, + 0, + 0}); + this.nudTamedDinoCharacterFoodDrain.Size = new System.Drawing.Size(72, 20); + this.nudTamedDinoCharacterFoodDrain.TabIndex = 21; + this.nudTamedDinoCharacterFoodDrain.Value = new decimal(new int[] { + 1, + 0, + 0, + 0}); + // + // nudTamedDinoCharacterFoodDrainEvent + // + this.nudTamedDinoCharacterFoodDrainEvent.DecimalPlaces = 6; + this.nudTamedDinoCharacterFoodDrainEvent.ForeColor = System.Drawing.SystemColors.WindowText; + this.nudTamedDinoCharacterFoodDrainEvent.Location = new System.Drawing.Point(263, 227); + this.nudTamedDinoCharacterFoodDrainEvent.Maximum = new decimal(new int[] { + 10000, + 0, + 0, + 0}); + this.nudTamedDinoCharacterFoodDrainEvent.Name = "nudTamedDinoCharacterFoodDrainEvent"; + this.nudTamedDinoCharacterFoodDrainEvent.NeutralNumber = new decimal(new int[] { + 0, + 0, + 0, + 0}); + this.nudTamedDinoCharacterFoodDrainEvent.Size = new System.Drawing.Size(72, 20); + this.nudTamedDinoCharacterFoodDrainEvent.TabIndex = 23; + this.nudTamedDinoCharacterFoodDrainEvent.Value = new decimal(new int[] { + 1, + 0, + 0, + 0}); + // + // nudBabyImprintAmountEvent + // + this.nudBabyImprintAmountEvent.DecimalPlaces = 6; + this.nudBabyImprintAmountEvent.ForeColor = System.Drawing.SystemColors.WindowText; + this.nudBabyImprintAmountEvent.Location = new System.Drawing.Point(263, 149); + this.nudBabyImprintAmountEvent.Maximum = new decimal(new int[] { + 10000, + 0, + 0, + 0}); + this.nudBabyImprintAmountEvent.Name = "nudBabyImprintAmountEvent"; + this.nudBabyImprintAmountEvent.NeutralNumber = new decimal(new int[] { + 0, + 0, + 0, + 0}); + this.nudBabyImprintAmountEvent.Size = new System.Drawing.Size(72, 20); + this.nudBabyImprintAmountEvent.TabIndex = 12; + this.nudBabyImprintAmountEvent.Value = new decimal(new int[] { + 1, + 0, + 0, + 0}); + // + // nudBabyImprintAmount + // + this.nudBabyImprintAmount.DecimalPlaces = 6; + this.nudBabyImprintAmount.ForeColor = System.Drawing.SystemColors.WindowText; + this.nudBabyImprintAmount.Location = new System.Drawing.Point(183, 149); + this.nudBabyImprintAmount.Maximum = new decimal(new int[] { + 10000, + 0, + 0, + 0}); + this.nudBabyImprintAmount.Name = "nudBabyImprintAmount"; + this.nudBabyImprintAmount.NeutralNumber = new decimal(new int[] { + 0, + 0, + 0, + 0}); + this.nudBabyImprintAmount.Size = new System.Drawing.Size(72, 20); + this.nudBabyImprintAmount.TabIndex = 5; + this.nudBabyImprintAmount.Value = new decimal(new int[] { + 1, + 0, + 0, + 0}); + // + // nudMatingSpeed + // + this.nudMatingSpeed.DecimalPlaces = 6; + this.nudMatingSpeed.ForeColor = System.Drawing.SystemColors.WindowText; + this.nudMatingSpeed.Location = new System.Drawing.Point(183, 19); + this.nudMatingSpeed.Maximum = new decimal(new int[] { + 10000, + 0, + 0, + 0}); + this.nudMatingSpeed.Name = "nudMatingSpeed"; + this.nudMatingSpeed.NeutralNumber = new decimal(new int[] { + 0, + 0, + 0, + 0}); + this.nudMatingSpeed.Size = new System.Drawing.Size(72, 20); + this.nudMatingSpeed.TabIndex = 0; + this.nudMatingSpeed.Value = new decimal(new int[] { + 1, + 0, + 0, + 0}); + // + // nudBabyFoodConsumptionSpeedEvent + // + this.nudBabyFoodConsumptionSpeedEvent.DecimalPlaces = 6; + this.nudBabyFoodConsumptionSpeedEvent.ForeColor = System.Drawing.SystemColors.WindowText; + this.nudBabyFoodConsumptionSpeedEvent.Location = new System.Drawing.Point(263, 201); + this.nudBabyFoodConsumptionSpeedEvent.Maximum = new decimal(new int[] { + 10000, + 0, + 0, + 0}); + this.nudBabyFoodConsumptionSpeedEvent.Name = "nudBabyFoodConsumptionSpeedEvent"; + this.nudBabyFoodConsumptionSpeedEvent.NeutralNumber = new decimal(new int[] { + 0, + 0, + 0, + 0}); + this.nudBabyFoodConsumptionSpeedEvent.Size = new System.Drawing.Size(72, 20); + this.nudBabyFoodConsumptionSpeedEvent.TabIndex = 13; + this.nudBabyFoodConsumptionSpeedEvent.Value = new decimal(new int[] { + 1, + 0, + 0, + 0}); + // + // nudMatingIntervalEvent + // + this.nudMatingIntervalEvent.DecimalPlaces = 6; + this.nudMatingIntervalEvent.ForeColor = System.Drawing.SystemColors.WindowText; + this.nudMatingIntervalEvent.Location = new System.Drawing.Point(263, 45); + this.nudMatingIntervalEvent.Maximum = new decimal(new int[] { + 10000, + 0, + 0, + 0}); + this.nudMatingIntervalEvent.Name = "nudMatingIntervalEvent"; + this.nudMatingIntervalEvent.NeutralNumber = new decimal(new int[] { + 0, + 0, + 0, + 0}); + this.nudMatingIntervalEvent.Size = new System.Drawing.Size(72, 20); + this.nudMatingIntervalEvent.TabIndex = 8; + this.nudMatingIntervalEvent.Value = new decimal(new int[] { + 1, + 0, + 0, + 0}); + // + // nudBabyCuddleIntervalEvent + // + this.nudBabyCuddleIntervalEvent.DecimalPlaces = 6; + this.nudBabyCuddleIntervalEvent.ForeColor = System.Drawing.SystemColors.WindowText; + this.nudBabyCuddleIntervalEvent.Location = new System.Drawing.Point(263, 123); + this.nudBabyCuddleIntervalEvent.Maximum = new decimal(new int[] { + 10000, + 0, + 0, + 0}); + this.nudBabyCuddleIntervalEvent.Name = "nudBabyCuddleIntervalEvent"; + this.nudBabyCuddleIntervalEvent.NeutralNumber = new decimal(new int[] { + 0, + 0, + 0, + 0}); + this.nudBabyCuddleIntervalEvent.Size = new System.Drawing.Size(72, 20); + this.nudBabyCuddleIntervalEvent.TabIndex = 11; + this.nudBabyCuddleIntervalEvent.Value = new decimal(new int[] { + 1, + 0, + 0, + 0}); + // + // nudBabyMatureSpeedEvent + // + this.nudBabyMatureSpeedEvent.DecimalPlaces = 6; + this.nudBabyMatureSpeedEvent.ForeColor = System.Drawing.SystemColors.WindowText; + this.nudBabyMatureSpeedEvent.Location = new System.Drawing.Point(263, 97); + this.nudBabyMatureSpeedEvent.Maximum = new decimal(new int[] { + 10000, + 0, + 0, + 0}); + this.nudBabyMatureSpeedEvent.Name = "nudBabyMatureSpeedEvent"; + this.nudBabyMatureSpeedEvent.NeutralNumber = new decimal(new int[] { + 0, + 0, + 0, + 0}); + this.nudBabyMatureSpeedEvent.Size = new System.Drawing.Size(72, 20); + this.nudBabyMatureSpeedEvent.TabIndex = 10; + this.nudBabyMatureSpeedEvent.Value = new decimal(new int[] { + 1, + 0, + 0, + 0}); + // + // nudEggHatchSpeedEvent + // + this.nudEggHatchSpeedEvent.DecimalPlaces = 6; + this.nudEggHatchSpeedEvent.ForeColor = System.Drawing.SystemColors.WindowText; + this.nudEggHatchSpeedEvent.Location = new System.Drawing.Point(263, 71); + this.nudEggHatchSpeedEvent.Maximum = new decimal(new int[] { + 10000, + 0, + 0, + 0}); + this.nudEggHatchSpeedEvent.Name = "nudEggHatchSpeedEvent"; + this.nudEggHatchSpeedEvent.NeutralNumber = new decimal(new int[] { + 0, + 0, + 0, + 0}); + this.nudEggHatchSpeedEvent.Size = new System.Drawing.Size(72, 20); + this.nudEggHatchSpeedEvent.TabIndex = 9; + this.nudEggHatchSpeedEvent.Value = new decimal(new int[] { + 1, + 0, + 0, + 0}); + // + // nudBabyFoodConsumptionSpeed + // + this.nudBabyFoodConsumptionSpeed.DecimalPlaces = 6; + this.nudBabyFoodConsumptionSpeed.ForeColor = System.Drawing.SystemColors.WindowText; + this.nudBabyFoodConsumptionSpeed.Location = new System.Drawing.Point(183, 201); + this.nudBabyFoodConsumptionSpeed.Maximum = new decimal(new int[] { + 10000, + 0, + 0, + 0}); + this.nudBabyFoodConsumptionSpeed.Name = "nudBabyFoodConsumptionSpeed"; + this.nudBabyFoodConsumptionSpeed.NeutralNumber = new decimal(new int[] { + 0, + 0, + 0, + 0}); + this.nudBabyFoodConsumptionSpeed.Size = new System.Drawing.Size(72, 20); + this.nudBabyFoodConsumptionSpeed.TabIndex = 7; + this.nudBabyFoodConsumptionSpeed.Value = new decimal(new int[] { + 1, + 0, + 0, + 0}); + // + // nudMatingInterval + // + this.nudMatingInterval.DecimalPlaces = 6; + this.nudMatingInterval.ForeColor = System.Drawing.SystemColors.WindowText; + this.nudMatingInterval.Location = new System.Drawing.Point(183, 45); + this.nudMatingInterval.Maximum = new decimal(new int[] { + 10000, + 0, + 0, + 0}); + this.nudMatingInterval.Name = "nudMatingInterval"; + this.nudMatingInterval.NeutralNumber = new decimal(new int[] { + 0, + 0, + 0, + 0}); + this.nudMatingInterval.Size = new System.Drawing.Size(72, 20); + this.nudMatingInterval.TabIndex = 1; + this.nudMatingInterval.Value = new decimal(new int[] { + 1, + 0, + 0, + 0}); + // + // nudBabyCuddleInterval + // + this.nudBabyCuddleInterval.DecimalPlaces = 6; + this.nudBabyCuddleInterval.ForeColor = System.Drawing.SystemColors.WindowText; + this.nudBabyCuddleInterval.Location = new System.Drawing.Point(183, 123); + this.nudBabyCuddleInterval.Maximum = new decimal(new int[] { + 10000, + 0, + 0, + 0}); + this.nudBabyCuddleInterval.Name = "nudBabyCuddleInterval"; + this.nudBabyCuddleInterval.NeutralNumber = new decimal(new int[] { + 0, + 0, + 0, + 0}); + this.nudBabyCuddleInterval.Size = new System.Drawing.Size(72, 20); + this.nudBabyCuddleInterval.TabIndex = 4; + this.nudBabyCuddleInterval.Value = new decimal(new int[] { + 1, + 0, + 0, + 0}); + // + // nudBabyMatureSpeed + // + this.nudBabyMatureSpeed.DecimalPlaces = 6; + this.nudBabyMatureSpeed.ForeColor = System.Drawing.SystemColors.WindowText; + this.nudBabyMatureSpeed.Location = new System.Drawing.Point(183, 97); + this.nudBabyMatureSpeed.Maximum = new decimal(new int[] { + 10000, + 0, + 0, + 0}); + this.nudBabyMatureSpeed.Name = "nudBabyMatureSpeed"; + this.nudBabyMatureSpeed.NeutralNumber = new decimal(new int[] { + 0, + 0, + 0, + 0}); + this.nudBabyMatureSpeed.Size = new System.Drawing.Size(72, 20); + this.nudBabyMatureSpeed.TabIndex = 3; + this.nudBabyMatureSpeed.Value = new decimal(new int[] { + 1, + 0, + 0, + 0}); + // + // nudBabyImprintingStatScale + // + this.nudBabyImprintingStatScale.DecimalPlaces = 6; + this.nudBabyImprintingStatScale.ForeColor = System.Drawing.SystemColors.WindowText; + this.nudBabyImprintingStatScale.Location = new System.Drawing.Point(183, 175); + this.nudBabyImprintingStatScale.Maximum = new decimal(new int[] { + 10000, + 0, + 0, + 0}); + this.nudBabyImprintingStatScale.Name = "nudBabyImprintingStatScale"; + this.nudBabyImprintingStatScale.NeutralNumber = new decimal(new int[] { + 0, + 0, + 0, + 0}); + this.nudBabyImprintingStatScale.Size = new System.Drawing.Size(72, 20); + this.nudBabyImprintingStatScale.TabIndex = 6; + this.nudBabyImprintingStatScale.Value = new decimal(new int[] { + 1, + 0, + 0, + 0}); + // + // nudEggHatchSpeed + // + this.nudEggHatchSpeed.DecimalPlaces = 6; + this.nudEggHatchSpeed.ForeColor = System.Drawing.SystemColors.WindowText; + this.nudEggHatchSpeed.Location = new System.Drawing.Point(183, 71); + this.nudEggHatchSpeed.Maximum = new decimal(new int[] { + 10000, + 0, + 0, + 0}); + this.nudEggHatchSpeed.Name = "nudEggHatchSpeed"; + this.nudEggHatchSpeed.NeutralNumber = new decimal(new int[] { + 0, + 0, + 0, + 0}); + this.nudEggHatchSpeed.Size = new System.Drawing.Size(72, 20); + this.nudEggHatchSpeed.TabIndex = 2; + this.nudEggHatchSpeed.Value = new decimal(new int[] { + 1, + 0, + 0, + 0}); + // + // nudMaxServerLevel + // + this.nudMaxServerLevel.ForeColor = System.Drawing.SystemColors.GrayText; + this.nudMaxServerLevel.Location = new System.Drawing.Point(183, 97); + this.nudMaxServerLevel.Maximum = new decimal(new int[] { + 100000, + 0, + 0, + 0}); + this.nudMaxServerLevel.Name = "nudMaxServerLevel"; + this.nudMaxServerLevel.NeutralNumber = new decimal(new int[] { + 0, + 0, + 0, + 0}); + this.nudMaxServerLevel.Size = new System.Drawing.Size(57, 20); + this.nudMaxServerLevel.TabIndex = 3; + // + // nudMaxGraphLevel + // + this.nudMaxGraphLevel.ForeColor = System.Drawing.SystemColors.GrayText; + this.nudMaxGraphLevel.Location = new System.Drawing.Point(183, 71); + this.nudMaxGraphLevel.Maximum = new decimal(new int[] { + 100000, + 0, + 0, + 0}); + this.nudMaxGraphLevel.Name = "nudMaxGraphLevel"; + this.nudMaxGraphLevel.NeutralNumber = new decimal(new int[] { + 0, + 0, + 0, + 0}); + this.nudMaxGraphLevel.Size = new System.Drawing.Size(57, 20); + this.nudMaxGraphLevel.TabIndex = 2; + // + // nudMaxWildLevels + // + this.nudMaxWildLevels.ForeColor = System.Drawing.SystemColors.GrayText; + this.nudMaxWildLevels.Location = new System.Drawing.Point(183, 19); + this.nudMaxWildLevels.Maximum = new decimal(new int[] { + 100000, + 0, + 0, + 0}); + this.nudMaxWildLevels.Name = "nudMaxWildLevels"; + this.nudMaxWildLevels.NeutralNumber = new decimal(new int[] { + 0, + 0, + 0, + 0}); + this.nudMaxWildLevels.Size = new System.Drawing.Size(57, 20); + this.nudMaxWildLevels.TabIndex = 0; + // + // nudMaxDomLevels + // + this.nudMaxDomLevels.ForeColor = System.Drawing.SystemColors.GrayText; + this.nudMaxDomLevels.Location = new System.Drawing.Point(183, 45); + this.nudMaxDomLevels.Maximum = new decimal(new int[] { + 100000, + 0, + 0, + 0}); + this.nudMaxDomLevels.Name = "nudMaxDomLevels"; + this.nudMaxDomLevels.NeutralNumber = new decimal(new int[] { + 0, + 0, + 0, + 0}); + this.nudMaxDomLevels.Size = new System.Drawing.Size(57, 20); + this.nudMaxDomLevels.TabIndex = 1; + // + // nudDinoCharacterFoodDrainEvent + // + this.nudDinoCharacterFoodDrainEvent.DecimalPlaces = 6; + this.nudDinoCharacterFoodDrainEvent.ForeColor = System.Drawing.SystemColors.WindowText; + this.nudDinoCharacterFoodDrainEvent.Location = new System.Drawing.Point(263, 45); + this.nudDinoCharacterFoodDrainEvent.Maximum = new decimal(new int[] { + 10000, + 0, + 0, + 0}); + this.nudDinoCharacterFoodDrainEvent.Name = "nudDinoCharacterFoodDrainEvent"; + this.nudDinoCharacterFoodDrainEvent.NeutralNumber = new decimal(new int[] { + 0, + 0, + 0, + 0}); + this.nudDinoCharacterFoodDrainEvent.Size = new System.Drawing.Size(72, 20); + this.nudDinoCharacterFoodDrainEvent.TabIndex = 3; + this.nudDinoCharacterFoodDrainEvent.Value = new decimal(new int[] { + 1, + 0, + 0, + 0}); + // + // nudTamingSpeedEvent + // + this.nudTamingSpeedEvent.DecimalPlaces = 6; + this.nudTamingSpeedEvent.ForeColor = System.Drawing.SystemColors.WindowText; + this.nudTamingSpeedEvent.Location = new System.Drawing.Point(263, 19); + this.nudTamingSpeedEvent.Maximum = new decimal(new int[] { + 10000, + 0, + 0, + 0}); + this.nudTamingSpeedEvent.Name = "nudTamingSpeedEvent"; + this.nudTamingSpeedEvent.NeutralNumber = new decimal(new int[] { + 0, + 0, + 0, + 0}); + this.nudTamingSpeedEvent.Size = new System.Drawing.Size(72, 20); + this.nudTamingSpeedEvent.TabIndex = 2; + this.nudTamingSpeedEvent.Value = new decimal(new int[] { + 1, + 0, + 0, + 0}); + // + // nudDinoCharacterFoodDrain + // + this.nudDinoCharacterFoodDrain.DecimalPlaces = 6; + this.nudDinoCharacterFoodDrain.ForeColor = System.Drawing.SystemColors.WindowText; + this.nudDinoCharacterFoodDrain.Location = new System.Drawing.Point(183, 45); + this.nudDinoCharacterFoodDrain.Maximum = new decimal(new int[] { + 10000, + 0, + 0, + 0}); + this.nudDinoCharacterFoodDrain.Name = "nudDinoCharacterFoodDrain"; + this.nudDinoCharacterFoodDrain.NeutralNumber = new decimal(new int[] { + 0, + 0, + 0, + 0}); + this.nudDinoCharacterFoodDrain.Size = new System.Drawing.Size(72, 20); + this.nudDinoCharacterFoodDrain.TabIndex = 1; + this.nudDinoCharacterFoodDrain.Value = new decimal(new int[] { + 1, + 0, + 0, + 0}); + // + // nudTamingSpeed + // + this.nudTamingSpeed.DecimalPlaces = 6; + this.nudTamingSpeed.ForeColor = System.Drawing.SystemColors.WindowText; + this.nudTamingSpeed.Location = new System.Drawing.Point(183, 19); + this.nudTamingSpeed.Maximum = new decimal(new int[] { + 10000, + 0, + 0, + 0}); + this.nudTamingSpeed.Name = "nudTamingSpeed"; + this.nudTamingSpeed.NeutralNumber = new decimal(new int[] { + 0, + 0, + 0, + 0}); + this.nudTamingSpeed.Size = new System.Drawing.Size(72, 20); + this.nudTamingSpeed.TabIndex = 0; + this.nudTamingSpeed.Value = new decimal(new int[] { + 1, + 0, + 0, + 0}); + // + // NudSpeciesSelectorCountLastUsed + // + this.NudSpeciesSelectorCountLastUsed.ForeColor = System.Drawing.SystemColors.GrayText; + this.NudSpeciesSelectorCountLastUsed.Location = new System.Drawing.Point(252, 19); + this.NudSpeciesSelectorCountLastUsed.Name = "NudSpeciesSelectorCountLastUsed"; + this.NudSpeciesSelectorCountLastUsed.NeutralNumber = new decimal(new int[] { + 0, + 0, + 0, + 0}); + this.NudSpeciesSelectorCountLastUsed.Size = new System.Drawing.Size(57, 20); + this.NudSpeciesSelectorCountLastUsed.TabIndex = 1; + // + // nudDefaultFontSize + // + this.nudDefaultFontSize.DecimalPlaces = 2; + this.nudDefaultFontSize.ForeColor = System.Drawing.SystemColors.GrayText; + this.nudDefaultFontSize.Location = new System.Drawing.Point(335, 18); + this.nudDefaultFontSize.Name = "nudDefaultFontSize"; + this.nudDefaultFontSize.NeutralNumber = new decimal(new int[] { + 0, + 0, + 0, + 0}); + this.nudDefaultFontSize.Size = new System.Drawing.Size(72, 20); + this.nudDefaultFontSize.TabIndex = 3; + // + // nudChartLevelOddMax + // + this.nudChartLevelOddMax.ForeColor = System.Drawing.SystemColors.WindowText; + this.nudChartLevelOddMax.Location = new System.Drawing.Point(268, 137); + this.nudChartLevelOddMax.Maximum = new decimal(new int[] { + 360, + 0, + 0, + 0}); + this.nudChartLevelOddMax.Minimum = new decimal(new int[] { + 360, + 0, + 0, + -2147483648}); + this.nudChartLevelOddMax.Name = "nudChartLevelOddMax"; + this.nudChartLevelOddMax.NeutralNumber = new decimal(new int[] { + 0, + 0, + 0, + 0}); + this.nudChartLevelOddMax.Size = new System.Drawing.Size(41, 20); + this.nudChartLevelOddMax.TabIndex = 11; + this.nudChartLevelOddMax.Value = new decimal(new int[] { + 360, + 0, + 0, + 0}); + this.nudChartLevelOddMax.ValueChanged += new System.EventHandler(this.nudChartLevelOddMax_ValueChanged); + // + // nudChartLevelOddMin + // + this.nudChartLevelOddMin.ForeColor = System.Drawing.SystemColors.GrayText; + this.nudChartLevelOddMin.Location = new System.Drawing.Point(209, 137); + this.nudChartLevelOddMin.Maximum = new decimal(new int[] { + 360, + 0, + 0, + 0}); + this.nudChartLevelOddMin.Minimum = new decimal(new int[] { + 360, + 0, + 0, + -2147483648}); + this.nudChartLevelOddMin.Name = "nudChartLevelOddMin"; + this.nudChartLevelOddMin.NeutralNumber = new decimal(new int[] { + 0, + 0, + 0, + 0}); + this.nudChartLevelOddMin.Size = new System.Drawing.Size(41, 20); + this.nudChartLevelOddMin.TabIndex = 10; + this.nudChartLevelOddMin.ValueChanged += new System.EventHandler(this.nudChartLevelOddMin_ValueChanged); + // + // nudChartLevelEvenMax + // + this.nudChartLevelEvenMax.ForeColor = System.Drawing.SystemColors.GrayText; + this.nudChartLevelEvenMax.Location = new System.Drawing.Point(102, 137); + this.nudChartLevelEvenMax.Maximum = new decimal(new int[] { + 360, + 0, + 0, + 0}); + this.nudChartLevelEvenMax.Minimum = new decimal(new int[] { + 360, + 0, + 0, + -2147483648}); + this.nudChartLevelEvenMax.Name = "nudChartLevelEvenMax"; + this.nudChartLevelEvenMax.NeutralNumber = new decimal(new int[] { + 0, + 0, + 0, + 0}); + this.nudChartLevelEvenMax.Size = new System.Drawing.Size(41, 20); + this.nudChartLevelEvenMax.TabIndex = 9; + this.nudChartLevelEvenMax.ValueChanged += new System.EventHandler(this.nudChartLevelEvenMax_ValueChanged); + // + // nudChartLevelEvenMin + // + this.nudChartLevelEvenMin.ForeColor = System.Drawing.SystemColors.GrayText; + this.nudChartLevelEvenMin.Location = new System.Drawing.Point(43, 137); + this.nudChartLevelEvenMin.Maximum = new decimal(new int[] { + 360, + 0, + 0, + 0}); + this.nudChartLevelEvenMin.Minimum = new decimal(new int[] { + 360, + 0, + 0, + -2147483648}); + this.nudChartLevelEvenMin.Name = "nudChartLevelEvenMin"; + this.nudChartLevelEvenMin.NeutralNumber = new decimal(new int[] { + 0, + 0, + 0, + 0}); + this.nudChartLevelEvenMin.Size = new System.Drawing.Size(41, 20); + this.nudChartLevelEvenMin.TabIndex = 8; + this.nudChartLevelEvenMin.ValueChanged += new System.EventHandler(this.nudChartLevelEvenMin_ValueChanged); + // + // numericUpDownMaxBreedingSug + // + this.numericUpDownMaxBreedingSug.ForeColor = System.Drawing.SystemColors.GrayText; + this.numericUpDownMaxBreedingSug.Location = new System.Drawing.Point(252, 19); + this.numericUpDownMaxBreedingSug.Maximum = new decimal(new int[] { + 200, + 0, + 0, + 0}); + this.numericUpDownMaxBreedingSug.Name = "numericUpDownMaxBreedingSug"; + this.numericUpDownMaxBreedingSug.NeutralNumber = new decimal(new int[] { + 0, + 0, + 0, + 0}); + this.numericUpDownMaxBreedingSug.Size = new System.Drawing.Size(57, 20); + this.numericUpDownMaxBreedingSug.TabIndex = 1; + // + // NudWaitBeforeAutoLoad + // + this.NudWaitBeforeAutoLoad.ForeColor = System.Drawing.SystemColors.GrayText; + this.NudWaitBeforeAutoLoad.Location = new System.Drawing.Point(255, 41); + this.NudWaitBeforeAutoLoad.Maximum = new decimal(new int[] { + 10000, + 0, + 0, + 0}); + this.NudWaitBeforeAutoLoad.Name = "NudWaitBeforeAutoLoad"; + this.NudWaitBeforeAutoLoad.NeutralNumber = new decimal(new int[] { + 0, + 0, + 0, + 0}); + this.NudWaitBeforeAutoLoad.Size = new System.Drawing.Size(56, 20); + this.NudWaitBeforeAutoLoad.TabIndex = 12; + // + // NudKeepBackupFilesCount + // + this.NudKeepBackupFilesCount.ForeColor = System.Drawing.SystemColors.GrayText; + this.NudKeepBackupFilesCount.Location = new System.Drawing.Point(44, 118); + this.NudKeepBackupFilesCount.Name = "NudKeepBackupFilesCount"; + this.NudKeepBackupFilesCount.NeutralNumber = new decimal(new int[] { + 0, + 0, + 0, + 0}); + this.NudKeepBackupFilesCount.Size = new System.Drawing.Size(59, 20); + this.NudKeepBackupFilesCount.TabIndex = 4; + // + // NudBackupEveryMinutes + // + this.NudBackupEveryMinutes.ForeColor = System.Drawing.SystemColors.GrayText; + this.NudBackupEveryMinutes.Location = new System.Drawing.Point(132, 144); + this.NudBackupEveryMinutes.Name = "NudBackupEveryMinutes"; + this.NudBackupEveryMinutes.NeutralNumber = new decimal(new int[] { + 0, + 0, + 0, + 0}); + this.NudBackupEveryMinutes.Size = new System.Drawing.Size(47, 20); + this.NudBackupEveryMinutes.TabIndex = 7; + // + // nudInfoGraphicHeight + // + this.nudInfoGraphicHeight.ForeColor = System.Drawing.SystemColors.WindowText; + this.nudInfoGraphicHeight.Location = new System.Drawing.Point(126, 18); + this.nudInfoGraphicHeight.Maximum = new decimal(new int[] { + 99999, + 0, + 0, + 0}); + this.nudInfoGraphicHeight.Minimum = new decimal(new int[] { + 1, + 0, + 0, + 0}); + this.nudInfoGraphicHeight.Name = "nudInfoGraphicHeight"; + this.nudInfoGraphicHeight.NeutralNumber = new decimal(new int[] { + 0, + 0, + 0, + 0}); + this.nudInfoGraphicHeight.Size = new System.Drawing.Size(57, 20); + this.nudInfoGraphicHeight.TabIndex = 2; + this.nudInfoGraphicHeight.Value = new decimal(new int[] { + 100, + 0, + 0, + 0}); + this.nudInfoGraphicHeight.ValueChanged += new System.EventHandler(this.nudInfoGraphicHeight_ValueChanged); + // + // convenientNameDataGridViewTextBoxColumn + // + this.convenientNameDataGridViewTextBoxColumn.DataPropertyName = "ConvenientName"; + this.convenientNameDataGridViewTextBoxColumn.HeaderText = "Name"; + this.convenientNameDataGridViewTextBoxColumn.Name = "convenientNameDataGridViewTextBoxColumn"; + this.convenientNameDataGridViewTextBoxColumn.ReadOnly = true; + // + // serverNameDataGridViewTextBoxColumn + // + this.serverNameDataGridViewTextBoxColumn.DataPropertyName = "ServerName"; + this.serverNameDataGridViewTextBoxColumn.HeaderText = "Server name"; + this.serverNameDataGridViewTextBoxColumn.Name = "serverNameDataGridViewTextBoxColumn"; + this.serverNameDataGridViewTextBoxColumn.ReadOnly = true; + // + // fileLocationDataGridViewTextBoxColumn + // + this.fileLocationDataGridViewTextBoxColumn.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill; + this.fileLocationDataGridViewTextBoxColumn.DataPropertyName = "FileLocation"; + this.fileLocationDataGridViewTextBoxColumn.HeaderText = "File location"; + this.fileLocationDataGridViewTextBoxColumn.Name = "fileLocationDataGridViewTextBoxColumn"; + this.fileLocationDataGridViewTextBoxColumn.ReadOnly = true; + // + // aTImportFileLocationBindingSource + // + this.aTImportFileLocationBindingSource.AllowNew = false; + this.aTImportFileLocationBindingSource.DataSource = typeof(ARKBreedingStats.settings.ATImportFileLocation); + // + // fileSelectorExtractedSaveFolder + // + this.fileSelectorExtractedSaveFolder.Dock = System.Windows.Forms.DockStyle.Fill; + this.fileSelectorExtractedSaveFolder.Link = "filename"; + this.fileSelectorExtractedSaveFolder.Location = new System.Drawing.Point(3, 16); + this.fileSelectorExtractedSaveFolder.Name = "fileSelectorExtractedSaveFolder"; + this.fileSelectorExtractedSaveFolder.Size = new System.Drawing.Size(724, 28); + this.fileSelectorExtractedSaveFolder.TabIndex = 0; + // + // nudImportLowerBoundTE + // + this.nudImportLowerBoundTE.DecimalPlaces = 2; + this.nudImportLowerBoundTE.ForeColor = System.Drawing.SystemColors.GrayText; + this.nudImportLowerBoundTE.Location = new System.Drawing.Point(227, 19); + this.nudImportLowerBoundTE.Name = "nudImportLowerBoundTE"; + this.nudImportLowerBoundTE.NeutralNumber = new decimal(new int[] { + 0, + 0, + 0, + 0}); + this.nudImportLowerBoundTE.Size = new System.Drawing.Size(64, 20); + this.nudImportLowerBoundTE.TabIndex = 1; + // // convenientNameDataGridViewTextBoxColumn1 // this.convenientNameDataGridViewTextBoxColumn1.DataPropertyName = "ConvenientName"; @@ -3410,153 +4017,17 @@ private void InitializeComponent() this.folderPathDataGridViewTextBoxColumn.Name = "folderPathDataGridViewTextBoxColumn"; this.folderPathDataGridViewTextBoxColumn.ReadOnly = true; // - // dgvExportFolderChange - // - this.dgvExportFolderChange.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None; - this.dgvExportFolderChange.HeaderText = "Change"; - this.dgvExportFolderChange.MinimumWidth = 50; - this.dgvExportFolderChange.Name = "dgvExportFolderChange"; - this.dgvExportFolderChange.ReadOnly = true; - this.dgvExportFolderChange.Text = "Change"; - this.dgvExportFolderChange.UseColumnTextForButtonValue = true; - this.dgvExportFolderChange.Width = 50; - // - // dgvExportFolderDelete - // - this.dgvExportFolderDelete.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None; - this.dgvExportFolderDelete.HeaderText = "Delete"; - this.dgvExportFolderDelete.MinimumWidth = 50; - this.dgvExportFolderDelete.Name = "dgvExportFolderDelete"; - this.dgvExportFolderDelete.ReadOnly = true; - this.dgvExportFolderDelete.Text = "Delete"; - this.dgvExportFolderDelete.UseColumnTextForButtonValue = true; - this.dgvExportFolderDelete.Width = 50; - // - // dgvExportMakeDefault - // - this.dgvExportMakeDefault.HeaderText = "Default"; - this.dgvExportMakeDefault.Name = "dgvExportMakeDefault"; - this.dgvExportMakeDefault.ReadOnly = true; - this.dgvExportMakeDefault.Text = "Make default"; - this.dgvExportMakeDefault.UseColumnTextForButtonValue = true; - // // aTExportFolderLocationsBindingSource // this.aTExportFolderLocationsBindingSource.AllowNew = false; this.aTExportFolderLocationsBindingSource.DataSource = typeof(ARKBreedingStats.settings.ATImportExportedFolderLocation); // - // btAddExportFolder - // - this.btAddExportFolder.Dock = System.Windows.Forms.DockStyle.Top; - this.btAddExportFolder.Location = new System.Drawing.Point(3, 16); - this.btAddExportFolder.Name = "btAddExportFolder"; - this.btAddExportFolder.Size = new System.Drawing.Size(730, 23); - this.btAddExportFolder.TabIndex = 0; - this.btAddExportFolder.Text = "Add Export Folder…"; - this.btAddExportFolder.UseVisualStyleBackColor = true; - this.btAddExportFolder.Click += new System.EventHandler(this.btAddExportFolder_Click); - // - // label25 - // - this.label25.AutoSize = true; - this.label25.Location = new System.Drawing.Point(3, 3); - this.label25.Name = "label25"; - this.label25.Size = new System.Drawing.Size(669, 91); - this.label25.TabIndex = 0; - this.label25.Text = resources.GetString("label25.Text"); - // - // tabPageTimers - // - this.tabPageTimers.Controls.Add(this.groupBox24); - this.tabPageTimers.Controls.Add(this.groupBox8); - this.tabPageTimers.Location = new System.Drawing.Point(4, 22); - this.tabPageTimers.Name = "tabPageTimers"; - this.tabPageTimers.Padding = new System.Windows.Forms.Padding(3); - this.tabPageTimers.Size = new System.Drawing.Size(750, 699); - this.tabPageTimers.TabIndex = 6; - this.tabPageTimers.Text = "Timers"; - this.tabPageTimers.UseVisualStyleBackColor = true; - // - // groupBox24 - // - this.groupBox24.Controls.Add(this.cbKeepExpiredTimersInOverlay); - this.groupBox24.Controls.Add(this.cbDeleteExpiredTimersOnSaving); - this.groupBox24.Controls.Add(this.cbTimersInOverlayAutomatically); - this.groupBox24.Location = new System.Drawing.Point(8, 233); - this.groupBox24.Name = "groupBox24"; - this.groupBox24.Size = new System.Drawing.Size(413, 90); - this.groupBox24.TabIndex = 1; - this.groupBox24.TabStop = false; - this.groupBox24.Text = "Timers"; - // - // cbKeepExpiredTimersInOverlay - // - this.cbKeepExpiredTimersInOverlay.AutoSize = true; - this.cbKeepExpiredTimersInOverlay.Location = new System.Drawing.Point(6, 42); - this.cbKeepExpiredTimersInOverlay.Name = "cbKeepExpiredTimersInOverlay"; - this.cbKeepExpiredTimersInOverlay.Size = new System.Drawing.Size(166, 17); - this.cbKeepExpiredTimersInOverlay.TabIndex = 1; - this.cbKeepExpiredTimersInOverlay.Text = "Keep expired timers in overlay"; - this.cbKeepExpiredTimersInOverlay.UseVisualStyleBackColor = true; - // - // cbDeleteExpiredTimersOnSaving - // - this.cbDeleteExpiredTimersOnSaving.AutoSize = true; - this.cbDeleteExpiredTimersOnSaving.Location = new System.Drawing.Point(6, 65); - this.cbDeleteExpiredTimersOnSaving.Name = "cbDeleteExpiredTimersOnSaving"; - this.cbDeleteExpiredTimersOnSaving.Size = new System.Drawing.Size(217, 17); - this.cbDeleteExpiredTimersOnSaving.TabIndex = 2; - this.cbDeleteExpiredTimersOnSaving.Text = "Delete expired timers when saving library"; - this.cbDeleteExpiredTimersOnSaving.UseVisualStyleBackColor = true; - // - // cbTimersInOverlayAutomatically - // - this.cbTimersInOverlayAutomatically.AutoSize = true; - this.cbTimersInOverlayAutomatically.Location = new System.Drawing.Point(6, 19); - this.cbTimersInOverlayAutomatically.Name = "cbTimersInOverlayAutomatically"; - this.cbTimersInOverlayAutomatically.Size = new System.Drawing.Size(202, 17); - this.cbTimersInOverlayAutomatically.TabIndex = 0; - this.cbTimersInOverlayAutomatically.Text = "Display timers in overlay automatically"; - this.cbTimersInOverlayAutomatically.UseVisualStyleBackColor = true; - // - // groupBox8 - // - this.groupBox8.Controls.Add(this.label22); - this.groupBox8.Controls.Add(this.tbPlayAlarmsSeconds); - this.groupBox8.Controls.Add(this.customSCCustom); - this.groupBox8.Controls.Add(this.customSCWakeup); - this.groupBox8.Controls.Add(this.customSCBirth); - this.groupBox8.Controls.Add(this.customSCStarving); - this.groupBox8.Controls.Add(this.label20); - this.groupBox8.Location = new System.Drawing.Point(8, 6); - this.groupBox8.Name = "groupBox8"; - this.groupBox8.Size = new System.Drawing.Size(413, 221); - this.groupBox8.TabIndex = 0; - this.groupBox8.TabStop = false; - this.groupBox8.Text = "Timer Sounds"; - // - // label22 - // - this.label22.Location = new System.Drawing.Point(6, 171); - this.label22.Name = "label22"; - this.label22.Size = new System.Drawing.Size(255, 66); - this.label22.TabIndex = 5; - this.label22.Text = "List of seconds the alarms play before they reach 0.\r\nE.g. \"60,0\" to play the ala" + - "rm at 60 s and at 0 s. Use commas to separate the values."; - // - // tbPlayAlarmsSeconds - // - this.tbPlayAlarmsSeconds.Location = new System.Drawing.Point(267, 168); - this.tbPlayAlarmsSeconds.Name = "tbPlayAlarmsSeconds"; - this.tbPlayAlarmsSeconds.Size = new System.Drawing.Size(140, 20); - this.tbPlayAlarmsSeconds.TabIndex = 6; - // // customSCCustom // this.customSCCustom.Location = new System.Drawing.Point(6, 139); this.customSCCustom.Name = "customSCCustom"; this.customSCCustom.Size = new System.Drawing.Size(401, 23); - this.customSCCustom.SoundFile = null; + this.customSCCustom.SoundFile = ""; this.customSCCustom.TabIndex = 4; // // customSCWakeup @@ -3564,7 +4035,7 @@ private void InitializeComponent() this.customSCWakeup.Location = new System.Drawing.Point(6, 81); this.customSCWakeup.Name = "customSCWakeup"; this.customSCWakeup.Size = new System.Drawing.Size(401, 23); - this.customSCWakeup.SoundFile = ""; + this.customSCWakeup.SoundFile = null; this.customSCWakeup.TabIndex = 2; // // customSCBirth @@ -3572,7 +4043,7 @@ private void InitializeComponent() this.customSCBirth.Location = new System.Drawing.Point(6, 110); this.customSCBirth.Name = "customSCBirth"; this.customSCBirth.Size = new System.Drawing.Size(401, 23); - this.customSCBirth.SoundFile = ""; + this.customSCBirth.SoundFile = null; this.customSCBirth.TabIndex = 3; // // customSCStarving @@ -3580,59 +4051,9 @@ private void InitializeComponent() this.customSCStarving.Location = new System.Drawing.Point(6, 52); this.customSCStarving.Name = "customSCStarving"; this.customSCStarving.Size = new System.Drawing.Size(401, 23); - this.customSCStarving.SoundFile = null; + this.customSCStarving.SoundFile = ""; this.customSCStarving.TabIndex = 1; // - // label20 - // - this.label20.Location = new System.Drawing.Point(6, 16); - this.label20.Name = "label20"; - this.label20.Size = new System.Drawing.Size(316, 33); - this.label20.TabIndex = 0; - this.label20.Text = "Only PCM-WAV-files are supported. The sound will play 1 min before the timer runs" + - " out."; - // - // tabPageOverlay - // - this.tabPageOverlay.Controls.Add(this.groupBox10); - this.tabPageOverlay.Location = new System.Drawing.Point(4, 22); - this.tabPageOverlay.Name = "tabPageOverlay"; - this.tabPageOverlay.Padding = new System.Windows.Forms.Padding(3); - this.tabPageOverlay.Size = new System.Drawing.Size(750, 699); - this.tabPageOverlay.TabIndex = 5; - this.tabPageOverlay.Text = "Overlay"; - this.tabPageOverlay.UseVisualStyleBackColor = true; - // - // groupBox10 - // - this.groupBox10.Controls.Add(this.NudOverlayRelativeFontSize); - this.groupBox10.Controls.Add(this.label65); - this.groupBox10.Controls.Add(this.CbOverlayDisplayInheritance); - this.groupBox10.Controls.Add(this.label45); - this.groupBox10.Controls.Add(this.pCustomOverlayLocation); - this.groupBox10.Controls.Add(this.cbCustomOverlayLocation); - this.groupBox10.Controls.Add(this.label38); - this.groupBox10.Controls.Add(this.nudOverlayInfoPosY); - this.groupBox10.Controls.Add(this.label39); - this.groupBox10.Controls.Add(this.nudOverlayInfoPosDFR); - this.groupBox10.Controls.Add(this.label40); - this.groupBox10.Controls.Add(this.label37); - this.groupBox10.Controls.Add(this.nudOverlayTimerPosY); - this.groupBox10.Controls.Add(this.label36); - this.groupBox10.Controls.Add(this.nudOverlayTimerPosX); - this.groupBox10.Controls.Add(this.label35); - this.groupBox10.Controls.Add(this.cbInventoryCheck); - this.groupBox10.Controls.Add(this.label21); - this.groupBox10.Controls.Add(this.nudOverlayInfoDuration); - this.groupBox10.Controls.Add(this.chkbSpeechRecognition); - this.groupBox10.Controls.Add(this.label66); - this.groupBox10.Location = new System.Drawing.Point(8, 6); - this.groupBox10.Name = "groupBox10"; - this.groupBox10.Size = new System.Drawing.Size(734, 307); - this.groupBox10.TabIndex = 0; - this.groupBox10.TabStop = false; - this.groupBox10.Text = "Overlay"; - // // NudOverlayRelativeFontSize // this.NudOverlayRelativeFontSize.DecimalPlaces = 2; @@ -3647,66 +4068,25 @@ private void InitializeComponent() 1000, 0, 0, - 0}); - this.NudOverlayRelativeFontSize.Minimum = new decimal(new int[] { - 1, - 0, - 0, - 131072}); - this.NudOverlayRelativeFontSize.Name = "NudOverlayRelativeFontSize"; - this.NudOverlayRelativeFontSize.NeutralNumber = new decimal(new int[] { - 0, - 0, - 0, - 0}); - this.NudOverlayRelativeFontSize.Size = new System.Drawing.Size(57, 20); - this.NudOverlayRelativeFontSize.TabIndex = 4; - this.NudOverlayRelativeFontSize.Value = new decimal(new int[] { - 1, - 0, - 0, - 0}); - // - // label65 - // - this.label65.AutoSize = true; - this.label65.Location = new System.Drawing.Point(6, 252); - this.label65.Name = "label65"; - this.label65.Size = new System.Drawing.Size(141, 13); - this.label65.TabIndex = 18; - this.label65.Text = "Relative font size (default: 1)"; - // - // CbOverlayDisplayInheritance - // - this.CbOverlayDisplayInheritance.AutoSize = true; - this.CbOverlayDisplayInheritance.Location = new System.Drawing.Point(6, 284); - this.CbOverlayDisplayInheritance.Name = "CbOverlayDisplayInheritance"; - this.CbOverlayDisplayInheritance.Size = new System.Drawing.Size(203, 17); - this.CbOverlayDisplayInheritance.TabIndex = 17; - this.CbOverlayDisplayInheritance.Text = "Display creature inheritance on import"; - this.CbOverlayDisplayInheritance.UseVisualStyleBackColor = true; - // - // label45 - // - this.label45.AutoSize = true; - this.label45.Location = new System.Drawing.Point(38, 25); - this.label45.Name = "label45"; - this.label45.Size = new System.Drawing.Size(495, 13); - this.label45.TabIndex = 0; - this.label45.Text = "For the overlay to work, you need to set the window-mode \"Fullscreen-Windowed\" in" + - " the game settings."; - // - // pCustomOverlayLocation - // - this.pCustomOverlayLocation.Controls.Add(this.nudCustomOverlayLocX); - this.pCustomOverlayLocation.Controls.Add(this.label42); - this.pCustomOverlayLocation.Controls.Add(this.label43); - this.pCustomOverlayLocation.Controls.Add(this.nudCustomOverlayLocY); - this.pCustomOverlayLocation.Enabled = false; - this.pCustomOverlayLocation.Location = new System.Drawing.Point(195, 217); - this.pCustomOverlayLocation.Name = "pCustomOverlayLocation"; - this.pCustomOverlayLocation.Size = new System.Drawing.Size(201, 28); - this.pCustomOverlayLocation.TabIndex = 16; + 0}); + this.NudOverlayRelativeFontSize.Minimum = new decimal(new int[] { + 1, + 0, + 0, + 131072}); + this.NudOverlayRelativeFontSize.Name = "NudOverlayRelativeFontSize"; + this.NudOverlayRelativeFontSize.NeutralNumber = new decimal(new int[] { + 0, + 0, + 0, + 0}); + this.NudOverlayRelativeFontSize.Size = new System.Drawing.Size(57, 20); + this.NudOverlayRelativeFontSize.TabIndex = 4; + this.NudOverlayRelativeFontSize.Value = new decimal(new int[] { + 1, + 0, + 0, + 0}); // // nudCustomOverlayLocX // @@ -3731,24 +4111,6 @@ private void InitializeComponent() this.nudCustomOverlayLocX.Size = new System.Drawing.Size(57, 20); this.nudCustomOverlayLocX.TabIndex = 1; // - // label42 - // - this.label42.AutoSize = true; - this.label42.Location = new System.Drawing.Point(105, 5); - this.label42.Name = "label42"; - this.label42.Size = new System.Drawing.Size(14, 13); - this.label42.TabIndex = 2; - this.label42.Text = "Y"; - // - // label43 - // - this.label43.AutoSize = true; - this.label43.Location = new System.Drawing.Point(4, 5); - this.label43.Name = "label43"; - this.label43.Size = new System.Drawing.Size(14, 13); - this.label43.TabIndex = 0; - this.label43.Text = "X"; - // // nudCustomOverlayLocY // this.nudCustomOverlayLocY.ForeColor = System.Drawing.SystemColors.GrayText; @@ -3773,26 +4135,6 @@ private void InitializeComponent() this.nudCustomOverlayLocY.TabIndex = 3; this.nudCustomOverlayLocY.ThousandsSeparator = true; // - // cbCustomOverlayLocation - // - this.cbCustomOverlayLocation.AutoSize = true; - this.cbCustomOverlayLocation.Location = new System.Drawing.Point(6, 221); - this.cbCustomOverlayLocation.Name = "cbCustomOverlayLocation"; - this.cbCustomOverlayLocation.Size = new System.Drawing.Size(138, 17); - this.cbCustomOverlayLocation.TabIndex = 15; - this.cbCustomOverlayLocation.Text = "Custom overlay location"; - this.cbCustomOverlayLocation.UseVisualStyleBackColor = true; - this.cbCustomOverlayLocation.CheckedChanged += new System.EventHandler(this.cbCustomOverlayLocation_CheckedChanged); - // - // label38 - // - this.label38.AutoSize = true; - this.label38.Location = new System.Drawing.Point(120, 187); - this.label38.Name = "label38"; - this.label38.Size = new System.Drawing.Size(93, 13); - this.label38.TabIndex = 11; - this.label38.Text = "distance from right"; - // // nudOverlayInfoPosY // this.nudOverlayInfoPosY.ForeColor = System.Drawing.SystemColors.GrayText; @@ -3811,15 +4153,6 @@ private void InitializeComponent() this.nudOverlayInfoPosY.Size = new System.Drawing.Size(57, 20); this.nudOverlayInfoPosY.TabIndex = 14; // - // label39 - // - this.label39.AutoSize = true; - this.label39.Location = new System.Drawing.Point(300, 187); - this.label39.Name = "label39"; - this.label39.Size = new System.Drawing.Size(14, 13); - this.label39.TabIndex = 13; - this.label39.Text = "Y"; - // // nudOverlayInfoPosDFR // this.nudOverlayInfoPosDFR.ForeColor = System.Drawing.SystemColors.GrayText; @@ -3838,24 +4171,6 @@ private void InitializeComponent() this.nudOverlayInfoPosDFR.Size = new System.Drawing.Size(57, 20); this.nudOverlayInfoPosDFR.TabIndex = 12; // - // label40 - // - this.label40.AutoSize = true; - this.label40.Location = new System.Drawing.Point(6, 187); - this.label40.Name = "label40"; - this.label40.Size = new System.Drawing.Size(94, 13); - this.label40.TabIndex = 10; - this.label40.Text = "Position of the info"; - // - // label37 - // - this.label37.AutoSize = true; - this.label37.Location = new System.Drawing.Point(300, 161); - this.label37.Name = "label37"; - this.label37.Size = new System.Drawing.Size(14, 13); - this.label37.TabIndex = 8; - this.label37.Text = "Y"; - // // nudOverlayTimerPosY // this.nudOverlayTimerPosY.ForeColor = System.Drawing.SystemColors.GrayText; @@ -3874,190 +4189,46 @@ private void InitializeComponent() this.nudOverlayTimerPosY.Size = new System.Drawing.Size(57, 20); this.nudOverlayTimerPosY.TabIndex = 9; // - // label36 - // - this.label36.AutoSize = true; - this.label36.Location = new System.Drawing.Point(199, 161); - this.label36.Name = "label36"; - this.label36.Size = new System.Drawing.Size(14, 13); - this.label36.TabIndex = 6; - this.label36.Text = "X"; - // // nudOverlayTimerPosX // - this.nudOverlayTimerPosX.ForeColor = System.Drawing.SystemColors.GrayText; - this.nudOverlayTimerPosX.Location = new System.Drawing.Point(219, 159); - this.nudOverlayTimerPosX.Maximum = new decimal(new int[] { - 10000, - 0, - 0, - 0}); - this.nudOverlayTimerPosX.Name = "nudOverlayTimerPosX"; - this.nudOverlayTimerPosX.NeutralNumber = new decimal(new int[] { - 0, - 0, - 0, - 0}); - this.nudOverlayTimerPosX.Size = new System.Drawing.Size(57, 20); - this.nudOverlayTimerPosX.TabIndex = 7; - // - // label35 - // - this.label35.AutoSize = true; - this.label35.Location = new System.Drawing.Point(6, 161); - this.label35.Name = "label35"; - this.label35.Size = new System.Drawing.Size(104, 13); - this.label35.TabIndex = 5; - this.label35.Text = "Position of the timers"; - // - // cbInventoryCheck - // - this.cbInventoryCheck.Location = new System.Drawing.Point(6, 116); - this.cbInventoryCheck.Name = "cbInventoryCheck"; - this.cbInventoryCheck.Size = new System.Drawing.Size(305, 35); - this.cbInventoryCheck.TabIndex = 4; - this.cbInventoryCheck.Text = "Automatically extract inventory levels (needs working OCR and enabled overlay)"; - this.cbInventoryCheck.UseVisualStyleBackColor = true; - // - // label21 - // - this.label21.AutoSize = true; - this.label21.Location = new System.Drawing.Point(6, 84); - this.label21.Name = "label21"; - this.label21.Size = new System.Drawing.Size(138, 13); - this.label21.TabIndex = 2; - this.label21.Text = "Display info in overlay for [s]"; - // - // nudOverlayInfoDuration - // - this.nudOverlayInfoDuration.ForeColor = System.Drawing.SystemColors.WindowText; - this.nudOverlayInfoDuration.Location = new System.Drawing.Point(150, 82); - this.nudOverlayInfoDuration.Minimum = new decimal(new int[] { - 1, - 0, - 0, - 0}); - this.nudOverlayInfoDuration.Name = "nudOverlayInfoDuration"; - this.nudOverlayInfoDuration.NeutralNumber = new decimal(new int[] { - 0, - 0, - 0, - 0}); - this.nudOverlayInfoDuration.Size = new System.Drawing.Size(57, 20); - this.nudOverlayInfoDuration.TabIndex = 3; - this.nudOverlayInfoDuration.Value = new decimal(new int[] { - 1, - 0, - 0, - 0}); - // - // chkbSpeechRecognition - // - this.chkbSpeechRecognition.AutoSize = true; - this.chkbSpeechRecognition.Location = new System.Drawing.Point(6, 59); - this.chkbSpeechRecognition.Name = "chkbSpeechRecognition"; - this.chkbSpeechRecognition.Size = new System.Drawing.Size(338, 17); - this.chkbSpeechRecognition.TabIndex = 1; - this.chkbSpeechRecognition.Text = "Speech Recognition (displays taming info, e.g. say \"Rex level 30\")"; - this.chkbSpeechRecognition.UseVisualStyleBackColor = true; - // - // label66 - // - this.label66.AutoSize = true; - this.label66.Font = new System.Drawing.Font("Microsoft Sans Serif", 16F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.label66.Location = new System.Drawing.Point(6, 16); - this.label66.Name = "label66"; - this.label66.Size = new System.Drawing.Size(37, 26); - this.label66.TabIndex = 19; - this.label66.Text = "💡"; - // - // tabPageOCR - // - this.tabPageOCR.AutoScroll = true; - this.tabPageOCR.Controls.Add(this.groupBox1); - this.tabPageOCR.Location = new System.Drawing.Point(4, 22); - this.tabPageOCR.Name = "tabPageOCR"; - this.tabPageOCR.Padding = new System.Windows.Forms.Padding(3); - this.tabPageOCR.Size = new System.Drawing.Size(750, 699); - this.tabPageOCR.TabIndex = 4; - this.tabPageOCR.Text = "OCR"; - this.tabPageOCR.UseVisualStyleBackColor = true; - // - // groupBox1 - // - this.groupBox1.Controls.Add(this.label62); - this.groupBox1.Controls.Add(this.label61); - this.groupBox1.Controls.Add(this.label60); - this.groupBox1.Controls.Add(this.label59); - this.groupBox1.Controls.Add(this.label58); - this.groupBox1.Controls.Add(this.NudOCRClipboardCropHeight); - this.groupBox1.Controls.Add(this.NudOCRClipboardCropWidth); - this.groupBox1.Controls.Add(this.NudOCRClipboardCropTop); - this.groupBox1.Controls.Add(this.NudOCRClipboardCropLeft); - this.groupBox1.Controls.Add(this.CbOCRFromClipboard); - this.groupBox1.Controls.Add(this.button1); - this.groupBox1.Controls.Add(this.cbOCRIgnoreImprintValue); - this.groupBox1.Controls.Add(this.cbShowOCRButton); - this.groupBox1.Controls.Add(this.label23); - this.groupBox1.Controls.Add(this.nudWaitBeforeScreenCapture); - this.groupBox1.Controls.Add(this.label19); - this.groupBox1.Controls.Add(this.nudWhiteThreshold); - this.groupBox1.Controls.Add(this.tbOCRCaptureApp); - this.groupBox1.Controls.Add(this.label4); - this.groupBox1.Controls.Add(this.cbbOCRApp); - this.groupBox1.Controls.Add(this.label1); - this.groupBox1.Location = new System.Drawing.Point(6, 6); - this.groupBox1.Name = "groupBox1"; - this.groupBox1.Size = new System.Drawing.Size(734, 352); - this.groupBox1.TabIndex = 0; - this.groupBox1.TabStop = false; - this.groupBox1.Text = "OCR"; - // - // label62 - // - this.label62.AutoSize = true; - this.label62.Location = new System.Drawing.Point(34, 211); - this.label62.Name = "label62"; - this.label62.Size = new System.Drawing.Size(616, 13); - this.label62.TabIndex = 20; - this.label62.Text = "Set an area of the clipboard screenshot to be used for the actual OCR. Set all fi" + - "elds to 0 to disable and use the whole screenshot."; - // - // label61 - // - this.label61.AutoSize = true; - this.label61.Location = new System.Drawing.Point(151, 229); - this.label61.Name = "label61"; - this.label61.Size = new System.Drawing.Size(26, 13); - this.label61.TabIndex = 19; - this.label61.Text = "Top"; - // - // label60 - // - this.label60.AutoSize = true; - this.label60.Location = new System.Drawing.Point(258, 229); - this.label60.Name = "label60"; - this.label60.Size = new System.Drawing.Size(35, 13); - this.label60.TabIndex = 18; - this.label60.Text = "Width"; - // - // label59 - // - this.label59.AutoSize = true; - this.label59.Location = new System.Drawing.Point(374, 229); - this.label59.Name = "label59"; - this.label59.Size = new System.Drawing.Size(38, 13); - this.label59.TabIndex = 17; - this.label59.Text = "Height"; - // - // label58 + this.nudOverlayTimerPosX.ForeColor = System.Drawing.SystemColors.GrayText; + this.nudOverlayTimerPosX.Location = new System.Drawing.Point(219, 159); + this.nudOverlayTimerPosX.Maximum = new decimal(new int[] { + 10000, + 0, + 0, + 0}); + this.nudOverlayTimerPosX.Name = "nudOverlayTimerPosX"; + this.nudOverlayTimerPosX.NeutralNumber = new decimal(new int[] { + 0, + 0, + 0, + 0}); + this.nudOverlayTimerPosX.Size = new System.Drawing.Size(57, 20); + this.nudOverlayTimerPosX.TabIndex = 7; // - this.label58.AutoSize = true; - this.label58.Location = new System.Drawing.Point(45, 229); - this.label58.Name = "label58"; - this.label58.Size = new System.Drawing.Size(25, 13); - this.label58.TabIndex = 16; - this.label58.Text = "Left"; + // nudOverlayInfoDuration + // + this.nudOverlayInfoDuration.ForeColor = System.Drawing.SystemColors.WindowText; + this.nudOverlayInfoDuration.Location = new System.Drawing.Point(150, 82); + this.nudOverlayInfoDuration.Minimum = new decimal(new int[] { + 1, + 0, + 0, + 0}); + this.nudOverlayInfoDuration.Name = "nudOverlayInfoDuration"; + this.nudOverlayInfoDuration.NeutralNumber = new decimal(new int[] { + 0, + 0, + 0, + 0}); + this.nudOverlayInfoDuration.Size = new System.Drawing.Size(57, 20); + this.nudOverlayInfoDuration.TabIndex = 3; + this.nudOverlayInfoDuration.Value = new decimal(new int[] { + 1, + 0, + 0, + 0}); // // NudOCRClipboardCropHeight // @@ -4151,55 +4322,6 @@ private void InitializeComponent() this.NudOCRClipboardCropLeft.Size = new System.Drawing.Size(69, 20); this.NudOCRClipboardCropLeft.TabIndex = 12; // - // CbOCRFromClipboard - // - this.CbOCRFromClipboard.AutoSize = true; - this.CbOCRFromClipboard.Location = new System.Drawing.Point(6, 191); - this.CbOCRFromClipboard.Name = "CbOCRFromClipboard"; - this.CbOCRFromClipboard.Size = new System.Drawing.Size(506, 17); - this.CbOCRFromClipboard.TabIndex = 11; - this.CbOCRFromClipboard.Text = "Use image in clipboard for the OCR. You can press the Print-key to copy a screens" + - "hot to the cliphoard"; - this.CbOCRFromClipboard.UseVisualStyleBackColor = true; - // - // button1 - // - this.button1.Location = new System.Drawing.Point(6, 292); - this.button1.Name = "button1"; - this.button1.Size = new System.Drawing.Size(139, 23); - this.button1.TabIndex = 8; - this.button1.Text = "ShooterGame (default)"; - this.button1.UseVisualStyleBackColor = true; - this.button1.Click += new System.EventHandler(this.button1_Click); - // - // cbOCRIgnoreImprintValue - // - this.cbOCRIgnoreImprintValue.AutoSize = true; - this.cbOCRIgnoreImprintValue.Location = new System.Drawing.Point(6, 168); - this.cbOCRIgnoreImprintValue.Name = "cbOCRIgnoreImprintValue"; - this.cbOCRIgnoreImprintValue.Size = new System.Drawing.Size(287, 17); - this.cbOCRIgnoreImprintValue.TabIndex = 6; - this.cbOCRIgnoreImprintValue.Text = "Don\'t read imprinting value (can be overlapped by chat)"; - this.cbOCRIgnoreImprintValue.UseVisualStyleBackColor = true; - // - // cbShowOCRButton - // - this.cbShowOCRButton.AutoSize = true; - this.cbShowOCRButton.Location = new System.Drawing.Point(6, 96); - this.cbShowOCRButton.Name = "cbShowOCRButton"; - this.cbShowOCRButton.Size = new System.Drawing.Size(228, 17); - this.cbShowOCRButton.TabIndex = 1; - this.cbShowOCRButton.Text = "Show OCR-Button instead of Import-Button"; - this.cbShowOCRButton.UseVisualStyleBackColor = true; - // - // label23 - // - this.label23.Location = new System.Drawing.Point(6, 145); - this.label23.Name = "label23"; - this.label23.Size = new System.Drawing.Size(296, 20); - this.label23.TabIndex = 4; - this.label23.Text = "Wait before screencapture (time to tab into game) in ms"; - // // nudWaitBeforeScreenCapture // this.nudWaitBeforeScreenCapture.ForeColor = System.Drawing.SystemColors.GrayText; @@ -4218,14 +4340,6 @@ private void InitializeComponent() this.nudWaitBeforeScreenCapture.Size = new System.Drawing.Size(72, 20); this.nudWaitBeforeScreenCapture.TabIndex = 5; // - // label19 - // - this.label19.Location = new System.Drawing.Point(6, 119); - this.label19.Name = "label19"; - this.label19.Size = new System.Drawing.Size(296, 20); - this.label19.TabIndex = 2; - this.label19.Text = "White Threshold (increase if you increased gamma ingame)"; - // // nudWhiteThreshold // this.nudWhiteThreshold.ForeColor = System.Drawing.SystemColors.GrayText; @@ -4244,82 +4358,6 @@ private void InitializeComponent() this.nudWhiteThreshold.Size = new System.Drawing.Size(72, 20); this.nudWhiteThreshold.TabIndex = 3; // - // tbOCRCaptureApp - // - this.tbOCRCaptureApp.Location = new System.Drawing.Point(151, 294); - this.tbOCRCaptureApp.Name = "tbOCRCaptureApp"; - this.tbOCRCaptureApp.Size = new System.Drawing.Size(577, 20); - this.tbOCRCaptureApp.TabIndex = 9; - // - // label4 - // - this.label4.AutoSize = true; - this.label4.Location = new System.Drawing.Point(6, 276); - this.label4.Name = "label4"; - this.label4.Size = new System.Drawing.Size(289, 13); - this.label4.TabIndex = 7; - this.label4.Text = "Capture from (ShooterGame is default for the Steam-version)"; - // - // cbbOCRApp - // - this.cbbOCRApp.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; - this.cbbOCRApp.FormattingEnabled = true; - this.cbbOCRApp.Location = new System.Drawing.Point(6, 321); - this.cbbOCRApp.Name = "cbbOCRApp"; - this.cbbOCRApp.Size = new System.Drawing.Size(722, 21); - this.cbbOCRApp.TabIndex = 10; - this.cbbOCRApp.SelectedIndexChanged += new System.EventHandler(this.cbOCRApp_SelectedIndexChanged); - // - // label1 - // - this.label1.Location = new System.Drawing.Point(6, 16); - this.label1.Name = "label1"; - this.label1.Size = new System.Drawing.Size(722, 77); - this.label1.TabIndex = 0; - this.label1.Text = resources.GetString("label1.Text"); - // - // panel1 - // - this.panel1.Controls.Add(this.buttonCancel); - this.panel1.Controls.Add(this.buttonOK); - this.panel1.Dock = System.Windows.Forms.DockStyle.Bottom; - this.panel1.Location = new System.Drawing.Point(0, 725); - this.panel1.Name = "panel1"; - this.panel1.Size = new System.Drawing.Size(758, 30); - this.panel1.TabIndex = 12; - // - // panel3 - // - this.panel3.Controls.Add(this.RbGameAsa); - this.panel3.Controls.Add(this.RbGameAse); - this.panel3.Location = new System.Drawing.Point(154, 19); - this.panel3.Name = "panel3"; - this.panel3.Size = new System.Drawing.Size(117, 26); - this.panel3.TabIndex = 16; - // - // RbGameAse - // - this.RbGameAse.AutoSize = true; - this.RbGameAse.Checked = true; - this.RbGameAse.Location = new System.Drawing.Point(3, 3); - this.RbGameAse.Name = "RbGameAse"; - this.RbGameAse.Size = new System.Drawing.Size(46, 17); - this.RbGameAse.TabIndex = 0; - this.RbGameAse.TabStop = true; - this.RbGameAse.Text = "ASE"; - this.RbGameAse.UseVisualStyleBackColor = true; - // - // RbGameAsa - // - this.RbGameAsa.AutoSize = true; - this.RbGameAsa.Location = new System.Drawing.Point(55, 3); - this.RbGameAsa.Name = "RbGameAsa"; - this.RbGameAsa.Size = new System.Drawing.Size(46, 17); - this.RbGameAsa.TabIndex = 1; - this.RbGameAsa.TabStop = true; - this.RbGameAsa.Text = "ASA"; - this.RbGameAsa.UseVisualStyleBackColor = true; - // // Settings // this.AcceptButton = this.buttonOK; @@ -4340,59 +4378,28 @@ private void InitializeComponent() this.groupBoxMultiplier.PerformLayout(); this.groupBox2.ResumeLayout(false); this.groupBox2.PerformLayout(); - ((System.ComponentModel.ISupportInitialize)(this.nudTamedDinoCharacterFoodDrain)).EndInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudTamedDinoCharacterFoodDrainEvent)).EndInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudBabyImprintAmountEvent)).EndInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudBabyImprintAmount)).EndInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudMatingSpeed)).EndInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudBabyFoodConsumptionSpeedEvent)).EndInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudMatingIntervalEvent)).EndInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudBabyCuddleIntervalEvent)).EndInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudBabyMatureSpeedEvent)).EndInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudEggHatchSpeedEvent)).EndInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudBabyFoodConsumptionSpeed)).EndInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudMatingInterval)).EndInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudBabyCuddleInterval)).EndInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudBabyMatureSpeed)).EndInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudBabyImprintingStatScale)).EndInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudEggHatchSpeed)).EndInit(); this.groupBox3.ResumeLayout(false); this.groupBox3.PerformLayout(); - ((System.ComponentModel.ISupportInitialize)(this.nudMaxServerLevel)).EndInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudMaxGraphLevel)).EndInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudMaxWildLevels)).EndInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudMaxDomLevels)).EndInit(); this.groupBox4.ResumeLayout(false); this.groupBox4.PerformLayout(); ((System.ComponentModel.ISupportInitialize)(this.pbChartOddRange)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.pbChartEvenRange)).EndInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudChartLevelOddMax)).EndInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudChartLevelOddMin)).EndInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudChartLevelEvenMax)).EndInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudChartLevelEvenMin)).EndInit(); - ((System.ComponentModel.ISupportInitialize)(this.numericUpDownMaxBreedingSug)).EndInit(); this.groupBox5.ResumeLayout(false); this.groupBox5.PerformLayout(); - ((System.ComponentModel.ISupportInitialize)(this.nudDinoCharacterFoodDrainEvent)).EndInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudTamingSpeedEvent)).EndInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudDinoCharacterFoodDrain)).EndInit(); - ((System.ComponentModel.ISupportInitialize)(this.nudTamingSpeed)).EndInit(); this.groupBox6.ResumeLayout(false); this.groupBox6.PerformLayout(); - ((System.ComponentModel.ISupportInitialize)(this.NudWaitBeforeAutoLoad)).EndInit(); - ((System.ComponentModel.ISupportInitialize)(this.NudKeepBackupFilesCount)).EndInit(); - ((System.ComponentModel.ISupportInitialize)(this.NudBackupEveryMinutes)).EndInit(); this.groupBox7.ResumeLayout(false); this.groupBox7.PerformLayout(); this.tabControlSettings.ResumeLayout(false); this.tabPageMultipliers.ResumeLayout(false); this.tabPageMultipliers.PerformLayout(); + this.panel3.ResumeLayout(false); + this.panel3.PerformLayout(); this.groupBox29.ResumeLayout(false); this.groupBox29.PerformLayout(); this.groupBox18.ResumeLayout(false); this.groupBox11.ResumeLayout(false); this.groupBox11.PerformLayout(); - ((System.ComponentModel.ISupportInitialize)(this.nudWildLevelStep)).EndInit(); this.tabPageGeneral.ResumeLayout(false); this.groupBox31.ResumeLayout(false); this.groupBox31.PerformLayout(); @@ -4402,12 +4409,10 @@ private void InitializeComponent() this.groupBox16.ResumeLayout(false); this.GbSpecies.ResumeLayout(false); this.GbSpecies.PerformLayout(); - ((System.ComponentModel.ISupportInitialize)(this.NudSpeciesSelectorCountLastUsed)).EndInit(); this.groupBox26.ResumeLayout(false); this.groupBox26.PerformLayout(); this.groupBox25.ResumeLayout(false); this.groupBox25.PerformLayout(); - ((System.ComponentModel.ISupportInitialize)(this.nudDefaultFontSize)).EndInit(); this.groupBox20.ResumeLayout(false); this.groupBox20.PerformLayout(); this.groupBox17.ResumeLayout(false); @@ -4419,7 +4424,6 @@ private void InitializeComponent() ((System.ComponentModel.ISupportInitialize)(this.PbInfoGraphicPreview)).EndInit(); this.groupBox32.ResumeLayout(false); this.groupBox32.PerformLayout(); - ((System.ComponentModel.ISupportInitialize)(this.nudInfoGraphicHeight)).EndInit(); this.groupBox28.ResumeLayout(false); this.groupBox28.PerformLayout(); this.tabPageImportSavegame.ResumeLayout(false); @@ -4428,7 +4432,6 @@ private void InitializeComponent() this.groupBox15.ResumeLayout(false); this.groupBox15.PerformLayout(); ((System.ComponentModel.ISupportInitialize)(this.dataGridView_FileLocations)).EndInit(); - ((System.ComponentModel.ISupportInitialize)(this.aTImportFileLocationBindingSource)).EndInit(); this.groupBox14.ResumeLayout(false); this.tabPageImportExported.ResumeLayout(false); this.tabPageImportExported.PerformLayout(); @@ -4436,7 +4439,6 @@ private void InitializeComponent() this.groupBox27.PerformLayout(); this.groupBox23.ResumeLayout(false); this.groupBox23.PerformLayout(); - ((System.ComponentModel.ISupportInitialize)(this.nudImportLowerBoundTE)).EndInit(); this.groupBox22.ResumeLayout(false); this.groupBox22.PerformLayout(); this.panel2.ResumeLayout(false); @@ -4448,7 +4450,6 @@ private void InitializeComponent() ((System.ComponentModel.ISupportInitialize)(this.nudWarnImportMoreThan)).EndInit(); this.groupBox13.ResumeLayout(false); ((System.ComponentModel.ISupportInitialize)(this.dataGridViewExportFolders)).EndInit(); - ((System.ComponentModel.ISupportInitialize)(this.aTExportFolderLocationsBindingSource)).EndInit(); this.tabPageTimers.ResumeLayout(false); this.groupBox24.ResumeLayout(false); this.groupBox24.PerformLayout(); @@ -4457,9 +4458,52 @@ private void InitializeComponent() this.tabPageOverlay.ResumeLayout(false); this.groupBox10.ResumeLayout(false); this.groupBox10.PerformLayout(); - ((System.ComponentModel.ISupportInitialize)(this.NudOverlayRelativeFontSize)).EndInit(); this.pCustomOverlayLocation.ResumeLayout(false); this.pCustomOverlayLocation.PerformLayout(); + this.tabPageOCR.ResumeLayout(false); + this.groupBox1.ResumeLayout(false); + this.groupBox1.PerformLayout(); + this.panel1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.nudWildLevelStep)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudTamedDinoCharacterFoodDrain)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudTamedDinoCharacterFoodDrainEvent)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudBabyImprintAmountEvent)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudBabyImprintAmount)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudMatingSpeed)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudBabyFoodConsumptionSpeedEvent)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudMatingIntervalEvent)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudBabyCuddleIntervalEvent)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudBabyMatureSpeedEvent)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudEggHatchSpeedEvent)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudBabyFoodConsumptionSpeed)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudMatingInterval)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudBabyCuddleInterval)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudBabyMatureSpeed)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudBabyImprintingStatScale)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudEggHatchSpeed)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudMaxServerLevel)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudMaxGraphLevel)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudMaxWildLevels)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudMaxDomLevels)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudDinoCharacterFoodDrainEvent)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudTamingSpeedEvent)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudDinoCharacterFoodDrain)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudTamingSpeed)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.NudSpeciesSelectorCountLastUsed)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudDefaultFontSize)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudChartLevelOddMax)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudChartLevelOddMin)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudChartLevelEvenMax)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudChartLevelEvenMin)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.numericUpDownMaxBreedingSug)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.NudWaitBeforeAutoLoad)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.NudKeepBackupFilesCount)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.NudBackupEveryMinutes)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudInfoGraphicHeight)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.aTImportFileLocationBindingSource)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudImportLowerBoundTE)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.aTExportFolderLocationsBindingSource)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.NudOverlayRelativeFontSize)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.nudCustomOverlayLocX)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.nudCustomOverlayLocY)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.nudOverlayInfoPosY)).EndInit(); @@ -4467,18 +4511,12 @@ private void InitializeComponent() ((System.ComponentModel.ISupportInitialize)(this.nudOverlayTimerPosY)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.nudOverlayTimerPosX)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.nudOverlayInfoDuration)).EndInit(); - this.tabPageOCR.ResumeLayout(false); - this.groupBox1.ResumeLayout(false); - this.groupBox1.PerformLayout(); ((System.ComponentModel.ISupportInitialize)(this.NudOCRClipboardCropHeight)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.NudOCRClipboardCropWidth)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.NudOCRClipboardCropTop)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.NudOCRClipboardCropLeft)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.nudWaitBeforeScreenCapture)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.nudWhiteThreshold)).EndInit(); - this.panel1.ResumeLayout(false); - this.panel3.ResumeLayout(false); - this.panel3.PerformLayout(); this.ResumeLayout(false); } @@ -4647,7 +4685,7 @@ private void InitializeComponent() private System.Windows.Forms.Label label43; private uiControls.Nud nudCustomOverlayLocY; private System.Windows.Forms.CheckBox cbCustomOverlayLocation; - private System.Windows.Forms.Button button1; + private System.Windows.Forms.Button BtGameNameAse; private System.Windows.Forms.Label label44; private uiControls.Nud nudMatingSpeed; private System.Windows.Forms.Panel panel1; @@ -4795,5 +4833,8 @@ private void InitializeComponent() private System.Windows.Forms.Panel panel3; private System.Windows.Forms.RadioButton RbGameAsa; private System.Windows.Forms.RadioButton RbGameAse; + private System.Windows.Forms.CheckBox CbAllowSpeedLeveling; + private System.Windows.Forms.Button BtGameNameAsa; + private System.Windows.Forms.Button BtAutoImportLocalSettings; } } \ No newline at end of file diff --git a/ARKBreedingStats/settings/Settings.cs b/ARKBreedingStats/settings/Settings.cs index b404d432e..7256852c6 100644 --- a/ARKBreedingStats/settings/Settings.cs +++ b/ARKBreedingStats/settings/Settings.cs @@ -37,7 +37,9 @@ public Settings(CreatureCollection cc, SettingsTabPages page) DialogResult = DialogResult.Ignore; } - private const string DefaultOcrProcessName = "ShooterGame"; + private const string DefaultOcrProcessNameAse = "ShooterGame"; + private const string DefaultOcrProcessNameAsa = "ArkAscended"; + /// /// Creates the list of currently running processes for an easy selection for the process the OCR uses to capture. /// @@ -216,6 +218,7 @@ private void LoadSettings(CreatureCollection cc) nudMaxWildLevels.ValueSave = cc.maxWildLevel; nudMaxServerLevel.ValueSave = cc.maxServerLevel > 0 ? cc.maxServerLevel : 0; nudMaxGraphLevel.ValueSave = cc.maxChartLevel; + CbAllowSpeedLeveling.Checked = cc.serverMultipliers?.AllowSpeedLeveling ?? false; CbAllowFlyerSpeedLeveling.Checked = cc.serverMultipliers?.AllowFlyerSpeedLeveling ?? false; #region Non-event multiplier var multipliers = cc.serverMultipliers; @@ -473,6 +476,7 @@ private void SaveSettings() _cc.maxWildLevel = (int)nudMaxWildLevels.Value; _cc.maxServerLevel = (int)nudMaxServerLevel.Value; _cc.maxChartLevel = (int)nudMaxGraphLevel.Value; + _cc.serverMultipliers.AllowSpeedLeveling = CbAllowSpeedLeveling.Checked; _cc.serverMultipliers.AllowFlyerSpeedLeveling = CbAllowFlyerSpeedLeveling.Checked; _cc.maxBreedingSuggestions = (int)numericUpDownMaxBreedingSug.Value; Properties.Settings.Default.IgnoreSexInBreedingPlan = cbIgnoreSexInBreedingPlan.Checked; @@ -710,6 +714,7 @@ private void tabPage2_DragDrop(object sender, DragEventArgs e) if (e.Data.GetDataPresent(DataFormats.FileDrop)) { string[] files = (string[])e.Data.GetData(DataFormats.FileDrop); + bool doMergeSettings = false; // only ask for the first dropped file if settings should be reset, for the later ones always do merge foreach (string filePath in files) { switch (Path.GetExtension(filePath)) @@ -718,9 +723,11 @@ private void tabPage2_DragDrop(object sender, DragEventArgs e) LoadServerMultipliersFromSavFile(filePath); break; default: - ExtractSettingsFromFile(filePath); + ExtractSettingsFromFile(filePath, doMergeSettings); break; } + + doMergeSettings = true; } } else if (e.Data.GetDataPresent(DataFormats.Text)) @@ -729,15 +736,20 @@ private void tabPage2_DragDrop(object sender, DragEventArgs e) } } - private void ExtractSettingsFromFile(string file) + private void ExtractSettingsFromFile(string file, bool doMergeSettings = false) { if (!File.Exists(file)) return; - ExtractSettingsFromText(File.ReadAllText(file)); + ExtractSettingsFromText(File.ReadAllText(file), doMergeSettings); } - private void ExtractSettingsFromText(string text) + /// + /// Parse the text and set the recognized settings accordingly. + /// + /// Text containing the settings + /// If true the user is not asked if the settings should be reset before applying the settings. + private void ExtractSettingsFromText(string text, bool doMergeSettings = false) { if (string.IsNullOrWhiteSpace(text)) return; @@ -750,9 +762,10 @@ private void ExtractSettingsFromText(string text) // reset values to the default - if (text.Contains("ASBMaxGraphLevels")) + if (text.Contains("ASBMaxGraphLevels") || doMergeSettings) { // the file is exported by this application and contains all needed values + // or it's not the first file of an import (i.e. user was already asked if to reset or merge) } else { @@ -825,6 +838,7 @@ void ParseAndSetStatMultiplier(int multiplierIndex, string regexPattern) if (ParseAndSetValue(nudWildLevelStep, @"ASBExtractorWildLevelSteps ?= ?(\d+)")) cbConsiderWildLevelSteps.Checked = nudWildLevelStep.Value != 1; ParseAndSetCheckbox(cbAllowMoreThanHundredImprinting, @"ASBAllowHyperImprinting ?= ?(true|false)"); + ParseAndSetCheckbox(CbAllowSpeedLeveling, @"ASBAllowSpeedLeveling ?= ?(true|false)"); ParseAndSetCheckbox(CbAllowFlyerSpeedLeveling, @"ASBAllowFlyerSpeedLeveling ?= ?(true|false)"); // event multipliers breeding @@ -924,6 +938,7 @@ private void LoadServerMultipliersFromSavFile(string filePath) nudBabyImprintingStatScale.ValueSaveDouble = Math.Round(esm.BabyImprintingStatScaleMultiplier, roundToDigits); nudBabyFoodConsumptionSpeed.ValueSaveDouble = Math.Round(esm.BabyFoodConsumptionSpeedMultiplier, roundToDigits); nudTamedDinoCharacterFoodDrain.ValueSaveDouble = Math.Round(esm.TamedDinoCharacterFoodDrainMultiplier, roundToDigits); + CbAllowSpeedLeveling.Checked = esm.AllowSpeedLeveling; CbAllowFlyerSpeedLeveling.Checked = esm.AllowFlyerSpeedLeveling; cbSingleplayerSettings.Checked = esm.UseSingleplayerSettings; } @@ -942,7 +957,9 @@ private void buttonEventToDefault_Click(object sender, EventArgs e) nudEggHatchSpeedEvent.ValueSave = nudEggHatchSpeed.Value; nudBabyMatureSpeedEvent.ValueSave = nudBabyMatureSpeed.Value; nudBabyCuddleIntervalEvent.ValueSave = nudBabyCuddleInterval.Value; + nudBabyImprintAmountEvent.ValueSave = nudBabyImprintAmount.Value; nudBabyFoodConsumptionSpeedEvent.ValueSave = nudBabyFoodConsumptionSpeed.Value; + nudTamedDinoCharacterFoodDrainEvent.ValueSave = nudTamedDinoCharacterFoodDrain.Value; } private void btAddExportFolder_Click(object sender, EventArgs e) @@ -1197,6 +1214,7 @@ private string GetMultiplierSettings() // extractor sb.AppendLine($"ASBExtractorWildLevelSteps = {(cbConsiderWildLevelSteps.Checked ? nudWildLevelStep.Value.ToString(cultureForStrings) : "1")}"); sb.AppendLine($"ASBAllowHyperImprinting = {(cbAllowMoreThanHundredImprinting.Checked ? "true" : "false")}"); + sb.AppendLine($"ASBAllowSpeedLeveling = {(CbAllowSpeedLeveling.Checked ? "true" : "false")}"); sb.AppendLine($"ASBAllowFlyerSpeedLeveling = {(CbAllowFlyerSpeedLeveling.Checked ? "true" : "false")}"); // event multipliers @@ -1229,9 +1247,14 @@ private void cbCustomOverlayLocation_CheckedChanged(object sender, EventArgs e) pCustomOverlayLocation.Enabled = cbCustomOverlayLocation.Checked; } - private void button1_Click(object sender, EventArgs e) + private void BtGameNameAse_Click(object sender, EventArgs e) { - tbOCRCaptureApp.Text = DefaultOcrProcessName; + tbOCRCaptureApp.Text = DefaultOcrProcessNameAse; + } + + private void BtGameNameAsa_Click(object sender, EventArgs e) + { + tbOCRCaptureApp.Text = DefaultOcrProcessNameAsa; } private void Localization() @@ -1319,7 +1342,7 @@ private void SetFolderSelectionButton(Button button, string folderPath = null, b private void BtGetExportFolderAutomatically_Click(object sender, EventArgs e) { - if (ExportFolderLocation.GetListOfExportFolders(out (string path, string steamPlayerName)[] arkExportFolders, out string error)) + if (ArkInstallationPath.GetListOfExportFolders(out (string path, string steamPlayerName)[] arkExportFolders, out string error)) { var anyFolderExists = false; // only add folders if they exist and are not yet in the list @@ -1340,7 +1363,7 @@ private void BtGetExportFolderAutomatically_Click(object sender, EventArgs e) if (!exportFolderLocations.Any()) return; // order the entries so that the folder with the newest file is the default - var orderedList = ExportFolderLocation.OrderByNewestFileInFolders(exportFolderLocations.Select(l => (l.FolderPath, l))); + var orderedList = ArkInstallationPath.OrderByNewestFileInFolders(exportFolderLocations.Select(l => (l.FolderPath, l))); aTExportFolderLocationsBindingSource.Clear(); @@ -1397,6 +1420,7 @@ private void CbHighlightAdjustedMultipliers_CheckedChanged(object sender, EventA nudBabyImprintingStatScale.SetExtraHighlightNonDefault(highlight); nudBabyFoodConsumptionSpeed.SetExtraHighlightNonDefault(highlight); HighlightCheckbox(cbSingleplayerSettings); + HighlightCheckbox(CbAllowSpeedLeveling); HighlightCheckbox(CbAllowFlyerSpeedLeveling); HighlightCheckbox(CbAtlasSettings); @@ -1611,5 +1635,37 @@ private void BtImportSettingsSelectFile_Click(object sender, EventArgs e) ExtractSettingsFromFile(dlg.FileName); } } + + private void CbAllowFlyerSpeedLeveling_CheckedChanged(object sender, EventArgs e) + { + if (CbAllowFlyerSpeedLeveling.Checked) + CbAllowSpeedLeveling.Checked = true; + } + + private void BtAutoImportLocalSettings_Click(object sender, EventArgs e) + { + // detect the game.ini and gameUserSettings.ini in the local installation and ask which to import + + if (!ArkInstallationPath.GetLocalArkConfigPaths(out (string, Ark.Game)[] localConfigPaths, out var error)) + { + MessageBoxes.ShowMessageBox( + "The local Ark installation config files couldn't be found, currently auto import is only supported for the Steam edition.\nYou can try to import the files by manually drag&drop them onto the settings window\n\n" + + error, "Config auto import error"); + return; + } + + localConfigPaths = localConfigPaths.OrderBy(c => c.Item2 == Ark.Game.ASE).ToArray(); // display ASA first + + // ask which configs to import + var importIndex = Utils.ShowListInput(localConfigPaths.Select(c => $"{c.Item2}: {c.Item1.Replace("\\", "\\ ")}").ToArray(), // adding zero width spaces to allow word wrapping + "Select one of the configs to import.", "Auto import configs", 40); + if (importIndex == -1) return; + + ExtractSettingsFromFile(Path.Combine(localConfigPaths[importIndex].Item1, "game.ini"), true); + ExtractSettingsFromFile(Path.Combine(localConfigPaths[importIndex].Item1, "gameUserSettings.ini"), true); + + if (localConfigPaths[importIndex].Item2 == Ark.Game.ASA) RbGameAsa.Checked = true; + else RbGameAse.Checked = true; + } } } diff --git a/ARKBreedingStats/settings/Settings.resx b/ARKBreedingStats/settings/Settings.resx index 21260f88c..f5774e82c 100644 --- a/ARKBreedingStats/settings/Settings.resx +++ b/ARKBreedingStats/settings/Settings.resx @@ -142,9 +142,6 @@ You can also select the text of the settings and drag&&drop the selectio True - - 17, 17 - The creature data can be directly imported from the save-game, if you have access to that. This is also possible via an ftp-adress. If you set the according files below, you can start the process automatically from the file-menu. @@ -170,9 +167,6 @@ If you set the according files below, you can start the process automatically fr True - - 262, 17 - In ARK you can export a creature (hold use while looking at a creature, then choose "Options" - "Export" from the wheel). Note: Parents and the mutations count are only exported and imported if you have opened the ancestor tab of the creature before the export! @@ -190,4 +184,13 @@ The window-mode "Fullscreen-Windowed" should be set ingame. 526, 17 + + 17, 17 + + + 262, 17 + + + 56 + \ No newline at end of file diff --git a/ARKBreedingStats/species/Species.cs b/ARKBreedingStats/species/Species.cs index ba8f40625..e4013dfc2 100644 --- a/ARKBreedingStats/species/Species.cs +++ b/ARKBreedingStats/species/Species.cs @@ -76,11 +76,16 @@ public class Species private int usedStats; /// - /// Indicates if a stat won't get wild levels for spawned creatures represented by bit-flags + /// Indicates if a creature stat won't get wild levels or mutations represented by bit-flags. /// [JsonProperty] private int skipWildLevelStats; + /// + /// Indicates if a creature stat won't get wild levels or mutations represented by bit-flags, also considering server settings. + /// + private int _skipWildLevelStatsWithServerSettings; + /// /// Indicates if the species is affected by the setting AllowFlyerSpeedLeveling /// @@ -88,17 +93,25 @@ public class Species [JsonProperty] public float? TamedBaseHealthMultiplier; + /// - /// Indicates the multipliers for each stat applied to the imprinting-bonus + /// Indicates the default multipliers for this species for each stat applied to the imprinting-bonus /// [JsonProperty] private double[] statImprintMult; + /// /// Custom override for stat imprinting multipliers. /// private double[] statImprintMultOverride; + + /// + /// The used multipliers for each stat applied to the imprinting-bonus, affected by custom overrides and global leveling settings. + /// + public double[] StatImprintMultipliers; + [JsonProperty] - public ColorRegion[] colors; // every species has up to 6 color regions + public ColorRegion[] colors; [JsonProperty] public TamingData taming; [JsonProperty] @@ -150,15 +163,12 @@ private void Initialize(StreamingContext _) usedStats = 0; + StatImprintMultipliers = statImprintMult ?? StatImprintMultipliersDefaultAse.ToArray(); + if (mutationMult == null) mutationMult = MutationMultipliersDefault; + double[][] completeRaws = new double[Stats.StatsCount][]; for (int s = 0; s < Stats.StatsCount; s++) { - // so far it seems stats that are skipped in wild are not displayed either - var statBit = (1 << s); - if ((skipWildLevelStats & statBit) != 0) - displayedStats &= ~statBit; - - stats[s] = new CreatureStat(); if (altBaseStatsRaw?.ContainsKey(s) ?? false) altStats[s] = new CreatureStat(); @@ -182,7 +192,7 @@ private void Initialize(StreamingContext _) if (fullStatsRawLength != -0) fullStatsRaw = completeRaws; - + if (colors?.Length == 0) colors = null; if (colors != null && colors.Length < Ark.ColorRegionCount) @@ -208,11 +218,10 @@ private void Initialize(StreamingContext _) boneDamageAdjusters = boneDamageAdjustersCleanedUp; } + _skipWildLevelStatsWithServerSettings = skipWildLevelStats; + IsDomesticable = (taming != null && (taming.nonViolent || taming.violent)) || (breeding != null && (breeding.incubationTime > 0 || breeding.gestationTime > 0)); - - if (statImprintMult == null) statImprintMult = StatImprintMultipliersDefaultAse; - if (mutationMult == null) mutationMult = MutationMultipliersDefault; } /// @@ -238,7 +247,7 @@ public void InitializeNames() } DescriptiveName = name + (string.IsNullOrEmpty(variantInfoForName) ? string.Empty : " (" + variantInfoForName + ")"); - string modSuffix = string.IsNullOrEmpty(_mod?.title) ? string.Empty : _mod.title; + string modSuffix = _mod?.shortTitle ?? _mod?.title; DescriptiveNameAndMod = DescriptiveName + (string.IsNullOrEmpty(modSuffix) ? string.Empty : " (" + modSuffix + ")"); SortName = DescriptiveNameAndMod; } @@ -274,12 +283,6 @@ public void InitializeColorRegions() /// public bool[] EnabledColorRegions; - /// - /// Indicates the multipliers for each stat applied to the imprinting-bonus. - /// To override the multipliers, set the value to a custom array. - /// - public double[] StatImprintMultipliers => statImprintMultOverride ?? statImprintMult; - /// /// The default stat imprinting multipliers. /// @@ -297,7 +300,7 @@ public void SetCustomImprintingMultipliers(double?[] overrides) return; } - // if a value if null, use the default value + // if a value is null, use the default value double[] overrideValues = new double[Stats.StatsCount]; // if value is equal to default, set override to null @@ -309,7 +312,7 @@ public void SetCustomImprintingMultipliers(double?[] overrides) overrideValues[s] = statImprintMult[s]; continue; } - overrideValues[s] = overrides[s] ?? 0; + overrideValues[s] = overrides[s].Value; if (statImprintMult[s] != overrideValues[s]) { isEqual = false; @@ -317,6 +320,30 @@ public void SetCustomImprintingMultipliers(double?[] overrides) } if (isEqual) statImprintMultOverride = null; else statImprintMultOverride = overrideValues; + StatImprintMultipliers = statImprintMultOverride ?? statImprintMult; + } + + /// + /// Sets the usesStats and imprinting values according to the global settings. Call this method after calling SetCustomImprintingMultipliers() if the latter is needed. + /// + public void ApplyCanLevelOptions(bool canLevelSpeedStat, bool canFlyerLevelSpeedStat) + { + var statBit = (1 << Stats.SpeedMultiplier); + + bool speedStatCanBeLeveled = canLevelSpeedStat && (canFlyerLevelSpeedStat || !isFlyer); + if (speedStatCanBeLeveled) + { + displayedStats |= statBit; + StatImprintMultipliers[Stats.SpeedMultiplier] = + (statImprintMultOverride ?? statImprintMult ?? StatImprintMultipliersDefaultAse)[Stats.SpeedMultiplier]; + _skipWildLevelStatsWithServerSettings &= ~statBit; + } + else + { + displayedStats &= ~statBit; + StatImprintMultipliers[Stats.SpeedMultiplier] = 0; + _skipWildLevelStatsWithServerSettings |= statBit; + } } /// @@ -330,9 +357,9 @@ public void SetCustomImprintingMultipliers(double?[] overrides) public bool DisplaysStat(int statIndex) => (displayedStats & (1 << statIndex)) != 0; /// - /// Returns if a spawned creature can have wild levels in a stat. + /// Returns if a spawned creature can have wild or mutated levels in a stat. /// - public bool CanLevelupWild(int statIndex) => (skipWildLevelStats & (1 << statIndex)) == 0; + public bool CanLevelUpWildOrHaveMutations(int statIndex) => (_skipWildLevelStatsWithServerSettings & (1 << statIndex)) == 0; public override string ToString() { diff --git a/ARKBreedingStats/utils/ExportFolderLocation.cs b/ARKBreedingStats/utils/ArkInstallationPath.cs similarity index 81% rename from ARKBreedingStats/utils/ExportFolderLocation.cs rename to ARKBreedingStats/utils/ArkInstallationPath.cs index 3fd645ed7..d78b2250f 100644 --- a/ARKBreedingStats/utils/ExportFolderLocation.cs +++ b/ARKBreedingStats/utils/ArkInstallationPath.cs @@ -10,9 +10,9 @@ namespace ARKBreedingStats.utils { /// - /// Used to find the folder of exported creature files. + /// Methods related to paths of an Ark installation. /// - internal static class ExportFolderLocation + internal static class ArkInstallationPath { /// /// Extracts possible creature export directories of a Steam or Epic installation of ARK. @@ -40,6 +40,39 @@ private static bool ExtractSteamExportLocations(out (string path, string launche { exportFolders = null; + if (!GetSteamLibraryArkInstallationFolders(out var existingArkPaths, out var steamNamesIds, out error)) + return false; + + var relativeExportFolder = RelativeExportPath(); + + // there can be multiple steam users, so list the possible export folder for each user + exportFolders = new (string, string)[existingArkPaths.Length * (steamNamesIds.Length + 1)]; + int i = 0; + foreach (var arkPath in existingArkPaths) + { + foreach (var steamNameId in steamNamesIds) + exportFolders[i++] = ( + arkPath.Game == Ark.Game.ASE + ? Path.Combine(arkPath.Path, relativeExportFolder, steamNameId.steamPlayerId) + : Path.Combine(arkPath.Path, relativeExportFolder), // ASA doesn't use steam id as subfolder + $"{steamNameId.steamPlayerName} ({arkPath.Game})" + ); + // for export gun mod + exportFolders[i++] = (Path.Combine(arkPath.Path, relativeExportFolder, "ASB"), + $"ExportGun ({arkPath.Game})"); + } + + return true; + } + + /// + /// Returns a list of possible Ark installation folders + /// + /// + public static bool GetSteamLibraryArkInstallationFolders(out (string Path, Ark.Game Game)[] existingArkPaths, out (string steamPlayerName, string steamPlayerId)[] steamNamesIds, out string error) + { + existingArkPaths = null; + steamNamesIds = null; if (!GetSteamInstallationPath(out var steamPath)) { error = "Steam installation couldn't be found, is it installed?"; @@ -55,8 +88,8 @@ private static bool ExtractSteamExportLocations(out (string path, string launche } if (!ReadSteamPlayerIdsAndArkInstallPaths(configFilePath, libraryFoldersFilePath, - out (string steamPlayerName, string steamPlayerId)[] steamNamesIds, out string[] arkInstallFolders, - out error)) return false; + out steamNamesIds, out string[] arkInstallFolders, + out error)) return false; var relativeAsePath = Path.Combine("steamapps", "common", "ARK"); var relativeAsaPath = Path.Combine("steamapps", "common", "ARK Survival Ascended"); @@ -68,7 +101,7 @@ private static bool ExtractSteamExportLocations(out (string path, string launche possibleArkPaths.AddRange(arkInstallFolders.Select(f => (Path.Combine(f, relativeAsePath), Ase: Ark.Game.ASE))); possibleArkPaths.AddRange(arkInstallFolders.Select(f => (Path.Combine(f, relativeAsaPath), Asa: Ark.Game.ASA))); - var existingArkPaths = possibleArkPaths.Distinct().Where(p => Directory.Exists(p.Path)).ToArray(); + existingArkPaths = possibleArkPaths.Distinct().Where(p => Directory.Exists(p.Path)).ToArray(); if (!existingArkPaths.Any()) { @@ -76,25 +109,6 @@ private static bool ExtractSteamExportLocations(out (string path, string launche return false; } - var relativeExportFolder = RelativeExportFolder(); - - // there can be multiple steam users, so list the possible export folder for each user - exportFolders = new (string, string)[existingArkPaths.Length * (steamNamesIds.Length + 1)]; - int i = 0; - foreach (var arkPath in existingArkPaths) - { - foreach (var steamNameId in steamNamesIds) - exportFolders[i++] = ( - arkPath.Game == Ark.Game.ASE - ? Path.Combine(arkPath.Path, relativeExportFolder, steamNameId.steamPlayerId) - : Path.Combine(arkPath.Path, relativeExportFolder), // ASA doesn't use steam id as subfolder - $"{steamNameId.steamPlayerName} ({arkPath.Game})" - ); - // for export gun mod - exportFolders[i++] = (Path.Combine(arkPath.Path, relativeExportFolder, "ASB"), - $"ExportGun ({arkPath.Game})"); - } - return true; } @@ -128,13 +142,15 @@ private static bool ExtractEpicExportLocations(out (string path, string launcher exportFolders = new[] { - (Path.Combine(existingArkPaths[0], RelativeExportFolder(), playerId), string.Empty) + (Path.Combine(existingArkPaths[0], RelativeExportPath(), playerId), string.Empty) }; return true; } - private static string RelativeExportFolder() => Path.Combine("ShooterGame", "Saved", "DinoExports"); + private static string RelativeExportPath() => Path.Combine("ShooterGame", "Saved", "DinoExports"); + public static string RelativeLocalConfigPathAse() => Path.Combine("ShooterGame", "Saved", "Config", "WindowsNoEditor"); + public static string RelativeLocalConfigPathAsa() => Path.Combine("ShooterGame", "Saved", "Config", "Windows"); private static bool GetSteamInstallationPath(out string steamPath) { @@ -272,5 +288,33 @@ DateTime LastWriteOfNewestFileInFolder(string folderPath) return new DirectoryInfo(folderPath).GetFiles("*.ini").Select(fi => fi.LastWriteTime).DefaultIfEmpty(new DateTime()).Max(); } } + + /// + /// Returns the path to the local config folder, where the files game.ini and gameUserSettings.ini are stored. + /// + public static bool GetLocalArkConfigPaths(out (string, Ark.Game)[] localConfigPaths, out string error) + { + localConfigPaths = null; + + if (!GetSteamLibraryArkInstallationFolders(out var existingArkPaths, out _, out error)) + return false; + + var relativeLocalConfigPathAse = RelativeLocalConfigPathAse(); + var relativeLocalConfigPathAsa = RelativeLocalConfigPathAsa(); + + localConfigPaths = new (string, Ark.Game)[existingArkPaths.Length]; + int i = 0; + foreach (var arkPath in existingArkPaths) + { + localConfigPaths[i++] = ( + arkPath.Game == Ark.Game.ASE + ? Path.Combine(arkPath.Path, relativeLocalConfigPathAse) + : Path.Combine(arkPath.Path, relativeLocalConfigPathAsa), + arkPath.Game + ); + } + + return true; + } } } diff --git a/ARKBreedingStats/utils/RepositoryInfo.cs b/ARKBreedingStats/utils/RepositoryInfo.cs index c451f4ee9..a852a2a39 100644 --- a/ARKBreedingStats/utils/RepositoryInfo.cs +++ b/ARKBreedingStats/utils/RepositoryInfo.cs @@ -15,5 +15,10 @@ internal static class RepositoryInfo /// Opens the page in the repository wiki with the default browser. /// internal static void OpenWikiPage(string pageName) => Process.Start(WikiPageLink(pageName)); + + /// + /// Invite link for the ARK Smart Breeding discord link. + /// + internal const string DiscordServerInviteLink = "https://discord.gg/qCYYbQK"; } } diff --git a/ARKBreedingStats/values/ServerMultipliers.cs b/ARKBreedingStats/values/ServerMultipliers.cs index e50e78930..2ea7ca0b2 100644 --- a/ARKBreedingStats/values/ServerMultipliers.cs +++ b/ARKBreedingStats/values/ServerMultipliers.cs @@ -40,10 +40,12 @@ public class ServerMultipliers [JsonProperty] public double BabyImprintAmountMultiplier { get; set; } [JsonProperty] + public bool AllowSpeedLeveling { get; set; } + [JsonProperty] public bool AllowFlyerSpeedLeveling { get; set; } [OnDeserializing] - internal void SetDefaultValues(StreamingContext context) + internal void SetDefaultValues(StreamingContext _) { TamingSpeedMultiplier = 1; DinoCharacterFoodDrainMultiplier = 1; @@ -59,11 +61,10 @@ internal void SetDefaultValues(StreamingContext context) } /// - /// fix any null values + /// Fix any null values /// - /// [OnDeserialized] - private void DefineNullValues(StreamingContext context) + private void DefineNullValues(StreamingContext _) { if (statMultipliers == null) return; int l = statMultipliers.Length; diff --git a/ARKBreedingStats/values/Values.cs b/ARKBreedingStats/values/Values.cs index 3de0e5cb8..d191b6fe7 100644 --- a/ARKBreedingStats/values/Values.cs +++ b/ARKBreedingStats/values/Values.cs @@ -496,7 +496,6 @@ public void ApplyMultipliers(CreatureCollection cc, bool eventMultipliers = fals currentServerMultipliers.FixZeroValues(); double[] defaultMultipliers = new double[] { 1, 1, 1, 1 }; // used if serverMultipliers don't specify non-default values - var useAsa = cc.Game == Ark.Asa; foreach (Species sp in species) { @@ -585,13 +584,6 @@ double GetRawStatValue(int statIndex, int statValueTypeIndex, bool customOverrid ? cc.CustomSpeciesStats[sp.blueprintPath][Stats.StatsCount] : null; - // adjustments for ASA (0 for speed) - if (imprintingMultiplierOverrides == null && useAsa) - { - imprintingMultiplierOverrides = sp.StatImprintMultipliers.Select(d => (double?)d).ToArray(); - imprintingMultiplierOverrides[Stats.SpeedMultiplier] = 0; - } - sp.SetCustomImprintingMultipliers(imprintingMultiplierOverrides); // ATLAS multipliers @@ -605,6 +597,8 @@ double GetRawStatValue(int statIndex, int statValueTypeIndex, bool customOverrid } } + sp.ApplyCanLevelOptions(cc.serverMultipliers.AllowSpeedLeveling, cc.serverMultipliers.AllowFlyerSpeedLeveling); + // breeding multiplier if (sp.breeding == null) continue;