momentum-mod / game

Momentum Mod - Standalone Source Movement Speedrunning (READ README)
https://momentum-mod.org
Other
521 stars 208 forks source link

Auto deafen on discord when getting far in a map #2069

Open LukaTV939 opened 1 year ago

LukaTV939 commented 1 year ago

Is your feature request related to a problem?

Whenever I play a map and I'm in a vc people can be sometimes distracting when getting far

Describe the solution you'd like

There should be a feature where you get deafened when you get to either checkpoint, stage, or even a custom zone set by a user (the zone thing is optional) and when you restart you get undeafened

Describe alternatives you've considered, if any.

No response

Additional context

Here's an example from geometry dash's mod tool Megahack v7: 20230620170641_1

tsa96 commented 1 year ago

I had a quick look, Discord do seem to provide an API for this, but I'm not a fan of having additional Discord-specific features besides Rich Presence.

Mainly, this is just extremely specific. Never heard anyone ask for this before, personally for things like this I have a bind on my mouse, I know others do as well. We could do a slider to let you configure the amount of time into the run, but is that useful on short maps? Use a proportion of the way into your PB? Would you want to use this whilst in a call with a single person, isn't that kinda rude to just dip mid conversation? I can't even think of how to set this up to be more convenient than just having a bind.

Also, Discord is in a bad spot at the moment, and likely getting worse - check out their Glassdoor reviews. Could see a lot of people moving off Discord in the next couple years, doesn't feel like a good time for more Discord-specific features.

I vote to close this as a wont-do, yes we could leave it around and maybe do eventually, but feels like a bad addition for reasons stated above.

LukaTV939 commented 1 year ago

Also, Discord is in a bad spot at the moment, and likely getting worse - check out their Glassdoor reviews. Could see a lot of people moving off Discord in the next couple of years, doesn't feel like a good time for more Discord-specific features.

From the company's perspective, yeah it's pretty fucking bad and this review sums it up.

Mainly, this is just extremely specific. Never heard anyone ask for this before

I'm asking this because I've been using this in GD (short for Geometry Dash) for almost a year after buying MegaHack v7. Looking at momentum this would be useful for those who play high-tier maps, but I get why this is specific because no one from any community like surf, bhop, and others thought about this concept. If you were to ask the community who plays them they would probably want to try it out and see if it's useful

Personally for things like this I have a bind on my mouse, I know others do as well.

Many players are using this when they're in a call and when they get far on a really hard level they probably can't deafen because they would lose focus because of having to deafen manually.

We could do a slider to let you configure the amount of time into the run,

Any kind of UI would be acceptable in my opinion. Run time would be very specific and inconsistent while configuring at what checkpoint/zone would be more understandable, like getting to the last stage of a complex map and wanting to be deafened specifically there. Also about the zone thing I don't think that would work out unless you make a zone edit work without mapping mode, in short, it would be a lot more work than expected

But is that useful on short maps?

depends on the map ig

Would you want to use this whilst on a call with a single person, isn't that kinda rude to just dip mid conversation?

I would definitely turn off auto deafen when in a single/small call where I could just tell them when I'm far. We would just stop the conversation until I finish or restart.

I can't even think of how to set this up to be more convenient than just having a bind.

I honestly think this is simple enough to set up, and if there was a convenient way by using Discord API, but then you'll need to authorize the app first before you could use it so if you want to do something like that, go for it. MegaHack v7 for GD is made like that and the dev of the tool probably thought it was too complicated, but I'm actually gonna ask him if he considered adding support for it

If you have any questions about the feature, let me know. I could even record a demonstration of how it works in GD if you want to

tsa96 commented 1 year ago

Many players are using this when they're in a call and when they get far on a really hard level they probably can't deafen because they would lose focus because of having to deafen manually.

Personally I find it takes basically no brainpower whatsoever to tap a mouse button if I need to focus, but okay, if others are finding it useful perhaps some would appreciate it.

Like in your above comments, it sounds like something that might need to be configured on a per-map basis, and at that point I'm really doubtful anyone would bother with it. Judging by the screenshot you posted, that tool is aimed at very advanced users who want to figure the hell out of their game. Generally we're keen to support this more than most games, and okay with doing more complex settings than most games (see e.g. Defrag settings) but from feedback from playtesters and streamers, people tend to find stuff pretty overwhelming already. and I worry a lot about cognitive overload from settings. We might rework some of settings in the future to have a basic/advanced toggle for settings subsections that shows some of the more complex stuff, maybe could work out then.

Yeah idk, I'm stlll struggling to see the benefit of this given the complications of implementing it. Maybe we leave this open and work on it in the distant future (post 1.0.0 most likely) but without a clever system for deciding when to auto-deafen automatically (and things like that are notoriously hard to get right) I'm really not a fan. Would be good to hear from other team members

hexaflexahexagon commented 1 year ago

This seems to me like the type of thing that could be done by a third party (like in geometry dash) just by watching memory addresses and checking for the timer or checkpoint state or something. I'd be more interested in adding this feature if someone were to do that first, then it get a good amount of traction