int displayError(string err) { Console.WriteLine($"Dumper error: {err}"); Console.WriteLine("Press any key to exit"); Console.ReadKey(); return 1; } Console.WriteLine("Dumper start"); var dumper = new Dumper(); bool hasInitialized = await dumper.InitAsync(); if (!hasInitialized) return displayError("Dumper.InitAsync failed"); Console.WriteLine("Dumper initialized"); var dumpTasks = new (Func dumpFunc, string filename, string description)[] { (dumper.DumpCustomizationItems, "customizations.json", "customizations"), (dumper.DumpItems, "items.json", "items"), (dumper.DumpAddons, "addons.json", "addons"), (dumper.DumpOfferings, "offerings.json", "offerings"), (dumper.DumpPerks, "perks.json", "perks"), (dumper.DumpDLCs, "dlcs.json", "dlcs") }; foreach (var (dumpFunc, filename, description) in dumpTasks) { string? json = dumpFunc(); if (json != null) { File.WriteAllText(filename, json); Console.WriteLine($"Dumped {description}"); } else Console.WriteLine($"Failed to dump {description}"); } Console.WriteLine("Dumper finished"); return 0;