PS3 [RELEASE] Playstation Home SDAT Dumper (Decrypts SHARC and LUA)

On that note, how the actual heck do you find the correct .SCENE and .SDC filename? They're not listed anywhere but don't work as expected if they don't have the right filename. I've spent more time on these two things than anything else Home-related and I just can't figure out how it works. I want to add scenes now that I can but I genuinely cannot figure out how this is set up!
For those, the real original names are only referenced in the SCENELIST.XML, which are generally encrypted on newer versions. BUT, the names are not important at all. You can name those files anything you want, as long as you link up whatever name you used in the LOCALSCENELIST.XML it will work fine.
 
How do I get around this? Is it waiting for more assets to load in that never do? I know all of the functions for this game work on RPCS3 because it was a scene during DH's closed beta, I played so much of that. Probably something really simple. I can even see enemies fighting in the distance, taunting me
Dont forget DH have got online servers set up which will give the responses the mingames expect, and also they have patched the original files. Just because they have something working on RPCS3 does not mean it will work for you by just extracting the original files.
 
Thanks to everyone here at PSX-Place, Aldostools, Bucanero, Esc0rtd3w, Bguerville, STL and everyone else, and BIG shoutout to everyone in the Home Revival community who has been willing to share files and info, Lots of little things came together for the perfect storm to make this app possible. SpookySniper, Splicewave, VelocityGaming5, JustMaster, Jumpsuit, Rew, and all the rest who would rather not be mentioned. Thanks to everyone who leaked files over the years, without you it would not have been possible either.

@DeViL303 Really happy to see this tool released! :D I know for sure you've been working really hard solving this PS Home problem, so I'm thrilled to see that finally you've achieved a complete path to preserve all the content, encrypted or not :)

Congrats!
 
I can't believe I didn't see this yet, now everything makes sense. Here's another question though - if a scene loads you into a different scene via trigger or something, how do I make that work? Surely it looks for a specific filename, right?
 
I can't believe I didn't see this yet, now everything makes sense. Here's another question though - if a scene loads you into a different scene via trigger or something, how do I make that work? Surely it looks for a specific filename, right?
Yeah, scenelinks.

Just change the DestinationID in the SCENE file to match whatever name you used in the localscenelist.xml.

I do not mean the SCENE file fiIename here, I mean whatever you put in the scene name field in the localscenelist.xml needs to be used for the DestinationIDs.

Note: If the client tries to load a scene name that does not exist in the localscenelist.xml, it will default back to the basic apartment instead.
upload_2022-12-5_19-24-23.png
 
Last edited:
The reason I ask is because the Sodium teleporers do the teleporting animation (all objects added correctly) but you don't actually scene transition, you just get put back where you were. I was wondering why this was, it obviously doesn't put you back in Harbour Studio.

I have another question - when figuring out what objects I need to add for a scene, I look at RPCS3's log. However, when I need to look for the gameName or objectName, I open the scene's .SCENE file and search for the uuid displayed in RPCS3's log... it's nowhere to be found. I look at scenes made by the same company, also nowhere to be found. Is there a more reliable way of finding these?
 
The reason I ask is because the Sodium teleporers do the teleporting animation (all objects added correctly) but you don't actually scene transition, you just get put back where you were. I was wondering why this was, it obviously doesn't put you back in Harbour Studio.

I have another question - when figuring out what objects I need to add for a scene, I look at RPCS3's log. However, when I need to look for the gameName or objectName, I open the scene's .SCENE file and search for the uuid displayed in RPCS3's log... it's nowhere to be found. I look at scenes made by the same company, also nowhere to be found. Is there a more reliable way of finding these?
Someone else might be able to help with that. I don't use RPCS3 at all.

I just pull UUIDs from the scene file normally.
 
The reason I ask is because the Sodium teleporers do the teleporting animation (all objects added correctly) but you don't actually scene transition, you just get put back where you were. I was wondering why this was, it obviously doesn't put you back in Harbour Studio.

I have another question - when figuring out what objects I need to add for a scene, I look at RPCS3's log. However, when I need to look for the gameName or objectName, I open the scene's .SCENE file and search for the uuid displayed in RPCS3's log... it's nowhere to be found. I look at scenes made by the same company, also nowhere to be found. Is there a more reliable way of finding these?
Actually, it can depend what build you are using. Some builds just have loads of OBJECT errors built in due to missing files. So if you are seeing missing objects that are not referenced by UUID in the SCENE file, its probably an issue with your build.

It is also possible that one object tries to load another, or even looks online for an object. But afaik that is rare.

I recommend testing on a base build like the pkg in the HDK with no other scenes or mods. This way you can be sure there are no file conflicts or issues with the build like missing clothing objects or whatever.
 
Last edited:
Like in some cases, an object in, for example Granzella Southern Beach Hideaway loads an object from the Personal Jet Ski scene because it has a minigame that lets you load that scene and start the race. But sometimes I'll check every scene from that company and not find it. Then there's the Sodium teleporters which I'm pretty sure call for Online download prompts so that's probably why that doesn't work.

Here's another question - some clothing/furniture sdats don't contain all the thumbnail types, either only large.png or only small.png, but I believe they should. Why don't they? Also is there a list of clothing types? "Torso" is listed as "Tors" in the files and won't load if it's anything other than Tors, so if there's a list then that would be really helpful.
 
Like in some cases, an object in, for example Granzella Southern Beach Hideaway loads an object from the Personal Jet Ski scene because it has a minigame that lets you load that scene and start the race. But sometimes I'll check every scene from that company and not find it. Then there's the Sodium teleporters which I'm pretty sure call for Online download prompts so that's probably why that doesn't work.
Yeah its tricky, each dev had their own system, even each scene had its own system in some cases. Really it just requires reversing the LUA to recreate whatever it is looking for, or patching it out altogether. Not easy.
Here's another question - some clothing/furniture sdats don't contain all the thumbnail types, either only large.png or only small.png, but I believe they should. Why don't they? Also is there a list of clothing types? "Torso" is listed as "Tors" in the files and won't load if it's anything other than Tors, so if there's a list then that would be really helpful.
Some of the icons would be stored outside of the sdat on the server alongside it. The sdat is only extracted when downloaded, so if it wants to show you an icon before download then that can not be inside the sdat. The icons you want are probably in the cache that the sdats came from.
 
Last edited:
I'm having a pretty infuriating issue with the Diamond Beach Mansion. Surprise - I have all parts fully unlocked and working... except for one - the Water Taxi which takes you to and from the Yacht Club. This a LUA issue and it's strangely the only LUA issue in the entire scene. I'll try to describe it.

If you properly load everything with the debug console open, you'll see a red error briefly go by then it'll start spamming InitRequest_WaterTaxi every single frame, and the actual boat will not be there.

The red error message says that there's a LUA error in a MINIGAME file. Odd, as it's completely unmodified, straight out of the sdat. The error says that it expects a list but gets nil. If I remove this section, all loading screens in the scene cause constant out of memory errors. Here's the supposedly faulty LUA code in question:

https://imgur.com/a/EdFmUvo

Apparently, the "for i, v in pairs(g_TriggerPositions) do" line is what it has a problem with, but I genuinely cannot figure out what to do. Everything else in this scene has just... worked. It's not missing any files (I looked in all three Diamond Beach scenes), it's not claiming it can't load anything, and I double, triple, quadruple, sextuple, decuple checked every single script and file possible, absolutely no problems whatsoever, I've been working on this for three days straight and I'm tearing my hair out trying to figure out where it could possibly be getting hung up on.

Has anyone gotten the water taxi to spawn successfully? I'm going mentally insane.
 
To add onto this, I have a theory about what's going on - there's a hidden object that only gets requested once you board the water taxi, something I can't do.

Evidence:

- In this screenshot, you can see the Init spam. Notice how it's WaterTaxi?
https://imgur.com/a/O1bINdP

Every object in this scene did this at one point, and I could highlight them like in that screenshot but they did nothing. However once I added their object, that spam stopped, their models appeared in the scene, and they worked.

- Several minigames in three Diamond Beach scenes (Mansion, Yacht, Yacht Club) have data spread out around all three scenes, like the metal detector minigame, it won't work until objects from all three scenes are implemented as it works in all three scenes. This Water Taxi also appears in the Yacht Club to take you back to the location in that screenshot.

- Several minigames, like the metal detector minigame, don't request their objects until you start the activity.

Problems with the above points:

- I've fully restored every scene - Mansion, Yacht, and Yacht Club, adding all objects they requested, and one that fixed the water taxi wasn't present.

- Unlike other minigames that I can force-activate to make it request its objects, this one is too complex for that. It very well might request its objects once force-loaded, but you can't do it.

I've been experimenting with this for the past 3+ days to no avail, learning more about these scenes' systems than my own life - any help would be greatly appreciated.

Edit: Some more things to explain that I thought of later:

- g_TriggerPositions is a variable in watertaxiresources.luac, which this script also loads, so there's no actual problems with the script, it just THINKS there's a problem with it.

- You can actually fix the script to where it'll successfully initialize the water taxi - the Init spam will stop, the framerate will return to normal, and the game will say that everything loaded correctly, but the water taxi won't actually load.

- LUA checkers you can find online can't be trusted as these scripts do unorthodox things that don't make sense in normal LUA.

I can send you any files you need to get this figured out. I've now spent FOUR days straight on this to no avail.
 
Last edited:
do you by chance have any new mapping tools that you released i cant seem to find any i been dumping sdats like a mad man on a workstation computer any help would be great lol.
 
do you by chance have any new mapping tools that you released i cant seem to find any i been dumping sdats like a mad man on a workstation computer any help would be great lol.
There is something being worked on but it;s not quite there yet.

These might be of some help to you for now.
 
Last edited:

Similar threads

Back
Top