- 40
- Posts
- 7
- Years
- Manchester, England
- Seen Feb 2, 2023
Make it easy to use, have tools that can do everything we can with binary with good GUIs and make it as easy to add modern features as CFRU, and I'll see you in decomp land.
The dumbest line is
because there is nothing to innovate. unlike with binary where there are still problems to solve
Wow why would you solve it when there is no need to and innovating is much better when there are less limitations
The stuff that decomps can do are far more incredible than what binary hacking can do (Pokémon Crown, a FireRed decomp hack, is a great example of it)
static const struct TrainerMonNoItemDefaultMoves sParty_Joey[] = {
{
.iv = 0,
.lvl = 9,
.species = SPECIES_MACHOP,
}
};
case ABILITY_BLAZE:
if (moveType == TYPE_FIRE && gBattleMons[battlerAtk].hp <= (gBattleMons[battlerAtk].maxHP / 3))
MulModifier(&modifier, UQ_4_12(1.5));
break;
HMANo binary hacking tool is even remotely comparable to the ease of use VS code provides
AMap is being replaced by HMAporymap blows advance map out of the water
People don't want to edit "most of the game", they just want to edit data.a binary editor that can't even edit most of the game in a meaningful way.
- A trainer editor
- A Pokémon editor
- A text editor
- An intro editor
- A move editor
- Much more!
And it's all in one program, with built in find and replace, and all in a simple, human-readable format that allows for extremely quick editing - no more clicking through a billion drop down menus.
Search for "Joey", and look through the names of the files that appears - you'll see "trainer_parties" and "trainers" - Trainer parties sounds promising, so click that and the editor will jump straight to Joey's party
If you want to give him more mons, or custom moves, you can go to other trainers in the same file to see how that should look, then jump straight back to Joey with a single click and make your changes based on that. As this is a text file, you have full access to copy and paste, which make this incredibly quick and easy. VS Code can even autocomplete Pokémon species and moves for you!
AMap has already been replaced by porymapAMap is being replaced by HMA
False. The sheer number of people asking how to do something that would be easy in the decomps and a complete nightmare in binary is staggering. I see this all the time. Plenty of people want custom key item effects or basic features from later gens that aren't covered by the CFRU, which leaves most of them with the wonderful options of ASM or nothing.People don't want to edit "most of the game", they just want to edit data.
No, it is not easier to do this in HMA. Pokeemerald has been in a far better state than HMA will ever be in for a long time now, and at this point it will always be that way. HMA does not and will not ever compare to an actual development environment.This is literally a description of HMA, and HMA is MUCH psyducking easier to do all of this with than the decomps are in their current state.
A python interface is largely useless to people who cannot code, no? That seems to be half the issue with the decomps, so why is that a benefit here? The decomp also gives you more options for automated editing (e.g. regex, or anything else you want).more mons - HMA
custom moves - HMA
jump straight back to Joey with a single click - HMA
full access to copy and paste - HMA (not to mention, automatic editing through HMA's python interface).
There is no reason for me to try HMA, because it does not offer one single feature that is not done better by VS code and porymap. It would have been an incredible break through 10 years ago, but as it stands, if you're making a substantial new hack, it is hopelessly outclassed by the decomps in every way. Those examples I gave are just the tip of the iceberg. You can make that some Gaia-style hack much more easily in the decomps than you can in HMA.You get the picture.
For all the begging that is done about "just TRY the decomps first", it's embarrassing that none of you seem to want to TRY something like HMA to see WHY people think it's easier to work with and flock to it. Your whole post is trying to guess why people "incorrectly" assume binary is easier when a few clicks through HMA will literally explain it to you. There is a reason people choose it and you're spinning your own narrative. Like, imagine resorting to the niche example of ability editing just to insist decomps are better. Most hacks do NOT want to edit the base engine, even if it's just abilities. If you want to do that, use decomps. But if you're just editing the surrounding data, like your amazing list earlier, there's literally no reason to set up an entire decomp project. You can make an entire Pokemon Gaia-style hack in HMA now. That's all most people want. Very few people are out here trying to make Voyager.
This is literally false. Version control alone is more than enough of a reason, unless your hack is something that can be made in a week. You know that gigantic backup folder that most ROM hackers have? That used to a problem for programmers too, just on a much larger scale. Version control is the solution to that problem, and it's a really good solution. Sure it looks complicated, and it can be it if you make it that way, but the important stuff has a nice, easy to use GUI that does more than enough for a simple ROM hack. It makes development and bug fixing so much easier and will save you a lot of time and heartache.But if you're just editing the surrounding data, like your amazing list earlier, there's literally no reason to set up an entire decomp project.
Your opinion is not an objective fact.This thread has proven one thing to me and that is 99% of the arguments for decomp assume binary hacking is still where it was years ago. Guess what, it isn't. HMA alone is going to be objectively better for anyone who doesn't need to touch the base engine and you're going to keep crying about it indefinitely
Version control says hi.This thread has proven one thing to me and that is 99% of the arguments for decomp assume binary hacking is still where it was years ago. Guess what, it isn't. HMA alone is going to be objectively better for anyone who doesn't need to touch the base engine and you're going to keep crying about it indefinitely
AMap has already been replaced by porymap
False. The sheer number of people asking how to do something that would be easy in the decomps and a complete nightmare in binary is staggering. I see this all the time. Plenty of people want custom key item effects or basic features from later gens that aren't covered by the CFRU, which leaves most of them with the wonderful options of ASM or nothing.
In what way??? What a stupid blanket statement. It is not an opinion that editing the specific things you've listed is objectively easier in HMA. You type in "pokemon" or "trainers" and see every bit of data in one panel to edit through a GUI. Takes 2 seconds. Zero navigating a codebase, zero bugs since HMA handles everything under the hood, complete autofill as HMA pulls from the rom just as an IDE would pull from a project, hell there's even less typing.No, it is not easier to do this in HMA. Pokeemerald has been in a far better state than HMA will ever be in for a long time now
Um no?? What on earth do you think is more accessible to people who cannot code, Python or C? Python is literally a gateway language. And don't even get me started on the absurdity that is regex.A python interface is largely useless to people who cannot code, no? That seems to be half the issue with the decomps, so why is that a benefit here? The decomp also gives you more options for automated editing (e.g. regex, or anything else you want).
If you're not going to try it, then it's no surprise you're still left wondering why people keep choosing it.There is no reason for me to try HMA, because it does not offer one single feature that is not done better by VS code and porymap. It would have been an incredible break through 10 years ago, but as it stands, if you're making a substantial new hack, it is hopelessly outclassed by the decomps in every way. Those examples I gave are just the tip of the iceberg. You can make that some Gaia-style hack much more easily in the decomps than you can in HMA.
Version control is absolutely an objective advantage decomp has over binary, but you're seriously exaggerating the "struggle" without it. "Gigantic backup folder" cmon, we're on the tiny scale of roms here.This is literally false. Version control alone is more than enough of a reason, unless your hack is something that can be made in a week. You know that gigantic backup folder that most ROM hackers have? That used to a problem for programmers too, just on a much larger scale. Version control is the solution to that problem, and it's a really good solution. Sure it looks complicated, and it can be it if you make it that way, but the important stuff has a nice, easy to use GUI that does more than enough for a simple ROM hack. It makes development and bug fixing so much easier and will save you a lot of time and heartache.
There's also the objective fact that fixing bugs in the decomp is infinitely easier. If you break something in binary without realising it, chances are it's staying broken until you resort to the back ups folder. The decomps give you a list of exactly what you've changed and when you changed it, making it easier to pick out bugs.
I don't know how to tell you this but you're just wrong. Of course Pokeemerald can do this too, but you really think it's easier to do it in Pokeemerald than in HMA for a beginner? Seriously? With all the decades of tutorials binary hacking has combined with the safety net and GUI of HMA? A beginner could be knee-deep in a stable HMA hack in a week. In pokeemerald, a beginner would spend a week setting it up and then another week being unable to navigate anything outside of Porymap. Maybe they'd find a few tutorials to do specific changes. Maybe they'd get the expansion set up. They'd exhaust every resource or guide within months.Pokeemerald is already well past the point where it can (more) easily make a Gaia-style hack
What exactly do you think is wrong with the decomps?
STFU. This entire topic is a baseless opinion presented as fact. "Holding back the entire community"??? Go screw yourself hypocriteYour opinion is not an objective fact.
Version control says hi.
Wait really? I thought it was a decomp mod since the creator was looking at the pokefirered documentation. Who knew 🤷Pokemon Crown is a binary hack 😂😂😂
Wait really? I thought it was a decomp mod since the creator was looking at the pokefirered documentation. Who knew 🤷
Wait really? I thought it was a decomp mod since the creator was looking at the pokefirered documentation. Who knew 🤷
The only way something like Crown is produced is through looking at the source code. They used pokefirered's documentation and then binary hacked. Crown would not be without the decomps.
Spoiler:Hey, I'm someone who primarily comes from SMW hacking, and honestly seeing this debate is a little interesting to me. It's one that's popped up in our community before so I figure I'd chime in a little. We still do primarily binary editing through a few tools, but honestly that's partially due to the fact that SNES asm editing is much more approachable at a binary level due to tools like ASAR, and partially due to the fact our tools are actually quite polished and tend to -not- cause random corruptions. While I've seen people argue bar of entry for newbies as the big issue (and yes, you are -never- going to get as many adopters getting their feet wet with hacking when they have to set up an entire dev environment as opposed to running one exe on one file) I'd bring up that you're fighting against years of experience and resources as well. When you work on a large project for as long as some of these take, you establish a workflow, and adapting to a new workflow can be very difficult. When someone who has finished hacks in the past decides to start a new project, they're likely going to go with what's familiar over something intensely different unless the point of the new project is to play around with these new tools. If someone is used to making direct hex edits and working with the tools that are still considered up to date for binary hacking, that's probably what they're going to go with. Swapping out the tools that are broken for similar ones that don't disrupt said workflow.
And past that, you're not just fighting initial user experience, established user experience, but sheer resources as well. Yes, writing C code might be easier than staring at a hex editor, but following a quick guide to flip a few bits on a 10 year old forum post to make a small change is much more straightforward than hoping that some people in a discord might be able to point you at what file the function you need to modify is in. Furthermore, not everyone is a programmer, and not everyone wants to be. I can not stress this enough as someone from another community, the sheer idea that you are going to have to write your own code for certain features is daunting as hell when, well, a .ips or bps or ups or whatever format your community uses is -right there-. Having to merge in different codebases through git for community resource patches is, frankly to me, still actually kinda ridiculous (I think I'd rather do what I've seen with FE hacking and have a binary tool setup with a makefile and keep my patches separate). I understand pokemon hacking is very different, a lot more volatile, and all y'all can be a lot more hostile to eachother, but you're always dealing with people who regardless of their skill or time or whatever just want to make a game. Until using a decompilation is just as accessible as using a binary you aren't going to be able to get the majority of your community to switch over, and telling people they are actively dragging everyone around them down by doing so isn't helping.
Over in SMW we've argued for a long time about moving to a disassembly, and I've been told by some of the experienced ASM hackers over there that frankly at this point, for 99% of the people making hacks it's just not worth it. We're ultimately shackled to Lunar Magic, and despite it having some really real weird downsides and its own drama (it is utterly ridiculous that an export overworld function is a hard no) it is an incredibly polished tool, so there's an incredibly slim chance of replacing it. It is still to this day the most straightforward and easy to use level editor for hacking I have ever used, and it even beats Mario Maker 2 for me (though I think I like MM1 more). If you need to touch the code, it's much easier to use the disassembly as reference and write an ASM patch to insert with ASAR since you're going to have to work around Lunar Magic's ASM modifications anyways. Our entire tool ecosystem is built around this, and even then getting people to even switch tools that work in this ecosystem can be like pulling teeth. There are people who would rather stick with zsnes than switch to a new version of addmusic that doesn't cause more accurate emulators to explode. If you want that keep everything separate and have a dev environment build experience that a decomp provides, you can set that up too (users in the community have) since all the tools work straight from command line. Unless somebody comes up with a stronger tool that works cleanly with a disassembly, or there's a viable reason for us to move to a C decomp over a 65816 disassembly or binary editing it's a very very very hard sell, and I'd argue that GBA pokemon is basically at that crossroads even if there's competing tools and standards. It shouldn't be anywhere as hard a sell if the tools for the decomp are easy to use as I see argued, but being super aggro and elitist about it is going to make it a harder one. You'd be better off trying to make the experience of using decomp as close to "download files, run LunatoneMagic.exe, point at decomp folder" as you possibly can.
Sorry if this got a bit rambly and lost focus a bit, it's a late night post from a long day and my adhd is going all over the place from it.
Version control says hi.
The only way something like Crown is produced is through looking at the source code. They used pokefirered's documentation and then binary hacked. Crown would not be without the decomps.