Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
f3ee852
added a sort by scan feature
taiwenlee Dec 9, 2024
a5d1c77
16:10 fix for artifacts
taiwenlee Dec 9, 2024
191fa8f
fixed auto cons
taiwenlee Feb 18, 2025
d268bf3
added ability to scan x amount of character
taiwenlee Feb 27, 2025
5e4687c
fixed sanctify issue
taiwenlee Mar 27, 2025
fea6e1b
fix sanctified shift for 16:10
taiwenlee Mar 27, 2025
199186f
Update README.md
nguyentvan7 Jun 25, 2025
ee47ab7
typo
nguyentvan7 Jun 25, 2025
b8ee5b1
Add support for unactivated artifact substats and lvl 100 char
taiwenlee Oct 6, 2025
30173f7
Bump AssemblyVersion to 1.4.0
taiwenlee Oct 6, 2025
4ac2d9d
Update GitHub links to new repository owner
taiwenlee Oct 6, 2025
606d310
Merge pull request #1 from nguyentvan7/patch-1
taiwenlee Oct 6, 2025
a7bf8a8
Fix unactivated substat handling in ArtifactScraper
taiwenlee Oct 7, 2025
95882ae
Merge branch 'master' of https://github.com/taiwenlee/Inventory_Kamera
taiwenlee Oct 7, 2025
63ba93f
Improve artifact scraping reliability and logging
taiwenlee Oct 26, 2025
bad1da1
Bump AssemblyVersion to 1.4.1
taiwenlee Oct 26, 2025
529344a
cleanup (unnecesary and non existant solutions)
Marchewcia Oct 30, 2025
ac97523
Fixed error when building for the first time
baconeko Oct 30, 2025
b91e172
Merge pull request #7 from baconeko/master
taiwenlee Oct 31, 2025
bde0587
Merge branch 'taiwenlee:master' into main
Marchewcia Nov 6, 2025
cb140ed
added skipping manequins because GO doesn't support them and they cra…
Marchewcia Nov 6, 2025
de56152
added code to ensure manequin record in characters.json is present
Marchewcia Nov 7, 2025
45aeeb8
Merge pull request #11 from Marchewcia/main
taiwenlee Nov 11, 2025
8487414
Adjust region calculation for character scraping
taiwenlee Nov 11, 2025
ef27f87
Bump AssemblyVersion to 1.4.2
taiwenlee Nov 11, 2025
77a589a
Added mapping for TextMap_MediumEN.json to match database split
baconeko Apr 7, 2026
43c1612
Fixes bug where Columbina and Ineffa character data are processed inc…
baconeko Apr 9, 2026
579eb87
Merge pull request #20 from baconeko/master
taiwenlee Apr 10, 2026
e10075c
Bump AssemblyVersion to 1.4.3
taiwenlee Apr 12, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
657 changes: 0 additions & 657 deletions Inventory Kamera Installer/Inventory Kamera Installer.vdproj

This file was deleted.

4 changes: 0 additions & 4 deletions InventoryKamera.sln
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,6 @@ VisualStudioVersion = 17.2.32616.157
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "InventoryKamera", "InventoryKamera\InventoryKamera.csproj", "{7B7F907E-11F4-4000-B711-8E532A36F8A9}"
EndProject
Project("{54435603-DBB4-11D2-8724-00A0C9A8B90C}") = "Inventory Kamera Installer", "Inventory Kamera Installer\Inventory Kamera Installer.vdproj", "{A0A931B9-288D-48F5-9E1D-E0307BD5F3CD}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "InventoryKameraWPF", "InventoryKameraWPF\InventoryKameraWPF.csproj", "{01D9CF37-EF4D-4396-B955-28C1879359D7}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Expand Down
14 changes: 13 additions & 1 deletion InventoryKamera/App.config
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,7 @@
<value />
</setting>
<setting name="WandererName" serializeAs="String">
<value>wanderer</value>
<value>Wanderer</value>
</setting>
<setting name="Executables" serializeAs="Xml">
<value>
Expand All @@ -84,6 +84,18 @@
<setting name="Slot1Key" serializeAs="String">
<value>1</value>
</setting>
<setting name="SortByObtained" serializeAs="String">
<value>0</value>
</setting>
<setting name="NumOfCharToScan" serializeAs="String">
<value>0</value>
</setting>
<setting name="Manequin1Name" serializeAs="String">
<value>Manequin1</value>
</setting>
<setting name="Manequin2Name" serializeAs="String">
<value>Manequin2</value>
</setting>
</InventoryKamera.Properties.Settings>
</userSettings>
<runtime>
Expand Down
1 change: 1 addition & 0 deletions InventoryKamera/InventoryKamera.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -193,6 +193,7 @@
<DependentUpon>MainUI.cs</DependentUpon>
</EmbeddedResource>
<None Include="app.manifest" />
<None Include="Properties\DataSources\InventoryKamera.Properties.Settings.datasource" />
<None Include="Properties\Settings.settings">
<Generator>SettingsSingleFileGenerator</Generator>
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
Expand Down
2 changes: 1 addition & 1 deletion InventoryKamera/Properties/AssemblyInfo.cs
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,6 @@
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.3.17.*")]
[assembly: AssemblyVersion("1.4.3.*")]
//[assembly: AssemblyFileVersion("1.0.0.0")]
[assembly: NeutralResourcesLanguage("en")]
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
This file is automatically generated by Visual Studio .Net. It is
used to store generic object data source configuration information.
Renaming the file extension or editing the content of this file may
cause the file to be unrecognizable by the program.
-->
<GenericObjectDataSource DisplayName="Settings" Version="1.0" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<TypeInfo>InventoryKamera.Properties.Settings, Properties.Resources.Designer.cs.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</TypeInfo>
</GenericObjectDataSource>
52 changes: 50 additions & 2 deletions InventoryKamera/Properties/Settings.Designer.cs

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

14 changes: 13 additions & 1 deletion InventoryKamera/Properties/Settings.settings
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@
<Value Profile="(Default)" />
</Setting>
<Setting Name="WandererName" Type="System.String" Scope="User">
<Value Profile="(Default)">wanderer</Value>
<Value Profile="(Default)">Wanderer</Value>
</Setting>
<Setting Name="Executables" Type="System.Collections.Specialized.StringCollection" Scope="User">
<Value Profile="(Default)">&lt;?xml version="1.0" encoding="utf-16"?&gt;
Expand All @@ -75,5 +75,17 @@
<Setting Name="Slot1Key" Type="System.Int32" Scope="User">
<Value Profile="(Default)">1</Value>
</Setting>
<Setting Name="SortByObtained" Type="System.Int32" Scope="User">
<Value Profile="(Default)">0</Value>
</Setting>
<Setting Name="NumOfCharToScan" Type="System.Int32" Scope="User">
<Value Profile="(Default)">0</Value>
</Setting>
<Setting Name="Manequin1Name" Type="System.String" Scope="User">
<Value Profile="(Default)">Manequin1</Value>
</Setting>
<Setting Name="Manequin2Name" Type="System.String" Scope="User">
<Value Profile="(Default)">Manequin2</Value>
</Setting>
</Settings>
</SettingsFile>
53 changes: 48 additions & 5 deletions InventoryKamera/data/DatabaseManager.cs
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,7 @@ public string ListsDir
private const string commitsAPIURL = "https://gitlab.com/api/v4/projects/53216109/repository/commits";
private const string repoBaseURL = "https://gitlab.com/Dimbreath/AnimeGameData/-/raw/master/";
private const string TextMapEnURL = repoBaseURL + "TextMap/TextMapEN.json";
private const string TextMapMediumEnURL = repoBaseURL + "TextMap/TextMap_MediumEN.json";
private const string CharactersURL = repoBaseURL + "ExcelBinOutput/AvatarExcelConfigData.json";
private const string ConstellationsURL = repoBaseURL + "ExcelBinOutput/FetterInfoExcelConfigData.json";
private const string TalentsURL = repoBaseURL + "ExcelBinOutput/AvatarTalentExcelConfigData.json";
Expand Down Expand Up @@ -86,6 +87,15 @@ public DatabaseManager()


LocalVersion = new Version(File.ReadAllText(ListsDir + NewVersion));


if (!(File.Exists(ListsDir + WeaponsJson) &&
File.Exists(ListsDir + ArtifactsJson) &&
File.Exists(ListsDir + CharactersJson) &&
File.Exists(ListsDir + MaterialsJson)))
{
UpdateGameData(force: true);
}
}

public bool UpdateAvailable()
Expand Down Expand Up @@ -251,10 +261,22 @@ private void LoadMappings()
{
if (!Mappings.Any())
{
Mappings = new ConcurrentDictionary<string, string>(JObject.Parse(LoadJsonFromURLAsync(TextMapEnURL))
var mapping = JObject.Parse(LoadJsonFromURLAsync(TextMapEnURL))
.ToObject<Dictionary<string, string>>()
.Where(e => !string.IsNullOrWhiteSpace(e.Value)) // Remove any mapping with empty
.ToDictionary(i => i.Key, i => i.Value);

var mediumMapping = JObject.Parse(LoadJsonFromURLAsync(TextMapMediumEnURL))
.ToObject<Dictionary<string, string>>()
.Where(e => !string.IsNullOrWhiteSpace(e.Value)) // Remove any mapping with empty
.ToDictionary(i => i.Key, i => i.Value));
.ToDictionary(i => i.Key, i => i.Value);

foreach (var entry in mediumMapping)
{
mapping[entry.Key] = entry.Value; // Should be no overlap
}

Mappings = new ConcurrentDictionary<string, string>(mapping);
}
}
}
Expand Down Expand Up @@ -358,8 +380,12 @@ private UpdateStatus UpdateCharacters(bool force)
string nameKey = nameGOOD.ToLower();
int characterID = (int)character["id"];

if (characterID > 10000900) return; // Not playable characters

string const3Description = "";
string const5Description = "";
string skill = "";
string auto = "Normal Attack";

var value = new JObject();

Expand Down Expand Up @@ -416,7 +442,6 @@ private UpdateStatus UpdateCharacters(bool force)
skill = skills.First(entry => entry["skillIcon"].ToString().Contains($"Skill_S_{name}"))["nameTextMapHash"].ToString();
skill = Mappings[skill].ToString();


value.Add("ConstellationName", new JArray
{
GetConstellationNameFromId(characterID)
Expand All @@ -428,16 +453,34 @@ private UpdateStatus UpdateCharacters(bool force)
const3Description = talents.Where(entry => entry["icon"].ToString().Contains(name)).ElementAt(2)["descTextMapHash"].ToString();
const3Description = Mappings[const3Description].ToString();

if (const3Description.Contains(skill))
if (const3Description.Contains(auto))
{
constellationOrder.Add("auto");
} else if (const3Description.Contains(skill))
{
constellationOrder.Add("skill");
constellationOrder.Add("burst");
}
else
{
constellationOrder.Add("burst");
}

// The skill/burst name is always mentioned in the constellation's description so we'll check for it
const5Description = talents.Where(entry => entry["icon"].ToString().Contains(name)).ElementAt(4)["descTextMapHash"].ToString();
const5Description = Mappings[const5Description].ToString();

if (const5Description.Contains(auto))
{
constellationOrder.Add("auto");
}
else if (const5Description.Contains(skill))
{
constellationOrder.Add("skill");
}
else
{
constellationOrder.Add("burst");
}

value.Add("ConstellationOrder", constellationOrder);

Expand Down
2 changes: 1 addition & 1 deletion InventoryKamera/data/GOOD.cs
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ public GOOD(InventoryKamera genshinData) : this()
{
// Get rid of VS warning since we are converting this class to JSON
Format = "GOOD";
Version = 2;
Version = 3;
AppVersion = Assembly.GetExecutingAssembly().GetName().Version.ToString(3);
Source = "Inventory_Kamera";

Expand Down
Loading