$ show atenfyr/UAssetGUI
UAssetGUI is a Windows Forms desktop application for low-level examination and modification of Unreal Engine game assets. It allows users to open, edit, and save .uasset, .umap, .pak, and .utoc files, with JSON export/import, C# scripting via embedded Roslyn, property mappings for unversioned assets, and full theming and localization. The architecture is a monolithic GUI built on .NET 10 preview, relying on the UAssetAPI submodule for serialization. Key entry points are Program.Main and Form1 (the main editor window). The application targets modders and researchers who need to inspect or alter binary asset data directly. It includes custom controls, a plugin-like script system using collectible assembly load contexts, and supports container file extraction/repacking via native binaries. The codebase is well-structured for its niche but tightly coupled to Windows Forms and the UAssetAPI ecosystem.
The LLM identified 3 files worth highlighting for reuse:
A custom TreeView subclass that implements owner-drawn text and right-click selection behavior. It is self-contained (depends only on System.Windows.Forms and System.Drawing) and can be extracted into any WinForms project to provide enhanced tree view functionality with minimal modification.
Implements a collectible AssemblyLoadContext for isolating dynamically compiled C# script assemblies. This allows scripts to be loaded, executed, and unloaded without polluting the main application domain. The pattern is generic and can be reused in any .NET project that needs safe, sandboxed script execution.
A modal progress dialog form with a progress bar, status label, and cancel button. It supports cancellation via a CancellationToken and is designed for use with background operations. The form is standalone (depends only on standard WinForms) and can be extracted for any .NET desktop application needing progress feedback with user cancellation.