Hello beloved, dead community,
i think its time for some fresh sources. I've reverse engineered the GFXFileManager. For the ones among us who don't know what this is: This thing handles all PK2-Container related stuff, meaning it is used to read and write files in and to the PK2-Container. The launcher and the server also use it to access files on the disk.
Yes. [Only registered and activated users can see links. Click Here To Register...]. But his codebase was super ugly. (Sorry Drew <3).
For now, its doing what I am using it for: Easy development
All files are loaded from the disk, resulting in your SRO_Folder looking like this!
So, having its interface reverse engineered, you now can:
Hints and Warnings:
Complete Source: [Only registered and activated users can see links. Click Here To Register...]
License: [Only registered and activated users can see links. Click Here To Register...]. No warranties whatsoever!
Download: This is a library. There is no use in a compiled version. Download the source on GitLab.
Have fun.
i think its time for some fresh sources. I've reverse engineered the GFXFileManager. For the ones among us who don't know what this is: This thing handles all PK2-Container related stuff, meaning it is used to read and write files in and to the PK2-Container. The launcher and the server also use it to access files on the disk.
Yes. [Only registered and activated users can see links. Click Here To Register...]. But his codebase was super ugly. (Sorry Drew <3).
For now, its doing what I am using it for: Easy development
All files are loaded from the disk, resulting in your SRO_Folder looking like this!
[Only registered and activated users can see links. Click Here To Register...]
(Note: The Media.pk2 is still existing in a minified version because edxLoader requires it.)
[Only registered and activated users can see links. Click Here To Register...]
(Note: The Media.pk2 is still existing in a minified version because edxLoader requires it.)
[Only registered and activated users can see links. Click Here To Register...]
So, having its interface reverse engineered, you now can:
- Create your fully customized container format
- Make a universal PK2 Editor that does not has to deal with the container-structure
- Replace the container with plain disk access (for easier development)
- Create wrappers for different file-types or names and replace entire file-formats (like introducing a compressed image format, maybe?)
- ...
Hints and Warnings:
- It is developed based on the GFXFileManager in VSRO 1.188. Other versions and locales can work, but its likely they won't. Nonetheless, having the source you can easily make it work for other versions.
- Feel free to report bugs on GitLab (please check if your bug has been reported already, and please put a meaningful description of your problem.)
- Feel free to request stuff
- I've never seen a good, community driven, silkroad project and I doubt it will ever exist. Anyway, feel free to contribute code on GitLab.
- Please keep in mind: VSRO was compiled on Visual Studio 2005 (Platformtoolset 80). Microsoft does not care about ABI-compatibility between toolsets. While GFXFileManager seems entirely separated from the Main codebase, any newer toolset than 80 might break the DLL. Visual Studio 2010/Toolset 100 seems to work fine till now.
- Compiling on "Debug" will break the ABI, no matter what version you are using! Always compile on "Release"!
- I've even implemented some of the bugs the original file manager had ;)
Complete Source: [Only registered and activated users can see links. Click Here To Register...]
License: [Only registered and activated users can see links. Click Here To Register...]. No warranties whatsoever!
Download: This is a library. There is no use in a compiled version. Download the source on GitLab.
Have fun.