Help Me to Help You

(Modding and other series related projects)

Help Me to Help You

Postby Upper Dave » Sat Jan 16, 2016 5:11 pm

I've tried for about a year to figure this out, and it's getting to the point where I'm pulling out my beard because all the hair on my head is gone. If I can figure it out then I can make some really fantastic community projects, and the 2D Shenmue adventure game I'm working on would happen much faster.

I need a way to swap character models in Shenmue 1, on the fly (as in, while the game is running, because burning it again each time isn't an option). I thought cheat codes could make this possible, as I was able to find codes which swap out lines of dialogue between two characters, and even switch Ryo's skin between jacket and no jacket (and shoes / socks), but I'm not entirely sure if it's even possible with cheat codes, as I can't figure out where they might have needed to use variable character models depending on the scene.

Do you either have another suggestion, or a way I might be able to track down a model swapping code?

I know it's possible to swap models and then burn a disc, but that takes a little too long for what I want to achieve, which is ripping just tons of 2D assets.
User avatar
Upper Dave
Funny Bear Burger Clerk
Funny Bear Burger Clerk
 
Joined: March 2014
XBL: Darth Moncalf
Steam: Mooncalfian
Favorite title: Shenmue
Currently playing: DA: Inquisition

Re: Help Me to Help You

Postby ReeceKun » Sat Jan 16, 2016 6:48 pm

--------------------------------Charcter swap without burning discs--------------------------------
Download a GDI image of Shenmue (disc 1)

Use GDI extractor to extract track 3 into its file structure folders

Use shenmue2xboxswap.jar to swap characters as described here
https://sites.google.com/site/shenmuemo ... g-tutorial

Use GDI Builder to select the original IP.bin , the folder that contains the modified track 3, select the original track 4 and 5.

GDI builder will then replace the original track3 and track 6

and then you can play the modified GDI with NULL DC instead of buring tons of CDS
---------------------------------------------------------------------------------------------------------
Im not sure what you mean by ripping 2D assets , if you just mean textures you can get them all with PVR dissector , and 7zip to extract any compressed PKF files
--------------------------------------------------------------------------------
Charcter swapping with codes is an interesting idea, the trouble would be Identifying the value for the character you want to swap
Image
This pic is just from another forum post its a mapinfo.bin HRSK is Nozomi but the Hex Value is 4852534B .. i wonder what would happen if you searched for that code ingame (i could be wrong but I always assume that the emulator itself scrambles the values) I also cant imagine that a charcter would swap instantly without the level reloading
User avatar
ReeceKun
Man Mo Acolyte
Man Mo Acolyte
 
Joined: November 2009
Location: North Wales (UK)
Favorite title: Shenmue
Currently playing: Skyrim

Re: Help Me to Help You

Postby Upper Dave » Sun Jan 17, 2016 9:46 am

Yeah the starting point is always the hardest when it comes to codes. I'll try that though, thanks!

Yeah when I said burning I meant ... that. It would take a lot of time for each character.

By ripping, what I mean is I'm grabbing screens of each character so I can separate their body parts and then create 2D animation rigs of them in Spriter Pro. That's very easy for characters like Ryo, who you can move around to get the perfect view of each body part from each angle, but for for characters who only ever walk and talk it becomes a bit tricker. Far trickier for characters who are only ever in cutscenes.

The end result ends up like this...
Image
User avatar
Upper Dave
Funny Bear Burger Clerk
Funny Bear Burger Clerk
 
Joined: March 2014
XBL: Darth Moncalf
Steam: Mooncalfian
Favorite title: Shenmue
Currently playing: DA: Inquisition

Re: Help Me to Help You

Postby ReeceKun » Sun Jan 17, 2016 10:07 am

As described in this post, with help, I have devised a method for ripping any character model
viewtopic.php?f=37&t=47432
Image
This shows that Its possible but there really is no way to do it quickly without any fuss (such is life)
User avatar
ReeceKun
Man Mo Acolyte
Man Mo Acolyte
 
Joined: November 2009
Location: North Wales (UK)
Favorite title: Shenmue
Currently playing: Skyrim

Re: Help Me to Help You

Postby Upper Dave » Sun Jan 17, 2016 10:24 am

I'm not trying to rip 3D models, unfortunately. Doing that inevitably changes the lighting to the point of it being impossible to get it to look *exactly* how it looks in the original game. Close, but not exact.

Plus, the methods available to me take way too long for the scope of the project I'm attempting. I need to find a shortcut which doesn't take me long, and I figured swapping characters on the fly would be the fastest way. I know it's possible, as I've swapped Ryo's jacket model to the t-shirt model on the fly (which changes instantly), but I'm trying to figure out if it's possible to swap him to other characters. I've also managed to change him into the bicycle that the postman uses, but not people.
User avatar
Upper Dave
Funny Bear Burger Clerk
Funny Bear Burger Clerk
 
Joined: March 2014
XBL: Darth Moncalf
Steam: Mooncalfian
Favorite title: Shenmue
Currently playing: DA: Inquisition

Re: Help Me to Help You

Postby Upper Dave » Sun Jan 17, 2016 11:19 am

Tried that code out. I think it seemed to make the game crash at one point, when somebody got stuck trying to walk into the Tomato Convenience Store, but no changes to Nozomi.

I tried it as it was, and also converted it to 16 & 32 bit, but no luck. Was that on the NTSC or PAL version?
User avatar
Upper Dave
Funny Bear Burger Clerk
Funny Bear Burger Clerk
 
Joined: March 2014
XBL: Darth Moncalf
Steam: Mooncalfian
Favorite title: Shenmue
Currently playing: DA: Inquisition

Re: Help Me to Help You

Postby ReeceKun » Sun Jan 17, 2016 12:10 pm

Upper Dave wrote: I tried it as it was, and also converted it to 16 & 32 bit, but no luck. Was that on the NTSC or PAL version?

HRSK is the reference to Nozomi in all versions (this shows what the charcter IDs are)
https://sites.google.com/site/shenmuemo ... ids-models

I didnt realy expect it to work due the the utter mess the shenmue models directory uses. Back in my Tomb Raider Level Editor days a programmer used a program called 'OllyDbg' to make instant changes in the TRLE.exe and eventually made patches to make many changes ingame, Its more extensive than a basic cheat engine and might be better at identifying running program memory state changes, I also have no idea how it would work with a running emulator.

I cant imagine how you found the code for the postman bicycle, but its interesting
User avatar
ReeceKun
Man Mo Acolyte
Man Mo Acolyte
 
Joined: November 2009
Location: North Wales (UK)
Favorite title: Shenmue
Currently playing: Skyrim

Re: Help Me to Help You

Postby Upper Dave » Sun Jan 17, 2016 2:10 pm

I'm not certain, but I think the code I found actually swaps the equipped item on Ryo. And that's why it can change his shoes, jacket, give him the katana, and change him into the bicycle, as they are all items characters use, so to speak, in that area. I'm just not sure why it wouldn't work with the broom, if that were the case, but that's my working theory. I'd hoped that the character model swap would be close by to that,but no luck. I found those codes by playing with the null dc cheater trainer (code search) function.

Yeah I've used a similar cheat engine to the one you described there, which shows live updates to memories you narrow down through the trainer. Only problem is that it doesn't work on the game running in the emulator, but only the emulator itself. I'm unsure exactly why, but I'm sure there's a good reason. Null DC Cheater is okay, but doesn't show live updates as they happen. Which, to be honest is useless when looking for model swaps, because the game doesn't swap any models during the course of the game.

I saw that list of IDs, and I figure it might be helpful, but yeah the cheat codes do seem to work on memory addresses for the entire game in its compiled (or whatever) state. So I'd need to know the offset of raw hex address to compiled hex address, which I have no clue about.
User avatar
Upper Dave
Funny Bear Burger Clerk
Funny Bear Burger Clerk
 
Joined: March 2014
XBL: Darth Moncalf
Steam: Mooncalfian
Favorite title: Shenmue
Currently playing: DA: Inquisition

Re: Help Me to Help You

Postby Upper Dave » Sun Jan 17, 2016 2:28 pm

Actually, on further investigation it seems like the IDs are useful without needing to offset the address at all. I searched for Ryo's ID (converted to hex, then to value) and it came up like 19 times. I did the same for Cathy Wilkins and it came up once. So yeah, this could be interesting. Thanks. :)

Upper Dave has received a thanks from: ReeceKun
User avatar
Upper Dave
Funny Bear Burger Clerk
Funny Bear Burger Clerk
 
Joined: March 2014
XBL: Darth Moncalf
Steam: Mooncalfian
Favorite title: Shenmue
Currently playing: DA: Inquisition


Return to Community Projects

Who is online

Users browsing this forum: No registered users and 1 guest

Powered by phpBB © 2000-
ShenmueDojo.net