Skip to content
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

AAC tablet for speech-impaired characters (DeltaV #1491) #2619

Draft
wants to merge 9 commits into
base: master
Choose a base branch
from

Conversation

dvir001
Copy link
Contributor

@dvir001 dvir001 commented Dec 27, 2024

About the PR

this PR adds the "AAC tablet", a device that allows you to press buttons with short phrases on them to make the tablet say it aloud. this allows for mute and other speech-impaired characters to communicate Needs and Desires - stuff that is relevant to their work - but doesn't lend itself that well to small talk

this tablet does not allow the person to speak on the radio and only covers common topics. the tablet can be produced at a medfab or equipped round-start as a loadout trinket

Why / Balance

roleplay flavor and semi-realistic disability roleplay. in particular i have a mute character who frequently ends up in "desk positions" where two-way communication is necessary; it is exhausting for both me and my character to resort to writing on sheets of paper.

this PR also opens up more job opportunities for mute characters where paper do not suffice; for example, if a mute character picked up the doctor role, they'd be SOL because they can't announce what chemical they're injecting into a patient. the tablet provides the ability to announce these chems

Technical details

QuickPhrasePrototype is a new prototype that simply stores the text for a phrase that the AAC tablet can use. these phrases are sorted into tabs (which can be flipped through) and groups (which are sections within the tablet's UI).

the AAC tablet window constructs the entire phrase list automatically from the QuickPhrasePrototypes, including tabs, groups, and the phrase buttons themselves. a styleClass datafield is included on the quickPhrase to recolor buttons. a bunch of new classes for these department button colors have been added accordingly to StyleNano.

when a message is sent to AACTabletSystem to produce a message, the name of the entity that pressed the button will be tacked onto the end of the tablet's name in parentheses so other players know who sent the message.

there is a 1 second cooldown between messages to reduce spam

Media

Requirements

Breaking changes

N/A

Changelog
🆑 portfiend

  • add: Added the AAC tablet and its corresponding UI, allowing mute characters to communicate. This can be enabled in your loadout (under Trinkets) or created in the Medical Techfab.

portfiend and others added 5 commits December 27, 2024 01:53
* basic AAC tablet prototype

using station map as a base

* set up aac component/system

* quick phrase prototype

will probably touch this up later

* basic example phrases

just so i have data to work with

* get AACWindow to iterate over quick phrases

* add the rest of the job phrases

* fix this one job name

* actually fix prison guard name

* buttons for aac window

* fix phrase inheritance

* add tabs to aac contaner

* fix column spacing and add button padding

* aac tablet button colors

* AAC tablet sends messages now

* add aac tablet voice sound yay

* add a 1 second cooldown between phrases

* subjects for most departments

* location phrases

* more phrases

* cleanup + sort buttons alphabetically

* fix these phrases

* even more departmental subject phrases

* common phrases

* cleanup imports

* show name of player that pressed button

* aac tablet can be used by multipel people

after all it does not rely on state changes and also multiple people can press buttons on a tablet at once

* capitalize aac

its an acronym

* you know what it is its more phrases!!!!

* SAFETY PHRASES

* last second phrases

* redundant phrase

* and one more hazard phrase for the road

* change voice of aac tablet from borg to alto

just sounds nicer

* localize ALL Phrases

i love utility scripting to automate tedious tasks

* add AAC tablet to loadout

* add AAC tablet to medfab

* tweak: use multiple parents instead of whatever this is

* add: justice department phrases

* add: time quantity phrases

* add: ores and kitchen appliance phrases

* fix: resolve duplicate phrases

* add: aac tablet sprites

* add: justice button style

* fix: misplaced this line oops

* add: justice dept locations

* remove: redundant phrase

* re-run tests

* fix: move aac tablet loadout format

* fix: use Identity instead of Name for aac tablet sender

* fix: return on send phrase if id is invalid

* fix: remove redundant line

* fix: use LocId instead of String for phrase text type

* add: new phrases bc upstream updates

* fix: newlines

* tweak: add end comments to these style comments

* fix: this phrase was broken lol

---------

Co-authored-by: deltanedas <[email protected]>
* add: group heading

* tweak: move these phrase locales to "locations"

why were they uncategorized? wtf

* tweak: make phrase group headings big

* tweak: fix up group names

* add: relative location phrases

* tweak: remove safety status phrase group name

appears at top

* add: more subject phrases

* newlines

* add: machine phrase

* add: more pronoun phrases

* add: safety/temperature phrases

* add: "darkness" phrase

* add: color phrases

* add: flavor and common plant phrases

* add: more colors

* add: blood

* add: "skeleton" phrase

* Revert "add: "skeleton" phrase"

This reverts commit bc49e47b3e68b7e56728e7466bda5872a3141f19.

I ACTUALLY FORGOT I HAD ONE ALREADY LOL
* another thing nobody asked for

* just.. why? who did this, and why?
Copy link
Contributor

github-actions bot commented Dec 27, 2024

RSI Diff Bot; head commit 252612a merging into cdcc0dd
This PR makes changes to 1 or more RSIs. Here is a summary of all changes:

Resources/Textures/DeltaV/Objects/Devices/tablets.rsi

State Old New Status
aac-inhand-left Added
aac-inhand-right Added
aac_screen-inhand-left Added
aac_screen-inhand-right Added
aac_screen Added
aac_tablet Added

Edit: diff updated after 252612a

@dvir001
Copy link
Contributor Author

dvir001 commented Dec 27, 2024

While working need a major edit to the FTL
And adding to frontier loadouts

@github-actions github-actions bot added the Merge Conflict This PR has conflicts that prevent merging label Jan 5, 2025
Copy link
Contributor

github-actions bot commented Jan 5, 2025

This pull request has conflicts, please resolve those before we can evaluate the pull request.

@github-actions github-actions bot added Merge Conflict This PR has conflicts that prevent merging and removed Merge Conflict This PR has conflicts that prevent merging labels Jan 6, 2025
Copy link
Contributor

github-actions bot commented Jan 7, 2025

This pull request has conflicts, please resolve those before we can evaluate the pull request.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C# FTL Merge Conflict This PR has conflicts that prevent merging Sprites UI YML
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants