DmitriySalnikov/GodotPCKExplorer

[Feature Request]: Move PCK reading/writing logic into a NuGet package

Closed this issue · 8 comments

Feature description

Hi there! Your program is awesome!

The title pretty much says it all, it would be awesome to see the PCK Reading/Writing functionality moved into its own NuGet package, so other people can make use of it in their code.

Implementation Ideas

No response

Can this feature be useful to someone else?

So this is a tool for editing already released games, and not for editing them before release. If you need to edit the PCK before the release, then Godot itself has the tools for this.

But if you really want to use this program from your code, there are console commands for this. You can also add the executable file of this program as a dependency of your C# project and use it as a library.

I see, the main concern here is being unable to compile windows forms on Linux. And yes I'm aware, i was hoping to use this library for Melonloader, as we're starting to look into godot support.

I was hoping the pck file logic could be decoupled from the main program so it can be used without windows forms needing to exist

I see, the main concern here is being unable to compile windows forms on Linux.

I wanted to add Linux support to the latest version, but I don't remember the reason why the program doesn't work. It seems that the problems were only with the UI on Linux.
So if you know a good cross-platform UI library for C#, you can recommend it. And I would like it not to require an additional 100MB+ of space and 200+ files.

I was hoping the pck file logic could be decoupled from the main program so it can be used without windows forms needing to exist

Do you want there to be no progress windows? At the moment I use BackgroundProgress window from WinForms, but I can try to get rid of it when working with the program as with a library.

So if you know a good cross-platform UI library for C#, you can recommend it. And I would like it not to require an additional 100MB+ of space and 200+ files.

Avalonia is pretty much the best you'll get. File size will increase but it is entirely cross platform, you could even do an Andorid Version. It works very similarly to WPF.

Do you want there to be no progress windows? At the moment I use BackgroundProgress window from WinForms, but I can try to get rid of it when working with the program as with a library.

Essentially just moving the PCK logic maybe into its own little csproj, decoupled entirely from the UI would be nice. You could publish it on NuGet, or we could add this repo as a submodule and only reference the PCK File project, that would be nice!

Avalonia is pretty much the best you'll get. File size will increase but it is entirely cross platform, you could even do an Andorid Version. It works very similarly to WPF.

Yeah, I know what it is. But as far as I remember, an empty project with all optimizations was more than 50MB (if not 100MB+). With this size, I can use Godot with C# support instead of Avalonia 😏
At the moment, the entire application takes up less than 1MB.

Essentially just moving the PCK logic maybe into its own little csproj, decoupled entirely from the UI would be nice.

I will try to do it, maybe soon

That's great to hear! Thanks for considering it ❤️

I think I've finally completed it in 2ec24ae. Now all the logic of PCK processing has been moved to a separate project.
I hope that everything will work as intended. I also hope that I will at least be mentioned in your project if Godot support appears in it :)

Thanks! Of course you'll be credited! ❤️❤️