libretro / Genesis-Plus-GX-Wide

Widescreen modification of Genesis Plus GX
Other
22 stars 17 forks source link

Is there any methods for creating custom patches? #14

Closed EimaMei closed 2 years ago

EimaMei commented 3 years ago

I've saw an online patcher for sonic 1 and 2. However, I wasn't able to find any ways to patch other genesis games that had broken rendering in the emulator. Is there ways to patch other genesis games and if it requires romhacking, what knowledge do you need for it to render normally in the emulator?

vladikcomper commented 2 years ago

Unfortunately, making proper widescreen hacks isn't easy and largely depends on how the base game was programmed. Different games were built by different companies, use completely different custom-made engines, so making a universal widescreen patcher isn't even remotely possible.

Sonic games are the rare examples of MD games that were fully studied and disassembled. We know their engines in detail, and since Sonic 1 and Sonic 2 engines are quite similar, it was possible to create a patcher with this knowledge.

As for the other games, you'd have to disassemble each of them, study how they handle drawing of tiles and sprites, study how in-game camera is implemented, then you'd have a chance to create a semi-decent widescreen hack. Again, some games may be easier than the others. Ristar, for one, overdraws tiles by default, so even unpatched, it looks much better than the other games. For other games, the process I described above can take months of even years, so I don't think there will be many widescreen hacks anytime soon.

EimaMei commented 2 years ago

Ah okay, thank you for the in-depth answer. Kinda sad that it'll take a very long time before more patches com but oh well, at least it makes sense why that's the case