Mod Installer

Do you think this application will be useful?

  • Looks fine, but missing functionality

    Votes: 0 0.0%
  • Works fine, but missing fancy design

    Votes: 0 0.0%

  • Total voters
    7
Joined
Aug 24, 2018
Hey guys. I need your opinion about the idea I have, not sure is it good one or not. I will start from the basics:

As you know, only two methods of files replacement exists at the moment - TAD/TAC files repacking, and placing files with proper names in the game folder with applying manual changes in the TAD file ("hash break").

First one is good for the end user - enough just to copy files in the game folder. But there is no way to install several similar mods (textures for example), as file should be overwrite in this case and older mod will be removed.

Second option is still working in 1.01 and probably will always works, but it requires HEX editing of the files, which is not so simple task for everyone. That is I'm trying to simplify, avoiding manual edits. I made a test application (link at the bottom), it's quite ugly but good enough for the concept.

How it works for the user - app will scan config files in /mods/ folder, read hashes that should be "damaged" and render them as checkboxes.
- If file hash is valid, checkbox will be unchecked
- If "reversed" hash value found, means mod is active - box is checked.
- If no hash or reversed hash was found, label appear in red. It means mode is not supported by installed version.
After update button clicking, TAD files will be checked again - if needed, hash will be reversed (like 4C 5F F3 33 -> C4 F5 3F 33, btw how do you think it's safe?), or reverted to normal.
This action should be applied on each game update, as some mods can be cleaned by updated.

For the modder it's a bit more complicated - each file should be added separately in configs. I haven't seen that files hashes was changed after 1.01 update, but if it can happen - version control should be implemented. Currently config files can be edited manually, but it's possible to make a UI form in same application where mod author can add description, files list etc.

In test application (Shenmue I only supported) for example two mods added - one is valid for my version of the game, which replaces menu labels on TEST, second is invalid hash but still appear in the files list made by @Raymonf for unknown reason.

https://drive.google.com/open?id=19TeLUOgq5TW73J7l2q5Q2HhibEBdcfGP

I know, it should be named as "Hash Breaker" but I can guess no one will install such program in clear mind.
Last poll option is not a joke - my only goal is catalyze modding process, so if someone can do it better - feel free to take this project.
 
Last edited:
Have you thought about injecting your own TAD by hooking the executable? Would have the advantage of not modifying the game's install at all...
 
I think before a Mod loader is created we still need to extract and display all the files from an Archive.
Currently Derplayers' 'Shenmue HD Mod tools' shows 5639 seperate files from the Disk Tad/TacArchive.
1724 of these are 'Unknown files' I can Identify many by looking at the headers, some are compressed (7zip) pkf/pks or MapInfo.bins. I believe many are 2nd level folders with their own files, tbh im not 100% sure but Derplayer is currently working on this

I could run a file comparison between PC & DC but im not sure if that would help Ultimately all files need to be identified by a name.
dups.jpg
Ive never seen a game work with hashes like this and the Wulinshu hash list shows that the game uses a regular file directory. but once we have all the files and hash/hex locations, we should be able to extract /create a full directory of game files and then use that directory for a Mod Loader that can then repack everything into the game, It seems that future updates are also going to be renaming archives and files within, so there may need to be a plan in place to re-identify modified/renamed files. For now identifiying all files and locations should be the main focus, once we have that, then figure how how best to simplify the process
 
Last edited:
Ive never seen a game work with hashes like this and the Wulinshu hash list shows that the game uses a regular file directory.
Sonic Mania works just like this, but it's a completely different file format. The unpacker for that includes a file list so that it can unpack everything correctly.

The mod loader for that works exactly how one should work here - hook the original game and when a file is requested internally via it's path, check for that path in an enabled mod folder before letting the game fall back to its built-in logic that pulls from the TAC.
 
Looks like we already got several mod install tools with better functionality, can't see a point to finish this one.
Will focus on something else, thank to everyone for your opinion.
 
@thealx some things still haven't been thought completely, such as mod priorities.. @derplayer was going to overlay TACs (game sorts by UNIX timestamp) and a tool for automatically sorting mod priority by changing their timestamps might be useful
 
Looks like we already got several mod install tools with better functionality, can't see a point to finish this one.
Will focus on something else, thank to everyone for your opinion.
I think you should release it anyways, it's good to have multiple options for modding.
 
Back
Top