Jump to content

Tabla del Honor

Contenido popular

Showing content with the highest reputation on 05/04/20 en todas las áreas

  1. Randaron

    Rubinum [SRC,CLIENT,PANEL]

    Hola hoy os vendo a traer los files Rubinum con todo COMPLETO ! Admin Panel: https://www.dosyaupload.com/dngD Ischop: https://www.dosyaupload.com/dngE Extern: https://www.dosyaupload.com/dngF Rb-website: https://www.dosyaupload.com/dngG Rubinum-Juego: https://www.dosyaupload.com/dngI Compartir: https://www.dosyaupload.com/dngJ Sql: https://www.dosyaupload.com/dngK Juego Define: https://paste2.org/ZdN3tVEz cliente Define: https://paste2.org/0dzzj8kF Datos del que publico los archivos Nombre: Finch SI ALGUIEN ES TAN AMABLE Y LO SUBE A MEGA POR SEPARADO COMO VIENEN EN ESAS DESCARGAS LO AGRADECERIA MUCHO ( GRACIAS ) Video:
    5 puntos
  2. con esta web podremos generar contraseñas mysql para no andar poniendo una web y crear contraseñas aora ya nosotoros las podemos crear tan facil y sinple mysqlgenerador donde dise pasword ponemos cualñquier contraseña una ves puesta le damos abajo en el botonsito create password donde se pone en verde copiamos con todo y aterisco y lo pegamos en nuesto password de acoount en esa tabla y ya quedo guardamos y nos loguamos al server
    3 puntos
  3. 07.10.2019 Archivo actualizado. Archivo:https://dosya.co/tcatt1vezj6w/KratosXX_weapons.rar.html
    3 puntos
  4. Wenas a todos! He visto que hay mucha gente que quiere aprender a hacer quest y lo primero que se necesita es tener un buen entorno en el que trabajar, asique voy a poner lo que yo uso para trastear con las quest, el notepad++, algunos diran que ya lo usan, pero seguro que no todos le han añadido el lenguaje quest para trabajar como dios manda. Aqui una imagen de como se ve una quest despues de añadir el lenguaje. Para conseguir ese efecto debemos instalar el lenguaje en la siguiente ruta si es un notepad++ instalado WindowsXP: C:Documents and SettingsTU_USERDatos de programaNotepad++ Windows Vista y Windows 7: C:UsersTU_USERAppDataRoamingNotepad++ y si es portable lo meten dentro de: Notepad++ PortableappNotepad++ Archivo de lenguaje quest: http://www.mediafire...siua6neqiwiy36t Y para los que todavia no tienen el Notepad++, les dejo un link con el Notepad++ Portable con el lenguaje ya metido. http://www.mediafire...apb4gk0e7d9mif5 Si tienen alguna pregunta no dudeis en hacerla, que si se la respuesta la responderé. xD Saludos
    3 puntos
  5. Contenido del MultiHack: Level Bot Buscador de Metines Auto Ataque Hack de Damage Teleport ¡Muchas otras cosas! Vídeo de Muestra: LINKS DE DESCARGA: CLICK AQUÍ
    2 puntos
  6. Descargar: https://mega.nz/#!Np8BSDzB!mOdsFttb_6xUj1pDB7JSJPQLW4cisCtMEwj_Q0iMhIk
    2 puntos
  7. Dilong

    [Nuevo link]SF Akron2

    Descripcion: Link: https://mega.nz/folder/TJcBwSJR#Dt1E-aq-MWV_V0s073_f1w El cliente no está encriptado, pero si compilan el source del cliente, tendrán que cambiar las Keys para dejarlo sin encriptar
    2 puntos
  8. ¡Hola a todos! Hoy les traigo un sencillo bot para comprar y abrir almejas. http://gyazo.com/fa909e262a99d63297d9ff2196143a2a.png Para usar el bot primero deben abrir la tienda que contiene la almeja. Luego, el bot les pedirá una posición, esta posición es el lugar en donde se encuentra la almeja en la tienda. Todos los objetos de la tienda son respresentadas por un numero. Se empieza contando desde 0 y desde arriba a la izquierda. En este caso : http://gyazo.com/8339c4a83d41b30ddd75c93e57cb8303.png La almeja se ubica en el lugar numero 6. Bueno, una vez colocada la posición, tendremos que poner el tiempo. El tiempo es la velocidad con la que el bot comprará y abrirá las almejas. Recomiendo dejarlo en 1.0, no es necesario poner numeros con comas, pueden poner directamente 1, pero si quieren puede poner numeros decimales, es decir, 0.9, o 0.8, etc. Espero que hayan entendido. Descarga: http://www.mediafire.com/download/522w2cdrwxxn7ng/Compra+y+abre+almejas+-+By+Francoiz%282%29.rar
    2 puntos
  9. 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): https://mega.nz/#!loQk0Ljb!YVTayTradq7UwZDRrmr5EijAgEAURnvo1w5XZL13V8w Recomiendo actualizar las librerias c++ por si os da el error de mscore100.dll. http://www.microsoft...on.aspx?id=5555 Creditos: Luscha, Inforge.
    2 puntos
  10. Araiguma

    Files Metin2 Rage

    Bueno , hago este post rápido también, estos son los files que me vendió Jfirewall. hace 4 meses , no tienen los sistemas o mapas nuevos que haya implementado los ultimos 2 meses pero los files estan como los tenia Serex cuando era el dueño de metin2rage , ahora parece un putero de bugs con tantas mierdas que ha metido Jfirewall. https://mega.nz/#!jxxwEKba!pTzZ9aDerYLqhR_AfVOTXs5OeGsvyN72YH0cQwa7vps Encriptador https://mega.nz/#!y85n0YYJ!uDmxtwKIcvjkdnC0StuiawGAVH5MQQB667Va6T5Xl2w Descopilador https://mega.nz/#!ep4VHSQT!YPlQ-O4Uhdnm7-mGc4ku07ejfPXfyqluHgBteIqiUQg Protección aun que creo que ya no funciona por que sacaron update pero por sea caso ahi la dejo. (la re vendia Jfirewall diciendo que costaba 170 euros cuando estaba publica como me acaban de decir ) https://mega.nz/#!n54wTYpR!IZrM72gfaNpzjzxS_4LIGibz6EXoUM-AKSKw-jKUL1E Cliente Metin2 Rage , el Cliente tiene la interfaz , selección de persona y login Editados , son estilo illumina. https://mega.nz/#!rk5kGKIA!5EFItj44iHnLarOsHsehXGJu9EHJcxBEtZG09_kCbOs source cliente y source files https://mega.nz/#!yggy2aoL!BnixtLpHL4lM_BNVJQaiK3CBoKluPLlA3YpitwqDaDE Files y DB si falta algo me lo decis PD: la interfaz tiene algunos errores en los Botones de habilidades que hay que ponerlos bien y ajustar algunos textos pero por lo demas esta bastante bien. PD: estos no son los que publicaron hace 1 un y pico , estos se los compré a Jfirewall cuando le compro el server a serex y la verdad no tenían bugs como los que tiene el ahora por meter 50 gb de mierda PD: si vas a comprarle o pagar servcios a Jfirewall , te recomiendo pensartelo 2 veces y con Wered si tienes prisa por un pedido no te lo recomiendo pero si no tienes prisa y no te importa esperar 2 meses pues adelante
    2 puntos
  11. ABoWaLy

    zimbo-server-files

    First of all Hello everyone My dear friend Batuhan, I took over the works because of their busy work. Saying "Your Friend" Full Server Net ^ _ ^ The friend who made this net couldn't do it because he was so sleepy. We DO NOT RECOMMEND USING AS RTURK. ---------------------------- image ------------------- Download ---------------- GAME_SOURCE --------------- CLIENT_SOURCE+FOXFS'SİZ -------------- FULL_PATCH ------------- DUMP_OPEN ------------ GAME_MYSQL ------------ Virus Total -------------- NAVİCAT_PD; revoltsbaba PACK_İSLEMLERİ. 1-) ROOTTAN ÖRNEK VEREREK GİDİYORUM ROOTU PACKOPEN KLASORU İÇİN ATIYORUZ 2-) ROOTUN İSMİNİ ROOT.METİN2 YAPIYORUZ 3-) EXENIN ÜZERİNE SÜRÜKLÜYORUZ 4-) KARSIMIZA ROOT.EİX VE EPK ÇIKIYOR ETERNEXUSTA İŞLERİMİZİ HALLEDİYORUZ 5-) PACKOPEN KLASORUNDE EXE HARİC HERSEYİ SİLİYORUZ VE DÜZENLEME YAPTIGIMIZ EİX EPK Yİ PACKOPENE ATIYORUZ 6-) EİX VE EPK NİN İKİSİNİ EXEYE SÜRÜKLÜYORUZ VE İSMİNİ ROOT YAPIYORUZ BİTMİŞTİR. -------------------- YOU HAVE IP LICENSE BACK ----------- Thanks for sharing. ----------------- Source: turkmmo
    2 puntos
  12. Hola chic@s hoy les traigo un pequeño video sobre como traducir cualquier cliente 40k + de metin2 al español. Aqui esta el video, sigan los pasos. Descargas: - Extractor para cliente eix & epk locale_es Actualizado 1/2/2015 - No usen el mob_proto, pues esta enscriptado y da errores. Usen los que les dejare a continuacion. - item_proto Actualizado 1/2/2015 - mob_proto Actualizado 1/2/2015 Cualquier duda, comenten
    2 puntos
  13. LovePlay

    [REDISEÑO] METIN2CMS

    No estoy seguro de si esta web se llama METIN2CMS, pero vosotros sabéis de cual hablo; esta web que utilizan la mayoría de servidores. Os he hecho un re diseño simple, para que haya un poco de variedad, que casi todos los servidores están usando la misma sin cambiar ni los colores ni nada. Es muy fácil de editar la web sabiendo un poco de css, un poco de html y reemplazar algunas imágenes. https://mega.nz/file/jIZx0CbL#yKJR6dGVxILj9DT-DL23SieHpiHRrdi17jgEW8s_2_A Si falta algo en el PSD o necesitáis algún tipo de ayuda con el PSD para montarlo y tal, escribidme al Discord. (LovePlay#4817)
    2 puntos
  14. TTV_RANDARON

    Pagina de Mt2Legend

    Imagen: https://ibb.co/fKsMW9 Descarga: https://mega.nz/#!Ed9RSQqT!ETPtbdrAlh9z2b-q_bzpdnfwNStub8PnJ33Urj_ZjzQ
    2 puntos
  15. link de mysql caido si puedes resubir please!
    2 puntos
  16. mira creo que es asi vas a account > account > click derecho > design table Imagen: https://ibb.co/JxMWz3T en caso de que no se vea la imagen que subi buscas los siguentes nombres: gold_expire, silver_expire, safebox_expire, autoloot_expire, fish_mind_expire, marriage_fast_expire, money_drop_rate_expire y en cada uno aparece default ahi pones una fecha por ejemplo '2020-09-09 12:40:00' espero que me log
    2 puntos
  17. Es un SF 34k español que lo prepare para que los nuevos puedan usarlo, tiene las dungeons normales: Catacumbas, Beran-setaou y Torre deminiaca, el unico que falta es el de la baronesa araña Sistemas basicos: Atuendo, mascota (el normal del oficial), energia, evolucion de monturas (No llamaria sistema como tal a una quest, pero bueno), y bueno solo eso lo basico, no tiene cosas raras, lo que no esta en español son las preguntas del OX, por que en eso cada uno pone lo que quiere El cliente pueden usar cualquier cliente 34k junto con el launch sura para 34k si quieren que los demas entren a su server via hamachi Foto: Link: https://mega.nz/folder/uEUgHb6L#jT8FfkRkfzgkgOdJtgHgDg/folder/HJlTjJaS Navicat: root daroo Cuenta GM: admin 123 Para encender el sf deben poner: cd /usr/home/game ./panel traduccion metin2oficial.zip
    1 punto
  18. Pues si has leído el post: Con razón publico todo esto gratis Web avantador: https://mega.nz/#!e9thiQyQ!R4cyTM4eMOebCHUPogheC3MBG7UxfDT79Wn8M2CKOXU Mi primera web metin: https://mega.nz/#!SklmgaLR!yG-6JffLvDnLZHmqJZqwqyPCX0jWXkTeag9VTXgJjDs Web Heart Of War: https://mega.nz/#!mgtwwKTY!mxfw1cf8PmBy_rzXBBPDMK_LmR6svDmfHaR7AIOM6eI Itemshop: https://mega.nz/#!u1sAlSiC!kubePtb09-tYi1tGWS7-lmQ3VCu7pZOeQQtLhzugBH0 Pago por paypal: https://mega.nz/#!ewkSQCSb!fC489elpKMXhjBg_K4y456GPCGQaz79hoAH4saAnwIQ
    1 punto
  19. hola amigo les traigo este pack de texturas de armaduras aviso nose se estas armaduras esten en el foro metin2zone si estan porfavor cierren el post mio pero si no estan dejar el post no se olviden dar las Gracias http://www.mediafire.com/file/awr3bt4e17eazzw/TexturesArmuresByKiara.rar/file link de las fotos https://ibb.co/fsjsqe https://ibb.co/jsTJVe https://ibb.co/iCeE3z https://ibb.co/kbkXqe
    1 punto
  20. Rakancito

    Sistema Multi Lenguaje

    Todo funciona bien, solo agregue una parte del cliente "python", para que los usuarios cambien el idioma con un botón, tuve la pereza de hacerlo. https://gyazo.com/fad416a9143c0efe994dd74cab7846f0 - El sistema guarda un idioma por cuenta. - Es capaz de traducir misiones, clientes, etc. - El sistema toma el idioma del archivo mylang.cfg del cliente y lo guarda en la base de datos de esta cuenta en el cliente. La guía simplemente se enfoca en buscar DEFINE: ENABLE_MULTILANGUAGE Entonces puedes ver cómo lo coloqué. https://github.com/Rakancito/multilang_system
    1 punto
  21. colcrt

    web (cascaron) gameforge

    se me dio por copiarme de algunas cosas de esa web asi que le dejo el cascaron por si alguno la quiere terminar de desarrollar, saludos [ click me ]
    1 punto
  22. Jaggerman

    Armaduras (Con Lycan)

    Todos los modelos tienen peinado. Link de Descarga. Créditos by: DaneWorker
    1 punto
  23. Pulse aquí para descargar el archivo Contraseña: just4metin.ro
    1 punto
  24. TTV_RANDARON

    3X Full Set

    Descargar Creditos a #Brahma
    1 punto
  25. DESCARGA http://www.mediafire.com/download/n79batu2oa637aq/Armadura+Guerrero+-+EzekielitohMercury.rar
    1 punto
  26. EzekielitohMercury

    [SET] Armas 7

    DESCARGA: http://prowomt2.pl/prowoftp/bronie/bronie7/bronie7.rar
    1 punto
  27. https://www.dosyaupload.com/isRZ
    1 punto
  28. 1 punto
  29. kokotitalsky

    Akatsuki armadura

    Ma esta descarga Alguien de aquí por favor ?? http://img87.xooimage.com/files/0/e/1/akatsuki-3746891.png
    1 punto
  30. Hola :3 aqui les traigo estas hermosas armaduras! :3 hay como 4 o 3 de prometheus que seguro ya estan posteadas 3: Link: https://mega.co.nz/#!Z8lk0DgC!Q4Iy3cJw6Zni4fIYOKxyONG9nKIPevG0XdOoq54lvx0 Fotos: http://prntscr.com/73jwnm Creditos: las saque de un foro que cerraron que no recuerdo el nombre :c Pd:si le gusto +1 Plox D: pd2: si estan posteadas sorry :c cierran el team T-T
    1 punto
  31. EzekielitohMercury

    [REUPLOAD]Armas M2M

    DESCARGA https://mega.co.nz/#!DJh2HAAJ!8zqnhwtnwcJg9M-StGYgXYjfJt4JlLF-K3PYRgOfwdA CONTRASEÑA roberts
    1 punto
  32. valoare

    pedir armas

    Necesito estas armas, las he estado buscando por un tiempo. Por favor https://pasteboard.co/I5xZvFT.png https://pasteboard.co/I5xZJG0.png https://pasteboard.co/I5xZPsN.png https://pasteboard.co/I5xZWdS.png
    1 punto
  33. NazoX

    Modificar daño mobs

    Ahora mismo eso es lo de menos porque ya tienes todo instalo, simplemente ves al atlasinfo del root e inventate un id, ponlo asi 1234 Prueba y dejas un enter abajo del todo. Ahora en item_proto.txt copia otro que no sea el orco, el perro salvaje mismo, y pegas la linea abajo del todo y le pones el id nuevo, dumpeas pa tenerlo en el cliente, y pruebas, si o si debería hacerte el daño del perro
    1 punto
  34. NazoX

    Modificar daño mobs

    Eso es que es por sql, entonces tienes que editarlo en navicat
    1 punto
  35. Te has pasado mucho con la publicidad, una cosa es poner un poco de publicidad pero tu te fuistes al extremo. Enlaces sin publicidad AVISO Chrome me decta el "vdi freebsd 12.1+ file + pagina web" Es posible que este archivo sea peligroso, por lo que Chrome lo ha bloqueado. cliente español sin patchupdate: https://drive.google.com/file/d/1EY62SyxUbg9F78cv1SUx1DEAh0UfdfeA/view cliente español con patchUpdate: https://drive.google.com/file/d/1cIUTCeVfDZlXS4g1QvxJznBTV8cRW2wo/view AVISO vdi freebsd 12.1+ file + pagina web lista para usar: http://www.mediafire.com/file/wr93olnq5rlhnkw/metin2max.rar/file cliente bestprodution v4 + patchUpdate: https://drive.google.com/file/d/1-W31SrLo33ejT5wtbK6htzKs4BaOwIRy/view vdi freebsd 9.2 + file +pagina web lista para usar: https://drive.google.com/file/d/1aj9LCjSrFhadzF7FF52gO85ZZpLJTPqv/view
    1 punto
  36. https://drive.google.com/file/d/15ODNjAGydaxXJwA5bzAPYysupiG29Vdx/view
    1 punto
  37. IonutPopescu

    Metin2CMS v2.12

    UP: New available in 8 languages:
    1 punto
  38. El game contiene lo siguiente:* Se lanza las voces desaparecen 1 minuto!* Peturiile (el animal completo) añade* Diff trajes completos (y he pagado por ellos) añaden* Fix crash* Strega loguriile automáticamente* Miembros Invitación grupos 16* Anti Kick hack , Combo Hack… y mas* Drop fixado* Yang fixado* System de Mascotas full* Ataque de la serie caballo* No experiencia disminuye si mueres* Diff nueva monturas* SYSERR se reduce sólo escribir tantos errores* Anti Hack Damage* Cuando se disuelve un clan / salir de una alianza sólo tendrá que esperar 24 horas* lv Max 105* + Un poco más útil! Descarga: http://www.multiupload.nl/O31E4854PO crditos:walk94
    1 punto
  39. francia

    web Lysania2

    imagen Descargar web Polaria2 Descargar web wildfire descargar web atheros 2 descargar creditos just4metin +
    1 punto
  40. blackhorse

    Set de 5 escudos

    Gente, les comparto 5 escudos para implementar de mi autoria, este es mi primer aporte, espero que les gusten En el link van a poder bajar todo lo necesario para una correcta implementación https://mega.co.nz/#!KNNgzSJY!WlLr0RyiAPldxU_NTAYaz2yUgBcjNHuqDAEJFUawSnw Saludos Black
    1 punto
  41. Muy dificil un descifrador de md5, busca cualquier tool por google (like this http://md5decryption.com)y prueba descifrar una md5 de metin2 y no la descifra.
    1 punto
  42. Robert

    Efecto peces by fulgerul46

    Descarga: https://mega.co.nz/#!s9dmzTiQ!UnGhC_DSQjQ4OqOEq-HlWVCCYQOMVxJkt6XXV9HZbQA
    1 punto
  43. -YC-

    [6 Casas]

    Hola amigos les vengo a dejar estos edifios o casas como les digan aqui fotos: Link:
    1 punto
  44. he does not have them all armors, this is copy and past of this contribution ..... Go to original post Spanish:el no tenerlas todas las armaduras, esto ser una copia y pega de esta contribución...... vamos al post original
    1 punto
  45. PACI

    [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 IDA Pro y un conversor de valores decimales a hexadecimales, y viceversa. 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 conversor de valores decimales a hexadecimales, y viceversa, 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: https://mega.co.nz/#!ZMYjgAwa!NzEZ-jMtKeqWGMvqjE4fRQHwhJYoZmR5ptOGZLsaCag
    1 punto
  46. Akroma

    Nuevas armaduras

    Bueno comunidad de MZ, os traigo oi 3 sets de armaduras nuevas, ya que no las he visto posteadas por aca, conforme que las traigo, son estas: Os dejo aqui la descarga de los fixeros: http://www.multiupload.nl/91LFYL20DI Las armaduras son para todas las razas, pero esque si me pongo ha acer fotos me puedo morir
    1 punto
  47. izaviona

    [Release]4950 Iconos nuevos

    NO LLEVAR A OTROS FOROS, APORTE SOLO PARA METIN2 ZONE Holaa, que tal? xD Bueno, Hoy me siento generoso :yaoming: y ya que he descompilado Runes of Magic, os dejo sus 4950 iconos. Unas fotos viene bien: Descarga: https://mega.co.nz/#...ki1A4w_zGXzTvkQ Saludos y agradezcan
    1 punto
  48. Hola a todos, hace tiempo implemente las armors de mi coleguin baso (sus 3 sets que le robaron del millenium-world) y me di cuenta de que la cara del guerrero y del sura no se veían, y aunque sé que muchos se dieron cuenta de por que y lo arreglaron aquí os dejo adjuntos los 2 archivos que hacen falta para que se vean por si no lo teneis arreglado Ya les hice una foto Y las lineas del xml de los 2 archivos de la textura de la cara: <File archivedPath="d:/ymir work/pc/warrior/warrior_face.jpg" type="0"><![CDATA[pc_descompiladoymir workpcwarriorwarrior_face.jpg]]></File> <File archivedPath="d:/ymir work/pc/sura/sura_face.jpg" type="0"><![CDATA[pc_descompiladoymir workpcsurasura_face.jpg]]></File> Eso es todo un saludo :wiii: carasbaso.zip
    1 punto
Esta clasificación está establecida en Madrid/GMT+02:00
×
×
  • Crear nuevo...