I’ve done additional work on my Retrosheet Scoresheet project, and I am now releasing Version 2a.

Key Improvements:
– Substitutes are now entered at a logical position on the scoresheet. For instance, if Ramon Vazquez replaces Jack Wilson in the 8th spot in the batting order, Vazquez is placed just below Jack Wilson on the scoresheet.
– If a player changes positions during a game, the second Pos/Inn columns are used.
– If both sets of Pos/Inn columns are used and there is a short bat surrounding one of those substitutions, the BA column now shows: “A”, “B”, “XA”, “XB”, “AA”, “AB”, “BA”, or “BB” depending on whether each substitution was “B”efore the short bat, “A”fter the short bat, or “X” not related to the short bat.

This closes out Version 2 of my Retrosheet Scoresheet Project.

I will now begin working on Version 3 which focuses on the incorporation of pitch data.




Over the last few weeks, I’ve done a lot of work on my Retrosheet Scorecard project, and I’m pleased to announce that Version 2 is ready. There are a lot of improvements in Version 2, but the most exciting is that games can now be exported AND imported. One of the coolest things with this new version is that I can take any event file from Retrosheet’s game file library, import it into the spreadsheet, and I can see a scorecard of the game. I was checking out the 1979 World Series last night.

Here is the listing of changes in Version 2.

  • Event files can be imported
  • When you import an event file, you can populate the rosters from either a ROS file or that game’s event file.
  • Fixed an error that occurred with a game ended after midnight
  • Earned runs are automatically set to 0, when left blank
  • If you have an error on your scoresheet, a message appears, and the program does not attempt to generate a box score.
  • Umpires are not input by their real names, not a Retrosheet ID
  • x and X are no longer case sensitive. 3xH works the same as 3XH.

    The one improvement that didn’t make it into this version involves the positioning of substitutes. When a substitute enters the game, his name is written on the top-most available line on the scorecard. Ideally, I’d like to see the player’s name entered closer to his position in the batting order. I plan to make this change in the near future, but I wanted to release this version first.

    As always, let me know if you have any questions.


I’ve added a Scorecard Gallery page to the site. Here I have links to some of my favorite scorecard templates, including my own.

If you have other scorecards that have interesting features, let me know, and I will post them.


Thanks to Robert B for informing me that the Parks file included in the zip files was out of date. I’ve updated the Version 1a zip file with the latest Parks and Umpires files.


*Mar 29 - 00:05*

I don’t think I updated the umpires file that I included with my Retrosheet Scorecard for several years.

I realized this when I started scoring games from this season, and I found that many of the umpires working the games weren’t listed within my file.

So, I updated the file from: http://mlb.mlb.com/mlb/official_info/umpires/roster.jsp.

I’ll pack it into the latest versions of the zip files.




When I put Version 1 of my Retrosheet scorecard on this site, I knew that there was (at-least) one situation that it could not handle. When the third out of an inning was made on the bases (caught stealing), and a pitcher change or batter change was made prior to the at-bat being completed in the following inning, the scoresheet could not compute a correct box score.

After the situation occurred twice in the Pirates’ first 21 games, I knew that I needed to find a way to make it work.

It’s probably not a perfect solution, but it works.

If this problematic situation arises, put a “B” (for Before) or an “A” (for After) in the BA column. If the substitute entered before the inning ended, put a “B” in the BA column. If the substitute entered after the inning ended, put an “A” in the BA column.

For example:
Jason Kendall flies out to left fielder Brandon Moss.
Yovani Gallardo homers (2) on a fly ball to left field.
Rickie Weeks walks.
Chris Duffy flies out to left fielder Brandon Moss.
With Ryan Braun batting, Rickie Weeks caught stealing 2nd base, catcher Robinzon Diaz to second baseman Freddy Sanchez.

Inning 8

Ramon Vazquez called out on strikes.
Robinzon Diaz doubles (1) on a fly ball to right fielder Corey Hart.
Offensive Substitution: Pinch hitter Craig Monroe replaces Ian Snell.
Craig Monroe called out on strikes.
Nyjer Morgan grounds out, second baseman Rickie Weeks to first baseman Prince Fielder.

Pitcher Change: Tyler Yates replaces Ian Snell, batting 9th.
Ryan Braun grounds out, shortstop Ramon Vazquez to first baseman Adam LaRoche.

Since, Tyler Yates entered after Rickie Weeks was caught stealing, an A should be placed in the BA column of Tyler Yates’ substitution line.


I can now add live update feeds to posts so that posts show the most up-to-date information from in-progress games. Data comes from MLB’s GameDay data.



Since, you know, it’s April 28, and we are leading the NL Wildcard race, I was inspired to add the NL Wildcard standings to the right-hand side of the page. Just like the National League Central standings, they’re scraped directly from stats.com.



I did some quick screen scraping from stats.com today to add some items to the site.

NL Central Standings are now displayed at the top of the right sidebar on every page.

Within the Bucs2009 page, there are now pages for Batting Stats and Pitching Stats.


I’ve posted my Retrosheet Scorecard.

I created it using Microsoft Excel and VBA macros.

Please check it out and let me know what you think!