• 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: Mass Compatibility Editor [FR] [EM]

5,256
Posts
16
Years

Mass Compatibility Editor - a tool for FireRed and Emerald

This tool lets you edit the compatibility of TMs, HMs and Move Tutor moves en masse. Instead of taking five years manually checking and unchecking boxes, you can now do whole swaths of Pokémon at once in just a few clicks!


Screenshots


exb8dEV.png
D4hfP7D.png


PBNqdh5.png
s6z7FtL.png

Downloads

  • [WINDOWS] Mass Compatibility Editor v1.3 with source code [pokécommunity] [dropbox]
    Release date: 16th, May 2018
    Notes: Restructured for more intuitive use, with a check list of every species in the ROM to be checked/unchecked for each individual move. Saving button added.
    Requires .NET 4.0. Read the readme file before using this!
  • [WINDOWS] Mass Compatibility Editor v1.2 https://www.pokecommunity.com/attachment.php?attachmentid=85290&stc=1&d=1525584355
    Release date: 6th, May 2018.
  • [WINDOWS] Mass Compatibility Editor v1.0 with source code [mediafire] [dropbox]
    Release date: 15th, March 2016.
    Notes: Requires .NET 4.0. Read the readme file before using this!

Special thanks and credits

 

Attachments

  • mass-compatibility-editor-v1.3.zip
    1 MB · Views: 622
Last edited:
417
Posts
9
Years
  • Age 33
  • Seen Nov 20, 2016
Yeahhh, TM editing is annoying. Looks nice, but two questions.
1) Will you be adding move tutor support in the future?
It supports ROMs with repointed tmhmcompatibilitytables, but still assumes each entry in the table is 8 bytes long.
2) Do you have plans to allow expanded TM/Move Tutor lists later on? :D
 
5,256
Posts
16
Years
Yeahhh, TM editing is annoying. Looks nice, but two questions.
1) Will you be adding move tutor support in the future? 2) Do you have plans to allow expanded TM/Move Tutor lists later on? :D
Hmm. I forgot about Move Tutors but that's a good idea, if I can work out how it works I'd be up to try and add it.

As for expanded TM lists, I think that would depend on how the actual expansion is done. The way it is now, it's very convenient because the 8 bytes translate into a 64bit integer which I can just use to manipulate the bitfield, but if it were any larger (well, technically it's a 58bit bitfield but same difference) it would definitely be trickier to use. I'm not aware of any expanded TM systems, though, so if one is out there I'd appreciate a link so I can get to grips with how it's structured.
 
417
Posts
9
Years
  • Age 33
  • Seen Nov 20, 2016
Hmm. I forgot about Move Tutors but that's a good idea, if I can work out how it works I'd be up to try and add it.

As for expanded TM lists, I think that would depend on how the actual expansion is done. The way it is now, it's very convenient because the 8 bytes translate into a 64bit integer which I can just use to manipulate the bitfield, but if it were any larger (well, technically it's a 58bit bitfield but same difference) it would definitely be trickier to use. I'm not aware of any expanded TM systems, though, so if one is out there I'd appreciate a link so I can get to grips with how it's structured.
I thought there was one, but I can't find at the moment. But, for example, if there were 128 TMs = 16 bytes, something like
Code:
.equ tm_compatibility,	0x12345678

.org 0x043C4E
	lsl r1, r1, #0x4 @or a mul for bytes not a power of 2
	ldr r0, table
	add r0, r1
	lsr r1, r4, #0x3 @div 8, round down
	ldrb r0, [r0, r1]
	lsl r1, r4, #0x1D
	lsr r1, r1, #0x1D
	lsr r0, r1
	lsl r0, r0, #0x1F
	lsr r0, r0, #0x1F
	pop {r4-r5}
	pop {r1}
	bx r1

.align
table: .word tm_compatibility
Just following the same format of the current table. I'm not a programmer so I don't know how you'd do it, but perhaps the user would simply enter the number of bytes for each pokemon's compatibility?
 
104
Posts
11
Years
  • Age 32
  • Seen Nov 28, 2023
It's nice someone actually created something like this. Actually I managed to mass edit tm and move tutor with hex editor, notepad, MS. Excel and stuff like that. The bytes in the compatibility table translate to something else. Each Pokemon got 8 bytes iirc. Each bytes have 8 slots. Like in bulbasaur, it started with 20. It means it only learn 6th slot, which means Toxic, and so on
 
5,256
Posts
16
Years
I thought there was one, but I can't find at the moment. But, for example, if there were 128 TMs = 16 bytes, something like
Code:
.equ tm_compatibility,	0x12345678

.org 0x043C4E
	lsl r1, r1, #0x4 @or a mul for bytes not a power of 2
	ldr r0, table
	add r0, r1
	lsr r1, r4, #0x3 @div 8, round down
	ldrb r0, [r0, r1]
	lsl r1, r4, #0x1D
	lsr r1, r1, #0x1D
	lsr r0, r1
	lsl r0, r0, #0x1F
	lsr r0, r0, #0x1F
	pop {r4-r5}
	pop {r1}
	bx r1

.align
table: .word tm_compatibility
Just following the same format of the current table. I'm not a programmer so I don't know how you'd do it, but perhaps the user would simply enter the number of bytes for each pokemon's compatibility?
Ah, interesting. I'll look into seeing how feasible this will be to implement. It shouldn't be too hard.

very usefull, congrats spherical
it is compatible with expanded Pokédex ?
Thanks, and yes it is.

Update!

I've fixed support for BPEE, added Move Tutor compatibility editing, and made the tool display the name of the move currently being edited. There have also been minor bugfixes and refactoring to the source code, which is also more fully commented.

Screenshots


Wip7unF.png
jRwM1Sf.png

ok4digp.png
M51gq9Q.png

Downloads

  • [WINDOWS] Mass Compatibility Editor v1.1 with source code [mediafire] [dropbox]
    Release date: 17th, March 2016
    Notes: Now supports BPEE properly, allows editing of Move Tutor moves, displays the name of the move being edited, refactored.
    Requires .NET 4.0. Read the readme file before using this!
 
5,256
Posts
16
Years
Just released v1.1.1, which fixes a few issues there were with file loading, and has some more general improvements of the code.

I also realised I hadn't put the source code on github, which has now changed. You can find the link on the first post now, and the source is no longer included in the download for those who don't want it.
 

Dr. Seuss

Will finish GS Chronicles, I swear!
523
Posts
10
Years
Just released v1.1.1, which fixes a few issues there were with file loading, and has some more general improvements of the code.

I also realised I hadn't put the source code on github, which has now changed. You can find the link on the first post now, and the source is no longer included in the download for those who don't want it.

I do apologize for reviving this post. But I have an issue with this tool. everytime I load a .txt file I got this error:

dibujo-1871907.PNG


This issue happens even with clean roms when I try to load a .txt file and when I try to use the mass-remove feature. Here is the text file I'm trying to load:
Spoiler:
 
Last edited:
5,256
Posts
16
Years
I do apologize for reviving this post. But I have an issue with this tool. everytime I load a .txt file I got this error:

dibujo-1871907.PNG


This issue happens even with clean roms when I try to load a .txt file and when I try to use the mass-remove feature. Here is the text file I'm trying to load:
Spoiler:
You're in luck! I actually fixed this exact bug yesterday. v1.2 should work: https://www.pokecommunity.com/attachment.php?attachmentid=85290&stc=1&d=1525584355
 

Attachments

  • mass-compatibility-editor-v1.2.zip
    55.6 KB · Views: 59
5,256
Posts
16
Years

Update!

I've made the tool far more intuitive to use, having a check list for every species in your ROM which you can simply scroll through and check/uncheck at will. There's also now a Save changes! button, so nothing will be written to your ROM until you click that now. You also have the option to mass-check and mass-uncheck within a certain range using the respective buttons. Changing between moves and editor modes WILL forget the changes you made, so make sure to save often!

This version is untested on Emerald but theoretically should work fine. Please make backups before using it especially on Emerald and let me know if there are any issues.

Screenshots


exb8dEV.png
D4hfP7D.png


PBNqdh5.png
s6z7FtL.png

Downloads

  • [WINDOWS] Mass Compatibility Editor v1.3 with source code [pokécommunity] [dropbox]
    Release date: 16th, May 2018
    Notes: Restructured for more intuitive use, with a check list of every species in the ROM to be checked/unchecked for each individual move. Saving button added.
    Requires .NET 4.0. Read the readme file before using this!
 
Last edited:

Lance Koijer 2.0

Lance Koijer
105
Posts
5
Years
Hello. This tool is indeed helpful but I have two questions:
1. This was raised before and I don't know if it has been implemented in the tool, does this support now expanded TM and Move Tutor?

2. Does this tool support expanded pokemon also?
 
1
Posts
355
Days
  • Age 36
  • Seen Jun 18, 2023
Hey, just to let you know, this is exactly tool I was looking for!
There is one little thing I'd like to ask, though.... Is it possible to check all TMs in one click?
Oh wait, I just noted that TM and HMs are working fine, but move tutors are not working...(Im using a cleam emerald rom base)
 
Last edited:
Back
Top