MaKiPL / OpenVIII-monogame

Open source Final Fantasy VIII engine implementation in C# working on Windows and Linux (Android and iOS planned too!) [Monogame]
MIT License
642 stars 59 forks source link

Support Tonberry Mods #73

Open Sebanisu opened 5 years ago

Sebanisu commented 5 years ago

I have some basic file structure support right now. For files that had filenames this works 80%. Some pallets aren't detected correctly. Because for tonberry the filename doesn't matter as long as the hash is right. At least I think so.

Some mods have to use the hashmap to find out what texture and pallet to replace. So we would need to port the hash code from tonberry to c#. It's in the GlobalContext.cpp.

Maybe it would be better to use a standard hash. Since they seem to want a new hash. Once we have mapped out all the textures we can run multiple hashes on all of them. Track the time and collision rate. Then we could suggest that be added to tonberry enhanced. Though tonberry doesn't check the entire texture so we could come up with tests like every other pixel and keep going till we get maximum speed and 0 collisions. https://softwareengineering.stackexchange.com/questions/49550/which-hashing-algorithm-is-best-for-uniqueness-and-speed

I am gonna put this on the back burner for now I wanted to put this here as a remember to come back to this.

Sebanisu commented 5 years ago

We are going to skip support of hash. As I don't think we can generate the hash w/o making exactly the same data in our textures. So we will just require paths and filenames to be very specific.

Sebanisu commented 5 years ago

We are going to skip support of hash. As I don't think we can generate the hash w/o making exactly the same data in our textures. So we will just require paths and filenames to be very specific.