• 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?".
  • 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: [Alpha] (MEH) Map Editor of Happiness

33
Posts
10
Years
So, I started working on map editing last summer using a Wine'd version of AMap, and it was frustrating and kind of awful. This is super nice looking, and a very welcome surprise to see the day I decided to look into finally continuing work on that hack... Excellent, excellent stuff Shiny.
 

MrDollSteak

Formerly known as 11bayerf1
858
Posts
15
Years
Alrighty, it's that time again for the weekly-ish update. First off, I'm back after a bit of an abrupt absence. Took me a bit to get back into the ropes of things but here I am again. Woo.

First matter of business, the Day/Night system. I've officially dubbed it "Wizard", because with this system a palette is never late, nor is it early; it arrives precisely when it needs to. As such, here's some good news in regards to Wizard. First off, the gradient system is pretty much in 100% for maps and overworlds, and it looks great. I also managed to get the color algorithm optimized enough so that it doesn't cause any lag while switching maps, at a slight cost of inaccuracy in color mixing (Luckily it's not too bad a difference though).

Also, on another note, I fixed the issues with grass animations (and other things like footsteps, hopping, etc). Turns out all those effects use the same B/W palette loader that I used to hook for my color mixing, so all it took was a slight modification to the existing routine and it worked:
349foBn.png


tJRJtpW.png


i7nXOSV.png


So basically all that's left is for me to do a few tweaks to the system for accuracy (ie no tinting indoors and restoring the existing palette tints like black/white and sepia), battle backgrounds, and a UI for MEH to wrap it all up. After I get the initial UI done, the Emerald port will begin, which I'm hoping won't be too difficult but I could be wrong, since Emerald doesn't seem to have the same hooks as Fire Red for black/white stuff.

In regards to battle backgrounds, what do you guys want for that? I don't think color tinting would work all too well with battle backgrounds (although I can give it a shot), so I was thinking of having 4 specific time-of-day battle backgrounds, and then a slight color tint on the Pokemon sprites so that they aren't glaringly bright.

This is fantastic, Wizard is just amazing, and will definitely become a staple in hacks. I'm sure of that.

In regards to battle backgrounds, I like the idea of the four different backgrounds, and slight tinting on the HP bars and Pokemon.
 

Tyroz

In tenebris est et in nobis.
46
Posts
10
Years
This is fantastic, Wizard is just amazing, and will definitely become a staple in hacks. I'm sure of that.

In regards to battle backgrounds, I like the idea of the four different backgrounds, and slight tinting on the HP bars and Pokemon.
Just Like MrDollSteak said, Wizard looks amazing and having flexible compatibility with the system is just another step in the evolution of ROM Hacking.
In regards to battle backgrounds, what do you guys want for that? I don't think color tinting would work all too well with battle backgrounds (although I can give it a shot), so I was thinking of having 4 specific time-of-day battle backgrounds, and then a slight color tint on the Pokemon sprites so that they aren't glaringly bright.

I am a little confused on this. What exactly are you saying?
~You're creating 4 Battle backgrounds for us?
~You're having a patch applied that tints our cureent backgrounds for us?

OH! Don't forget about caves in the exception of the day/night tinting.
Otherwise, Always a pleasure to see the progress this is making. When would the Alpha change to a Beta? I do not fully understand the change of the word usage.
 

DJTiki

top 3 most uninteresting microcelebrities
1,257
Posts
10
Years
I have a few suggestions, despite barely playing around with the actual program. So pardon me if they are already included.
-Allowing border sizes to be edited. I'm not sure if its possible, but it annoyed me w/A-Map
-Okay this really bugged me about A-Map(especially 1.95), that when you exit out of the feature, which copies a large area(I believe it was BigBlock) it doesn't automatically return to the pointer, and I end up overwriting a large space of my map.
-Also being able to completely pan, certain sections of map would be cool.

I'll definetly will be using this over A-Map {:3}

EDIT: I think I found a bug, when loading Map Bank(3.0) it doesn't load for me. But loads other maps fine.This is for FireRed. When loaded it stays on the previous opened map(ex. If I load Pallet from Saffron, it will stay on Saffron's map)
EDIT2: Another oddity, is that when I loaded the connections tool for Route 1, it didn't load, probably because it was connected to Pallet Town? But its odd.
EDIT3: Viridian City glitches out its map like crazy, when I open its events. It sorted itself out :)
 
Last edited:

Shiny Quagsire

I'm Still Alive, Elsewhere
697
Posts
14
Years
Just Like MrDollSteak said, Wizard looks amazing and having flexible compatibility with the system is just another step in the evolution of ROM Hacking.


I am a little confused on this. What exactly are you saying?
~You're creating 4 Battle backgrounds for us?
~You're having a patch applied that tints our cureent backgrounds for us?

OH! Don't forget about caves in the exception of the day/night tinting.
Otherwise, Always a pleasure to see the progress this is making. When would the Alpha change to a Beta? I do not fully understand the change of the word usage.

Basically the plan I was proposing was to just have a basic system where you have 4 battle backgrounds that are set up by the user, and then do color tinting only on the Pokemon/Trainer sprites.
 
109
Posts
12
Years
I know we are talking a lot about the day/night system (which is absolutely amazing), but outside of that, I have one suggestion for the program to please those of us who go all out with graphics ;)

I have no doubt that your block editor that you plan to implement will be better than A-Map's, but if there was a feature to easily usher in custom tiles (that you find on the internet or make yourself) then that would be HUGE. I hate pallet errors, RGB pallet converting, and especially block assembly. If you could somehow upload a .png/.bmp and have that be directly translated into usable blocks, my dream would come true! I have been following MEH for a while now and I might have seen in a post that there is a feature that automatically changes the colors of an uploaded image to a 16 color pallet (kind of like IrfanView) with the RGB values in multiples of 8.

Shiny Quagsire, what can you tell me about all of this?
 
1,323
Posts
16
Years
  • Seen Dec 9, 2023
and then a slight color tint on the Pokemon sprites so that they aren't glaringly bright.
If you're planning on doing this, can you give us an option to not do this? The official games never had a color tint during Gens 4 & 5, and I never thought there needed to be one.
 

Shiny Quagsire

I'm Still Alive, Elsewhere
697
Posts
14
Years
I know we are talking a lot about the day/night system (which is absolutely amazing), but outside of that, I have one suggestion for the program to please those of us who go all out with graphics ;)

I have no doubt that your block editor that you plan to implement will be better than A-Map's, but if there was a feature to easily usher in custom tiles (that you find on the internet or make yourself) then that would be HUGE. I hate pallet errors, RGB pallet converting, and especially block assembly. If you could somehow upload a .png/.bmp and have that be directly translated into usable blocks, my dream would come true! I have been following MEH for a while now and I might have seen in a post that there is a feature that automatically changes the colors of an uploaded image to a 16 color pallet (kind of like IrfanView) with the RGB values in multiples of 8.

Shiny Quagsire, what can you tell me about all of this?

While it is technically possible, the amount of work involved and the complexity of actually doing it is a tad bit complicated. A lot of issues you have said I've already solved, like a lot of the palette issues you stated. The remedy for that is indexed images, which, if your palette is already suitable for the tiles being inserted, allows you to simply paste in the tiles and the image editor will usually take the closest colors to it. The problem in A-Map was that he used non-indexed BMP files, which meant that the editor would let you have as many colors as you wanted, and when it was imported all colors outside the palette were turned green (or whatever other color).

Here's the main problem that I'm trying to get at. There's only so many colors that the GBA hardware can actually use, and since textboxes already use 16*3 colors (3 whole color palettes), that only leaves us with 13 other palettes to work with, 7 for the main tileset and 6 for the nonmain. The most I could see this going towards is a simple tile reduction tool which could take in an image, reduce the number of tiles, and then ask where to throw it in the local tileset. The main tileset, in most cases, is entirely too cluttered for inserting large structures, and for best results, should be dealt with manually. However I can see a tile reduction + maybe palette configuration being added with the addition of the future blockset system which will allow much more organized blocksets as well as the addition of more blocksets with ease.

No Japanese ROMs support?
Will them be supported in future?
At the moment I have not the time to actually implement the INIs for all versions of the Fire Red, Ruby, and Emerald ROMs. However, the INI is pretty straightforward so if anyone feels like gathering those offsets that would be great.

If you're planning on doing this, can you give us an option to not do this? The official games never had a color tint during Gens 4 & 5, and I never thought there needed to be one.
At the moment I have full plans to allow the disabling of multiple features in the D/N system. Each different part is planned to be disableable in some sort of fashion, since people have different preferences obviously.

One last note, I've previously mentioned that I used the B/W palette tinting hooks for my D/N system. I've successfully managed to restore the original code so that the "Previously on your adventure..." screen works properly, as well as the sepia code. I might also add an additional byte to the B/W/Sepia byte so that you can force a time of day as well, and I might also add a specific palette of colors so that you can have multiple alternate color configurations for special events (ie power outage, indoor lights, etc). Also, anyone like the idea of slight color tinting for indoors? I'm tempted to add it but at the same time it could look very bad (ie inside deep or underground buildings like the Rocket Hideout or the E4). Perhaps another map type byte for indoor time palettes?
 
51
Posts
9
Years
  • Age 38
  • Seen Dec 20, 2022
I know that you are focusing right now on a super awesome day and night system, but I would just like to make a request for when you start working on the over world sprites. In some maps, there are more then one sprite / event on top of each other. This has been a source of confusion and annoyance in Advance Map all through the years for me. And now that I have been going through Emerald looking for flags it has become a more serious issue. Sometimes you are accustomed to seeing 'different' kinds are sprites (which are actually two or more sprites dumped on top of each other) but it is easy to miss things, particularly when the sprites are exactly the same or you are doing a large amount of work. Perhaps you could consider having some sort of visual indication that there is more then one sprite at a particular location on the map? If you know what I mean?
I'm not using this program, yet, but I am watching its progress closely and I just have to say thank you for working to make awesome rom hacking more universal and open to everyone! :)
 

Renegade

Time for real life...
995
Posts
12
Years
Hiya~
I figured I might as well give some input for the project, seeing as how being a bystander is just missed opportunity.
Consider the following image:
Spoiler:

I want to point out the area of grass that I outlined with water. I was thinking it might be a neat idea to have a 'fill' function to where you can select a tile and 'fill' in an area of one type of tile (for example the square of grass) with another tile (for example water). It would be extremely handy and time-saving to have something like this. Then I wouldn't have to spend five minutes outlining/filling in an ocean with water tiles one-by-one.

EDIT: I'll also suggest having this function work with movement permissions as well. Filling in the tiles is one thing, filling in the movement permissions for the tiles in another.
 

Tyroz

In tenebris est et in nobis.
46
Posts
10
Years
Basically the plan I was proposing was to just have a basic system where you have 4 battle backgrounds that are set up by the user, and then do color tinting only on the Pokemon/Trainer sprites.

Okay. :) Sounds good. Thank you for the reply.

Hiya~
I figured I might as well give some input for the project, seeing as how being a bystander is just missed opportunity.
Consider the following image:
Spoiler:

I want to point out the area of grass that I outlined with water. I was thinking it might be a neat idea to have a 'fill' function to where you can select a tile and 'fill' in an area of one type of tile (for example the square of grass) with another tile (for example water). It would be extremely handy and time-saving to have something like this. Then I wouldn't have to spend five minutes outlining/filling in an ocean with water tiles one-by-one.

EDIT: I'll also suggest having this function work with movement permissions as well. Filling in the tiles is one thing, filling in the movement permissions for the tiles in another.

I would like to add on to this. I just found out that Advance Map does this function IF YOU USE A MOUSE. I found this out this morning. My mouse that I attach to my laptop has a scrolling button that clicks. If clicked, it places the selected tile in the area just as the bucket in paint would do. If you, Shiny, would be able to add this feature in, without needing a mouse, for everyones sake, it would make life so much easier. Thank you!
 

Renegade

Time for real life...
995
Posts
12
Years
I would like to add on to this. I just found out that Advance Map does this function IF YOU USE A MOUSE. I found this out this morning. My mouse that I attach to my laptop has a scrolling button that clicks. If clicked, it places the selected tile in the area just as the bucket in paint would do. If you, Shiny, would be able to add this feature in, without needing a mouse, for everyones sake, it would make life so much easier. Thank you!
Just tried this out, and O_o. I had no idea that function even existed.
Never thought to experiment with the middle click. Thanks for the info, guy~ :3
 

Tyroz

In tenebris est et in nobis.
46
Posts
10
Years
Just tried this out, and O_o. I had no idea that function even existed.
Never thought to experiment with the middle click. Thanks for the info, guy~ :3

You're Welcome! I too was ecstatic when I found this feature.
 
27
Posts
11
Years
Hiya~
I figured I might as well give some input for the project, seeing as how being a bystander is just missed opportunity.
Consider the following image:
Spoiler:

I want to point out the area of grass that I outlined with water. I was thinking it might be a neat idea to have a 'fill' function to where you can select a tile and 'fill' in an area of one type of tile (for example the square of grass) with another tile (for example water). It would be extremely handy and time-saving to have something like this. Then I wouldn't have to spend five minutes outlining/filling in an ocean with water tiles one-by-one.

EDIT: I'll also suggest having this function work with movement permissions as well. Filling in the tiles is one thing, filling in the movement permissions for the tiles in another.

I concur, this is a great idea. Maybe make something like the bucket tool in MS Paint? Have two buttons that switch between paintbrush(one tile at a time) and bucket(cover all tiles in the one selected). Also, this map editor is made in Java right? How do i set it up in Eclipse? Sorry, I know only a little bit of Java and don't know much about Github and Eclipse. :P
 

EthanAG

Guest
0
Posts
Ive seen this new map editor, and like always Shiny Quagsire has amazed me again. I cant wait to see this map editor in its full on glory when its finished!
 

Tyroz

In tenebris est et in nobis.
46
Posts
10
Years
Just something that popped up; Would you please be able to add in a grid for the Map, Movement Permissions, and Events tab? That has been a lifesaver in AM.92. Maybe just not as thick as the ones in AM? That would make the fanfreaking-tastic MEH even better.:meow:

I did notice that the wild pokemon tab does not allow for a wild pokemon repoint to allow maps to add a grass section...Just saying


Oh, by the way, have you had a chance to implement a way for Hacks with extended pokedex's to add in the pokemon without having to use the extrenuos way trhough AM.95? Just checking as that process takes forever.

Thank you again Shiny!!!
 

Bliss

Part-time Pegasister, Part-time PokéFreak
415
Posts
10
Years
Exceptional work!

This will save me dozens of headaches and hundreds of hours!

Reading through these 10 pages of posts I found many features that I would absolutely love to see implemented at some point in the future. The most important being the Overworld Editor and along with it an option to add additional regions/overworlds.

As for other suggestions (I haven't yet attempted to use this program, apologies if these features have already been implemented)

*Variable Time System - A DNS that would allow for custom clocks and/or custom time progression (eg1. 16 hour clock instead of 24; eg2. 1 minute real time = 1 hour in game)

*A Preview (Play) option - I realize this is nearly impossible, but I thought I would suggest it and see what feedback I received.

*Optional Themes - While not impossible, it will be of little use. Just a bit of eye-candy after all priorities have been handled.

*Translation to common languages - I only speak English, but I know several PokeFans that speak Spanish, German or Dutch. Maybe this could be handled by someone later, after a suitable release.

*Built-in Sprite Editor - Obviously, nowhere near a priority, but it might be a nice addition so users will not require an additional program for such. I guess this request comes from my desire of seeing a true All-In-One program for Hacking purposes. (And hopefully an Open-Source program, at that)

Again I apologize if any of these features have already been added, and now that I think about it, a Variable Time System would most likely be on the scripting side of things.

I'm still quite new to hacking in general, but I look forward to using this program and making hacks worthy of the time I put into them!

Thank you for reading and have a nice day,
~Prixy

EDIT: Not sure if this has been addressed already but the Preferences button does not seem to work.

Also, I've been using XSE for editing scripts in A-Map but it won't load the scripts, not sure exactly what I'm doing wrong there.
Furthermore, I can't seem to click on (select) Person or Pokeball or Signpost events, but I can right click and delete them just fine.

I feel as if these issues are arising simply as a result of this program still being in Alpha, and if they simply haven't been implemented yet I apologize for wasting time. But if it's something I'm doing wrong I'd like to correct it, so any help is greatly appreciated.
 
Last edited:

Shiny Quagsire

I'm Still Alive, Elsewhere
697
Posts
14
Years
I know that you are focusing right now on a super awesome day and night system, but I would just like to make a request for when you start working on the over world sprites. In some maps, there are more then one sprite / event on top of each other. This has been a source of confusion and annoyance in Advance Map all through the years for me. And now that I have been going through Emerald looking for flags it has become a more serious issue. Sometimes you are accustomed to seeing 'different' kinds are sprites (which are actually two or more sprites dumped on top of each other) but it is easy to miss things, particularly when the sprites are exactly the same or you are doing a large amount of work. Perhaps you could consider having some sort of visual indication that there is more then one sprite at a particular location on the map? If you know what I mean?
I'm not using this program, yet, but I am watching its progress closely and I just have to say thank you for working to make awesome rom hacking more universal and open to everyone! :)
Yeah, this definitely seems to be an issue. I'll have to look into something like that. And thank you for the compliments and support. :)

Hiya~
I figured I might as well give some input for the project, seeing as how being a bystander is just missed opportunity.
Consider the following image:
Spoiler:

I want to point out the area of grass that I outlined with water. I was thinking it might be a neat idea to have a 'fill' function to where you can select a tile and 'fill' in an area of one type of tile (for example the square of grass) with another tile (for example water). It would be extremely handy and time-saving to have something like this. Then I wouldn't have to spend five minutes outlining/filling in an ocean with water tiles one-by-one.

EDIT: I'll also suggest having this function work with movement permissions as well. Filling in the tiles is one thing, filling in the movement permissions for the tiles in another.
Editing improvements like undo/redo and various tools are definitely planned, so no worries there.

Ive seen this new map editor, and like always Shiny Quagsire has amazed me again. I cant wait to see this map editor in its full on glory when its finished!
Thanks!

Just something that popped up; Would you please be able to add in a grid for the Map, Movement Permissions, and Events tab? That has been a lifesaver in AM.92. Maybe just not as thick as the ones in AM? That would make the fanfreaking-tastic MEH even better.:meow:

I did notice that the wild pokemon tab does not allow for a wild pokemon repoint to allow maps to add a grass section...Just saying


Oh, by the way, have you had a chance to implement a way for Hacks with extended pokedex's to add in the pokemon without having to use the extrenuos way trhough AM.95? Just checking as that process takes forever.

Thank you again Shiny!!!
Grid lines are simple, and I'm still working on finding a fix for extended pokedex support. I have a setting in the INI but supposedly there's something bugged with the current implementation.

Exceptional work!

This will save me dozens of headaches and hundreds of hours!

Reading through these 10 pages of posts I found many features that I would absolutely love to see implemented at some point in the future. The most important being the Overworld Editor and along with it an option to add additional regions/overworlds.
As much as I'd like to do an overworld editor, I probably won't considering most overworld editors are working just fine (NSE is a very nice open-source overworld editor, as well as NSE 2.x). And additional regions cannot (unfortunately) be added so easily. I do plan on making a world map editor though so perhaps a way to edit which maps correspond to which region map (if on Fire Red) would be viable.

As for other suggestions (I haven't yet attempted to use this program, apologies if these features have already been implemented)

*Variable Time System - A DNS that would allow for custom clocks and/or custom time progression (eg1. 16 hour clock instead of 24; eg2. 1 minute real time = 1 hour in game)
This is actually a planned feature of Wizard, which I will be getting to next.

*A Preview (Play) option - I realize this is nearly impossible, but I thought I would suggest it and see what feedback I received.
A feature similar to this was suggested by knizz which would allow you to make edits to the ROM in real time while it is running in an emulator. Not sure how to go about it but it was suggested so I could see.

*Optional Themes - While not impossible, it will be of little use. Just a bit of eye-candy after all priorities have been handled.
Unlikely but considered. To be honest I'm actually thinking of redoing the UI for a graphic-accelerated OpenGL rendered UI. But at the moment it's only an idea.

*Translation to common languages - I only speak English, but I know several PokeFans that speak Spanish, German or Dutch. Maybe this could be handled by someone later, after a suitable release.
Language support is something that will most likely be added eventually, either through INIs or another sort of format which would allow the various strings in the application to be exchanged between languages.

*Built-in Sprite Editor - Obviously, nowhere near a priority, but it might be a nice addition so users will not require an additional program for such. I guess this request comes from my desire of seeing a true All-In-One program for Hacking purposes. (And hopefully an Open-Source program, at that)
Again, probably won't do this unless I see an actual need for it, as NSE 2.x is quite a great program already.

Again I apologize if any of these features have already been added, and now that I think about it, a Variable Time System would most likely be on the scripting side of things.

I'm still quite new to hacking in general, but I look forward to using this program and making hacks worthy of the time I put into them!

Thank you for reading and have a nice day,
~Prixy

EDIT: Not sure if this has been addressed already but the Preferences button does not seem to work.

Also, I've been using XSE for editing scripts in A-Map but it won't load the scripts, not sure exactly what I'm doing wrong there.
Furthermore, I can't seem to click on (select) Person or Pokeball or Signpost events, but I can right click and delete them just fine.

I feel as if these issues are arising simply as a result of this program still being in Alpha, and if they simply haven't been implemented yet I apologize for wasting time. But if it's something I'm doing wrong I'd like to correct it, so any help is greatly appreciated.
Most issues are just because I've been working on the program's internals and I happen to break things on accident. The entire NPC editing code is a bit weird since it was actually done by interdpth and I haven't really touched it throughout all the modifications I've made. So a lot of things need work there. And suggestions are always welcome. :)

That being said, it's time again for a small update on things. This one being that Wizard is finally complete in it's full form in terms of the Fire Red version. The official feature list is as follows:
  • Blending-based rendering system which allows for the use of more eye-friendly and customizable colors
  • An RTC based on the original RTC posted by Zodiacdagreat which is byte compatible with primal's system (so no rewriting scripts for new offsets)
  • If an RTC chip is not detected, it will use the game time as an RTC on a selectable time scale. The default is 4x, meaning it takes 6 actual hours to do 24 hours in-game. This is extremely useful for those playing on flash cartridges since the time cycle will actually be of use again, allowing them to catch the different Pokemon provided by the D/N Pokemon System, as well as the participation in time-sensitive events.
  • Custom battle background palettes for each time of day (breaks existing system unfortunately)
  • Color masking for maps! Specifically change various colors depending on the time of day. This allows for things like glowing windows at night or other time-sensitive adjustments
  • A seasons byte to tell which season it is. At the moment there are no plans for seasonal tiles however.
  • A time of day override byte, which will let you force a certain time of day for cutscenes and other applications. This also works indoors and overrides the usual palette, making it useful for forcing a night palette indoors for things which would involve lights going out or whatever.
  • A specific time override byte which lets you choose one out of the 144 colors to use, specifically.
  • 4 color override bytes, stored in a 32 bit little-endian ARGB word at 0203c010, which allow you to force the overlay of a certain color of your choice.
  • Time adjustment for Fire Red! With this feature you can adjust the RTC like in RSE. To do this, a set of bytes at 0203c006 is allocated in the exact same format as the RTC bytes. The difference is that these bytes are added on top of the read RTC bytes, allowing you to change the time without changing your system time. This is particularly useful for the backup RTC system which uses the game's time due to the fact that a year, month, and day cannot be retrieved (although it does add to the existing number of days if the time lapses far enough).

As of now, there isn't a way to apply this to the ROM without compiling and ASM stuff. But, with this finally being finished, the source code for the project is going live at https://github.com/shinyquagsire23/Wizard-DN if you want to examine it, make modifications to it, or try to insert it yourself. In the mean time, I'll be working on integrating it into MEH with an easy access patcher which can detect and replace other D/N systems and remove them and then install Wizard on top. It will also allow you to configure the colors used by the D/N system, the time scale for the backup system, and other things. Once the implementation into MEH is done, progress on the Emerald port will begin (shouldn't take as long as the Fire Red development though), then the Emerald implementation, and then more tuning and features for MEH.

With that said, I hope you're all as excited as I am for this, and happy hacking to all. :)
 

DJTiki

top 3 most uninteresting microcelebrities
1,257
Posts
10
Years
Wow o.o thats amazing. I'm defiently using this over Advanced Map, once its out of alpha. I still have trouble opening edited maps, that were orignally made in AdvanceMap, in MEH. But I'm sure you'll fix it. But this is truly AMAZING. Thanks :)
 
Back
Top