Skip to content

Conversation

@14manj01
Copy link
Contributor

Accessibility Plus
Accessibility Plus is a RuneLite plugin that improves accessibility and readability in Old School RuneScape by enhancing dialog UI and adding optional high-quality text-to-speech.

Features
Dialog Accessibility
Large, readable dialog overlay
Reliable detection of NPC and player dialog
Full support for “Select an option” menus (NPCs, bankers, Grand Exchange)
Collects and orders all dialog options correctly
Overlay dynamically resizes and grows upward to prevent clipping
Filters out:
Player chat (Name: message)
System messages (Press Enter to Chat)
Numeric junk, timers, and On/Off UI elements
Minimap Accessibility
Optional minimap shapes and indicators
Does not recolor or modify the game itself, only draws overlays
Text-to-Speech (Optional)
Uses Piper for high-quality offline TTS
Embedded local speech bridge starts automatically when TTS is enabled
No dependency on other RuneLite plugins
Fully offline once installed

@runelite-github-app
Copy link

runelite-github-app bot commented Dec 29, 2025

@Nightfirecat
Copy link
Member

Please stop closing and opening new PRs. You can push updates to an open PR to trigger new builds

@riktenx riktenx added the waiting for author waiting for the pr author to make changes or respond to questions label Dec 29, 2025
Fixed hopefully gradlew
@runelite-github-app runelite-github-app bot removed the waiting for author waiting for the pr author to make changes or respond to questions label Dec 29, 2025
@runelite-github-app
Copy link

runelite-github-app bot commented Dec 29, 2025

Feedback:

  • Use of javax.sound.sampled.Clip.stop is not allowed: Use of javax.sound, use net.runelite.client.audio.AudioPlayer instead
  • Use of javax.sound.sampled.Clip.close is not allowed: Use of javax.sound, use net.runelite.client.audio.AudioPlayer instead
  • Use of javax.sound.sampled.Clip.open is not allowed: Use of javax.sound, use net.runelite.client.audio.AudioPlayer instead
  • Use of javax.sound.sampled.AudioSystem.getAudioInputStream is not allowed: Use of javax.sound, use net.runelite.client.audio.AudioPlayer instead
  • Use of javax.sound.sampled.Clip.start is not allowed: Use of javax.sound, use net.runelite.client.audio.AudioPlayer instead
  • Use of javax.sound.sampled.AudioSystem.getClip is not allowed: Use of javax.sound, use net.runelite.client.audio.AudioPlayer instead
  • Use of javax.sound.sampled.AudioInputStream.close is not allowed: Use of javax.sound, use net.runelite.client.audio.AudioPlayer instead

A new scan will be automatically performed on the next push to the PR branch.


Internal use only: Reviewer details Maintainer details

@riktenx
Copy link
Member

riktenx commented Dec 29, 2025

incomplete review from a quick scan: don't use java's HttpClient or HttpUrlConnection directly. You need to @Inject Runelite's OkHttpClient and use that.

@riktenx riktenx added the waiting for author waiting for the pr author to make changes or respond to questions label Dec 29, 2025
@riktenx
Copy link
Member

riktenx commented Dec 29, 2025

We also don't really allow plugins to execute new processes.

@14manj01
Copy link
Contributor Author

We also don't really allow plugins to execute new processes.

Good evening. It should be the same process execution as the Natural Speech plugin. I'm utlizing the same framework they did for their TTS and tried to implement it here.

@runelite-github-app runelite-github-app bot removed the waiting for author waiting for the pr author to make changes or respond to questions label Dec 29, 2025
@riktenx
Copy link
Member

riktenx commented Dec 29, 2025

It should be the same process execution as the Natural Speech plugin

  • The code of existing plugins does not necessarily reflect what is allowed in new submissions today.
  • The last PR for natural speech was closed by us specifically because it was using a bunch of reflection / jna / subprocess exec. So if you were just looking at the head of the main branch in naturalspeech that does not reflect what is actually on the hub.

Please review https://github.com/runelite/runelite/wiki/Rejected-or-Rolled-Back-Features#forbidden-language-features.

@riktenx riktenx added the waiting for author waiting for the pr author to make changes or respond to questions label Dec 29, 2025
@runelite-github-app runelite-github-app bot removed the waiting for author waiting for the pr author to make changes or respond to questions label Dec 29, 2025
@riktenx
Copy link
Member

riktenx commented Dec 30, 2025

Haven't looked at your code but is there a reason you need to use the AudioSystem directly? While we prefer you use runelite's injectable AudioPlayer we don't require it, if you need to do something that AudioPlayer can't then please clarify what that is.

@riktenx riktenx added the waiting for author waiting for the pr author to make changes or respond to questions label Dec 30, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

plugin added size-0 waiting for author waiting for the pr author to make changes or respond to questions

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants