randomairborne / experienced

A discord bot to track levels
https://xp.valk.sh/
European Union Public License 1.2
10 stars 8 forks source link

Voice activity XP contribution #199

Open Fripe070 opened 3 months ago

Fripe070 commented 3 months ago

Problem

There are multiple cases where a server member might be far more active in voice channels than in text channels. At the moment, voice activity is at all factored into the XP calculation, leading to these members having extremely low levels despite being some of the most active ones.

Proposed solution

To solve this issue, I propose that voice activity (perhaps only during microphone activation? I can’t recall if that’s visible to the bot without being in the call) contributes to a secondary experience stat, that is added onto the currently existing XP system upon level calculation. The advantage of it being a separately tracked statistic is that it is trivial to dynamically change how much influence voice activity should have upon the calculated levels on a per-server configurable basis.

Fripe070 commented 3 months ago

In case a separately tracked statistic would be too annoying to implement, it might be fine to pre-multiply the XP when adding it? Though I’m unsure if that would work too well

randomairborne commented 2 months ago

A separately tracked stat would be perfectly fine to implement. I think the annoying part here is just tracking voice states.

Do you want to work on this at all?

Fripe070 commented 2 months ago

Do you want to work on this at all?

I'm not familiar with how experienced is structured, but maybe. I wouldn't count on it though

randomairborne commented 2 months ago

I can help if you wish. I might also be able to work on this directly at some point.

strich3 commented 4 days ago

Is this still planned?

randomairborne commented 3 days ago

Yes, this is still planned for someday. I have a few other things I want to get to first, and the demand for this has seemed pretty low. If you really want it, I will get to it (and please let me know, so i can prioritize accordingly)- however, if you know a little rust, I can also absolutely coach you through working on the codebase.