GithubHelp home page GithubHelp logo

chhopsky / foldysheet Goto Github PK

View Code? Open in Web Editor NEW
2.0 1.0 1.0 42 KB

an outcome calculator for professional league of legends. probably works for any round robin based esport league.

Python 100.00%
esports league-of-legends

foldysheet's Introduction

THE FOLDY SHEET

The foldy sheet is a physical implementation of a binary tree representing the full set of every possibility of the outcome of a regular LCS season, and is used to determine who's made playoffs, who hasn't, and how many scenarios in which team X makes it.

This program works for all riot leagues supported by Panda, which is most of them.

Requirements: Python 3.8, pipenv

HOW TO USE:

  1. You'll need to get a key from PandaScore so you can get the league data: https://app.pandascore.co/signup
  2. Put it in config.py, and set the slug for the league you want to evaluate.
  3. pipenv shell
  4. Run python foldysheet.py to generate every possible result.
  5. Run can_they_make_it.py, then either 'locked', 'eliminated', or 'maybe'.

Locked and eliminated are self explanatory. Maybe will tell you the number of scenarios in which a team can make it. Since every region has its own tiebreaker rules, this does not tell you how ties are solved. A scenario in which a team is tied will count both as a possibility and tell you who's tied. You can then apply your region's head to head rules to fix it.

NA tiebreaker rules are included - comment out the lines that call tiebreaker(possibility) to not apply them.

Configure the playoff lock position in config.py, by default it is set to 6th place, because I wrote this primarily for LCS. Technically it can work on any esport that deals with BO1s and is on pandascore, it also works for BO3s, but playoff elimination rules may be different based on win-scores (2-0 vs 2-1) so YMMV.

Any questions, hit me up @chhopsky on twitter.

LICENSING INFORMATION

This program comes with absolutely no warranties or guarantees of any kind. It is for personal, non-commercial use only. If you use this program for commercial purposes, including but not limited to broadcast, written articles, social media, or videos, you require a license. Unlicensed commercial use will result in legal remedies being aggressively pursued.

Pricing varies depending on company and use. Contact me on twitter or via email to obtain a commercial license.

foldysheet's People

Contributors

chhopsky avatar leothechosen avatar

Stargazers

 avatar  avatar

Watchers

 avatar

Forkers

serinus1

foldysheet's Issues

can_they_make_it excluding teams that haven't locked but are guaranteed a tiebreaker

In the LCS Summer 2022 Regular Season, before Week 9, FLY has guaranteed themselves at least a tiebreaker for playoffs.

As such, expected behavior from the script would be to list FLY under the "Maybe" teams:
FLY: 32768 (tiebreakers required in 8296) (8296 may not be accurate to what the script would produce)

Instead, FLY is not listed with any of the teams.

The following teams are locked in all 32768 scenarios:
EG
C9
100
TL
CLG

The following can possibly make playoffs in X scenarios:
DIG: 6960 (tiebreakers required in 4912)
IMT: 20352 (tiebreakers required in 10272)
GG: 21520 (tiebreakers required in 10640)
TSM: 31296 (tiebreakers required in 6240)

The following teams are eliminated in all 32768 scenarios

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.