Welcome to the Achaea Forums! Please be sure to read the Forum Rules.

Oracle: A MUSHclient System for Blind Players

AmmarAmmar Member Posts: 9
TL;DR: I'm making a MUSHclient system for blind players. Track its progress here!

MUSHclient is the best client option right now for blind players who want to enjoy the most immersive and fast-paced parts of Achaea. However, with the advent of newer and more feature-rich clients like Mudlet, there aren't many players creating scripts for MUSH. Those people who do create scripts tend to keep them to themselves--probably because it's easier to make something tailored to your own specific goals and use cases. In the spirit of "worse is better" I have started a Github repository where I will share some of the work I have done building out my own system. My goal is to create a framework that anyone interested can use and build upon for their own individual needs. I also hope this can be a collaborative effort; pull requests and feature suggestions are more than welcome.

Right now there are only a few basic commits, mostly to track gmcp messages in the world namespace and take commas out of the prompt for faster reading. I'm posting here to get thoughts from people who might want to use this system. What features are you missing in Achaea? What would make your gameplay more accessible, enjoyable, etc? here are a few ideas I have.

Short-term goals (within the next week or so):
- Change local gmcp tables to match their json labels (eg: fix Room.Info to be gmcp.Room.Info). This will mean gmcp messages will be standard.
- Add gold tracker.
- Implement my (very clunky) name database code.
- Add my MUSHclient version of tempTimer.
- Add channel history plugin (alt+1-0 reads last ten messages, alt+right/left navigates through channels, etc.)

Longer term projects, in order of priority / ability to implement:
- Abstracted PlayGameSound functions. Play one or a random selection of sounds for various events. Sounds not included.
- Rift tracking (sort rift by quantity, show only things you are low or full on, etc.)
- Affliction and defense tracking (add / remove / stacks)
- Offense tracking (limb counter, eat / smoke / salve tracker, etc). This will take a while to fully implement.
- Mapper with goto functionality. (Another big one.)

I look forward to your thoughts and suggestions. Feel free to reach out either in this thread or in game.

https://github.com/achaea-oracle/oracle
IssamJinosShubJethanTynilTahquilZoktosGilliamFendoAstarodDorielIliraSobriquetKrizalJahrak

Comments

  • AstarodAstarod Member Posts: 450 ✭✭✭✭ - Eminent
    edited April 19
    What would make your gameplay more enjoyable?

    Effervescence hitting at 5 second intervals.


    Post-bad-joke: Cool man! Let me know if you need a set of spars or anything to test out some of the stuff you've put together! 

    The Divine voice of Twilight echoes in your head, "See that it is. I espy a tithe of potential in your mortal soul, Astarod Blackstone. Let us hope that it flourishes and does not falter as so many do."
    Ammar
  • CaelanCaelan Member Posts: 1,925 @ - Epic Achaean
    I'm down to help too for what I can.  My play times are a bit random, but that just means statistically you are more likely to catch me.

    Also, been trying to do stuff like re-writing HHELP and OHELP files to make them more screen-reader friendly so people can have more accesibility, so I wouldn't mind some feedback there too.

    Ammar
  • AmmarAmmar Member Posts: 9
    Caelan said:
    I'm down to help too for what I can.  My play times are a bit random, but that just means statistically you are more likely to catch me.

    Also, been trying to do stuff like re-writing HHELP and OHELP files to make them more screen-reader friendly so people can have more accesibility, so I wouldn't mind some feedback there too.
    Thanks! Re: hhelp and ohelp, the biggest accessibility barrier seems to be use of pseudo-tables. Eliminating those makes the experience far easier, especially since it's trivial to pipe text like that into a separate window for review.
    Caelan said:
    I'm down to help too for what I can.  My play times are a bit random, but that just means statistically you are more likely to catch me.

    Also, been trying to do stuff like re-writing HHELP and OHELP files to make them more screen-reader friendly so people can have more accesibility, so I wouldn't mind some feedback there too.

    Thanks, that's good to know! The only issue I've found so far in help files is pseudo-tables. They just don't render well to a screenreader, since there's no easy way to read by column.
  • CaelanCaelan Member Posts: 1,925 @ - Epic Achaean
    What do you mean pseudo tables? Not to sound like a dick, but what do they look like? Do you mean the bulleted lists w indents, or something else?

  • AmmarAmmar Member Posts: 9
    edited April 21
    Caelan said:
    What do you mean pseudo tables? Not to sound like a dick, but what do they look like? Do you mean the bulleted lists w indents, or something else?

    By pseudo-tables I mean any information arranged in columns rather than rows. I think the | is usually used as a separator. Something like the following headings, with content under it:

    Name    | Class    | Specialty

    That might look visually striking since you can just run your eye down the columns, but screenreaders render line by line (or in this case, row by row). So that information would be better presented for blind readers as:

    Name: Ammar
    Class: Runewarden
    Specialty: Giving bad advice.

    Edit: I also just saw that I double-posted my last post. Hilarious.
    Caelan
  • CaelanCaelan Member Posts: 1,925 @ - Epic Achaean
    Got it.  Do dashes cause a pain in the earhole?

     Like:

    - This one list item bullet
         -  Something else bulleted, but indented further like a sub-item bullet
         - A second thing indented

    - A new list item bullet

  • MinifieMinifie Member Posts: 2,346 @@ - Legendary Achaean
    I can't code worth a damn, but is there anything I can do to help?


    (Mhaldor's Next Top Model): Taryius says, "Oops, thats not a foray. Thats two novices going at it in the wilderness."
    Ammar
  • AthelasAthelas Cape Town South AfricaMember Posts: 325 ✭✭✭✭ - Eminent
    @Ammar

    I can code!

    What do you need?
    Ammar
  • RollanzRollanz Member Posts: 13
    I can code.

    The goals I'm particularly interested in:
    - Affliction/defense tracking (it probably won't be too difficult to port my work from GMCP Unveiler over)
    - Names database (are you thinking of SQLite or a Lua table?)
    - Channel history plugin
    - Rift tracking
    - Offense tracking (I am more interested on whether this can be done in a more mathematically sound way than what I've seen so far)

  • McdougallMcdougall Member Posts: 8
    Hey @Ammar

    I have an older system from Aetolia written in lua for MUSH. It was fairly solid 4-5 years ago and the bones are good (initially written by Hadoryu over there, expanded by me). It might have something you can use for the core of the curing, aff tracking, and limb tracking segments, since Aetolia and Achaea are still quite similar on the herb/salve side of things. Def management used onscreen clicks, but the functions can probably be used from that, too.

    Let me know if you want me to shoot it over for you to look at.

    Either way, I might be able to help if you have something specific. We do some work implementing and maintaining WCAG conformance for our clients, so I know how tricky this can be.


  • MeliniMelini Member Posts: 9
    I can code.

    What would you like me to start work on first?
  • AthelasAthelas Cape Town South AfricaMember Posts: 325 ✭✭✭✭ - Eminent
    Things some vision impaired players have indicated to me:

    - A functional map system.
    - A way to reduce spam during combat (If you think watching the spam is rough. Try listening to it.)
    - A functioning anti-theft system (Coding this is easy, for anyone that can see.)

    I've also been told that, ships and sailing is simply a non-feature for the blind player. As it's too easy to get lost. This is very much the same with wilderness-map. I've not heard nor been able to think of an easy solution to these.
  • MeliniMelini Member Posts: 9
    I have some basic ideas on combat but I'm happy to fit in with existing work if this is already underway.

    1.  Gag just about everything.  When I entered combat in the pygmy dungeon my screenreader was a full page behind and it was only getting worse.  That old man you start with reappeared, healed me and gave me a shield!

    2.  Speak a maximum of two words about important events.  For example "prone on" and "prone off".

    3.  Report health if it has dropped since the last time the GMCP value was received.  Possibly only do this if health is below a threshold, for example fifty percent.

    4.  Report sips left when a sip is taken from a vial when there are less than ten sips remaining.  Likewise tattoo usage for example shielding.  I haven't need a curative yet but taking and using something from the rift should also report how many are left if there is less than ten remaining.  Ten is just an arbitary number and should be configurable.  I'm only level five so don't have a lot of anything yet.

    5.  Automatically turn off weather and tells during combat, and turn them back on again outside of combat.  The tellsoff message would be updated with something simple like "in combat".

    Since I can't yet handle a screenreader running at 80 I'm actually considering gagging all speech and emotes during combat, though this hasn't been required yet.  I'm still stuck in the portals room!  I really need to figure combat out!
Sign In to Comment.