World Series of Poker: Full House Pro (WSOP:FHP) was a free-to-play online poker game, developed by Pipeworks Studio and published on the Xbox 360 by Microsoft Games Studios on September 4th 2013. On this project, I was Lead Engineer during pre-production and Gamplay/UI Engineer through the rest of production to the soft launch. This was also my last project at Pipeworks Studio and, as of this writing, my last professionally developed game.
This was a troubled project. The intention was to take a previous Xbox poker game, Full House Poker, port it to the Unity engine, make it free-to-play with micro-transactions, and incorporate the WSOP license, and do all that in 6 months. The launch was a year after development started. A lot went wrong, and as lead engineer, I bare a fair amount of responsibility. It is said that we learn more from our failures than our successes, and I learned a lot on this project.
The first lesson is to push back against unrealistic deadlines. My inexperience as a lead and history of inexpensive licensed games where the schedule was unmovable gave me tunnel vision, focusing on an overly optimistic schedule that would have relied on everything going right to succeed. I don’t know if the schedule could have been changed, but I definitely should have given voice to my reservations.
Next, we should have planned more around our risks. Early in pre-production, we identified several risk factors, including 3rd party support, code and asset reuse, licensee approval and internal technology development. But even though we identified these risks early, we didn’t have contingencies planned incase of a delay or other issue. And many of these risks became issue. As lead in charge of scheduling and planning, this was a regrettable oversight.
One aspect that did seem to go right, at least initially, was we had a working gameplay prototype early, reusing AI and game logic from the previous FHP. The issue is these were the only modules we were able to reuse. Changing engines meant much of the codebase had to be rewritten from scratch and the switch from a Peer-to-Peer to a Client-Server network architecture meant the game logic had to be substantially modified. The major problem with this is the prototype gave us false hope of an easy development and served as the basis for much of the gameplay code logic, which made the eventual shift to the client/server model more difficult and time consuming than if we had scrapped much of the prototype code after the concept had been proven. As the person who wrote the prototype and much of the gameplay code, this was my blunder and my lesson.
Now the lessons are less organizational and more personal. As a still inexperienced lead, I was eager to prove myself and took on a lot more coding responsibility than I should have. I know that management would be a major part of my time, and I viewed the coding tasks I gave myself at the end of the day as a reward for completing the rest of my duties. But as the coding tasks became more integral as production ramped up, with the core gameplay code being my sole domain, these initial couple hours of coding became late nights of coding, as I was crunching evenings almost from the beginning. As development dragged and the schedule was pushed back, it was evident that I was struggling, floundering. In a move that was both devastating and a relief, I was removed as lead engineer so I could focus gameplay and UI exclusively.
The lessons I take from this are numerous. Manage my time better. Don’t take on core responsibilities as lead. If you are crunching early, it is a sign of poor scheduling, especially if you wrote the schedule. Don’t be afraid to ask for help, especially if you are struggling.
The most personal lesson of all: Don’t put your life on hold for a project. During development, my wife, then fiancée, and I bought a house together. But before I could move her and her kids, who lived two hours away, crunch hit big time. It was several months before I felt I could take the time off work to handle the move, which was a great source of tension and concern, even after we were together under one roof. While before, crunch meant I had to skip playing games in the evenings, now it meant being away from my family and not fulfilling my duties as a husband and father.
After a year of hard, frustrating struggle, World Series of Poker: Full House Pro launched. Unfortunately, there wasn’t enough work for everyone. I was laid off once WSOP went into maintenance mode. I don’t blame anyone at Pipeworks. Both the studio and myself were in a state of transition, and thus far, we have both managed to stay on our feet.