WiZaRD
Puntuación de reacción
76

Mensajes de perfil Última actividad Publicaciones Acerca

  • JAJA si, soy Alien.

    Insisto, no intentes leer nada aun, mejor temina la rutina de pickup con crystal y de a poco entenderas mas y mas.
    Cada uno de esos numeros ocupa un byte, por lo que no puedes poner dos numeros en la misma direccion. Por tanto, sin comas y cada numero en una linea: 0A en 7F14, 05 en 7F15, 0F en 7F16...

    No es una rutina, sino una tabla, por tanto sin ret. La instrucción ret solo se utiliza para retornar de rutinas. Las rutinas tienen instrucciones que se ejecutan, las tablas solo tienen datos que se leen.
    A que carpeta del drop es la que tienes acceso? Toda la info de las habilidades esta en Guias, pero de la carpeta "hack sin nada que hacer", pero creo que a esa tu no tienes acceso.

    De cualquier forma, todo lo que he hecho de habilidades esta aqui:

    https://www.dropbox.com/s/hyxfr974prn1exb/Documentos%20Habilidades.zip?dl=0

    La verdad no recomiendo que intentes entender todo ahorita, poco a poco podras leer las rutinas.

    PD: Son como 100 archivos de notepad con mucha informacion XD
    En la herramienta que yo uso puedes compilar tal cual esta, ya que ignora todo lo que hay despues del "//". Si falla, es por que tienes que agrandar la ventana para que el texto se ponga gris.
    Yo uso GBAsmEdit, es mas primitivo pero ya lo domino bien. Ademas de que hago mis rutinas con "labels" por que se me hace muy enfadoso hacerlos con "jr F7".

    Debes ir poniendo mas etiquetas a tus rutinas para no perderte, mira, asi se ve tu rutina si compilaras con la misma herraimenta que yo.

    https://www.dropbox.com/s/lth75h9mdpz2gd7/Pickup%20Wizard.txt?dl=0

    El hecho de hacer...

    ld a,[$DA22]//PartyCount
    inc a
    ld d,a

    ... es como reemplazar tu ld d,$6, de esta manera toma el numero real de pokemon en tu party (1,2,3,etc..) y los pone en d.
    En la linea que tienes subrayada cambiala por ld hl, 7F14, que es la direccion donde va a empezar la tabla. Despues, a partir de 7F14 empieza a escribir los datos de la tabla (0A, 05...)
    Se supone que la direccion en hl ya la traes desde antes y no es necesario especificarla de nuevo, asi que necesitaria ver toda la rutina o no solo secciones de ella.

    Que programa te recomendo que usaras?
    Que estas haciendo?

    Cuando yo hago un codigo primero lo hago en bloc de notas y con etiquetas, para saber yo mismo de lo que se trata cada instruccion.

    Despues de analizarlo un poco veo que estas comprobando si X pokemon esta en tu equipo, de ser asi una rutina en $7EF7 se ejcuta.

    Esta todo bien, solo que yo te podria recomendar que en lugar de hacer ld a,6 lo hagas con el numero exacto de pokemons al momento de la rutina, pero venga, eso te lo explico luego ya que hay un dato en la ram que te dice cuantos pokemon llevas en tu party.

    Vas bien amiguo.
    Esto es lo que tengo de mi hack, comparalo en hex y con TLP y no creo que te sea dificil cambiarlo.

    $1BCE00 Graphics
    $A33D pallets

    $1bd600 ; Grapics Textbox
    Hijoles... pues creo que no tengo nada de informacion al respecto, pero todo esta en el tema de offsets utiles de aqui del foro, ahi viene donde se ubican los graficos y como haces que la fuente tenga color.

    Los graficos los cambie con TLP, pero pues siempre trabajo todo primero en paint.
    Estoy viendo que en jr nz, 7F03 me colé, cambia eso por jr nz, 7ED9.

    Si te fijas ahora, la instruccion call z tiene que ser call z, 7EF7, porque es desde donde vas a empezar a hacer la rutina de Pickup.

    Lo demas todo bien
    Me las invente, porque es imposible saberlas exactamente sin escribirlo en bgb. Por eso dije "pondrá por ejemplo".

    Ves que debajo de "Pickup" hay un ld a, (hl)? Quiero que apuntes la direccion (los 4 numeros hex despues de ROMF:) en la que esta esa instruccion en un papel, y sustituyas el call z, 0000 por call z, ???? donde ???? es esa direccion que apuntaste.

    Luego haces lo mismo para el ld hl, 0000, pero en este caso apuntas la dirección donde empieza tu tabla.
    ahora tienes que fijarte en donde se encuentra la linea en la que empieza la rutina de pickup (es decir el ld a, (hl), seguido de and a, seguido de ret z). En la linea del ld a, (hl) pondra por ejemplo ROMF:7EB5 o ROMF:7EC2 o lo que sea, entonces vas a donde pusistes call z, 0000 y lo cambias por call z, 7EB5 o por call z, 7EC2 o por el que pusiese.

    Haces lo mismo con ld hl, 0000. Buscas la direccion donde pusiste el primer 0A de la tabla, y si es por ejemplo 7ED8, pones ld hl, 7ED8.

    Sobre el pickup: y el TablaProbsItems: no tienes que hacer nada, tan solo es la etiqueta. Si bgb fuera capaz de compilar asm, entonces si podrias usar etiquetas, pero no se puede.

    Si no me dejo nada, ya deberia estar todo hecho, siempre y cuando no hayas cometido errores al escribirlo.
    He corregido un bug hacia el final del codigo. Me diste las probabilidades sobre 255 y algo no me cuadraba! Hay algun cambio a partir de la linea 36, no es mucho.

    ld hl, DA2A ld bc, 002F ld d, 6 ldi a, (hl) cp 13 jr z, 0A cp 14 jr z, 06 - Pastebin.com
  • Cargando…
  • Cargando…
  • Cargando…
Arriba