Giter Site home page Giter Site logo

csgo-rankmatch's Introduction

CSGO Rank Match

Have you ever had more than 5 people that all wanted to play together, but can't because of the lobby maximum? Have you then wanted to create 2 lobbies, and play against each other? This tool will take a list of provided ranks and split them into 2 teams where the average rank is similar (or at least close). This will make each lobby 'compabitible' with each other.

Online Demo:

https://www.fatboyxpc.com/csgo-rankmatch

How to Use

This tool is a jquery plugin, so you don't have to use the online demo. The plugin is built so that you can pass it a form with rank inputs, or just call the method and pass it some options.

Currently, there are only two options you can pass: set and delta. set is an array/list of strings that you want to split into two teams. For example: ["GN1", "GN2", "MG1", "MG2"]. delta is the minimum difference (of each team's average rank) you want to see between the two teams.* You can find a complete list of the Rank strings here.

*This feature is not yet implemented, coming soon.

PS: Another demo will be posted soon if you want to just provide the set and not have to use the entire form.

Tips (for successful lobby pairing)

Delta of 0.2-0.6, maximum of 1.2

In my experience, you don't want the delta to be 0 (the average team rank would be the same), as CS:GO Matchmaking seems to want a team that "should" be better than the other.

Set mm_dedicated_search_maxping to an appropriate value for your player base. For example, if you have somebody somebody in Florida, but somebody else is in Vancouver, you won't want your maxping to be 30. I generally have all my friends set it to 350 when we try to pair lobbies. This doesn't mean you will be placed in a server with 350 ping, it just means "filter out servers with 350 ping or higher".

Delegate Lobby responsibility. There are 2 roles per team in this setup: Lobby Leader, 2nd in Charge/line/etc. The Lobby Leader is the person that created the lobby (sets the map, presses go, etc). The 2nd in charge is the guy who is immediately after the lobby leader. They are responsible for calling out how many players have accepted the match. The lobby leader should refrain from immediately clicking accept. Everybody else should click accept immediately. At this point, the 2nd person from each lobby should be communicating "1 out of 10" and so on. Assuming nobody is talking, this should make it real clear if the lobbies are in sync with each other. Once both lobbies get to 8/10, ONE lobby leader will click accept. If the other lobby also shows 9/10, there's a very high chance that the lobbies are matched up. We've only had this not be the case one time. This is also your last chance to decide if the lobbies are matched up.

Data

Delta Count
0 4
0.2 14
0.4 7
0.6 8
0.8 4
1 5
1.2 2
Total 44

How did I calculate this data? If you look at the Rank Strings link above, you will see that I essentially gave each rank a value. I started at 1 (Silver 1), and ended at 18 (Global Elite). Each game I played, if all 10 players had a rank at the end, I recorded all 10 ranks. I then did the math using the numbers I assigned. Add values and divide by 5 (for both teams); that's the average team rank. Please note that this data was recorded in the Silver Elite - Master Guardian 2 range. I'll try to get some higher data up through Legendary Eagle (Master), but it's hard for me to play on my main with my friends without dropping rank.

csgo-rankmatch's People

Contributors

fatboyxpc avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.