Important information: this site is currently scheduled to go offline indefinitely by end of the year.

Metal Gear Solid 5 Ground Zeroes/Phantom Pain g0s archive

The Original Forum. Game archives, full of resources. How to open them? Get help here.
User avatar
Higus
advanced
Posts: 78
Joined: Sat Jun 30, 2012 5:35 am
Has thanked: 6 times
Been thanked: 5 times

Re: Metal Gear Solid 5 Ground Zeroes/Phantom Pain g0s archiv

Post by Higus »

BobDoleOwndU wrote:Mtar Tool v0.2 is finished!

It now supports unpacking and repacking both Mtar Type 1 and Mtar Type 2 files. It should now be possible to swap animations (I didn't try myself yet though).
daemon1 wrote:Also I just published the new version of animation tool that supports PP MTAR files. Checked with .gani files produced by your tool.
Tex wrote:Here's a mtar_dictionary with some .gani names scraped from the tpp exe,luas,fox2s:
https://mega.nz/#!bJV0QAxT!nHZs5lLX7RsY ... B_TX_p14m8
Now this is Christmas spirit. This is amazing everyone, animation modding is here.
Bob Dole, can you add perhaps a 3 or 4 digit ID prefix to the gani filenames?

It'd be far more efficient for animation documenting if we had it as such:

Code: Select all

player2_location_motion.fpk - player2_cqc.mtar

0000_1c95233f2a25.gani		- CQC Hold Aim Strafe Left
0001_1cf72c3f2a3ae.gani		- CQC Choke Release
0002_1d1dc06c5fd9c.gani		- Knife Interrogation Release
or

Code: Select all

player2_location_motion.fpk - player2_cqc.mtar

0000		- CQC Hold Aim Strafe Left
0001		- CQC Choke Release
0002		- Knife Interrogation Release
as opposed to currently:

Code: Select all

player2_location_motion.fpk - player2_cqc.mtar

1c95233f2a25.gani		- CQC Hold Aim Strafe Left
1cf72c3f2a3ae.gani		- CQC Choke Release
1d1dc06c5fd9c.gani		- Knife Interrogation Release
It'd also help keep track of documented animations that later have their names found and added to the dictionary.
Tex
veteran
Posts: 89
Joined: Sat Aug 20, 2011 4:51 am
Has thanked: 21 times
Been thanked: 11 times

Re: Metal Gear Solid 5 Ground Zeroes/Phantom Pain g0s archiv

Post by Tex »

That is not a good idea, the input/output of the tool should be pure - actual name or hash like all the other tools.
But it does bring up a point:
The tool should output a list of verified name to hash pair (like I was suggesting for the dictionary attack tool) so, like you say, you can figure out what is what when you only have documented to the hash.
As you can see from iamuser12s posts about textures this has been an issue for all the tools for a while.
BobDoleOwndU
advanced
Posts: 68
Joined: Thu Dec 24, 2015 7:45 am
Has thanked: 10 times
Been thanked: 10 times

Re: Metal Gear Solid 5 Ground Zeroes/Phantom Pain g0s archiv

Post by BobDoleOwndU »

daemon1 wrote:This is the description of all main animation tracks, not the track itself.

Also I just published the new version of animation tool that supports PP MTAR files. Checked with .gani files produced by your tool.
Oops, my bad! I'll update the readme on GitHub with the correct description.

Awesome work on the tool!
Tex wrote:Nice.

Where did you derive the filenames in your current mtar_dictionary from?
Thanks!

I pulled most of the names from the GZ .exe. For the MGO ones, I got them from Assets\mgo\level_asset\player\ParameterTables\AppealActions.lua.
Tex wrote: I also noticed nmt_sna_drv_div is the only line with .gani extension, is this a mistake on your part or theirs, ie is the hash name /Assets/tpp/motion/SI_game/fani/props/nmt_/nmt/nmt_sna_drv_div.gani.gani?
Oops, this is a mistake on my part. I was originally going to have the dictionary include the extensions, but then removed them to match the other tools. I must've missed that one when I was removing the extensions. I'll fix that.
Tex wrote:Here's a mtar_dictionary with some .gani names scraped from the tpp exe,luas,fox2s:
https://mega.nz/#!bJV0QAxT!nHZs5lLX7RsY ... B_TX_p14m8
Awesome! I'll add this to GitHub repo!
Higus wrote:Now this is Christmas spirit. This is amazing everyone, animation modding is here.
Bob Dole, can you add perhaps a 3 or 4 digit ID prefix to the gani filenames?
Tex wrote:The tool should output a list of verified name to hash pair (like I was suggesting for the dictionary attack tool) so, like you say, you can figure out what is what when you only have documented to the hash.
I like Tex's idea here of outputting a list of the unhashed names along with their respective hashed names. It's definitely a good idea to have documentation of what a file's hashed name is in case the name is found later though. It should be easy to implement as well.
xtrmntr777
ultra-n00b
Posts: 1
Joined: Tue Nov 29, 2016 11:03 am

Re: Metal Gear Solid 5 Ground Zeroes/Phantom Pain g0s archiv

Post by xtrmntr777 »

Subject: Metal Gear Solid 5 Ground Zeroes/Phantom Pain g0s archive
Escapist wrote:Hi
I made 2 playable Quiet mods for the PS3. One for female soldiers and one for Venom Snake.
I would've rather ported the pc mods, but I couldn't figure out how. PS3's fmdl (fox model) sizes, endianness, and some lines of code are different. So I swapped and hex edited the PS3 files for now.
Thanks to Higus/Shigu, DarknessValtier, Sergeanur, and others for figuring out how to mod the game.

The problems are listed in readme file.
The biggest ones being:
-How to remove the Quiet's bra tassel to improve her breast physics (editing Quiet's fmdl beyond making polygons invisible is a mystery to me)
-Preventing Quiet's textures from disappearing (workaround in the readme file)
-Model swapping Venom Snake without making his face glitched in other costumes
If anyone has information on fixing these, I'll take any info I can get. Otherwise the mod works well I've been playing as Quiet for a while.

Here's a video of the mod in action (I don't own a tv capture device, sorry)
http://www.youtube.com/watch?v=zD3K1GKQ6gA

Files Download Link - https://mega.nz/#!Hho3UIAB!TOVMVEw8JSgt ... vvI6Hm-kMM

Image
Image

Hi I'm trying to use your Playable Queit mod, for which version of PS3 MGS5 was it made?

I've tried 1.00 and replacing 77e6d53969026de.dat with recompiled one prevents from starting game.

Vesrsion 1.04 runs with modified dat. file but seriously a cannot see any effect, I've tried as in video choose no head cloths + Olive Grab for Venom Snake and nothing happens. Does Venom Snake Queit demands loading Quiet as a buddy for textures or smt?
luxox18
mega-veteran
mega-veteran
Posts: 176
Joined: Fri Jul 29, 2011 9:18 pm
Has thanked: 54 times
Been thanked: 46 times

Re: Metal Gear Solid 5 Ground Zeroes/Phantom Pain g0s archiv

Post by luxox18 »

I'm here just to say: PT was decrypted and the files can be already analyzed.

Torrent was published too

(there is one big file with format DAT but the header is different from MGSV files)
User avatar
Jonathan Ingram
n00b
Posts: 11
Joined: Sun Jun 21, 2015 11:20 pm
Been thanked: 2 times

Re: Metal Gear Solid 5 Ground Zeroes/Phantom Pain g0s archiv

Post by Jonathan Ingram »

luxox18 wrote:(there is one big file with format DAT but the header is different from MGSV files)
File names in pfs_image.dat are listed beginning at offset 50040. The .psarc file, pathid_list_ps4.bin, and texture.qar files mirror the original console release of Ground Zeroes. Makes sense, since it would have been built from a revision of FOX from around the same time.

Code: Select all

sce_module
sce_sys
chunk1.psarc
eboot.bin
pathid_list_ps4.bin
sce_discmap.plt
texture.qar
Edit: There's more file names in between a chunks of null data. Seems to be for files in the subdirectories like the Sony libs.
Last edited by Jonathan Ingram on Thu Dec 01, 2016 8:03 am, edited 2 times in total.
unknown123
advanced
Posts: 75
Joined: Sat Apr 09, 2016 5:36 pm
Has thanked: 4 times
Been thanked: 13 times

Re: Metal Gear Solid 5 Ground Zeroes/Phantom Pain g0s archiv

Post by unknown123 »

Jonathan Ingram wrote:*PT stuff*
I think you should make another thread for pt only, even though games are built on same engine.
luxox18
mega-veteran
mega-veteran
Posts: 176
Joined: Fri Jul 29, 2011 9:18 pm
Has thanked: 54 times
Been thanked: 46 times

Re: Metal Gear Solid 5 Ground Zeroes/Phantom Pain g0s archiv

Post by luxox18 »

Jonathan Ingram wrote:
luxox18 wrote:(there is one big file with format DAT but the header is different from MGSV files)
File names in psf_image.dat are listed beginning at offset 50040. The .psarc file, pathid_list_ps4.bin, and texture.qar files mirror the original console release of Ground Zeroes. Makes sense, since it would have been built from a revision of FOX from around the same time.

Code: Select all

sce_module
sce_sys
chunk1.psarc
eboot.bin
pathid_list_ps4.bin
sce_discmap.plt
texture.qar
Edit: There's more file names in between a chunks of null data. Seems to be fore files in the subdirectories like the Sony libs.

the PSARC file is fully extractable and readable but the fpk files are not possible to extract. About the textures.qar, I can't locate the begins of the data :P

I think I will make a thread
BobDoleOwndU
advanced
Posts: 68
Joined: Thu Dec 24, 2015 7:45 am
Has thanked: 10 times
Been thanked: 10 times

Re: Metal Gear Solid 5 Ground Zeroes/Phantom Pain g0s archiv

Post by BobDoleOwndU »

MtarTool v0.2.1 is up.

Taking Tex's idea, the tool now outputs a hashed_names.txt file which contains any unhashed names and their hashed equivalents. It also now repacks files in the order of their hash which solves a few bugs. Doing a quick test, I was able to add additional animations to player2_resident.mtar and play them back without issue, so it seems to be working as intended now.
User avatar
Higus
advanced
Posts: 78
Joined: Sat Jun 30, 2012 5:35 am
Has thanked: 6 times
Been thanked: 5 times

Re: Metal Gear Solid 5 Ground Zeroes/Phantom Pain g0s archiv

Post by Higus »

BobDoleOwndU wrote:MtarTool v0.2.1 is up.

Taking Tex's idea, the tool now outputs a hashed_names.txt file which contains any unhashed names and their hashed equivalents. It also now repacks files in the order of their hash which solves a few bugs. Doing a quick test, I was able to add additional animations to player2_resident.mtar and play them back without issue, so it seems to be working as intended now.
I feel my request's been brushed off too quickly. To me that still doesn't really 'solve' the issue of animation lists being based off of unhashed names, as the alphabetically ordered list will just get shuffled and fucked about and it'll still be a bother to have to check the txt to identify every single animation you want to check from your now out-dated, wrongly ordered animation list using unhashed names.

Adding ID prefixes to the animation filenames based on the order they're found in the archive will also (i imagine) give you a comprehensible order of files to check of the sometimes thousands of animations, as opposed to alphabetical order, where with unhashed names (which likely many of them will stay) you find the start of one animation at the top of the bunch, and the second part of the animation god-knows-where in the middle of the alphabetical shuffle of thousands of motions.

The extract order may be even easier to identify than a plethora of unsorted hashed motions with ambiguous, abbreviated names.
i.e;
0000_*hash/name* - Stand Loop
0001_*hash/name* - Stand to Walk
0002_*hash/name* - Walk Loop
0003_*hash/name* - Walk to Run

Yes it is technologically unwise to mess with the filename, but it doesn't even take half-decent programming to have the tool disregard the first five characters of the gani filenames as it reads them in to repack them. This isn't about making the perfect container tool, that's what FPKs are for. This is meant to be ONLY for animation modding. I dare say that without complete filename hashing, this kind of organisation is the only reason this tool would even be useful, as the player's main animation base has 1,253 motions, and nobody is going to do the monkey work of modding that without any form of decent organization or practicality.

So please, just indulge the idea and try at least add some optional feature for this.
BobDoleOwndU
advanced
Posts: 68
Joined: Thu Dec 24, 2015 7:45 am
Has thanked: 10 times
Been thanked: 10 times

Re: Metal Gear Solid 5 Ground Zeroes/Phantom Pain g0s archiv

Post by BobDoleOwndU »

Higus wrote:So please, just indulge the idea and try at least add some optional feature for this.
I misunderstood the context of your request last time. I see what you mean now.

Currently, packed files are unpacked by the tool in the order of their hash, as that is how they are listed in the beginning. If I added an id to the extracted files as the tool pulls the files right now, you'd run into the same organizational issue you're having currently. However, the actual data is stored alphabetically based on the file's real name (as far as I can tell anyway, based on the few known .gani names), which gives the organization you're looking for.

Unfortunately, this kind of organization will only be useful on an archive that's never been repacked, since there's no way to repack the archive in the same manner without knowing every file's real name. I'll see if I can add in a parameter that allows for this.

Edit: v0.2.2 now supports the -n command which adds a four digit id to the front of all of the extracted files. The id tracks the order the file was stored in the .mtar.

Usage:

Code: Select all

MtarTool.exe Example.mtar -n
Tex
veteran
Posts: 89
Joined: Sat Aug 20, 2011 4:51 am
Has thanked: 21 times
Been thanked: 11 times

Re: Metal Gear Solid 5 Ground Zeroes/Phantom Pain g0s archiv

Post by Tex »

@higgus:
You can file compare the .mtar.xml (or equivalent for the rest of the atvaark tools) between the previous time you extracted an archive and the next (after a dictionary update, assumingly) to get exactly what files changed to which.

http://imgur.com/a/5ZOtE

You could also start your notes by processing the xml file, simplest would be to just by cutting down the xml by hand, maybe just replace-all/convert the file paths to your actual systems paths so you can just copy the full path to explorer when you want to open the file.

@BobDoleOwndU: What order were you repacking them prior to hash order? And what issues did you actually have with that?
BobDoleOwndU
advanced
Posts: 68
Joined: Thu Dec 24, 2015 7:45 am
Has thanked: 10 times
Been thanked: 10 times

Re: Metal Gear Solid 5 Ground Zeroes/Phantom Pain g0s archiv

Post by BobDoleOwndU »

Tex wrote:@BobDoleOwndU: What order were you repacking them prior to hash order? And what issues did you actually have with that?
Originally, they were repacked based on the order they were listed in the .xml. When I tried adding the appeal action animations to player2_resident.mtar I wasn't able to play them back repacking this (unorganized) way. Repacking them based on hash doesn't have this issue though. I also noticed that certain animations would "stick" when I repacked with no organization. I would have to crouch to break out of the stuck animation.

The game doesn't seem to like it when the file list at the beginning of the .mtar isn't ordered correctly. It doesn't seem to care what order the actual data from the files is listed in though.
User avatar
Higus
advanced
Posts: 78
Joined: Sat Jun 30, 2012 5:35 am
Has thanked: 6 times
Been thanked: 5 times

Re: Metal Gear Solid 5 Ground Zeroes/Phantom Pain g0s archiv

Post by Higus »

Thank you dearly.

documented player2_resident motion ranges:

Code: Select all

player2_resident_motion.fpk - player2_resident.mtar

0000-0017 D-Walker/D-Horse poses
0018 - unused Idle?
0019-0115 - Weapon aiming poses and transitions (mostly to locomotion entries)
0116-0131 - Wall hugging
0132 - Prone Empty hand aiming poses
0133-0134 - Int-Scope aiming poses
0135-0140 - Staircase motions
0141-0142 - Cardboard Box motions
0142-0165 - C4 motions
0166-0167 - Phantom Cigar motions
0168-0170 - Climbing motions
0171-0178 - (Slipping?)
0179-0182 - (Kinda looks like swimming...? Maybe somebody else should look at this one?)
*0182-0197 - CQC
	0192 - Bionic Arm Punch
0197-0213 - Carrying bodies
0214 - Sprint Loop
0215-0218 - unused environment-interactive animations?
0219-0224 - Carrying bodies
0225-0231 - Injured motions
0232-0261 - Attack reactions/deaths (Prone)
0262-0285 - Attack reactions/deaths (Squat)
0286-0324 - Attack reactions/deaths
*0325-0327 - Diving motions
0328-0332 - Door opening motions
0333-0347 - Ledge/Rail motions
0348-0359 - Fulton motions
0360 - Int-scope removal
0361-0368 - Pistol aim poses
0369-0374 - Human "Knock" motions
0375 - bionic arm knock motions
0376-0392 - Idroid motions/poses
0393 - Random ladder motions
0394-0399 - Vehicle motions
0400-0477 - Prone motions
0478-0479 - Hard landing motions
0480-0481 - Running staircase motions
0482-0664 - Squat locomotion
0665-0701 - Sprint locomotion
0702-0826 - Stand locomotion/motions
0827 - D-Dog petting motions
0828-0840 - Vehicle motions
0841-0872 - Support weapon motions (c4 and throwing decoys and stuff)
0873-0878 - Prone Rolling motions
0879-1152 - Strafe motions, Empty hand motions and poses
1153-1154 - some 2h weapon aim poses
1155 - Rocket arm aim entry
1156 - unidentifiable ledge drop/vehicle exit?
1157-1159 - Aiming whilst holding body motions/poses
1160-1164 - ? (Nothing important looking)
1165-1172 - Staircase motions
1173 - ? (Export failure)
1174-1175 - Weapon pulling out/putting back
1176-1195 - Staircase motions
1196 - Pressing button to open motherbase door
1197 - Entering shower
1198-1204 - Prone throwing weapon
1205-1212 - Throwing weapon
1213-1216 - Locker/Shower motions
1217-1219 - Throwing weapon
1220-1228 - Bin motions
1229-1237 - Wild wolf attack reaction motions + unused prone motions
1238-1244 - Skulls machete counterattack motions
1245-1252 - Puppet soldier attack reaction motions
(if you've an old dictionary, some motion listings may be off by 1-3 motions)
BobDoleOwndU wrote:v0.2.2 now supports the -n command which adds a four digit id to the front of all of the extracted files. The id tracks the order the file was stored in the .mtar.

I'd appreciate it if you added named files to be affected by the ID prefix too. As it is, when more filenames get hashed, I think this list will get unpleasant offsets. Also I can't yet seem to repack mtars extracted with -n?
Last edited by Higus on Sat Dec 03, 2016 5:44 pm, edited 3 times in total.
AnonBaiter
veteran
Posts: 82
Joined: Thu Oct 15, 2015 8:15 pm
Has thanked: 18 times
Been thanked: 8 times

Re: Metal Gear Solid 5 Ground Zeroes/Phantom Pain g0s archiv

Post by AnonBaiter »

Look, I know this is a little off-topic for such an research thread dedicated for MGSV but I'll have to ask this question:
Does anyone know the encryption algorithm for the header of STAGE.DAT that is used in Metal Gear Solid 2 and beyond(ZOE2, MGS3)? I know Solidus can decrypt it just fine(and then do nothing with it or sometimes even crash the program itself since said tool was designed for the PC version of that game), but this question has been bugging me for days, if not months and I couldn't find a solution for it.
Post Reply