• 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: Spiky's DS Map Editor (NOW OPEN-SOURCE)

YORAMRW

8-bit producer & Pokémon GB music hacker
48
Posts
11
Years
Version 1.8.0 will introduce scripts and missing features in Gen V in the same manner as 1.7.0 did for Gen IV. Script editing won't be possible until 1.9.0, and for 2.0.0 I'm planning something huge :)

I have noticed that maps with curved tiles and rotating camera, like Castelia City, Gear Station and Skyarrow Bridge, haven't movement permissions. Maybe, there is a way to fix that. I assume that the move permissions on maps like these a programmed as events.
 

Master-Pixel

Fakemon Artist
41
Posts
12
Years
Hey, Spiky :)
Erm, I've been trying to use your tool, but to no avail - changing the model of a building doesn't seem to want to work for me, and the program pops up with this message:

Spoiler:


This is on all (U) Rom's (DP,Plt,HGSS,BW,BW2)
 

Spiky-Eared Pichu

NDS Hacker/Researcher
257
Posts
13
Years
  • Seen Oct 2, 2019
Hey, Spiky :)
Erm, I've been trying to use your tool, but to no avail - changing the model of a building doesn't seem to want to work for me, and the program pops up with this message:

This is on all (U) Rom's (DP,Plt,HGSS,BW,BW2)

I wasn't aware of that bug, so thank you very much. I've been able to fix it, and it'll be available for you in the next version. I have also fixed a really bad bug in the matrix editor that prevented matrices from saving correctly in all games. Yesterday I got BW scripts working 95% too, which only leaves me B2W2 scripts after finishing the BW ones :)
 

Master-Pixel

Fakemon Artist
41
Posts
12
Years
I wasn't aware of that bug, so thank you very much. I've been able to fix it, and it'll be available for you in the next version. I have also fixed a really bad bug in the matrix editor that prevented matrices from saving correctly in all games. Yesterday I got BW scripts working 95% too, which only leaves me B2W2 scripts after finishing the BW ones :)

Wow, that was quick!
Glad I could help.
Wish I knew I how to do half of the things that you do; it's incredible...

I was also going to ask; can theses games be put onto a flashcart? I just wondered due to them being hacked on the rom; rather then being unable to when making a game within Pokemon Essentials or the like.
 

Trifindo

POKEMON OMICRON CREATOR
45
Posts
12
Years
  • Seen Sep 10, 2014
Last edited:
168
Posts
11
Years
  • Seen Oct 10, 2013
Can anyone please tell me which is the best program to edit maps with i have tried sketchup and it was not so good
 

JokerBen

Director of Pokémon Nobelium
241
Posts
11
Years
  • Age 23
  • Seen Aug 29, 2023
Can you export tilesets? I am trying to make a tileset for RMXP.
 

Platinum Lucario

The Legendary Master of [color=#D8D48C]Light[/colo
1,607
Posts
16
Years
For some reason, I cannot choose to edit the Wild, Train, Text or Script Editor in my Black 2 ROM. Can somebody please help? Thanks!

This is because it's not yet possible for 5th generation ROMs yet, it is still currently under development and will be made possible in a later version.

If you really want to edit Wild Pokémon, Trainers or Text, there's other tools that have already been made for it, such as PPTXT. As for Script Editing, the only method as of now is to use LUA scripts to research by debugging values, then using a hex editor to change them, then inserting them back into the ROM, which is rather time consuming and requires alot of research into which values would the scripts do and so on. :P
 

Kaphotics

♥ Quick Claw Guillotine ♥
22
Posts
12
Years
  • Seen Oct 29, 2018
This is because it's not yet possible for 5th generation ROMs yet, it is still currently under development and will be made possible in a later version.

If you really want to edit Wild Pokémon, Trainers or Text, there's other tools that have already been made for it, such as PPTXT. As for Script Editing, the only method as of now is to use LUA scripts to research by debugging values, then using a hex editor to change them, then inserting them back into the ROM, which is rather time consuming and requires alot of research into which values would the scripts do and so on. :P

I'm pretty much past the point of needing Lua scripts to figure out what script commands do, the NPRE version I edited has pretty darn good reading capability :) (parsing case commands here). Most of the remaining commands and their function can usually be determined by just looking at what the script does in game.

I actually made a Lua script to replace the active script file in-game without having to stop and edit the ROM... that's how both of my two event videos were made. Lua script is here. Basically it just overwrites the memory with a string of hex, for a certain script #.

What sucks is that the Japanese version and International versions have different command #'s (japanese has extra/less like Change Kata/Hiragana which causes #shifting).

@UltraNerdtendo64: in the mean time~
Pokemon ROM Changer (for Wild Pokemon) here with source available.
Kazo's BWTE (trainers) here, source code for one of my unofficial sub edits is here.
PPTXT (text editing) is here, source also available there.
Scripting is only possible with hex editing and just observing how it works with NPRE (I posted my NPRE version edited for B2W2 parsing here).
 

xalien95

Developer of Pokémon Omicron
76
Posts
13
Years
I've tried to add a new map in BW2, adding a new nsbmd model (with textures) in a/0/1/4.narc, but in SDSME there isn't.
Some help to let me do it? eheh
 

XxBestOnXx

NDS Hacker/ Youtube Graphic
8
Posts
11
Years
Guys i have a problem in SDSME 1.7.0
I open the rom and I edit it, later when i finished i save the rom and i put it in my r4i...
In r4i i start it but become the white screen!
I have try to start in a emulator for pc too but later the intro the game doesn't start!
I use Pokémon Heartgold
 

JokerBen

Director of Pokémon Nobelium
241
Posts
11
Years
  • Age 23
  • Seen Aug 29, 2023
Anyone wanna tell me why I get this? I get it whenever I open the ROM.

See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.ComponentModel.Win32Exception (0x80004005): The system cannot find the file specified
at System.Diagnostics.Process.StartWithShellExecuteEx(ProcessStartInfo startInfo)
at System.Diagnostics.Process.Start()
at WindowsFormsApplication1.Form1.openToolStripMenuItem_Click(Object sender, EventArgs e)
at System.Windows.Forms.ToolStripItem.RaiseEvent(Object key, EventArgs e)
at System.Windows.Forms.ToolStripMenuItem.OnClick(EventArgs e)
at System.Windows.Forms.ToolStripItem.HandleClick(EventArgs e)
at System.Windows.Forms.ToolStripItem.HandleMouseUp(MouseEventArgs e)
at System.Windows.Forms.ToolStripItem.FireEventInteractive(EventArgs e, ToolStripItemEventType met)
at System.Windows.Forms.ToolStripItem.FireEvent(EventArgs e, ToolStripItemEventType met)
at System.Windows.Forms.ToolStrip.OnMouseUp(MouseEventArgs mea)
at System.Windows.Forms.ToolStripDropDown.OnMouseUp(MouseEventArgs mea)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
at System.Windows.Forms.ToolStrip.WndProc(Message& m)
at System.Windows.Forms.ToolStripDropDown.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** Loaded Assemblies **************
mscorlib
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.296 (RTMGDR.030319-2900)
CodeBase: file:///c:/WINDOWS/Microsoft.NET/Framework/v4.0.30319/mscorlib.dll
----------------------------------------
SDSME
Assembly Version: 1.7.0.0
Win32 Version: 1.7.0.0
CodeBase: file:///C:/Documents%20and%20Settings/User/Desktop/Recorce%20and%20Tests/SDSME170/SDSME.exe
----------------------------------------
System.Windows.Forms
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.1002 built by: RTMGDR
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System.Drawing
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.1001 built by: RTMGDR
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.1001 built by: RTMGDR
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
Tao.Platform.Windows
Assembly Version: 1.0.0.5
Win32 Version: 1.0.0.5
CodeBase: file:///C:/Documents%20and%20Settings/User/Desktop/Recorce%20and%20Tests/SDSME170/Tao.Platform.Windows.DLL
----------------------------------------
System.Core
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.1 built by: RTMRel
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
Tao.OpenGl
Assembly Version: 2.1.0.12
Win32 Version: 2.1.0.12
CodeBase: file:///C:/Documents%20and%20Settings/User/Desktop/Recorce%20and%20Tests/SDSME170/Tao.OpenGl.DLL
----------------------------------------
HelixToolkit
Assembly Version: 2011.10.1.0
Win32 Version: 2011.10.1
CodeBase: file:///C:/Documents%20and%20Settings/User/Desktop/Recorce%20and%20Tests/SDSME170/HelixToolkit.DLL
----------------------------------------
PresentationCore
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.298 built by: RTMGDR
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_32/PresentationCore/v4.0_4.0.0.0__31bf3856ad364e35/PresentationCore.dll
----------------------------------------
WindowsBase
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.298 built by: RTMGDR
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/WindowsBase/v4.0_4.0.0.0__31bf3856ad364e35/WindowsBase.dll
----------------------------------------

************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.

For example:

<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>

When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.

I am running .NET Framwork 4 Client Profile
AND
.NET Framework 4 Extended
 

Michielleus

That random guy
52
Posts
11
Years
You've got the trainer class editor wrong.

I found this when trying to make new trainer classes- some of the sprites I already edited showed up pretty weird in your editor. This is because your editor doesn't actually edit the sprites; it edits the uncompressed (thus unused/trash) version.

Anyway, here's a tutorial by Kazowar on how to edit those sprites. It also has a header remover & such in the description.

I really like the option of adding classes- not having to overwrite one. I'd love to see this in Overworld sprites/Pokemon too eventually! (But you should probably do all the other things first :P)

Keep up the great work!
 
8
Posts
11
Years
Hello! First off I'd like to begin this rather lengthy post by thanking you for this most excellent tool you have developed. I've been using it for the past month on a rather large project, and as expected have come across some potential usability issues and a handful of subtle bugs.

On the topic of noticed bugs:

  • The map renderer displays a stretched frame the first time it loads. Switching to another map and back fixes this.
  • Selecting multiple models in 3D building view and clicking export only exports the first (perhaps make the list have a maximum of one selected item?)
  • Not sure if this one has been reported yet, but if the ROM is not in the working directory of SDSME, it will fail to load it (silently).
  • It encounters an unexpected error at times when viewing models. If I recall, something among the lines of a specific texture not existing or whatnot. If I allow the app to continue executing, it resumes normal operation.

And on that of feature requests:

  • You seem to be able to decide on which tileset to use for models: would it be possible to do the same for maps? That way it would be easier to view the map with its proper colours than guessing through at least a dozen tilesets.
  • The model viewer displays that a model has an animation, yet does not give the option of playing the animation.
  • Lack of flexible model support. It can export to WaveFront OBJ andNSBMD , yet neither are really suitable for animated models. NSBMD cannot be loaded by majority of model editors, and unless you were to have a separate OBJ file for each frame of an animated model (i.e. fountain), which would be nasty and lag-inducing, there is no (current) way to achieve this. Other formats, like 3D Max's .3ds or Collada support animation by (IIRC) vertex deltas per frame.
  • Adding onto my last point, its rather painful to attempt to export all models in a ROM for bulk editing. Perhaps an option to export to something other than the NDS building format in the "Export All" menu? I reckon it would be most efficient if it created a new folder for each model, as to avoid conflicts between texture file names.
  • If not, than at least storing "preferences" in a temporary file or a %appdata% entry containing last-used options. This would be useful in scenarios where multiple files need to be exported in something other than NSBMD, so that the user would not have to click on the dropdown to select an alternate option for every single model.
  • Also on the topic of 3D support, I noted a lack of movement capabilities of the model camera. You can move in and out, yes, but from then on its not a large deal to implement a fully movable camera (just a few glRotatef and glTranslatef OpenGL calls). A fully working example with source code can be found here. Yes, it is in Java, but then again Java and C# are much alike. More so when three-quarters of the code is just math and OGL calls.
Regardless, great piece of software! Keep it up!
 
Last edited:

WeavileCY

Weavile the Ninja of the Night
6
Posts
10
Years
Wow, thanks a lot! :) If it downloads successfully then I will try and make a Pokemon Emerald remake for DS! I love game editing! I will be sure to try and make it as authentic as possible - detail is key! I have a two week holiday to kill and I think that this will be a fun challenge, thanks Spikey!
 
Back
Top