The Reality of AAA Games Development or: How I Learned to Stop Worrying and Go Indie
Back in 2005, I remember my boss asking me where I’d see myself in 10 years. I answered without hesitation: I want to be a software architect on a big-ass AAA project! The dream came to life a few years later, when I started working on Assassin’s Creed Syndicate as – wait for it – software architect. I was fulfilling my dream of becoming a well-respected game developer, working on a prestigious AAA franchise.
Then I suddenly quit and started a small indie games business with my girlfriend. Some of my friends and family found that move... let’s just say... bold. They wondered why I left a safe, well paid job, with tons of advantages, including the excitement and fame of working on the next game everyone will talk about.
On my last day at Ubisoft, while I was saying goodbye to my colleagues, nobody asked why I was leaving to work on my own games. Even people who barely knew me had a pretty good idea. A lot of them were actually envious, although they worked on Syndicate too, realizing one of their own dreams. I’m sure that many professional game developers might have a clue about why I made this move.
So, I decided to write about the reality of AAA games development or: how I learned to stop worrying and go indie.
In 2005, Ubisoft announced they would open a new studio in Quebec City. This is about 250 km away from the famous Ubisoft Montreal studio, that created all kinds of obscure games like Prince of Persia: The Sands of Time, Splinter Cell & Assassin’s Creed. I was recruited from day 1, together with about 30 other employees. You can imagine that I was really excited. I celebrated by spending my future paycheck on a brand new $2000 guitar. (5 years later I totally stopped playing guitar. Yeah, not my best move.)
Most people who start a career in game development, whether in design, art or programming, are very passionate. They love playing video games, and they love creating them. During my first weeks at Ubisoft, I couldn’t believe that I was actually getting paid to do this! This was better than holidays.
For the first two years, I worked on small PSP titles: Open Season & Surf’s Up on the Playstation Portable. Those are very average games, not especially good nor bad. However I had a lot of fun working on them. I’ve learned a lot, and I made very good friends. The teams were pretty small (between 15 and 25 people, if I remember correctly), so everyone knew everyone else. It felt like a small family and the team spirit was good. In retrospective, we were a bunch of noobs who had a lot homeworks to do.
The thing is, we wished we’d work on bigger projects, AAA projects. It’s not super glamorous when you tell your friends you’re working on some kids movie’s game. Nobody starts a video games career to work on that kind of title.
The PoP Years
After Surf’s Up, our studio’s director met us in a conference room (yeah, the entire team fit in a single room... ahhh the good ol’ days). He announced that our next project would be the Wii version of the upcoming Prince of Persia game. I distinctly remember some kind of awkward silence after. Nobody knew if it was good or bad news.
Then someone shouted: “YES!”
Of course, YES. This was WAY better than our previous projects. It wasn’t Assassin’s Creed, but who cares. I remember being a bit disappointed by the console (back at the time, I was super excited by the PS3, not so much about the Wii), but all-in-all, it was very good news.
The project lasted about 3 years, and became known as Prince of Persia: The Forgotten Sands. It wasn’t a port from the 360/PS3 version: we made a specific version just for the Wii. All in all, it’s a really good game. If you didn’t play it back then, go dust off your Wii and give it a try!
Over my whole time at Ubisoft, this is the project I’m the most proud of. I had a lot of fun, and I had ownership. By that, I mean that I strongly believed that my work had a major impact on the game. My contribution was significant, and when I was playing the game, I could see it everywhere. So, obviously, I was super motivated. I wanted that game to be the most awesome game ever. Most developers know that feeling very well.
At its peak, the team size was about 75 developers. It’s a big family, but still a family. Over the course of the project, I had to interact with most of these people. I’m pretty sure I talked at least once to everyone on the project. You might wonder why I focus so much on team sizes, but more on that later...
After PoP, I contributed on several games here and there, and eventually landed on a technically very challenging project: porting Assassin’s Creed 3 on the WiiU. This was very different from my previous work. The team was super small: we were 2 programmers at the beginning, and at the peak I think we were like 15 or something.
I was pretty excited by the challenge. Most people at Ubisoft didn’t think we’d be able to pull that off. All Assassin’s Creed games are very, very intense games in terms of CPU & GPU performance. Believe me, your console is pretty much at its maximum capacity when running around in a big city like Boston (or London). The WiiU was less powerful than the PS3 and XBox 360, at least on paper, so the odds weren’t on our side. Even worse: we had to make a straight port, that is no data changes, just code optimisations. It’s much cheaper to do a straight port than to downgrade all game assets.
After about a year, we reached a point where it became obvious that we’d successfully port the game with similar performances than the 360/PS3. It was a huge success: even Nintendo engineers were surprised we made it. Life was great.
The downside was that the second half of the project was a bit boring. The challenge was gone. Port code, fix bugs and optimize. Rinse & repeat until the game is shipped. Overall I keep a good memory of this project, but by the end I was ready to do something completely different...
Tasting the Forbidden Fruit
After AC3, I worked on 2 internal pitches. For legal reasons, I can’t say much about those projects, but they were so important to me that I need to take some time to talk about them.
On the first project, we were a team of about 6 developers, all very senior. It was a multiplayer game, and our goal was to create a functional prototype in about a month. Our days were somewhat like this:
- Play the game together
- List the features and changes we wanted to see in the next version
- Implement them
- Repeat until we have a cool prototype
The team spirit was sooo good! Our motto was “on est crinqués!”, which more or less translates to “we’re so hyped!”. During our play sessions, we were so excited we were screaming and shouting all over the place. I think it bothered colleagues working next to us, but hell, we had so much fun. I didn’t feel too guilty.
Since we were such a small team, we had to break down the traditional jobs barriers. Everyone had their saying in the game design. A UI artist made the level design, because we didn’t have a level designer with us. I did gameplay programming, which isn’t my speciality at all (I’m more of a low-level, engine & graphics guy). But we all really enjoyed it.
Unfortunately, for various reasons, the project got cancelled.
Then I started to work on another internal pitch, with an even smaller team: 2 developers + 1 producer. This project definitely had that “indie” feeling. It was again a multiplayer game, and again we made a pretty awesome prototype in a few weeks. Every day during lunch time, we invited everyone in the studio to play. We even organized an internal tournament which attracted around 60 participants.
But again, the project got cancelled.
I was never as happy at Ubisoft as during those 2 projects. I worked with very talented & motivated individuals. Because of the smaller team sizes, I had my say on the creative side of things. This was a nice change – being more of a technical guy, I could never do that before. And I absolutely loved it. When you work on a small project, your contribution is, obviously, HUGE. So is your ownership. And so is your motivation.
One of my former colleagues nailed it when he said that I tasted the forbidden fruit. Once you’ve had that feeling, you can never go back.
Then, the studio received the mandate of leading the next Assassin’s Creed title: Syndicate. We knew the AC franchise very well: we collaborated on every title since Brotherhood. However, this was not a collaboration like before. For the first time ever, an Assassin’s Creed game would be led by the Quebec studio instead of Montreal. This was a big achievement, but I wasn’t happy at all. The memory of my 2 beloved projects was still fresh. I knew I’d have to work on AC, there wasn’t any way around it.
As predicted, I started working on Syndicate very soon in the development cycle. I wanted to give it a try, even though I feared I wouldn’t like it at all. At first, since there wasn’t a lot to do on the technical side, I collaborated a lot on AC Unity with the Montreal studio. I worked on cool new techs developed for ACU, it was fun and challenging. I had a good relationship with most of my Montreal co-workers (even though it’s harder to develop a good relationship when you mostly communicate by email). I continued collaborating on ACU every now and then until they shipped.
After a few months, Syndicate started for real. The team was getting bigger and bigger as we entered production. For me, this is the root of all issues on AAA games: big teams. Too many people. Syndicate was created with the collaboration of about 10 studios in the world. This is 24 hour non-stop development. When people go to sleep in one studio, it’s morning in another one.
With so many people, what naturally occurs is specialization. There’s a lot of work to do, and no one can master all the game’s systems. So, people specialize, there’s no way around it. It can be compared to an assembly line in a car factory. When people realize they’re just one very replaceable person on a massive production chain, you can imagine it impacts their motivation.
With specialization often comes tunnel-vision. When your expertise is limited to, let’s say, art, level design, performances or whatever, you’ll eventually convince yourself that it’s the most important thing in the game. People become biased towards their own expertise. It makes decision-making a lot more complicated. More often than not, it’s the loudest voice who wins... even if it doesn’t make much sense.
On large scale projects, good communication is – simply put – just impossible. How do you get the right message to the right people? You can’t communicate everything to everyone, there’s just too much information. There are hundreds of decisions being taken every week. Inevitably, at some point, someone who should have been consulted before making a decision will be forgotten. This creates frustration over time.
On top of that, there’s often too many people involved in making a decision. Usually you don’t want to make a decision in a meeting with 20 people, it’s just inefficient. So the person in charge of the meeting chooses who’s gonna be present, and too bad for the others. What it’s gonna be? A huge, inefficient meeting where no decision is taken, or a small meeting that goes well but creates frustration in the long run?
Being an architect, I had a pretty high level view of all technical developments on the project. While it sounds cool, it has its disadvantages too. The higher you go up the ladder, the less concrete impact you have on the game. You’re either a grunt who works on a tiny, tiny part of the game (“See that lamppost? I put it there!”), or you’re a high-level director who writes emails and goes to meetings (“See that road full of lampposts? I approved that.”). Both positions suck for different reasons. No matter what’s your job, you don’t have a significant contribution on the game. You’re a drop in a glass of water, and as soon as you realize it, your ownership will evaporate in the sun. And without ownership, no motivation.
I could go on and on. There’s tons of other reasons why AAA projects are not satisfying. Don’t get me wrong: it’s nothing specific to Ubisoft or Assassin’s Creed games. This is an inevitable side effect of creating huge games with an enormous team.
I have to add that, obviously, some people are motivated. Those are usually juniors and people who never got the chance to work on a AAA project before. But when you’ve done it a couple of times, the excitement disappears, and you’re only left with the sad, day-to-day reality. That’s a huge problem for studios working on AAA projects one after another. Senior staff gets tired and leave.
Taking the Leap of Faith
Since my very beginnings at Ubisoft, I knew I wouldn’t spend the rest of my days here. I already dreamt of starting my own indie company. Making my own games. Back at the time, I didn’t know much about making games. I still don’t know a lot, just a tiny bit more.
Indie games don’t suffer from big projects issues. I think the ideal team size is around 5-6 people. That’s when the team spirit is at its highest, as well as ownership and drive. You’re not wasting any time with endless email threads and bad communication. There’s a lot less specialization, because a handful of people are doing everything. The job isn’t tedious and rewards you every day.
For me, going indie also means I can work on non-technical stuff. I like tech, but I also love the creative aspect of games... gameplay, visuals, sounds, ambiance... the whole experience. Only indie games will let me cover all aspects of the creation process.
So that’s it. That’s the #1 reason why I quit Ubi to make indie games. I’m sure if you ask other developers, they’ll tell you another story. Some of them really like it, I’m sure. Others might be unhappy for a completely different reason.
For me, this leap of faith was the right and only thing to do.