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

Message typing sound is loud and disruptive to gameplay flow #472

Open
kael131 opened this issue Oct 24, 2023 · 1 comment
Open

Message typing sound is loud and disruptive to gameplay flow #472

kael131 opened this issue Oct 24, 2023 · 1 comment

Comments

@kael131
Copy link

kael131 commented Oct 24, 2023

I noticed this myself when playing but I also asked a friend to try Antares out for the first time and the first thing he mentioned was wanting to mute the sound that plays when in-mission messages are displayed to the player.

Primarily, it's most instrusive during the tutorial missions due to the large amounts of text.

When the mission briefing appears and the chapter name is given, e.g. "Tutorial Lesson 1, Moons for Goons" the typing sound plays correctly, but sounds during the mission itself seem to clip over each other. The sounds that accompany messages that highlight features of the UI are worse (play faster) than those appearing at the bottom of the screen.

I see a couple of ways it could be improved: Reduce volume of the sound by some percentage, say 50%, and play the sound less frequently; maybe every other character.

@kael131
Copy link
Author

kael131 commented Oct 24, 2023

Briefly looking through the code, I would increase the number of ticks between teletype sounds for messages, but I couldn't see exactly where the on-UI highlight messages that appear during tutorials are drawn.

Edit: I think I found where you were unsure of the correct timings yourself - Line 149 of labels.cpp. I wouldn't worry about staying faithful to the original, this is one of those QoL changes that will make the game more accessible for newcomers.

 if (!label->text().done()) {
            // TODO(sfiera): get data on the original rate here.  It looks like the rate of
            // printing was tied to the frame rate before: 3 per frame.  Here, we've switched to 1
            // per tick, so this would be equivalent to the old code at 20 FPS.  The question is,
            // does it feel equivalent?  It only comes up in the tutorial.
            for (size_t i = 0; i < units_done.count(); ++i) {
                label->text().advance();
            }
            if (!label->text().done()) {
                sys.sound.teletype();
            }
        }

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant