Toribash
Original Post
matchmaking brainstorming
okay here goes matchmaking system i came up with just because why the fuck not

matchmaking table, which is used to find apropriate matches

id | playerStatus | nick | ELO_player | time
1 | LookingFor | rapist | 1605 | 13:58
2 | LookingFor | child | 1600 | 14:00
3 | Ranking | scrub | 1650 | 13:58
4 | Finished | noob | 1500 | 14:00


"there could just be an option to matchmake and an option to go to server browser. This way, the tourneys can still exist and be ranked. All matchmaking will be executed in official competitive mods that can be chosen as a filter."(c) Bercat

how? by adding new column with mod player selected and adding one more filter for mod selected


anyway table explanation:

playerStatus is a value that dictates the state of player, if he is looking for match or not
can be 3 values:
LookingFor - means player is looking for match
Ranking - means player is playing ranked match
Finished - means player finished his match or his search for match

this thing is called fl0w chart



okay, so whats going on here?

1) player click multiplayer, he is given option to go ranked or not. if he goes unranked he goes to server browser and just plays as usual
2) player select to play ranked, matchmaking is initialized
3) checking if the player have an entry in matchmaking table ( played ranked match before ) if he didn't, new entry created and neutral ELO is set, if entry exist, continue
4) playerStatus in player's matchmaking entry is changed to LookingFor, ELO_player is retrieved from database and added to entry, current timestamp added
5) checking entries in matchmaking table if there are other players LookingFor, if not found, ask to cancel search, change playerStatus to Finished to exclude his entry from search, if not, wait and check again
6) if players are found, compare ELO, by making and interval of ELO_player +/- 10, filter entries in matchmaking table that fit the interval, if not found, return to cycle and add +/-10 more, each time untill opponents are found
7) from players found select the one with oldest timestamp why? the key priority is speed of matchmaking, therefor it's a deciding criteria
8.) set both players playerStatus to Ranking to exclude their entries from search
9) actual gameplay, can be first to 3 session or just one game, after match is resolved, update each players ELO_player and set their playerStatus to Finished
10) start looking for another opponent
Last edited by snake; Aug 6, 2015 at 01:25 AM.
tell me about aikido
~referencing Dark Souls in suicidal threads since 13/01/15
absolutely not a problem, it can be solved by adding mod to the table and one more filter,

EDIT: cba to edit the fl0wchart now, need to sleep, will do tomorrow

EDIT2: added your input to OP, if you don't mind
Last edited by snake; Aug 6, 2015 at 01:26 AM.
tell me about aikido
~referencing Dark Souls in suicidal threads since 13/01/15
awesume job! imo if a matchmaking system is implicated, there shouldn't be any ranked tourney servers. just use one method to rank people, it's more clear that way.

for mods, yes a filter sounds just fine.

now another thing is, let's say the player searched again..and was only able to find the same guy he just matched against..imo maybe allow playing against the same opponent once every hour..or so. idk
Your messed up world enthrills me
It needs to have background matchmaking like Toribash Wii had.

So you wait in line in Single Player or another server while the matchmaking process is running in the background.

If you want to match make against the same high rank or semi popular mod as you the wait time is going to be too long.
Originally Posted by hampa View Post
If you want to match make against the same high rank or semi popular mod as you the wait time is going to be too long.

no, the time will be minimal as it's prioritize to match you up with players with the oldest timestamp within your ELO range,
if nobody in your ELO range, the range is increased, and checked again, and again untill you find an opponent
Originally Posted by Bercat View Post
So if my elo rating was 1650.00, the game would search for players with an elo rating ranging from 1640.00 through 1660.00. If the game doesn't find anyone in that range then the range extends by 10 more points each way. So then it would search for players ranging between 1630.00 and 1670.00. The game will continue to increase the ranging until it finds a player within the range. Then it links the two players together into a match.


id | playerStatus | nick | ELO_player | time
1 | LookingFor | rapist | 1632 | 14:01
2 | LookingFor | child | 1639 | 14:05
3 | LookingFor | Bercat | 1650 | 14:09
4 | LookingFor | noob | 1500 | 14:03

what's going on?
no players within +/- 10 elo range (1640 - 1660)

what the matchmaking does?
it adds +/-10 more to ELO range and search again, now in (1630 - 1670) interval

what happens next?
matchmaking selects the player who was the oldest in queue, meaning not the child with 1639 ELO, but the rapist with 1632, as both are within range of (1630 - 1670) but the rapist waited longer,

why we prioritize time over ELO?
because waiting for opponent matching your ELO perfectly is retarded, as the whole point of matchmaking to be sucessfull is speed.

hey, snekk, but can i be stuck fighting one opponent over and over?
no. his rank will continue to increase or decrease untill you are both not in same ELO range anymore

the current step i suggested is 10, and it obviously can be decreased to 5 to prioritize finding closer opponents, but the thing stays the same and work the same way anyway
Last edited by snake; Aug 6, 2015 at 09:44 AM.
tell me about aikido
~referencing Dark Souls in suicidal threads since 13/01/15
The problem I could see happening is the wait being too long and therefore, after the first month of hype about matchmaking, people lose interest in both that match and the matchmaking system,with the small community we have its likely wait times will be long and therefore the matchmaking system could lose its backing when its already a thing and end up being removed
Don't dm me pictures of bowls that you find attractive.
Originally Posted by SmallBowl View Post
The problem I could see happening is the wait being too long and therefore, after the first month of hype about matchmaking, people lose interest in both that match and the matchmaking system,with the small community we have its likely wait times will be long and therefore the matchmaking system could lose its backing when its already a thing and end up being removed

read my or bercat responses first then ask this question again.



alternatively, in worst case scenario, instead of removal - hide the whole ranks and ELO, keep it only on server, and use it to match up players as primary multiplayer feature

"quick play"

gonna work pretty fine and people are going to absolutely love it, and it will be popular as it does not imply any competition, it finds the opponent that suits you, without telling you what rank are you or what your ELO is, even though it does have it and it does change it based on your performance

atleast we will have proper matchmaking
Last edited by snake; Aug 6, 2015 at 10:00 AM.
tell me about aikido
~referencing Dark Souls in suicidal threads since 13/01/15
Originally Posted by snake View Post
no, the time will be minimal as it's prioritize to match you up with players with the oldest timestamp within your ELO range,
if nobody in your ELO range, the range is increased, and checked again, and again untill you find an opponent

Then we get complaints of noob farming. If your ELO is 1680 and there is only one other player matchmaking at ELO 1600.
-----
Originally Posted by SmallBowl View Post
The problem I could see happening is the wait being too long and therefore, after the first month of hype about matchmaking, people lose interest in both that match and the matchmaking system,with the small community we have its likely wait times will be long and therefore the matchmaking system could lose its backing when its already a thing and end up being removed

Pretty much what happened with the old matchmaking system. Players waited 30 seconds or so, if they never got any match they didn't try matchmaking again.
Last edited by hampa; Aug 6, 2015 at 12:04 PM. Reason: <24 hour edit/bump
Originally Posted by hampa View Post
Then we get complaints of noob farming. If your ELO is 1680 and there is only one other player matchmaking at ELO 1600.

no, this is not noob farming as you are prioritized to match up with an opponent with similar elo in the first place, if there are nobody than you and him, it's better to have any match than no match at all.

if there is only one player you can play with this is another extreme, and for you as a player, it would be rather better to have ANY match up and play instead of waiting another 5-10 minutes to find a perfect match up, and getting none at all, to avoid the situation you described here:

Originally Posted by hampa View Post
Players waited 30 seconds or so, if they never got any match they didn't try matchmaking again.

again, the priority is for player to click match up and FIND an opponent.
this is the top priority for matchmaking to function. if you can't get matched to atleast somebody to play the game, you would not use it ever again,


therefor, it's better to have to play with ANYBODY than NOBODY at all.

if there are more players than just you and him, matchmaking will prioritize to match you up with players of ELO in your range.

EDIT: amazing, thanks for infraction, since when impersonation is not an offence?

and still,

Sir, stop using hampa's account and impersonating him, i'm not going to waste my time on human being like you
Last edited by snake; Aug 6, 2015 at 01:01 PM.
tell me about aikido
~referencing Dark Souls in suicidal threads since 13/01/15
i think ranked tournaments is a bad idea, too much time wasted on waiting instead of playing
tell me about aikido
~referencing Dark Souls in suicidal threads since 13/01/15