Post by olganix on Dec 8, 2017 22:09:17 GMT
Hi.
Lazybone and I have done lot of work to have XmlConverter and "what values is for" on file for effects :
-bsa: configuration file (look like .bac), witch could use eepk, define a projectile, its hitbox, the display on impact on ground, wall, enemies.
-eepk: configuration file for effect, witch could use emp, etr, ecf, emo, ema, emm, and texturesEmbPack.
-emp: for particules generation.
-etr: for making 'traces', sort of extrude things.
-ecf: for colorise the character (like 'poison' effect).
-emo, obj.ema and mat.ema : allready done with conversion into .emd, .esk, .ean, and mat.ema.xml.
Please see, Lazybone's XV2_Xml_Serializer and Olganix's XenoXmlConverter to have more information about it, and link on tutorial for each.
In this post, we will focus on Ecf.
For Ecf, the tool to convert is Lazybone's XV2_Xml_Serializer.
Don't forget to keep originals files to reverse a strange behaviour, or for make comparaison !!!
For people witch don't know yet, Ecf are in xxxxx.cbind.emb file, so you have to unPack with the last version of EmbPack2 (link).
So, you have to repack the extracted folder each time you change the ecf file.
As it's a little bored to do conversion and repack each time, I give you a example of batch to do the job each time you execute it : XXX.cmd (link). Don't forget to adapt paths in file before use it !!!
Notice: if nothing change, there 2 questions:
-did you don't forget to use the batch ?
-did the Xml don't have a error of synthax (tags not well close by sample).
check the date of file, or use the batch in cmd.exe to see errors, to solve this kind of problems.
Notice: we use in game the offline->training to test more easely the files. when you make a change and repack, select "Get back to characters selection" (not sure it's the exact name because my game is not in English) to have will the reload of the emb if you use the Eternity's patcher.
Notice: Lazybone also put a fonctionnality on XV2_Xml_Serializer : a drag of the folder to convert all emp.xml and repack in the same time.
Notice:
-all times are in frames.
*********
For this example, we will use only the vfx\cmn\BTL_AURA.cbind\Ssgss_Kok.ecf (link).
To use it, you have to choose the 4nd Blue Goku, witch have Kaioken. do a kaioken first, and do a kaioken x10.
This ecf is on the animation of kaioken x10, Goku must become All black.
-Time StartFrame="0" EndFrame="80" time to start the color effect, and time to end the effect. Animation, witch have their own duration, will be played to fit, so that change the speed.
-DiffuseColor R="0.8" G="0.2" B="0.4" A="0.0" : diffuseColor for the light calculation , to find the pixel final color. you could have 0.0 on alpha because of animation witch could make it back to 1.0.
-SpecularColor R="0.8" G="0.2" B="0.4" A="0.0" /> : specularColor for light calculation.
-AmbientColor R="0.0" G="0.0" B="0.0" A="1.0" /> : AmbienteColor.
=> As I comment the animation, 0.0 on Diffuse and Specular, 1.0 + black on Ambient, that explain why we have a all black on Goku.
-BlendingFactor value="1.0" : same if the light calculation is done with this 3 color, the result is mixed with the normal look of the character with a blend factor, witch is this parameter.
it could also be animated.
-Loop value="Once" or "Loop" : you could repete the colorEffect or play once. in Loop, it's depend of the durations of each.
*********
For Animation :
-duration is about the keyframes. as I said, the speed could change to adapt to the duration of the colorEffect.
-parameter :
-0 is for DiffuseColor. So Component is for animate 0:R, 1:G, 2:B, 3:A.
-1 is for SpecularColor. same component as DiffuseColor
-2 is for AmbientColor. same component as DiffuseColor
-3 is for BlendingFactor. only have a component 0, because it's just a float number.
-Interpolated: add intermediaires values between Keyframe.
-Looped: if true, the last keyframe will have the same value as the first, for loop.
-I_03: All other unknow parameters are always 0, so you just can do care about.
Here, my French SSB_KK_10 :
(link)
Have a good day and happy modding !!!
Lazybone and I have done lot of work to have XmlConverter and "what values is for" on file for effects :
-bsa: configuration file (look like .bac), witch could use eepk, define a projectile, its hitbox, the display on impact on ground, wall, enemies.
-eepk: configuration file for effect, witch could use emp, etr, ecf, emo, ema, emm, and texturesEmbPack.
-emp: for particules generation.
-etr: for making 'traces', sort of extrude things.
-ecf: for colorise the character (like 'poison' effect).
-emo, obj.ema and mat.ema : allready done with conversion into .emd, .esk, .ean, and mat.ema.xml.
Please see, Lazybone's XV2_Xml_Serializer and Olganix's XenoXmlConverter to have more information about it, and link on tutorial for each.
In this post, we will focus on Ecf.
For Ecf, the tool to convert is Lazybone's XV2_Xml_Serializer.
Don't forget to keep originals files to reverse a strange behaviour, or for make comparaison !!!
For people witch don't know yet, Ecf are in xxxxx.cbind.emb file, so you have to unPack with the last version of EmbPack2 (link).
So, you have to repack the extracted folder each time you change the ecf file.
As it's a little bored to do conversion and repack each time, I give you a example of batch to do the job each time you execute it : XXX.cmd (link). Don't forget to adapt paths in file before use it !!!
Notice: if nothing change, there 2 questions:
-did you don't forget to use the batch ?
-did the Xml don't have a error of synthax (tags not well close by sample).
check the date of file, or use the batch in cmd.exe to see errors, to solve this kind of problems.
Notice: we use in game the offline->training to test more easely the files. when you make a change and repack, select "Get back to characters selection" (not sure it's the exact name because my game is not in English) to have will the reload of the emb if you use the Eternity's patcher.
Notice: Lazybone also put a fonctionnality on XV2_Xml_Serializer : a drag of the folder to convert all emp.xml and repack in the same time.
Notice:
-all times are in frames.
*********
For this example, we will use only the vfx\cmn\BTL_AURA.cbind\Ssgss_Kok.ecf (link).
To use it, you have to choose the 4nd Blue Goku, witch have Kaioken. do a kaioken first, and do a kaioken x10.
This ecf is on the animation of kaioken x10, Goku must become All black.
-Time StartFrame="0" EndFrame="80" time to start the color effect, and time to end the effect. Animation, witch have their own duration, will be played to fit, so that change the speed.
-DiffuseColor R="0.8" G="0.2" B="0.4" A="0.0" : diffuseColor for the light calculation , to find the pixel final color. you could have 0.0 on alpha because of animation witch could make it back to 1.0.
-SpecularColor R="0.8" G="0.2" B="0.4" A="0.0" /> : specularColor for light calculation.
-AmbientColor R="0.0" G="0.0" B="0.0" A="1.0" /> : AmbienteColor.
=> As I comment the animation, 0.0 on Diffuse and Specular, 1.0 + black on Ambient, that explain why we have a all black on Goku.
-BlendingFactor value="1.0" : same if the light calculation is done with this 3 color, the result is mixed with the normal look of the character with a blend factor, witch is this parameter.
it could also be animated.
-Loop value="Once" or "Loop" : you could repete the colorEffect or play once. in Loop, it's depend of the durations of each.
*********
For Animation :
<Animation Duration="101">
<AnimationProperties Parameter="3" Component="0" Interpolated="True" Looped="False" />
<I_03 int8="0" />
<Keyframes>
<Keyframe Index="0" Float="0.0" />
<Keyframe Index="40" Float="0.5" />
<Keyframe Index="100" Float="0.6" />
</Keyframes>
</Animation>
-duration is about the keyframes. as I said, the speed could change to adapt to the duration of the colorEffect.
-parameter :
-0 is for DiffuseColor. So Component is for animate 0:R, 1:G, 2:B, 3:A.
-1 is for SpecularColor. same component as DiffuseColor
-2 is for AmbientColor. same component as DiffuseColor
-3 is for BlendingFactor. only have a component 0, because it's just a float number.
-Interpolated: add intermediaires values between Keyframe.
-Looped: if true, the last keyframe will have the same value as the first, for loop.
-I_03: All other unknow parameters are always 0, so you just can do care about.
Here, my French SSB_KK_10 :
(link)
Have a good day and happy modding !!!