• Our software update is now concluded. You will need to reset your password to log in. In order to do this, you will have to click "Log in" in the top right corner and then "Forgot your password?".
  • Forum moderator applications are now open! Click here for details.
  • Welcome to PokéCommunity! Register now and join one of the best fan communities on the 'net to talk Pokémon and more! We are not affiliated with The Pokémon Company or Nintendo.

Tool: Nintendo Pokemon Rom Editor

Status
Not open for further replies.

Platinum Lucario

The Legendary Master of [color=#D8D48C]Light[/colo
1,607
Posts
16
Years
Oh yes, didn't someone also say that the music for each map is stored in the ARM9 binary, like the moves contained in the TMs and HMs?

It'll be interesting to see something in which changes the ID of the song that is played for the map, although I'm also thinking it could also be possible to include the STRM IDs as well, seeing as the B2/W2 uses a STRM for the title screen.

Does anyone know how to find the music IDs in the ARM9 binary, so I can change the songs for each map?
 

Kaphotics

♥ Quick Claw Guillotine ♥
22
Posts
12
Years
  • Seen Oct 29, 2018
^ not as far as I'm aware. pichu already hinted at it when he posted the image of the map associations. The ambient music IDs used at certain locations are determined from the zone data narc (a/0/1/2, both b1w1 & b2w2) at 0x0C-0x13, 4 words for spring/summer/autumn/winter.

b2w2 text file a/0/0/2 file 366 has the list of song names -> ingame hex... 0000-096F, I have a list of the correlation here for B2W2; it's the internal names. I've been using another for BW1 which users have named songs; the two lists are different between games (new music).

You can use Lua scripts to see the active zone data for a certain location if you're using an emulator.

uSbDT.png


If you change certain ones they may or may not work, it depends on the location (and method of map change). There's another way the game associates music to map in addition to the zone data.
 
Last edited:
168
Posts
11
Years
  • Seen Oct 10, 2013
When i open a nsbmd file from pokemon diamond its just empty under the object and movement tab.
 

Platinum Lucario

The Legendary Master of [color=#D8D48C]Light[/colo
1,607
Posts
16
Years
Hm... I've imported a map into Black 2 in order to replace Aspertia City with Littleroot Town as a test for my ROM hack. Now I'm wondering... how come doesn't the map appear at all?

mapissuebw2.png


I'm rather a beginner to importing maps into Nintendo DS ROMs. Do you know what I've done wrong here? The map that I've just imported into the ROM comes up with an error in NPRE but doesn't display at all while playing the ROM. I must've done something wrong, what could it be?
 

Spiky-Eared Pichu

NDS Hacker/Researcher
257
Posts
13
Years
  • Seen Oct 2, 2019
Hm... I've imported a map into Black 2 in order to replace Aspertia City with Littleroot Town as a test for my ROM hack. Now I'm wondering... how come doesn't the map appear at all?

mapissuebw2.png


I'm rather a beginner to importing maps into Nintendo DS ROMs. Do you know what I've done wrong here? The map that I've just imported into the ROM comes up with an error in NPRE but doesn't display at all while playing the ROM. I must've done something wrong, what could it be?

I'd try these:

  • Make sure all the faces are supported geometry by NITRO-Plugins
  • Set the exporting scale to 64.0000
  • Make sure you convert the .imd to .nsbmd using the -emdl option in g3dcvtr
  • I don't know how it works for BWB2W2 maps, but if there's a section size written in the map file, edit it to match with that of the new model
When I imported my first map, I had problems with scale. The map was tiny, appearing only as a single pixel. So I'd rather take a look at the scale thing, because it's important.
 

Platinum Lucario

The Legendary Master of [color=#D8D48C]Light[/colo
1,607
Posts
16
Years
How can i edit the .obj map files from pokemon diamond??

You can edit the .obj files using either Discreet 3ds Max 6 using the OBJtoMax plugin, you can use Maya, or you can also edit .obj files in Blender too.

To export NSBMD models as .obj, you'll need MKDS Course Modifier, which can be downloaded in Team Fail's tutorial.
 

Platinum Lucario

The Legendary Master of [color=#D8D48C]Light[/colo
1,607
Posts
16
Years
I've currently written up a guide on how to edit maps in Pokémon Black/White/Black 2/White 2 (currently waiting approval), which will indeed help people new to NPRE on how to change the map model in Generation 5.

Oh and just to also let you know pichu2000, you could always use the model viewer from MKDS Course Modifier. It is way better than PG4Map, it properly positions the camera when viewing the 3D model, as well as properly rendering all the textures.

Oh and I was also wondering... do you know where the headers for the weather, music and other stuff for B/W/B2/W2? 'Cause I've had a bit of trouble looking around for it, do you know how to find those things? 'Cause I'm a bit hopeless in finding them. lol
 

Platinum Lucario

The Legendary Master of [color=#D8D48C]Light[/colo
1,607
Posts
16
Years
Awsome PokemonShinySilver Are you able to map Gen 5 now??

Well yes, of course. We can already edit Generation 5 now, ever since the day NPRE had support for importing and exporting maps, which at that time I was clueless about editing NSBMD models. It was not until very recently I learned how to export and import maps into NDS ROMs. ^^

But having said that, we're always learning something new everyday. When we do, we always post tutorials to educate others on how to edit stuff, as long as there isn't another thread already there. ;)

Wait, hang on. I just read a post from about a month ago that said about the music data and weather are contained in the zone_event.narc, which is in a/0/1/2 in both B/W and B2/W2. Aw, I've completely forgotten that, just shows that I stayed up all night typing up the tutorial which is bound to appear soon in the Tutorials section. xD

 
168
Posts
11
Years
  • Seen Oct 10, 2013
Well yes, of course. We can already edit Generation 5 now, ever since the day NPRE had support for importing and exporting maps, which at that time I was clueless about editing NSBMD models. It was not until very recently I learned how to export and import maps into NDS ROMs. ^^

But having said that, we're always learning something new everyday. When we do, we always post tutorials to educate others on how to edit stuff, as long as there isn't another thread already there. ;)

Wait, hang on. I just read a post from about a month ago that said about the music data and weather are contained in the zone_event.narc, which is in a/0/1/2 in both B/W and B2/W2. Aw, I've completely forgotten that, just shows that I stayed up all night typing up the tutorial which is bound to appear soon in the Tutorials section. xD


I cant watch the video why??
 
168
Posts
11
Years
  • Seen Oct 10, 2013
It wasn't fully uploaded at the time. But now it is.

This video really will show what NPRE can actually do to change map models and stuff.

yup but there is no house in the map. And movement is skrewed. But its so awsome you made this man you rock.
 
153
Posts
18
Years
  • Seen Jan 14, 2016
Hi, people!
Sorry for the lack of updates, but UNI this year is very difficult and I have almost no time to work on tool. But I hope to find it!
Now, a question about script:
I'm working on a better script viewer (to help people to have a more meaningful representation of what a script should do) and I'm focusing to trasform old script language into in a more "programming-like" language.
An example. This is a real script of DP ROM.
It is the actual NPRE's view

=== Script 3 ===

Offset: 68 Fanfare 1500
Offset: 72 LockAll
Offset: 74 FacePlayer
Offset: 76 StoreFlag 165
Offset: 80 If EQUAL Function 0 (98 )
Offset: 87 Message2 3 = ' Sembra che il Capopalestra Fannie/nnon sia da queste parti./rEh! Avrà saputo che bazzico nei/ndintorni e se la sarà data a gambe!/0 '
Offset: 90 WaitButton
Offset: 92 CloseMessageKeyPress
Offset: 94 ReleaseAll
Offset: 96 End

=== Function0===

Offset: 98 Message2 4 = ' Già, quindi il Capopalestra è tornato/ne l'ho sfidato./r... Ci ha polverizzato. Ora devo/nrimettere in sesto tutta la squadra.../0 '
Offset: 101 WaitButton
Offset: 103 CloseMessageKeyPress
Offset: 105 ReleaseAll
Offset: 107 End

Now, my idea is to remove all the "Function call" and operate on each command to make it meaningful.
The new script should appear like this:


=== Script 3 ===

Fanfare( MUSIC_ID 1500);
LockAll();
FacePlayer();
If( FLAG 165 == TRUE)
{
Message2( MESSAGE_ID 4 = Già, quindi il Capopalestra è tornato/ne l'ho sfidato./r... Ci ha polverizzato. Ora devo/nrimettere in sesto tutta la squadra.../0 );
WaitButton();
CloseMessageKeyPress();
ReleaseAll();
End();
}
Message2( MESSAGE_ID 3 = Sembra che il Capopalestra Fannie/nnon sia da queste parti./rEh! Avrà saputo che bazzico nei/ndintorni e se la sarà data a gambe!/0 );
WaitButton();
CloseMessageKeyPress();
ReleaseAll();
End();

Now, It's a good idea? Do you prefer the old view or do you like the new?
If you prefer the new, this implies a bunch of new work (I've almost done 30%) to make the new parser.
If you don't like, I don't spend my little time on this feature and I'm focuzing on other.
So, please tell me your opinion!
 
58
Posts
11
Years
  • Seen Mar 4, 2024
I would suggest making it more like gen 2 scripting. Or maybe working off of gen 2 and making it even more simple. Maybe even have and advanced view for people that want to see how the script would actually look like and then have a simple view button for newbies. That would be the best way about going to do things. Do I make any sense?
 
153
Posts
18
Years
  • Seen Jan 14, 2016
I would suggest making it more like gen 2 scripting. Or maybe working off of gen 2 and making it even more simple. Maybe even have and advanced view for people that want to see how the script would actually look like and then have a simple view button for newbies. That would be the best way about going to do things. Do I make any sense?

There's a limit on simplify the script. We cannot remove variables, for example, that is the basic core of the new mechanism.
 
Status
Not open for further replies.
Back
Top