News: 11 March 2016 - Forum Rules
Current Moderators - DarkSol, KingMike, MathOnNapkins, Azkadellia, Danke

Author Topic: Photo-Sensitive Epilepsy Safe Hacks  (Read 1176 times)

tygerbug

  • Jr. Member
  • **
  • Posts: 57
    • View Profile
Photo-Sensitive Epilepsy Safe Hacks
« on: September 19, 2020, 05:01:00 am »


http://www.romhacking.net/games/1296/

Kyouryuu Sentai Zyuranger NES (Super Sentai/ Mighty Morphin Power Rangers series)

No Full-Screen Flashes

This hack was created by Tetrahedrus at the request by Garrett Gilchrist, a friend of popular game reviewer Indie Gamer Chick (Cathy Vice), who has photo-sensitive epilepsy, but wanted to review the game.

https://twitter.com/IndieGamerChick

All full-screen flashes have been removed to make the game easier to play by those affected by flashing lights; the removed flashes are as follows:

Attacking an enemy.
The Howling Cannon after beating a boss.
Getting all ten coins in a level and seeing the mecha.
Scoring/getting scored against in the pong minigame (screen shows a brief black background).
Having the bomb explode in the bomb-tossing minigame (screen is all white for a second, but no repeated flashing).
Flashing still occurs on a smaller scale in places such as attacking bosses or when the player is attacked, but only the sprite itself flashes, so hopefully those won’t impede enjoyment.

Included are two separate .IPS patches. The one whose filename ends in (JPN) should be applied to the original ROM with Japanese text. The patch ending in (ENG) should be used when applying to a ROM that has had the English patch by Grimm Translations (http://www.romhacking.net/translations/1395/) already applied to it.

Tetrahedrus first began working on these NES hacks with no experience with using FCEU's debugging tools, but worked from what he knew.

Tetrahedrus wrote:

"It wasn't that hard to find the points (to edit out). I looked for suspicious RAM values (in the RAM search tool) to see where in the ROM data that RAM value is invoked. For tougher bits, like the flashing when attacking the final boss and after the boss is defeated, I think my best best is to use this data logger feature in FCEUX.

If I activate the data logger right before a flash and then deactivate it immediately after, I can save a stripped iNES ROM, where the only data contained is the code that got activated, so I can better isolate where in the code the flash occurred. It still leaves me with plenty of code to sift through, but I used it just now to figure out how to handle the final boss flashes."


_________________________


Willow NES No Flash Hack

by JigglySaint

http://www.romhacking.net/hacks/4992/

This is a hack that removes some of the bright flashing in the game. This allows the game to be better enjoyed by those who have sensitivity to bright flashing lights. Some other flashing animation is still in the game, but the ones that got the most complaints such as the death flash, the flash from splitting ghosts, and from using the Fleet Spell have all been eliminated. Death will still cause Willow to flash, and the screen will turn white, but the full screen flash will be gone.


_________________________

Cocoron - Flashing removed by NovaSquirrel.
http://www.romhacking.net/hacks/5401/

This patch removes the full-screen flashing effects from Cocoron in order to make the game more accessible. Cutscenes are unmodified aside from their flashing effects being removed, and their timing is unchanged.

_________________________



Prince of Persia - Flash Removal
by u/usertheloset
https://www.romhacking.net/hacks/5443/

This hack removes all full-screen flashes including:

The red flashing when you die,
The red flashing when you get a sword,
The purple flashing when you hit an enemy,
The pink flashing when jaffar is defeated.


_________________________



Mega Man 2 - No Full-Screen Flashes Hack
An accessibility hack by Tetrahedrus

http://www.romhacking.net/hacks/5420/

This hack has removed all full-screen flashes from Mega Man 2 for the NES. They are as follows:

-Stage select screen
-Flashing during boss fights (such as in the background like with Metal Man, when attacking certain bosses, and the flashing after beating certain bosses)
-The purple flashing when Dr. Light gives you special weapons
-The map of Dr. Wily's castle when progressing to the next stage
-The final cutscene, including the seasonal transitions

This hack was a request by Garrett Gilchrist (@GarrGilchrist) on behalf of Indie Gamer Chick (@IndieGamerChick) in their pursuit of hacking ROMs to be more accessible to those with epilepsy.

_________________________

Zelda 2 Redux (ShadowOne333): reduced flashing during death
https://www.romhacking.net/forum/index.php?topic=26001.0


_________________________



If anyone would like to help us out and create further hacks of any game to be more friendly to those with photo-sensitive epilepsy, we'd be grateful.

I will post some ideas below.


I'm also curious about how viable it would be for an emulator (like Mesen) to detect and remove (or lessen) this sort of full-screen flashing, or an emulator script to do it.

Many triggers come from rapid writes to color 0 of the background palette (universal background color). This could be unchecked.

One thing that might work would be setting a minimum frame count for checking writes to that address, ignoring any further writes that land within that time window, and when no further writes are detected, apply the most recently attempted write only.

Perhaps it could be accomplished via a lua script?

There's further discussion of this here:

https://forums.nesdev.com/viewtopic.php?f=3&t=20920


_________________________




REQUESTS - CAN YOU FILL THESE?

Mega Man series generally - Flashing around bosses and Wily introductions
Magical Kids Doropie / The Krion Conquest - severe flashing introducing bosses.
Legend of Kage - Flashing in first level

Mitsume ga Tooru - last boss fight

Big Nose Freaks Out - Lightning storm, level 2
Firehawk - When you pick people up off the ground
Super Spy Hunter - B Bomb, stage 2 etc
Gold 13 Top Secret Episode- Shooting
Xexyz - Flashing boss
Whomp Em / Saiyuuki World 2 - last boss

Bandai's Frankenstein NES starts with flashing, I wasn't sure how prevalent it is in actual gameplay.


Gradius 2 Boss Rush, late in game, is very flashy.
https://twitter.com/IndieGamerChick/status/1307537532662415362

Virtual console version fixes:
- Getting an end-of-boss item in Super Mario Bros. 3 no longer flashes orange and black, and only shows orange for that time.
- Game Over screen in Zelda 2 no longer flashes.
- Flash when firing in Duck Hunt is gone.


_________________________

SNES:

Earthbound MaternalBound Redux hack (ShadowOne333):
http://www.romhacking.net/hacks/4964/
Implemented photosensitive reduction hacks made from subsequent releases of EarthBound (SNES Mini, Virtual Console) into MaternalBound, to make the experience the most seizure-safe possible


_________________________

Known SNES issues:

Mega Man and Mega Man X series - Flashing around bosses etc?
Mighty Morphin Power Rangers: The Movie - Flashing intro and morphing transformations
Mighty Morphin Power Rangers: Fighting Edition - General flashing during fights


Virtual console SNES fixes:
- Animals carrying flashlights in Donkey Kong Country series no longer flash the screen when turning around.
- Some magic spells in Super Mario RPG are dimmed or no longer flash the screen.
- At the end of Contra 3, the white flashes of explosions when leaving the crater are dimmed.
- PSI with flashes in Earthbound are very dimmed/washed out.


Neo Geo games had tweaks on Virtual Console. One or two of the releases of Metal Slug had hitflashes completely removed.

Mario Kart 64's lightning item also has a new visual effect on VC.


Bonus - Pokémon anime: Dennō Senshi Porygon Reedit

https://www.facebook.com/garrett.gilchrist/videos/vb.512982846/10159030130652847
« Last Edit: October 02, 2020, 11:56:53 pm by tygerbug »

mikeprado30

  • Full Member
  • ***
  • Posts: 223
    • View Profile
Re: Photo-Sensitive Epilepsy Safe Hacks
« Reply #1 on: September 19, 2020, 12:26:12 pm »
That's an excellent idea for ROM hacks, bro! :)

ifightdragons

  • Jr. Member
  • **
  • Posts: 98
    • View Profile
Re: Photo-Sensitive Epilepsy Safe Hacks
« Reply #2 on: September 19, 2020, 01:15:13 pm »
That's an excellent idea for ROM hacks, bro! :)

These aren't ideas for ROM hacks, but a summation of already existing hacks :)

goldenband

  • Sr. Member
  • ****
  • Posts: 325
    • View Profile
Re: Photo-Sensitive Epilepsy Safe Hacks
« Reply #3 on: September 19, 2020, 03:20:52 pm »
Full-screen flashing causes some analog-to-HDMI converters to lose sync briefly, so these hacks can have a double purpose as well. :)

ShadowOne333

  • Hero Member
  • *****
  • Posts: 1512
    • View Profile
Re: Photo-Sensitive Epilepsy Safe Hacks
« Reply #4 on: September 19, 2020, 05:02:59 pm »
For what it's worth, I ported over Zelda 2's flash hacks into Zelda 2 Redux, and for EarthBound I did the same for the MaternalBound Redux release.
I added them as default patches.

tygerbug

  • Jr. Member
  • **
  • Posts: 57
    • View Profile
Re: Photo-Sensitive Epilepsy Safe Hacks
« Reply #5 on: September 20, 2020, 12:45:19 am »
Thank you, ShadowOne333.

IndieGamerChick (Cathy Vice) played Zelda 2 Redux earlier this week and considers it one of the top NES games.

Tweets here:
https://twitter.com/search?q=from%3Aindiegamerchick%20redux&src=typed_query&f=live

She noted that the death screen is not as safe as in Virtual Console releases which used a pink deathscreen, but that it's not the dangerous trigger that it was.

I expect she'll be playing that Earthbound also.


Cocoron - Flashing removed by NovaSquirrel.
http://www.romhacking.net/hacks/5401/


Tetrahedrus' Mega Man 2 is in progress and mostly done.

If anyone would like to help us out and create further hacks of any game to be more friendly to those with photo-sensitive epilepsy, we'd be grateful.
« Last Edit: September 20, 2020, 06:56:51 pm by tygerbug »

FeRcHuLeS

  • Jr. Member
  • **
  • Posts: 27
    • View Profile
Re: Photo-Sensitive Epilepsy Safe Hacks
« Reply #6 on: September 22, 2020, 04:18:19 pm »
I found extremely annoying lightgun games like Mechanized Attack, Duck Hunt and so on, please check these in general lightgun games.

NovaSquirrel

  • Newbie
  • *
  • Posts: 1
    • View Profile
Re: Photo-Sensitive Epilepsy Safe Hacks
« Reply #7 on: September 22, 2020, 08:44:06 pm »
My procedure for the Cocoron patch involved:
  • Identifying that it was a palette effect
  • Setting a breakpoint for writes to palette memory
  • Finding a mirror of the palette in RAM
  • Setting a breakpoint on writes to that mirror
  • Modifying the flash effect code to always choose the path where the colors are normal

Instead of just looking at RAM, I would go for directly setting breakpoints on changes to the NES feature that's being used for the flash. Which I'm guessing is going to be a palette change most of the time? And The Krion Conquest looked like it was using scrolling for the informational screen that introduced bosses.

If someone can get me Mesen savestates (or even better, movies) that put you at moments in the game that have flashing, I can look into some of these. I guess it would also be helpful to know what change is desired? Like The Krion Conquest could just stay on the boss introduction the entire time until the whole thing has displayed.

tygerbug

  • Jr. Member
  • **
  • Posts: 57
    • View Profile
Re: Photo-Sensitive Epilepsy Safe Hacks
« Reply #8 on: September 23, 2020, 09:36:53 am »
  I was actually just talking about breakpoints with a developer, and about the possibility of an emulator being able to spot rapid background-color changes (which is often the problem).

  The Magical Doropie / Krion Conquest problem is very strange to look at. I noticed it in a Youtube playthrough.

  Staying on the boss introduction the whole time would be desired there, yes. Usually the idea can be gotten across without the flashing!

   For example:
https://www.facebook.com/garrett.gilchrist/videos/vb.512982846/10159030130652847


   Perhaps this could be handled within the emulator itself using lua scripting. There's discussion of this here:

https://forums.nesdev.com/viewtopic.php?f=3&t=20920






Mega Man 2 - No Full-Screen Flashes Hack
An accessibility hack by Tetrahedrus

This hack has removed all full-screen flashes from Mega Man 2 for the NES. They are as follows:

-Stage select screen
-Flashing during boss fights (such as in the background like with Metal Man, when attacking certain bosses, and the flashing after beating certain bosses)
-The purple flashing when Dr. Light gives you special weapons
-The map of Dr. Wily's castle when progressing to the next stage
-The final cutscene, including the seasonal transitions

This hack was a request by Garrett Gilchrist (@GarrGilchrist) on behalf of Indie Gamer Chick (@IndieGamerChick) in their pursuit of hacking ROMs to be more accessible to those with epilepsy.
« Last Edit: September 24, 2020, 01:45:31 am by tygerbug »

tygerbug

  • Jr. Member
  • **
  • Posts: 57
    • View Profile
Re: Photo-Sensitive Epilepsy Safe Hacks
« Reply #9 on: October 02, 2020, 11:57:24 pm »



Prince of Persia - Flash Removal
by u/usertheloset
https://www.romhacking.net/hacks/5443/

This hack removes all full-screen flashes including:

The red flashing when you die,
The red flashing when you get a sword,
The purple flashing when you hit an enemy,
The pink flashing when jaffar is defeated.

julayla

  • Sr. Member
  • ****
  • Posts: 271
    • View Profile
Re: Photo-Sensitive Epilepsy Safe Hacks
« Reply #10 on: October 03, 2020, 09:45:44 am »
Amazing idea and projects. Because some of us can't handle the epilepsy from certain games