                        2020 Season Database Notes
                        --------------------------

December 1, 2020

For the past several weeks, we've been immersed in the process of creating
the 2020 Season Database.  Now that the stats are loaded, the ratings are
assigned, and our final testing is completed, we thought we'd take
some time to discuss what goes into the player ratings, how we come up with
our ratings, and how to interpret those ratings.

Those of you who have been customers of Diamond Mind for a while will
recognize that some of the material in this note has changed very little
since last year.  We apologize for making you wade through some things that
you already know, but we feel it is important to repeat certain comments for
the benefit of the many new customers who have begun playing Diamond Mind
Baseball in the past year.

These topics are covered in this note:

  Copyright notices
  License agreement
  Database contents
  Real-Life Transactions, Game-by-Game Lineups, and Schedules
  Parks and Weather Information
  The Accuracy of Real-life Statistics
  Real-life Salaries
  Holds and blown saves
  Team Efficiency
  Parting Thought


Copyright notices
-----------------

Much of the statistical data in this product was compiled using files
downloaded from Retrosheet.org.  The information used here was obtained 
free of charge from and is copyrighted by Retrosheet.  Interested parties 
may contact Retrosheet at 20 Sunset Rd., Newark, DE 19711.

This document and all other information in this 2020 Season Database are
the copyrighted property of Diamond Mind, Inc.  Any commercial use or
distribution without the express written consent of Diamond Mind is
strictly prohibited.


License agreement
-----------------

Please read this license agreement carefully.  Use of Diamond Mind Baseball
("the Software") and related Season Databases constitutes your acceptance of
these terms and conditions and your agreement to abide by them.

The Software and Seasons are protected by copyright laws and international
copyright treaties, as well as other intellectual property laws and treaties.

This license agreement grants you the nonexclusive right to use this
Season Database for personal and recreational use.  Commercial use of
this Season Database is not permitted.  You may not rent or lease this
Season Database.

You are authorized to make backup copies of this Season Database for the
sole purpose of protecting your investment.  You may transfer the
Season Database freely from one computer to another, so long as there is no
possibility of it being used by two people in two places at the same time.

If you administer or play in a league that uses Diamond Mind Baseball and
this Season Database, you are authorized to distribute copies of this Season
Database to other league members, PROVIDED YOU FIRST RECEIVE CONFIRMATION
FROM DIAMOND MIND THAT EACH AND EVERY PERSON TO WHOM YOU ARE MAKING THE
DATABASE AVAILABLE IS A REGISTERED OWNER OF THE DIAMOND MIND BASEBALL GAME
AND THIS Season Database.  Distributing this Season Database in any other fashion
is a violation of our copyright and is strictly prohibited.

You may permanently transfer all of your rights under this license
agreement provided you retain no copies and the recipient agrees to the
terms of this license agreement.

This Season Database is provided "as-is" without warranty of any kind.
Diamond Mind will not be liable for any special, incidental, consequential,
indirect, or similar damages.


Database contents
-----------------

As you know, the 2020 season was shortened due to Covid-19.  As a result, 
this season database includes three schedules:

  - the original 162-game schedule (as-scheduled)
  - the revised 60-game schedule (as-scheduled)
  - the 60-game schedule adjusted for postponements (as-played)

The 60-game as-played schedule is the default, and you will need to use 
this one if you wish to take advantage of the real-life transactions and
lineups.  If you prefer, you can modify the leagues to use either of the
as-scheduled schedules instead.
 
  NOTE:  If you switch to an as-scheduled schedule, remember to turn off
  the use of real-life transactions and lineups.

We have created player records for everyone who appeared in the big leagues
this season -- that's a total of 1289 unique players (580 batters, 708 
pitchers, and 1 dual-role player), including 67 who played on two teams 
and 2 who played on three teams.

If a player appeared on more than one team in real life, we created a
player record for each team (for people who do season replays using the real
rosters) plus a combined record (for use in draft leagues).  The combined
records appear in the free agent listings.

In the weeks since the season ended, we've computed, reviewed, and loaded
into your season database files:

  over 60,000 stats:  batting, pitching, fielding, starts by position

  over 9,000 player facts:  names, batting and throwing hands, birthdates

  over 20,000 player ratings that you can see: injury, bunting, range,
  running, throwing, and so on

  over 35,000 ratings that you can't see:  the event tables and
  pitch-by-pitch ratings that make the game produce accurate results

  opening day rosters for every team, plus more than 2,700 real-life
  transactions, and

  real-life starting lineups for every game played this season


Real-Life Transactions, Game-by-Game Lineups, and Schedules
-----------------------------------------------------------

As you know, inter-league play is a fact of life in this era, and this
season database has been prepared accordingly.  There is a single schedule
that includes both games within leagues and inter-league games, and it
is no longer possible to simulate one league at a time.

We have compiled a complete set of real-life transactions (trades,
promotions and demotions, disabled list moves, and so on) and game-by-game
starting lineups.  If you play seasons using the real-life rosters and
schedule, Diamond Mind Baseball will process real-life transactions on the
appropriate dates and will choose the real-life starting lineups for each
game.

  NOTE:  If you want to change the real-life rosters in any way, either
  by moving one or two players around or by drafting entirely new teams,
  you'll need to modify the settings for your league or organization to
  turn off the use of real-life transactions and game-by-game lineups.
  Those transactions and lineups are meaningless once you change the
  rosters.

To make all this work, the league schedule shows games when they were
actually played.  (We call this the "as-played" schedule.)  If, for example,
a game was originally scheduled for April, but was rained out and replayed
in September, it shows up on the schedule in September.  That's the only
way to do it, since the starting lineups for a game in September might
include a player who was not on the roster on the original April date.
(One exception:  if there was a tie game, that game is not included in the
schedule since it is replayed later most of the time.)

Because some of you might like to use the original schedule, we've included
two of them.  (We call these "as-scheduled" schedule, because all games
are listed on the dates when they were originally scheduled.)  You can
find them on the Schedules tab in the Organizer window and they're available
to be assigned to your organization.

  NOTE:  If you switch to the as-scheduled schedule, remember to turn off
  the use of real-life transactions and lineups.


Parks and Weather Information
-----------------------------

As we do each year, we have updated the ballpark information to reflect
changes in the physical characteristics of the parks, their statistical
impact on offense, and the weather patterns for the current season.

  NOTE: Both 2020 Marlins Park and 2020 Minute Maid Park had no open-roof
  games in 2020. Accordingly, both are classifiied as a DOME for 2020.

Beginning with the release of Diamond Mind Baseball version 8 in 2000, 
we began supplying scale drawings of each park that are displayed on the
main game window.  These images are quite large, and most of them don't
change from year to year, so we don't include them when we ship a
season database.  You can download any new and updated park images for 2020
from our web site (www.diamond-mind.com) at no charge.


The Accuracy of Real-life Statistics
------------------------------------

As always, this Season Database is the product of extensive research into
player performance.  Using detailed information, we compile batting,
pitching and fielding statistics.

After years of compiling and licensing statistics from the leading
statistics companies, we have learned that there is not always 100%
agreement on the official stats and various breakdowns.  Small
differences often exist in the data published by different companies
and by baseball's official statisticians.

You might find it surprising that it's not always clear which way a
player bats or throws.  Most of these cases don't matter much, since the
majority involve relief pitchers who rarely or never batted during the
season.  But sometimes an important player is hard to pin down.  It's not
all that unusual to find a player listed as a switch-hitter in the team's
media guide and as a right-handed batter on baseball web sites.

As a result of the work we do in this area, our batting hand info and
our left/right splits might differ slightly from those on various web
sites.  We believe our information is at least as good as any other
source you might use.

In our experience, fielding stats get less attention than batting and
pitching stats when it comes to finding and correcting mistakes.  There
are always small differences between the fielding statistics published
by STATS (supplier to many major web sites) and the official statistics.
As far as we know, no player is off by more than one in any category,
so none of the differences will have any impact on player performance
in your DMB games.

The bottom line is that if you see a small difference between the stats
we publish and your favorite book or web site, don't be surprised.
Of course, if the difference is significant, please let us know so we
can research it and make any necessary correction if it turns out that
the error is in our data.


Real-life Salaries
------------------

A few years ago, we made space in our player file to store the salary and
contract expiration year for each player.  It was never our intent to fill
in these slots with information on real-life contracts.  Rather, we added
them so Diamond Mind Baseball leagues that use salary cap systems would be
able to enter their salaries, see those salaries on screen and in reports,
and have those salaries carried forward from year to year by our season
database migration feature.

But we were asked by quite a few of our customers to add the real-life
salary information anyway.  And that's what we've been doing for many
years.

Many real-life player contracts have special provisions for bonuses,
incentive clauses, and deferred compensation.  So it's not always obvious
how to come up with a single number that represents a player's actual
salary.  The figures in our database are base salaries for the 
current season.

Many players who were called up during the season are minor-leaguers with 
little or no major league service time, so it's usually safe to assume 
they're making the minimum if we can't find evidence to the contrary.  
The minimum was $563,500 (563K) this year.  


Holds and blown saves
---------------------

These statistics are not part of the official rules of baseball, so the
various companies that produce the statistics and boxscores that you see
in the press and on web sites are free to define these any way they like.

In part because STATS was the first to come up with these ideas, the
software that we use to compile pitching stats uses definitions that are
very similar to those behind the numbers supplied by STATS to their
customers. But those definitions are not exactly the same, so our
numbers don't quite match the ones published by STATS.

Generally speaking, STATS awards a hold whenever a reliever enters the
game in a save situation and holds the lead until another reliever takes
over.  But they don't award a hold when the reliever enters the game in
the middle innings, even though the reliever is entitled to a save if he
holds the lead through the end of the game and pitches effectively for
at least three innings.  And they don't charge a reliever with a blown
save when he enters the game that early, either.


Team Efficiency
---------------

Every year, a small number of teams post a real-life win-loss record
that's not completely in sync with the way that team produced during
the season.

Teams win games by scoring more runs than their opponents, so a team's
difference between runs scored and runs allowed for a season is a good
predictor of its win-loss record.  But it's not a perfect predictor.

In any given season, at least 70% of the teams will produce a win-loss
record that fits its underlying run margin, but there are always
exceptions.  In rare cases, a team can win a dozen more or fewer games
than it normally would with its run margin.  Differences of up to
five wins are more common.

And how do you outscore your opponents?  Mainly by producing more hits 
and walks than they do.  But every season reveals a few teams that score 
more or fewer runs than you'd expect given the stats posted by the players 
on that team.  The same thing can happen with run prevention.

What does this mean for the Diamond Mind Baseball game and our annual
Season database?  We've created a season database in which every player
matches his real-life performance when the season is simulated many times
and the results are averaged.  

Despite this degree of accuracy at the player level, some DMB teams will 
win more or fewer games than they did in real life because of efficiency-
related factors that arose in the one time the real-life season was played.

When player and team results diverge, we must choose whether to focus on
accuracy at the player level or accuracy at the team level.  We choose to
focus on the players.

The only way we could force some teams to match their real-life win totals 
is to distort the ratings of their players in order to make them perform 
better or worse in your simulated games than they did in real life.

Those distortions would be highly undesirable in any leagues where these 
players are drafted or traded onto new rosters, so we choose to maintain 
the integrity of the player ratings and let the teams perform as they 
would have in real life had they experienced normal relationships between 
(a) offensive events and runs and (b) run differentials and wins.

As a result, if you replay the season many times and average the results,
as we do in our testing, it will become clear that some real-life teams 
were very lucky or unlucky to post the win-loss records they did.

For the 2020 season, there were six teams that varied from their expected
wins total by plus/minus 3 wins. Miami led the way by winning 5 more games
than expected.  They were outscored by 41 runs but somehow managed to 
finish with a 31-29 record.  No surprise that Miami skipper Don Mattingly 
won the NL Manager of the Year Award.

Meanwhile, Tampa Bay had a very good season, outscoring their opponents 
by 60 runs in 60 games.  Normally, a run differential of 289-229 would
produce a record of 37-23, three wins short of their actual 40-20 record.

Teams that win many more, or many fewer, games than expected often fall 
back to the mean the next year.  For example, the biggest 2019 exceptions
were Chicago North Side (-7) and San Francisco (+7).  Both returned to 
normal relationships between run differentials and wins in 2020, with 
Chicago at +1 and San Francisco at -1.

The bounce back theory predicts that the Marlins will fall back to the
mean in 2021. Assuming that offseason moves don't change their talent
levels much, we can expect better seasons from Baltimore and Washington.  
Similarly, look for Tampa, Toronto, and Colorado to regress slightly if
their offseason moves don't fundamentally change their teams.

But that's just part of the 2020 picture.  Other teams deviated from
normal in how they translated hits and walks into runs.  The best example
of this was Miami's division rivals in New York.

One fairly simple way to judge a team's performance is to see how its
offensive production compared to its opponents.  Let's use a stat we call
TB+ for this purpose.  TB+ is total bases on hits plus walks plus HBP.

New York's hitters produced 1171 bases on these events, third-best in the
league, and yet they only finished 7th in the league in runs scored.
Meanwhile, their pitchers were below average in this regard, allowing 1125
bases on these events.  This was 10th best in the league, but they were
only 13th in the league in run prevention.

Their actual win-loss record was 26-34.  But their actual run differential
of 286-308 would normally produce a 28-32 record.  But even that is somewhat
misleading because they outproduced their opponents by 1171 bases to 1125.
In other words, their run diffential was also misleading, as they scored
fewer runs than they should and allowed more.  

There are other factors that go into run production and winning, such as
base running, base stealing, and errors.  But TB+ captures an awful lot of
what makes a team win or lose, so it's a pretty good starting point for
analyzing a team's performance in a season.  Based on that, New York in
2020 performed more like a .500 or better team than a 26-34 team.

In the other league, Tampa Bay and New York each outproduced their opponents
by 133 bases, yet Tampa Bay won 40 games and New York only 33.  You can
expect their win-loss records to be much closer than that in DMB seasons.


Parting Thought
---------------

We put a significant effort into our Season Database each year -- slogging
through reference sources to track down batting and throwing hand
discrepancies, compiling stats and checking them against other sources,
entering and checking thousands of player transactions, and poring over
thousands of pages of analytical data and player notes to come up with 
what we believe are highly accurate player ratings.

We hope you are pleased with the results, and thanks again for choosing to 
play Diamond Mind Baseball.
