Skip to content

Latest commit

 

History

History
97 lines (84 loc) · 2.41 KB

README.md

File metadata and controls

97 lines (84 loc) · 2.41 KB

GPSystem

The Gentry's Quest Rating system

Installation

unzip source into project.

or use pip install git+https://github.com/GDcheeriosYT/GPSystem.git

If you're testing you'll need the tabulate module

Usage

You can test ratings by running GPmain. It will create a directory named Data. You can put JSON files containing gentry's quest data inside the directory. Characters are named based off the JSON file name.

Testing should result in a table like this:

|   rank | player     |   weighted gp |   unweighted gp |
|-------:|:-----------|--------------:|----------------:|
|      1 | GDcheerios |        841.65 |           848.2 |

Upon selecting a player you'll get the overview of their different sections like so:

|   section number | section type   |   weighted gp |   unweighted gp |
|-----------------:|:---------------|--------------:|----------------:|
|                1 | characters     |       797.046 |           803.6 |
|                2 | artifacts      |        44.6   |            44.6 |
|                3 | weapons        |         0     |             0   |

The player power rating details are returned from the GPSystem's rater class.

here's an example:

from GPmain import GPSystem
import json

with open("Data/GDcheerios.json", "r") as f:
  player_data = json.loads(f.read())

program = GPSystem()

program.rater.generate_power_details(player_data)

result:

{
    "rating":{
        "unweighted":848.2,
        "weighted":841.65
    },
    "totals":{
        "characters":{
            "unweighted":803.6,
            "weighted":797.0464374999999
        },
        "weapons":{
            "unweighted":0,
            "weighted":0
        },
        "artifacts":{
            "unweighted":44.6,
            "weighted":44.6
        }
    },
    "per object rating":{
        "characters":[
            {
                "Brayden Messerschmidt":14.5
            },
            {
                "Kelly Krysa":21.5
            },
            {
                "Gavin Knudsen":28.5
            },
            {
                "Matheu Sliger":739.1
            }
        ],
        "weapons":[
            
        ],
        "artifacts":[
            {
                "Budweiser":13.8
            },
            {
                "Pepsi Bottle":13.8
            },
            {
                "Angry Anubis":17.0
            }
        ]
    }
}