[RELEASE] wudecon - File/Model Converter for SM1/SM2

Ok, a *.png search is getting me pretty much everything I want. Thanks again @LemonHaze, both for the app, as well as the help. I don't think I'll need to bother you for a while, as I have plenty of stuff to be getting stuck in to (although any tips are always much appreciated of course)
 
I can't seem to get Wudecon to open - initially my PC thinks it's a threat, and even after I tell it to 'Run anyway' it seems to load for a split second with an error message I don't get time to read and then boots me out. Any ideas @LemonHaze ?
 
Bump, anyone have any ideas?
If you already added your wudecon path to your antivirus exceptions, that should be enough. Remember wudecon its a console program, so it wont open with a gui and the like but passing commands through CMD. Just in case your clicking on wudecon.exe hoping
I mean, you open CMD and call wudecon with your desired arguments.
Thats why it closes probably.
Remember to be short for CMD tools paths. Without spaces in directory names.
 
If you already added your wudecon path to your antivirus exceptions, that should be enough. Remember wudecon its a console program, so it wont open with a gui and the like but passing commands through CMD. Just in case your clicking on wudecon.exe hoping
I mean, you open CMD and call wudecon with your desired arguments.
Thats why it closes probably.
Remember to be short for CMD tools paths. Without spaces in directory names.
…and I feel dumb now 😂 thanks!
 
Is there a command to quickly convert all mt5 and mt7 files to obj?
To make command line as simple as possible create 3 folders in a root directory
SMDATA (Copy the Tad & Tac files into)
EXTRACTED (wudecon dumps the extracted files, these are identical to a Dreamcast GDI and can be deleted later)
MODELS (where the converted obj models appear)

& copy all files from wudecon into the base directory

(if you are comfortable with adding directory locations with command prompt feel free to skip this and direct to folders where ever they are located)


Open command prompt

(SM1 EXTRACTION)

wudecon --tacfull "E:\SMDATA\disk_5be2c578.tad" "E:\EXTRACTED" "E:\MODELS" mt5

(SM2 EXTRACTION)

wudecon --tacfull "E:\SHENMUE2DATA\disk_5be2c4e2.tad" "E:\EXTRACTED" "E:\MODELS" mt7

common_5be2c578

(For Individual loose MT5 models from the Dreamast Passport/What's Shenmue disks use)

wudecon --all InputFolder OutPutFolder

Example of processing progress;

Code:
E:\>wudecon --tacfull "E:\SMDATA\disk_5be2c578.tad" "E:\EXTRACTED" "E:\MODELS" mt5
wudecon v1.0.7061.27731

Filename database initialized: 68679 entries.
Processing GZ..
E:\EXTRACTED does not exist as a file, falling back to batch mode.
Finished processing GZ!
Processing AFS..
E:\EXTRACTED does not exist as a file, falling back to batch mode.
Finished processing AFS!
Processing IPAC..
E:\EXTRACTED does not exist as a file, falling back to batch mode.
Finished processing IPAC!
Processing SPR..
E:\EXTRACTED does not exist as a file, falling back to batch mode.
Finished processing SPR!
Processing PKF..
E:\EXTRACTED does not exist as a file, falling back to batch mode.
Finished processing PKF!
Processing PKS..
E:\EXTRACTED does not exist as a file, falling back to batch mode.
Oops! E:\EXTRACTED\scene\01\d000\sprt.pks failed!
Exception: ShenmueDKSharp.Utils.InvalidFileSignatureException: The file signature could not be found!
   at ShenmueDKSharp.Files.Containers.PKS._Read(BinaryReader reader) in E:\_repo\wudecon\ShenmueDKSharp\Files\Containers\PKS.cs:line 91
   at ShenmueDKSharp.Files.BaseFile.Read(BinaryReader reader) in E:\_repo\wudecon\ShenmueDKSharp\Files\BaseFile.cs:line 87
   at ShenmueDKSharp.Files.BaseFile.Read(Stream stream) in E:\_repo\wudecon\ShenmueDKSharp\Files\BaseFile.cs:line 77
   at ShenmueDKSharp.Files.BaseFile.Read(String filepath) in E:\_repo\wudecon\ShenmueDKSharp\Files\BaseFile.cs:line 66
   at ShenmueDKSharp.Files.Containers.PKS..ctor(String filename) in E:\_repo\wudecon\ShenmueDKSharp\Files\Containers\PKS.cs:line 60
   at wudecon.Program.ExtractPKS(String path, String folder) in E:\_repo\wudecon\wudecon\Program.cs:line 423
Finished processing PKS!
Processing MT5..
E:\EXTRACTED does not exist as a file, falling back to batch mode.
Finished Processing MT5!
Completed 19791/19792 operations.
 
Last edited:
To make command line as simple as possible create 3 folders in a root directory
SMDATA (From the steam folder)
EXTRACTED (it dumps the extracted files)
MODELS (it puts the converted obj models)

& copy all files from wudecon into the base directory

(if you are comfortable with adding directory locations with command prompt feel free to skip this and direct to folders where ever they are located)


Open command prompt
(SM1 EXTRACTION)

wudecon --tacfull "E:\SMDATA\disk_5be2c578.tad" "E:\EXTRACTED" "E:\MODELS" mt5

(SM2 EXTRACTION)

wudecon --tacfull "E:\SHENMUE2DATA\disk_5be2c4e2.tad" "E:\EXTRACTED" "E:\MODELS" mt7

common_5be2c578

(For Individual loose MT5 models from the Dreamast Passport disk use)

wudecon --all InputFolder OutPutFolder

Example of processing progress;

Code:
E:\>wudecon --tacfull "E:\SMDATA\disk_5be2c578.tad" "E:\EXTRACTED" "E:\MODELS" mt5
wudecon v1.0.7061.27731

Filename database initialized: 68679 entries.
Processing GZ..
E:\EXTRACTED does not exist as a file, falling back to batch mode.
Finished processing GZ!
Processing AFS..
E:\EXTRACTED does not exist as a file, falling back to batch mode.
Finished processing AFS!
Processing IPAC..
E:\EXTRACTED does not exist as a file, falling back to batch mode.
Finished processing IPAC!
Processing SPR..
E:\EXTRACTED does not exist as a file, falling back to batch mode.
Finished processing SPR!
Processing PKF..
E:\EXTRACTED does not exist as a file, falling back to batch mode.
Finished processing PKF!
Processing PKS..
E:\EXTRACTED does not exist as a file, falling back to batch mode.
Oops! E:\EXTRACTED\scene\01\d000\sprt.pks failed!
Exception: ShenmueDKSharp.Utils.InvalidFileSignatureException: The file signature could not be found!
   at ShenmueDKSharp.Files.Containers.PKS._Read(BinaryReader reader) in E:\_repo\wudecon\ShenmueDKSharp\Files\Containers\PKS.cs:line 91
   at ShenmueDKSharp.Files.BaseFile.Read(BinaryReader reader) in E:\_repo\wudecon\ShenmueDKSharp\Files\BaseFile.cs:line 87
   at ShenmueDKSharp.Files.BaseFile.Read(Stream stream) in E:\_repo\wudecon\ShenmueDKSharp\Files\BaseFile.cs:line 77
   at ShenmueDKSharp.Files.BaseFile.Read(String filepath) in E:\_repo\wudecon\ShenmueDKSharp\Files\BaseFile.cs:line 66
   at ShenmueDKSharp.Files.Containers.PKS..ctor(String filename) in E:\_repo\wudecon\ShenmueDKSharp\Files\Containers\PKS.cs:line 60
   at wudecon.Program.ExtractPKS(String path, String folder) in E:\_repo\wudecon\wudecon\Program.cs:line 423
Finished processing PKS!
Processing MT5..
E:\EXTRACTED does not exist as a file, falling back to batch mode.
Finished Processing MT5!
Completed 19791/19792 operations.
Got it! How would I go about rigging these obj files?
 
Got it! How would I go about rigging these obj files?
Assuming you want to anímate a biped model, import the obj into Blender. Then join all the separate parts into one single mesh, right click into the 3D viewport and under "Armature" options there should be an option called "Rigify" (it may change depending on the Blender version you're using and it could require previous installation and enabling in the "User Preferences, Addons" too). This will load a humanoid skeleton into the scene. Align the armature to the model. When you finish, select the whole armature first and then add the obj to selection. Alt+P shortcut makes a windows pops allowing to attach the model to armature with weight data and all shit, select that (iirc it was the lower/last option). Now your model is rigged and can be animated either in Blender or exported in the appropiate format to Godot, UE, Unity or whatever similar game engine you want.
 
Learn Blender, there is no quick and easy solution, the models will need modifying/repositioning/scaling etc
What! When did Blender 4 came out? Man ive been disconnected! The whole 3.xx iteration has been exciting but didn't checked updates since maybe.. a year or so. Blender is awesome.
 
Got it! How would I go about rigging these obj files?
Fishbiter also created a plugin or something that automatically ported the models into Unity but I dont think he ever publicly released it
 
Cool! Seems like some stuff was implemented in ShenmueDKSharp which breaks wudecon, I've fixed this now and tested it, please try this build :) Also, change your --tacfull to --tacfullv or v--tacfull to enable verbose logging.

Wudecon:
The link don't work anymore
Does anyone have may 27 2019 wudecon? that's made by LemonHaze the link don't work anyone, and it's the only fixed version by LemonHaze
 
Last edited:
Back
Top