Blog - Indie Lessons 1

Essential Indie Lessons – Team Communication

Now that I finished my series about the history of Son of Nor, I would like to share things that keep us busy behind the scenes besides working on the actual game. Today I’d like to talk about the communication challenges we face.

It might be obvious that a project with 16 people that’s been going on for more than 1 year has had its share of personnel fluctuations. People come and go. They come with their own hopes for the game and their participation, and sometimes they leave in frustration because expectations (either theirs or ours) were not met. We respect all members of our team, current and past ones, so this is not about finger pointing at all. It’s about keeping a happy team and getting things done in a complex distributed environment – and the lessons we learned. Maybe some of the tips can help you avoid the mistakes we made along our way.

The Situation At Stillalive

Son of Nor is an ambitious project. As a 3D action RPG that tries to combine multiple gameplay elements like spell casting, telekinesis and terraforming in a unique way, we need game designers, story writers, level designers, concept artists, lots of environment artists, character modelers, animators, programmers, technical staff, sound designers, music composers etc. A team of this size needs coordination (producer) and somebody who does all the business related tasks (contracts, strategy, vision). Don’t forget any form of public relations like this website, the blog, updating IndieDB, several forums we’re active on, writing to the press and making some noise about the game. Luckily, there are 2 guys in our team that do this more or less full time: Julian (CEO, lead coder, inventor of Son of Nor) and me, Chris (producer, PR, audio). We spend most of our time per day working for stillalive studios. Unpaid.

Thought: If you think about starting a project as a hobby and don’t want it to last a few years, or if you don’t have somebody to coordinate a bigger team, think twice about adding a 3rd dimension to your game and rather think about a great 2D game concept that can be realized with a small number of people (i.e. typically a programmer and an artist). Of course this insight isn’t true for all projects. If you found a great way of focusing and reducing gameplay, visual style or environment complexity, you might be OK with a small team. Take Rat King Entertainment for example. They’re a team of 2 and make the awesome Tri 2, a 3D platform puzzle game I’m looking forward to seeing released. So a 3D game might work if you have a unique approach to your game and stay focused on your very own niche and limited scope.

The Team Size

All in all we currently have 16 people in the team. 1 writer / game designer, 2 concept artists, 1 level designer, 1 art director / character artist, 2 animators, 4 environment artists that also do some Unity FX, 3 programmers, 1 tech artist and 1 sound designer. Apart from us 2 full-time guys, nobody works full-time on the project. Most of the team is distributed all over the world. We have people in the US (Minnesota, Pennsylvania, Washington DC, Washington, Arizona, San Francisco), Canada, Ecuador, Bulgaria, Switzerland, Austria, Italy and so on.

16 people, that’s so many and looks like a little army:

Coordinating A Team Of That Size

All team members except us 2 full-time guys have a day job or study and live in different time zones, having different private lives. Being online at the same time and quickly discussing simple things becomes real challenge in this setup. What works naturally in an office where you just walk up to somebody and ask a question, doesn’t work for a team that’s all over the world. It’s 1am in Europe when our friends in the US come home from work. Sometimes, they aren’t online during the day as their job doesn’t allow it. How can we collaborate in an efficient way?

We have to resort to asynchronous communication methods like a forum. This bears new challenges, though. It’s impossible to describe a task in such detail that there are no follow-up questions. There will always be questions as to how a direction was meant. Also, it takes a long time to define tasks in writing, as the description needs to be as precise as possible. And precision requires detail, and detail takes time. What you could do in seconds if you talked to each other on Skype, or minutes by chatting with each other, takes 15 to 30 minutes to get down in a forum post.

For one, it takes longer, and then you have no idea if the person on the other end will actually understand everything as intended. In a chat or a Skype call, there’s a natural back and forth and you can clarify most questions your artists have. In a forum, because the team lead that assigned the task might not be available at that time, it’s easier for artists to make their own assumptions, interpret the assignment their own way and start working on it. After some time they post progress of their work, but soon find out that they interpreted the direction in the wrong way. This causes high levels of frustration as the scarce time people have is wasted and they need to keep changing details over and over again just because the task description cannot be written detailed enough without writing a book.

Insight: Talking to each other is ESSENTIAL! You can’t collaborate without talking! And I mean at least chatting or calling each other. Anything that’s instantaneous works. Google+ Hangouts work, Skype works, any instant messenger works. Email, on the other hand, doesn’t work. As using a forum exclusively doesn’t, too.

We lost many valuable days several times because some people couldn’t be online at the same time, leading to misunderstandings and hours of work were done in vain.

Insight Task Creation: Try to follow a protocol that works for your team. For example, let the task assigner / team lead define the task to have a written reference of what needs to be created. The task assignee has to read the task and contact the team lead on Skype before starting to work on the assignment. All questions need to be clarified, all details need to be discussed. Only then the assignee can start working. Not earlier.

Insight People Selection: You should rather have 4 people who are dedicated to the project and are available for a chat, than 10 that you barely see online. A team member that’s online only twice a week is very very hard to work with. He/she might be super professional, but if everybody needs to wait, it kills motivation and slows down the project. Mind this when asking people to come and work on your project. Define a time where artists should be online. At least the ones working together. Questions can be answered much more quickly, misunderstandings can be reduced instantly (not all of them, but most). Nothing kills productivity and motivation more than if you have to stop working on a task because you can’t reach the team lead to quickly check back on something. Or you start making assumptions and risk going the wrong way. Direct communication and quickly being able to reach somebody is crucial to a project. If the direct communication doesn’t work, we go our separate ways.

Don’t Forget the Language Barrier

Another thing you often overlook is the language barrier. To follow or give written directions in a forum or talk to some other team member, you need to understand each other and thus talk the same language. Mostly this is going to be English unless you happen to get talented people from your own country. If you’re a 2 people team and you met each other at the university you’re lucky. If you’re building a team on the internet, you’ll get people from all over the world.

Unfortunately, not everybody had the pleasure of learning a common language. And different languages can have such a different structure that it’s impossible to understand a poor translation. This leads to constantly misunderstanding directions and hopeless comments that fly back and forth in the forums while both parties desperately try to understand each other and explain what they mean. Again, hours and days get by, frustration builds up. Your new team member might be a super nice guy and highly talented from the portfolio he/she sent, but if you can’t communicate precisely and effectively, it’s not worth the hassle.

Insight Language Barrier: If you get an application that looks like “I saw you game in game forum. I make models good end would working together” you should thank the person for their time and friendly decline the offer. When I get a promising application and the portfolio looks good, I immediately invite the applicant for a Skype call and we talk! I explain how everything works, what we expect and ask what the expectations are on their side. I can judge very quickly this way if the language barrier is a problem.

Online Collaboration & Communication Tools

You need tools that work for your team if you want to keep it together. Especially if you’re distributed all over the world without the possibility to see each other in an office. Using cumbersome tools kills creativity and makes people stop using the tools. A project cannot progress if people don’t collaborate because the tool doesn’t work for them.

Collaboration

We went through a variety of tools until we found what works best for us. We looked at over 15 online collaboration suites. Most of them have an impressive list of features: Tasks, sub-tasks, calendars, Gantt-charts, planning tools, milestones, graphical analysis of tasks, a forum, people’s availability and much more. In most of them, you need to click through all these functions and tabs to get an overview of what’s going on in your project. But my take is that your artists should not juggle logins and click through 10 pages to get to the information they need. They need to open the tool and instantly see what’s relevant to them: their open tasks and what’s been going on since they last logged in.

That’s why we chose Basecamp. Basecamp has no fancy Gantt-charts, no planning tools and lacks many functions of other solutions. What you can do:

  • create lose discussions
  • create tasks
  • assign tasks to people
  • set due dates for tasks
  • discuss tasks
  • see dates or upcoming events such as team conferences in the team calendar

And, to be honest, that’s all we need. It’s very reduced but therefore very easy to use. Everybody gets it and the whole team participates! No fancy functions, no complicated forms with 1000 options. It costs a little something but it’s well worth it. There are other free and commercial tools with more functions, but when people don’t use them, they’re worthless.

Real-time Communication

To communicate directly we use Skype. We chat and talk to each other directly and we also have a group room where all people can chat together to tell others what they’re working on or ask questions to the team. This works generally OK unless communication derails to something off-topic, which annoys some team members.

For our weekly conferences we use Google+ Hangouts as hangouts allow video for up to 10 people for free. Skype requires you to get a pro account to share video to more than 2 people. As we’re more than 10 people, we use a hybrid approach. We have an audio conference in Skype where everybody can participate, and then the first 10 people to be online in Google Hangout have a video feed.

Insight Team Feeling: I have to say, having the video feed tremendously improved the team feeling for many of us. Knowing how the other people look, how they react, how they discuss makes a huge difference! It’s more of an “office” feeling and people are more real if you see them. I can only recommend using video often, even for people that are generally on the shy side. With time it will hopefully wear off.

Also, from time to time we just use Skype to connect our offices to get a feeling of not working alone. I would call up Julian, our CEO, and hang out in Skype for 2 or 3 hours. There’s nothing to discuss, but I see him work like in a real office. I can always drop a question or ask for feedback about anything. He would share his screen and show me what he’s working on or ask for input. It’s like working in the same office and gives a feeling of working on a project together rather than alone.

Make sure to reserve some time to contact your team members from time to time and talk to them directly. Chatting about other things than tasks and work really helps getting comfortable and reduces barriers. We got some people that I was really afraid to “disturb” with questions. They made a very concentrated impression. We barely chatted and I had no idea what the people worked on. But after that initial shyness, after talking to each other from time to time and at some point activating the video camera, we’re now hanging out in Skype for 2 hours talking about Swiss chocolate, Cachaça, and paying bills.

File Sharing & Document Creation

You always need to share files between team members. To do that we started using Dropbox but more recently we transferred everything over to Google Drive. Google Drive offers more storage for free and has a better, more granular  rights management than Dropbox. The rights management could still be improved A LOT in Google Drive, but it’s OK for our purposes. Also, as we use Google+ Hangouts, people already have a Google account so Google Drive comes as kind of a no-brainer. They can just use the same login and don’t need to sign up with Dropbox, which would be yet another tool and login to remember and manage.

And because with Google Drive you also get Google Docs, we’re mostly using Google Docs for anything that needs a document form. We don’t force people to use Microsoft Office and sync large Office docs back and forth. It’s much easier to collaborate simultaneously on a Google Doc as you can have 3 or 10 people working on different chapters within the same doc at the same time! We use it to create our narration scripts, our game design doc, the game world lore, and also different company related documents. It’s been a blessing so far.

Insight Tools: Every team is different, you need to find the tool that works best for your team. Three things are crucial from my perspective:

  • A tool needs to be easy to use, and I mean really easy, so people actually participate and aren’t tired out by the many options. Your people should work on the product and not spend time figuring out how the collaboration tools works. If it’s too complicated, they’ll stop using it and the tool is worthless.
  • You need to get at a glance what’s going on in the project and what’s relevant to you, without wading through screens of information. A dashboard should display all the tasks assigned to you, everything that was going on while you were away so you could catch up easily if you wanted.
  • Use as few tools as possible. Making people jump through hoops, logging in to one tool to see open tasks, logging in to another tool to discuss tasks, logging in to a third tool to see the team calendar and so on will never work. Again, your people should work on tasks, not juggle logins and tools.

That’s it for today. I hope you could grab some interesting info for your project and that we helped you avoiding some of the rough bumps.