Registrarse

NDS | Tema recopilatorio y guías

Estado
Cerrado para nuevas respuestas.
EDIT 25/03/2013: Tengo el placer de comunicar, tras dos largos años de procrastinación (también conocida como pereza o "tocadura de huevos"...) a los que no tenía planeado sobrevivir, pues como muchos sabréis el apocalipsis estaba planeado para el final del pasado año, que vuelvo a editar este tema.
No es que yo haya hecho algo, me limito a traer novedades. Con la llegada del SDSME (Spiky's DS Map Editor) después del editor de Link&Zelda, se permiten una serie de cosas que hace dos años yo y toda la scene dedicada a la edición de ROMs en NDS creíamos impensables:

  • Edición del cabezal (que ya habíamos casi logrado)
  • Edición de mapas
  • Edición de matrices (pero qué demonios será eso?)
  • Edición de texto
  • Edición y visualización de eventos y scripts (sobre la cual habíamos
  • especulado)
  • Edición de Pkmn salvajes (había conjeturas)
  • Edición de entrenadores

Por lo tanto, mis manuales (que son míos es un decir, yo sólo los he pasado a texto) se llenan de polvo y pasan de ser lo último de lo último a una masa de bits inservible. Igualmente, aquí tenéis lo que queda de ellos:

¿Alguien dijo que no se había logrado nada en NDS hasta ahora? ¿Quién dijo que los editores más complejos están lejos de alcance? Porque yo creo que los tenemos aquí. Además tengo una guia para los que se interesen en el NDS hacking y cómo aportar el granito de arena que falta.


· Extraer archivos NDS (EOL) ·
Aquí un interesante tutorial (gracias a Elotrolado) sobre la extracción de archivos .nds y así poder ver la estructura de archivos.

1) Descarga el NDSTool desde AQUÍ.
Acto seguido, extraelo y mueve la ROM q desees extraer en el mismo directorio donde se encuentra el archivo ndstool.exe.



2) Abre el Command Prompt (también llamado Consola, Símbolo del Sistema o CMD) desde Inicio > Ejecutar > cmd.
Ahora simplemente navega hasta el directorio donde esté guardado el ndstool.exe y tu ROM y pega el siguiente código y DALE AL ENTER.

Código:
ndstool -x nombreRom.nds -9 arm9.bin -7 arm7.bin -y9 y9.bin -y7 y7.bin -d data -y overlay -t banner.bin -h header.bin
(DONDE nombreRom.nds es el nombre de tu ROM)



3) Bueno, ahora solo tienes q ir a la carpeta de ndstool y ahí verás los archivos extraídos.


· Usando kiwi.ds ·
Otro tutorial donde os explicaré en pocos pasos cómo utilizar el programa de extracción de archivos y subcarpetas kiwi.ds

Descarga: AQUÍ

1) Abrimos el kiwi.ds.exe y encontraremos una ventana pequeña. Pulsamos en el icono de ABRIR (esa carpeta abierta amarilla) y seleccionamos la ROM q queramos (en mi caso, Pokemon Soul Silver SPANISH).
Aquí abajo podéis ver un poco las principales funciones.


2) ¿Q hacer? Pues sencillamente puedes echar una ojeada o investigar detalladamente con un editor de hex.

· Investigando con DeSmuME ·

1) Descarga el DeSmuME de su página oficial

2) Ahora abre tu ROM y dale a "Tools > "View memory". Se abrirá algo como lo de abajo. Puedes probar a ver qué pasa cuando pulsas un botón o activas un interruptor de evento y ver qué ocurre en la CPU.


· Logiciels (software) de hacking NDS (D/P/Pt, HG/SS y B/W) ·
Sin más demora ni descripciones:

Link AQUÍ

· Investigaciones sobre el sistema de archivos JAPONÉS (PokéCommunity) ·


Los que contienen el símbolo * significa que son los mismos narc (sistema de archivos comprimidos para NDS) que los del Pokemon Platinum (JAP).

Código:
 0
        0-
        1-
        2-
        3-chillidos*
        4-sprites pokemon de batalla
             -5 tiles
        5-
        6-backsprites de trainers
        7-
        8-
        9-
    1
        0-
        1-
        2-scripts
        3-scr_msg*
        4-
        5-
        6-
        7-
        8-iconos de ítems
        9-
    2
        0-iconos de Pokémons
        1-
        2-wechar*
        3-wepltt*
        4-wecell*
        5-wecellanim*
        6-imageclip*
        7-message file
        8-underg_radar*
        9-
    3
        0-
        1-namein*
        2-
        3-
        4-evo*
        5-fontoam*
        6-
        7-
        8-
        9-pst_gra*
    4
        0-bm_field*
        1-
        2-
        3-
        4-
        5-ugeffect_obj_graphic*
        6-start screen graphics
        7-
        8-ug_trap*
        9-
    5
        0-ug_fossil*
        1-ntag_gra*
        2-tradelist*
        3-ug_parts*
        4-opening*
        5-
        6-
        7-
        8-
        9-
    6
        0-
        1-
        2-ug_anim*
        3-weather_sys*
        4-
        5-
        6-nuts_data*
        7-
        8-
        9-pokefoot*
    7
        0-
        1-
        2-
        3-
        4-
        5-
        6-
        7-
        8-oekaki*
        9-
    8
        0-
        1-
        2-
        3-fld_comact*
        4-
        5-
        6-contest_data*
        7-
        8-wifip2pmatch*
        9-demo_trade*
    9
        0-
        1-
        2-
        3-field_cutin*
        4-demo_climax*
        5-
        6-
        7-
        8-
        9-



Código:
 0
        0-
        1-
        2-
        3-
        4-vs_demo_gra*
        5-pokezukan*
        6-
        7-
        8-
        9-
    1
        0-
        1-pokeanm*
        2-
        3-
        4-alt form sprites
        5-egg_data*
        6-egg_demo_particle*
        7-
        8-
        9-shinka_demo_particle*
    2
        0-
        1-
        2-
        3-wifi_earth*
        4-ranking*
        5-ppark*
        6-
        7-
        8-btdtr*
        9-btdpm*
    3
        0-
        1-
        2-poke_yofs*
        3-
        4-
        5-poke_shadow*
        6-
        7-poke_shadow_ofx*
        8-
        9-fldtanime*
    4
        0-
        1-
        2-
        3-
        4-
        5-
        6-
        7-
        8-bm_room*
        9-
    5
        0-area graphics
        1-
        2-
        3-
        4-
        5-
        6-
        7-
        8-
        9-
    6
        0-
        1-
        2-
        3-
        4-
        5-
        6-
        7-
        8-
        9-
    7
        0-
        1-
        2-
        3-
        4-
        5-
        6-
        7-
        8-
        9-
    8
        0-
        1-d_test*
        2-
        3-
        4-
        5-pl_cb_data*
        6-wifi_unionobj*
        7-guru2*
        8-frontier_particle*
        9-bucket*
    9
        0-codein_gra*
        1-
        2-worldtimer*
        3-manene*
        4-dp_height*
        5-dp_height_o*
        6-lobby_news*
        7-email_gra*
        8-wlmngm_tool*
        9-balloon_gra*


Código:
    1
        0-wflby_map*
        1-wifi_lobby*
        2-pl_btdtr*
        3-pl_btdpm*
        4-pl_bsdpm*
        5-
        6-pokelist_particle*
        7-wifi_lobby_other*
        8-footprint_board*
        9-zukan_enc_platinum*
    2
        0-ballslow_data*
        1-pl_etc_particle*
        2-pms_aikotoba*
        3-
        4-
        5-
        6-
        7-
        8-poke_icon*
        9-kowaza*
    3
        0-
        1-
        2-
        3-
        4-
        5-
        6-
        7-
        8-
        9-
    4
        0-
        1-
        2-
        3-
        4-
        5-
        6-
        7-
        8-
        9-
    5
        0-
        1-
        2-
        3-
        4-
        5-
        6-
        7-
        8-
        9-
    6
        0-
        1-
        2-intro graphics
        3-


· (Vídeo) Intro al scripting B/W ·

Prometí más progresos, ¿no? Pues cuando me pasé por dicha web/comunidad, encontré a algunos NDS Hackers hispanos que habían avanzado en eso de los scripts. Como no voy a copiar sus manuales, voy a introducir un poco los scripts de B/W, sobretodo para los que no entienden nada xd



0A 00 00 00 22 00 00 00 3A 00 00 00 13 FD 2E 00
A6 00 47 05 74 00 3D 00 00 04 00 00 00 00 00 00
32 00 3E 00 30 00 2F 00 02 00 2E 00 A6 00 47 05
74 00 3D 00 00 04 01 00 00 00 00 00 32 00 3E 00
30 00 2F 00 02 00 2E 00 A6 00 47 05 74 00 3D 00
00 04 02 00 00 00 00 00 32 00 3E 00 30 00 2F 00
02 00 00 00


Azul: Offsets anteriores a los comandos (3 en este caso, puesto que cada offset son 4 bytes)
Rojo: Los dos bytes que separan los offsets de los comandos script.
Verde: Comandos (scripts, el End va incluido).



· [B/W] Algunos scripts sin permutar (gracias a Arc) ·

Mientras miraba ese tema de scripts, me dí cuenta de que no se hizo lo más útil: publicar los scripts en comandos sin permutar. No pondré descripciones, por ahora xd

Código:
	00 00	NaN
	02 00	End
	1C 00	Callstd
	1E 00	Goto
	23 00	Setflag
	2A 00	SetVar
	2E 00	Lockall
	2F 00	Releaseall
	32 00	WaitButton
	3C 00	Message
	3D 00	Message2
	3E 00	CloseMsgBox
	3F 00	CloseMsgBoxOnKeyPress
	47 00	YesNoBox
	4B 00	WaitButton
	64 00	ApplyMovement
	65 00	WaitMovement
	6B 00	AddPeople
	6C 00	RemovePeople
	74 00	Faceplayer
	85 00	TrainerBattle
	A6 00	Sound
	A9 00	Fanfare
	AA 00	WaitFanfare
	AB 00	PlayCry
	AC 00	WaitCry
	B3 00	FadeScreen
	B4 00	WaitFade
	0C 01	GivePokemon
	0E 01	GivePokemon2
	0F 01	GiveEgg
	78 01	WildBattle

¿Para qué este tema, entonces? Bueno, antes que nada para que la gente lo vea y me devuelvan las más de 100 gracias que tuvo el hilo en origen y así devolverme prestigio. Ok, no.

Lo cierto es que vi un tema escrito por Trifindo y se despertó mi nostalgia. Gracias a eso me doy cuenta de que he aprovechado la oportunidad de dejar algún tipo de huella, por muy ínfima que sea, en este foro y colaborar de algún tipo en el avance de este "hobby de geeks" que es el ROM hacking, por lo que os agradezco a todos los que habéis leído este tema en alguna ocasión xD.

Dicho lo dicho, me como un bicho, y traeré más cosas pronto, como algún tutorial o explicación sobre lo QUÉ ES EXACTAMENTE el SDSME, o algo parecido para que sepáis que dentro de esta cabeza hay un genio trabajando, o algo asi.

Un saludo a todos, y paz.
 
Respuesta: ¿Alguien dijo NDS? Tema recopilatorio + guias

Edición, día 25 de Marzo del año 2013.
^Leer post principal xD.
 

Xabier2012

Usuario mítico
Respuesta: ¿Alguien dijo NDS? Tema recopilatorio + guias

¡Que gran trabajo!
La evolución del hacking en nds da muchos esperanzas.
Cada vez hay más posibilidades y va siendo un poco menos difícil.
Buen aporte.

~Un saludo.
 
Estado
Cerrado para nuevas respuestas.
Arriba