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, "spd": 50, "hpw": 50, "con": 50, "eye": 50, "gnd": 50, "fly": 50, "thr": 50, "cat": 50, "ppw": 50, "ctl": 50, "mov": 50, "endu": 50 } ] }, { "firstName": "Heriberto", "lastName": "Braman", "tid": 0, "ratings": [ { "hgt": 50, "spd": 50, "hpw": 50, "con": 50, "eye": 50, "gnd": 50, "fly": 50, "thr": 50, "cat": 50, "ppw": 50, "ctl": 50, "mov": 50, "endu": 50 } ] }, { "firstName": "Draft", "lastName": "Prospect", "tid": -2, "ratings": [ { "hgt": 50, "spd": 50, "hpw": 50, "con": 50, "eye": 50, "gnd": 50, "fly": 50, "thr": 50, "cat": 50, "ppw": 50, "ctl": 50, "mov": 50, "endu": 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 175 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 35 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 35 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, which impacts defense somespd
: speed, which affects baserunning and defensehpw
: hitting powercon
: contact hittingeye
: eye, determines how good a batter is at identifying balls and strikesgnd
: ground ball defensefly
: fly ball defensethr
: throwing strengthcat
: catcher defenseppw
: pitching powerctl
: pitching controlmov
: pitching movementendu
: pitching endurance
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.