A multi-platform port for Pokemon Emerald is in the works, supports Windows, Linux, and Android

emerald.jpg

Tired of waiting for Game Freak to bring Pokemon Emerald to modern platforms? We've got you covered with a brand new port in the works. Currently available on GitHub if you're happy to build it for yourself, the game features support for keyboard input on Windows and Linux, and touch input on Android. On top of this, we see support for traditional save files, assumedly maintaining compatibility with PKHeX.

In the Reddit post announcing the project, it's noted that it is currently in experimental stages, with work still yet to do on better display settings, volume controls, controller mapping and more. Even so, it's a great leap forwards for fans of the iconic game.

:arrow: Source
 
I'm not a lawyer and this isn't legal advice, but I'm not so sure that the decomp itself is entirely safe from the ninja treatment. The upstream decomp (and, in turn, this port) contains assets ripped directly from the original game. For example, this Lapras sprite, as well as every other sprite that the game uses.
I always found this strange about the pokemon decompilations since normally in a clean-room decomp you would extract these assets from a user provided binary (like in the sm64 decompilation or gamecube/wii decompilations which use modern dtk to extract assets). And in ports like the sm64 pc port or the mario party 4 pc port you need to provide a binary so it can load/extract said assets
 
Can we PLEASE for the love of Saint Seiya update our "facts" about when its okay to announce these things or not

Its a clean room project and the rom or original assets are not included. Please name a single project that was clean room like this, that ended up getting in trouble by nintendo.
The thing is that specifically in the pokeemerald decomp (or really any of prets decomps) is that assets ARE INCLUDED, those being graphics and sounds, which normally you would be forced to extract from the binary during building (like sm64)
 
Isn't there any GBA emulator that allows online trading?
mGBA has had an open issue for link cable-over-IP support since 2021. If the conversation there is anything to go off of, endrift's working on implementing some sort of system in which two emulation instances are run in sync, one for each player's inputs, to prevent link cable latency from becoming an issue. The feature's targeted for the 0.12.0 release, but "that may slip depending on how much other stuff I have to do."

That being said, that thread also mentions Multigba S as an alternative that implemented some form of netplay. Apparently it's a fairly lazy implementation that makes use of what's effectively just game streaming, but it gets the job done.

Why do people still use github for this stuff? It just gets DMCA'd. Gitlab seems more reliable.

Eh, Github has its problems, but I wouldn't say that any major source hosting platform is "more reliable" than another in the sense that you're talking about. Github projects might be a bit more visible than Gitlab ones just by nature of the site's reach, but either site is going to comply with any remotely credible takedown notice that Nintendo hands them. The only difference is how long it takes the rightsholders to find the project and take action, not whether or not they will in the first place. The alternative for the hosting platforms would be to risk being held liable for enabling copyright infringement, and no legitimate business's legal counsel is going to endorse that plan.

The only real answer to that problem would be either safeguarding your project from copyright infringement allegations in the first place (see discussions upthread) or finding a site to host your stuff on that is somehow not beholden to international copyright law. The latter would mean leaning on some kind of hypothetical warez distributor that would need to implement easy, anonymous, git-based collaboration. I can't imagine that there's a big enough demand for a service like that to exist, especially since open-source projects generally need to make contributing as accessible as possible in order to progress.

(As a reminder, if you, dear reader, are aware of such a site's existence, keep that to yourself.)

Point being, if you want your project to be copyright-safe, then you need to have a copyright-safe project from the start. Moving from one public, law-abiding hosting platform to another isn't going to save you from an army of lawyers whose literal job is to take your project down.

(Once again, I am not a lawyer and this is not legal advice.)
 
Last edited by Mixtape,
  • Like
Reactions: raxadian
mGBA has had an open issue for link cable-over-IP support since 2021. If the conversation there is anything to go off of, endrift's working on implementing some sort of system in which two emulation instances are run in sync, one for each player's inputs, to prevent link cable latency from becoming an issue. The feature's targeted for the 0.12.0 release, but "that may slip depending on how much other stuff I have to do."

That being said, that thread also mentions Multigba S as an alternative that implemented some form of netplay. Apparently it's a fairly lazy implementation that makes use of what's effectively just game streaming, but it gets the job done.

no emulation of the wireless adapter yet? I know it would be kinda pointless since so few games use it but I am curious.
 
  • Like
Reactions: raxadian
I come from the future. The year is 2072. Emerald is still being hacked, ported, and emulated to death. No other Pokemon game exists except for gen III. Physical cartridges are worth more than a mansion and a brand-new car combined. Hackers working on projects for other gens are viewed as heretics of Hoenn and are tossed into Mt. Chimney.
Speak for yourself. I'm a gen 2er. Lol.
 
Whats the benefit of ports like this other than using an emulator.
I mean you can play it on almost every weak hardware fully on emulator. For enhancements there are tons of QoL patches out there. The only benefit I see would be to play online with others (like Fanmade RPGXP games) between all different plattforms.
 
So this is emulation but with more steps?

No, a port is the exact opposite of emulation.

Emulation is making it so that code compiled for different hardware can run on your machine.

A port is like this allows you to compile the source code so that it will run natively on your machine.
However what I noticed in some ports is that they may still partially emulate some things (for example the sound chip)

However ideally a port should (and could) run 100% natively.
This has several perks.
* Allows for much better performance
* allows for easier modding
* allows more advanced modding (especially if open source), like ultra wide-screen, increased frame rates, totally
* new features that we never would have been able to get unless we had access to source-code.
* ease of set up custom logging and test suits for bug hunting
* and much much more.

working with a native port opens up so many doors of possibilities that would be extremely difficult or tedious to achieve with emulation. Because even if you have the source-code and can compile your mods into a GBA rom, you are still limited by the limitations of how a gameboy advance works.

In theory with a native port, you could rewrite the entire game engine and graphics engine if you want.
You could make it so that it is able to render things that would have never been possible for the original hardware.
Post automatically merged:

Whats the benefit of ports like this other than using an emulator.
I mean you can play it on almost every weak hardware fully on emulator. For enhancements there are tons of QoL patches out there. The only benefit I see would be to play online with others (like Fanmade RPGXP games) between all different plattforms.

Read my previous comment
 

Site & Scene News

Popular threads in this forum