Jump to content

DeadOfLove

Miembro
  • Contador contenido

    36
  • Ingreso

  • Última visita

  • Días ganados

    1

Actividad de reputación

  1. Gracias
    DeadOfLove got a reaction from Carlos Zolano in Auto-Update Ayuda   
    hay mejores opciones algo mas actualizadas lo sencillo no tiene que ser algo del 2008

    añado un ejemplo el de marty sama facil y sencillo de usar

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  2. Me Gusta
    DeadOfLove reacted to Dilong in Auto-Update Ayuda   
    Aunque cumple su función de parcheador, al ser antiguo es muy vulnerable
     

    Debes iniciar sesión para ver el contenido del archivo adjunto en esta publicación.
  3. Me Gusta
    DeadOfLove reacted to PapixHere in HOTYHOST ⭐ WEB HOSTING ⭐ VIRTUAL SERVER ⭐DEDICATED SERVER 🔥 DDOS PROTECTION 🔥   
    Hola a todos,
    Estamos emocionados de presentarles HotyHost, nuestra nueva empresa de alojamiento web especializada en ofrecer soluciones de alojamiento de primera calidad con un fuerte enfoque en la protección contra DDoS. Entendemos la importancia de mantener su sitio web seguro y accesible en todo momento, y es por eso que nos hemos dedicado a ofrecer una seguridad y fiabilidad incomparables.
    En HotyHost, reconocemos los desafíos que conlleva dirigir un negocio en línea, especialmente en lo que respecta a la seguridad. Con la creciente amenaza de los ataques DDoS, hemos desarrollado una infraestructura de vanguardia diseñada para mantener su sitio web protegido y garantizar su disponibilidad continua.
    Para demostrar nuestro compromiso de ofrecer servicios de alojamiento excepcionales y brindarles la oportunidad de experimentar de primera mano nuestra sólida protección contra DDoS, estamos ofreciendo una prueba gratuita de 30 días de nuestros planes de alojamiento. Durante este período de prueba, tendrás acceso a nuestro excepcional servicio de atención al cliente y a nuestra infraestructura de alojamiento de alto rendimiento, todo ello disfrutando de la tranquilidad que ofrece saber que tu sitio web está protegido.
    Si deseas obtener 30 días gratuitos, ponte en contacto conmigo por Discord Papix#4344 o a través del chat en vivo del sitio web de la empresa:
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  4. Haha
    DeadOfLove reacted to Komputer DOB13 in Kupię uniwersalne pliki   
    Witam kupię jakieś pliki serwerowe zależy mi na tym aby były dobre i w miarę czyste bym sobie pomału tam działał 
  5. Gracias
    DeadOfLove got a reaction from roberthn in Crear un servidor   
    Debes iniciar sesión para ver el contenido del enlace en esta publicación. esta es su pagina web, por este medio podras contactar con el
  6. Gracias
    DeadOfLove got a reaction from roberthn in Crear un servidor   
    esto depende mucho lo que deseas exactamente en tu proyecto y tambien a quienes contrates, hay desarrolladores que cobran sumas de dinero mas altas que otros.
    lo primero que te diria prueba servidores internacionales, si realmentes quieres comenzar bien un proyecto reune dinero y busca adquirir la base de marty, no trae sistemas como tal, esta limpia pero ese man tiene años arreglando fallos en el codigo fuente  y actualizandola por la cual es la base limpia en venta mejor trabajada
  7. Gracias
    DeadOfLove got a reaction from roberthn in Crear un servidor   
    bueno lamento decirte que crear un proyecto de un servidor de metin2, sin conocimiento lleva a gastos considerables de recursos, tiempo y dinero.
    muchas cosas basicas como guias de edicion base las encontraras en este foro o utilizando google pero no todo esta actualizado.
    es vital para el desarrollo de un servidor tener un minimo de conocimiento en los lenguajes de programacion en que esta estructurada la base, al no poseerlo necesitaras de un equipo, nadie que sepa programar va a trabajar de gratis por lo cual tendras que llegar aun acuerdo de pago por horas trabajadas o edicion requerida mas un % de ganancia una vez el proyecto aperture.
    Tambien vas a necesitar de diseñadores que en esta comunidad hay personas muy capaces pero no lo hacen tampoco gratis.
    y despues de ello necesitaras personas que te ayuden a organizar, test todo.

    como consejo no tomes fuentes porque ya tengan algunos "sistemas" o tambien puedes llamarlo mecanicas porque si se filtro y esta gratis es porque el proyecto estaba incompleto o encontraba fallos que no pudieron arreglar.
    no vas a encontrar una base lista para montar tu servidor gratis. porque eso lleva a grandes suma de dinero y nadie lo va a publicar gratis.
    te recomiendo busques una base limpia de marty y comiences a editar probar y siempre haciendo backup antes de realizar una modificacion(eres nuevo vas a cometer muchisimos errores editando, es mejor tener un backup antes de los cambios realizados asi no pierdes muchas horas de trabajo).

    y por ultimo consejo de oro no confies en todas las personas de la comunidad en general, no solo habla hispana. pero tambien hay muchas personas buenas en esta y las demas comunidades dedicadas a metin2

    buena suerte en tu inicio de camino y espero no caigas en lo que hacen algunas personas.

    exitos y espero que este mensaje te sea de alguna utilidad aunque no sea lo mas alentador posible
  8. Me Gusta
    DeadOfLove got a reaction from ComaFallen in Mythesia2 - Break your Destiny | Start 19.03.2023   
    excellent presentation, good luck with your project
  9. Me Gusta
    DeadOfLove reacted to ComaFallen in Mythesia2 - Break your Destiny | Start 19.03.2023   


     
    Server Start: 19.03.2023

    Homepage: Debes iniciar sesión para ver el contenido del enlace en esta publicación.

    Discord: Debes iniciar sesión para ver el contenido del enlace en esta publicación.

    Presentation: Debes iniciar sesión para ver el contenido del enlace en esta publicación.



     














































































  10. Haha
    DeadOfLove reacted to Johan™ in Source Martysama V4 y 4.7   
    Todo un crack ese tal Raiser, se dice que se fue porque
    Debes iniciar sesión para ver el contenido del enlace en esta publicación. lo acosaba mucho 
  11. Me Gusta
    DeadOfLove reacted to Dilong in Source Martysama V4 y 4.7   
    Los tenía guardado hace tiempo y a estas alturas ya los habrán más que reposteado pero con links ya caídos:
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  12. Caca
    DeadOfLove reacted to Bagubixx in [SERVICIOS DE DISEÑO] Alpha Design   
    Tengo el chat donde me dijiste que no te dedicabas mas a esos tipos de trabajos, ahora vuelves segun vos... a eso me referia
  13. Gracias
    DeadOfLove got a reaction from SzC in Metin365.com - Classic Style - Apertura 24/02/2023 a las 19:00 Hora España   
    mas claro imposible, desde hace mucho son de los pocos que se lo toman enserio en la comunidad hispana  y buscan hacer un proyecto decente de acuerdo a su criterio, todos tienen aciertos o fallos y aparte gustos a donde deseen centrar su proyecto.

    lamentable lo que sucedio que se filtrara su ultima base, les deseo muy buena suerte y tengan aun mejor resultado en este nuevo inicio
  14. Me Gusta
    DeadOfLove got a reaction from AlphaDesign in Metin365.com - Classic Style - Apertura 24/02/2023 a las 19:00 Hora España   
    mas claro imposible, desde hace mucho son de los pocos que se lo toman enserio en la comunidad hispana  y buscan hacer un proyecto decente de acuerdo a su criterio, todos tienen aciertos o fallos y aparte gustos a donde deseen centrar su proyecto.

    lamentable lo que sucedio que se filtrara su ultima base, les deseo muy buena suerte y tengan aun mejor resultado en este nuevo inicio
  15. Me Gusta
    DeadOfLove reacted to SzC in Metin365.com - Classic Style - Apertura 24/02/2023 a las 19:00 Hora España   
    Es decir, entonces según usted yo no debería poder abrir más servers con MI PROPIA BASE?, pero se filtra y abren 200 cada día sin cambiarle nada.. ni siquiera jugabilidad y para vosotros eso es mejor? al menos nosotros en nuestros proyectos ofrecemos siempre la mejor experiencia y profesionalidad, eso siempre marca y marcará la diferencia por que por ese motivo os acordáis de Ava2, Jotuns2, y no de otros, eso es importante, pero se agradece tu comentario y esperamos que si pruebas el server lo disfrutes, un saludo.
  16. Me Gusta
    DeadOfLove reacted to Break in Presentación de Servidores   
    Hola comunidad de Metin2Zone,
    Lleva un tiempo Zone donde las presentaciones se han dejado al libre albedrío, pero se ha llegado un limite donde hay post que solo ponen el link de la página web. A partir de ahora fecha 10/07/22, desde la administración aplicaremos la normativa sin ser tan flexibles para ayudar a mejorar al anunciante en su cara visible a la hora de publicitarse. 
    Reglas
    Para publicitar tu servidor aquí deberás cumplir las siguientes reglas:
    Por favor crea un hilo trabajado, con imágenes de presentación (opcional pero es recomendable) y descripción del servidor. Usa los prefijos para describir tu servidor: beta (proyecto no online), internacional, extranjero (en un idioma que no es español ni inglés) o hispano (el idioma principal es español). El significado de los tags se sobreentiende. El equipo se reserva el derecho de alterar las etiquetas que consideremos inexactas. Solo se permite una publicación activa por servidor. Estas reglas están sujetas a cambios.
     
    Un saludo!
     
  17. Me Gusta
    DeadOfLove reacted to Shogun in Cómo hacer backup de tus datos en OVH   
    Hola a todos,
    Hoy voy a explicar cómo crear automaticamente una copia de seguridad de nuestra base de datos y almacenarla en el espacio de almacenamiento que OVH incluye gratuitamente con sus servidores dedicados.
    La ventaja de este método es que incluso en caso de fallo del hardware, nuestros datos quedarían a salvo al estar en una máquina diferente; por otro lado, este sistema no nos salvará si un hacker gana acceso a nuestro sistema, ya que podría acceder a la partición de backup y destruir dichas copias de seguridad. Así que, si nuestros datos son realmente valiosos, conviene o bien  descargarse de vez en cuando estas copias de seguridad o almacenarlas en otro servidor completamente distinto donde la máquina no tenga permisos para borrarlos.
    Películas de Hackerman aparte (hola SG) volvamos por un momento a la realidad cotidiana y veamos cómo montar esta unidad de backup gratuita.
    En primer lugar tenemos que otorgar acceso a ella a nuestro servidor, así que en el panel de control del mismo en OVH haremos click en la pestaña de Backup Storage y a continuación en el botón Añadir un Acceso, tras lo cual marcamos la casilla NFS y aceptamos.

    En esta pantalla se nos proporcionan dos datos que necesitaremos para crear nuestro script de backup, en concreto Nombre y Usuario.
    A continuación abrimos una sesión SSH a nuestro servidor y ejecutamos los siguientes comandos para montar el acceso al almacenamiento NFS:
    mkdir /backups mount -t nfs <Nombre>:/export/ftpbackup/<Usuario> /backups Los más avispados habrán notado que hay que reemplazar <Nombre> y <Usuario> por los correspondientes que nos muestra OVH en el panel.
    Nuestro espacio de backup quedará ahora montado como /backups y podemos probar a copiar cosas en él. Pero claro, es un poco pesado andar copiando a mano, así que, ¿porqué no hacer que nuestra base de datos se copien automaticamente?
    Veamos a continuación un script que nos ayudará a ello almacenando las bd que indiquemos en nuestra unidad NFS, y borrandolos automaticamente despues de 7 dias.
     
    #!/bin/sh MYSQLDUMP=/usr/local/bin/mysqldump GZIP=/usr/bin/gzip MAX_AGE=7 DAY=$(date +"%Y-%m-%d") FILETIME=$(date +"%Y-%m-%d.%T") BACKUP_DIR="/backups" BACKUP_NAME="<Nombre>" BACKUP_ID="<Usuario>" MYSQL_USER="root" DATABASES="cats rabbits dogs" #Comprobar que la unidad esta montada if [ ! -d "$BACKUP_DIR" ]; then echo -e "\033[32mMontando unidad de backup...\033[0m" mkdir $BACKUP_DIR mount -t nfs $BACKUP_NAME:/export/ftpbackup/$BACKUP_ID $BACKUP_DIR fi #Borrar backups viejos echo -e "\033[32mBorrando los backups con mas de $MAX_AGE dias de antiguedad...\033[0m" find $BACKUP_DIR/* -type d -ctime +$MAX_AGE | xargs rm -r echo -e "\033[32mCreando directorio $BACKUP_DIR/$FILETIME...\033[0m" mkdir $BACKUP_DIR/$FILETIME for db in $DATABASES do FILE=$db.gz echo -e "\033[32mVolcando $db...\033[0m" $MYSQLDUMP -u $MYSQL_USER -e --single-transaction --quick $db | $GZIP -9 > $BACKUP_DIR/$FILETIME/$FILE done echo -e "\033[32mListo!\033[0m" Para ponerlo en práctica, id por ejemplo al directorio /root y abrid el editor ee (o el que más os guste) en el putty y copiad y pegad este script.
    ee /root/backup.sh Para que funcione con vuestra bd y servidor debeis editar estas variables:
    BACKUP_NAME, BACKUP_ID: los campo "Nombre" y "Usuario" que vimos antes en OVH. DATABASES es una lista de las bases de datos que queremos hacer backup, separadas por un espacio. Asimismo podemos cambiar la frecuencia de borrado en MAX_AGE.
    Una vez modificado a nuestra conveniencia, podemos probarlo con este comando:
    sh backup.sh Una vez comprobado su buen funcionamiento (es decir, nuestras bd se guardan en /backups con su fecha y hora) procedemos a establecer un backup diario por medio de cron:
    crontab -e En la pantalla que se nos presenta escribimos:
    3 * * * * sh /root/backup.sh (¡Ojo al tabulador entre cada estrellita, y entre la última y sh!) Esto hará que el backup se ejecute todos los días a las 3 AM.
    Es importante señalar que en el caso de bd grandes, el backup puede causar lag en el servidor. Existen diferentes estrategias para minimizar el impacto que se salen del objetivo de este artículo.
     
    Nota 1
    En caso de no disponer de un servidor dedicado OVH con almacenamiento backup, podemos simplemente crear un directorio llamado /backups sin montar nada y borrar esta parte:
    #Comprobar que la unidad esta montada if [ ! -d "$BACKUP_DIR" ]; then   echo -e "\033[32mMontando unidad de backup...\033[0m"   mkdir $BACKUP_DIR   mount -t nfs $BACKUP_NAME:/export/ftpbackup/$BACKUP_ID $BACKUP_DIR fi Esto almacenara las copias de seguridad localmente en el propio servidor, lo cual no es ideal pero sin duda es mejor que nada.
     
    Nota 2
    Este script asume que el usuario root de MySQL no tiene contraseña, pues así es por defecto al instalar MariaDB (la bd que uso yo) en FreeBSD.
    Si no es así en vuestro servidor, podéis hacer una de estas dos cosas para que el script pueda funcionar:
     
    Opción A: Crear un fichero /root/.my.cnf con el siguiente contenido:
    [client] user=root password=<vuestra pass de mysql> Estos datos de conexión serán entonces utilizados automáticamente por cualquier programa que use MySQL y se ejecute bajo el usuario de sistema root.
     
    Opción B: (preferible) Permitir al usuario root loguearse localmente sin contraseña:
    Entrasmos en la consola mysql:
    mysql -uroot -p Y después de escribir nuestra contraseña, ponemos:
    ALTER USER 'root'@'localhost' IDENTIFIED VIA unix_socket;  
    Cualquier duda sobre este tutorial la puedo resolver aquí, si necesitáis ayuda más personalizada os invito a contratar mis servicios a través de discord: Smokebomb#5154, o a consultar este y otros tutoriales en inglés en mi Debes iniciar sesión para ver el contenido del enlace en esta publicación..
  18. Haha
    DeadOfLove reacted to [GA]Masamune in Looking for traslators for our project "Havoc The New Order International"   
    Translators Reclutamiento

    Requitos:

    - Eres una persona activa a la que le gusta terminar todas sus tareas a tiempo.
    - Tiene suficiente tiempo disponible para verificar nuestro canal Discord para tareas.
    - Dominas muy bien tu idioma nativo.
    - Puedes hablar inglés a un nivel decente.

    Responsabilidades:

    - Traduzca todos los anuncios/nota de parche/evento que realizamos en su idioma nativo sin esperar a que lo digamos.
    - Traducir, traducir y traducir. Todo lo que tienes que hacer es traducir del inglés a tu idioma todo lo que te damos.


    Responda estas preguntas en Ingles.

    Campo requerido -- *

    Cuál es su idioma nativo (sí/no)? *
    - turco:
    - Español :
    - Inglés :
    - Alemán :
    - rumano:
    - Italiano :
    Cual es tu nombre real? *
    Cuál es tu ID de discordia? *
    Cual es tu edad? *
    Cuál es tu nivel de inglés? *

    Cuéntanos un poco sobre ti (de dónde eres, qué pasatiempos tienes, cualquier cosa). *
     
    Ricompena
     
    Cuando el servidor estará abierto al público, los traductores se convertirán en gerentes comunitarios "CM" (de su idioma principal).
    Ex. [Turco] Traslator -> [turco] Gerente comunitario
    - Serán recompensados en los tokens de estragos.
    - Si prefieren otro tipe de pago, podemos hablar sobre él, pero preferimos el primero.
     
     
    Si esta interesado o quiere mas informacion contacteme!
     
    E-mail: [email protected]
    Discord's Contact: Masamune#1434
     
    "O ingrese a nuesta comunidad haciendo clic en el boton a continuacion"
     

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.  
  19. Me Gusta
    DeadOfLove reacted to Johan™ in EterNexus Compilador / Descompilador - ( EIX/EPK NO XML)   
    No es el eternexus.
    Solo debes configurar donde esta la carpeta pack y listo :3

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  20. Me Gusta
    DeadOfLove reacted to Zaymax in EterNexus Compilador / Descompilador - ( EIX/EPK NO XML)   
    Bueno chicos os traigo este compilador / descompilador, tiene una sensilla interfaz y ala vez no hace falta hacer xml ( ya que el programa mismo no los hace) basta con poner vuestros archivos en las carpetas de los eix/epk.
    Descarga por MEGA(Link actualizado por @Dilong): Debes iniciar sesión para ver el contenido del enlace en esta publicación.
    Recomiendo actualizar las librerias c++ por si os da el error de mscore100.dll.
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
    Creditos:
    Luscha, Inforge.
  21. Confuso
    DeadOfLove reacted to TrafalgarLaw in Mp Automatico (100%)   
    Aqui dejo el rar con el tutorial adentro, Disfruten.
    aca en zone habia uno pero no funciona sin modificarlo bien. Asi que les traigo el completo.

    Debes iniciar sesión para ver el contenido del enlace en esta publicación. Os Dejo un imagen de que sirve en mi cliente.

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  22. Me Gusta
    DeadOfLove got a reaction from wellington soldado in shining system by sany (añadido funcion para estolas)   
    En vista que la mayoria de la comunidad no sabe instalar correctamente efectos y algunos utilizan codigo del 2015, les comparto un sistema desarrollo sany hace un par de años bastante bueno, para añadir efectos de manera simple en un block de notas, añadiendo la funcion de carga de efectos para estolas, asi puede añadir estolas con movimiento sin ninguno problema.

    una vez instalen el sistema que se encuentra subido en el post deben seguir los siguientes pasos:

    abren su archivo de InstanceBase.cpp
     
    // buscan void CInstanceBase::SetAcce(DWORD dwAcce) o en caso que no usen version de marty se llamaria SetSash algo asi creo recordar void CInstanceBase::SetSash(DWORD dwSash) ahora dentro de void CInstanceBase::SetAcce(DWORD dwAcce) buscar ClearAcceEffect(); añadir #ifdef ENABLE_SHINING_SYSTEM __ClearAcceShiningEffect(); #endif al final de void CInstanceBase::SetAcce(DWORD dwAcce) añadir #ifdef ENABLE_SHINING_SYSTEM if (CItemManager::Instance().GetItemDataPointer(dwAcce, &pItemData)) { __GetShiningEffect(pItemData); return; } #endif buscar __ClearWeaponShiningEffect(false); __ClearArmorShiningEffect(false); añadir __ClearAcceShiningEffect(false); deberia quedar de esta forma #ifdef ENABLE_SHINING_SYSTEM __ClearWeaponShiningEffect(false); __ClearArmorShiningEffect(false); __ClearAcceShiningEffect(false); #endif buscar: void CInstanceBase::__GetShiningEffect(CItemData* pItem) dentro añadir despues de #if defined(ENABLE_COSTUME_SYSTEM) if ((pItem->GetType() == CItemData::ITEM_TYPE_ARMOR && pItem->GetSubType() == CItemData::ARMOR_BODY) || (pItem->GetType() == CItemData::ITEM_TYPE_COSTUME && pItem->GetSubType() == CItemData::COSTUME_BODY)) #else if (pItem->GetType() == CItemData::ITEM_TYPE_ARMOR && pItem->GetSubType() == CItemData::ARMOR_BODY) #endif { __ClearArmorShiningEffect(); if (shiningTable.Any() && removeRefineEffect) { __ClearArmorRefineEffect(); } for (int i = 0; i < CItemData::ITEM_SHINING_MAX_COUNT; i++) { if (strcmp(shiningTable.szShinings[i], "")) { __AttachArmorShiningEffect(i, shiningTable.szShinings[i]); } } } #ifdef ENABLE_ACCE_SYSTEM if (pItem->GetType() == CItemData::ITEM_TYPE_COSTUME && pItem->GetSubType() == CItemData::COSTUME_ACCE) { __ClearAcceShiningEffect(); if (shiningTable.Any() && removeRefineEffect) { ClearAcceEffect(); } for (int i = 0; i < CItemData::ITEM_SHINING_MAX_COUNT; i++) { if (strcmp(shiningTable.szShinings[i], "")) { __AttachAcceShiningEffect(i, shiningTable.szShinings[i]); } } } #endif (nota: deben modificarlo de acuerdo a la version de estolas que utilicen) buscar: void CInstanceBase::__ClearArmorShiningEffect(bool detaching) { } añadir: #ifdef ENABLE_ACCE_SYSTEM void CInstanceBase::__AttachAcceShiningEffect(int effectIndex, const char* effectFileName, const char* boneName) { if (IsAffect(AFFECT_INVISIBILITY)) { return; } if (effectIndex >= CItemData::ITEM_SHINING_MAX_COUNT) { return; } if (!strcmp(boneName, "")) { Tracef("Empty bone name for attaching Aura shining. Effect Index: %i, EffectFileName: %s", effectIndex, effectFileName); return; } CEffectManager::Instance().RegisterEffect(effectFileName, false, false); m_acceShiningEffects[effectIndex] = m_GraphicThingInstance.AttachEffectByName(0, boneName, effectFileName); } void CInstanceBase::__ClearAcceShiningEffect(bool detaching) { if (detaching) { for (int i = 0; i < CItemData::ITEM_SHINING_MAX_COUNT; i++) { __DetachEffect(m_acceShiningEffects[i]); } } #ifdef __cplusplus < 199711L memset(&m_acceShiningEffects, 0, sizeof(m_acceShiningEffects)); #else m_acceShiningEffects = {}; #endif } #endif ahora abran su archivo de InstanceBase.h
     
    buscar: void __GetShiningEffect(CItemData* pItem); void __ClearWeaponShiningEffect(bool detaching = true); void __ClearArmorShiningEffect(bool detaching = true); añadir void __ClearAcceShiningEffect(bool detaching = true); buscar: void __AttachArmorShiningEffect(int effectIndex, const char* effectFileName, const char* boneName = "Bip01"); añadir: void __AttachAcceShiningEffect(int effectIndex, const char* effectFileName, const char* boneName = "Bip01"); deberia quedar asi #ifdef ENABLE_SHINING_SYSTEM void __GetShiningEffect(CItemData* pItem); void __ClearWeaponShiningEffect(bool detaching = true); void __ClearArmorShiningEffect(bool detaching = true); void __ClearAcceShiningEffect(bool detaching = true); void __AttachWeaponShiningEffect(int effectIndex, const char* effectFileName, const char* boneName = "Bip01"); void __AttachArmorShiningEffect(int effectIndex, const char* effectFileName, const char* boneName = "Bip01"); void __AttachAcceShiningEffect(int effectIndex, const char* effectFileName, const char* boneName = "Bip01"); #endif buscar: DWORD m_armorShiningEffects[CItemData::ITEM_SHINING_MAX_COUNT]; añadir: DWORD m_acceShiningEffects[CItemData::ITEM_SHINING_MAX_COUNT]; deberia quedar asi: #ifdef ENABLE_SHINING_SYSTEM DWORD m_weaponShiningEffects[2][CItemData::ITEM_SHINING_MAX_COUNT]; DWORD m_armorShiningEffects[CItemData::ITEM_SHINING_MAX_COUNT]; DWORD m_acceShiningEffects[CItemData::ITEM_SHINING_MAX_COUNT]; #endif
    espero que sea de utilidad, saludos a toda la comunidad.

    post data: a todos los miembros, cuando se hace un comentarios indicando que algo no es necesario, o esta mal desarrollado no es en plan de criticar, es notificando a las personas que no saben de programacion que abstengan de utilizarlo porque pueden usar algo mejor en su fuente. porque ahora esta mal decir que un codigo (sistema) publico esta bug esta mal?


     
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  23. Me Gusta
    DeadOfLove got a reaction from Tonis BossGR in shining system by sany (añadido funcion para estolas)   
    En vista que la mayoria de la comunidad no sabe instalar correctamente efectos y algunos utilizan codigo del 2015, les comparto un sistema desarrollo sany hace un par de años bastante bueno, para añadir efectos de manera simple en un block de notas, añadiendo la funcion de carga de efectos para estolas, asi puede añadir estolas con movimiento sin ninguno problema.

    una vez instalen el sistema que se encuentra subido en el post deben seguir los siguientes pasos:

    abren su archivo de InstanceBase.cpp
     
    // buscan void CInstanceBase::SetAcce(DWORD dwAcce) o en caso que no usen version de marty se llamaria SetSash algo asi creo recordar void CInstanceBase::SetSash(DWORD dwSash) ahora dentro de void CInstanceBase::SetAcce(DWORD dwAcce) buscar ClearAcceEffect(); añadir #ifdef ENABLE_SHINING_SYSTEM __ClearAcceShiningEffect(); #endif al final de void CInstanceBase::SetAcce(DWORD dwAcce) añadir #ifdef ENABLE_SHINING_SYSTEM if (CItemManager::Instance().GetItemDataPointer(dwAcce, &pItemData)) { __GetShiningEffect(pItemData); return; } #endif buscar __ClearWeaponShiningEffect(false); __ClearArmorShiningEffect(false); añadir __ClearAcceShiningEffect(false); deberia quedar de esta forma #ifdef ENABLE_SHINING_SYSTEM __ClearWeaponShiningEffect(false); __ClearArmorShiningEffect(false); __ClearAcceShiningEffect(false); #endif buscar: void CInstanceBase::__GetShiningEffect(CItemData* pItem) dentro añadir despues de #if defined(ENABLE_COSTUME_SYSTEM) if ((pItem->GetType() == CItemData::ITEM_TYPE_ARMOR && pItem->GetSubType() == CItemData::ARMOR_BODY) || (pItem->GetType() == CItemData::ITEM_TYPE_COSTUME && pItem->GetSubType() == CItemData::COSTUME_BODY)) #else if (pItem->GetType() == CItemData::ITEM_TYPE_ARMOR && pItem->GetSubType() == CItemData::ARMOR_BODY) #endif { __ClearArmorShiningEffect(); if (shiningTable.Any() && removeRefineEffect) { __ClearArmorRefineEffect(); } for (int i = 0; i < CItemData::ITEM_SHINING_MAX_COUNT; i++) { if (strcmp(shiningTable.szShinings[i], "")) { __AttachArmorShiningEffect(i, shiningTable.szShinings[i]); } } } #ifdef ENABLE_ACCE_SYSTEM if (pItem->GetType() == CItemData::ITEM_TYPE_COSTUME && pItem->GetSubType() == CItemData::COSTUME_ACCE) { __ClearAcceShiningEffect(); if (shiningTable.Any() && removeRefineEffect) { ClearAcceEffect(); } for (int i = 0; i < CItemData::ITEM_SHINING_MAX_COUNT; i++) { if (strcmp(shiningTable.szShinings[i], "")) { __AttachAcceShiningEffect(i, shiningTable.szShinings[i]); } } } #endif (nota: deben modificarlo de acuerdo a la version de estolas que utilicen) buscar: void CInstanceBase::__ClearArmorShiningEffect(bool detaching) { } añadir: #ifdef ENABLE_ACCE_SYSTEM void CInstanceBase::__AttachAcceShiningEffect(int effectIndex, const char* effectFileName, const char* boneName) { if (IsAffect(AFFECT_INVISIBILITY)) { return; } if (effectIndex >= CItemData::ITEM_SHINING_MAX_COUNT) { return; } if (!strcmp(boneName, "")) { Tracef("Empty bone name for attaching Aura shining. Effect Index: %i, EffectFileName: %s", effectIndex, effectFileName); return; } CEffectManager::Instance().RegisterEffect(effectFileName, false, false); m_acceShiningEffects[effectIndex] = m_GraphicThingInstance.AttachEffectByName(0, boneName, effectFileName); } void CInstanceBase::__ClearAcceShiningEffect(bool detaching) { if (detaching) { for (int i = 0; i < CItemData::ITEM_SHINING_MAX_COUNT; i++) { __DetachEffect(m_acceShiningEffects[i]); } } #ifdef __cplusplus < 199711L memset(&m_acceShiningEffects, 0, sizeof(m_acceShiningEffects)); #else m_acceShiningEffects = {}; #endif } #endif ahora abran su archivo de InstanceBase.h
     
    buscar: void __GetShiningEffect(CItemData* pItem); void __ClearWeaponShiningEffect(bool detaching = true); void __ClearArmorShiningEffect(bool detaching = true); añadir void __ClearAcceShiningEffect(bool detaching = true); buscar: void __AttachArmorShiningEffect(int effectIndex, const char* effectFileName, const char* boneName = "Bip01"); añadir: void __AttachAcceShiningEffect(int effectIndex, const char* effectFileName, const char* boneName = "Bip01"); deberia quedar asi #ifdef ENABLE_SHINING_SYSTEM void __GetShiningEffect(CItemData* pItem); void __ClearWeaponShiningEffect(bool detaching = true); void __ClearArmorShiningEffect(bool detaching = true); void __ClearAcceShiningEffect(bool detaching = true); void __AttachWeaponShiningEffect(int effectIndex, const char* effectFileName, const char* boneName = "Bip01"); void __AttachArmorShiningEffect(int effectIndex, const char* effectFileName, const char* boneName = "Bip01"); void __AttachAcceShiningEffect(int effectIndex, const char* effectFileName, const char* boneName = "Bip01"); #endif buscar: DWORD m_armorShiningEffects[CItemData::ITEM_SHINING_MAX_COUNT]; añadir: DWORD m_acceShiningEffects[CItemData::ITEM_SHINING_MAX_COUNT]; deberia quedar asi: #ifdef ENABLE_SHINING_SYSTEM DWORD m_weaponShiningEffects[2][CItemData::ITEM_SHINING_MAX_COUNT]; DWORD m_armorShiningEffects[CItemData::ITEM_SHINING_MAX_COUNT]; DWORD m_acceShiningEffects[CItemData::ITEM_SHINING_MAX_COUNT]; #endif
    espero que sea de utilidad, saludos a toda la comunidad.

    post data: a todos los miembros, cuando se hace un comentarios indicando que algo no es necesario, o esta mal desarrollado no es en plan de criticar, es notificando a las personas que no saben de programacion que abstengan de utilizarlo porque pueden usar algo mejor en su fuente. porque ahora esta mal decir que un codigo (sistema) publico esta bug esta mal?


     
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  24. Gracias
    DeadOfLove got a reaction from DaksaM in shining system by sany (añadido funcion para estolas)   
    En vista que la mayoria de la comunidad no sabe instalar correctamente efectos y algunos utilizan codigo del 2015, les comparto un sistema desarrollo sany hace un par de años bastante bueno, para añadir efectos de manera simple en un block de notas, añadiendo la funcion de carga de efectos para estolas, asi puede añadir estolas con movimiento sin ninguno problema.

    una vez instalen el sistema que se encuentra subido en el post deben seguir los siguientes pasos:

    abren su archivo de InstanceBase.cpp
     
    // buscan void CInstanceBase::SetAcce(DWORD dwAcce) o en caso que no usen version de marty se llamaria SetSash algo asi creo recordar void CInstanceBase::SetSash(DWORD dwSash) ahora dentro de void CInstanceBase::SetAcce(DWORD dwAcce) buscar ClearAcceEffect(); añadir #ifdef ENABLE_SHINING_SYSTEM __ClearAcceShiningEffect(); #endif al final de void CInstanceBase::SetAcce(DWORD dwAcce) añadir #ifdef ENABLE_SHINING_SYSTEM if (CItemManager::Instance().GetItemDataPointer(dwAcce, &pItemData)) { __GetShiningEffect(pItemData); return; } #endif buscar __ClearWeaponShiningEffect(false); __ClearArmorShiningEffect(false); añadir __ClearAcceShiningEffect(false); deberia quedar de esta forma #ifdef ENABLE_SHINING_SYSTEM __ClearWeaponShiningEffect(false); __ClearArmorShiningEffect(false); __ClearAcceShiningEffect(false); #endif buscar: void CInstanceBase::__GetShiningEffect(CItemData* pItem) dentro añadir despues de #if defined(ENABLE_COSTUME_SYSTEM) if ((pItem->GetType() == CItemData::ITEM_TYPE_ARMOR && pItem->GetSubType() == CItemData::ARMOR_BODY) || (pItem->GetType() == CItemData::ITEM_TYPE_COSTUME && pItem->GetSubType() == CItemData::COSTUME_BODY)) #else if (pItem->GetType() == CItemData::ITEM_TYPE_ARMOR && pItem->GetSubType() == CItemData::ARMOR_BODY) #endif { __ClearArmorShiningEffect(); if (shiningTable.Any() && removeRefineEffect) { __ClearArmorRefineEffect(); } for (int i = 0; i < CItemData::ITEM_SHINING_MAX_COUNT; i++) { if (strcmp(shiningTable.szShinings[i], "")) { __AttachArmorShiningEffect(i, shiningTable.szShinings[i]); } } } #ifdef ENABLE_ACCE_SYSTEM if (pItem->GetType() == CItemData::ITEM_TYPE_COSTUME && pItem->GetSubType() == CItemData::COSTUME_ACCE) { __ClearAcceShiningEffect(); if (shiningTable.Any() && removeRefineEffect) { ClearAcceEffect(); } for (int i = 0; i < CItemData::ITEM_SHINING_MAX_COUNT; i++) { if (strcmp(shiningTable.szShinings[i], "")) { __AttachAcceShiningEffect(i, shiningTable.szShinings[i]); } } } #endif (nota: deben modificarlo de acuerdo a la version de estolas que utilicen) buscar: void CInstanceBase::__ClearArmorShiningEffect(bool detaching) { } añadir: #ifdef ENABLE_ACCE_SYSTEM void CInstanceBase::__AttachAcceShiningEffect(int effectIndex, const char* effectFileName, const char* boneName) { if (IsAffect(AFFECT_INVISIBILITY)) { return; } if (effectIndex >= CItemData::ITEM_SHINING_MAX_COUNT) { return; } if (!strcmp(boneName, "")) { Tracef("Empty bone name for attaching Aura shining. Effect Index: %i, EffectFileName: %s", effectIndex, effectFileName); return; } CEffectManager::Instance().RegisterEffect(effectFileName, false, false); m_acceShiningEffects[effectIndex] = m_GraphicThingInstance.AttachEffectByName(0, boneName, effectFileName); } void CInstanceBase::__ClearAcceShiningEffect(bool detaching) { if (detaching) { for (int i = 0; i < CItemData::ITEM_SHINING_MAX_COUNT; i++) { __DetachEffect(m_acceShiningEffects[i]); } } #ifdef __cplusplus < 199711L memset(&m_acceShiningEffects, 0, sizeof(m_acceShiningEffects)); #else m_acceShiningEffects = {}; #endif } #endif ahora abran su archivo de InstanceBase.h
     
    buscar: void __GetShiningEffect(CItemData* pItem); void __ClearWeaponShiningEffect(bool detaching = true); void __ClearArmorShiningEffect(bool detaching = true); añadir void __ClearAcceShiningEffect(bool detaching = true); buscar: void __AttachArmorShiningEffect(int effectIndex, const char* effectFileName, const char* boneName = "Bip01"); añadir: void __AttachAcceShiningEffect(int effectIndex, const char* effectFileName, const char* boneName = "Bip01"); deberia quedar asi #ifdef ENABLE_SHINING_SYSTEM void __GetShiningEffect(CItemData* pItem); void __ClearWeaponShiningEffect(bool detaching = true); void __ClearArmorShiningEffect(bool detaching = true); void __ClearAcceShiningEffect(bool detaching = true); void __AttachWeaponShiningEffect(int effectIndex, const char* effectFileName, const char* boneName = "Bip01"); void __AttachArmorShiningEffect(int effectIndex, const char* effectFileName, const char* boneName = "Bip01"); void __AttachAcceShiningEffect(int effectIndex, const char* effectFileName, const char* boneName = "Bip01"); #endif buscar: DWORD m_armorShiningEffects[CItemData::ITEM_SHINING_MAX_COUNT]; añadir: DWORD m_acceShiningEffects[CItemData::ITEM_SHINING_MAX_COUNT]; deberia quedar asi: #ifdef ENABLE_SHINING_SYSTEM DWORD m_weaponShiningEffects[2][CItemData::ITEM_SHINING_MAX_COUNT]; DWORD m_armorShiningEffects[CItemData::ITEM_SHINING_MAX_COUNT]; DWORD m_acceShiningEffects[CItemData::ITEM_SHINING_MAX_COUNT]; #endif
    espero que sea de utilidad, saludos a toda la comunidad.

    post data: a todos los miembros, cuando se hace un comentarios indicando que algo no es necesario, o esta mal desarrollado no es en plan de criticar, es notificando a las personas que no saben de programacion que abstengan de utilizarlo porque pueden usar algo mejor en su fuente. porque ahora esta mal decir que un codigo (sistema) publico esta bug esta mal?


     
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  25. Me Gusta
    DeadOfLove reacted to ChuchoGamer in Set de Accesorios Zelda of Ocarina   
    Muy buenas Aqui les comparto estos Accesorios que Cree Espero que les gusten para traerles mas contenido
    Link de la foto del set de accesorios

    Debes iniciar sesión para ver el contenido del enlace en esta publicación. Link de Descarga

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.  
    Contraseña del rar: bychuchogamer
     
×
×
  • Crear nuevo...