Guía para poner emoticonos fácil y 100% explicada.
-
Bien, visto que Anghios posteo lo de agregar emoticonos al juego, pero no de manera completa, y se que a muchos les hará falta algo más que eso para que les vaya bien, y spas quería joderme, pues yo les voy a enseñar como hacerlo, y no solo eso, sabrán hacer los suyos propios, todo muy sencillo.
Primero qeu nada necesitamos la imagen, el juego reconoce dos tipos, dds, y tga, nosotros utilizaremos el último formato, ya que lo podemos conseguir con gran fácilidad.
Crear el Emoticon:
Lo primero es descargar el format factory, en su página oficial : [http://www.formatoz.com][0]">[http://www.formatoz.com][1]
Una vez que lo tengamos, necesitamos nuestro emoticon, cualquier imagen en png, con fondo transparente y de 64x64 o dimensiones menores nos servirá, solo debemos convertirlo a tga con el format factory, y recuerden, la imagen en png debe tener transparencia., una vez convertido, tenemos el emoticon.
La opción de tga, esta en la parte de imágenes, al final, hacen click ahí.
Todo es bastante intuitivo, solo deben dar click donde dice "Agregar Archivo", seleccionan su imagen, y hacen click en "Aceptar"
Ahora solo deben dar click en iniciar, y tendrán la imagen en tga, y en carpeta de salida, podrán buscar su imagen rápidamente.
Crear el mse para el juego:
Esto es simple, podemos usar alguno de los que ya hay, yo les dejaré uno acá :
BoundingSphereRadius 50.000000 BoundingSpherePosition 0.000000 0.000000 60.000000 Group Particle { StartTime 0.000000 List TimeEventPosition { 0.000000 "MOVING_TYPE_DIRECT" 0.000000 0.000000 60.000000 } Group EmitterProperty { MaxEmissionCount 1 CycleLength 1.500000 CycleLoopEnable 0 LoopCount 0 EmitterShape 0 EmitterAdvancedType 0 EmitterEmitFromEdgeFlag 0 EmittingDirection 0.000000 0.000000 0.000000 List TimeEventEmittingSize { 0.000000 0.000000 } List TimeEventEmittingAngularVelocity { 0.000000 0.000000 } List TimeEventEmittingDirectionX { 0.000000 0.000000 } List TimeEventEmittingDirectionY { 0.000000 0.000000 } List TimeEventEmittingDirectionZ { } List TimeEventEmittingVelocity { 0.000000 3.000000 } List TimeEventEmissionCountPerSecond { 0.000000 20.000000 } List TimeEventLifeTime { 0.000000 1.500000 } List TimeEventSizeX { 0.000000 100.000000 } List TimeEventSizeY { 0.000000 100.000000 } } Group ParticleProperty { SrcBlendType 5 DestBlendType 6 ColorOperationType 4 BillboardType 1 RotationType 0 RotationSpeed 0.000000 RotationRandomStartingBegin 0 RotationRandomStartingEnd 0 AttachEnable 1 StretchEnable 0 TexAniType 0 TexAniDelay 0.029000 TexAniRandomStartFrameEnable 0 List TimeEventGravity { } List TimeEventAirResistance { 0.480000 0.030928 } List TimeEventScaleX { 0.000000 0.250000 } List TimeEventScaleY { 0.000000 0.250000 } List TimeEventColorRed { 0.000000 1.000000 } List TimeEventColorGreen { 0.000000 1.000000 } List TimeEventColorBlue { 0.000000 1.000000 } List TimeEventAlpha { 0.777143 1.000000 0.997436 0.000000 } List TimeEventRotation { 0.000000 0.000000 } List TextureFiles { "back.dds" } } } Group Particle { StartTime 0.000000 List TimeEventPosition { 0.000000 "MOVING_TYPE_DIRECT" 0.000000 0.000000 63.000000 } Group EmitterProperty { MaxEmissionCount 1 CycleLength 1.500000 CycleLoopEnable 0 LoopCount 0 EmitterShape 0 EmitterAdvancedType 0 EmitterEmitFromEdgeFlag 0 EmittingDirection 0.000000 0.000000 0.000000 List TimeEventEmittingSize { 0.000000 0.000000 } List TimeEventEmittingAngularVelocity { 0.000000 0.000000 } List TimeEventEmittingDirectionX { 0.000000 0.000000 } List TimeEventEmittingDirectionY { 0.000000 0.000000 } List TimeEventEmittingDirectionZ { } List TimeEventEmittingVelocity { 0.000000 3.000000 } List TimeEventEmissionCountPerSecond { 0.000000 20.000000 } List TimeEventLifeTime { 0.000000 1.500000 } List TimeEventSizeX { 0.000000 45.000000 } List TimeEventSizeY { 0.000000 45.000000 } } Group ParticleProperty { SrcBlendType 5 DestBlendType 6 ColorOperationType 4 BillboardType 1 RotationType 0 RotationSpeed 0.000000 RotationRandomStartingBegin 0 RotationRandomStartingEnd 0 AttachEnable 1 StretchEnable 0 TexAniType 0 TexAniDelay 0.029000 TexAniRandomStartFrameEnable 0 List TimeEventGravity { } List TimeEventAirResistance { 0.480000 0.030928 } List TimeEventScaleX { 0.000000 0.200000 0.200000 0.350000 0.400000 0.200000 0.600000 0.350000 0.800000 0.200000 1.000000 0.350000 } List TimeEventScaleY { 0.000000 0.200000 0.200000 0.350000 0.400000 0.200000 0.600000 0.350000 0.800000 0.200000 1.000000 0.350000 } List TimeEventColorRed { 0.000000 1.000000 } List TimeEventColorGreen { 0.000000 1.000000 } List TimeEventColorBlue { 0.000000 1.000000 } List TimeEventAlpha { 0.782857 0.979381 0.997436 0.000000 } List TimeEventRotation { 0.000000 0.000000 } List TextureFiles { "okay.tga" } } }
Al final en la linea 254, dice okay.tga, ahí colocan el nombre de su imagen, y tendrémos el mse listo.
Añadir al Cliente:
Deben abrir el archivo playersettingmodeule.py, o en caso de que su cliente lo use, el playersettingmodule_new.py
Buscamos esta linea:
chrmgr.RegisterEffect(chrmgr.EFFECT_EMOTICON+11, "", EmoticonStr+"fish.mse")
net.RegisterEmoticonString("(fish)")Y añadimos nuestra linea:
chrmgr.RegisterEffect(chrmgr.EFFECT_EMOTICON+12, "", EmoticonStr+"imagen.mse")
net.RegisterEmoticonString("(imagen)")En donde dice imagen.mse, debe ir el nombre que le hayan colocado al mse, y en EFFECT_EMOTICON añadimos un número más, al que tengamos anteriormente.
RegisterEmoticonString("(imagen)")
Eso indica que comando usaremos para el emoticon, el comando es lo que está dentro de los paréntesis y las comillas, sería (imagen).
Compilar:
Bueno, ahora solo debemos copiar nuestra imagen en .tga y nuestro mse a la carpeta:
ymir work\effect\etc\emoticon
solo queda añadirlo al xml del Effect, compilar los archivos Effect, y el root, y listo.
Acá ven como me funciona, más tarde pongo imágenes, pero el internet me anda lento XD
Acá pueden ver más funcionando ----> [http://m2deluxe.netai.net/viewtopic.php?f=4&t=171][0]">[http://m2deluxe.netai.net/viewtopic.php?f=4&t=171][2] :trollface:
[0]: <a href=
[1]: http://www.formatoz.com
[2]: http://m2deluxe.netai.net/viewtopic.php?f=4&t=171 -
gracias probando
-
Para que esforzarme si Aquiles el esclavo numero uno se preocupa que este todo bien masticadito xD
Supongo que mi fallo fue el .mse
Ala majo toma un gracias de limosna.
-
@SpasTsunami said:
Para que esforzarme si Aquiles el esclavo numero uno se preocupa que este todo bien masticadito xD
Supongo que mi fallo fue el .mse
Ala majo toma un gracias de limosna.
Es que no soporto ver cuando alguien la esta cagando :trollface:
-
Jjajaja, muy buenos los Emoticones a probar +1