SPADS voting system

SPADS voting system

SpringRTS Perl Autohost for Dedicated Server

Moderators: Moderators, Lobby Developers, SPADS AutoHost

User avatar
Floris
Posts: 611
Joined: 04 Jan 2011, 20:00

SPADS voting system

Post by Floris »

Well Beherith was being an ass and kicked me out of the lobby because a stopvote got through. I was very suprised it passed with only 4 yes votes. Why did he kicked me: I initiated it as a player that became spec.

Well instead of blaming spring and doing something about it the bugfix to the problem is aperantly just kicking everybody that's starting a stopvote as a spec.

Image

Well if it isnt desired why allow spectators that once were players allow to vote?

the stopvote was in a 20 mins running 8v8 game with 3 or 4 players gone. It passed with 4 for and 2 against. The game was clearly over, but looked like it could endure for 10-20 mins without any good reason.

[02:32:37] <[TERA]DSDHost> <Floris> !stop
[02:32:38] * [TERA]DSDHost * Floris called a vote for command "stop" [!vote y, !vote n, !vote b]
[02:32:38] * [TERA]DSDHost * 15 users allowed to vote.
[02:32:42] <[TERA]DSDHost> <[LCC]Xanthe> !vote y
[02:32:42] * [TERA]DSDHost * Vote in progress: "stop" [y:2/9, n:0/8] (56s remaining)
[02:32:46] <[TERA]DSDHost> <Honey_Badger> !vote 1
[02:32:46] * [TERA]DSDHost * Vote in progress: "stop" [y:3/9, n:0/8] (52s remaining)
[02:32:48] <[TERA]DSDHost> <[teh]Beherith[PiRO]> !vote 2
[02:32:48] * [TERA]DSDHost * Vote in progress: "stop" [y:3/9, n:1/8] (50s remaining)
[02:32:50] <[TERA]DSDHost> <[EADS]Mars> !vote 1
[02:32:51] * [TERA]DSDHost * Vote in progress: "stop" [y:4/9, n:1/8] (48s remaining)
[02:32:51] <[TERA]DSDHost> <[BoS]Senna> !vote 2
[02:32:52] * [TERA]DSDHost * Vote in progress: "stop" [y:4/9, n:2/8] (46s remaining)
[02:32:57] * [TERA]DSDHost * Away vote mode for 10 users
[02:32:58] * [TERA]DSDHost * Vote for command "stop" passed.
[02:32:58] * [TERA]DSDHost * Stopping server (by Floris)
[02:32:58] * [TERA]DSDHost * Server stopped (running time: 20 minutes and 54 seconds)
I just noticed that all the vote 1's were made by the people that got killed by beheriths comdrop.
Last edited by Floris on 14 Jun 2011, 00:30, edited 1 time in total.
User avatar
Beherith
Posts: 5145
Joined: 26 Oct 2007, 16:21

Re: Spring voting system

Post by Beherith »

Specs shouldn't stop games because they lost. Players have the right to stop the game by calling a vote, resigning or self destructing if they feel they passed the point of no return.

The solution - besides the autohost fix - is not trying to vote stop as a spec, but to find another game in the meanwhile, or wait until the players finish or decide its over and resign/give/selfd. Be patient, if the others aren't having fun either, they are free to leave.
User avatar
Jazcash
Posts: 5309
Joined: 08 Dec 2007, 17:39

Re: Spring voting system

Post by Jazcash »

Agree with Beherith.

Regardless, the Spads voting system itself is pretty hard to understand for me. I presume there's some config that allows the owner to set the type of voting system used?

On some Autohosts, every player is require to vote before the vote goes through. On others, the majority vote goes through, on others, only one person out of 16 can vote for something and it just counts it anyway.

I remember a while back some troll came in and did a !votestop on some game and nobody else voted, either because they missed it, ignored it or were just too busy. The vote got through with like 1/16 for yes, 0/16 for no... after the game stopped the 15 players were just like "wat. da. fok."
User avatar
Wombat
Posts: 3379
Joined: 15 Dec 2008, 15:53

Re: Spring voting system

Post by Wombat »

I presume there's some config that allows the owner to set the type of voting system used?
[TERA]
like i said before, that host got terrible configuration.
abma
Spring Developer
Posts: 3798
Joined: 01 Jun 2009, 00:08

Re: Spring voting system

Post by abma »

you should rename the topic of this thread to SPADS voting system... its the autohost that has this system.
User avatar
Jools
XTA Developer
Posts: 2816
Joined: 23 Feb 2009, 16:29

Re: SPADS voting system

Post by Jools »

It's not the fault of the SPADS autohost, it has a settable preference with regard to that. It's the host that should configure it.

C.f. http://planetspads.free.fr/spads/doc/sp ... references -> votemode.
User avatar
very_bad_soldier
Posts: 1397
Joined: 20 Feb 2007, 01:10

Re: SPADS voting system

Post by very_bad_soldier »

You know it has been a bad day if your game gets votestopped by some BADSD16 freaks who cant wait to get their dosis and see no problem in just stopping other peoples games to get it.

EDIT:
By the way, the DSD hosts should imo at least be configured to allow a maximum of about 5 spectators to force the people to join another game if the current one is overcrowded. Does not really make sense to bind 16 players + 16 spectators in a single game.
User avatar
Wombat
Posts: 3379
Joined: 15 Dec 2008, 15:53

Re: SPADS voting system

Post by Wombat »

doesnt make sense but there is nothing u can do about it except begging host (like TERADSD drama)
User avatar
Silentwings
Posts: 3720
Joined: 25 Oct 2008, 00:23

Re: SPADS AutoHost beta release

Post by Silentwings »

Just a small bugfix/feature request...

When there are 10+ players or so involved in a vote (e.g. kick, spec, etc) SPADS often counts a vote which might end 5-0 as undecided, and then it all has to be redone and lots of waiting ensues.

I don't know what the current formulas are for whether a vote passes/fails, but I think any vote which gets more than, say, a four person majority should automatically pass, regardless of the total number of votes.
User avatar
bibim
Lobby Developer
Posts: 959
Joined: 06 Dec 2007, 11:12

Re: SPADS AutoHost beta release

Post by bibim »

Silentwings wrote:Just a small bugfix/feature request...

When there are 10+ players or so involved in a vote (e.g. kick, spec, etc) SPADS often counts a vote which might end 5-0 as undecided, and then it all has to be redone and lots of waiting ensues.

I don't know what the current formulas are for whether a vote passes/fails, but I think any vote which gets more than, say, a four person majority should automatically pass, regardless of the total number of votes.
SPADS vote system is entirely customizable
User avatar
danil_kalina
Posts: 505
Joined: 08 Feb 2010, 22:21

Re: SPADS AutoHost beta release

Post by danil_kalina »

Could you improve your voting system ?

notAlobby parses messages from autohost and shows/updates/hides the Voting UI.
You can download notAlobby 3.0 Beta 2 for testing

Could you make it like Springie autohosts ?

And one more thing, if the user starts the Poll, then don't set YES for that player, cause we also show how players have voted.
User avatar
bibim
Lobby Developer
Posts: 959
Joined: 06 Dec 2007, 11:12

Re: SPADS AutoHost beta release

Post by bibim »

danil_kalina wrote:Could you improve your voting system ?
Sure I could try, what exactly do you have in mind?
danil_kalina wrote:Could you make it like Springie autohosts ?
Tbh I don't really know Springie voting system, can you be more specific?
danil_kalina wrote:And one more thing, if the user starts the Poll, then don't set YES for that player, cause we also show how players have voted.
I don't understand. If it's just to show who has voted and what, can't you just show that the player who started the vote voted yes? Also, votes can be performed in private messages to the autohost, so anyway you can't show them in this case.

However, I'm all for improving current vote system, and add some dedicated interface to SPADS (through special private messages for instance) which would provide all the info you need in a much easier way than parsing human-targetted messages.
User avatar
Jazcash
Posts: 5309
Joined: 08 Dec 2007, 17:39

Re: SPADS AutoHost beta release

Post by Jazcash »

Hardcode Zangeeph's permissions straight into the core of SPADS.
User avatar
danil_kalina
Posts: 505
Joined: 08 Feb 2010, 22:21

Re: SPADS AutoHost beta release

Post by danil_kalina »

I mean, make it easier to understand by lobbies.

if there is a Poll then:
every message from Autohost should contains the word "Poll:" (or somethnig else)
after the word "Poll:" we have a title of poll: "Force start the game ?"
then we have a statistic "[!y=0/5, !n=0/5]" or "[0/5|0/5]" or something similar.
if the Poll ended successfully instead of statistic we have: "[END:SUCCESS]" otherwise: "[END:FAILED]"

all that messages we can ignore (not to show in the chat)

of course, the ideal case is to implement it in server-lobby protocol. But no one wants to do that I think.
User avatar
bibim
Lobby Developer
Posts: 959
Joined: 06 Dec 2007, 11:12

Re: SPADS AutoHost beta release

Post by bibim »

danil_kalina wrote:I mean, make it easier to understand by lobbies.
Oh, then it's not really improving vote system, just formatting output in a more understandable way for lobby clients.
danil_kalina wrote:if there is a Poll then:
every message from Autohost should contains the word "Poll:" (or somethnig else)
Well currently, every time someone starts a vote, SPADS prints a message starting with "<userName> called a vote ...". And every time someone votes, SPADS reports vote state with a message starting with "Vote in progress: ...". If I understand you correctly, you would like me to replace this by "Poll: " because it's easier for you to parse?
danil_kalina wrote:after the word "Poll:" we have a title of poll: "Force start the game ?"
In SPADS every command can be voted. Currently SPADS simply prints the command that is being voted in its vote reports. Honestly I won't spend time giving titles to every SPADS command just for vote messages.
danil_kalina wrote:then we have a statistic "[!y=0/5, !n=0/5]" or "[0/5|0/5]" or something similar.
SPADS already prints this in following format:
"[y=<currentNumberOfYesVote>/<requiredYesVotes1>(<requiredYesVotes2), n=<currentNumberOfNoVote>/<requiredNoVotes1>(<requiredNoVotes2)]"
- requiredVotes1 is the number of required votes considering all "away-voters" (refer to voteMode SPADS preference) will vote blank.
- requiredVotes2 is the number of required votes considering all "away-voters" will actually vote
danil_kalina wrote:if the Poll ended successfully instead of statistic we have: "[END:SUCCESS]" otherwise: "[END:FAILED]"
Currently SPADS prints 'Vote for command "<command>" failed.' or 'Vote for command "<command>" passed.'.
To be honest I don't think starting to put some tags in autohost outputs in the battleroom is the correct way to implement things. Battleroom messages are supposed to be human-targeted, and they can even change if we decide to improve the vote system... For example, tasclient has already implemented an autohost interface which handles these messages, so if I change them it won't work anymore I guess...

I had specified a way to really improve vote automation in lobbies just by using some unused bits of client battle status, but it was discarded since a new "SAYDATA" command was supposed to be implemented in lobby server and would have allowed the same thing that I had in mind. However, imo even using normal private messages with specific prefix to indicate it's data exchanged between autohost and lobby client would be better than starting to put tags in autohost human outputs, and it doesn't require any server lobby changes.
User avatar
danil_kalina
Posts: 505
Joined: 08 Feb 2010, 22:21

Re: SPADS AutoHost beta release

Post by danil_kalina »

Thank you "bibim" for detailed answer. Vote UI for SPADS is done.
User avatar
bibim
Lobby Developer
Posts: 959
Joined: 06 Dec 2007, 11:12

Re: SPADS AutoHost beta release

Post by bibim »

You're welcome, and thanks for implementing this interface in your client.
User avatar
danil_kalina
Posts: 505
Joined: 08 Feb 2010, 22:21

Re: SPADS AutoHost beta release

Post by danil_kalina »

Fix issue ?

Code: Select all

 << "SAIDBATTLE [ACE]Serveur_VI <Jeenode> !voteforce" 
 << "SAIDBATTLEEX [ACE]Serveur_VI * Jeenode called a vote for command "forceStart" [!vote y, !vote n, !vote b]" 
 << "SAIDBATTLEEX [ACE]Serveur_VI * 13 users allowed to vote." 
 << "UPDATEBATTLEINFO 657 2 0 253723407 Small Supreme Battlefield Dry" 
 << "SAIDBATTLE [ACE]Serveur_VI <Floris> if your teammates help all is fine" 
 << "LEFTBATTLE 550 pengox" 
 << "REMOVEUSER pengox" 
 << "SAIDBATTLEEX [ACE]Serveur_VI * Game starting, cancelling "forceStart" vote" 
I mean, Where is Failed ?

Because of that Vote UI is open and doesn't work properly for SPADS
User avatar
bibim
Lobby Developer
Posts: 959
Joined: 06 Dec 2007, 11:12

Re: SPADS AutoHost beta release

Post by bibim »

danil_kalina wrote:

Code: Select all

 << "SAIDBATTLEEX [ACE]Serveur_VI * Game starting, cancelling "forceStart" vote" 
I mean, Where is Failed ?

Because of that Vote UI is open and doesn't work properly for SPADS
There are 2 special cases where votes are automatically cancelled by SPADS:

1) When the game is launched before the end of the vote: in this case SPADS prints:

Code: Select all

Vote cancelled, launching game...
(this is because 99% of the votes called before a game start aren't useful once the game has started)

2) When the vote is a "forceStart" vote and the game actually starts before the end of the vote (so there is no need to "forceStart" anyway, as seen in your example). Depending on the game start reason, SPADS can print 3 different messages in this case:

Code: Select all

a) Cancelling "forceStart" vote, auto-forcing game start (only already in-game or unsynced spectators are missing)
b) Cancelling "forceStart" vote, forcing game start by <user>
c) Game starting, cancelling "forceStart" vote
You can treat these "auto-cancelled" polls as failed polls.
Last edited by bibim on 17 Jul 2012, 14:24, edited 1 time in total.
User avatar
danil_kalina
Posts: 505
Joined: 08 Feb 2010, 22:21

Re: SPADS AutoHost beta release

Post by danil_kalina »

What a mess :shock: Thanks, Done
Too complex
Post Reply

Return to “SPADS AutoHost”