Backyard Sports series
Backyard Sports: Sandlot Sluggers takes you back to the nostalgia of childhood as you roam the neighborhood and find exciting pick-up baseball games. The Nintendo DS version features full 3D environments, animated characters, cool special effects, and play-by-play audio. Backyard Sports: Rookie Rush brings the action to the gridiron, with more characters and even crazier power-ups.
Backyard Sports: Sandlot Sluggers, a kids' backyard baseball game, was an interesting title to develop. We had developed two DS sports titles the previous year: Imagine: Soccer Captain, and Major League Baseball 2K10. You might think Sandlot Sluggers, being a baseball game, would be based on the engine we developed for Major League Baseball 2K10 and would have little to do with Imagine: Soccer Captain. You would be wrong.
The engine for Backyard Sports: Sandlot Sluggers actually traces its roots back to the engine created for Imagine: Soccer Captain. We took the 5-on-5 sports engine code and tweaked it until we could get 13 characters in the environment at once, the maximum you need for a 9-player team on the field with 3 baserunners and a batter. We brought over the character library, animation library, and other components.
One thing that we were concerned about right away was fielding AI. This project had two advantages going into it, which allowed us to make what I feel is the right decision for AI:
- The company had just completed MLB 2K10 for DS, which had true fielding AI that was extremely complex and had to account for every possibility. As Technical Director, I was acutely aware how much of a bear the AI task became for the programmer to whom it was assigned, and I knew I wanted to avoid that on this project.
- Our producer on the project had previously worked for Visual Concepts as a producer on console MLB 2K games, and was extremely knowledgeable about baseball, not just how it should play, but also how it should look and feel.
As a result of these two facts, and the tight schedule of the project, we decided that it would be prudent to strip down the AI to its core components (run to intercept, throw ball to player, etc.) and script the rest.
I developed a very simple text-based gameplay scripting language and parser, and a script manager to manage the soon-to-be hundreds of gameplay scripts for the game. Each script contained a complete play, from the moment the ball made contact with the bat until the moment the ball was dead. The scripts included commands to tell players where to run (and how fast), tell the ball where to land, have players catch or drop the ball, then throw it to base, wait until the ball reached a certain spot, etc. Scripts could also trigger special sounds, animations, and effects, which we used for power-ups and wacky events, as well as on-screen text, play-by-play audio (MUCH easier than with AI), and game rule events, like outs, runs, etc. Scripts were divided by game situation (outs, baserunners), by hit quality, hit type, and area of the field, and further broken up into stats, so a player with a better hitting stat would have a better pool of scripts to choose from. Batter power-ups had a separate pool of scripts, as did Home Run Derby, which made that gameplay mode trivial to implement.
I documented the scripting language on Powerhead's internal Wiki, with examples and explanations that made it easy for non-programmers to use. In the end, the game contained many hundreds of scripts, many of them variations on others to keep the game fresh. The game's producer pulled double-duty here, using his baseball knowledge to write most of the scripts that made it into the final game, with a designer creating the variations. Because the game's debug mode could be used to trigger any script on any hit, it was possible for us to test 100% of the game, recreating every single game situation, something that is virtually impossible with a real AI.
After Sandlot Sluggers was complete, we began work on Backyard Sports: Rookie Rush, and tried to figure out how to push the Sandlot Sluggers sports engine past its limit to squeeze a 7 on 7 football game onto the limited platform—made especially difficult because in football, unlike baseball, you need to be able to see all 14 characters on screen at once. In the end, major parts of the engine were steamlined and rewritten, and with the addition of LODs to the player model (and lots of shared textures), it ended up working out.
This game required more AI than Sandlot Sluggers, since less could be scripted in a football game. Taking a lot of time in preproduction to identify which parts of the play could be scripted, which would require AI, and when to transition between the two, was instrumental in keeping the scope down and making the game feasible in our tight schedule.
Backyard Sports: Sandlot Sluggers and Backyard Sports: Rookie Rush were developed by Powerhead Games and published by Atari.