Permalänk

Matchmaking funktion

Hej!

Som topicen skvallrar om, har jag lite frågor angående hur det går till när spelare/lag paras ihop för att mötas i en match i ett datorspel (detta gäller alltså inte dejting-forumet ).

Ponera att jag har funderat på att utveckla ett mycket mycket banalt spel i exempelvis c#, där spelet går ut på att 2 spelare möts i ett spel/runda där en av parterna måste komma ur segrande för att spelet ska bli klart. För att para ihop spelare med varandra, tycker jag att det verkar vara rimligt att använda sig av en matchmaking funktion/algoritm. Jag antar också att spelarna kommer möta varandra i en server skapad för just deras spel.

Jag undrar således om det är någon här som har lite information angående matchmaking och/eller "server-frågan" och vill dela med sig? Vart ska man börja?

Mina programmeringskunskaper är hyfsat begränsade, men jag har inte bråttom, och ser detta som ett sätt att bli ännu bättre på programmering.

Fråga mig om det är någon väsentlig information som jag har missat att delge!

Permalänk
Medlem

Vet inte om du känner till Dota 2, men här är lite information om Valves matchmaking:

http://blog.dota2.com/2013/12/matchmaking/

Permalänk
Medlem

En vanligt förekommande algorithm är ELO. Finns enligt mig några begränsningar men inget som man inte kan lägga till undantag för själv.
https://sv.wikipedia.org/wiki/Elo-rating
Ett annat system är glicko. Påminner en del om ELO.
https://sv.wikipedia.org/wiki/Glicko-systemet

Visa signatur

.

Permalänk
Medlem

Först och främst, välkommen till Sweclockers!

Har inte arbetat med matchmaking funktioner, men det första jag började tänka på när jag läste din tråd var:

K/D Ratio
Player Level
Amount of time played

Om man t.ex. har 10 spelare i en server så kanske matchmaking funktionen bör kolla på dessa tre saker och para ihop rätt spelare för en så bra balans som möjligt. T.ex. någon loop som letar efter en summan av K/D ratio i båda teamen så att de blir ungefär lika stora? Och därefter finslipa med annan data?

Visa signatur

12c/24t 4.0GHz (Zen2) • 2x16GiB 3200MHz C14 • RTX 2080 FE 1965MHz 7000MHz • X570 I PW • Ghost S1 MKII

Permalänk

Tack

Hej alla!

Tack för er respons!

Matchmaking-funktionen som jag vill använda mig av behöver faktiskt inte ha den egenskapen att den ska kunna sortera spelare efter olika skicklighetsnivåer, det är helt enkelt helt slumpmässigt vem spelaren ska möta, oavsett hur länge hen har spelat, hur mycket hen har vunnit/förlorat etc.

Jag började fundera lite också, jag kanske börjar i fel ände? Jag känner att det kanske hade varit bättre om jag börjar fila på det här med hur man skapar en spelserver dit 2 spelare kan ansluta sig? Vad tror ni?

Permalänk
Hedersmedlem
Skrivet av ibrakadabra:

Hej alla!

Tack för er respons!

Matchmaking-funktionen som jag vill använda mig av behöver faktiskt inte ha den egenskapen att den ska kunna sortera spelare efter olika skicklighetsnivåer, det är helt enkelt helt slumpmässigt vem spelaren ska möta, oavsett hur länge hen har spelat, hur mycket hen har vunnit/förlorat etc.

Jag började fundera lite också, jag kanske börjar i fel ände? Jag känner att det kanske hade varit bättre om jag börjar fila på det här med hur man skapar en spelserver dit 2 spelare kan ansluta sig? Vad tror ni?

Ja, det låter som en bra idé att börja med servern