Author Id: 15014 Author Name: Cheve_X Post Content: Haber, que hago una traduccion by me xD .text .align 2 .thumb .thumb_func .global mugshothackone main: cmp r0, #0x87 beq there cmp r0, #0x88 beq there ldr r4, ramoffset ldrh r4, [r4, #0x0] lsl r5, r4, #0x2 add r5, r4, r5 lsl r4, r5, #0x3 ldr r5, place ldr r5, [r5, #0x0] add r0, r4, r5 ldrb r0, [r0, #0x3] there: add r4, r0, #0x0 add r5, r1, #0x0 add r6, r2, #0x0 mov r9, r3 ldr r7, [sp, #0x34] ldr r0, return bx r0 .align place: .word 0x08044028 ramoffset: .word 0x020386AE return: .word 0x0808386D Para insertarla: Ésta rutina la pasas a Hex y la compilas en un offset libre que termine en 0, 4, 8 o C. Vas a 0x83862 y reemplazas lo que hay con ésto 01 4C 20 47 00 00 XX XX XX 08 donde XX XX XX es donde insertaste la rutina + 1 (Es un Pointer, asi que tienes que darlo vuelta) (Ej: insertaste la rutina en 0x954F30 pues anotas 31 4F 95 en las XX XX XX) Ésta rutina lee qué sprite es el del trainer que vas a combatir, y se lo manda a la rutina original que lo carga desde allí. También necesitarás la siguiente rutina.Ésta rutina lee el Script del TrainerBattle, un byte de éste, que le dice si debe o no cargar el Mugshot. .text .align 2 .thumb .thumb_func .global mugshothacktwo main: ldrb r5, [r4, #0x3] lsl r5, r5, #0x18 lsr r5, r5, #0x18 cmp r5, #0x0 beq normalchecks mov r1, #0x5A ldr r5, returnone bx r5 normalchecks: cmp r1, #0x57 bne later add r1, r2, #0x0 mov r0, #0xCD ldr r5, returntwo bx r5 later: ldr r5, returnone bx r5 .align returntwo: .word 0x0807FFA5 returnone: .word 0x08080009 Donde Insertarla: Ésta rutina la pasas a Hex y la compilas en un offset libre que termine en 0, 4, 8 o C. Ve a 0x7FF90, y reemplaza lo que está ahí con lo siguiente: 00 4A 10 47 XX XX XX 08 donde XX XX XX es donde insertaste la rutina + 1 (Es un Pointer, asi que tienes que darlo vuelta) (Ej: insertaste la rutina en 0x954F30 pues anotas 31 4F 95 en las XX XX XX) Éste codigo simplemente lee el Script del trainerbattle para juzgar si debe o no cargar el Mugshot. Si el byte cargado es distinto de 0, cargará el mugshot. Y la parte final de código, que nos permite cargar distintas paletas: .text .align 2 .thumb .thumb_func .global mugshotpallethack main: ldr r1, ramoffset ldrh r1, [r1, #0x0] lsl r0, r1, #0x2 add r0, r0, r1 lsl r1, r0, #0x3 ldr r0, trainertable ldr r0, [r0, #0x0] add r1, r0, r1 ldrb r1, [r1, #0x1] cmp r1, #0x5A beq oldway cmp r1, #0x57 beq oldway ldr r1, ramoffset ldrb r1, [r1, #0x3] sub r1, #0x1 lsl r1, r1, #0x2 ldr r0, table2 add r1, r1, r0 ldr r0, [r1, #0x0] b back oldway: ldr r1, table mov r2, r8 mov r3, #0x26 ldrh r0, [r2, r3] lsl r0, r0, #0x2 add r0, r0, r1 ldr r0, [r0, #0x0] back: ldr r1, return bx r1 .align ramoffset: .word 0x020386AE trainertable: .word 0x08044028 table: .word 0x083FA740 table2: .word 0x08FFFFFF return: .word 0x080D28D5 Donde Insertarla: Ésta rutina la pasas a Hex y la compilas en un offset libre que termine en 0, 4, 8 o C. Ve a 0xD28C6, y reemplaza lo que está ahí con lo siguiente: 01 49 08 47 00 00 XX XX XX 08 donde XX XX XX es donde insertaste la rutina + 1 (Es un Pointer, asi que tienes que darlo vuelta) (Ej: insertaste la rutina en 0x954F30 pues anotas 31 4F 95 en las XX XX XX) Ésta rutina, lee el Byte dado por el Script del Trainerbattle, para determinar que paleta de fondo cargar para el Mugshot. La "table2: .word 0x08FFFFFF" es donde estará la nueva tabla que contendrá los pointers a las nuevas paletas que puedes crear para los Mugshots. Para entender como funcionan las paletas de éstos, puedes ver una de las de los mughshots de Fire red llendo a la direccion 0x3FA6A0 en APE. Esto te mostrará como están construidas las paletas. NO tienes que crear una paleta para hombre y una para mujer, el juego se dá cuenta cual es necesaria, y pega los colores relevantes al final de la paleta que creaste Tambien necesitas ir a 0x801F5 y cambiar el byte a 0x78. '--- Aquí termina la traducción... Lo más dificil de entender, es que en la ultima rutina, cerca del final donde pone: table2: .word 0x08FFFFFF debes reemplazar esas FFFFFF con una dirección en donde quieres que estén las direcciones a las paletas que se usarán para los mugshots... PD: No me leí el tuto en español xD Edito: ¿Que problemas tienes al Compilarla?