Forklift, a mod loader for Shenmue 1/2 HD

Joined
Aug 11, 2018
Greetings from Team (name undecided)!

Basically, @davi made a mod loader and I added some stuff to it. The mod loader is called Forklift, because they load stuff. This is a literal mod loader, not a mod manager.
It's attached in the thread below.

v1.1.0 Notice
As of Forklift v1.1.0, Forklift comes in two versions: NoGUI and GUI. The GUI version comes with a UI that lets you toggle modded files on or off, and lets you toggles Forklift on and off entirely with the F11 key. F12 toggles the Forklift Manager window.

DLL Usage
To use this loader, you need to inject the DLL. To do this, you have two realistic (as of right now) options. CHOOSE ONE METHOD.

1. Use a proxy DLL that injects Forklift.

Simply extract both DLLs in the zip archive to your Shenmue folder. Forklift will load every time afterwards.

2. Inject the DLL every time at startup.
Use an injector like Extreme Injector and make it inject the Forklift DLL at startup (Options > Auto Inject).

Modding Usage
To use this to mod the game, create a folder called "mods" inside the Shenmue directory. Add all files with the correct filenames and the correct file structures. Most packaged mods that use Forklift are drag-and-drop, either into the main game directory, or into the "mods" folder. Please see mod-specific installation instructions.

Compatibility
The hook has addresses for Shenmue 1 and 2, versions 1.00 (launch version) to 1.07.

Server Details (Pseudo-telemetry)
There is no more telemetry as of version 1.0.6b. No data is sent to any servers.
We have deactivated the storage of new hash data as of June 28, 2021. These details are still sent to the server, but are no longer stored:
  • The game you're playing (sm1 or sm2)
  • A list of game file paths and hashes
  • Your IP address

System Requirements
In the unlikely event that you receive a DLL error of some sort, try installing the latest Visual C++ x64 Redistributable Package: https://aka.ms/vs/17/release/vc_redist.x64.exe

Issues
If you encounter any issues, please reply here with a bug report.

Source

Discord Server
Come join us in the reverse engineering server: https://discord.gg/yM24FhMTsa

Changelog
1.1.0: See the changelog on GitHub: https://github.com/Raymonf/Forklift/releases/tag/v1.1.0
1.0.6b: Removed telemetry, so there should no longer be a version mismatch message
1.0.6: Added compatibility for patch 1.07
1.0.5: Added compatibility for patch 1.06
1.0.4: Added compatibility for patch 1.05
1.0.3: Added compatibility for patch 1.04
1.0.2: Added compatibility for patch 1.03
1.0.1: Added a version check

Have fun! We are Team (name undecided). Expect nothing more from us.
 

Attachments

  • Forklift.v1.1.0_GUI.zip
    650 KB · Views: 315
  • Forklift.v1.1.0_NoGUI.zip
    416 KB · Views: 154
Last edited:
By the way, my previously posted mods should work. HD Ryo is still pending an update to match newer textures (and to add more scenes), though. Bulk of work done recently was related to this.
 
so the Wulinshu hook was only working for version 1.0 , so if you say thats integrated into your forklift dll does that mean the Wulinshu hook now works on all versions
 
so the Wulinshu hook was only working for version 1.0 , so if you say thats integrated into your forklift dll does that mean the Wulinshu hook now works on all versions
No, the hook released in this thread works on all versions.
 
because I just had a working test, and am way too excited, I'd just like to note that the upcoming Shenmue Audio Restoration Project -WILL- work with Forklift
 
This is really cool! Was holding off on installing stuff like the DS4 buttons mod as it seemed a bit daunting, but with this it was literally just a drag and drop. Super easy.

Great work! The future of Shenmue modding really does seem bright.
 
Great!

bandicam_2018-09-06_19-59-37-580.png
bandicam_2018-09-06_19-50-02-516.png
Shenmue_2018-09-06_20-53-34-166.png
bandicam_2018-09-06_20-00-27-796.png
Shenmue_2018-09-06_20-54-21-745.png
 
Got to hear the classic SEGA startup sound so I can confirm this mod loader works for me, but the whole file structure still confuses me. For example, how do I set up Drogean's HD Environmetal Texture Overhaul to work with this loader? I see some texture folders in the Wulinshu database, but they seem to be mostly related to UI stuff.
 
Is that HD Ryo/Shenhua copied from the DC Passport disk or does it exist in the game?
 
F**k me every download site for 'Extreme Injector' is like a breeding ground for malware aids,

I dont know how it works but Derplayers ShenmueHDToolsV1.1 redirects from the tad/tac archive to a 'mods' folder in the dx11 folder. Its quite painless

I dont mean to sound negative but I generally avoid 3rd party dlls or using additional programs that could be potentially harmful, The simpler it is the more popular it will become

A Shenmue exe patcher might be usefulI, but I really envision a virtual shenmue directory that gets repacked into a tad/tac archive.

Also the Wulinshu list models as FBX , is that a Wulinshu file extension designation or what the Shenmue.exe classifys models as?

Also also, If a mod fails, will the game revert to the original file ?
 
I dont mean to sound negative but I generally avoid 3rd party dlls or using additional programs that could be potentially harmful, The simpler it is the more popular it will become
I totally get that, but as someone who has worked closely with the team making this, I can guarantee it's not harmful; I've seen every step of development. It's fine, I guarantee it. Also, you don't need any dll injector anymore, a proxy dll has been added, so just unzip it to the sm1 or sm2 directory, drop mods in the mods folder, and you're good to go.

A Shenmue exe patcher might be usefulI, but I really envision a virtual shenmue directory that gets repacked into a tad/tac archive.
.exe patcher wouldn't really be useful, since very little of this has to do with the .exe, and the game already has a filesystem fallback so packing tac/tad is literally pointless and needlessly hacky. That's what this .dll does, it just mass invalidates as needed, and uses the filesystem fallback.

Also the Wulinshu list models as FBX , is that a Wulinshu file extension designation or what the Shenmue.exe classifys models as?

That is the format the models are in.
 
I totally get that, but as someone who has worked closely with the team making this, I can guarantee it's not harmful; I've seen every step of development. It's fine, I guarantee it. Also, you don't need any dll injector anymore, a proxy dll has been added, so just unzip it to the sm1 or sm2 directory, drop mods in the mods folder, and you're good to go.

.exe patcher wouldn't really be useful, since very little of this has to do with the .exe, and the game already has a filesystem fallback so packing tac/tad is literally pointless and needlessly hacky. That's what this .dll does, it just mass invalidates as needed, and uses the filesystem fallback.

I tried it with the last 2 build versions of the game , but im unsure if it didnt inject or my mod didnt work and it reverted to the original files, when it crashes I know its something I did wrong

I dont think a dll-less virtual file system repacking a tad or mini mod tad (as described) is hacky, all files can be named and put in a place that can be browsed identified and modified without referencing a hash list or comparing dreamcast file sizes

That is the format the models are in.
hehe , thats cute but ive been working with HRCM / MT5s for a good 11 years now... however.. it might possibly mean that there is some sort of middleware for MT5 going on OR the engine is able to load a form of fbx instead of mt5/map/hcm

Still early days, but for tools and mods to appear it needs to gain traction, a visit to a malware hub made my disk floppy
 
hehe , thats cute but ive been working with HRCM / MT5s for a good 11 years now... however.. it might possibly mean that there is some sort of middleware for MT5 going on OR the engine is able to load a form of fbx instead of mt5/map/hcm

...It loads a form of .fbx (I haven't delved into the model side, I'm the sound guy, so excuse any mild inaccuracies). To my understanding, this port is a weird hybrid of dreamcast and Xbox (which would explain the presence of .fbx)

EDIT: also, just saying; there's no need to be a dick with your "hehe, that's cute" bullshit.
 
I'm not trying to be negative, honestly its all good progress towards the future of modding shenmue,
my original question was does the shenmue file directory 'genuinely' call them 'fbx' or is it just a designation of the Wulinshu for the model file. Being told mt5 are fbx is pretty funny to me

The hash list turns a PKS/F container into a folder structure, which after 30 seconds of reflection would mean that repacking PKFs isnt needed, Also I am a dick, just be sure of what you say and say what you mean

Im gonna go play Dragon Quest for the next ... few weeks , if everything isnt exactly how I want it when I get back, you're all fired

View attachment 1170
Baka x
 
I can't seem to uninstall mods loaded with Forklift. I noticed that the DS4 button mod was making the UI flicker back and fourth between PS4 and Xbox style so I removed the files from my mod folder yet the PS4 icons still appear in game. Even after removing all traces of Forklift, the mod and verifying the game files on Steam, I can't get the game back to normal.

Any suggestions?
 
I can't seem to uninstall mods loaded with Forklift. I noticed that the DS4 button mod was making the UI flicker back and fourth between PS4 and Xbox style so I removed the files from my mod folder yet the PS4 icons still appear in game. Even after removing all traces of Forklift, the mod and verifying the game files on Steam, I can't get the game back to normal.

Any suggestions?
If this is your first time playing the v2 patch, this has been happening since it hit beta, at least for some people, myself included. The game will use DS4 prompts while using the dpad but using other buttons switches back to the xbox prompts. I can't speak for the other people I've seen with this issue but I haven't installed any mods, so for me at least, there's no issue of left over files. A few people posted about it in the v2 beta thread on steam discussions but it never got addressed.
 
If this is your first time playing the v2 patch, this has been happening since it hit beta, at least for some people, myself included. The game will use DS4 prompts while using the dpad but using other buttons switches back to the xbox prompts. I can't speak for the other people I've seen with this issue but I haven't installed any mods, so for me at least, there's no issue of left over files. A few people posted about it in the v2 beta thread on steam discussions but it never got addressed.
Oh interesting. Yeah I've been using the V2 patch and this is the exact same behaviour I'm encountering. Thanks for letting me know!
That potentially means that native DS4 support is in the works which would be really nice.
 
Back
Top