diff --git a/ARKBreedingStats/ARKBreedingStats.csproj b/ARKBreedingStats/ARKBreedingStats.csproj
index 9876bbd0..da648cf2 100644
--- a/ARKBreedingStats/ARKBreedingStats.csproj
+++ b/ARKBreedingStats/ARKBreedingStats.csproj
@@ -655,6 +655,9 @@
PreserveNewest
+
+ PreserveNewest
+
diff --git a/ARKBreedingStats/NamePatterns/NamePattern.cs b/ARKBreedingStats/NamePatterns/NamePattern.cs
index f6f989ff..f9844ff3 100644
--- a/ARKBreedingStats/NamePatterns/NamePattern.cs
+++ b/ARKBreedingStats/NamePatterns/NamePattern.cs
@@ -322,6 +322,7 @@ public static Dictionary CreateTokenDictionary(Creature creature
{ "toppercent" , (creature.topness / 10f).ToString() },
{ "baselvl" , creature.LevelHatched.ToString() },
+ { "levelpretamed" , creature.levelFound.ToString() },
{ "effimp" , effImp },
{ "muta", creature.Mutations.ToString()},
{ "mutam", creature.mutationsMaternal.ToString()},
diff --git a/ARKBreedingStats/NamePatterns/PatternEditor.cs b/ARKBreedingStats/NamePatterns/PatternEditor.cs
index cc1bfeb1..0e76df89 100644
--- a/ARKBreedingStats/NamePatterns/PatternEditor.cs
+++ b/ARKBreedingStats/NamePatterns/PatternEditor.cs
@@ -473,10 +473,11 @@ private void InsertText(string text)
{ "sex_lang_short_gen", "\"Male_gen\", \"Female_gen\", \"Unknown_gen\" by loc(short)" },
{ "topPercent", "Percentage of the considered stat levels compared to the top levels of the species in the library" },
- { "baselvl", "Base-level (level without manually added ones), i.e. level right after taming / hatching" },
+ { "baseLvl", "Base-level (level without manually added ones), i.e. level right after taming / hatching" },
+ { "levelPreTamed", "Level of the creature before it was tamed. For bred creatures equal to baseLvl" },
{ "muta", "Mutations" },
- { "mutam", "maternal mutations" },
- { "mutap", "paternal mutations" },
+ { "mutaM", "maternal mutations" },
+ { "mutaP", "paternal mutations" },
{ "gen", "Generation" },
{ "gena", "Generation in letters (0=A, 1=B, 26=AA, 27=AB)" },
{ "genn", "The number of creatures with the same species and the same generation plus one" },
diff --git a/ARKBreedingStats/Properties/AssemblyInfo.cs b/ARKBreedingStats/Properties/AssemblyInfo.cs
index 26655af6..e812401e 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.59.3.2")]
+[assembly: AssemblyFileVersion("0.59.4.0")]
[assembly: NeutralResourcesLanguage("en")]
diff --git a/ARKBreedingStats/_manifest.json b/ARKBreedingStats/_manifest.json
index 76c8703b..7a72e678 100644
--- a/ARKBreedingStats/_manifest.json
+++ b/ARKBreedingStats/_manifest.json
@@ -4,7 +4,7 @@
"ARK Smart Breeding": {
"Id": "ARK Smart Breeding",
"Category": "main",
- "version": "0.59.3.2"
+ "version": "0.59.4.0"
},
"SpeciesColorImages": {
"Id": "SpeciesColorImages",
diff --git a/ARKBreedingStats/library/Creature.cs b/ARKBreedingStats/library/Creature.cs
index d1c7eae9..07007089 100644
--- a/ARKBreedingStats/library/Creature.cs
+++ b/ARKBreedingStats/library/Creature.cs
@@ -328,7 +328,7 @@ public void CalculateLevelFound(int? levelStep)
///
/// The total level without domesticate levels, i.e. the torpidity level + 1.
///
- public int LevelHatched => (levelsWild?[Stats.Torpidity] ?? 0) + 1;
+ public int LevelHatched => (levelsWild?[Stats.Torpidity] ?? 0) + 1 - (flags.HasFlag(CreatureFlags.MutagenApplied) ? isBred ? Ark.MutagenLevelUpsBred : Ark.MutagenLevelUpsNonBred : 0);
///
/// The total current level inclusive domesticate levels.
diff --git a/ARKBreedingStats/library/CreatureInfoGraphic.cs b/ARKBreedingStats/library/CreatureInfoGraphic.cs
index fc50a980..8766a3b2 100644
--- a/ARKBreedingStats/library/CreatureInfoGraphic.cs
+++ b/ARKBreedingStats/library/CreatureInfoGraphic.cs
@@ -139,7 +139,8 @@ public static Bitmap InfoGraphic(this Creature creature, CreatureCollection cc,
g.DrawString(Loc.S("W", secondaryCulture: secondaryCulture), font, fontBrush, xRightLevelValue - (int)(displayWithDomLevels ? 2 * meanLetterWidth : 0), currentYPosition, stringFormatRight);
if (displayMutatedLevels)
g.DrawString(Loc.S("M", secondaryCulture: secondaryCulture), font, fontBrush, xRightLevelMutValue - (int)(2 * meanLetterWidth), currentYPosition, stringFormatRight);
- g.DrawString(Loc.S("D", secondaryCulture: secondaryCulture), font, fontBrush, xRightLevelDomValue, currentYPosition, stringFormatRight);
+ if (displayWithDomLevels)
+ g.DrawString(Loc.S("D", secondaryCulture: secondaryCulture), font, fontBrush, xRightLevelDomValue, currentYPosition, stringFormatRight);
if (displayStatValues)
g.DrawString(Loc.S("Values", secondaryCulture: secondaryCulture), font, fontBrush, xRightBrValue, currentYPosition, stringFormatRight);
int statDisplayIndex = 0;
diff --git a/ARKBreedingStats/utils/CreatureListSorter.cs b/ARKBreedingStats/utils/CreatureListSorter.cs
index 77f44802..0a7e44b8 100644
--- a/ARKBreedingStats/utils/CreatureListSorter.cs
+++ b/ARKBreedingStats/utils/CreatureListSorter.cs
@@ -153,6 +153,18 @@ private IEnumerable OrderList(IEnumerable list, IComparer c.levelsWild[9],
c => c.levelsWild[10],
c => c.levelsWild[11],
+ c => c.levelsMutated?[0],
+ c => c.levelsMutated?[1],
+ c => c.levelsMutated?[2],
+ c => c.levelsMutated?[3],
+ c => c.levelsMutated?[4],
+ c => c.levelsMutated?[5],
+ c => c.levelsMutated?[6],
+ c => c.levelsMutated?[7],
+ c => c.levelsMutated?[8],
+ c => c.levelsMutated?[9],
+ c => c.levelsMutated?[10],
+ c => c.levelsMutated?[11],
c => c.colors[0],
c => c.colors[1],
c => c.colors[2],
diff --git a/setup.iss b/setup.iss
index 056a465f..4653a5c8 100644
--- a/setup.iss
+++ b/setup.iss
@@ -90,6 +90,7 @@ Source: "{#ReleaseDir}\zh\*"; DestDir: "{app}\zh\"; Excludes: "*.pdb,*.xml"; Fla
Source: "{#ReleaseDir}\_manifest.json"; DestDir: "{localappdata}\{#AppName}\"; Flags: ignoreversion
Source: "{#ReleaseDir}\json\*.json"; DestDir: "{localappdata}\{#AppName}\json\"; Flags: ignoreversion
Source: "{#ReleaseDir}\json\values\values.json"; DestDir: "{localappdata}\{#AppName}\json\values\"; Flags: ignoreversion
+Source: "{#ReleaseDir}\json\values\ASA-values.json"; DestDir: "{localappdata}\{#AppName}\json\values\"; Flags: ignoreversion
Source: "{#ReleaseDir}\json\values\_manifest.json"; DestDir: "{localappdata}\{#AppName}\json\values\"; Flags: ignoreversion
Source: "{#ReleaseDir}\json\ocr\*.json"; DestDir: "{localappdata}\{#AppName}\json\ocr\"; Flags: ignoreversion skipifsourcedoesntexist
Source: "{#ReleaseDirUpdater}\asb-updater.exe"; DestDir: "{app}"; Flags: ignoreversion