[Aportes indexados] MANUAL DE INDEXACIÓN

Estado
Cerrado para nuevas respuestas.

ArzenaTh

To be a rock and not to roll
Ex-Staff
Acá les dejo un buen manual completo de indexación. (No tengo el link a la página asique se los pego acá)
Por cierto, este manual esta basado en el programa para indexar llamado GeneradorBD, cuando pueda lo subo.


MANUAL DE INDEXACIÓN


Para entender la indexacion, primero es importantísimo entender que sigifican los 7 archivos de texto (desde Grh1.txt hasta Grh7.txt) que se encuentran dentro de la carpeta de [Indexador] del codigo fuente de AO:

Grh1.txt: En este archivo se escribirá el index de los, árboles, prados, costas, piedras, fuentes, adornos.

Grh2.txt: Index de movimientos, ropas, armas (solo sus movimientos), escudos (movimientos), cascos, armaduras, npcs, npcs hostiles, cuerpos desnudos, cabezas.

Grh3.txt: Indexacion de objetos de inventario, carteles, flores.

Grh4.txt: Casa en ruinas.

Grh5.txt: Dungeons, desiertos, pisos de dungeons, paredes, puertas abiertas, cerradas, techos, yacimientos.

Grh6.txt: Todos los efectos especiales, desde meditaciones, hasta hechizos.

Grh7.txt: Muelles, barandas.


1.1.1 Lineas de indexacion y su significado.

Dentro de los archivos mencionados anteriormente, encontraran lineas, las cuales todas empiezan con Grh(numero)= y una serie de numeros.
Que significa todo esto?!?! Y los numeros?!?!
Tranquilos, no se desesperen. La siguiente linea, esta sacada de el Grh3.txt y me va a servir para explicarles que significan todos estos numeros.
NOTA: Para indexacion de efectos especiales y movimientos, estas lineas cambian y se le agrega lo que se llama Animación, pero eso lo veremos mas adelante.
(Aclaración, la siguiente linea fue sacada del index del servidor de AoYa, por lo tanto no la encontraran en sus indexadores)

Grh875=1-974-0-0-32-32-Lanza Negra

Grh875 ............... Esto es el numero de Index, con el cual haremos la llamada mas adelante en el Obj.dat.

=1- ................ cantidad de frames o tiles que contiene la imagen, en caso de ser un grafico de inventario, siempre sera 1.

974- ............... Numero de grafico.

0-0- ................ En los objetos de inventario, esto no hace falta que lo cambien, son las coordenadas donde empieza el cursor para dibujar el grafico. Solo se cambia, si hay mas de un dibujo por grafico, ejemplo, armaduras.

32-32 ............. El tamaño del grafico, 32 x 32 pixeles en este caso.

-Lanza Negra ................ Una breve descripción del Item.

1.2 Indexacion, movimientos.

Fiu... ahora que tenemos nuestros conocimientos básicos, avanzamos un poquito por este “arte” y pasamos a la muy esperada y mucho mas complicada indexacion, de los movimientos.
Como ya vimos anteriormente, en la indexacion de inventario no hacia falta cambiarle los 0-0 que se encontraban por el medio de la linea, pero ahora, habiendo Mas de un dibujo por grafico, va a ser indispensable que aprendamos a sacar las cuentas que separaran un dibujo de otro.
Para esto, les voy a dar dos casos, uno es el caso de una armadura, y el segundo es un npc, ambos con distintos tamaños, para que vean las diferencias. Tambien les pongo el grafico de cada uno, para que se guien por la diferencia de tamaños. Ambos son del servidor de AoYa

<a href="http://www.aomistico.com.ar/modules/tut" class="postlink" rel="nofollow" onClick="window.open(this.href);return false;">http://www.aomistico.com.ar/modules/tut</a> ... madura.GIF

Este es el grafico que vamos a indexar primero, es la armadura de guerreros del caos plateada.

'Caos Guerreros Plateada
'
Grh14532=1-8241-0-0-26-46-Caos Guerreros Plateada
Grh14533=1-8241-25-0-26-46- Caos Guerreros Plateada
Grh14534=1-8241-49-0-26-46- Caos Guerreros Plateada
Grh14535=1-8241-73-0-26-46- Caos Guerreros Plateada
Grh14536=1-8241-98-0-26-46- Caos Guerreros Plateada
Grh14537=1-8241-123-0-26-46- Caos Guerreros Plateada
'
Grh14538=1-8241-0-45-26-46- Caos Guerreros Plateada
Grh14539=1-8241-25-45-26-46- Caos Guerreros Plateada
Grh14540=1-8241-49-45-26-46- Caos Guerreros Plateada
Grh14541=1-8241-73-45-26-46- Caos Guerreros Plateada
Grh14542=1-8241-98-45-26-46- Caos Guerreros Plateada
Grh14543=1-8241-123-45-26-46- Caos Guerreros Plateada
'
Grh14544=1-8241-0-90-26-46- Caos Guerreros Plateada
Grh14545=1-8241-25-90-26-46- Caos Guerreros Plateada
Grh14546=1-8241-49-90-26-46- Caos Guerreros Plateada
Grh14547=1-8241-73-90-26-46- Caos Guerreros Plateada
Grh14548=1-8241-98-90-26-46- Caos Guerreros Plateada
'
Grh14549=1-8241-0-135-26-46- Caos Guerreros Plateada
Grh14550=1-8241-25-135-26-46- Caos Guerreros Plateada
Grh14551=1-8241-49-135-26-46- Caos Guerreros Plateada
Grh14552=1-8241-73-135-26-46- Caos Guerreros Plateada
Grh14553=1-8241-98-135-26-46- Caos Guerreros Plateada

'Animacion
Grh14554=6-14532-14533-14534-14535-14536-14537-1
Grh14555=6-14538-14539-14540-14541-14542-14543-1
Grh14556=5-14544-14545-14546-14547-14548-1
Grh14557=5-14549-14550-14551-14552-14553-1


Huy!! Muchos numeros! Y si amigos, si quieren indexar, mejor acostúmbrense a los numeros, cuentas, y empiecen a entrenar los dedos para escribir numeros consecutivos de 5 cifras xD. A ver a ver, vamos por partes ok??

'
Grh14532=1-8241-0-0-26-46-Caos Guerreros Plateada
Grh14533=1-8241-25-0-26-46- Caos Guerreros Plateada
Grh14534=1-8241-49-0-26-46- Caos Guerreros Plateada
Grh14535=1-8241-73-0-26-46- Caos Guerreros Plateada
Grh14536=1-8241-98-0-26-46- Caos Guerreros Plateada
Grh14537=1-8241-123-0-26-46- Caos Guerreros Plateada

Fijense, que comparado con los graficos de inventario, no cambia nada excepto los ultimos 4 numeros. Me refiero a que, el Grh(numero) significa lo mismo, aunque obviamente hay que cambiarlo por cada nuevo frame. En estos casos el 1 sigue ahí ya que cada movimiento sigue siendo un solo tile dentro del movimiento de la armadura. El 8241 es el numero de grafico.
Para que entiendan los ultimos 4 numeros, voy a tener que explicarles como sacar la cuenta, no es nada difícil, pero mejor la calculadora para despejar dudas

El grafico original tiene un tamaño de 149 x 181 pixeles, y se observan 6 dibujos de movimientos distintos a lo largo y cuatro a lo alto. Entonces las primeras cuentas que vamos a hacer son :
149 / 6 = 26 (aprox) Ancho
181 / 4 = 46 (aprox) Alto

A partir de estas cuentas obtenemos el tamaño de cada dibujo (movimiento) dentro del grafico, o para hacerlo mas claro, cada “armadurita” dentro de ese grafico mide 26 x 46 pixeles.
Nota: Con estos dos numeros, tenemos los dos ultimos valores de la linea, que como dije antes, representan el valor de medida de cada una de las “armaduritas”.

Grh14532=1-8241-0-0-26-46-Caos Guerreros Plateada

En cambio, para averiguar el valor de los numeros de el medio, el sistema es mas complicado, pero no mas difícil, ya que las cuentas son simples sumas, y multiplicaciones. Repitamos la indexacion de graficos que miran al Sur:

'
Grh14532=1-8241-0-0-26-46-Caos Guerreros Plateada
Grh14533=1-8241-25-0-26-46- Caos Guerreros Plateada
Grh14534=1-8241-49-0-26-46- Caos Guerreros Plateada
Grh14535=1-8241-73-0-26-46- Caos Guerreros Plateada
Grh14536=1-8241-98-0-26-46- Caos Guerreros Plateada
Grh14537=1-8241-123-0-26-46- Caos Guerreros Plateada

Ya estamos cerca no desesperen!! Como sabemos, el primer numero siempre es X y el segundo siempre Y, o sea, el primero es horizontal y el segundo vertical. El primer valor que cambiamos es el horizontal, ya que en este especifico caso (apuntando al sur) no se necesita cambiar el eje vertical, debido a que se empieza siempre desde la parte superior del grafico (que es la que franja de armaduritas que apunta al sur).
Como se saca la cuenta de estos numeros? Facil, lo unico que hay que hacer es tomar el valor de eje X de cada frame (armadurita =P) que era 26 y sumarle 26 por cada linea. Ejemplo: La primera linea tiene el valor 0-0 la segunda tiene el valor 25-0, la tercera 49-0, etc.
Nota1: Las cuentas no son exactas, si no que son aproximadas, fijense que en vez de saltear de a 26 en 26, el segundo valor es 25 y a partir de ahí se saltea de 24 en 24.
Nota2: Para el Sur Nunca se cambia el valor de Y.

Esta secuencia de numeros (0-25 0-49 0-73 0-98 0-123) se repite en todas las direcciones ( Sur, norte, oeste y Este) con la unica excepcion de que el 0 de la Y cambia. Presten atención y observen como cambio el 0 para el caso de el Norte:

'
Grh14538=1-8241-0-45-26-46- Caos Guerreros Plateada
Grh14539=1-8241-25-45-26-46- Caos Guerreros Plateada
Grh14540=1-8241-49-45-26-46- Caos Guerreros Plateada
Grh14541=1-8241-73-45-26-46- Caos Guerreros Plateada
Grh14542=1-8241-98-45-26-46- Caos Guerreros Plateada
Grh14543=1-8241-123-45-26-46- Caos Guerreros Plateada

Como les dije antes, el 0 cambio a 45, ( o 46) ya que el valor de altura de cada frame (armaduritas) es 46.
Vean el oeste :

'
Grh14544=1-8241-0-90-26-46- Caos Guerreros Plateada
Grh14545=1-8241-25-90-26-46- Caos Guerreros Plateada
Grh14546=1-8241-49-90-26-46- Caos Guerreros Plateada
Grh14547=1-8241-73-90-26-46- Caos Guerreros Plateada
Grh14548=1-8241-98-90-26-46- Caos Guerreros Plateada

Ahora cambio a 90, ya que 45 + 45 es = a 90.
Y en nuestro ultimo caso, el Este:

'
Grh14549=1-8241-0-135-26-46- Caos Guerreros Plateada
Grh14550=1-8241-25-135-26-46- Caos Guerreros Plateada
Grh14551=1-8241-49-135-26-46- Caos Guerreros Plateada
Grh14552=1-8241-73-135-26-46- Caos Guerreros Plateada
Grh14553=1-8241-98-135-26-46- Caos Guerreros Plateada

Cambio a 135 (90 + 45 = 135).

NOTA: Para los movimientos de Oeste y Este, las “armaduritas” son 5, ergo, el numero de lineas tambien cambia a 5 y se omite la ultima linea, que en el caso del este habria tenido los valores 123-135.

Si te pensas que terminamos, te equivocaste, todavía nos queda algo por ver, la parte de Animación:

'Animacion
Grh14554=6-14532-14533-14534-14535-14536-14537-1
Grh14555=6-14538-14539-14540-14541-14542-14543-1
Grh14556=5-14544-14545-14546-14547-14548-1
Grh14557=5-14549-14550-14551-14552-14553-1

Esto no necesita mucha explicacion, la primer linea representa a todos los frames de la indexacion SUR, la segunda NORTE, tercera OESTE y la cuarta ESTE. Pero... el numero de frames que antes era 1 ahora cambio a 6 o 5!!! Y si, es facil, si son 6 armaduritas en la parte superior del grafico, los frames van a ser 6. Si son 5, (como en el oeste y este) la cantidad de frames de la animación van a ser 5. Todos los demas numeros representan a el Grh(numero) de el index de esta misma armadura. Por ejemplo, si los frames de las armaduritas que miran al sur son 6, y en el numero de index van desde el 14000 hasta el 14005, la linea de animación primera va a ser: Grh(tal numero)=6-14000-14001-14002-14003-14004-14005-1

Lo mismo pasa con las otras tres lineas.

NPCS: Para indexar npcs, no se necesita ningun otro conocimiento, el proceso es el mismo, lo unico que pueden cambiar es el numero de frames por cada dirección (en el caso del golem, se observan y por supuesto los famosos ultimos cuatro numeros dependiendo de la medida del grafico. Observen el siguiente ejemplo:
<a href="http://www.aomistico.com.ar/modules/tut" class="postlink" rel="nofollow" onClick="window.open(this.href);return false;">http://www.aomistico.com.ar/modules/tut</a> ... emonio.GIF

La indexacion para este grafico tambien se encuentra dentro de el Grh2.txt y es la siguiente:

'Demonio Gigante
'
Grh14802=1-8233-0-0-140-170-Demonio Gigante
Grh14803=1-8233-140-0-140-170- Demonio Gigante
Grh14804=1-8233-280-0-140-170- Demonio Gigante
Grh14805=1-8233-420-0-140-170- Demonio Gigante
Grh14806=1-8233-560-0-140-170- Demonio Gigante
Grh14807=1-8233-700-0-140-170- Demonio Gigante
Grh14808=1-8233-840-0-140-170- Demonio Gigante
Grh14809=1-8233-980-0-140-170- Demonio Gigante
'
Grh14810=1-8233-0-170-140-170- Demonio Gigante
Grh14811=1-8233-140-170-140-170- Demonio Gigante
Grh14812=1-8233-280-170-140-170- Demonio Gigante
Grh14813=1-8233-420-170-140-170- Demonio Gigante
Grh14814=1-8233-560-170-140-170- Demonio Gigante
Grh14815=1-8233-700-170-140-170- Demonio Gigante
Grh14816=1-8233-840-170-140-170- Demonio Gigante
Grh14817=1-8233-980-170-140-170- Demonio Gigante
'
Grh14818=1-8233-0-340-140-170- Demonio Gigante
Grh14819=1-8233-140-340-140-170- Demonio Gigante
Grh14820=1-8233-280-340-140-170- Demonio Gigante
Grh14821=1-8233-420-340-140-170- Demonio Gigante
Grh14822=1-8233-560-340-140-170- Demonio Gigante
Grh14823=1-8233-700-340-140-170- Demonio Gigante
Grh14824=1-8233-840-340-140-170- Demonio Gigante
Grh14825=1-8233-980-340-140-170- Demonio Gigante
'
Grh14826=1-8233-0-510-140-170- Demonio Gigante
Grh14827=1-8233-140-510-140-170- Demonio Gigante
Grh14828=1-8233-280-510-140-170- Demonio Gigante
Grh14829=1-8233-420-510-140-170- Demonio Gigante
Grh14830=1-8233-560-510-140-170- Demonio Gigante
Grh14831=1-8233-700-510-140-170- Demonio Gigante
Grh14832=1-8233-840-510-140-170- Demonio Gigante
Grh14833=1-8233-980-510-140-170- Demonio Gigante
'Animacion
Grh14834=8-14802-14803-14804-14805-14806-14807-14808-14809-1
Grh14835=8-14810-14811-14812-14813-14814-14815-14816-14817-1
Grh14836=8-14818-14819-14820-14821-14822-14823-14824-14825-1
Grh14837=8-14826-14827-14828-14829-14830-14831-14832-14833-1

1.3 Indexacion de efectos especiales, inventario, terrenos, arboles, adornornos, etc.

Muchachos, comparado con indexar una ropa o npc, esto es pan comido. Les voy a poner solo ejemplos, pienso que ya estan lo suficientemente adelantados para entenderlos ustedes mismos:

Objeto de inventario:
Grh920=1-1052-0-0-32-32-arco elfico

Arbol (lo mismo con terrenos):

Grh14988=1-971-0-0-256-256-Arbol

<a href="http://www.aomistico.com.ar/modules/tut" class="postlink" rel="nofollow" onClick="window.open(this.href);return false;">http://www.aomistico.com.ar/modules/tut</a> ... /Arbol.GIF

Indexacion de Hechizo: (Graficos primero)

<a href="http://www.aomistico.com.ar/modules/tut" class="postlink" rel="nofollow" onClick="window.open(this.href);return false;">http://www.aomistico.com.ar/modules/tut</a> ... /Fuego.GIF

‘Flamas, incineracion
Grh276=1-841-0-0-48-78-(Flamas)
Grh277=1-842-0-0-48-78-(Flamas)
Grh278=1-843-0-0-48-78-(Flamas)
Grh279=1-844-0-0-48-78-(Flamas)
Grh280=1-845-0-0-48-78-(Flamas)
Grh281=1-846-0-0-48-78-(Flamas)
Grh282=1-847-0-0-48-78-(Flamas)
Grh283=1-848-0-0-48-78-(Flamas)

Grh284=8-276-277-278-279-280-281-282-283-1

Nota: el tamaño de cada grafico es de 48 x 78, y el numero de grafico cambia por cada linea ya que son diferentes graficos por cada frame. El Grh284 es la animación de este hechizo.
1.4 Utilizando el GeneradorBD.

El GeneradorBD (Generador de Base de Datos) es el ultimo paso dentro de la preparación de un grafico para ser utilizado. Después de esto, nos falta solo Encodearlo, (proximo tema) y hacerle la llamada desde el Servidor. El GeneradorBD es un archivo .exe que lo que hace es convertir nuestros 7 archivos de texto de indexacion, en uno solo .IND escrito en codigo binario. Lo unico que hacemos nosotros, es abrir este exe, presionar Generar! Y esperar. Si ven que deja de mostrar el proceso (por ejemplo, se traba en el numero 5489/15000) no se preocupen, el programa sigue funcionando, solo tenemos que quedarnos hasta que aparezca el cartel de Listo!
Una vez que el GeneradorBD haya terminado, nos da de resultado un archivo llamado Graficos.ind que ira a la carpeta INIT del Argentum.


2.0 Encode, conceptos básicos.

El encode, se encuentra dentro de la carpeta [Config] del codigo fuente de AO. Lo que hace esta utilidad, es crear los cuerpos o efectos de los graficos indexados anteriormente. Para eso nos dirijimos a la carpeta Encode, donde encontraremos los siguientes items:

ARMAS.dat .......................... Aquí escribiremos el encode de los movimientos de las Armas.

Body.dat .......................... el mas importante, aca se encuentran los cuerpos, armaduras, ropas npcs, y npcs hostiles del juego.

Cascos.dat ....................... Aquí pondremos los cascos.

Fx.dat................................. Aca escribiremos los numeros de FX de los efectos especiales.

Grh.dat.............................. ¿? No lo toquen por las dudas, esta encriptado y no se puede leer lo que contiene.

Head.dat............................ Aquí se encuentran las cabezas.

Mapas.dat......................... 'En este archivo se configura si se debe mostrar las lluvias en los distintos mapas. Lluvia=1 se muestra, Lluvia=2 no se muestra.

TIPS.dat........................... Aca se encuentran los TIPS que da el cliente al comenzar el juego, se refiere a los consejos de la ventanita gris que aparece.


2.1 Encode, cuerpos, armas, armaduras, ropas, npcs.

En este paso lo que vamos a hacer es darle un numero de cuerpo a los graficos indexados dentro de el Grh2.txt (que eran armaduras, etc).
NOTA: Si se fijan, en cualquier server, los DIOSES tienen la habilidad de transformarse en distintas criaturas, por lo que usan la llamada /mod nick BODY numero

Empezemos por las armaduras, ropas, cuerpos, npcs, y npcs hostiles, para esto necesitaremos que habran el archivo Body.dat con el Bloq de notas.

Veran lo siguiente:
[INIT]
NumBodies=246

Esto es la cantidad de cuerpos que tiene el servidor, al agregar un cuerpo, agregamos un numero.
Agreguemos al final el cuerpo de nuestra armadura del caos Guerreros plateada y el demonio Gigante. Presten atención:

[Body161] 'Caos Guerres Plateada
Walk1=14555
Walk2=14557
Walk3=14554
Walk4=14556
HeadOffsetY=-38
HeadOffsetX=0
Aca aparecen un par de cosas nuevas, por ejemplo, que es el Walk1?!?!!
Los Walk significan las direcciones en las cuales camina el cuerpo, si se fijan en los numeros, no estan ordenados, si no que mas bien estan mezclados. Esto es porque en la animación de nuestro Grh2.txt (mientras indexábamos) el orden de direcciones era Sur, norte, oeste y este, mientras que en el encode, el orden cambia a Norte, Este, sur, oeste. La segunda cosa nueva es el HeadOffsetY y HeadOffsetX. Estas dos lineas significan donde apareceran las cabezas sobre las armaduras. En el caso de armaduras de Hombres, elfos, elfos oscuros, los valores son:

HeadOffsetY=-38
HeadOffsetX=0

Mientras que en Enanos y Gnomos los valores son:

HeadOffsetY=-28
HeadOffsetX=0
En cambio, en los NPCS Hostiles, no existen el Head offset de ninguna clase, Ni X ni Y, ya que los mismos no tienen cabeza separada, sino que la cabeza esta incluida dentro del mismo grafico. Obseven:

[Body170] 'Demonio Gigante
Walk1=14835
Walk2=14836
Walk3=14834
Walk4=14837

El numero de BODY, en la parte superior, es el que pondremos en el OBJ.dat (o npcs.dat si es un npc) en la parte de BodyNro.

En cuanto a Armas, tendremos que abrir el Armas.dat y agregar un numero mas en donde encontremos el Numarmas: (esto solo si queremos agregar un arma mas, si solo lo queremos ver, no lo cambien)
Les muestro ahora un ejemplo:



'Dos Filos Aclaración: Dir1 a Dir4 es lo mismo que
[ARMA10] decir Walk1, pero para las armas.
Dir1=14347
Dir2=14349
Dir3=14346
DIr4=14348


2.2 Encode, efectos especiales.

En este caso, escribiremos dentro del Fx.dat. Tambien observaremos en la parte superior una linea de NumFx: que representa la cantidad de Fxs en total.

Agreguemos al fondo entonces, el encode de nuestro hechizo de flamas, incineración:

[FX16] ' Flamas
Animacion=284
offsetx=0
offsety=0

En la parte de animación, escribiremos el numero de animación del hechizo de Flamas, el cual se encuentra en el Grh6.txt. En cuanto al offsetx y offsety es para setar la posición en la que aparecera la animación sobre el usuario o objeto target.


2.3 Encode, cabezas y cascos.

Supongo que con lo que vimos de Encode hasta ahora no necesitaran mucha explicación =P
Igualmente, les dejo un ejemplo de cada uno para que vean:
[Head1]
Head1=3003
Head2=3001
Head3=3000
Head4=3002

[CASCO7]'Casco Elite
Head1=14945
Head2=14943
Head3=14942
Head4=14944


2.4 Utilizando el Encode.exe

Ya casi terminamos con el Encode! Un solo paso mas!!!
Dentro de la carpeta [Config] encontraran el archivo Encoder.exe, abranlo. Veran que tiene varios botoncitos =P, aprieten todos ellos, y cierren el programa. Como habran visto, hay otra carpeta mas, llamada INIT, ahí es donde aparecen nuestros archivos ya encodeados!! Solo tienen que copiarlos y pegarlos en la carpeta INIT de su Argentum
 
Estado
Cerrado para nuevas respuestas.
Arriba