You should do Lufia 1 as well.


Ash nazg durbatulûk, ash nazg gimbatul,
Ash nazg thrakatulûk agh burzum-ishi krimpatul.
-----Original Message----- From: Zachary Kline
Sent: Wednesday, October 01, 2014 10:47 PM
To: Gamers Discussion list
Subject: Re: [Audyssey] A little demo of my Super Nintendo project withChrono Trigger and Lufia 2

Hi Ian,

I just want to reiterate how awesome this is. I heard a ton about ChronoTrigger at least for years. I realize you’ve still got a lot to do, but I wish you every success. As a related question, have you considered handing out the workload to some of the existing SNES hobbyists and so forth? I’d hate for you to lose steam at some point if it becomes too much of a grind.
All the best,
Zack.
On Oct 1, 2014, at 9:26 PM, Ian Reed <supp...@blindaudiogames.com> wrote:

Hi Willem,

Nope, I did not wrap the function that renders the text, but that's a good guess. The Super Nintendo actually has no concept of text and games work pretty close to the hardware. It does have a concept of tiles and many games use a 1 character per tile system for rendering text. In those cases the character tiles just need to be identified once so my tool can recognize them in the future.
Chrono Trigger uses this method for the party menus.

The other way games render text is by taking a block of tiles and custom rendering text to them.
This is done by changing bits in video ram between clock cycles.
In Chrono Trigger and Lufia 2 the NPC dialog text is drawn this way.
So I have to identify the block of tiles used to custom draw text, the order in which those tiles are laid out, and then do a little bit of work to tear lines apart, and then individual characters apart while identifying spaces. Once I have characters split apart, they can be identified, and then my app can read them for the future.

Regarding other emulators and a function that speaks all text rendered to the screen: It's my guess that emulators for systems that do 3D rendering would have such a function. So probably Playstation and successors, Dreamcast, XBox and successors, and probably N64 and successors.

You still run into a problem where reading all text rendered at all times doesn't make sense. For instance, in the Chrono Trigger party menus there is a lot of text rendered in one character per tile form at all times, but it's important to know where the menu pointer is so you can instead speak only the text that corresponds to what is currently selected. I do plan on having a hot key for getting all the text currently visible in the party menu to be displayed in a textbox in another window. That would let me continue to be brief with what I'm announcing on the party menus, but still let you have an option to hear all the text. It would also be nice if I could make this player configurable via scripting, so you could add hot keys to announce Chrono's HP, MP, and other stats displayed when he is selected. I will probably add these myself until I reach a point where scripting extensions are possible.

I've also looked at Nintendo, GameBoy, GameBoy Advance, and briefly Nintendo DS. These 4 seem to render the game in a similar way to what the Super Nintendo does. But the GBA and DS have a higher number of direct drawing modes than the others, so there's a higher chance that a game on them would be rendering itself pixel by pixel and it would be more difficult to identify text.
Or at least have a higher performance cost to doing so.
And direct drawn games also make it more difficult to identify parts of the background map, which would hinder creating tools for navigation.

So it's unfortunately already more complex than just announcing all text currently being rendered.

Thanks for the words of encouragement.

~ Ian Reed
Try my free games at http://BlindAudioGames.com


On 10/1/2014 2:38 AM, Willem Venter wrote:
Hi Ian.
Well done on finding a very interesting solution to the problem of
reading text out loud from the snes emulator.

Did you wrap the function that renders the text in the emulator
window? I think the technique can also be used for any other
open-source emulator or game which has a function to "print text on
screen at location x". Something I think you should add is the ability
for excluding certain regions of the screen, or even prioritizing
reading of others  based on some trigger (e.g color or wording).

Good luck with the rest of your project. Please keep us updated.

On 10/1/14, Ian Reed <supp...@blindaudiogames.com> wrote:
Hi all,

A while ago I started a project to see if I could make Chrono Trigger,
and possibly other games, accessible when played through the Snes9x
emulator.
I hadn't worked on this project for a while but was looking at starting
it up again and thought I'd make a quick demo to show people how far it
got.
http://blindaudiogames.com/Downloads/ChronoLufiaDemo.mp3

It shows Chrono Trigger and Lufia 2.
I'm calling the project SNAP, short for Super Nintendo Accessibility
Project.
Enjoy!

Ian Reed
Try my free games at http://BlindAudioGames.com


---
Gamers mailing list __ Gamers@audyssey.org
If you want to leave the list, send E-mail to
gamers-unsubscr...@audyssey.org.
You can make changes or update your subscription via the web, at
http://audyssey.org/mailman/listinfo/gamers_audyssey.org.
All messages are archived and can be searched and read at
http://www.mail-archive.com/gamers@audyssey.org.
If you have any questions or concerns regarding the management of the list,
please send E-mail to gamers-ow...@audyssey.org.

---
Gamers mailing list __ Gamers@audyssey.org
If you want to leave the list, send E-mail to gamers-unsubscr...@audyssey.org.
You can make changes or update your subscription via the web, at
http://audyssey.org/mailman/listinfo/gamers_audyssey.org.
All messages are archived and can be searched and read at
http://www.mail-archive.com/gamers@audyssey.org.
If you have any questions or concerns regarding the management of the list,
please send E-mail to gamers-ow...@audyssey.org.


---
Gamers mailing list __ Gamers@audyssey.org
If you want to leave the list, send E-mail to gamers-unsubscr...@audyssey.org.
You can make changes or update your subscription via the web, at
http://audyssey.org/mailman/listinfo/gamers_audyssey.org.
All messages are archived and can be searched and read at
http://www.mail-archive.com/gamers@audyssey.org.
If you have any questions or concerns regarding the management of the list,
please send E-mail to gamers-ow...@audyssey.org.


---
Gamers mailing list __ Gamers@audyssey.org
If you want to leave the list, send E-mail to gamers-unsubscr...@audyssey.org.
You can make changes or update your subscription via the web, at
http://audyssey.org/mailman/listinfo/gamers_audyssey.org.
All messages are archived and can be searched and read at
http://www.mail-archive.com/gamers@audyssey.org.
If you have any questions or concerns regarding the management of the list,
please send E-mail to gamers-ow...@audyssey.org.

---
Gamers mailing list __ Gamers@audyssey.org
If you want to leave the list, send E-mail to gamers-unsubscr...@audyssey.org.
You can make changes or update your subscription via the web, at
http://audyssey.org/mailman/listinfo/gamers_audyssey.org.
All messages are archived and can be searched and read at
http://www.mail-archive.com/gamers@audyssey.org.
If you have any questions or concerns regarding the management of the list,
please send E-mail to gamers-ow...@audyssey.org.

Reply via email to