New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Integrating Accessibility into Open Gothic #479
Comments
Hi, @Nuno69 !
Naturally my concerns here are:
Can do.
Union should have access to waynet, that is used by AI. Or this is not enough?
We have ray-casting, via BulletCollision, see
Ah, so you can validate if accessibility feature is actually working as it should. |
Hi @Try.
Regarding Waynet; yes, Union has access to it, but as far as I understand the system, objects have to be linked to the waynet as its used for something like NPC routines, script events, monster spawns ETC. This gives us access only to the objects which are considered important for the game. My idea is that the player can view the list of object that is sorted from closest to nearest and navigate to it using a turn by turn navigation system. TBT system plus a wall detection would make it possible for the blind player to fully understand the game world. |
I agree . Implementing libraries for screen readers are very important, because alot of people are using different screen readers, sometimes with braille monitors. I think, that tolk.dll supports nvda. Usually sapi has problems with interupting speech, and we need to add a function, which after pressing a corresponding key pauses the speech. Screen readers like zdsr or jaws has this behaviour by default, but ms sapi doesnt have this as I know. I think, that you can add a support for these speech libraries, but you dont have to distribute these with the engine. We can copy these dlls if it is needed..
Wysyłane z aplikacji Outlook dla systemu iOS<https://aka.ms/o0ukef>
…________________________________
Od: Arkadiusz Ś ***@***.***>
Wysłane: Wednesday, July 5, 2023 12:25:39 PM
Do: Try/OpenGothic ***@***.***>
DW: mojsior ***@***.***>; Manual ***@***.***>
Temat: Re: [Try/OpenGothic] Integrating Accessibility into Open Gothic (Issue #479)
Hi @Try<https://github.com/Try>.
Yes, YAGA uses various *.dll libraries because those DLLs are interfaces to popular screenreaders.
Regarding Speech we have two ways
* Stick to the DLLs: this is the most viable solution, as every blind player uses a screenreader to play, and playing with their preferred settings like voice, its pitch, rate ETC is the most optimal and that's what most games do.
* Use the System Speech APIs: For Windows, this is going to be Microsoft Speech API(SAPI 5)<https://learn.microsoft.com/en-us/previous-versions/windows/desktop/ms723627(v=vs.85)>, for MacOS it's going to be either NSSpeechSynthesizer<https://developer.apple.com/documentation/appkit/nsspeechsynthesizer> or [AVSpeechSynthesizer (MacOS 14 Sonoma and up])](https://developer.apple.com/documentation/avfaudio/avspeechsynthesizer/). To the best of my knowledge, Linux uses something called SpeechDispatcher<https://freebsoft.org/speechd> however I have no experience with this system whatsoever.
Regarding Waynet; yes, Union has access to it, but as far as I understand the system, objects have to be linked to the waynet as its used for something like NPC routines, script events, monster spawns ETC. This gives us access only to the objects which are considered important for the game. My idea is that the player can view the list of object that is sorted from closest to nearest and navigate to it using a turn by turn navigation system. TBT system plus a wall detection would make it possible for the blind player to fully understand the game world.
See this World Of Warcraft Classic mod<https://duugu.github.io/Sku/> or this game for the blind<https://www.youtube.com/watch?v=Z4wOq-WBE7k> if you want to understand my idea.
Tell me when I can start implementing speech and what steps should I take.
—
Reply to this email directly, view it on GitHub<#479 (comment)>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/AHWIH2VL3D7Q4UGUNVTVHUDXOU6KHANCNFSM6AAAAAAZ56DDQE>.
You are receiving this because you are subscribed to this thread.Message ID: ***@***.***>
|
The theoretical problem with including screenreader drivers as loose DLLs is that the engine would have to connect to the internet to download them. That would require additional logi for falling back in case of the download failure. While it’s not complicated in itself, it’s the next permission that OpenGothic would have to have. Its not a problem on MacOS, since ```NSSpeechSynthesizer``` and ```AVSpeechSynthesizer``` are the system APIs, but I don’t know if connecting to the network is good.
… On Jul 5, 2023, at 13:41, mojsior ***@***.***> wrote:
I agree . Implementing libraries for screen readers are very important, because alot of people are using different screen readers, sometimes with braille monitors. I think, that tolk.dll supports nvda. Usually sapi has problems with interupting speech, and we need to add a function, which after pressing a corresponding key pauses the speech. Screen readers like zdsr or jaws has this behaviour by default, but ms sapi doesnt have this as I know. I think, that you can add a support for these speech libraries, but you dont have to distribute these with the engine. We can copy these dlls if it is needed..
Wysyłane z aplikacji Outlook dla systemu iOS<https://aka.ms/o0ukef>
________________________________
Od: Arkadiusz Ś ***@***.***>
Wysłane: Wednesday, July 5, 2023 12:25:39 PM
Do: Try/OpenGothic ***@***.***>
DW: mojsior ***@***.***>; Manual ***@***.***>
Temat: Re: [Try/OpenGothic] Integrating Accessibility into Open Gothic (Issue #479)
Hi @Try<https://github.com/Try>.
Yes, YAGA uses various *.dll libraries because those DLLs are interfaces to popular screenreaders.
Regarding Speech we have two ways
* Stick to the DLLs: this is the most viable solution, as every blind player uses a screenreader to play, and playing with their preferred settings like voice, its pitch, rate ETC is the most optimal and that's what most games do.
* Use the System Speech APIs: For Windows, this is going to be Microsoft Speech API(SAPI 5)<https://learn.microsoft.com/en-us/previous-versions/windows/desktop/ms723627(v=vs.85)>, for MacOS it's going to be either NSSpeechSynthesizer<https://developer.apple.com/documentation/appkit/nsspeechsynthesizer> or [AVSpeechSynthesizer (MacOS 14 Sonoma and up])](https://developer.apple.com/documentation/avfaudio/avspeechsynthesizer/). To the best of my knowledge, Linux uses something called SpeechDispatcher<https://freebsoft.org/speechd> however I have no experience with this system whatsoever.
Regarding Waynet; yes, Union has access to it, but as far as I understand the system, objects have to be linked to the waynet as its used for something like NPC routines, script events, monster spawns ETC. This gives us access only to the objects which are considered important for the game. My idea is that the player can view the list of object that is sorted from closest to nearest and navigate to it using a turn by turn navigation system. TBT system plus a wall detection would make it possible for the blind player to fully understand the game world.
See this World Of Warcraft Classic mod<https://duugu.github.io/Sku/> or this game for the blind<https://www.youtube.com/watch?v=Z4wOq-WBE7k> if you want to understand my idea.
Tell me when I can start implementing speech and what steps should I take.
—
Reply to this email directly, view it on GitHub<#479 (comment)>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/AHWIH2VL3D7Q4UGUNVTVHUDXOU6KHANCNFSM6AAAAAAZ56DDQE>.
You are receiving this because you are subscribed to this thread.Message ID: ***@***.***>
—
Reply to this email directly, view it on GitHub <#479 (comment)>, or unsubscribe <https://github.com/notifications/unsubscribe-auth/AN6B3G2HUTGYH5A3EKO2H73XOVHH3ANCNFSM6AAAAAAZ56DDQE>.
You are receiving this because you were mentioned.
|
@Nuno69 not necessarily. OpenGothic could* house the code changes needed for accessibility part to work, but not concern itself with the release and testing of the accessibility part, as not to dilute the focus and dev time while more impactful tasks are still on the table. You could compile and make available "the accessible" version as standalone, independently. This would minimize the projects involvement yet keep you from having to maintain own fork. *I'm not a contributor, so what the project "could" or "could not" do depends on its maintainers and owners. |
Introduction
Hello everyone. My name is Nuno and I have been working on the YAGA project which aims to make Gothic I, Gothic II/Gothic II NotR accessible and playable for blind players.
The current project is based on the Union SDK which allows me to interact with ZenGin rather easily and conveniently, however this implementation has some limitations.
Project structure
Yaga is comprised of the following distinct parts:
What needs doing?
Oh boy, a lot
InventoryReader
file in the original YAGA project to understand what I mean.My questions
Any input on that would be deeply appreciated. For myself, I am a huge fan of Gothic and the release of ReGoth, Union and now OpenGothic make me still believe I'll be able to play that great game myself.
The text was updated successfully, but these errors were encountered: