Page 3 of 4

Re: Long 3D meshes

Posted: Mon Jan 31, 2022 9:10 pm
by moonpaladin
Durik256 wrote: Mon Jan 31, 2022 8:49 pm Then why only in some archives there was such a problem?
Most likely the problem is in unpacking. you need to solve this problem.
ohh :(

Re: Long 3D meshes

Posted: Mon Jan 31, 2022 9:49 pm
by Durik256
moonpaladin wrote: Mon Jan 31, 2022 8:24 pm Did you just reinstall, still doesn't update the game? or click on launcher? maybe at doing that it removes the names :o
names remain in the same file and are not moved to the end. (:

i download your :
moonpaladin wrote: Wed Jan 26, 2022 12:03 am Model5.axp
yes files are written to the end of the archive.
befor 1215 files. (names in >> 1216) of which 508 are working
after 1233 files. (names in >> 1216) of which 525 are working

in your archive (Material3.axp)
name in file: 2144.dat
file 1.dat >> indicates which texture belongs to which model???


is this chinese???? only notepad ++ opened correctly / I thought Taiwan
地表草\地表草_05暗.mesh>>Surface Grass\Surface Grass_05 Dark.mesh

Re: Long 3D meshes

Posted: Mon Jan 31, 2022 10:03 pm
by moonpaladin
Durik256 wrote: Mon Jan 31, 2022 9:49 pm
Seems that is vietnamese server, and is using the game files of a chinese game called 新天龙八部 :roll:

just to note I uploaded these samples after I updated the game and play for a while :D


:o the 2144.dat contain all the filenames, I'm checking if is ordered

Re: Long 3D meshes

Posted: Mon Jan 31, 2022 10:51 pm
by Durik256
moonpaladin wrote: Mon Jan 31, 2022 10:03 pm game 新天龙八部
you need to say all the information at once. :lol:
upacker .axp exists.
it also unpacks with broken files. so the problem is not in the archive, but in the models. :ninja:

TLBBMeshViewer with Chinese language support opens non-broken models with skeleton.
Image
in noesis with my plugin:
mesh_boss.png
ogre-meshviewer if replace line 51 in ogre_mesh_viewer.py:

Code: Select all

lmgr.logWarning("could not find material")#("could not find material '{}'".format(mat.getName()))
due to encoding problems does not open the skeleton:

Code: Select all

Error: Unable to load skeleton 'boss╨┬╠ь═т╕─╘ь╚ю╨б╬х.skeleton' for Mesh 'boss╨а╨Т╨Ь╨╝╨Э╨▓╤С╨Ф╨д╨╝╨Ш╨╛╨а╨О╨Ю╨╡.mesh'.
Image

Re: Long 3D meshes

Posted: Mon Jan 31, 2022 11:07 pm
by moonpaladin
Durik256 wrote: Mon Jan 31, 2022 10:51 pm
Sorry :'(. I found the vietnamese server first :mrgreen:.
Durik256 wrote: Mon Jan 31, 2022 10:51 pm it also unpacks with broken files. so the problem is not in the archive, but in the models. :ninja:
oh, this is really weird [bruce]

Re: Long 3D meshes

Posted: Tue Feb 01, 2022 12:16 am
by moonpaladin
Durik256 wrote: Mon Jan 31, 2022 10:51 pm
Thanks alot for all the info! I have seem that the newest clients have encrypted the new meshes :( . Anyways! I'm gonna looking for more info-

Re: Long 3D meshes

Posted: Tue Feb 01, 2022 7:19 am
by Durik256
there is source code.
..\TOOLS >> file tools.
maybe there is an encoder?
for example, in AxCryptoMath.cpp has >> DeCryptoIniFile

Re: Long 3D meshes

Posted: Tue Feb 01, 2022 3:18 pm
by moonpaladin
Durik256 wrote: Tue Feb 01, 2022 7:19 am for example, in AxCryptoMath.cpp has >> DeCryptoIniFile
edit also the names of the textures and skeleton doesn't match at all, it's like trial and error

Re: Long 3D meshes

Posted: Tue Feb 01, 2022 4:06 pm
by moonpaladin
Durik256 wrote: Tue Feb 01, 2022 7:19 am for example, in AxCryptoMath.cpp has >> DeCryptoIniFile
Hello Durik! I have asked Ekey too, and he tells me this:

"The data in these files is weird, probably encrypted ~0x80 bytes in header with a static key or a simple algorithm like XOR, cuz data started always with next bytes 84CCFA759A9D3B6D5AE1E83A, except this file > ТЛ№L20090112·Р¦гу+2.mesh"

[bruce]

Re: Long 3D meshes

Posted: Tue Feb 01, 2022 7:29 pm
by Durik256
moonpaladin wrote: Tue Feb 01, 2022 4:06 pm data started always with next bytes 84CCFA759A9D3B6D5AE1E83A
some non-broken models too have these 96 bytes(84 CC FA 75...26 E5 1A CE), so this does not apply to encryption.

I think you need to look at the source code :
Durik256 wrote: Tue Feb 01, 2022 7:19 am in AxCryptoMath.cpp
in this file:

Code: Select all

/*Uuencode decoding*/
/*
chuue: Undecoded Uue code
chasc: decoded binary code
*/
I have already deleted all files associated with this game.
here is the archive with the source code from the tools folder. there are references to keys, etc. :

Code: Select all

	
	#define BASE_XOR_VALUE	(0x04020626)
	#define BASE_PLUS_VALUE	(0x00970702)
	#define DEF_ENCRYPT_KEY (0x03070201)
also i build this solution PatchWorker.zip. from attachments

Re: Long 3D meshes

Posted: Tue Feb 01, 2022 9:34 pm
by moonpaladin
Durik256 wrote: Tue Feb 01, 2022 7:29 pm I have already deleted all files associated with this game.
oh no :'(
Durik256 wrote: Tue Feb 01, 2022 7:29 pm also i build this solution PatchWorker.zip. from
Sorry for not understanding, but what would this file be used for? :( . Thanks alot for all your effor Durik256!

Re: Long 3D meshes

Posted: Wed Feb 02, 2022 9:06 pm
by Durik256
support (.skeleton)

animation structure in xml:

Code: Select all

<skeleton blendmode="average">
    <bones>
        <bone id="0" name="joint1">
            <position x="0" y="0" z="0" />
            <rotation angle="1.5708">
                <axis x="-1" y="0" z="0" />
            </rotation>
        </bone>
        <bone id="1" name="Bip001">
            <position x="-0" y="87.6374" z="-0.012061" />
            <rotation angle="2.09439">
                <axis x="-0.57735" y="-0.57735" z="-0.57735" />
            </rotation>
        </bone>
    </bones>
    <bonehierarchy>
        <boneparent bone="Bip001" parent="joint1" />
    </bonehierarchy>
    <animations>
        <animation name="my_animation" length="0.1">
            <tracks>
                <track bone="Bip001">
                    <keyframes>
                        <keyframe time="0">
                            <translate x="0" y="0" z="0" />
                            <rotate angle="0">
                                <axis x="1" y="0" z="0" />
                            </rotate>
                        </keyframe>
                        <keyframe time="0.033333">
                            <translate x="-0.301643" y="-0.027527" z="2e-006" />
                            <rotate angle="0.00796363">
                                <axis x="0.188198" y="0.0867897" z="0.978289" />
                            </rotate>
                        </keyframe>
                        <keyframe time="0.066667">
                            <translate x="-0.603287" y="-0.055031" z="4e-006" />
                            <rotate angle="0.0159273">
                                <axis x="0.188198" y="0.0867919" z="0.978289" />
                            </rotate>
                        </keyframe>
                        <keyframe time="0.1">
                            <translate x="-0.90493" y="-0.08255" z="6e-006" />
                            <rotate angle="0.023881">
                                <axis x="0.188196" y="0.086792" z="0.978289" />
                            </rotate>
                        </keyframe>
                    </keyframes>
                </track>
            </tracks>
        </animation>
    </animations>
</skeleton>
based on it you can add support for animations.

Re: Long 3D meshes

Posted: Thu Feb 03, 2022 2:09 am
by Durik256
weight, mesh and skeleton together (:
First of all, it searches for a skeleton by the name specified in the file.
(but since there is a problem with Chinese names).
If doesn't find skeleton, it searches in the same folder with the same name as the model.
Image
*(if not found then rename model and skeleton using ASCII chars)
=update=

Re: Long 3D meshes

Posted: Thu Feb 03, 2022 3:05 am
by moonpaladin
Durik256 wrote: Thu Feb 03, 2022 2:09 am weight, mesh and skeleton together (:
Thanks alot Durik256! :D

Re: Long 3D meshes

Posted: Fri Feb 25, 2022 7:30 am
by moonpaladin
Durik256 wrote: Thu Feb 03, 2022 2:09 am
Hello Durik! what could be the problem with this .mesh samples? It throw this error, AttributeError: 'int' object has no attribute 'setName'.

What is weird is why in these meshes thrown this error, this part of code "loadMesh(bs)" is returning an int, and mesh with this int value is trying to using a function (setName) that doesn't support?

I think here is the problem :roll:

Code: Select all

  while bs.getOffset() < file_size:
        if bs.readShort() == 10:
            break
        else:
            bs.seek(-1, NOESEEK_REL)
samples: https://www.mediafire.com/file/ve75gvz8 ... s.zip/file