-
Notifications
You must be signed in to change notification settings - Fork 12
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
Introduce new poll feature 🗳️ #43
Conversation
I'm wondering if optional custom thresholds would be a good idea. For example, for setting a time-limit or kicking a player you could have a 2/3 threshold instead of a 50% threshold for actually executing the endaction. |
It's indeed a good idea! Do you have any thoughts on how best to implement this? One approach could be to introduce a On a related note, I was considering alternatives to time-based polls, such as a poll with a required player vote count. Scenario: However, one potential issue to address is how to handle players joining or leaving the server during the polling process. We might need to determine a fair way to draw the line when it comes to counting votes in such situations. Brainstorming a bit further, there could be other interesting scenarios to consider, such as requiring a specific percentage of online players, just participants, observers, etc. Speaking of which, another idea just came to me – adding a vote filter to the polls for specific groups of players (participants/teams/observers) might be worth exploring too! Thanks @cswhite2000, for sharing your idea! If you have any further thoughts on any of these ideas, feedback would be much appreciated. 👍 |
I like your suggested approach for poll thresholds 👍
I don't think getting 100% of players to vote in a poll is feasible in most cases since some players will be afk or simply won't want to vote. An alternative though would be to have the option to have usage such as With regards to players leaving during a poll, I feel like it would be better to only count votes from players who're online at the point in time when the poll ends, as they'll be the ones actually affected by the result of the poll. You should also consider having an automatic default expiry for such polls, to prevent them from lasting longer than their relevance. Filtering polls for specific groups of players is a good idea. Other ideas:
|
src/main/java/dev/pgm/community/polls/commands/PollManagementCommands.java
Show resolved
Hide resolved
src/main/java/dev/pgm/community/polls/commands/PollVoteCommands.java
Outdated
Show resolved
Hide resolved
I'm beginning to explore how to implement multi-answer polls. Does anyone have any thoughts on the most effective way to implement them? Ideally was thinking to have a maximum of 4 options, and simply executing multiple end-actions commands will be how staff can add multiple options to a poll. When no custom question is defined we'll auto-generate one based on the options. Here's a few examples to illustrate it: Example: all mutations
Example: 2 different maps
Though let's think of a more complex example. We have a 3 hour match going and staff wants to spice things up. Example: multiple end actions
When multiple end-actions are included in a poll, the question will be more general (unless a custom question is defined). Depending on the type, the button will also feature additional text to provide clarity about the option. If anyone has further thoughts or ideas, please feel free to share! I won't be starting on this right away, but I wanted to brainstorm beforehand to ensure we keep a clear implementation and simple command structure in place for staff. |
f0b5f9f
to
250cf14
Compare
fcadd73
to
3ae2db7
Compare
3ae2db7
to
2ce1fb9
Compare
Polls on OCC have remained stable for some time now. As just about all suggested features have been implemented, going to merge now! 🎉 |
de69872
to
2ccc564
Compare
Signed-off-by: applenick <[email protected]>
Signed-off-by: applenick <[email protected]>
Signed-off-by: applenick <[email protected]>
Signed-off-by: applenick <[email protected]>
Signed-off-by: applenick <[email protected]>
Signed-off-by: applenick <[email protected]>
Signed-off-by: applenick <[email protected]>
Signed-off-by: applenick <[email protected]>
Signed-off-by: applenick <[email protected]>
* Also refactored poll components into a new interface Signed-off-by: applenick <[email protected]>
Signed-off-by: applenick <[email protected]>
Signed-off-by: applenick <[email protected]>
Signed-off-by: applenick <[email protected]>
Signed-off-by: applenick <[email protected]>
Signed-off-by: applenick <[email protected]>
Signed-off-by: applenick <[email protected]>
Signed-off-by: applenick <[email protected]>
Signed-off-by: applenick <[email protected]>
Signed-off-by: applenick <[email protected]>
Signed-off-by: applenick <[email protected]>
Signed-off-by: applenick <[email protected]>
Signed-off-by: applenick <[email protected]>
Signed-off-by: applenick <[email protected]>
Signed-off-by: applenick <[email protected]>
2ccc564
to
9d3da67
Compare
This PR introduces an exciting new in-game polling feature that enables the seamless and efficient conduction of surveys. The system is designed to facilitate the effortless creation of polls, offering various options to choose from, such as command-based, set-next, player kicks, and more to come.
Example of a custom question (can be combined with any end-action)
Example of the player kick action
Example of the set next map action
Example of poll results broadcast:
Still a WIP 🚧