Bag It! is a grocery-bagging puzzle game that puts your organizational skills to the test.
It may seem easy to bag your groceries, but there are many factors at play - avoid crushing fragile items, bag related groceries for score bonues, complete challenges, and manage the personalities of an array of grocery characters. Become the ultimate grocery bagger through six modes of play and 100+ levels!
Bag It! is available on the Apple App Store, Google Play.
Bag It! was the first commercial game I worked on. Though I was originally hired at Hidden Variable as an intern, I acted as the de facto lead programmer on this project, architecting and programming the majority of the game myself. By the time we hired a second programmer, the game was about to ship!
The game was built in Unity, and development took place from about February to November of 2011. We then continued to support the game with updates through 2012. I worked with one designer and one artist to implement the game from start to finish.
We iterated on several initial prototypes of the game. Originally, you’d bag plain old boring groceries for customers with varying personalities. However, our artist added facial features to one of the groceries on a whim and the rest of the game’s direction sort of fell into place!
I was responsible for all of the gameplay logic, which included intelligent placement of groceries in the bag as you dragged them around, a weight distribution system (don’t put too much weight on top of the eggs!), a system to detect when certain “grocery groups” were present (to grant bonus points), and a modular system for defining gameplay goals and end conditions, which allowed designers to build a variety of levels from a few building blocks.
I also implemented a lot of the game’s menus and meta structure, including a game state system, UI elements, progression and level unlock logic, and achievements.
Outside the game itself, I was responsible for getting Hidden Variable’s build and deployment infrastructure up and running. I developed a build system that allows us to build 10+ separate SKUs across iOS, Android, Windows, and macOS from a single codebase. We experimented with many mobile game paradigms during this time (premium, iPad-only “HD” SKUs, free trial versions, full “free-to-play” versions, etc), and the build system allowed us to support all of them.
Finally, I integrated several third-party SDKs to augment the game:
- GameCenter Achievements and Leaderboards
- Facebook Login and Leaderboards
- Apple and Google In-App Purchases
- Flurry Analytics
- Game Analytics
All in all, Bag It! was great initial exposure and “trial by fire” in commercial game development. Not only did I gain experience in gameplay programming and Unity development, I also learned a lot about various business models in practice, build systems, and integration of native plugin code into Unity.