Joschuka Posted January 1, 2020 Posted January 1, 2020 Lol, these smiling faces in the decompiled code. Thanks for sharing, a3 and a4 seem to be exactly what you think. In the code that v5 would then be the fraction representing how close time is to the next keyframe, seems to be used quite a bit in the formulas.
Legiayayana Posted January 2, 2020 Posted January 2, 2020 I found the same unpacking function in Ryza, and Fire Emblem Three Houses. It seems they edit it with every iteration of the engine.
vagonumero13 Posted January 2, 2020 Author Posted January 2, 2020 10 hours ago, Joschuka said: Lol, these smiling faces in the decompiled code. Thanks for sharing, a3 and a4 seem to be exactly what you think. In the code that v5 would then be the fraction representing how close time is to the next keyframe, seems to be used quite a bit in the formulas. Here is manually decompiled code (tested and producing same results). This time without smiley faces ? Spoiler void get_xyz(float *xyz, uint64_t *in, float f1, float f2) { float f = f1 / f2; // If parameters are correct, this one will be >= 0.0 & < 1.0 float square_f = f * f; float cubic_f = square_f * f; uint32_t i_uexp = (uint32_t) ((in[0] >> 37) & 0x7800000); // bits 63-60 << 23 i_uexp += 0x32000000; // Exponent 100 float uexp = *(float *)&i_uexp; int32_t i_ux = (int32_t)((in[0] >> 28 ) & 0xFFFFF000); // bits 40-59 << 12 int32_t i_uy = (int32_t)((in[0] >> 8 ) & 0xFFFFF000); // bits 20-39 << 12 int32_t i_uz = (int32_t)((in[0] << 12) & 0xFFFFF000); // bits 0-19 << 12 float ux = (float)i_ux * uexp; float uy = (float)i_uy * uexp; float uz = (float)i_uz * uexp; uint32_t i_vexp = (uint32_t) ((in[1] >> 37) & 0x7800000); // bits 63-60 << 23 i_vexp += 0x32000000; // Exponent 100 float vexp = *(float *)&i_vexp; int32_t i_vx = (int32_t)((in[1] >> 28 ) & 0xFFFFF000); // bits 40-59 << 12 int32_t i_vy = (int32_t)((in[1] >> 8 ) & 0xFFFFF000); // bits 20-39 << 12 int32_t i_vz = (int32_t)((in[1] << 12) & 0xFFFFF000); // bits 0-19 << 12 float vx = (float)i_vx * vexp; float vy = (float)i_vy * vexp; float vz = (float)i_vz * vexp; uint32_t i_wexp = (uint32_t) ((in[2] >> 37) & 0x7800000); // bits 63-60 << 23 i_wexp += 0x32000000; // Exponent 100 float wexp = *(float *)&i_wexp; int32_t i_wx = (int32_t)((in[2] >> 28 ) & 0xFFFFF000); // bits 40-59 << 12 int32_t i_wy = (int32_t)((in[2] >> 8 ) & 0xFFFFF000); // bits 20-39 << 12 int32_t i_wz = (int32_t)((in[2] << 12) & 0xFFFFF000); // bits 0-19 << 12 float wx = (float)i_wx * wexp; float wy = (float)i_wy * wexp; float wz = (float)i_wz * wexp; uint32_t i_texp = (uint32_t) ((in[3] >> 37) & 0x7800000); // bits 63-60 << 23 i_texp += 0x32000000; // Exponent 100 float texp = *(float *)&i_texp; int32_t i_tx = (int32_t)((in[3] >> 28 ) & 0xFFFFF000); // bits 40-59 << 12 int32_t i_ty = (int32_t)((in[3] >> 8 ) & 0xFFFFF000); // bits 20-39 << 12 int32_t i_tz = (int32_t)((in[3] << 12) & 0xFFFFF000); // bits 0-19 << 12 float tx = (float)i_tx * texp; float ty = (float)i_ty * texp; float tz = (float)i_tz * texp; xyz[0] = ux + vx*f + wx*square_f + tx*cubic_f; xyz[1] = uy + vy*f + wy*square_f + ty*cubic_f; xyz[2] = uz + vz*f + wz*square_f + tz*cubic_f; } src.cpp 1
N0130DY Posted January 2, 2020 Posted January 2, 2020 Hi, im a new user. trying to get the mod to work. the redelbe says the File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/MaterialEditor/MPR_Muscle_Character_KASCOS002_body_kidsalb.g1t" added to virtualization. Costume mod "KASUMI NUDE C02 (SaafRats)" successfully loaded. but i cant seem to see the results. i still see the default red/blue costume kasumi wears. any idea what i missed or how do i make it work? i tried pressing the F key. but it doesnt work. it seems a controller is map to the keyboard with the M key being the A button. L key being the B button. any idea which key should i press to get it to work? would also like to find out if this works on the free version or i must purchase DOA 6 full version before it works?
Legiayayana Posted January 2, 2020 Posted January 2, 2020 4 hours ago, vagonumero13 said: Here is manually decompiled code (tested and producing same results). This time without smiley faces ? Reveal hidden contents void get_xyz(float *xyz, uint64_t *in, float f1, float f2) { float f = f1 / f2; // If parameters are correct, this one will be >= 0.0 & < 1.0 float square_f = f * f; float cubic_f = square_f * f; uint32_t i_uexp = (uint32_t) ((in[0] >> 37) & 0x7800000); // bits 63-60 << 23 i_uexp += 0x32000000; // Exponent 100 float uexp = *(float *)&i_uexp; int32_t i_ux = (int32_t)((in[0] >> 28 ) & 0xFFFFF000); // bits 40-59 << 12 int32_t i_uy = (int32_t)((in[0] >> 8 ) & 0xFFFFF000); // bits 20-39 << 12 int32_t i_uz = (int32_t)((in[0] << 12) & 0xFFFFF000); // bits 0-19 << 12 float ux = (float)i_ux * uexp; float uy = (float)i_uy * uexp; float uz = (float)i_uz * uexp; uint32_t i_vexp = (uint32_t) ((in[1] >> 37) & 0x7800000); // bits 63-60 << 23 i_vexp += 0x32000000; // Exponent 100 float vexp = *(float *)&i_vexp; int32_t i_vx = (int32_t)((in[1] >> 28 ) & 0xFFFFF000); // bits 40-59 << 12 int32_t i_vy = (int32_t)((in[1] >> 8 ) & 0xFFFFF000); // bits 20-39 << 12 int32_t i_vz = (int32_t)((in[1] << 12) & 0xFFFFF000); // bits 0-19 << 12 float vx = (float)i_vx * vexp; float vy = (float)i_vy * vexp; float vz = (float)i_vz * vexp; uint32_t i_wexp = (uint32_t) ((in[2] >> 37) & 0x7800000); // bits 63-60 << 23 i_wexp += 0x32000000; // Exponent 100 float wexp = *(float *)&i_wexp; int32_t i_wx = (int32_t)((in[2] >> 28 ) & 0xFFFFF000); // bits 40-59 << 12 int32_t i_wy = (int32_t)((in[2] >> 8 ) & 0xFFFFF000); // bits 20-39 << 12 int32_t i_wz = (int32_t)((in[2] << 12) & 0xFFFFF000); // bits 0-19 << 12 float wx = (float)i_wx * wexp; float wy = (float)i_wy * wexp; float wz = (float)i_wz * wexp; uint32_t i_texp = (uint32_t) ((in[3] >> 37) & 0x7800000); // bits 63-60 << 23 i_texp += 0x32000000; // Exponent 100 float texp = *(float *)&i_texp; int32_t i_tx = (int32_t)((in[3] >> 28 ) & 0xFFFFF000); // bits 40-59 << 12 int32_t i_ty = (int32_t)((in[3] >> 8 ) & 0xFFFFF000); // bits 20-39 << 12 int32_t i_tz = (int32_t)((in[3] << 12) & 0xFFFFF000); // bits 0-19 << 12 float tx = (float)i_tx * texp; float ty = (float)i_ty * texp; float tz = (float)i_tz * texp; xyz[0] = ux + vx*f + wx*square_f + tx*cubic_f; xyz[1] = uy + vy*f + wy*square_f + ty*cubic_f; xyz[2] = uz + vz*f + wz*square_f + tz*cubic_f; } src.cpp 2.36 kB · 2 downloads Interesting, this function works on FETH data.
Joschuka Posted January 2, 2020 Posted January 2, 2020 Awesome, we only miss the last function then. HealingBrew above thinks it's a simple Euler to Quaternion function, like that one https://github.com/erich666/GraphicsGems/blob/master/gemsiv/euler_angle/EulerAngles.c#L27-L37 , we'll just need to confirm that and we'll be done. I'll start adding animation support to my WIP Noesis script so we can begin testing. I should have some time for that on Saturday, should be ready by the end of the week
vagonumero13 Posted January 2, 2020 Author Posted January 2, 2020 1 hour ago, Joschuka said: Awesome, we only miss the last function then. HealingBrew above thinks it's a simple Euler to Quaternion function, like that one https://github.com/erich666/GraphicsGems/blob/master/gemsiv/euler_angle/EulerAngles.c#L27-L37 , we'll just need to confirm that and we'll be done. I'll start adding animation support to my WIP Noesis script so we can begin testing. I should have some time for that on Saturday, should be ready by the end of the week The function I saw in DOA6 wasn't euler to quaternion, but axis to quaternion. The function produces the same quaternion result that if you choose "axis with angle magnitude" in this page: https://www.andre-gaschler.com/rotationconverter/ An approximate (and untested) decompiled pseudocode of the function is: Spoiler void AxisToQuaternion(Quaternion &q, const Vector3 &v) { float length = sqrtf(v.x*v.x + v.y*v.y + v.z*v.z); float s = sinf(length*0.5f); float c = cosf(length*0.5f); if (length > 0.000011920929f) { q.x = v.x * (s / length); q.y = v.y * (s / length); q.z = v.z * (s / length); } else { q.x = v.x * 0.5f; q.y = v.y * 0.5f; q.z = v.z * 0.5f; } q.w = c; } Here are some test cases logged from the game that can be used to verify result: Spoiler 0.000000 0.000000 0.000000 -> 0.000000 0.000000 0.000000 1.000000 -0.794708 -0.918640 1.150604 -> -0.352601 -0.407587 0.510507 0.670011 0.226929 0.030090 -2.841736 -> 0.078759 0.010443 -0.986264 0.144815 -0.014801 0.155029 -2.963165 -> -0.004969 0.052048 -0.994831 0.087059 0.000000 -0.000031 0.179749 -> 0.000000 -0.000015 0.089753 0.995964 0.000000 -0.000031 0.489746 -> 0.000000 -0.000015 0.242433 0.970169 -0.320984 -0.400085 -1.798187 -> -0.138111 -0.172146 -0.773712 0.593862 0.226166 0.387573 -1.867828 -> 0.096480 0.165335 -0.796798 0.573127 -0.013550 -0.054230 0.027435 -> -0.006774 -0.027110 0.013715 0.999516 0.013794 -0.013702 -0.011871 -> 0.006897 -0.006851 -0.005936 0.999935 0.169556 -0.068298 0.254669 -> 0.084431 -0.034010 0.126814 0.987741 0.644684 -0.439148 1.654633 -> 0.279241 -0.190214 0.716695 0.610085 -0.173340 -1.591705 0.211914 -> -0.077552 -0.712128 0.094810 0.691273 0.089355 1.690063 0.121674 -> 0.039508 0.747243 0.053797 0.661180 0.098541 -1.061462 0.398499 -> 0.046655 -0.502553 0.188670 0.842421 -0.607574 1.016174 0.399017 -> -0.284414 0.475686 0.186786 0.811141 0.000031 -0.000031 1.549896 -> 0.000014 -0.000014 0.699674 0.714454 -0.000031 -0.000031 1.134918 -> -0.000014 -0.000014 0.537495 0.843270 -0.285248 -0.911957 0.683258 -> -0.134565 -0.430214 0.322326 0.832416 -0.240570 0.583954 0.350311 -> -0.117688 0.285673 0.171374 0.935506 -1.386963 -0.553558 0.841248 -> -0.611656 -0.244121 0.370993 0.654701 0.000000 -2.221466 -2.221466 -> 0.000000 -0.707107 -0.707107 -0.000017
vagonumero13 Posted January 2, 2020 Author Posted January 2, 2020 9 hours ago, xghostxprotocolx said: Hi, im a new user. trying to get the mod to work. the redelbe says the File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/MaterialEditor/MPR_Muscle_Character_KASCOS002_body_kidsalb.g1t" added to virtualization. Costume mod "KASUMI NUDE C02 (SaafRats)" successfully loaded. but i cant seem to see the results. i still see the default red/blue costume kasumi wears. any idea what i missed or how do i make it work? i tried pressing the F key. but it doesnt work. it seems a controller is map to the keyboard with the M key being the A button. L key being the B button. any idea which key should i press to get it to work? would also like to find out if this works on the free version or i must purchase DOA 6 full version before it works? Post the whole log.
Joschuka Posted January 2, 2020 Posted January 2, 2020 2 hours ago, vagonumero13 said: The function I saw in DOA6 wasn't euler to quaternion, but axis to quaternion. The function produces the same quaternion result that if you choose "axis with angle magnitude" in this page: https://www.andre-gaschler.com/rotationconverter/ An approximate (and untested) decompiled pseudocode of the function is: Reveal hidden contents void AxisToQuaternion(Quaternion &q, const Vector3 &v) { float length = sqrtf(v.x*v.x + v.y*v.y + v.z*v.z); float s = sinf(length*0.5f); float c = cosf(length*0.5f); if (length > 0.000011920929f) { q.x = v.x * (s / length); q.y = v.y * (s / length); q.z = v.z * (s / length); } else { q.x = v.x * 0.5f; q.y = v.y * 0.5f; q.z = v.z * 0.5f; } q.w = c; } Here are some test cases logged from the game that can be used to verify result: Hide contents 0.000000 0.000000 0.000000 -> 0.000000 0.000000 0.000000 1.000000 -0.794708 -0.918640 1.150604 -> -0.352601 -0.407587 0.510507 0.670011 0.226929 0.030090 -2.841736 -> 0.078759 0.010443 -0.986264 0.144815 -0.014801 0.155029 -2.963165 -> -0.004969 0.052048 -0.994831 0.087059 0.000000 -0.000031 0.179749 -> 0.000000 -0.000015 0.089753 0.995964 0.000000 -0.000031 0.489746 -> 0.000000 -0.000015 0.242433 0.970169 -0.320984 -0.400085 -1.798187 -> -0.138111 -0.172146 -0.773712 0.593862 0.226166 0.387573 -1.867828 -> 0.096480 0.165335 -0.796798 0.573127 -0.013550 -0.054230 0.027435 -> -0.006774 -0.027110 0.013715 0.999516 0.013794 -0.013702 -0.011871 -> 0.006897 -0.006851 -0.005936 0.999935 0.169556 -0.068298 0.254669 -> 0.084431 -0.034010 0.126814 0.987741 0.644684 -0.439148 1.654633 -> 0.279241 -0.190214 0.716695 0.610085 -0.173340 -1.591705 0.211914 -> -0.077552 -0.712128 0.094810 0.691273 0.089355 1.690063 0.121674 -> 0.039508 0.747243 0.053797 0.661180 0.098541 -1.061462 0.398499 -> 0.046655 -0.502553 0.188670 0.842421 -0.607574 1.016174 0.399017 -> -0.284414 0.475686 0.186786 0.811141 0.000031 -0.000031 1.549896 -> 0.000014 -0.000014 0.699674 0.714454 -0.000031 -0.000031 1.134918 -> -0.000014 -0.000014 0.537495 0.843270 -0.285248 -0.911957 0.683258 -> -0.134565 -0.430214 0.322326 0.832416 -0.240570 0.583954 0.350311 -> -0.117688 0.285673 0.171374 0.935506 -1.386963 -0.553558 0.841248 -> -0.611656 -0.244121 0.370993 0.654701 0.000000 -2.221466 -2.221466 -> 0.000000 -0.707107 -0.707107 -0.000017 Ah nice catch, I forgot that you could store the angle information as the length of the vector, I assumed the angle was needed as a separate variable. Your decompiled code seem to work perfectly fine, here's the output from a quick python script based on it : [0.0, 0.0, 0.0, 1.0] [-0.3526018110730552, -0.4075888599638502, 0.5105083303904097, 0.6700183047226148] [0.07875886530222335, 0.010443152955082429, -0.9862639982041915, 0.14481473522727345] [-0.004969173638117415, 0.05204824133124145, -0.9948301738661031, 0.08705867592157929] [0.0, -1.5479141742025332e-05, 0.08975355641894552, 0.9959640048066734] [0.0, -1.5345559896081812e-05, 0.2424331153827898, 0.9701681216832002] [-0.13811077417274167, -0.1721458050398193, -0.7737114581329905, 0.5938533618818035] [0.09648042743311387, 0.16533523474586917, -0.7967990052065219, 0.5731205218588401] [-0.006773905558956236, -0.02711061981270824, 0.013715284059775965, 0.9995153923177015] [0.006896850870619066, -0.006850851865247386, -0.0059353716605131885, 0.9999351332161704] [0.08443129503046415, -0.03400934551411121, 0.1268137575438986, 0.9877413587244274] [0.2792413176386669, -0.19021453325720084, 0.7166951547245166, 0.6100743996067756] [-0.07755254802443083, -0.712130947578324, 0.09481060725769722, 0.6912785723191075] [0.03950748568478265, 0.7472457028580474, 0.05379703221095903, 0.6611874903991624] [0.04665422704374189, -0.5025490825778544, 0.18866931351116895, 0.8424201403327986] [-0.2844105291492426, 0.47567964568546783, 0.1867832331691997, 0.8111421265083303] [1.3994517475947447e-05, -1.3994517475947447e-05, 0.6996789244484207, 0.7144574181090207] [-1.4681432661630837e-05, -1.4681432661630837e-05, 0.5374910384991208, 0.8432694605534151] [-0.13456415490682916, -0.4302106343124832, 0.3223231551258213, 0.8324176127451878] [-0.11768782742338875, 0.28567268393896805, 0.17137357323238447, 0.9355061685125511] [-0.6116571632365561, -0.24412166436083838, 0.3709942985201669, 0.6547086055006703] I'll probably wait for healingBrew's confirmation that the code is the same in Fire Emblem too though, the snipset they showed me didn't look like this.
Legiayayana Posted January 3, 2020 Posted January 3, 2020 FETH and Ryza have the same output but with different optimizations, should be fine?
N0130DY Posted January 3, 2020 Posted January 3, 2020 redelbe_log.txt here is the whole log. Myself path = C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/ original DLL path: C:\WINDOWS\system32\dinput8.dll base=00007FFBDA540000 REDELBE. Exe base = 00007FF6F0690000. My Dll base = 0000000064800000. My dll name: dinput8.dll Patch "Branding" located at address 00007FF6F1739D05. Relative: 0x10a9d05. Patch "PatchMRCWI" located at address 00007FF6F18642D0. Relative: 0x11d42d0. Patch "PatchBGC" located at address 00007FF6F1ECC246. Relative: 0x183c246. Patch "PatchBGF" located at address 00007FF6F1ECC278. Relative: 0x183c278. Patch "PatchBGH" located at address 00007FF6F1ECC2AA. Relative: 0x183c2aa. Patch "PatchGRCF" located at address 00007FF6F1ECC372. Relative: 0x183c372. Patch "PatchBGS" located at address 00007FF6F1ECC415. Relative: 0x183c415. Patch "PatchLPA" located at address 00007FF6F172D9E1. Relative: 0x109d9e1. Patch "LocateMO" located at address 00007FF6F1EDA907. Relative: 0x184a907. Patch "PatchICM" located at address 00007FF6F1862FB0. Relative: 0x11d2fb0. Patch "PatchICF" located at address 00007FF6F1862F90. Relative: 0x11d2f90. Patch "LocateGDS" located at address 00007FF6F07D8033. Relative: 0x148033. Patch "PatchBI" located at address 00007FF6F1ED7BF0. Relative: 0x1847bf0. Patch "PatchBF" located at address 00007FF6F183C1A0. Relative: 0x11ac1a0. Patch "PatchBNM" located at address 00007FF6F19F0D20. Relative: 0x1360d20. Patch "PatchBRM" located at address 00007FF6F19F0D90. Relative: 0x1360d90. Patch "PatchSRARTA" located at address 00007FF6F1F34002. Relative: 0x18a4002. Patch "PatchSRSV" located at address 00007FF6F1F367EF. Relative: 0x18a67ef. Patch "PatchSRVS" located at address 00007FF6F1F471B7. Relative: 0x18b71b7. Patch "PatchSRSARTA" located at address 00007FF6F1F33B84. Relative: 0x18a3b84. Patch "PatchSRSVS" located at address 00007FF6F1F46D84. Relative: 0x18b6d84. Patch "LocateCO" located at address 00007FF6F17B9AF8. Relative: 0x1129af8. Patch "LocateCISL" located at address 00007FF6F188F240. Relative: 0x11ff240. Patch "LocateCRDSL" located at address 00007FF6F188E030. Relative: 0x11fe030. Patch "LocateCGDHLIH_NNN" located at address 00007FF6F188F510. Relative: 0x11ff510. Patch "LocateCGDHLS_NNN" located at address 00007FF6F188F690. Relative: 0x11ff690. Patch "LocateOGCRFC" located at address 00007FF6F1EE9B60. Relative: 0x1859b60. Patch "LocateCGDFM" located at address 00007FF6F1EE1D50. Relative: 0x1851d50. Patch "LocateLSPTU" located at address 00007FF6F1730730. Relative: 0x10a0730. Patch "LocateLO" located at address 00007FF6F18876C0. Relative: 0x11f76c0. Patch "PatchLSPTII" located at address 00007FF6F1ECABC0. Relative: 0x183abc0. Patch "SpecialStages" located at address 00007FF6F1F6DE30. Relative: 0x18dde30. Patch "Workaround115_1" located at address 00007FF6F18678B0. Relative: 0x11d78b0. Patch "Workaround115_2" located at address 00007FF6F1867BCB. Relative: 0x11d7bcb. Patch "Workaround115_3" located at address 00007FF6F1866CDD. Relative: 0x11d6cdd. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/CharacterEditor/AYA_COS_002.g1m" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/CharacterEditor/AYA_COS_003.g1m" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/CharacterEditor/CRI_COS_001.g1m" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/CharacterEditor/CRI_COS_002.g1m" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/CharacterEditor/HEL_COS_001.g1m" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/CharacterEditor/HEL_COS_002.g1m" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/CharacterEditor/HON_COS_002.g1m" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/CharacterEditor/HON_COS_003.g1m" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/CharacterEditor/HTM_COS_002.g1m" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/CharacterEditor/HTM_COS_004.g1m" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/CharacterEditor/KAS_COS_002.g1m" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/CharacterEditor/KAS_COS_005.g1m" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/CharacterEditor/KOK_COS_001.g1m" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/CharacterEditor/KOK_COS_002.g1m" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/CharacterEditor/LEI_COS_001.g1m" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/CharacterEditor/LEI_COS_002.g1m" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/CharacterEditor/LIS_COS_001.g1m" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/CharacterEditor/LIS_COS_002.g1m" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/CharacterEditor/MAI_COS_004.g1m" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/CharacterEditor/MAI_COS_014.g1m" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/CharacterEditor/MAR_COS_001.g1m" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/CharacterEditor/MAR_COS_007.g1m" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/CharacterEditor/MIL_COS_001.g1m" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/CharacterEditor/MIL_COS_002.g1m" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/CharacterEditor/NIC_COS_004.g1m" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/CharacterEditor/NIC_COS_010.g1m" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/CharacterEditor/NYO_COS_004.g1m" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/CharacterEditor/NYO_COS_005.g1m" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/CharacterEditor/PHF_COS_007.g1m" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/CharacterEditor/SNK_COS_010.g1m" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/CharacterEditor/SNK_COS_013.g1m" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/CharacterEditor/TIN_COS_001.g1m" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/CharacterEditor/TIN_COS_002.g1m" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/MaterialEditor/MPR_Muscle_Character_AYACOS002_body_kidsalb.g1t" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/MaterialEditor/MPR_Muscle_Character_AYACOS003_body_kidsalb.g1t" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/MaterialEditor/MPR_Muscle_Character_CRICOS001_body_kidsalb.g1t" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/MaterialEditor/MPR_Muscle_Character_CRICOS002_body_kidsalb.g1t" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/MaterialEditor/MPR_Muscle_Character_HELCOS001_body_kidsalb.g1t" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/MaterialEditor/MPR_Muscle_Character_HELCOS002_body_kidsalb.g1t" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/MaterialEditor/MPR_Muscle_Character_HONCOS002_body_kidsalb.g1t" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/MaterialEditor/MPR_Muscle_Character_HONCOS003_body_kidsalb.g1t" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/MaterialEditor/MPR_Muscle_Character_HTMCOS002_body_kidsalb.g1t" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/MaterialEditor/MPR_Muscle_Character_HTMCOS004_body_kidsalb.g1t" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/MaterialEditor/MPR_Muscle_Character_KASCOS002_body_kidsalb.g1t" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/MaterialEditor/MPR_Muscle_Character_KASCOS005_body_kidsalb.g1t" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/MaterialEditor/MPR_Muscle_Character_KOKCOS001_body_kidsalb.g1t" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/MaterialEditor/MPR_Muscle_Character_KOKCOS002_body_kidsalb.g1t" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/MaterialEditor/MPR_Muscle_Character_LEICOS001_body_kidsalb.g1t" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/MaterialEditor/MPR_Muscle_Character_LEICOS002_body_kidsalb.g1t" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/MaterialEditor/MPR_Muscle_Character_LISCOS001_body_kidsalb.g1t" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/MaterialEditor/MPR_Muscle_Character_LISCOS002_body_kidsalb.g1t" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/MaterialEditor/MPR_Muscle_Character_MAICOS004_body_kidsalb.g1t" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/MaterialEditor/MPR_Muscle_Character_MAICOS014_body_kidsalb.g1t" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/MaterialEditor/MPR_Muscle_Character_MARCOS001_body_kidsalb.g1t" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/MaterialEditor/MPR_Muscle_Character_MARCOS007_body_kidsalb.g1t" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/MaterialEditor/MPR_Muscle_Character_MILCOS001_body_kidsalb.g1t" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/MaterialEditor/MPR_Muscle_Character_MILCOS002_body_kidsalb.g1t" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/MaterialEditor/MPR_Muscle_Character_NICCOS004_body_kidsalb.g1t" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/MaterialEditor/MPR_Muscle_Character_NICCOS010_body_kidsalb.g1t" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/MaterialEditor/MPR_Muscle_Character_NYOCOS004_body_kidsalb.g1t" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/MaterialEditor/MPR_Muscle_Character_NYOCOS005_body_kidsalb.g1t" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/MaterialEditor/MPR_Muscle_Character_PHFCOS007_body_kidsalb.g1t" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/MaterialEditor/MPR_Muscle_Character_SNKCOS010_body_kidsalb.g1t" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/MaterialEditor/MPR_Muscle_Character_SNKCOS013_body_kidsalb.g1t" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/MaterialEditor/MPR_Muscle_Character_TINCOS001_body_kidsalb.g1t" added to virtualization. File "C:/Program Files (x86)/Steam/steamapps/common/Dead or Alive 6/REDELBE/MaterialEditor/MPR_Muscle_Character_TINCOS002_body_kidsalb.g1t" added to virtualization. Costume mod "MAI NUDE C14 (SaafRats)" successfully loaded. Costume mod "PHASE4 NUDE C07 (SaafRats)" successfully loaded. Costume mod "MAI NUDE C04 (SaafRats)" successfully loaded. Costume mod "LISA NUDE C02 (SaafRats)" successfully loaded. Costume mod "LEIFANG NUDE C01 (SaafRats)" successfully loaded. Costume mod "KULA NUDE C10 (SaafRats)" successfully loaded. Costume mod "AYANE NUDE C03 (SaafRats)" successfully loaded. Costume mod "NICO NUDE C04 (SaafRats)" successfully loaded. Costume mod "KOKORO NUDE C02 (SaafRats)" successfully loaded. Costume mod "KOKORO NUDE C01 (SaafRats)" successfully loaded. Costume mod "LISA NUDE C01 (SaafRats)" successfully loaded. Costume mod "TINA NUDE C01 (SaafRats)" successfully loaded. Costume mod "HONOKA NUDE C03 (SaafRats)" successfully loaded. Costume mod "NYOTENGU NUDE C05 (SaafRats)" successfully loaded. Costume mod "TINA NUDE C02 (SaafRats)" successfully loaded. Costume mod "NYOTENGU NUDE C04 (SaafRats)" successfully loaded. Costume mod "MILA NUDE C01 (SaafRats)" successfully loaded. Costume mod "NICO NUDE C10 (SaafRats)" successfully loaded. Costume mod "AYANE NUDE C02 (SaafRats)" successfully loaded. Costume mod "MILA NUDE C02 (SaafRats)" successfully loaded. Costume mod "CHRISTIE NUDE C02 (SaafRats)" successfully loaded. Costume mod "HELENA NUDE C01 (SaafRats)" successfully loaded. Costume mod "LEIFANG NUDE C02 (SaafRats)" successfully loaded. Costume mod "MARIE NUDE C01 (SaafRats)" successfully loaded. Costume mod "KULA NUDE C13 (SaafRats)" successfully loaded. Costume mod "HELENA NUDE C02 (SaafRats)" successfully loaded. Costume mod "HITOMI NUDE C02 (SaafRats)" successfully loaded. Costume mod "HITOMI NUDE C04 (SaafRats)" successfully loaded. Costume mod "HONOKA NUDE C02 (SaafRats)" successfully loaded. Costume mod "KASUMI NUDE C02 (SaafRats)" successfully loaded. Costume mod "KASUMI NUDE C05 (SaafRats)" successfully loaded. Costume mod "CHRISTIE NUDE C01 (SaafRats)" successfully loaded. Costume mod "MARIE NUDE C07 (SaafRats)" successfully loaded.
supermanstuff Posted January 3, 2020 Posted January 3, 2020 On 12/31/2019 at 10:02 AM, vagonumero13 said: Latest REDELBE only supports 1.17 and 1.16. You have a very old game version (1.08, from what I can tell from those .rdb.bin in the screenshot). Hi @vagonumero13! First of all, Thank you for the great app! It was amazing! I am using the past tense, because It won't start anymore. I have the same problem as the guy above... (Failed to apply patch "Layer2:PatchMRCWI") I have updated the game to 1.17 and I use the version 2.01 of REDELBE (the latest one at this moment). I believe I did something wrong during the Update (of REDELBE or the Game) because I see that you said something about the .rdb.bin files. I have them as well, even though I updated the game to latest version. Should I delete them? Could you help me with this, please?
vagonumero13 Posted January 3, 2020 Author Posted January 3, 2020 21 minutes ago, supermanstuff said: Hi @vagonumero13! First of all, Thank you for the great app! It was amazing! I am using the past tense, because It won't start anymore. I have the same problem as the guy above... (Failed to apply patch "Layer2:PatchMRCWI") I have updated the game to 1.17 and I use the version 2.01 of REDELBE (the latest one at this moment). I believe I did something wrong during the Update (of REDELBE or the Game) because I see that you said something about the .rdb.bin files. I have them as well, even though I updated the game to latest version. Should I delete them? Could you help me with this, please? Reinstall REDELBE. Don't forget to also copy the REDELBE directory. And check DOA6.exe, right click, properties, details tab, and check that it says 1.0.17.0 in version.
supermanstuff Posted January 3, 2020 Posted January 3, 2020 35 minutes ago, vagonumero13 said: Reinstall REDELBE. Don't forget to also copy the REDELBE directory. And check DOA6.exe, right click, properties, details tab, and check that it says 1.0.17.0 in version. Thank you for the quick response! This is awkward... I thought that the dinput8.dll is the only one that matters, so I replaced only that file, but now I realized there is a system folder inside the REDELBE directory. That sounds important... Thank you! It works now!
vagonumero13 Posted January 4, 2020 Author Posted January 4, 2020 2 hours ago, supermanstuff said: Thank you for the quick response! This is awkward... I thought that the dinput8.dll is the only one that matters, so I replaced only that file, but now I realized there is a system folder inside the REDELBE directory. That sounds important... Thank you! It works now! Well, it is the REDELBE/Patches directory which is important, it contains the signatures of the patches.
N0130DY Posted January 4, 2020 Posted January 4, 2020 Hi, im still kinda lost. ive check that my game version is 1.0.17.0. so ill tell you what i did from start to end. would that help diagnose my problem? Basically i cut dinput8.dll and pasted this to where the DOA6.exe is and then moved the redelbe folder into that folder with DOA6.exe. next i move saafrats mod into the redelbe folder. I assume this is suppose to be the way based on the instruction. i guess im mistaken somewhere. i reread the read me it says copy. so is there suppose to be two dinput8.dll one inside redelbe folder, one outside the folder? i also checked the system folder in redelbe directory but it is empty. Am i suppose to move all the relevant files from my DOA6 folder into the relevant directories in redelbe folder? i need a clearer step by step instruction and/or sample(picture) of the working doa6 folder. I appreciate the help. Yours Sincerely, Slow dumb guy
vagonumero13 Posted January 4, 2020 Author Posted January 4, 2020 31 minutes ago, xghostxprotocolx said: Hi, im still kinda lost. ive check that my game version is 1.0.17.0. so ill tell you what i did from start to end. would that help diagnose my problem? Basically i cut dinput8.dll and pasted this to where the DOA6.exe is and then moved the redelbe folder into that folder with DOA6.exe. next i move saafrats mod into the redelbe folder. I assume this is suppose to be the way based on the instruction. i guess im mistaken somewhere. i reread the read me it says copy. so is there suppose to be two dinput8.dll one inside redelbe folder, one outside the folder? i also checked the system folder in redelbe directory but it is empty. Am i suppose to move all the relevant files from my DOA6 folder into the relevant directories in redelbe folder? i need a clearer step by step instruction and/or sample(picture) of the working doa6 folder. I appreciate the help. Yours Sincerely, Slow dumb guy You have to copy the "REDELBE" folder in saafrats mod (inside Option 2 folder), to the game folder, merging it with the existing REDELBE folder.
N0130DY Posted January 4, 2020 Posted January 4, 2020 56 minutes ago, vagonumero13 said: You have to copy the "REDELBE" folder in saafrats mod (inside Option 2 folder), to the game folder, merging it with the existing REDELBE folder. i did that and also did option 1. so that log was the result. but it still doesnt work. would be nice if you could screenshot your folder as sample i only downloaded version 2.01 of REDELBE. (the latest) is that why? am i suppose to download all the previous version of it and merge toget the working final ? yours sincerely, Still lost & confused guy.
vagonumero13 Posted January 4, 2020 Author Posted January 4, 2020 On 1/2/2020 at 10:28 PM, Joschuka said: Ah nice catch, I forgot that you could store the angle information as the length of the vector, I assumed the angle was needed as a separate variable. Your decompiled code seem to work perfectly fine, here's the output from a quick python script based on it : [0.0, 0.0, 0.0, 1.0] [-0.3526018110730552, -0.4075888599638502, 0.5105083303904097, 0.6700183047226148] [0.07875886530222335, 0.010443152955082429, -0.9862639982041915, 0.14481473522727345] [-0.004969173638117415, 0.05204824133124145, -0.9948301738661031, 0.08705867592157929] [0.0, -1.5479141742025332e-05, 0.08975355641894552, 0.9959640048066734] [0.0, -1.5345559896081812e-05, 0.2424331153827898, 0.9701681216832002] [-0.13811077417274167, -0.1721458050398193, -0.7737114581329905, 0.5938533618818035] [0.09648042743311387, 0.16533523474586917, -0.7967990052065219, 0.5731205218588401] [-0.006773905558956236, -0.02711061981270824, 0.013715284059775965, 0.9995153923177015] [0.006896850870619066, -0.006850851865247386, -0.0059353716605131885, 0.9999351332161704] [0.08443129503046415, -0.03400934551411121, 0.1268137575438986, 0.9877413587244274] [0.2792413176386669, -0.19021453325720084, 0.7166951547245166, 0.6100743996067756] [-0.07755254802443083, -0.712130947578324, 0.09481060725769722, 0.6912785723191075] [0.03950748568478265, 0.7472457028580474, 0.05379703221095903, 0.6611874903991624] [0.04665422704374189, -0.5025490825778544, 0.18866931351116895, 0.8424201403327986] [-0.2844105291492426, 0.47567964568546783, 0.1867832331691997, 0.8111421265083303] [1.3994517475947447e-05, -1.3994517475947447e-05, 0.6996789244484207, 0.7144574181090207] [-1.4681432661630837e-05, -1.4681432661630837e-05, 0.5374910384991208, 0.8432694605534151] [-0.13456415490682916, -0.4302106343124832, 0.3223231551258213, 0.8324176127451878] [-0.11768782742338875, 0.28567268393896805, 0.17137357323238447, 0.9355061685125511] [-0.6116571632365561, -0.24412166436083838, 0.3709942985201669, 0.6547086055006703] I'll probably wait for healingBrew's confirmation that the code is the same in Fire Emblem too though, the snipset they showed me didn't look like this. I got a better parser now, also with writing capabilities (and able to handle the 0300/0500 differences). I have attached it. And a sample animation, a .g1a file generated from scratch by code (by method G1aFile::DebugCreateSampleAnimation) Here is how it looks in game: Spoiler g1a_test.mp4 It is an animation with linear interpolation, which can be simulated by using only vectors u and v, and setting w and t to 0. The weirdness of boobs at scale may be related with the softbody or with me using SK_Skeleton instead of root, but well. at least the sample confirmed everything we were finding out these days. g1a_src.rar
vagonumero13 Posted January 4, 2020 Author Posted January 4, 2020 16 hours ago, xghostxprotocolx said: i did that and also did option 1. so that log was the result. but it still doesnt work. would be nice if you could screenshot your folder as sample i only downloaded version 2.01 of REDELBE. (the latest) is that why? am i suppose to download all the previous version of it and merge toget the working final ? yours sincerely, Still lost & confused guy. 2.01 is the only version needed. While you are browsing the costumes, do you see a text in the lower right corner like "Slot: MAR_COS_001 Mod (vanilla)"
N0130DY Posted January 5, 2020 Posted January 5, 2020 9 hours ago, vagonumero13 said: 2.01 is the only version needed. While you are browsing the costumes, do you see a text in the lower right corner like "Slot: MAR_COS_001 Mod (vanilla)" Nope. nothing like that. at least nothing i noticed.
vagonumero13 Posted January 5, 2020 Author Posted January 5, 2020 15 minutes ago, xghostxprotocolx said: Nope. nothing like that. at least nothing i noticed. In the .ini file, check if slot_info_in_css is set to true. If it is false, set it to true.
vagonumero13 Posted January 5, 2020 Author Posted January 5, 2020 Success (more or less) in exporting a game g1a file to fbx. The weirdness is probably problem of the g1m to fbx part of the code rather than the g1a itself, my g1m to fbx code must be buggy as hell. Anyway, I will release later a preliminar g1a2fbx. HON07120_WIN.fbx
vagonumero13 Posted January 5, 2020 Author Posted January 5, 2020 g1mtools updated to version 0.9. Changelog: - Added preliminar version of g1a2fbx. --------- You need both a g1m and a g1a file for g1a2fbx. If you start the program without dragging any file, it will ask you to drag each of them. Otherwise if you drag one of them at startup, it will only ask you for the other file. The fbx will be saved with same file name as the g1a, but with .fbx extension. The program is still buggy. Besides of the problems of the g1m part, there is some problem somewhere in the animations conversion. Maybe some problem in the rotation conversion to the format required by fbxsdk (euler, degrees), or maybe due to the interpolation parameters not being adequate. Whatever it is, you may some time see a leg or something else doing weird things : ) Due to the interpolation not getting the proper parameters, the animation in fbx may differ from the one in game (I mean, besides the bug above). Hopefully I will improve the program with time, and with time there will be a fbx2g1a too. The program has only been tested with body animations. Camera animations won't work at all, and face animations... who knows what can happen there. 2
N0130DY Posted January 5, 2020 Posted January 5, 2020 1 hour ago, vagonumero13 said: In the .ini file, check if slot_info_in_css is set to true. If it is false, set it to true. ok. ive check and it says true. also ive just noticed it in the fight mode. earlier i didnt notice it cause i thought you were referring to wardrobe area. it shows slot: KAS_COS_004 Mod: Vanilla. but it still isnt nude. Also i haven't unlock the other characters only the few default basic characters are there.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now