Players Customization
If you haven't already, first read the customization overview.
This is the simplest format to define players in a League File:
{ "version": 43, "startingSeason": 2019, "players": [ { "firstName": "Andrew", "lastName": "Phillips", "tid": 0, "ratings": [ { "hgt": 50, "stre": 50, "spd": 50, "endu": 50, "pss": 50, "wst": 50, "sst": 50, "stk": 50, "oiq": 50, "chk": 50, "blk": 50, "fcf": 50, "diq": 50, "glk": 50 } ] }, { "firstName": "Heriberto", "lastName": "Braman", "tid": 0, "ratings": [ { "hgt": 50, "stre": 50, "spd": 50, "endu": 50, "pss": 50, "wst": 50, "sst": 50, "stk": 50, "oiq": 50, "chk": 50, "blk": 50, "fcf": 50, "diq": 50, "glk": 50 } ] }, { "firstName": "Draft", "lastName": "Prospect", "tid": -2, "ratings": [ { "hgt": 50, "stre": 50, "spd": 50, "endu": 50, "pss": 50, "wst": 50, "sst": 50, "stk": 50, "oiq": 50, "chk": 50, "blk": 50, "fcf": 50, "diq": 50, "glk": 50 } ], "draft": {"year": 2020} } ] }
Some things you might want to know:
tid is the team ID number, ranging from 0 to N (usually 30) for the teams in your league. Additionally,
- -1 is for free agents
- -2 is for undrafted players
- -3 is for retired players
If don't include a draft year, draft prospects will appear in the upcoming draft. If you want to specify multiple upcoming drafts, you need to use the draft.year
property, like is done for Draft Prospect above. If you do this, make sure to also set startingSeason
, otherwise your draft classes will shift when the default starting season changes each year.
If you specify less than 149 prospects in a draft class, random prospects will be created to reach that limit.
In the example above, there are only two players defined. If your file doesn't include at least 24 players on each team, then bad things will happen when you try to use it. You should also include a good amount of bad/mediocre young players beyond the 24 man limit or as free agents (maybe 30-60 in total). Otherwise, you might end up running out of free agents before the free agent pool naturally fills up with undrafted prospects and unsigned players, and then bad things will happen.
Jersey numbers can be defined at the root of the player object like "jerseyNumber": "25",
. For players with stats included, use the same property inside a stats object to override the jersey number for a specific season.
Descriptions of rating categories:
hgt
: height. Ranges from 5'4" (0) to 6'10" (100).stre
: strength. Influences many parts of the game, particularly defense.spd
: speed. Influences many parts of the game, particularly scoring and playmaking.endu
: endurance. Governs how fast a player's skills degrade as he gets tired (does not apply to goalies).pss
: passing. Increases the quality of shots that teammates get.wst
: wristshotsst
: slapshotstk
: stickhandling. Influences many parts of the game, particularly scoring and playmaking.oiq
: offensive IQ. Influences all offensive parts of the game.chk
: checking. When a player is hit, his fatigue goes up and his performance goes down.blk
: shot blockingfcf
: faceoffsdiq
: defensive IQ. Influences all defensive parts of the game.glk
: goalkeeping. This is the only rating that matters for goalies currently.
It's best not to specify additional properties in the ratings object, like ovr
, pot
, pos
, and skills
. If you simply leave them out, then they will be auto-generated on import.
You can optionally include a URL for an image to be used instead of a randomly-generated face by putting "imgURL": "http://www.example.com/img.jpg" in the root of a player object.
There are several other pieces of information you can include, such as stats from previous seasons. Look in an exported League File from one of your leagues to see what else can be added.