Even with the overwhelming popularity of fantasy baseball, there still remains enough of a niche for its more esoteric older brother, the text-based baseball simulation. From the paper-and-pencil days of Strat-O-Matic Baseball to the current computer-based versions, many armchair General Managers have proved time and time again that they could do a better job than the person currently running their favorite Major League franchise.
Considering the considerable amount of statistics and player ratings involved in any baseball league simulation, the genre’s move to the PC desktop made perfect sense. The days of endless binders overflowing with enormous amounts of paper-based league data were finally at an end.
It surprises many that the top PC text-based baseball game series, Out of the Park (OOTP) Baseball, is developed by a German game company, Out of the Park Developments. OOTP Baseball on the desktop sports a stunning array of features, actually giving true meaning to Electronic Arts overused marketing phrase, “If it’s in the game, it’s in the game.”
Despite providing statistically accurate replays of every baseball season going back to the 19th Century, OOTP arguably works best as a “Baseball League Construction Set,” providing a framework supporting a host of league structures limited only by a player’s imagination. As opposed to individual seasons, a typical OOTP game involves a full career, spanning decades managing one or more baseball franchises.
This writer’s most treasured OOTP game began with the 1920 MLB season, won in real life (and in the game) by the Cleveland Indians, led by Hall of Fame centerfielder, Tris Speaker. OOTP then allows for each successive season since 1920 to be played in an ‘effectively’ alternate history including real-life players introduced into the game through the draft the same year they first played in the Majors. Lou Gehrig holds down first base for the Cleveland Indians? The New York Yankees never win a World Series? With OOTP Baseball, it can happen!
Downsizing Out of the Park Baseball to the iPhone
Soon after the debut version was first released by Markus Heinsohn in 1999, OOTP Baseball quickly established itself as the preeminent baseball league simulator; its fan base includes such luminaries as baseball stats majordomo, Bill James, and former pitcher, Curt Schilling. The desktop edition of the game remains available for the Windows, Mac, and Linux platforms.
A cross-platform programming library developed by P.I.S.D., facilitates OOTP Baseball’s support for the three major desktop platforms, and served as the framework for the iOS version of the game. P.I.S.D. is also used on the popular Football Manager series of soccer team management games.
Considering a typical OOTP Baseball save game file runs in the hundreds of megabytes, porting the game to a resource-constrained mobile platform required some forethought in determining which features of the game needed cut from the iOS version.
DATAVERSITYtm recently talked with Sebastian Palkowski, the lead developer for iOOTP Baseball, to gain insight into the challenges involved with porting a data intensive text-based game from the desktop to the iPhone:
DV: First off, describe your programming experience and background.
SP: I studied computer science for 2 years but after a trip to Boston where I worked for the Fraunhofer Institute for 4 months in their work and travel program, I changed my mind and started to work on a career to become a teacher (computer science was still part of my studies). After I was done, I worked for a company not related to computer science at all before I joined OOTP Developments in August 2010 to build the mobile version of OOTP. As a hobby project, I worked on a hockey manager text-based sim which now will be part of the OOTP Developments lineup.
DV: Considering the data-intensive nature of the desktop version of Out of the Park Baseball, where are some of the data format considerations used for the game?
SP: In general, OOTP uses its own database system. It is possible to export almost all data to different database systems (e.g. SQL dump or as CSV files) but the game reads all data from binary files at startup (or game load).
DV: After going through the process of porting Out of the Park Baseball from the desktop to the iOS platform, what are your opinions of developing on Apple’s mobile operating system?
SP: We never looked into Core Data or Objective-C in general as our framework (P.I.S.D.) is cross-platform (PC/Mac/Linux and iOS). I had to add stuff in Objective-C later, like Game Center and In-App Purchasing, but most of the game (including data storage) uses P.I.S.D. which takes care of the iOS stuff. But to be honest, the most difficult part of my job was still iOS related: the limited hardware, mostly the low memory we had available. So yes, after we made the decision to bring OOTP to mobile devices I had countless sleepless nights due to low memory and the small screen size (take any screen from the desktop version and hold your iPhone/iPod next to your 22-inch screen). It took us weeks to work through all the screens one by one and decide which stuff we absolutely have to show and how to arrange it.
One of the strengths of the iOS platform is its ability to compile code written in C and C++, in addition to the typically used Objective-C. This allowed the use of a cross-platform framework like P.I.S.D. for iOOTP Baseball and made the project easier, considering Out of the Park Development’s experience with the framework on the desktop versions of OOTP Baseball.
DV: Can you describe the strategies and approaches used for data persistence on iOOTP Baseball?
SP: It’s maybe the biggest problem we had (and still have) with iOOTP. We had to work with a minimum of 128MB memory as we wanted to support older devices like the iPhone 3G and second generation iPods. And the 128MB memory is not even the amount you have available; it is more like around 40MB before you run into trouble.
Everyone who played OOTP (PC/Mac) knows that the biggest strength of the game is its depth. The many ways (actual, historical or fictional) you can play OOTP, the huge number of players, teams, stats that the game keeps track of is no problem on modern PCs, but the limited hardware we have to deal with on iPod/iPhone and later iPad made it hard to work out ways how to handle it. A big point was the aim of the game: we wanted iOOTP to be more a casual game so it was possible to remove a lot of hardcore features. Then we concentrated on just the basic baseball stats (yes, we added a few advanced metrics because we just love them) which reduced the memory usage greatly.
Another example of having to make sacrifices is the new cloud-system which was introduced with iOS5. There is a limit on the size of the data that can be stored in the “documents” folder if you want to use the cloud feature and our save files (which include basically the complete database for the actual game the player uses) are just too big. But with time the limits will fall away. Right now our main target are the devices with 256MB memory, the newest devices even have 512MB so in the future we have so many more possibilities.
DV: What future mobile initiatives are being considered at Out of the Park Developments? Are there any plans on supporting the Android platform?
SP: Yes, we are always interested in expanding, but as we are a small company often the manpower is missing. We are looking into an iOOTP Android version and I’m pretty sure it will happen someday, but as of right now I can not determine if 2012 is the year or maybe 2013. The new hockey game will be aimed for PC/Mac first, but in the long run it makes sense to have it also available for iOS.
[End of interview]
It is obvious the use of the P.I.S.D. cross-platform library in Out of the Park Baseball’s desktop version also sped up the development timeline for iOOTP Baseball. This allowed the programming team to focus on pairing down the application’s data footprint on the iOS platform, in addition to the work on screen redesign.
While Apple’s Core Data framework is useful for many data-intensive applications on the iOS platform, there is little doubt that iOS is flexible enough to allow a custom data management solution, like the one used in iOOTP Baseball.