The Forum is up for sale: XeNTaX Forum looking for new owner

Need help identify Yulgang files viewer/exporter

Post questions about game models here, or help out others!
blablukura
ultra-n00b
Posts: 8
Joined: Mon Jun 25, 2012 2:32 pm
Has thanked: 5 times

Need help identify Yulgang files viewer/exporter

Post by blablukura »

Hi, Yulgang online is an really old game, so I don't think its encryption is too complicated or may be there is no encryption at all for the files
I need help identify the view and exporter for these files, I tried Noesis but didnt work
sample files link removed =.=" rules not allow
if someone want to examine the files pm me i'll give the linkss
.d2s is texture file ( u can view it by XnViewer or change file type to .dds, its like .dds file )
.skin is mesh file
.bon is bone file
.ani is animation file
this game has some very cool model (asian martial art style )
http://yulgang.asiasoft.co.th/images/wallpaper/026.jpg
Last edited by blablukura on Sun Jul 01, 2012 7:18 pm, edited 1 time in total.
Demonsangel
mega-veteran
mega-veteran
Posts: 241
Joined: Fri Aug 05, 2011 9:31 pm
Location: Antwerp
Has thanked: 13 times
Been thanked: 41 times

Re: Need help identify Yulgang files viewer/exporter

Post by Demonsangel »

Game resource sharing is against Xentax's newest rules.
viewtopic.php?p=73429#p73429

Moderators delete offending posts so you might want to remove/delinkify if you want to keep your request/post.
finale00
M-M-M-Monster veteran
M-M-M-Monster veteran
Posts: 2382
Joined: Sat Apr 09, 2011 1:22 am
Has thanked: 170 times
Been thanked: 307 times

Re: Need help identify Yulgang files viewer/exporter

Post by finale00 »

I looked at the game before and got textured meshes out but I don't remember where I put the script (doesn't seem to be in my dropbox) or what I called it.

viewtopic.php?f=16&t=7206

Lol this is awkward.

EDIT: turns out I never wrote a noesis plugin for it. I wrote one using the sanae3d python script but never converted it. Anyone want to send me models with textures?
finale00
M-M-M-Monster veteran
M-M-M-Monster veteran
Posts: 2382
Joined: Sat Apr 09, 2011 1:22 am
Has thanked: 170 times
Been thanked: 307 times

Re: Need help identify Yulgang files viewer/exporter

Post by finale00 »

Here I looked at it a couple minutes ago and wrote the plugin.
http://db.tt/j4CAFj8N

This is the model you sent me:

Image

There are two integers in the header that I'm not sure of, and the first byte might mean something.

There is some more data at the end of the file which I don't really get either.

For the vertex data, based on what I've learned about bone weights, there are three floats that almost add up to 1.0 all the time, followed by 4 bytes that are probably bone indices.

However I'm concerned with the fact that they don't always add up to 1.0; one of them is like 0.3 + 0.5 + 0.15, which is 0.95. Do weights always add up to 1.0?
chrrox
Moderator
Posts: 2602
Joined: Sun May 18, 2008 3:01 pm
Has thanked: 57 times
Been thanked: 1411 times

Re: Need help identify Yulgang files viewer/exporter

Post by chrrox »

some games list 3 floats and 4 bone id's then the leftover weight gets assigned to the last bone listed.
finale00
M-M-M-Monster veteran
M-M-M-Monster veteran
Posts: 2382
Joined: Sat Apr 09, 2011 1:22 am
Has thanked: 170 times
Been thanked: 307 times

Re: Need help identify Yulgang files viewer/exporter

Post by finale00 »

Oh, I see 4 unique bone indices and 3 floats. That would make sense then, since it would save on space and computing the last weight wouldn't be hard.

Does noesis automatically consider that when I bind weight buffers?
Demonsangel
mega-veteran
mega-veteran
Posts: 241
Joined: Fri Aug 05, 2011 9:31 pm
Location: Antwerp
Has thanked: 13 times
Been thanked: 41 times

Re: Need help identify Yulgang files viewer/exporter

Post by Demonsangel »

Yes it does, or atleast it seems to do it for the PoE models.
moonpaladin
ultra-veteran
ultra-veteran
Posts: 398
Joined: Tue Mar 05, 2019 6:24 am
Has thanked: 286 times
Been thanked: 18 times

Re: Need help identify Yulgang files viewer/exporter

Post by moonpaladin »

Hello! seems that Yulgang files have changed a bit, no more .skin files, there is .act files and the model that is .mdl, someone knows if a script around there?, because I have seen one time ago, but doesn't find it again. Thanks!

https://www.mediafire.com/file/34u3djeu ... es.7z/file
User avatar
shakotay2
MEGAVETERAN
MEGAVETERAN
Posts: 4231
Joined: Fri Apr 20, 2012 9:24 am
Location: Nexus, searching for Jim Kirk
Has thanked: 1139 times
Been thanked: 2222 times

Re: Need help identify Yulgang files viewer/exporter

Post by shakotay2 »

Script see repo of finale00 but the one for .skin doesn't apply (and is very basic).
So hex2obj is the quickest approach for me:
.
aojiaomao.png
btw, great that we broke the 10 years anniversary before years' end...
(What would we have if we hadn't our "Riders of dead horses" membership?
Wait: Riders of dead cats, in this case... :D )
You do not have the required permissions to view the files attached to this post.
Tuts: a) Bigchillghost, viewtopic.php?f=29&t=17889
b) Extracting simple models: http://forum.xentax.com/viewtopic.php?f=29&t=10894
"Quoting the whole thing. Would u ever stop this nonsense?"
moonpaladin
ultra-veteran
ultra-veteran
Posts: 398
Joined: Tue Mar 05, 2019 6:24 am
Has thanked: 286 times
Been thanked: 18 times

Re: Need help identify Yulgang files viewer/exporter

Post by moonpaladin »

shakotay2 wrote: Thu Dec 29, 2022 1:41 am Script see repo of finale00 but the one for .skin doesn't apply (and is very basic).
:eek: , that is not the .mdl file right? no more .skin files :'(.

Oh, it is! sorry retarded moment XD :constipated:
moonpaladin
ultra-veteran
ultra-veteran
Posts: 398
Joined: Tue Mar 05, 2019 6:24 am
Has thanked: 286 times
Been thanked: 18 times

Re: Need help identify Yulgang files viewer/exporter

Post by moonpaladin »

Hello please someone could make a script to read the bones of the .act file? I was getting the meshes with hex2obj but most of the models are not in T-pose and is made complicated to make an armature for each mesh and reposition it x.x
https://www.mediafire.com/file/34u3djeu ... es.7z/file
Image
User avatar
Bigchillghost
double-veteran
double-veteran
Posts: 1002
Joined: Tue Jul 05, 2016 9:37 am
Has thanked: 31 times
Been thanked: 1171 times

Re: Need help identify Yulgang files viewer/exporter

Post by Bigchillghost »

moonpaladin wrote: Thu Jan 05, 2023 8:46 amI was getting the meshes with hex2obj but most of the models are not in T-pose ...
You've done half the job already. Keep going! [roll]
Using ASH plus AXE:
(bailang/body/skin/skin.mdl, manually linking the nodes)
skin.png
Edit: there's a bone index mapping table at address 0x42 right after the bone count. The bone indices are corresponding to the "skip" field of the bone layout in the above ASH screenshot. The mapping indices used by that file are:

Code: Select all

2,11,1,0,14,18,3,23,4,5,7,21,10,19,13,12,17,28,24,25,26,27,16,7,8,9,22,20,15
Edit 2: it should be:

Code: Select all

2,11,1,0,14,18,3,23,4,5,6,21,10,19,13,12,17,28,24,25,26,27,16,7,8,9,22,20,15
You do not have the required permissions to view the files attached to this post.
Last edited by Bigchillghost on Fri Jan 06, 2023 2:08 pm, edited 1 time in total.
May you find peace in this puzzle-solving game. Say it with action: click the Image when you get helped.:)
moonpaladin
ultra-veteran
ultra-veteran
Posts: 398
Joined: Tue Mar 05, 2019 6:24 am
Has thanked: 286 times
Been thanked: 18 times

Re: Need help identify Yulgang files viewer/exporter

Post by moonpaladin »

Bigchillghost wrote: Thu Jan 05, 2023 3:57 pm Edit: there's a bone index mapping table at address 0x42 right after the bone count. The bone indices are corresponding to the "skip" field of the bone layout in the above ASH screenshot.
Thank you Bigchillghost, gonna try your method!!
moonpaladin
ultra-veteran
ultra-veteran
Posts: 398
Joined: Tue Mar 05, 2019 6:24 am
Has thanked: 286 times
Been thanked: 18 times

Re: Need help identify Yulgang files viewer/exporter

Post by moonpaladin »

Bigchillghost wrote: Thu Jan 05, 2023 3:57 pm there's a bone index mapping table at address 0x42 right after the bone count.
About bone count is ok, also there is the bone index mapping for the 29 bones.
Bigchillghost wrote: Thu Jan 05, 2023 3:57 pm The bone indices are corresponding to the "skip" field of the bone layout in the above ASH screenshot. The mapping indices used by that file are:
How you interpret that bone index mapping into this?.

Code: Select all

2,11,1,0,14,18,3,23,4,5,7,21,10,19,13,12,17,28,24,25,26,27,16,7,8,9,22,20,15
I saw that this info appears in the Data Interpretation into AXE, but there is another faster way to get these values? because is long list and need to check every value that doesn't have been repeat.
Bigchillghost wrote: Thu Jan 05, 2023 3:57 pm Using ASH plus AXE:
(bailang/body/skin/skin.mdl, manually linking the nodes)
If I understand correctly this one is used to link the bones with their parent bones, I was trying to achieve what you got in your image, but doesn't know which bone is the parent bone of other and so on, it have something with the index mapping right?.

btw! if you can show the correct way to get the uv values gonna be awesome, I was doing it trial and error, cause I had not clear that value like the others. :roll:
User avatar
Bigchillghost
double-veteran
double-veteran
Posts: 1002
Joined: Tue Jul 05, 2016 9:37 am
Has thanked: 31 times
Been thanked: 1171 times

Re: Need help identify Yulgang files viewer/exporter

Post by Bigchillghost »

moonpaladin wrote: Fri Jan 06, 2023 3:04 am How you interpret that bone index mapping into this?
The IDs of the first 12 bones in the bone data section are:

Code: Select all

00: 53
01: 54
02: 55
03: 56
04: 57
05: 58
06: 59
07: 5A
08: 5B
09: 5C
10: 5D
11: 5F
and the first 4 bone mapping IDs are:

Code: Select all

55,5F,54,53
You need to find the subscript of the corresponding ID for each value in the bone mapping table.
So for 0x55, its subscript in the bone data list is 2, for 0x5F it's 11, for 0x54 it's 1, and for 0x53
it's 0, hence you get "2,11,1,0" for the first 4 mapping values. Indeed doing so manually is really tedious.
Here's a python helper script to create the literal string directly:
mapLiteralGen.zip
Just supply the filename and the bone data address as arguments. For this file, run

Code: Select all

python mapLiteralGen.py skin.mdl 0x203A6
For details about the full usage, simply run the script without arguments:

Code: Select all

python mapLiteralGen.py
moonpaladin wrote: Fri Jan 06, 2023 3:04 amI was trying to achieve what you got in your image, but doesn't know which bone is the parent bone of other and so on, it have something with the index mapping right?.
Not really. You need to turn on the "Display Bone Node Names" option from AXE's Preference settings before previewing the skeleton. Then link the nodes according to their logical connections. You can even do that in your 3d app if possible.
moonpaladin wrote: Fri Jan 06, 2023 3:04 am btw! if you can show the correct way to get the uv values gonna be awesome, I was doing it trial and error, cause I had not clear that value like the others. :roll:
The uv is right after the normal vector (12 bytes) in the first vertex data block. You just need to change the base address of that chunk and use the same relative offsets of normals/uvs/vertex colors. Or feel free to use absolute address mode for all attributes if you prefer it that way.
You do not have the required permissions to view the files attached to this post.
May you find peace in this puzzle-solving game. Say it with action: click the Image when you get helped.:)
Post Reply