Page 1 of 1

Persona 4: Dancing All Night

Posted: Sun May 08, 2016 7:12 am
by PolarSoda
P4: DAN has been dumped for a while, so i thought its models would be finally able to be extracted from the game's data! however it seems that's not the case... after extracting the cpk, i found that the models of the characters (and personas) where in these folders respectively:
Image
The persona folder has these files
Image
And the player folder has these:
Image
Folders such as 001,002,etc. have these files inside:
Image
I've heard that the models were in a .gmd format, so here's a link to some of the files!!
http://www.mediafire.com/download/0hf7r ... player.rar
Hopefully someone can find a way to convert these models to different formats owo;; also i hope the information i provided helps somehow!!! i tried to be the least vague as possible D:
btw sorry if the images are too big. lightshot tends to do that sadly;;;
edit: i also uploaded the files from the 001 folder! http://www.mediafire.com/download/6fon2 ... oz/001.rar
Thanks in advance btw uwu

Re: Persona 4: Dancing All Night

Posted: Sun May 08, 2016 8:50 am
by Simguy
I've been looking at this for a while. I'm going to ramble because I didn't really write any of my findings down. I've been working on this (horrible looking) Noesis Script. GAP's are animations, GMD's and GFS's are models. This script can load every model except pc008_f1 and pc008_f2 (Those are weird and I didn't look into why yet).

There are a few more problems with my script. I can't figure out the bones parents. The characters have 2 skeletons in their files, A bind pose (for the skinning) and some kinda animation rig. The rig could be useful if I could figure out the first skeletons bone parents but I hit a brick wall on that. The other problem is that some meshes have their positions relative to a node that its parented to (not skinned to) so they are far out of position. This mostly happens to some of the characters eyes, I have no idea how to fix that.

I'll try to explain more later today so maybe some greater minds can help.

Re: Persona 4: Dancing All Night

Posted: Sun May 08, 2016 12:05 pm
by Szkaradek123
For bones use recursive function in section at end file with strings like "lockInfluenceWeight" and bone names

Code: Select all

from pc001_01.GMD


....
=====================
bone
=====================
offset 746059	(4,) - string len
offset 746061	root
offset 746065	(
-0.00010046560782939196, 
1.7763568394002505e-15,110.68985748291016, 1.2013832019874826e-05,  - bone position
0.0, 0.0, 0.0, 1.0, - bone quaternion
1.0, 1.0, 1.0, 0.0, 2.350988701644575e-38, 2.350988701644575e-38) 
offset 746121	(3,)
offset 746122	(20,)
offset 746124	lockInfluenceWeights
offset 746144	(234, 148, 171, 143, 0, 0, 0, 1, 0, 63, 128, 0, 0)
offset 746157	(8,) - child count
=====================
bone
=====================
offset 746161	(8,)
offset 746163	spine_00
offset 746171	(
-3.2469128432878978e-35, 
4.6077910469111399e-15,1.8706696033477783, 0.028047563508152962, 
0.0, 0.0, 0.0, 1.0, 
1.0, 1.0, 1.0, 0.0, 2.350988701644575e-38, 2.350988701644575e-38)
offset 746227	(3,)
offset 746228	(20,)
offset 746230	lockInfluenceWeights
offset 746250	(234, 148, 171, 143, 0, 0, 0, 1, 0, 63, 128, 0, 0)
offset 746263	(1,) - child count
=====================
bone
=====================
offset 746267	(8,)
offset 746269	spine_01
offset 746277	(
-8.4957790878464147e+29, 
-3.8694484828738496e-05, 12.831052780151367, -0.25826916098594666, 
0.0, 0.0, 0.0, 1.0, 
1.0, 1.0, 1.0, 0.0, 2.350988701644575e-38, 2.350988701644575e-38)
offset 746333	(3,)
offset 746334	(20,)
offset 746336	lockInfluenceWeights
offset 746356	(234, 148, 171, 143, 0, 0, 0, 1, 0, 63, 128, 0, 0)
offset 746369	(5,) - child count
.....

       I use this to get bones (it is not for Noesis):

	skeleton=Skeleton()
	skeleton.BONESPACE=True
	skeleton.NICE=True

	def boneTree(g,parent):
		bone=Bone()
		skeleton.boneList.append(bone)
		bone.name=g.word(g.H(1)[0])		
		if parent is not None:
			bone.parentName=parent.name
		A=g.f(14)	
		bone.posMatrix=VectorMatrix(A[1:4])
		bone.rotMatrix=QuatMatrix(A[4:8]).resize4x4()
		
		g.B(1)
		g.word(g.H(1)[0])	
		g.B(13)
		childCount=g.i(1)[0]
		for m in range(childCount):
			boneTree(g,bone)
		
		
	g.seek(746059)
	boneTree(g,None)
	skeleton.draw()	




Re: Persona 4: Dancing All Night

Posted: Mon May 09, 2016 2:34 am
by Simguy
Oh I was reading the rotations wrong for those bones. Unfortunately those bones aren't the ones the meshes are skinned to, the bones at the top of the model are (In pc001_01 starting at 350809, 69 bones. 4x4 matrices). Also in pc001_01 at 355229 there are 69 shorts (the same number of bones) that seemingly have something to do with the second skeleton but I don't know what/how.

Re: Persona 4: Dancing All Night

Posted: Sun May 15, 2016 1:50 am
by PolarSoda
Oh, I thought I had posted a reply on this thread

btw I did try to import one of the gmd models in noesis (i think it was the nanako one/08) and i exported it as a psk
the rigging was fine if im not mistaken? kinda weird but yes it was ok

if anything the models appear to be rotated in a very weird way if you import it to blender
and yeah the faces seem to have all their expressions at once if you import them in noesis o:, maybe this could be fixed by loading the gap data?

but yeah thats what i was going to say, sorry for not posting before
and thanks for replying btw ;w;

Re: Persona 4: Dancing All Night

Posted: Mon May 16, 2016 3:42 pm
by oamio
How to use python script in lastest blender?

Re: Persona 4: Dancing All Night

Posted: Sat May 21, 2016 10:21 pm
by headgehof
search for Marie DLC
thanks

Re: Persona 4: Dancing All Night

Posted: Fri May 27, 2016 9:52 pm
by Rin
Bone links seem to be off, Has anyone figured those out yet?

Re: Persona 4: Dancing All Night

Posted: Tue Oct 04, 2016 4:36 am
by anime663
Simguy wrote:I've been looking at this for a while. I'm going to ramble because I didn't really write any of my findings down. I've been working on this (horrible looking) Noesis Script. GAP's are animations, GMD's and GFS's are models. This script can load every model except pc008_f1 and pc008_f2 (Those are weird and I didn't look into why yet).

There are a few more problems with my script. I can't figure out the bones parents. The characters have 2 skeletons in their files, A bind pose (for the skinning) and some kinda animation rig. The rig could be useful if I could figure out the first skeletons bone parents but I hit a brick wall on that. The other problem is that some meshes have their positions relative to a node that its parented to (not skinned to) so they are far out of position. This mostly happens to some of the characters eyes, I have no idea how to fix that.

I'll try to explain more later today so maybe some greater minds can help.
These files don't seem to work. Whenever I try to open it using that script, it says theres an error with line 521 it seems. I wish I could understand this stuff but just looking at it makes my head hurt. lol.

Code: Select all

https://mega.nz/#!fxljiTYD!VLcDnBwS_TIuUDTy7j6Ejc-RNkpG-L5A6NmaC7FKABI

Re: Persona 4: Dancing All Night

Posted: Wed Dec 14, 2016 11:44 pm
by persisent
share all game data,please. or how can get this game cpk and how can extracted this cpk,thanks