PDA

View Full Version : JohtoMap - A Pokemon G/S Level Editor


Lin
September 21st, 2010, 05:43 AM
Note: I no longer work on this project. You can get the source code here: http://www.mediafire.com/?ax231k5r84uaos9 It was not optimized or as efficient as it could've been. Do not learn from it.

Welcome to the thread that has long since passed its expected posting. However, I decided I don't want to work on the editor much anymore, so rather than hold it off, I'll post it. It has been tested thoroughly and should be bug-free. If not, the credits lists my MSN (Or you can always post bugs here).

So what is JohtoMap? It is, in my opinion, the best level editor built for the Gold and Silver games to-date. It was developed in C# and uses the .NET Framework 2.0. Here are some of the main features:

Loads everything from the ROM
Displays sprites for people events, including applying palettes
Full tileset editor, which includes collision value, palette, and formation
Uses and allows editing of the proper roof and roof palette of a bank
Edits bank spritesets
Adding/Removal of any event at any time, without the need of a full rebuild like in Gold Map
Allows FULL editing of every type of event, including triggers
Incorporates the script editor idea like in AM
Edits map connections
Edits the display data for the world maps
Sorts maps by bank or by map name


Screenshots: All of them are old, but oh well.
http://img339.imageshack.us/img339/9210/johto14.png
http://img718.imageshack.us/img718/8355/johto17.png
http://img80.imageshack.us/img80/8192/johto15.png
Outdated:
http://img337.imageshack.us/img337/5666/johto20.png
FAR outdated, especially the map connection editor:
http://img30.imageshack.us/img30/8797/johto12.png

Doesn't look too shabby. Note that some of them are out of date, as you can read in bold. Anyway, here's some things I wanted to add but never got around to:

Editing of flight/map positions on the world map. I couldn't find the data for it
Map name editing. There's bound to be a text editor out there
Full wild Pokemon editing. I had originally had loading for grass and water Pokemon, but after seeing I missed stuff and had to redo it, I gave up, especially after seeing a wild Pokemon editor someone released recently somewhere, so... yeah.
Map bank swapping... Uuuh... >.>


So yeah, there's my bribe to get you to download it, which you can do here (Version 1.02): http://www.mediafire.com/?yu0qmo8zehh0ad1

Questions and Answers
Q: What is GBHL.DLL?
A: A DLL I made to make my ROM hacking life a lot easier. You need it to run JohtoMap.

Q: Why is the program so small?
A: Cause it's just code with a few images.

Q: How do I make my ROM not read-only?
A: (Windows) Right click on the file, click on Properties, and uncheck "Read-only".

Q: Why are map connections so confusing?
A: Because Game Freak hates us. I know the editor isn't the best, but it's better than doing them with a hex editor.

Q: What kind of ROM do I need?
A: A Pokemon Gold/Silver (U) or (E).

Q: After editing a map, my character disappears after stepping into it
A: Sometimes, such as in Route 29, if you delete atleast 2 people events, the asked will happen. This is due to the map's script depending on the people and since you deleted those people, well, it breaks. This can be fixed by normally just setting the Script Location in the Map Header to 0 (and having it formatted).

That's all. Hopefully this brings a new era to hacking these games. If not, well, it was the first level editor I made that didn't suck so it was fun in the process.

Updates
9/27/10
The ability to actually change the map's script location had been added. Before it wouldn't actually save.

6/28/11
Fixed a Map Header Cancel/OK bug. Added the option to edit something else in the connection editor, and added editing of the type of a person event. Also released the source code.

~Lin

dark_ho-oh
September 21st, 2010, 03:25 PM
So, This is sorta of like a Advanced-Map Editor for II Generation Games.

adhdguitar
September 21st, 2010, 04:57 PM
I love you.

Err... I mean, this is a great tool. The only downside is that noobs like me will be able to make Gen II hacks making the people who Hex Edit feel less special.

007manyo
September 21st, 2010, 08:11 PM
OMG I CAN HAZZ HAKKZ!!
...
umm...
thank you. as ADHD said, this could make it so much easier to hack gen 2.
^___________^
(widesmile!)
thankz,
~manyo

rosebunny
September 21st, 2010, 08:40 PM
I remember seeing this on Romhacking.net and wished it would be released it seems my wish came true
I really like the interface of this program by the way (simple and had a modern feeling)

shiny quagsire
September 21st, 2010, 10:00 PM
This is pretty nice. I never hacked gen II, but it looks pretty good :)

countryemo
September 21st, 2010, 11:24 PM
i never hacked Gen II games before, but looks awesome
is this better then goldmap? [i was wondering what it was called]
anyways ill give this a whirl

Team Fail
September 22nd, 2010, 01:16 AM
Ha. I came across this on Google once, and favourited the page. Guess I don't need to; It's on PC. :P I'll try it when I get to it.

miksy91
September 22nd, 2010, 04:59 AM
Superb !!!

Especially editing map connections will sure come in handy ;)
I tried it once (not like I was just going to stop there) but didn't make it.


Err... I mean, this is a great tool. The only downside is that noobs like me will be able to make Gen II hacks making the people who Hex Edit feel less special.
Well, it simplifies doing stuff but you still have to know how to use a hex editor, this is probably a good tool for editing events & scripts but there is more that you've to do to make a hack.

Kininja
September 22nd, 2010, 02:51 PM
How do you or Can you edit the amount of events like warps and people and triggers?

ggctuk
September 22nd, 2010, 08:38 PM
It doesn't seem like you can... yet. You can not edit Wild Pokemon data yet either.

countryemo
September 22nd, 2010, 08:55 PM
hm i tested this and goldmap, both have diff pals o.O
something i noticed in this is that you cant change map size

ggctuk
September 22nd, 2010, 09:07 PM
You can change map size. It's in Tools>Map Properties, it's under "Secondary" in the popup box.

countryemo
September 22nd, 2010, 09:09 PM
tried, it dosent work for me
ill be sure to check out what this thing can do though :)

ggctuk
September 22nd, 2010, 09:12 PM
Odd... it works for me. I resized Diglett's Tunnel with it.

Lin
September 22nd, 2010, 10:00 PM
Thanks for the feedback. I know about the wild Pokemon not being there, and don't count on them for a long time. As for the map size and event count, you can change both of those with extreme simplicity by going to Tools > Map Properties and change the map size by USING THE UP/DOWN BUTTONS on the width and height, and for reconstructing the events, click on the Edit button next to the Event Data. Also be sure to use the up/down boxes there.

Masterge77
September 22nd, 2010, 10:24 PM
The only thing that can make it more like AdvancedMap is to make it import and export tileset graphics.....

miksy91
September 23rd, 2010, 01:42 PM
"Editing of flight/map positions on the world map. I couldn't find the data for it"

0x15319 - Start of Flight Data (Hiro's Room)
[Map Bank][MapNo][X][Y]

I happened to found out this (and several other offsets) documented in GoldTweak.
I haven't checked how it continues from here, it might even be organized, or not :D


Soon, noobs will believe that I made flying data modifications to my new hack with this tool, oh well...

Nintendork15
September 25th, 2010, 02:44 PM
OMG this is so cool
I feel like making a Crystal Silver hack now :A

FOund out it doesnt do crystal
Im such a wetard

Melash
September 26th, 2010, 02:27 AM
After taking a long break, I see this when I come back. It seems very innovative, especially when older generation hacks are becoming more unheard of. This will definitely help newbies out, but the only problem I foresee is the lack of hex editing they will use. Nonetheless, great program, thank you for releasing it.

Lin
September 26th, 2010, 03:23 AM
Well, after reading feedback from more place than one, it looks like a lot of people who knew what they were doing were a little disappointed. I created this editor for two reasons:
1. I needed a project at the time, plus this was a big learning experience for me.
2. People, including myself, were stuck with Gold Map. It couldn't get the job done at all, and I'm no fan of doing things at a low level. I feel tools are supposed to be made so others don't have to go through your frustration. Even if this does mean there will be little/bad hacks being made because of this, it isn't something to get worked up about. It seemed Gameboy/Color hacking was dieing, and atleast this way some of the real games will get attention. So what if someone makes a low-effort hack with this? That just means don't play it. Those who actually know what they're doing will be the ones who make a new title worth looking at.

It also came to my attention that people think that those who have made good hacks worth looking at will feel less appreciated. Keep note that JohtoMap can only edit uncompressed things, and some not even very well (Like connections. The only way you can get proper values is by having experience with an emulator and memory viewing). It can't edit assembly, or compress and insert new graphics, and even if it could, so what? That just means more time can be spent actually creating new content, which is a win for everybody.

agentgeo
September 26th, 2010, 03:42 AM
Finally! This looks WAY better than goldmap! I mean, I couldn't even figure most of it out, especially the block editor. Thanks!

agentgeo
September 27th, 2010, 08:03 PM
The world map editor is a life-saver. Thanks again!

Lin
September 28th, 2010, 03:49 AM
Well, it's been updated. If you want to be able to change the map's script location, I'd recommend you download it.

QuilavaKing
September 28th, 2010, 03:52 AM
I've always wanted to try my hand at gen 2 mapping. Thanks for the tool!

ggctuk
September 28th, 2010, 07:55 AM
There are a few maps you have not yet added such as the prototype Safari Zone and Lake of Rage maps.

miksy91
September 28th, 2010, 10:53 AM
There are a few maps you have not yet added such as the prototype Safari Zone and Lake of Rage maps.
Does it really matter ?
I mean, if you want to edit those, you at least need to create events for them - and that's about the same as creating the whole map from scratch.

ggctuk
September 28th, 2010, 06:49 PM
No, it doesn't really matter but AM has complete listings of maps regardless of whether they are unused or not.

Lin
September 28th, 2010, 10:01 PM
There are a few maps you have not yet added such as the prototype Safari Zone and Lake of Rage maps.

Wrong. First off, the Safari Zone is there, in bank 3 (map 81). Second, I didn't "have not added yet" any maps; it's all automatic. Every map you see in the game is there. If you want to load a beta map, use the Load Map from Address feature.

IIMarckus
September 28th, 2010, 10:24 PM
No, it doesn't really matter but AM has complete listings of maps regardless of whether they are unused or not.The reason for that is because all the “beta” maps in the GBA games are complete enough for a map editor to include them by default. By contrast, the G/S beta maps consist only of block data, with no headers. This means that to display them, the editor would have to guess or hardcode: the size of the map the tileset for the map events scripts location on the world mapand more. This data just doesn’t exist for the beta maps (with the notable exception of the Safari Zone, which is why it does appear in most map editors). And because the maps don’t have headers, you can’t use them in your hack anyway.Well, after reading feedback from more place than one, it looks like a lot of people who knew what they were doing were a little disappointed. I created this editor for two reasons:
1. I needed a project at the time, plus this was a big learning experience for me…Cool. Now get back to work on your Zelda editor! :P

Do you have plans to release the source code?

LightOfTruth
September 30th, 2010, 04:50 PM
Glad to see this get made. I'm sick of GBA hacks all of the time :)

cooley
October 3rd, 2010, 12:28 PM
This, is amazing! Great job!

AmatuerHacker
October 7th, 2010, 05:15 PM
Mine's not working :( I know this will be a great tool :'( mine just says microsoft NET framework i dunno how to fix it tho :(

miksy91
October 7th, 2010, 05:55 PM
Here is a major bug you might want to fix - not sure if this happens for someone else :S

I don't know how this properly works but for example when I modify the events of Route 45, the route gets completely messed up.
No idea why it does that though...

EDIT:
Let's explain a little better :D
Even the change of Picture Number can affect the map in that way, and when done so, VBA gives you an error report of "wrong script pointer" ?
After that, the game freezes.

Also, it's not like I need the tool to change Picture Numbers of people but you should really fix it.

agentgeo
October 8th, 2010, 02:36 AM
Here is a major bug you might want to fix - not sure if this happens for someone esle :S

I don't know how this properly works but for example when I modify the events of Route 45, the route gets completely messed up.
No idea why it does that though...

Oh my gosh! Me too! It is really annoying. I've had to re-start a bunch.

Lin
October 8th, 2010, 05:20 AM
Here is a major bug you might want to fix - not sure if this happens for someone else :S

I don't know how this properly works but for example when I modify the events of Route 45, the route gets completely messed up.
No idea why it does that though...

EDIT:
Let's explain a little better :D
Even the change of Picture Number can affect the map in that way, and when done so, VBA gives you an error report of "wrong script pointer" ?
After that, the game freezes.

Also, it's not like I need the tool to change Picture Numbers of people but you should really fix it.

I'm not sure. It might be like another error where it's map-specific. Try resetting the map's script and seeing if anything changes.

Sou1forged
October 26th, 2010, 01:47 PM
What does the bottom two abbreviations in the connections window stand for? I don't have enough courage ruining another hack, while trying to change the map connections...

IIMarckus
October 27th, 2010, 02:56 AM
What does the bottom two abbreviations in the connections window stand for? I don't have enough courage ruining another hack, while trying to change the map connections...Just make a backup, try it out, and restore from backup if things don’t work.

Sou1forged
October 27th, 2010, 05:52 AM
Just make a backup, try it out, and restore from backup if things don’t work.

Yeah, that's what I usually do, but on more than one occasion I accidentally applied the changes to both hack and backup. Normally I can reverse these things by hand, but when I don't know exactly what I'm doing, I can't know what went wrong and therefore cannot fix it...

Edit: I tried it again and ended up with the same problem I had last time; As soon as I use the new connection, I end up being stuck between the two maps. Until I know what the bottom two boxes are for, I won't be able to tell what I did wrong...

Lin
October 28th, 2010, 06:30 AM
The question mark on the top left is there for a reason. Click it and then click the labels or the box that goes with them. They're actually memory pointers, and I'm not 100% on what they do. They're the things that make connections hard. The only thing I remember about them is one is where the data starts for the other map and the other is where you should be able to stand to see the other map.

Sou1forged
October 30th, 2010, 06:32 PM
The question mark on the top left is there for a reason. Click it and then click the labels or the box that goes with them. They're actually memory pointers, and I'm not 100% on what they do. They're the things that make connections hard. The only thing I remember about them is one is where the data starts for the other map and the other is where you should be able to stand to see the other map.

Sorry, I didn't see it. You must have made it to obvious... :P
I'll check into it immediately... Oh, and nice tool you've made. I was about to publish a long tutorial on how to create your own tileset, but this tool enables me to shorten it down drastically, and almost render it obsolete. I may publish the collision data type list, though I doubt it will be of much use.

Masterge77
October 30th, 2010, 08:10 PM
Will you be making it compatible with Crystal?

redsaber5859
November 6th, 2010, 10:24 PM
Nice editor, but I agree with the third post, it could make people such as Koolboyman a little pissed...

But thats life, the n00bs winning every race :( Good editor nonetheless

PokémonShinySilver
November 7th, 2010, 07:26 AM
Hm... making JohtoMap compatible with Pokémon Crystal wouldn't be a bad idea, actually. :)
But if it seems this map editor won't be updated anymore, then I guess it won't be added. However, 1st and 2nd generation seem to have the exact mapping engine, except the 2nd generation has the palette changes for the real time clock. But the 1st generation does indeed use different palettes for every map, so it would show up in those palettes on Super GameBoy or Pokémon Stadium.

If there was a map editor for the 1st generation that would load all the tiles from the ROM itself, then it would be great.

However, I do see that hex editing the 1st and 2nd generation is much quicker than any other generations.

CelebiKing123
November 11th, 2010, 06:34 PM
this is great! apart from you can walk all over half of the blacks like the bottom set of housing on the pallete :S

Black pass
November 28th, 2010, 10:39 AM
Hi Lin, congratulations, this tool is so useful! I would like to use the beta tilesets, will you add this option? It would be very useful.

Bye ^^

miksy91
November 28th, 2010, 10:51 AM
Hi Lin, congratulations, this tool is so useful! I would like to use the beta tilesets, will you add this option? It would be very useful.

Bye ^^
To do so, just change the [Tileset] byte inside the Map Header of the edited map. It's actually the first byte in the header.

See this doc. for details:
http://hax.iimarck.us/topic/15/

The Map Header structure is the same in GSC as in RBY.
This may feel hard in the beginning but if you're about to make a hack of G/S, you've to learn how to do things like that ;)

miksy91
December 21st, 2010, 11:58 AM
I'm going to double-post because the last message from me was at Nov 28th and this has nothing to do with it (and no one would see what I point out here).

This tool sure is great !
I haven't had any "bugs" anymore as I clearly know what each command is for.
*Might actually make a tutorial of using this thing but not sure...

Anyway, there is one thing with this tool that's bothering me.

If you for example put one more person to the map, it repoints the event data to the next following offset where there is free space for adding the data even though I'd like to put the data somewhere else. The editor doesn't leave the user the possibility to choose the offset itself.

The only problem is that if you for example repointed something else (like trainer type names text) just in front of the start data of the repointed event data, you won't have the space to expand it in need.

Of course you can always pass this problem by repointing the event data with a hex editor but this tool automatically adds the original event data to the repointed offset which makes it so useful :D

Lin
June 28th, 2011, 09:05 PM
Sorry for the bump, but this project has been updated. I also no longer work on it, so the source code has been released. Visit the main topic for download information.

Nintendork15
June 28th, 2011, 09:40 PM
What about ClassicMap ?
Will you still be working on that ?? D:

Vermilion cloud
June 29th, 2011, 12:21 AM
What about ClassicMap ?
Will you still be working on that ?? D:

Agree, it would be a great editor than RedMap or PokeMap if it was finished.

Also, Lin. Is the last update free from bugs??

Lin
June 29th, 2011, 07:46 AM
Agree, it would be a great editor than RedMap or PokeMap if it was finished.

Also, Lin. Is the last update free from bugs??

According to the testers who originally found the bugs fixed in this update, yes.

No, ClassicMap is not being worked on and never will be (by me). I posted on its topic that it's dead a while ago, so I'm surprised you didn't know.

Nintendork15
June 29th, 2011, 09:55 PM
Just out of curiosity ... If you say 'you' are no longer working on this ... does that imply someone else is working on it ... ?

Team Fail
June 29th, 2011, 10:37 PM
I found a bug. Sadly. I can't edit the map of Kanto. It overwrites the Johto map if you try to.

lucexpress
January 6th, 2012, 07:42 PM
Thanks Thanks I needed one of these

Brandywine
October 21st, 2012, 02:07 AM
Not sure if stupid, but I can't seem to work out how collision editing works on this thing....any insight at all would be appreciated.

miksy91
October 21st, 2012, 11:54 AM
Not sure if stupid, but I can't seem to work out how collision editing works on this thing....any insight at all would be appreciated.
There is no "newbie-friendly" way for editing map connections. You're going to have to calculate the right values and can insert them into the rom with Johtomap / hex editor. There is a tutorial for map connections in Skeetendo Inc though.

Brandywine
October 21st, 2012, 08:57 PM
Thanks, Skeetendo looks like a really useful place to get info.

DrFuji
October 21st, 2012, 10:49 PM
Unfortunately this thread has been bumped beyond the two month limit so its going to have to be closed.

Lin, if you would like this thread to be reopened then just message either myself or giradialkia. Until then, closed~