Jump to content

wille damare

Miembro
  • Contador contenido

    16
  • Ingreso

  • Última visita

Actividad de reputación

  1. Gracias
    wille damare reacted to lalonsovc in Problemas frecuentes [Mysql]   
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  2. Me Gusta
    wille damare reacted to elixd in [Guía] Como reinstalar mysql sin problemas.   
    Bueno esta guia la traigo de Uj pero es de mi autoría , no copiada de ningún foro ni nada por el estilo, me comí a pulso la desinstalación de mysql hace algún que otro año buscando la forma de no tener que reinstalar freebsd por culpa de mysql..los comandos y demás son sacados de Debes iniciar sesión para ver el contenido del enlace en esta publicación., aunque allí no me ayudaron mucho cuando me tocó hacer esto.. empezamos con el tutorial..
     
    Si queremos saber que versión de mysql tenemos instalada utilizamos los siguientes comandos :
     

    cd /usr/ports/databases/ Y luego:
     

    pkg_info | grep -i mysql Nos saldrá algo como esto :
     
    mysql-client-5.0.87 Multithreaded SQL database (client)
    mysql-server-5.0.87 Multithreaded SQL database (server)
     
    En este caso nos dice que tenemos instalada la versión mysql50
     
    Empezamos con la desinstalación ejecutamos los siguientes comandos:
     

    cd / usr/ports/databases/mysql50-server Siguiente comando:
     

    make clean Y por ultimo:
     

    make deinstall Con esto se abrá desinstalado , ahora ai que borrar el cliente para que nos deje instalar la nueva versión de mysql sin problemas , ejecutamos el siguiente comando :
     
     

    pkg_delete -f mysql-client-5.0.87 && cd /usr/ports/databases/mysql51-server && make clean install clean && pkgdb -F Ahora instalamos los caracteres para que nos deje trabajar con el que nos interesa ( big5 ) ejecutamos los siguientes comandos:
     
     

    cd /usr/ports/databases/mysql51-server/ Siguiente comando:
     

    make WITH_XCHARSET=all Finalmente:
     

    Reboot Con esto ya tendremos la nueva versión de mysql instalada , reboteamos y listo al entrar ya pueden configurar la nueva versión de mysql que eso ya es otra historia.
     
    Nota: Este tutorial es para reinstalar mysql , a veces quieres reinstalar y no te deja por culpa del (cliente) <-- no el del juego si no el de mysql no confundir.
     
    Saludos.
  3. Gracias
    wille damare reacted to Mustang Forsaken in Mustang SF 2020 | Most clean   
    Discord: Mustang#1649
     
    Serverfiles available for free without source, you can test them before contact me for buy
     

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  4. Gracias
    wille damare reacted to Destiny in Mustang SF 2020 | Most clean   
    Discord : Mustang#1649
    Client test available with 15 account saved : Debes iniciar sesión para ver el contenido del enlace en esta publicación.
     
  5. Gracias
    wille damare reacted to Mustang Forsaken in Mustang SF 2020 | Most clean   
    Discord : Mustang#1649
    Client test available with 15 account saved : Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  6. Gracias
    wille damare reacted to Mustang Forsaken in Mustang SF 2020 | Most clean   
    Informations

    Debes iniciar sesión para ver el contenido del enlace en esta publicación. - Discord : Mustang#1649 - Boost 1.7.2 - Cryptopp 8.2.0 - MariaDB 10.3 - FreeBSD 12.1 RELEASE (32 BIT & 64 BIT) - LLVM-DEVEL-11.0 (CLANG 11) - Mob proto & Item Pro from official v20.1.3 - race.msm from officiel v20.1.3 - Save account system - Official create/select character - Syserr clean - Only official Metin2 system - No one custom system added - No one syserr was hide with // - Sell with VDI full source+start - No coredown, all fix applied - Visual Studio 2019 - Granny 2.9 Service.h
    #ifndef __INC_SERVICE_H__ #define __INC_SERVICE_H__ /**************************************** * title_name : System Info Client * filename : ../../common/service.h * author : Mustang * version : Version 1.2 * date : 25 03 2020 * update : 01 05 2020 ****************************************/ /*** YMIR System ***/ #define ENABLE_PET_SYSTEM // Système de pet de Ymir #define ENABLE_UDP_BLOCK // Block UDP port #define ENABLE_TRADABLE_ICON // Effet d'icon lors des échanges #define ENABLE_HIGHLIGHT_SYSTEM // Effet slot nouveau item #define ENABLE_CHEQUE_SYSTEM // Système de Won #define ENABLE_GAYA_SYSTEM // Système de Gaya #define ENABLE_SASH_SYSTEM // Système d'étole #define ENABLE_PENDANT_SYSTEM // Système de talisman du FR #define ENABLE_NEW_BONUS // Les nouveaux bonus du FR #define ENABLE_ELEMENT_TARGET // Affiche l'élement du monstre #define ENABLE_MAGIC_REDUCTION_SYSTEM // Pierre réduction magique du FR #define ENABLE_QUIVER_SYSTEM // Système de carquois #define ENABLE_SOULBIND_SYSTEM // Système de liaison d'âme #define ENABLE_TRANSMUTATION_SYSTEM // Système de transmutation #define ENABLE_SHOW_MOB_INFO // Niveau et aggresivité des monstres #define ENABLE_DICE_SYSTEM // Système de drop aléatoire #define ENABLE_COSTUME_WEAPON_SYSTEM // Système de costume d'arme #define ENABLE_MOUNT_COSTUME_SYSTEM // Système de costume monture #define ENABLE_NEW_EMOTION // Système de new emotion #define ENABLE_MESSENGER_BLOCK // Système de block message #define ENABLE_VIEW_EQUIPMENT_SYSTEM // Système de visualisation du profil #define ENABLE_OX_RENEWAL // Mise à jours de l'OX de l'officiel #define ENABLE_AGGREGATE_MONSTER_EFFECT // Système d'effet des capes #define ENABLE_CHANGE_CHANNEL_SYSTEM // Système de changement de channel #define ENABLE_MAILBOX_SYSTEM // Système de boîte aux lettres #define ENABLE_AURA_SYSTEM // Système d'aura de l'officiel #define ENABLE_COSTUME_ENCHANT_SYSTEM // Changement de switch bonus costume #define ENABLE_ATTR_TRANSFER_SYSTEM // Système de transfert bonus costume #define ENABLE_SOUL_EVENT_SYSTEM // Soul event system #define ENABLE_GROWTH_PET_SYSTEM // Système de familier /*** YMIR System ***/ /*** Official Update System ***/ #define ENABLE_PARTY_UPDATE // Mise à jour de l'officiel #define ENABLE_MOUNT_TRANSMUTATION_SYSTEM // Système de transmutation monture #define ENABLE_CUBE_RENEWAL // Les bonus sont sauvés lors d'un craft #define ENABLE_CUBE_STONE_RENEWAL // Les pierres sont sauvés lors d'un craft #define ENABLE_YMIR_AFFECT_FIX // Accumulation de bonus d'effet à la connexion #define ENABLE_PAERYONG_CENTER // Rugissement du dragon à distance #define ENABLE_KNOCBACK_SYSTEM // KNOCKBACK Patch Skill 17.5 #define ENABLE_NEW_GYEONGGONG_SKILL // Pas de plume explosif de l'officiel #define ENABLE_GACHA_SYSTEM // ITEM_GACHA #define ENABLE_QUEST_RENEWAL // Quest renewal with categories #define ENABLE_GRADE_MYTH // Dragon soul mythical grade #define ENABLE_EXTENDED_SOCKET // Extend item sockets /*** Official Update System ***/ /*** Enable Hack System ***/ #define ENABLE_CHECK_GHOSTMODE_HACK // Respawn si le joueurs est en ghost mode /*** Enable Hack System ***/ /*** Enable System ***/ #define ENABLE_PORT_SECURITY // Port p2p fix #define ENABLE_IMPROVED_PACKET_ENCRYPTION // Encryption des packets #define ENABLE_EXTENDED_INVENTORY // Pages d'inventaire supplémentaire //#define ENABLE_IGNORE_LOW_POWER_BUFF // Ignore low power buff /*** Enable System ***/ #endif Locale_inc.h
    /**************************************** * title_name : System Info Client * filename : ../../UserInterface/Locale_inc.h * author : Mustang * version : Version 1.2 * date : 25 03 2020 * update : 08 06 2020 ****************************************/ /*** YMIR Services System ***/ #define LOCALE_SERVICE_EUROPE /*** YMIR Services System ***/ /*** YMIR System ***/ #define ENABLE_COSTUME_SYSTEM // Système de costume #define ENABLE_ENERGY_SYSTEM // Système d'energie #define ENABLE_DRAGON_SOUL_SYSTEM // Système d'alchimie du dragon #define ENABLE_NEW_EQUIPMENT_SYSTEM // Système de ceinture #define ENABLE_TRADABLE_ICON // Système d'effet d'échanges #define ENABLE_HIGHLIGHT_SYSTEM // Système "nouveau item" #define ENABLE_CHEQUE_SYSTEM // Système de Won #define ENABLE_GAYA_SYSTEM // Système de Gaya #define ENABLE_SASH_SYSTEM // Système de sash #define ENABLE_MOUNT_COSTUME_SYSTEM // Système de monture #define ENABLE_PENDANT_SYSTEM // Système de talisman #define ENABLE_NEW_BONUS // Système de talisman et nouveau bonus #define ENABLE_ELEMENT_TARGET // Système de target d'élement #define ENABLE_MAGIC_REDUCTION_SYSTEM // Système de réduction magie #define ENABLE_COSTUME_WEAPON_SYSTEM // Système de costume d'arme #define ENABLE_QUIVER_SYSTEM // Système de carquois #define ENABLE_SOULBIND_SYSTEM // Système de liason d'âme #define ENABLE_TRANSMUTATION_SYSTEM // Système de transmutation #define ENABLE_BONUS_BOARD // Système de tableau de bonus #define ENABLE_NEW_MINIMAP // Renew de la minimap #define ENABLE_TAB_NEXT_TARGET // Système de switch de cible #define ENABLE_SHOW_MOB_INFO // Système d'info niveau/aggressivité #define ENABLE_TASKBAR_GROUPING // Fenêtre barre de tache séparé comme l'officiel #define ENABLE_DICE_SYSTEM // Système de drop aléatoire #define ENABLE_NEW_EMOTION // Système de new emotion #define ENABLE_MESSENGER_BLOCK // Système de block joueur #define ENABLE_VIEW_EQUIPMENT_SYSTEM // Système de visualisation des équipements #define ENABLE_AGGREGATE_MONSTER_EFFECT // Système d'effet des capes #define ENABLE_CHANNEL_CHANGE_SYSTEM // Système de changement de channel #define ENABLE_MAILBOX_SYSTEM // Système de boite aux lettres #define ENABLE_AURA_SYSTEM // Système d'aura #define ENABLE_ENCHANT_COSTUME_SYSTEM // Système switch bonus costume #define ENABLE_ATTR_TRANSFER_SYSTEM // Système de transfert bonus costume #define ENABLE_SOUL_SYSTEM // Soul system #define ENABLE_GROWTH_PET_SYSTEM // Growth pet system /*** YMIR System ***/ /*** Official Update ***/ #define ENABLE_PARTY_UPDATE // Système de groupe map officiel #define ENABLE_MOUNT_TRANSMUTATION_SYSTEM // Système de transmutation pour monture #define ENABLE_OX_RENEWAL // Message OX de l'officiel #define ENABLE_NEW_GYEONGGONG_SKILL // Pas de plume explosif de l'officiel #define ENABLE_NINJA_INVISIBILITY_RENEW // Système d'invisibilité au complet #define ENABLE_GACHA_SYSTEM // ITEM_GACHA #define ENABLE_QUEST_RENEWAL // Quest page renewal #define ENABLE_DS_GRADE_MYTH // Dragon soul mythical grade #define ENABLE_MOB_SCALE // ENABLE_MOB_SCALE like official #define ENABLE_EXTENDED_SOCKET // Extended item sockets /*** Official Update ***/ /*** Enable System by Mustang ***/ #define ENABLE_EXTENDED_INVENTORY // 4 Pages d'inventaire #define ENABLE_NEW_REFRESH_MONEY // Nouvelle actualisation des yangs #define ENABLE_PERFORMANCE_BOOST // Boost des performance du client /*** Enable System by Mustang ***/  
    Update 05/07/2020
    - Compatibility with 32/64 bits FREEBSD
    - All errors encountered resolved 
    Client test available with 15 account saved : Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  7. Gracias
    wille damare reacted to metinplay2 in Files Metin2 Rage   
    sua lib está com problema
     
  8. Gracias
    wille damare reacted to XhebasT1an in VDI SERVER FILES HOVSA   
    Files HOVSA los cuales vi que muchos no pudieron entrar por algún motivo, acá dejo la VDI, el servidor prende y se puede entrar a la cuenta. Cambiar la ip de la VDI  a la que te sirva
     
    Los files que montaron se deben configurar varias líneas del source del binario y del cliente lo cual no se realizo. El archivo Binario y Source es el mismo que estaba en el post anterior
    Info del VDI
    Verificando el VDI se debe realizar el siguiente procedimiento para que no saque error de mysql
    * Vamos a la  ruta var/db/mysql y borramos los siguientes archivos
    auto.cnf
    ib_logfile0
    ib_logfile1
    ibdata1
    Xbastian.org.err
    Xbastian.org.pid
    * En la maquina virtual colocamos el comando
    service mysql-server restart
     
    * reboot
     
    y listo ya nos vamos a la ruta 
    /m2_svfiles/main
    y colocamos comando en la maquina virtual
    sh admin_panel.sh
    1 para prender
    3 para limpiar
     
    Screen dentro del juego
     
     

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.   con mysql 5.6 por si la necesitan para otro server. Descargar VDI GCC8 11.3 MYSQL 5.7
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.  
    Se actualiza con una nueva VDI con mysql 5.7 y se arregla el error que sacaba al intentar compilar las quest que era un error de libreria

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  9. Gracias
    wille damare reacted to 【ℛ-𝓝】ℛ𝔂𝓼𝒆 in [SERVERFILES] Zentaris Español   
    DESCARGA: Debes iniciar sesión para ver el contenido del enlace en esta publicación.
     
    CLAVE DE CIFRADO: 
    iYp14lRaZFEWysJ0zrdiXlgPv2aMMgK3QS-8ZXaUqTY  
     
    Creditos: Ezequiel Gauna - Ryse
  10. Me Gusta
    wille damare reacted to [D]ELARO ✓ in [SERVERFILES] 40k limpios fix + SRC & binario *15 idiomas*   
    se ven decente y creo que estos files los estan usando en un servidor internacional que dice usar la base de .us xd, lo malo es que deberán trabajarlos para dejarlos mas decentes ya que están muy muy pero muy limpios, meter sistemas que hoy por hoy se necesitan, offline shop, inventario especial y alguno mas.
  11. Me Gusta
    wille damare reacted to 【ℛ-𝓝】ℛ𝔂𝓼𝒆 in [SERVERFILES] 40k limpios fix + SRC & binario *15 idiomas*   
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.  
    Prueba con esa lib...
  12. Me Gusta
    wille damare reacted to ChuchoGamer in [SERVERFILES] 40k limpios fix + SRC & binario *15 idiomas*   
    Me los vendio el Server Zoira2  el dueño Voy a publicar los files por si la gente le interesa bajarlos y arreglarlos tiene muchos errores :V yo le resolvi la mayoria de errores menos el ox evento no da premio de entrada y no descalifica y en el source tiene un error que no sale los item de bonus de agregar item y cambiar  
     
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  13. Me Gusta
    wille damare reacted to Infiltred in [SV]BestProduction V5 2019   
    Error encontrado si creas una nueva cuenta, y entras con esa cuenta se queda ahí todo el rato.

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  14. Me Gusta
    wille damare reacted to Desmint in [SV]BestProduction V5 2019   
    Hola amigos de Metin2Zone
     
    Hoy les traigo unos files (que no es nada raro) de EDWARD BestProduction, esta vez en su version V5 del mes de Febrero, y como ya saben, si tienen la marca de EDWARD son de calidad, uno que otro error pero nada que no tenga solucion. Como bonus adicional, nos deja una guia (espero poderla seguir y subir el FreeBSD) de como crear un freebsd v12.0 para estos files, que en cuanto pueda instalarlo bien y adecuadamente se los estare pasando.
    En cuanto a esta version, viene mas recargada, con nuevos sistemas, nuevos mapas, nuevas dungeons y mas chula. Sin mas que decir les dejo estos lindos Files.
     
    Cito:
    "Hola amigos he esperado mucho tiempo la versión v4 La versión V5 es una versión fija de los problemas solucionados. Puedo decir muchas razones para no compartir, pero prometí no compartir ninguna necesidad. Sé que llevas mucho tiempo esperando. Ignoré los problemas incluidos en el sistema para interrumpir el equilibrio del juego que me gusta. He eliminado los sistemas que necesitan juegos innecesarios. Lycan -Lyceless 1-105 1-120 formatos diferentes se dividen. Durante este tiempo algunos de los vacíos son inútiles. Virtual 30-40 realde niños de 10-15 años en el grupo de niños mismos. Han pronunciado discursos como si estuvieran obligados. Trabajamos con salario adicional a estos elementos 🙂 No hables como tu cabeza sopla, a nadie le gustará tu corazón Hará lo que quieras si viene de dentro, ayuda a compartirlo. No puedes decidir un poco sobre tu mente. No tuve que agregar la presentación completa de los archivos v4 en el apósito y se realizó la eliminación. Aquellos que quieran información detallada pueden ver v4. Se entiende mejor si escribí y escribí las correcciones. He explicado las ediciones y configuración necesarias en los archivos v4. Puedes hacer esto mirando el tema."
     
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
     
     
    '' BUG - FIX DISPLAYS '' Versión GCC actualizada Lista de sistema fuente revisada sistemas innecesarios eliminados. El personaje Lycan fue eliminado por completo de los packs y source. La estructura del juego fue dibujada de 1-120 a 1-105. El 99% de nuestros amigos en V4 y @traglon11 han resuelto sus problemas. Algunos mapas teletransportan al problema de cierre del cliente solucionado. Se han reconfigurado los mapas y MAPA PERMITIR. Algunas misiones han sido arregladas. Solucionado el problema abierto en reemplazos de transferencia de bono de atuendos. El tiempo de apertura mejoró al comenzar el juego. Se agregaron algunas funciones de código faltantes en la ventana comercial. Uitooltip.py ha sido revisado. Se han eliminado algunos códigos redundantes en los paquetes. Las opciones de juego y sistema han sido reconfiguradas. Habilidad revisada Proto / C ++ Python Se arreglaron algunos problemas en el sistema de chamanes. Los problemas con el sistema de eventos se han solucionado. Estoy pensando en lo que recuerdo ahora ..."
     
    Nuevos Sistemas
     
    '' INTRODUCCIÓN DE NUEVOS SISTEMAS AÑADIDOS ''
    1- Sistema de báscula móvil [Puedes ampliar la ranura que quieras]
    2- sistema Ronark
    3- Sistema de avistamiento zodiacal.
    4- sistema de control de bot
    5- Sistema de la torre del diablo revuelto
    6- Sistema de bloqueo de cuenta.
    6- Sistema informático seguro / Entrada del cliente y en el juego.
    6- Sistema automático de eventos oficiales.
    7- Sistema de rompecabezas de pescado.
    7- Sistema Boss Hunter
    8- Personaje dentro del juego de la bandera lateral que muestra el chat global / Empire Flag
    9- Sistema de deslumbramiento del traje [Karaca425]
    10- Sistema de efecto de tapón de pistola.
    11- Sistema de efecto Boss.
    12- Caña de pescar y sistema de efectos de excavación [+]
    13- + sistema de anuncio push
    14- Sistema oficial de demostración de bonus.
    15- Sistema de carreras de caballos.
    16- Sistema de modo prisión.
    17- 9 Sistema de zodiaco plegado [de linterna]
    18- 5 nuevos mapas [mapa]
    19- Nuevo sistema mejorado y opciones de juego.
    20- Gui oficial del gremio.
    21- 2 nuevo barco de pesca.
    22- Nuevas emociones y estilos de baile.
    23- Sistema de torneos WS
     
    IMAGENES DE MUESTRA
    Aumento de escala de Jefes

    Debes iniciar sesión para ver el contenido del enlace en esta publicación. 5 Nuevos mapas

    Debes iniciar sesión para ver el contenido del enlace en esta publicación. Debes iniciar sesión para ver el contenido del enlace en esta publicación. Debes iniciar sesión para ver el contenido del enlace en esta publicación.  
    Cambios Tipo Oficial(Normal - Cambio+)

    Debes iniciar sesión para ver el contenido del enlace en esta publicación. Sistema de Chat Mejorado

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

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.  
    Sistema de Control de Switch

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

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
    Debes iniciar sesión para ver el contenido del enlace en esta publicación. Sistema de Efecto de Jefes
     
    Debes iniciar sesión para ver el contenido del enlace en esta publicación. Nuevas Emociones

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.  
    Sistema de Eventos Automaticos

    Debes iniciar sesión para ver el contenido del enlace en esta publicación. Debes iniciar sesión para ver el contenido del enlace en esta publicación.
    Debes iniciar sesión para ver el contenido del enlace en esta publicación. Sistema de Gremios Tipo Oficial

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

    Debes iniciar sesión para ver el contenido del enlace en esta publicación. Sistema Nuevo de Seguridad

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
    Debes iniciar sesión para ver el contenido del enlace en esta publicación. Mapa Laberinto

    Debes iniciar sesión para ver el contenido del enlace en esta publicación. Nuevas Opciones

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.  
    Brillos de Caña y Pico

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
    Debes iniciar sesión para ver el contenido del enlace en esta publicación. Sistema de Opciones Rediseñado

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

    Debes iniciar sesión para ver el contenido del enlace en esta publicación. Sistema de Bonus Tipo Oficial

    Debes iniciar sesión para ver el contenido del enlace en esta publicación. Sistema de Mejora Mejorado :u

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

    Debes iniciar sesión para ver el contenido del enlace en esta publicación. Debes iniciar sesión para ver el contenido del enlace en esta publicación. Sistema de Torre demonios Mejorado

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

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.    
    Poco a poco pondre cada sistema, pues se cayo la pagina y las imagenes desaparecieron
     
    Agradecimientos: turkmmo
  15. Gracias
    wille damare reacted to DiosMen in [VIDEOTUTORIAL]Como ser GM en tu servidor   
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  16. Me Gusta
    wille damare reacted to Rafa23Alzira in Reparar error ./db not found, ./start not found etc   
    Como ha algunos nos ha pasado alguna vez y no he visto ninguna guía creo una con la solución.
    Antes que nada decir que la solución me la dio SeMa, créditos a él.
     
    Imagen del Error, sera algo así:

     
    Este error ocurre cuando intentamos iniciar el servidor y no encuentra las rutas, esto es debido normalmente a que los files que hemos instalado vienen de hamachi, los cuales usan rutas diferentes, la solución es la siguiente:
     
    Nos vamos a auth, en el archivo db le damos click derecho y editar enlace, nos saldrá algo así:

    /usr/home/game/share/game Debe quedar así:
    /home/game/share/game Nos vamos a la carpeta channel1
    y buscamos el archivo game click derecho, editar enlace y saldrá esto:

    /usr/home/game/share/game Debe quedar así:

    /home/game/share/game Nota: Esto debemos hacerlo en todos los channels.
     
    Es bastante fácil de solucionar, espero haberles ayudado
  17. Gracias
    wille damare reacted to akyleez in Cliente traducido 100% esp para files lauling   
    Hola como están, pues este es mi primera publicación en mi vida y es para agradecer a toda la gente que es tan amable de compartir su conocimiento, que me ayudo mucho a traducir el cliente, la verdad no recuerdo a quien le debo créditos por esta traducción pero se los doy a metin2zone de donde e sacado la mayoría.
     
    este cliente esta traducido 100% al español o al menos eso creo, si falta algo por favor comenten para arreglarlo. no e visto que muchos usen estos files files pero espero que les sirvan, lo que mas me costo trabajo traducir fue el item_proto ya que no se como traducirlo rápido, use algunas técnicas del bloc de notas que compartiré en otra ocasión ya que veo que no hay guías de como traducir la item_proto del cliente, si la hay porfa díganmela.
     
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.  <------Link
     
    Son buenos files pero tienen algunos bug como la lectura de libros y acabo de descubrir que la item_proto es todo un royo jeje pero tiene solución  el bug de la lectura es la que no se como arreglar si alguien me ayuda se lo agradezco.
     
    no pongo imagenes por que no se como XD disculpen.
     
  18. Me Gusta
    wille damare reacted to TTV_RANDARON in [SERVERFILES]Lucas2TR 2019-2020   
    En que idioma estan traducidos ?
  19. Me Gusta
    wille damare reacted to Desmint in [SERVERFILES]Lucas2TR 2019-2020   
    Hola amigos de Metin2Zone.
     
    EL dia de hoy les traigo unos files muy buenos que he estado probando y la verdad me parecen muy buenos, los files cuentan con todos los sistemas actuales del metin2 oficial. Así que sin más que decir, les dejo la descripción.
     
    Sistemas:
    - SwitchBoot InGame
    - Union al alma
    - Alquimia Totalmente Funcional
    - Atuendos actuales
    - Monturas Actuales
    - Pets (Pet de mejora + pet de ello)
    - Mapas del Oficial
    - Dungeons del oficial
    - Tienda Offline
    - Visualizaciones de tienda
    - Sistema de estolas
    -Transfiguracion
    - Cambio Rapido de Equipo
    - Moneda Gaya
    - Moneda Won
    - Sistema de Gremio (Oficial)
    - Cambio de Channel
    - Evento Okey
    - Eventos PvP
    - Sistema de Rangos
    - Cambio de Clima
    - Auto Guardar cuentas ingame
    - Proteccion de cuenta (al iniciar el pj se bloquea todo el teclado, no deja realizar la accion de la tecla hasta no ingresar la contraseña
    - 4 Inventarios
    - Sistema de Talismanes del Oficial
    Y Muchos mas sistemas que pueden ir descubriendo dia a dia
     
    -> Datos:
    Pass Mysql: asilzade 
    -> Cuenta Admin InGame
    ID: asilzade
    PASS: 12345
     
    Recomendaciones:
    Editar la opcion de guardado de cuentas en el cliente, pues se aloja en un archivo en la raiz del cliente. Si no se usa una proteccion adecuada para el archivo, en el momento que lo lleguen a subir a un Servidor para subirlo como suyo y sacar provecho (todos lo quieren hacer) los terceros querran este archivo para entrar y desocupar cuentas, por ello, recomiendo que le creen una extencion distinda al archivo y lo protejan, oh busquen la forma de que dicho archivo se aloje en un epk con proteccion anticompilacion...
     
    Imagenes

    Debes iniciar sesión para ver el contenido del enlace en esta publicación. Debes iniciar sesión para ver el contenido del enlace en esta publicación. Debes iniciar sesión para ver el contenido del enlace en esta publicación. Debes iniciar sesión para ver el contenido del enlace en esta publicación. Debes iniciar sesión para ver el contenido del enlace en esta publicación. Debes iniciar sesión para ver el contenido del enlace en esta publicación. Debes iniciar sesión para ver el contenido del enlace en esta publicación. Debes iniciar sesión para ver el contenido del enlace en esta publicación. Debes iniciar sesión para ver el contenido del enlace en esta publicación. Debes iniciar sesión para ver el contenido del enlace en esta publicación. Debes iniciar sesión para ver el contenido del enlace en esta publicación. Debes iniciar sesión para ver el contenido del enlace en esta publicación. Debes iniciar sesión para ver el contenido del enlace en esta publicación.
       
    Creditos:
    Metin2Web
     
    Descarga:
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  20. Gracias
    wille damare reacted to DevLilian in Server files de Metin2 Rage 2019 + Web Python [GRATIS] by DevLilian   
    El pack incluye:
    - Cliente
    - Source code cliente
    - Source code server
    - Server files (quests, mapas, cores, etc.)
    Son unos server bastante estables y equilibrados, probados con más de 500 usuarios online al mismo tiempo sin problemas de lag o caídas.
    Sin bugs.
    Actualmente el servidor se encuentra online y podéis probarlo en Debes iniciar sesión para ver el contenido del enlace en esta publicación.
    También le podéis echar un ojo a la presentación si queréis ver lo que incluyen: Presentación
    Descripción y sistemas:
    - Base estable, equilibrada y testeada con cientos de usuarios online.
    - Cabos y flechas infinitas
    - Instant equip
    - Special Storage
    - Diálogo destruir objetos
    - MP al hacer click en nombre
    - Target information
    - Shop offline + WON (versión única sin bugs)
    - Cambiar CH (versión única sin bugs)
    - Pet system
    - Inventory slot marking + exchange system
    - Rocios en affect bar
    - Revivir full hp
    - Block/unblock exp
    - Estolas
    - Biólogo profesional
    - Sistema de brillos
    - Party buff
    - Un jugador por IP en mapas indicados
    - Revive event para quests
    - Limite de yang 999.999.999.999
    - Dungeon info 
    - Transfiguración
    - Dar MDs a todos los player de un imperio en un mapa.
    - Dungeons únicas: (Aryas dungeon, Cueva Slime, Bosque Celestial...)
    - Dungeons normales: (Nemere, Arrador, Azrael, Torre...)
    - Eventos: (Budokan, guerra de reinos, defiende tu metin, sayon, guerra total, evento de caza, trueque sorpresa...)
    - Atuendos de armas y armaduras únicos
    - Y mucho más... revisa presentación o descarga el servidor.
     
    Server File: Debes iniciar sesión para ver el contenido del enlace en esta publicación. (Elimine base de datos y estan limpios)
    WEB programada en Python: Debes iniciar sesión para ver el contenido del enlace en esta publicación.
    Puedes revisar el funcionamiento de esta en www.metin2rage.com
     
    by DevLilian.
  21. Me Gusta
    wille damare reacted to 【ℛ-𝓝】ℛ𝔂𝓼𝒆 in [UPDATE] Gcc49 Offline   
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
     
    El archivo gcc-4.9-20130804.tar.bz2 lo ponemos dentro de la dirección /usr/ports/distfiles en nuestro FreeBSD

     
    Una vez hecho esto vamos a FreeBSD e ingresamos el siguiente comando
    cd /usr/ports/lang/gcc49/ && make install clean  
    Al ingresar este comando entre 30 segundos y 3 minutos, aparecerá una pantalla azul le damos en OK y la instalación se iniciará ...
    La instalación durará entre 2 y 3 horas, NO cierren el FreeBSD o Putty durante la instalación.
  22. Gracias
    wille damare reacted to 【ℛ-𝓝】ℛ𝔂𝓼𝒆 in 1-120/55-120 Archivos de Lycan Advanced Server | Regalo de despedida   
    Subido a MEGA: 
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  23. Gracias
    wille damare reacted to TTV_RANDARON in 1-120/55-120 Archivos de Lycan Advanced Server | Regalo de despedida   
    Freebsd 11.3 - mysql 5.6
    ID: root
    PW: 123123

    Debes iniciar sesión para ver el contenido del enlace en esta publicación. ID: root
    PW: turkmmo

    Debes iniciar sesión para ver el contenido del enlace en esta publicación. WEB SERVI FILES

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
    Debes iniciar sesión para ver el contenido del enlace en esta publicación. Implementado:
    ◆ UZAKTAN BECERİ SİSTEMİ ◆
    ◆ HIZLI MENÜ SİSTEMİ (F5) ◆
    ◆ LOGİN EKRANI ◆
    ◆ KARAKTER SEÇME EKRANI ◆
    ◆ KARAKTER SEÇME EKRANI ◆
    ◆ GÜVENLİ BİLGİSAYAR SİSTEMİ ◆
    ◆ HESAP KİLİT SİSTEMİ ◆
    ◆ İTEM KİLİT SİSTEMİ ◆
    ◆ SİSTEM SEÇENEKLERİ ◆
    ◆ GÖREV KATEGORİ SİSTEMİ ◆
    ◆ OYUN SEÇENEKLERİ ◆
    ◆ UZAKTAN MARKET SİSTEMİ ◆
    ◆ KARAKTER LOG SİSTEMİ ◆
    ◆ TİCARET GEÇMİŞİ SİSTEMİ ◆
    ◆ OTOMATİK AV SİSTEMİ ◆
    ◆ PATRON TAKİP SİSTEMİ ◆
    ◆ ZİNDAN TAKİP SİSTEMİ ◆
    ◆ OFFİCAL YENİ DUYGULAR ◆
    ◆ BİREYSEL/GRUP ZİNDAN SİSTEMİ ◆
    ◆ HIZLI STATÜ SİSTEMİ ◆
    ◆ LONCA SIRALAMA SİSTEMİ ◆
    ◆ ÇEVRİMDIŞI PAZAR SİSTEMİ ◆
    ◆ ÇEVRİMDIŞI PAZAR AÇILAN PAZARLAR LİSTESİ ◆
    ◆ ÇEVRİMDIŞI PAZAR KASA SİSTEMİ ◆
    ◆ ÇEVRİMDIŞI PAZAR TEKLİFLERİM LİSTESİ ◆
    ◆ ÇEVRİMDIŞI PAZAR TİCARET CAMI ◆
    ◆ ÇEVRİMDIŞI PAZAR GEÇMİŞ LİSTESİ ◆
    ◆ ÇEVRİMDIŞI PAZAR AÇIK ARTTIRMA SİSTEMİ ◆
    ◆ ÇEVRİMDIŞI PAZAR AÇIK ARTTIRMA LİSTESİ ◆
    ◆ EFSUN BOTU SİSTEMİ ◆
    ◆ EŞYA ÖNİZLEME SİSTEMİ (Render Target) ◆
    ◆ TÜY KANAT SİSTEMİ ◆
    ◆ KOSTÜM ENVANTERİ ◆
    ◆ HIZLI BİYOLOG SİSTEMİ ◆
    ◆ EKRAN GÖRÜNTÜSÜ SİSTEMİ ◆
    ◆ OFFİCAL LONCA PENCERESİ ◆
    ◆ AÇIK LİDERLER SİSTEMİ ◆
    ◆ LONCA GEÇMİŞİ SİSTEMİ ◆
    ◆ GELİŞMİŞ SAVAŞ İLANI SİSTEMİ ◆
    ◆ SAVAŞ İZNİ SİSTEMİ ◆
    ◆ OYUNCU ENGELLEME SİSTEMİ ◆
    ◆ GİYİLEBİLİR PELERİN SİSTEMİ ◆
    ◆ YANINDA GEZEN BİNEK SİSTEMİ ◆
    ◆ THANOS ELDİVENİ SİSTEMİ ◆
    ◆ K ENVANTERİ SİSTEMİ ◆
    ◆ OFFİCAL PET SİSTEMİ ◆
    ◆ SANDIK AYNASI SİSTEMİ ◆
    ◆ YÖNETİCİ TOPLU PM SİSTEMİ ◆
    ◆ RÜTBE (TİTLE) SİSTEMİ ◆
    ◆ KLAVYE AYARLARI SİSTEMİ ◆
    ◆ DROP ARAMA SİSTEMİ ◆
    ◆ HIZLI BK OKUMA SİSTEMİ ◆
    ◆ HIZLI RUH TAŞI OKUMA SİSTEMİ ◆
    ◆ SAHTE METİN SİSTEMİ ◆
    ◆ YARDIMCI ŞAMAN SİSTEMİ ◆
    ◆ KÖPEK MODU SİSTEMİ ◆
    ◆ EFEKT GİZLEME SİSTEMİ ◆
    ◆ KARAKTER ELEMENT SİSTEMİ ◆
    ◆ SİLAH EVRİM SİSTEMİ ◆
    ◆ CANAVARDAN DÜŞEN EŞYALAR SİSTEMİ ◆
    ◆ GÜNLÜK GÖREVLER SİSTEMİ ◆
    ◆ WON TÜCCARI ◆
    ◆ MOB ETKİ SİSTEMİ ◆
     
     
  24. Me Gusta
    wille damare reacted to PACI in [Guia] Crear diffs   
    Hola.
    Como sabéis, ahora que el source es publico, ya nadie, o casi nadie, hará, ni posteará, más diffs para editar vuestros cores.
    Este es uno de los motivos por los cuales hago escribo esta guia, el otro es para dar a la comunidad hispana un poco más de conocimiento, aunque no sea mucho.
     
    Que se necesita para hacer diffs?
    Hay quién diga que necesitas saber ASM (assembly), C, y esas cosas. Aunque, yo no sé ninguno de los 2, y creaba diffs.
    Lo que más necesitamos es un brain.exe, como se suele decir, paciencia, y el
    Debes iniciar sesión para ver el contenido del enlace en esta publicación. y un Debes iniciar sesión para ver el contenido del enlace en esta publicación..  
    Antes de ponernos a toquetear en el IDA, debemos, antes de nada, saber una cosa.
     
    Qué es un diff?
    Un diff (difference file) es un archivo que contiene, de una manera simplificada, una (o varias) linea(s) que altera(n) un (o más) bytes de un archivo.
    La sintaxis es: offset: byte antiguo byte nuevo.
    La creación de un diff no es propriamente un problema, ya que el IDA, dependiendo de lo que hayamos modificado, lo crea solo.
    Y a través de un diff no puedes saber lo que cambia.
     
    Después de saber que és un diff, y para que sirve, tenemos que saber qué es lo que queremos cambiar, y donde se localiza, yo, para eso, usaba el Pseudocode de un game core o db core para buscar lo que queria cambiar, obviamente para esto necesitamos el brain.exe, porque tenemos que entender la sintaxis del codigo que hay por ahí. Os dejaré en adjuntos, todos los pseudocodes de todos los game core y db core que tengo
     
    Vale, ahora qué hago?
    Yo, para empezar, cogeré el pseudocode del game r40250 y cambiaré... por ejemplo, el nível de diferencia que se necesita para invitar a alguién en un grupo.
     
    Como empezamos?
    Hay que saber un poquito de inglés, porque las variables no están escritas en español. Lo que sabemos es que grupo se puede decir party en inglés. Una vez sepamos eso, empezaremos buscando party en nuestro editor de texto (yo uso Notepad++ para esto, vosotros podéis usar algun otro), lo segundo es saber, cuando sucede la acción, o sea, cuando sale el mensajito ese en el chat diciendo que la diferencia de nível es X. Sabemos también que eso pasa cuando invitamos a alguién, invitar en inglés es invite. Entonces ya sabemos que tenemos que buscar algo como PartyInvite.
     
    Cuando encontremos algo de este tipo:
    extern char CHARACTER__PartyInvite_CHARACTER______FUNCTION__[12]; // weak Entonces lo que hacemos es buscar esa función. Ojo, apenas buscamos por CHARACTER__PartyInvite.
     
    Y por fin, encontraremos la función CHARACTER__PartyInvite:
    int __fastcall CHARACTER__PartyInvite(int a1, int a2, int a3, int a4){  int v4; // eax@4  int v5; // edx@4  int v6; // ecx@4  int v7; // ebx@6  int v8; // eax@6  int v9; // eax@7  int result; // eax@8  int v11; // eax@10  int v12; // eax@15  int v13; // eax@22  int v14; // eax@23  int v15; // edx@23  int v16; // ecx@23  int v17; // edi@23  int v18; // eax@23  int v19; // edx@25  int v20; // ecx@25  int v21; // [sp+0h] [bp-48h]@3  int v22; // [sp+0h] [bp-48h]@6  int v23; // [sp+20h] [bp-28h]@23  int v24; // [sp+24h] [bp-24h]@23  _BYTE v25[5]; // [sp+2Bh] [bp-1Dh]@29  int v26; // [sp+30h] [bp-18h]@23  int v27; // [sp+34h] [bp-14h]@22  int v28; // [sp+38h] [bp-10h]@1  v28 = *(_DWORD *)_stack_chk_guard__FBSD_1_0;  if ( *(_DWORD *)(a3 + 9328) && CParty__GetLeaderPID(a1, a2, *(_DWORD *)(a3 + 9328)) != *(_DWORD *)(a3 + 256) )  {   v21 = (int)&unk_848D8B8;LABEL_4:   v4 = locale_find(v21);   CHARACTER__ChatPacket(a3, 1, (const char *)v4);  }  else  {   if ( *(_BYTE *)(a4 + 9104) & 2 )   {   v8 = CHARACTER__GetName(a4);   v22 = (int)&unk_848D8E8;   v7 = v8;LABEL_7:   v9 = locale_find(v22);   CHARACTER__ChatPacket(a3, 1, (const char *)v9, v7);   }   else   {   v11 = CHARACTER__IsPartyJoinableCondition(a3, a4);   if ( (unsigned int)v11 <= 0xA )   {   switch ( v11 )   {   default:   goto LABEL_11;   case 10:   v21 = (int)&unk_848D868;   goto LABEL_4;   case 8:   v21 = (int)&unk_848D4C0;   goto LABEL_4;   case 7:   v12 = CHARACTER__GetName(a4);   v22 = (int)"<ÆÄƼ> ÀÌ¹Ì %s´ÔÀº ÆÄƼ¿¡ ¼ÓÇØ ÀÖ½À´Ï´Ù.";   v7 = v12;   goto LABEL_7;   case 6:   v21 = (int)&unk_848D480;   goto LABEL_4;   case 5:   v21 = (int)&unk_848D440;   goto LABEL_4;   case 4:   v21 = (int)&unk_848D404;   goto LABEL_4;   case 3:   v21 = (int)&unk_848D3D0;   goto LABEL_4;   case 2:   v21 = (int)&unk_848D39C;   goto LABEL_4;   case 1:   v21 = (int)&unk_848D368;   goto LABEL_4;   case 0:   v27 = *(_DWORD *)(a4 + 256);   v13 = std___Rb_tree_unsigned_int_std__pair_unsigned_int__const_boost__intrusive_ptr_event___std___Select1st_std__pair_unsigned_int__const_boost__intrusive_ptr_event____std__less_unsigned_int__std__allocator_std__pair_unsigned_int__const_boost__intrusive_ptr_event______find(   a3 + 9340,   (int)&v27);   v5 = a3 + 9344;   if ( a3 + 9344 == v13 )   {   v14 = AllocEventInfo_TPartyJoinEventInfo_();   *(_DWORD *)(v14 + 4) = *(_DWORD *)(a4 + 256);   *(_DWORD *)(v14 + 8) = *(_DWORD *)(a3 + 256);   event_create_ex(&v26, (int)party_invite_event, v14, 10 * passes_per_sec);   v17 = v26;   v18 = *(_DWORD *)(a4 + 256);   v24 = v26;   v23 = v18;   if ( v26 )   intrusive_ptr_add_ref(v16, v15, v26);   std___Rb_tree_unsigned_int_std__pair_unsigned_int__const_boost__intrusive_ptr_event___std___Select1st_std__pair_unsigned_int__const_boost__intrusive_ptr_event____std__less_unsigned_int__std__allocator_std__pair_unsigned_int__const_boost__intrusive_ptr_event_______M_insert_unique(   a3 + 9340,   (int)&v23);   if ( v24 )   intrusive_ptr_release(v20, v19, v24);   if ( v17 )   intrusive_ptr_release(v20, v19, v17);   v25[0] = 77;   *(_DWORD *)&v25[1] = *(_DWORD *)(a3 + 260);   DESC__Packet(*(_DWORD *)(a4 + 44), (int)v25, 5);   }   break;   }   }   else   {LABEL_11:   sys_err((int)"PartyInvite", 4558, "Do not process party join error(%d)", v11);   }   }  }  result = *(_DWORD *)_stack_chk_guard__FBSD_1_0 ^ v28;  if ( *(_DWORD *)_stack_chk_guard__FBSD_1_0 != v28 )   __stack_chk_fail(v6, v5);  return result;} Ahora a partir de aquí, hay que saber leer. Vayamos por partes:
    LABEL_4:   v4 = locale_find(v21);   CHARACTER__ChatPacket(a3, 1, (const char *)v4); LABEL_7:   v9 = locale_find(v22);   CHARACTER__ChatPacket(a3, 1, (const char *)v9, v7); LABEL_4 y LABEL_7 tienen un locale_find y un ChatPacket, lo que significa que buscará en el locale_string.txt un texto que estará dentro del locale_find y luego lo mostrará en el Chat.
     
    Pasemos directamente al switch:
      v11 = CHARACTER__IsPartyJoinableCondition(a3, a4);   if ( (unsigned int)v11 <= 0xA )   {   switch ( v11 )   {   default:   goto LABEL_11;   case 10:   v21 = (int)&unk_848D868;   goto LABEL_4;   case 8:   v21 = (int)&unk_848D4C0;   goto LABEL_4;   case 7:   v12 = CHARACTER__GetName(a4);   v22 = (int)"<ÆÄƼ> ÀÌ¹Ì %s´ÔÀº ÆÄƼ¿¡ ¼ÓÇØ ÀÖ½À´Ï´Ù.";   v7 = v12;   goto LABEL_7;   case 6:   v21 = (int)&unk_848D480;   goto LABEL_4;   case 5:   v21 = (int)&unk_848D440;   goto LABEL_4;   case 4:   v21 = (int)&unk_848D404;   goto LABEL_4;   case 3:   v21 = (int)&unk_848D3D0;   goto LABEL_4;   case 2:   v21 = (int)&unk_848D39C;   goto LABEL_4;   case 1:   v21 = (int)&unk_848D368;   goto LABEL_4;   case 0:   v27 = *(_DWORD *)(a4 + 256);   v13 = std___Rb_tree_unsigned_int_std__pair_unsigned_int__const_boost__intrusive_ptr_event___std___Select1st_std__pair_unsigned_int__const_boost__intrusive_ptr_event____std__less_unsigned_int__std__allocator_std__pair_unsigned_int__const_boost__intrusive_ptr_event______find(   a3 + 9340,   (int)&v27);   v5 = a3 + 9344;   if ( a3 + 9344 == v13 )   {   v14 = AllocEventInfo_TPartyJoinEventInfo_();   *(_DWORD *)(v14 + 4) = *(_DWORD *)(a4 + 256);   *(_DWORD *)(v14 + 8) = *(_DWORD *)(a3 + 256);   event_create_ex(&v26, (int)party_invite_event, v14, 10 * passes_per_sec);   v17 = v26;   v18 = *(_DWORD *)(a4 + 256);   v24 = v26;   v23 = v18;   if ( v26 )   intrusive_ptr_add_ref(v16, v15, v26);   std___Rb_tree_unsigned_int_std__pair_unsigned_int__const_boost__intrusive_ptr_event___std___Select1st_std__pair_unsigned_int__const_boost__intrusive_ptr_event____std__less_unsigned_int__std__allocator_std__pair_unsigned_int__const_boost__intrusive_ptr_event_______M_insert_unique(   a3 + 9340,   (int)&v23);   if ( v24 )   intrusive_ptr_release(v20, v19, v24);   if ( v17 )   intrusive_ptr_release(v20, v19, v17);   v25[0] = 77;   *(_DWORD *)&v25[1] = *(_DWORD *)(a3 + 260);   DESC__Packet(*(_DWORD *)(a4 + 44), (int)v25, 5);   }   break;   }   }   else   {LABEL_11:   sys_err((int)"PartyInvite", 4558, "Do not process party join error(%d)", v11);   } Como veremos, la variable v11 está obteniendo el valor de una otra función, llamada CHARACTER__IsPartyJoinableCondition.
    Entonces, lo que el servidor hará es testear ese valor desde la función switch.
      switch ( v11 )   {   default:   goto LABEL_11; Si esa variable es false dependiendo de los valores encontrados en los case, entonces irá hasta el LABEL_11, que es un error en syserr:
    LABEL_11:   sys_err((int)"PartyInvite", 4558, "Do not process party join error(%d)", v11); Si esa condición es verdadera, hará una serie de cosas.
     
    Entonces ya sabemos que, lo que sale en el chat dependerá:
    - Del valor de la variable v11, o sea, el valor que la función CHARACTER__IsPartyJoinableCondition obtiene. Ahora que sabemos esto, vayamos directos a esa función.
    int __cdecl CHARACTER__IsPartyJoinableCondition(int a1, int a2){  int v2; // edx@1  int result; // eax@2  v2 = a2;  if ( *(_BYTE *)(a1 + 9797) == *(_BYTE *)(a2 + 9797) )  {   if ( *(_DWORD *)_stack_chk_guard__FBSD_1_0 == *(_DWORD *)_stack_chk_guard__FBSD_1_0 )   return CHARACTER__IsPartyJoinableMutableCondition(a1, a2, a1, a2);LABEL_6:   __stack_chk_fail(a1, v2);  }  v2 = *(_DWORD *)_stack_chk_guard__FBSD_1_0 ^ *(_DWORD *)_stack_chk_guard__FBSD_1_0;  result = 10;  if ( *(_DWORD *)_stack_chk_guard__FBSD_1_0 != *(_DWORD *)_stack_chk_guard__FBSD_1_0 )   goto LABEL_6;  return result;} De aqui no podemos sacar grandes conclusiones, pero, sabemos una cosa:
      if ( *(_DWORD *)_stack_chk_guard__FBSD_1_0 == *(_DWORD *)_stack_chk_guard__FBSD_1_0 )   return CHARACTER__IsPartyJoinableMutableCondition(a1, a2, a1, a2); Esta funcion hará return al valor de una otra función. Debemos entonces, movermos hasta esa función, CHARACTER__IsPartyJoinableMutableCondition.
    int __fastcall CHARACTER__IsPartyJoinableMutableCondition(int a1, int a2, int a3, int a4){  int v4; // edx@1  char v5; // al@4  __int64 v6; // qax@5  int result; // eax@7  int v8; // eax@10  int v9; // [sp+1Ch] [bp-Ch]@1  v4 = 1;  v9 = *(_DWORD *)_stack_chk_guard__FBSD_1_0;  if ( *(_BYTE *)(singleton_CPartyManager___ms_singleton + 76) )  {   LOBYTE(v4) = 2;   if ( !*(_DWORD *)(a3 + 9364) )   {   LOBYTE(v4) = 3;   if ( !*(_BYTE *)(a4 + 4) )   {   v5 = LC_IsCanada(a1);   a1 = 15;   if ( !v5 )   a1 = (unsigned __int8)LC_IsBrazil(15) < 1u ? 30 : 10;   v6 = *(_BYTE *)(a3 + 1298) - *(_BYTE *)(a4 + 1298);   LODWORD(v6) = (HIDWORD(v6) ^ v6) - HIDWORD(v6);   v4 = 4;   if ( a1 >= (_DWORD)v6 )   {   LOBYTE(v4) = 7;   if ( !*(_DWORD *)(a4 + 9328) )   {   if ( !*(_DWORD *)(a3 + 9328)   || (v8 = CParty__GetMemberCount(a1, v4, *(_DWORD *)(a3 + 9328)), v4 = 8, v8 != 8) )   v4 = 0;   }   }   }   }  }  result = v4;  if ( *(_DWORD *)_stack_chk_guard__FBSD_1_0 != v9 )   __stack_chk_fail(a1, *(_DWORD *)_stack_chk_guard__FBSD_1_0 ^ v9);  return result;} La primera cosa en lo que nos fijaremos es en esto:
      v5 = LC_IsCanada(a1);   a1 = 15;   if ( !v5 )   a1 = (unsigned __int8)LC_IsBrazil(15) < 1u ? 30 : 10; La variable v5 será igual a un boolean (true o false), a1 es un integer (un valor entre 0 a 2 millones). Lo que la función hace, es verificar si la variable v5 es false, si así es, el valor de la variable a1 cambia, dependiendo del locale, ya que si este es un locale/brazil el a1 será 10.
    a1 = (unsigned __int8)LC_IsBrazil(15) < 1u ? 30 : 10; Esto es lo que se llama, un short if-statement:
    a1 = boolean ? valor si es true : valor si es false;
     
    Como el nivel de diferencia en los servidores de europa es 15, podemos concluir que la variable a1 define el nivel de diferencia y es el valor que queremos cambiar.
     
     
    Toqueteando en el IDA
     
    Después de saber que valor tenemos que cambiar, y donde está, abrimos el IDA:

     
    Y le damos al primer botón (New - Disassemble a new file), seleccionamos nuestro archivo, en mi caso el game r40250, y nos aparecerá algo de este tipo:

     
    Nosotros, sin tocar en nada, le damos al OK. Y esperamos hasta que cargue las funciones.
     
    Cuando nos salga algo así:

     
    Significa que las funciones ya están cargadas.
    Ahora le hacemos click en la ventana Function name y escribimos: CHARACTER::IsPartyJoinableMutableCondition y le damos un doble click.
     

     
     
    Nosotros simplemente bajamos hasta aqui:

     
    Si le damos al botón de tabulación, nos llevará al pseudocode de esa función y, además, nos dejará en la localización actual, por ejemplo:
    call   _Z11LC_IsCanadav ; LC_IsCanada(void)mov ecx, 0Fhtest   al, aljz   short loc_806E8B0 Si hacemos click en el mov y hacemos un jump to pseudocode nos llevará hasta:
    a1 = 15; Yo, como no sé cambiar los valores de los short if-statements, haré NOP (No Operation, que simplemente hace que en esa parte no haga nada).
     
    Entonces, nos moveremos al Hex View y podremos ver que la parte que está seleccionada, es la parte que hemos seleccionado en el IDA View.
    Nos vamos a la ventana donde está el LC_IsCanada:
    .text:0806E83A jnz short loc_806E878.text:0806E83C call   _Z11LC_IsCanadav ; LC_IsCanada(void).text:0806E841 mov ecx, 0Fh.text:0806E846 test   al, al.text:0806E848 jz   short loc_806E8B0 El short jump if not zero (jnz) si le damos click y vamos al pseudo, veremos que está demasiado arriba del if-statement.
    El call al LC sabemos que es una variable
    El mov es la variable que queremos cambiar.
    El test es el if-statement.
    El jump if zero (jz) basicamente es lo que va después de la condición.
     
    Entonces lo que tenemos que hacer, es NOP al jz y al test.
     
    Como?
    Facil, seleccionamos lo que queremos cambiar:

     
    Nos vamos al Hex View le damos al F2, y cambiamos los 2 valores que salen seleccionados por 90. Ya que el No Operation (NOP) equivale a 90. Volvemos a darle al F2 para guardar los cambios.
    Y luego, hacemos lo mismo con el jz.
     
    Que hemos echo entonces?
    Basicamente, lo que hicimos hasta ahora, es dejar el nivel de diferencia entre jugadores para que se inviten sea de 15, ya que el if define todo lo demás, dependiendo del locale.
    Si queremos cambiar el 15 por otro, facil. Vamos hasta:
    mov ecx, 0Fh
     
    Luego al Hex View, entonces abrimos el
    Debes iniciar sesión para ver el contenido del enlace en esta publicación., ponemos 15 donde el 1, y le damos click a to hexadecimal, que nos saldra un f, o sea 15 en hexadecimal equivale a 0F. Buscaremos eso en el Hex View, le damos al F2. Volvemos al conversor, y convertimos el valor que queremos poner a cambio de 15. Yo por ejemplo, pondré 5 que es 05. Le daré al F2 otra vez para guardar los cambios.
     
    Entonces si vuelvo al pseudo me saldrá:
      v5 = LC_IsCanada(a1, v4);   a1 = 5; En vez de:
      v5 = LC_IsCanada(a1, v4);   a1 = 15; Eso es porque hemos cambiado el 15 por 5 en el Hex View.
     
     
    Por fin, como creamos la diff después de cambiar lo que queramos?

     
     
    Y mi diff me saldrá así:
    This difference file has been created by IDA Progame_r4025000026842: 0F 05 // Esto es el cambio de la variable a1, de 15 a 5// Estos NOP es de la condición que hemos "eliminado"00026846: 84 9000026847: C0 9000026848: 74 9000026849: 66 90 Y por último os dejo aqui los pseudocode que tengo:
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  25. Me Gusta
    wille damare reacted to Sebastian Gualdron in ➫ ➬ ➩ [SERVERFILES] Compilado 2017-2018-2019   
    ❤️
×
×
  • Crear nuevo...