Anuncio

Colapsar
No hay anuncio todavía.

[GUIA] Glow Editor (Original Gembrid) + traducción

Colapsar
X
  • Filtrar
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
    • Compartir

    [GUIA] Glow Editor (Original Gembrid) + traducción

    Con esta guía, vamos a cambiar el resplandor de los items desde +7 a +13
    Guia Original Créditos:
    Híbrid
    Fiuz
    Para aquellos que hagan mirrors de descarga.
    Traducción al Español + explicaciones ARIES

    1. Vamos a empezar desde la teoría.

    Existe una función en el main.exe que carga el brillo de color para la mayoría de los Items +7 - +13, y algunas otras cosas. Por ejemplo, para las alas, dinorant, darkhorse y algunos otros Items esta función no se llama. (llamar una función en programación, sería como ejecutar una función en lenguaje normal)

    El prototipo de esta función es en lenguaje de programación c + +:
    Código:
    void __cdecl Glow (dwItemId DWORD, DWORD uk1, DWORD UK2, cl & frgb, bUkn BYTE);
    dwItemId - OBJECTID o índice, cada objeto está cargado en una gran variedad de objetos, y cada objeto tiene su único índice.

    cl - es una estructura flotante RGB
    Código:
    struct frgb
    (
    Float r, g, b; / / rango de cada color [0, 1]
    );
    En esta variable la funcion de resplandor devuelve el resultado de color, hay 30 (2 azules iguales) brillará con colores por defecto.

    uk1 & UK2 - en realidad son estos dos flotadores, y se utilizan para cargar el brillo y color, pero no vamos a utilizar los mismos.


    bUkn - Si recordamos hay 2 tipo de balrogs, color plateado y rojo, esta variable se utiliza sólo para determinar su brillo y su proyecto de ley brillo =) plateado o rojo.

    Si ya lo adivinaron, lo que haremos es un enganche a esta función, para que nos devuelva el color que queramos.

    Nos queda ahora averiguar la verdadera ID, porque en función de que tenemos del objeto Id. Es sencillo, todos los items se encuentran desplazados en variedad de objetos de algún valor. Las ID son las mismas que en los archivos item.bmd y en item.txt (itemId = ItemType * MaxItemsInType + ItemIndex) (ID del item es igual al Tipo de item por el maximo de items en tipo más el Index del item)

    Por lo tanto, si hemos OBJECTID y offset de items en serie de objetos, podemos simplemente calcular el elemento id:
    ItemId = OBJECTID - offset;

    Por ejemplo, vamos a buscar el item con ObjectID = 0x293 y 0x285 = offset, con 512 artículos en máx tipo:

    ItemId = OBJECTID - offset = 0x293 - 0x285 = 0x0E (14)
    ItemType = ItemId / MaxItems = 14 / 512 = 0 (división)
    ItemIndex = ItemId = MaxItems% 14% 512 = 14 (resto de una división entera)

    si le damos una mirada al archivo items.txt o item.bmd
    Encontraremos que el Item con Type = 0 y el Índice = 14 es la Lighting Sword

    Más adelante en esta guia explicaremos cómo encontrar el "offset"
    Con estos conocimientos puede hacer su propio DLL y cambiar los colores de brillo ustedes, pero aqui hay una DLL que será compatible para las personas que no serán capaces de crear las suyas propias.

    2. DLL

    Aquí se describe el algoritmo de la dll.

    Esto soporta la dll 32 y 512 MaxItems.
    Así que la mejor manera para una dll, que serán compatibles para todos, es la asignación de memoria para todos los elementos --

    Código:
    struct PUNTO
    (
    BYTE bChng; / / Voy a decir más tarde
    Float R, G, B;
    );
    sizeof (TEMA) = 3 * 4 + 1 = 13 bytes
    maxtypes = 16

    memoria = sizeof (ITEM) maxtypes * * maxitemindex = 208 * maxitemindex
    si maxitemindex = 32, entonces la memoria = 208 * 32 = 6 656 bytes ~ 6,5 kb
    si maxitemindex = 512, entonces la memoria = 208 * 512 = 106 496 bytes = 104 kb

    Por maxitemindex = 512 una gran cantidad de memoria no serán utilizados en absoluto, pero este método nos permite hacer frente a su uso directo, por lo que es más rápida que si tuviéramos que encontrar el item que figura en la lista de items por su id, y también este método nos ayudará más adelante

    Recuerdo ITEM:: bChng? vamos a marcar todos los items cambiados (refiriendonos al resplandor desde +7 a +13).
    Si se cambia el item se vuelve al color, si no nosotros llamamos a la función por defecto resplandor.

    Aquí está nuestra nueva Glow Proc
    Código:
    void Glow (dwItemId DWORD, DWORD uk1, DWORD UK2, frgb & fClr, BYTE bUkn)
    (

    Int id = dwItemId - g_dwOffset; / / calc tema id

    / / Si el objeto es un item y este item debería utilizar nuestro brillo y no se trata de un Balrog de plata: D
    / / Entonces volvemos nuestro color
    / / Else llamar a la función por defecto
    if( id >=0 && id < g_MaxItems*16 && Glows[id].bIsChanged && !bUkn)
    fClr = Glows[id].fClr;
    else
    fnOldGlow(dwItemId, uk1, uk2, fClr, bUkn); }

    El Glow (resplandor) de colores la dll lo lee desde el archivo "glow.gld".
    Formato de los archivos *.gld
    Archivo de cabecera:
    Código:
    struct GLOW
    (
    DWORD signature; / / = 0x574F4C47
    BYTE bType; / / max representa los puntos, 0 - 32, else - 512
    );
    Además, al final del archivo, sigue la informacion del color de los items.
    Código:
    struct ITEM
    {
    USHORT usItemId; // item id
    FRGB fClr; // glow color (color del brillo o resplandor)
    };
    Es por eso que hemos enganchado la función de resplandor, ahora podemos exigirle al main.exe que utilize nuestros colores.

    3. Glow Editor Tool.


    Glow Editor le permite:
    - Editar el color del brillo de los items que usted quiera,
    ya que utiliza Microsoft Jet (. MDB) base de datos de acces, podemos agregar o eliminar items a gusto.
    - Cargar y guardar archivos *.gld para 32 y 512 maxitems en versiones de main.exe
    Parchar laDLL para su propio main.exe, porque las llamadas a funciones y offset de los items son diferentes
    - DLL 's memoria compartida, utilizando File Mapping, (abordo directo) Glow Editor permite cambiar los colores directamente en el juego.

    4. Parchar la DLL.

    Las llamadas a funciones y offset de los items son diferentes en los distintos mains.exe, por lo que tenemos que cambiar estos valores.
    Voy a decirles cómo encontrarlos utilizando ollydbg.


    1. Abrimos el main.exe en ollydbg.

    2. Botón derecho (RB)-> Search for -> all referenced text strings.


    3. En la ventana que nos apareció RB -> search for text (buscamos por texto)


    4. Escribimos "Sword"; Desmarcamos "Case sensitive" y marcamos "Entire scope"

    5. Buscamos "Sword" tal cual como la siguiente imagen usando CTR + L (búsqueda siguiente)


    6. Cuando lo encontramos, hacemos doble clic o pulsamos ENTER en él, y en la ventana principal lo deberiamos ver similar
    a la imagen, el srtring por debajo de "Sword" debe ser "Data\Item" o puede ser simplemente "Item".


    7. Por encima de la primera llamada a la función encontramos el procedimiento OBJECTID. Los tipos de Items comienzan con las espadas (Swords) (Tipo = 0),
    así que cuando el main.exe carga las texturas o modelos de espadas que se añade a la id el Offset de la espada a partir del tipo de sección, y si la espada tipo es el primer tipo de Items,
    esta compensación es el offset de artículos en serie de objetos


    8. Vamos a encontrar el resplandor en las llamadas a funciones. RB -> search for -> all constants


    9. Vamos a buscar OBJECTID Lighting Sword (recuerde cómo calculamos el itemid u objeto id)
    ObjectID = Offset (valor que has encontrado) + ItemdId (0 * 512 14 = 14 (0x0E))
    para offset = 0x285, 0x293 = OBJECTID


    10. En la ventana que nos aparece buscar 2 Comandos Comparados


    11. Haga doble clic o ENTER en el primer comando, y se le redirige a la misma


    12. Esta es nuestra procedencia de brillo, nos desplazamos más arriba y buscamos el inicio de la misma


    13. Seleccionamos el primer comando, entonces RB -> Go to, y veremos 2 llamadas a la funcion de brillo


    Si no tenemos una llamada desde X lugar "CALL de X", entonces RB -> Analyse-> Analyse code, y volvemos a realizar el paso 13


    ahora con el offset y 2 llamadas a las funciones Podemos parchar la DLL con el Glow Editor desde la opción Patch DLL

    Descarga el Glow Editor
    RapidShare: Easy Filehosting

    Descarga la Glow DLL
    RapidShare: Easy Filehosting

    Glow.dll va a la carpeta del Cliente
    Glow.gld va a la carpeta Data del Cliente
    No olvidemos que hay que enganchar (hookear) la DLL en main.exe (se pondrá una guía de como agregar el DLL en el main.exe)

    para crear el archivo glow.gld, simplemente abrimos el Glow Editor luego vamos a File-> Save y se creará el archivo.
    Editado por última vez por eleveth; https://hastlegames.com/member/4-eleveth en 03/07/09, 06:50:30.
    sigpic
    www.comunidadfusion.com.ar - Portal de la Comunidad.
    www.mufusion.com.ar - Server S4 Fast.
    www.mufusion.com.ar/pro - Server S6 Pro.
    www.comunidadfusion.com.ar/online - MuOnline Browser Version.
    • Compartir

    #2
    sorry q joda pero no esta la imagen

    9. Vamos a buscar OBJECTID Lighting Sword (recuerde cómo calculamos el itemid u objeto id)
    ObjectID = Offset (valor que has encontrado) + ItemdId (0 * 512 14 = 14 (0x0E))
    para offset = 0x285, 0x293 = OBJECTID

    Comentario

      • Compartir

      #3
      Originalmente publicado por yawmoth Ver Mensaje
      sorry q joda pero no esta la imagen

      9. Vamos a buscar OBJECTID Lighting Sword (recuerde cómo calculamos el itemid u objeto id)
      ObjectID = Offset (valor que has encontrado) + ItemdId (0 * 512 14 = 14 (0x0E))
      para offset = 0x285, 0x293 = OBJECTID

      Gracias por avisar, ya se encuentra corregido, la proxima vez por favor evita realizar un post, sino que directamente envia un reporte o contactate con el usuario que realiza el post para darle aviso de los links invalidos.
      sigpic
      www.comunidadfusion.com.ar - Portal de la Comunidad.
      www.mufusion.com.ar - Server S4 Fast.
      www.mufusion.com.ar/pro - Server S6 Pro.
      www.comunidadfusion.com.ar/online - MuOnline Browser Version.

      Comentario

        • Compartir

        #4
        Aries, disculpa qe te moleste, pero este editor serviria para poder cambiar color o brillos a los items de Rimbros i demas ?

        Gracias.

        Comentario

          • Compartir

          #5
          Si se puede darle color a cualquier item (que posea procedencia de brillo (Sets)

          El editor posee una base de datos de access *.mdb editable y muy simple donde se encuentran incluidos los sets originales de MuOnline, a la misma tabla le puedes adicionar los items nuevos con tan solo ID Nombre y Tipo de Item, Ejemplo:

          51 Rimbross Helm 7 (el orden no lo recuerdo por que ahora mismo no estoy viendo la tabla, pero esos serían los 3 datos necesarios).

          Claro que esto fue pensado justamente para quitar el color dorado que da automaticamente el main a los items nuevos (Agregados) segun su procedencia de brillo, pero sirve también para todos los originales.
          sigpic
          www.comunidadfusion.com.ar - Portal de la Comunidad.
          www.mufusion.com.ar - Server S4 Fast.
          www.mufusion.com.ar/pro - Server S6 Pro.
          www.comunidadfusion.com.ar/online - MuOnline Browser Version.

          Comentario

            • Compartir

            #6
            Ok, sera cuestion de probar haber qe pasa.


            Gracias.

            Comentario

              • Compartir

              #7
              help me pliss

              Necesito una de las principales 1.04O + para poner en mi servidor, y brillan con antihack, la mayoría no puede poner el 2 junto al colocar la luz de la antihack trabajo y no cuando usted pone su antihack la luz no funciona, si alguien me puede ayudar que para mí una de las principales 1.04O + + antihack.dll resplandor plisss

              Ya he probado el foro más no creo que esta versión con brillo, con sólo el antihack.dll


              (pt br)
              estou precisando de um main 1.04O+ para colocar em meu server, com glow e antihack, mais nao consigo colocar os 2 juntos , quando coloco o glow o antihack nao funciona e quando coloco o antihack o glow nao funciona, se alguem poder me ajudar, fazendo para mim um main 1.04O+antihack.dll+glow plisss

              Perdón por mi mala Inglés porque soy brasileño y yo no soy muy bueno en Inglés

              Comentario

                • Compartir

                #8
                Hola, ando necesitando si alguien no me podria pasar el main de los files MMT (1.02.03) ya hokeado y con el glow andando, porque juro que intente e intente pero no entiendo ni de casualidad desde el punto 9 en adelante

                dejo mi main, por si alguno me puede ayudar

                GigaSize.com: Host and Share your Files

                Desde ya muchas gracias.

                EDIT: Resuelto, ya le añadi el glow, el soporte de nuevos items, game guard y camara 3d
                Editado por última vez por martiin_bogado; https://hastlegames.com/member/1767-martiin_bogado en 06/07/09, 17:19:04.
                Descarga los datos sobre el proximo FullRepack de los files SCFMT 10.30.96: http://img17.imageshack.us/img17/4052/firmaeaz.jpg

                Comentario

                  • Compartir

                  #9
                  Respuesta: [GUIA] Glow Editor (Original Gembrid) + traducción

                  martiin_bogado aver si posteas tu main.exe seria buen aporte o si no enseñas como lo isistes.
                  ^^!

                  Comentario

                    • Compartir

                    #10
                    Respuesta: [GUIA] Glow Editor (Original Gembrid) + traducción

                    Muy buen aportee meeenn!!!...Me estas salvando la vida con mi server

                    Comentario

                      • Compartir

                      #11
                      Respuesta: [GUIA] Glow Editor (Original Gembrid) + traducción

                      Lo siguiente no lo comprendo bien, hize el hook de glow.dll y modifique los limites de los items y limite de algunas texturas. Pero aun sigo viendo los items de color blanco. Me podrias explicar como hacer estas dos llamadas vayan a la funcion de glow.dll porfavor.

                      ahora con el offset y 2 llamadas a las funciones Podemos parchar la DLL con el Glow Editor desde la opción Patch DLL
                      Desde ya gracias, saludos.

                      PD: La version de main que utilizo es 1.06D (1.6.30).

                      EDIT: Ya comprendi lo parchar la dll con los offset y funciones encontrados, pero necesito un poco de ayuda en como encontrar los offset de los limites de textura para los items. Alguna respuesta porfavor.
                      Editado por última vez por Itiel; https://hastlegames.com/member/20562-itiel en 30/04/10, 23:44:51.

                      Comentario

                        • Compartir

                        #12
                        Respuesta: [GUIA] Glow Editor (Original Gembrid) + traducción

                        buen aporte interare colocarlo en main 97+99 si me funka grax
                        sigpic
                        ¿Que te cuesta Seguirme en Twitter? Vamos! @ManuelRMCF

                        Comentario

                          • Compartir

                          #13
                          Respuesta: [GUIA] Glow Editor (Original Gembrid) + traducción

                          aries me das una mano con esto no se que estoy haciendo mal o que mira como ha yo mis paso pero no salen igual los digitos







                          sigpic

                          Comentario

                          Trabajando...
                          X