Not suggesting a whole new system built from scratch like OW has or whatever, just an additional feature layered overtop the search lobbies feature we already have.
So, here’s the suggesto; we get a new entry in the top of the lobby browser (so you have to click thru & see what lobbies are being hosted AT LEAST once while booting this up), it is a permanent search bar like the one above the lobby browser but inside of the lobby browser where the top-most lobby would normally go, with a button on the side that lets you edit what’s in the search bar and a refresh button next to it.
You click the edit button and that slot becomes an editable text field and you can type in it; you type in the name of a map THAT YOU ALREADY HAVE DOWNLOADED, then a “; " and the name of another map.
When you save your changes by clicking the edit button again, the client goes down the list of available lobbies until it finds the left-most map in your auto-search & puts that lobby in the top slot where the search bar was (with the edit button still in the side). If it doesn’t find a lobby of that mapname, it restarts with the next mapname in your list, & so on and so forth until it finds something.
If it finds a game & populates that top slot with it you could double click it to join it like normal or click the refresh button to have the auto-search mark that specific lobby to be skipped by the auto-search & re-runs the search. At the bottom of the custom games screen under the lobby browser, is a “auto-queue” button you press that gives you a confirmation pop-up with a clickable toggle on it to set whether or not you want to auto-requeue when you exit your next match; if you press that button it automatically puts you into whatever the first lobby to get grabbed by the auto-search is.
If you check the auto-requeue toggle when turning on the auto-queue then when you get the “you win” or “you lose” notification in-game your client gives you a “cheats turned on!” subtitle that warns you it’s going exit the match in 1 second unless you do an input in-game & then quits you out of the match, waits a second to click the “exit stats” screen button automatically and then 1 second later runs the auto-queue again (3 seconds to get back in, not counting animations & load times)
And, that’s the basic pitch. It’s not building a whole new matchmaker or anything, just adding a couple of scripts to the client the likes of which hundreds have been made for games like the 1996 2D MMO Tibia.
And now the less-basic pitch; extra features.
FIRST AND FOREMOST, when you host a lobby you get an extra check box under the “random heroes” check that nobody has ever clicked, that lets you exclude your lobby from people’s auto-joins. Some games people need to be communicating with eachother before the lobby starts & they don’t work with people who are tabbed out until the map load-in sound plays. Also; a toggle underneath it that excludes your lobby from people’s auto-joins except for your bnet friends. Lets you white-list specific people who are tab-outters but are chill. Also you could just not use this checkmark and ban auto-queuers who AFK or whatever.
(Also it should show the lobby host who is auto-queued in the lobby)
Secondly; SYNTAX!! Before ending a map entry with the “; “, you can add a “, “ and then type some exclusions.
For example, “BalancedHeroSurvival, pingless 200; TowerSurvivors”, if you need good ping to play a PVP game but a PVE map you don’t care about it or whatever. Or mapname exclusions or requirements, “Towersurvivors, hasname 1.5” (Tower Survivors has a setting set by red at matchstart for gamespeed, hosts will put what theyre gonna set it to in the lobby title), and “Mapname, notname Newbs notname Noobs or hasname Pros hasname Ranked hasname Only” if you want a Tryhard match. Also, host bans; “Direct Strike, nothost ThatOneAsshole”, for that one guy who likes to play classic Direct Strike (nobody likes that mode) or host requirements or player requirements like “DirectStrike, hashost Coolbuddy” if you only want to play a map if a specific person will be setting up the host settings, or you will play a map if it has a specific friend to play with. And the hostban or hostrequire or playerban or playerrequire can be added as its own map entry without a map name, in case you’ll play anything with a specific person.
Dunno what other types of exclusions you’d want but mention them below if any jump out to you!
Thirdly; partial string matches. Players don’t have to type the full map name in to the auto-search setup if they don’t care which version of the map they get (again, exploiters with map uploads arent really a concern bc this system doesn’t touch maps you haven’t downloaded yourself). This means if there’s been a 1.91 update and you don’t want to get into out-of-date lobbies you can just add the new version number to your search queury by typing the full mapname with version number at the end, like “TowerSurvivors1.91”. IDK if every map has version numbers formatted the same way but not my problem
And then, finally; auto-rehost, and auto-queue-after-map for hosts.
This has to be both a lobby setup option and a auto-queue toggle, since a lot of maps have red/host set up options on mapload. When you(I) set up a Tower Survivors map I can set it to auto-rehost and/or auto-requeue after the map, and anybody who is setting up their auto-queue can opt in to auto-rehost if they’re auto-requeueing, so the first player opted in to this who leaves the map automatically joins a lobby if one is available, if not they make one automatically and all of the other players with this set up will fill in to that map automatically when they leave too.
And of course, a auto-launch-when-full option for the host.
OH YEAH AND, if a host kicks you while ur in auto-queue mode, it turns ur auto-queue off. This could be griefed, but, it just requires you to press a button to get back into the queue so, who cares
Any features that jump out to you that I’d missed?
Of course it not downloading maps for you means eventually most maps you auto-search or auto-queue for would cycle out of date & then your search would come up empty, but if it does you could add a little warning symbol on the slot that lets you know that it found name matches but you didn’t have any of them downloaded to let you know you need to go thru & manually download new versions of ur maps, and maybe mark those lobbies on the lobby browser for us. But I don’t consider needing to occasionally prune your queuer to be an actual Problem
Mostly I just want this bc I find Tower Survivors to be an extremely relaxing game I like to wind down to at night, but the #1 problem is its far more work to set up and manually launch the lobby when full than it is to actually play the map; a lot of people will host a match and then fall asleep bc the game is THAT comfy cozy, and then its hard to fill a lobby up with players bc there’s a lobby with host who’s facedown on his keyboard. This would solve that problem; that it’d do a bunch of other stuff for other people is just a happy accident. You’re welcome
Honestly if they charged me like, $1.99 a month to be allowed to use these features I wouldn’t mind kicking a buck towards it to weed out people abusing this system if it’d help.