Jump to content
Sign in to follow this  
ratty

Map voting

Recommended Posts

I posted some of this in another thread and didn't get much response, so I'll put it in its own thread so all can see.

 

I want to revisit the voting thing again, but I don't want to do it if its lame. Strafe really wanted this I know, but I didn't want to do it because I couldn't think of a way to do it right.

I'm not saying I'll do it, I just need to either come up with a concept, or have a concept explained to me that works. The best solution is if Valve incorporated it into the game somehow, like if it could actually pause the game and have a full screen menu like other games do, but since that isnt going to happen, there's plugins.

 

And "rockthevote" is completely out of the question, people can wait until the end of the map.

 

Challenges:

 

 

[*:23tx03zd]People just mash any key to get it off their screen. This is because they are trying to play! I know that pisses me off on other servers, I'm about ready to own someone and I press 2 to change weapons and some stupid fucking map vote intercepted the keystroke and I die.

[*:23tx03zd]People generally don't know or don't care what the next map should be. Try "rockthevote" on any server sometimes, how many people even vote at all, usually it doesnt meet the percentage of people voting for it to even count, its usually like 20% of the people on the server. Then theres the matter of noobs who are voting based on the map name, and they don't know what the different maps are. I keep saying, voting is what gets us things like George Bush. People should have to take a test before being allowed to vote that proves they understand what the hell it is they're voting on. If they havent even seen a map, why are they choosing it?

[*:23tx03zd]What maps to list if its a menu based thing? Maybe I can take a manual poll on the forums here to see what ones are good enough, and limit it to 6 maps. I was thinking of having it be customs only, and if not enough people vote, have it just default to the mapcycle which is the stock maps. This aspect alone might even warrant its own thread to decide on how to populate the menu.

Random ideas:

 

 

[*:23tx03zd]Restrict voting to regulars? This addresses the problem of ignorant voters, being a regular on any server means you probably know what the different maps are.

[*:23tx03zd]On connect, ask the player what their favorite map is. Then when the game ends, just tally up who is on, and what their selected "favorite" is, and change to that. Would be a lot of coding, and might not even be a good idea.

[*:23tx03zd]When the round ends, somehow pause gameplay and take the vote. Not sure how well "pause" works, I know its a feature of the engine.

[*:23tx03zd]When the map would normally change, let it start up a new round (so you get the "team X wins" message, and the bonus round reward for winning), everyone spawns, then have it disable gameplay some easy way. I thought of slaying everyone (sm_slay @all), then start the vote. But another option is warmup time, that stops the doors from opening on maps like dustbowl and even prevents anyone from picking up the intel on ctf maps. But people can still run around, which is a little distracting, but maybe acceptable.

[*:23tx03zd]What is out there already? Sourcemod comes with a script called "Mapchooser" that is disabled by default that I want to play with. If its going to take some coding, we'd have to talk someone into making it.

[*:23tx03zd]Also it needs to be able to extend the current map (per Spooky)

Feedback I'm interested in is actually implementable stuff, if its just not possible to even technically do, it doesn't help. Also, it has to solve the problem of noobs hitting any key and polluting the vote with maps they don't even know.

Share this post


Link to post

Strafe suggested that, I think he saw it on another server.

Living people have the right to vote too though! :) How about kill everyone, then everyone is dead, problem solved.

I just really dont want it to be a realtime thing where you are playing and voting at the same time.

Share this post


Link to post

Well, with a plug-in, you could hook the end game event, and have voting occur after that while everyone is normally looking at the scoreboard waiting for the map change. The part I'm not sure about is how to prevent the map from changing really fast like it normally does (not sure the pause function would work). It's something that could be looked into.

 

With the "favorite map" idea -- it might be okay, but may as well just ask them what they want the next map to be. I don't really like that method though, from the sounds of it.

 

Don't like the idea of killing everyone or warmup time -- both are just kind of confusing to the player. The end-of-map method would be much more ideal, of course, if it's possible.

 

Extending should be easy, if we can get everything else to work right.

 

What maps to include...have to think about how that will work...

Share this post


Link to post

Well, with a plug-in, you could hook the end game event, and have voting occur after that while everyone is normally looking at the scoreboard waiting for the map change. The part I'm not sure about is how to prevent the map from changing really fast like it normally does (not sure the pause function would work). It's something that could be looked into.

The problem with that is, isn't the map about to change in a matter of like 5 seconds once the scoreboard shows? I'd want it to just wait for everyone to vote, and be able to text chat too.

With the "favorite map" idea -- it might be okay, but may as well just ask them what they want the next map to be. I don't really like that method though, from the sounds of it.

 

Me either, I started to hate it right after I typed it out. :)

Don't like the idea of killing everyone or warmup time -- both are just kind of confusing to the player. The end-of-map method would be much more ideal, of course, if it's possible.

 

BAH! How dare you not like my idea! :)

I don't see how it can do it during that few second window when gameplay is frozen and the scoreboard is obscuring everything, even the ability to text chat. If it somehow you could remove the scoreboard, and make it not actually change the map, then it would be good.

For warmup time, what if the screen gets spammed with "its time to vote! gameplay suspended" or something like that? So far this is the direction I'm going, unless you can think of a way to solve the problems I mentioned with the end of map method.

Extending should be easy, if we can get everything else to work right.

 

What maps to include...have to think about how that will work...

I had a couple ideas already, with having just customs. Or maybe randomly pick from a pool of maps that don't completely suck? If only that little menu thing could be rendered fullscreen! Then I can just list every map.

Share this post


Link to post

[i had a couple ideas already, with having just customs. Or maybe randomly pick from a pool of maps that don't completely suck? If only that little menu thing could be rendered fullscreen! Then I can just list every map.

Random would be best. What about a rockthevote function that can only be activated with say 5 minutes left? That doesnt solve the problem of the living peeps though. IMO, if the vote stays up with a timer (like OTD server does) that could help somewhat.

Share this post


Link to post

Another thing about the maps in the menu -- it would be good if it (optionally) only allowed maps that hadn't been played in the last couple games, too. I get tired of any map when it's almost back to back.

 

The ideal solution would take a lot of coding. And I don't even know how you fit it all in with a map-cycle, code-wise. I suppose I could get a lot of help from the SourceMod forums and make a project of it. That is if there isn't some easier solution. I think that it'd be a really great plug-in though if done right. It'd be worth it, for the community.

Share this post


Link to post

completely random thought here...

 

weekly (or nightly, or weekend'ly) menus. by menus, i mean mapcycles.

 

"hello, my name is pwnzer and i'll be your admin tonight. this evening we have a tasty selection of carnage consisting of the following map choices:

 

map1

map2

map3

map4

 

would you like to see the wine list?"

 

anyhoo, it could be fairly easy to automate (via cron) so that each day/night could be different. maybe just one night a week or weekends only.

 

 

just a thought.

Share this post


Link to post

Hey that might be cool. And it could be generated ahead of time and posted on the website what that will be, so you can know it ahead of time. There are so many ways to do this, it's hard to pick one.

Share this post


Link to post

I'll be experimenting with some plug-in stuff over the next few days. I'll probably use MapChooser as a base, or have my plug-in use it, because it pretty much has everything we want minus just a couple things that could be added. If it isn't up to your standards, I'll keep plug-in away at it. Hmm, ahaha. Hilarity.

 

Ideally, this is what I'd want --

 

 

[*:20iy9fzg]End of map voting. The map ends, game-play stops, and a vote starts for the next map. Lasts twenty to thirty seconds, then the map changes.

[*:20iy9fzg]A certain percentage of players on the server must vote in the map vote for it to count. One person voting won't necessarily win the vote automatically.

[*:20iy9fzg]The winning map must have votes from a certain percentage of the voters. So if 3 people vote for Dustbowl, and four other maps get 2 votes apiece, Dustbowl won't win necessarily. The map cycle would just continue.

[*:20iy9fzg]Will exclude last x maps played (amount debatable -- probably 3?). Functionality already in MapChooser.

[*:20iy9fzg]Will offer map extension. Already in MapChooser, but I may have to do it different to account for the vote occurring after the map has technically ended. I can think of one or two ways to do this. Should be easy.

[*:20iy9fzg]Map list can vary. Already in MapChooser. May have to modify/add. Whatever we decide on for what to put in the map list will determine what needs doing here.

[*:20iy9fzg]Will have to modify the AutoChangeMap plugin to work with this. Sad face here. Though I think there's an easy way to do it. Crossing my fingers.

So there's a lot of maybes in there, but hopefully everything will be fairly easy. The thing I'm hoping for most is that I'll be able to prevent the map from changing after the end-game event. I need to poke around the API a bit. If I can't however, I do know that there are some other ways to do it, though none are as elegant. If I can't figure out how to do it at the end of the map, we can discuss some other methods.

 

Anything else that needs to be added? Cooky's suggestion on the map list is interesting and easily implemented. Any other thoughts on how to approach the map choices? I actually need to look at how MapChooser functions before I get too excited here, but I expect I know how it works by the description.

Share this post


Link to post

Wow that is awesome, thanks for doing that work, I know its a pain in the ass. Every time I try to do coding projects I start to see how much I don't have the mind for it.

 

One last thing, I know this is elitist, but make votes from regulars count more. At least put the hook in for it, use "reserved slot" access ("ADMFLAG_RESERVATION"). Does that strike you as a good idea? I'd really like that in there if you could? I'll work on scanning the logs for who plays a lot and add people in with "reserved slot", even though I don't have reserved slots because its unnecessary thanks to the server browser. I care a lot more about what people that frequent the server think than the server hoppers. It should also count towards the mininum votes, so if 2 regulars are voting for "dont deviate from the map cycle" that should be more seriously considered than if 2 noobs vote for a random thing. And if there's not a clear winner, just stick to the map cycle, then the server wont clear out because 3 people voted for a custom that nobody else wanted.

 

I've been thinking about this whole problem of how to populate the list of maps to choose from, I wish it could be less random. If only players could help influence that somehow intelligently. Like if us admins can all come up with our own lists, then the server can just take turns picking our favorites or something. Just anything but absolute random, then we might get some really awful maps in the list that could otherwise be filled with a good map.

 

p.s. You should implement runoff elections! Or lets use geoip (its built into sourcemod, no joke), lets have only 1 vote per state! It should be obvious, but I'll say it anyway, just kidding. :)

 

Oh and of course everyone will have tons of ideas, when someone else is doing the work. Whatever you come up with I'll just put on the server out of appreciation of the effort.

Share this post


Link to post

Wow that is awesome, thanks for doing that work, I know its a pain in the ass. Every time I try to do coding projects I start to see how much I don't have the mind for it.

Heheh, well, we'll see how far I get...

 

One last thing, I know this is elitist, but make votes from regulars count more. At least put the hook in for it, use "reserved slot" access ("ADMFLAG_RESERVATION"). Does that strike you as a good idea?

I think that's a great idea. Totally reasonable. We play there, we seed it, why shouldn't we have more sway?

 

I've been thinking about this whole problem of how to populate the list of maps to choose from, I wish it could be less random. If only players could help influence that somehow intelligently. Like if us admins can all come up with our own lists, then the server can just take turns picking our favorites or something. Just anything but absolute random, then we might get some really awful maps in the list that could otherwise be filled with a good map.

Totally possible. MapChooser has a cvar that points to the map list you want it to choose the maps from. You could make a bunch of different ones for whatever reason. Like, have a bunch of different map vote lists files, and in each of them have 5 stock maps and 3 custom maps (numbers pulled from ass), so that the map vote will always at least have a stock map in there. We could have the server rotate through them on a schedule, or it could choose randomly at the start of each map, or whatever you want really.

 

There used to be a map nomination system for map votes back in the day with some admin mods. I'm not going to do that. Sounds cool, but you generally end up with the same maps being played all the time anyway. So it's not really worth the effort. Besides that, it would be a major pain in the ass.

Share this post


Link to post

There used to be a map nomination system for map votes back in the day with some admin mods. I'm not going to do that. Sounds cool, but you generally end up with the same maps being played all the time anyway. So it's not really worth the effort. Besides that, it would be a major pain in the ass.

Oh yeah I already threw that out of my brain and didnt even mention it. Having people figure out the list of maps that should be in the list, while they are playing, is just bad. That can be decided ahead of time by us, or some poll on the forums or something.

Share this post


Link to post

:\ I'm already running into trouble with this. Once the map ends, it's past the point of no return. The map changes and I can't seem to figure out how to stop it. Blocking the end game event doesn't work, pausing doesn't work, even mp_restartgame 1 won't work. It seems I will have to employ the help of the Allied Modders.

 

I still have some tricks up my sleeve, but I want to avoid the coding nightmare I'm starting to foresee...

 

 

Another thing is that the SourceMod team is completely rewriting their map voting system. I'm feeling inclined to wait and see on this one. But I'll continue to experiment.

Share this post


Link to post

Someone is rewriting it? Can you link a thread? I took a look and could only find this:

 

http://forums.alliedmods.net/showthread.php?t=61157

http://forums.alliedmods.net/showthread.php?t=65103

 

You can try what I suggested and just do a restartround, then set warmup time, and somehow stop people from running around, then spam the screen with "please vote now", so everyone knows whats up.

There's always "bury" where you teleport people a few pixels down so they get stuck in the geometry.

Share this post


Link to post

Someone is rewriting it? Can you link a thread?

http://forums.alliedmods.net/showthread.php?t=65857

 

Please note, that this plugin is just a temporary solution to this problem. The SourceMOD team is working on a rewrite of the whole rtv/mapchooser system, and when that is released, this will become obsolete. So for this, and maybe other reasons, this plugin may never get Approved.

It was also mentioned in another thread. I'm assuming it's legit info.

Share this post


Link to post

Good news. The time at the end of the map can be increased with mp_chattime. Sweet and simple.

Share this post


Link to post

Here's how the voting system over at OTD's works.

 

rockthevote is typed - I'm not sure if anyone can do this or if just an admin can, or when.

A 5 minute timer starts - It's visible and has audio.

Those who want to vote now type in Vote.

A voting window comes up and you select your map.

For those that dont type in vote, the timer simply expires.

 

You should check this system out. It works very well.

Share this post


Link to post

Someone is rewriting it? Can you link a thread?

Ah, here's more info -- http://bugs.alliedmods.net/index.php?do ... sk_id=1187.

 

Looks like a lot of changes already, and I'm assuming more will come. Vote percentage is taken into account. The AutoChangeMap plugin functionality is integrated. Screw it, I'm just going to request some of the things we wanted and wait. Hopefully they'll get integrated, and then we can do some small customization from there for our specific needs.

 

Just as long as it doesn't take forever to come out -- he started it in November, and it's supposed to come out with version 1.1 of SourceMod (it's on version 1.0 now). I could, in the meantime, whip up a plugin that just does end of map votes, without all the good stuff we discussed earlier (including extending). But I think we're getting along fine enough without it.

Share this post


Link to post

I guess lets wait and see.

 

One thing that really pisses me off is how its so intermittent about changing the maps. Sometimes it waits for the round to end, other times it just changes right in the middle of a game. So if its not a fixed time, to make a proper map vote plugin, you would have to know when its time to trigger the vote, yes? I really like the sm_setnextmap option, then you can trigger it anytime, and maybe even change your vote anytime, then the map just changes to whatever is winning, and its not like theres this mad rush to have to go vote, you just vote whenever.

 

But as always, we'll just deal with what we're given, and make the best of it.

Share this post


Link to post

I know also have felt the pain of hitting 1 for my primary weapon and I vote for a map I don't want...I die...and I can't re-vote...Damn it all to hell!! One of the beautiful features on our server that is under-rated and under used is the Votemap feature. We have it set to where the user types in "votemap" and 75% have to vote for the same map in order for the switch to occur. I'm completely ignorant of the coding or mod that is used but if this is something you want to use or try out I'm sure I could get it from {OTD}Cuz <-(He is the puppetmaster of our family)haha

Share this post


Link to post

Happens usually when a map bug is found, or we play a map for hours on end. But it works well if the majority hate the situation. For example we had a bug on Powerhouse where midway through blue could no longer capture the powerhouse lowering the forcefield around the intel. In situations like these an admin would just change the map, but if there was no admin then the users could still change it if they got enough votes on votemap. And we have it set to where you can change your vote after you made it already. Yeah it has happened several times. I wouldn't say often but most of the time users let the current map ride. (like you said most of them don't care) but if things get bad or you have a serious majority who want a specific map...they at least have that capability.

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×