Digital Awe entered the IGF Student Showcase this year with their game Tropical Storm, a first person shooter with real world weapons, huge outdoor levels, and deformable terrain, among other features. We recently interviewed a few members of Digital Awe to discuss their team, the development of Tropical Storm, and how they managed to complete a game with an entirely virtual development team.
[size="3"]Digital Awe Background Info
Name: Justin Eslinger
School: Union High School in Dugger, IN
Role: Team Leader/Programmer
Name: Jonathan Brenner
School: University of Florida
Role: Lead Programmer
[size="3"]What is the history of Digital Awe? How did you guys come together?
Eslinger: I posted a message on the NeHe message board. At the time, I had only programmed by myself and wanted to create a development team that would allow us to do something more than what we could only do by ourselves. The sole purpose of this team was to learn how to create a full-fledged game. I had no set game idea or team name when I posted the message. I wanted to keep everything open and wanted everyone to help in the game's creation.
Brenner: Well, I had made enough unfinished games to know that I'd have a much better shot at completing something significant with the help of a like minded team. Blackscar's [Eslinger's] message basically said "We want to finish a game, we don't know what, but we want to actually finish something." So, I signed up.
And how long has this team been together?
Eslinger: I posted the message Dec. 18, 2000. So we've been together for a little over a year.
Brenner: Although some people have come and gone during that time.
[size="3"]What happened during your first team meeting? And how did that team meeting take place?
Brenner: Well, we met in IRC, on EnterTheGame I believe. Mostly, we were just trying to figure out who everyone was, what they could do, and what they wanted to do.
Eslinger: It was very out of control.
[size="3"]How did you decide your team structure, as in, team roles, responsibilities, etc? Or did things just sort of fall into place?
Brenner: Well, some things naturally fell into place. I was working on a terrain engine, Justin was working on skeletal animation, etc. I'm not even sure if Jesper was originally intended to be the webmaster, but he made a great page so fast, he became it by default.
Eslinger: Yeah, they really did fall into place quite nicely. Basically, we just said what each of us could do and then tried to mesh it all together, which is a pretty insane idea, but it actually worked. The game framework was based around Eslinger's terrain renderer. (You can see it on NeHe's Halloween and Winter contests) I always dealt with the meetings, recruitment, and people on the team, so I was assigned to that.
[size="3"]So you did have some sort of organizational structure to your team. Now, you guys have an entry for the IGF Student Contest - Tropical Storm. When did you guys decide to enter?
Brenner: Early summer, I think. The idea of entering the normal IGF may have been discussed beforehand, but it was becoming clear that we wouldn't have a game by that deadline.
Eslinger: There were talks during the early meets, and as soon as things came together the discussion on it become more focused. We had originally talked about the normal IGF, as Jonathan said. The idea at the time was some sort of Ghost Recon clone. It became clear to us that this idea was way over our heads. So we settled on this first person shooter, which we happened to have most of the elements for it already completed. At first, we wanted to make a really complicated and different game. When the student showcase deadline neared, it occurred to us that instead of making something new-age, we needed to make something fun.
Brenner: And since it seemed that people enjoyed blowing things up with grenades in the tech demo, we decided to emphasize that part.
[size="3"]What is the basic premise of Tropical Storm?
Brenner: Marxist Revolutionaries, working along with Facist Insurgents, and terrorists from the Greenland Liberation Army, have established a number of bases on islands in the South Pacific. As a dramatically-named commando, it's naturally up to you to save the day. Saving the day is accomplished, predictably, by blowing many things into very small pieces.
Eslinger: The basic summary of Tropical Storm would be a cheesy, bad action movie first person shooter. All the taunts used in the game come from similar premised movies.
When did development of Tropical Storm begin?
Eslinger: We started mid-summer of 2001, although, the whole time we were developing an engine, not a game. Turns out that this actually helped us. In any case, to better answer your question, it took us 4 months to turn our tech demo into Tropical Storm.
Brenner: Well, depends on how you measure it. I first started work on the terrain engine back in December of 2000, but everything really started to come together in mid-summer - engine-wise that is, leading up to the release of the tech demo. The gameplay itself was then developed in those following 4 months.
[size="3"]Which elements were complete in the engine before you began work on the gameplay of Tropical Storm?
Eslinger: In our first tech demo, we had the terrain engine, skeletal animation, particle, sound, mp3 playability, input, and the menu system completed. The only thing we were really missing was the game itself.
Brenner: Of course, there was plenty of improvement to be done. But generally, the rule was always to try and use what we had already made. Even when the ideas were shifting, they kept gravitating toward the same sort of outdoor FPS, because that's what we had technology for.
[size="3"]Did the team work continuously during the development of both the engine and game? Or did it falter at times?
Eslinger: It was hard work. We didn't use any sort of CVS program, so all the source maintenance was just us sending files via ICQ. There was a time there during May-July where we didn't do hardly anything. Our real big surge of progress was when Jonathan brought together everything in late July. We finally saw what we had been working on since December.
Brenner: Well, there was always something being done. But during times where the idea was very much up in the air, work on things related to Tropical Storm slowed. Before the last few months, it was mostly me, Justin, and Jesper working on the engine. We didn't really have an art team until after the tech demo.
[size="3"]How many hours per week would you estimate that you were able to work on Tropical Storm?
Eslinger: I would work on the game every chance I had. Although, there were times where I'd play games or do something else to prevent myself from being burned out. I'd come home from school and work on it until around 2:00 AM.
Brenner: Yeah, it would vary, depending on how everything else was going with the team. Seeing everyone else working, and having a good idea of what we're making, is a good motivator. We didn't really have an art team until after the tech demo. But I would generally try to work on it at least a little every day.
[size="3"]Speaking of motivation, you guys are one of the few entirely virtual teams that have managed to complete a game. How did the team stay motivated?
Eslinger: At the beginning, all of these ideas were coming out about what we'd like to do and so forth, so we had motivation then. Then in July, when we got to see all of our parts in action, we just went crazy and soon after uploaded the tech demo. When we got response back from it, we couldn't believe it. So this definitely got us rolling.
Brenner: Well, I just wanted to finish an actual game, rather than an engine demo. So I just kept working toward that goal, regardless of whatever else was being done. Yeah, the release of the tech demo was a big motivator. The deadline for the IGF was another motivator later on, although a less gentle one.
[size="3"]So once you got feedback from the work you had done, you guys became motivated to finish the game as a team?
Eslinger: I'd say so, but the team wasn't really finalized back then. After we released the tech demo, we finally had something to show for. Soon after, we got ahold of Lamb-Carcass, Nilesh, Treb, and MrBIG. Realizing the tech demo really helped out in recruiting, because it was like telling people that we were serious about finishing a game.
Brenner: Pretty much. There was still a whole lot of work involved, but it definitely helped.
[size="3"]Were there any major problems throughout the development of Tropical Storm?
Eslinger: Well, we had a few team problems. We simply couldn't keep an artist. I don't blame them really, since our idea of the game wasn't all planned out.
Brenner: Soon after releasing the tech demo, we realized that a large portion of our object/actor handling code needed to be rewritten to be more easily extendable. That set us back a while, but was definitely a positive move.
Eslinger: I had to redo the skeletal animation code several times. We had problems determining which model package to use and so forth. We finally settled on MilkShape 3D since it offered pretty much everything we needed. David Mee used 3D Studio MAX to create the soldier, so we had to port it over.
[size="3"]What development and communication tools did you use?
Eslinger: For communication, we used mostly IRC and ICQ. For development, Microsoft VC++, Milkshape, and Photoshop.
[size="3"]If you had it to do over again, what would you do different? Anything?
Brenner: Plan! And after finishing that..plan some more!
Eslinger: Organize! We needed to really fully design the game and engine. For the most part, the engine was just stitched together.
Brenner: Write a solid detailed design document, for one. Now, part of the reason why we couldn't is because we honestly didn't know what we were capable of. Our development process was chaotic because we were learning what a team like ours' could accomplish as we were doing it.
Eslinger: Which may have helped us. When some people envision their game, they think of all of the stuff they need to do, get overwhelmed, and fail. The thing is to determine what you really want and then do it. After that, add all the bells and whistles.
[size="3"]Are you happy with how Tropical Storm has turned out?
Brenner: On the whole, yes.
Eslinger: I'm awestruck. I seriously don't know how we pulled it off.
[size="3"]Any future plans? How will you handle your next projects differently? What advice do you have for others?
Brenner: Well, on our next project, we're doing a lot more planning at the beginning. Now that we know what each of us can do, it's much easier to make reasonable estimates about how long things will take. We're going to have much better source control this time as well, last time it was a bit of a mess. For people who want to do what we've done, I guess I have two main point of advice.
- Set reasonable goals, and if you find the ones you've made aren't actually reasonable, set new ones. It's easy to underestimate the amount of work that goes into making a game, rather than a neat tech demo. We had pretty modest goals from the beginning, and we still had to scale things back several times.
- Set out to finish a game. This seems obvious, but a lot of people think they want to make a game, but actually only want to make some nice concept art, and maybe an engine demo. When it comes time to track down a bug that only appears on the computer of some guy in Sweden, it's time to move onto something more interesting. I know I've been guilty of this with personal project in the past.
Eslinger: Out of the many things, I would think planning would be number one. We didn't do hardly ANY of this for TS. Mostly just talks and nothing written in stone. Another would be the source distribution and meetings. I think that every team needs to have a full blown meeting every week and at least contact with one another every other day. With our upcoming project, we're definitely going to either upload builds more often or use a CVS program. In TS, one person would have all the updates and then everyone else had to wait until he was done to update them to add their stuff.
For people who want to do what we have done, I'd say to stay with it. I mean, Internet projects are probably the WORST projects to do in terms of communication. You're going to want to just give up and want to be done with it. I know I thought the same many times, but you just really have to keep your head up and hope for the best. And never be overly ambitious. Everyone wants to make an MMORPG or create the next Quake game, but you've got to understand that these people are paid, have had A LOT of experience, and are all in the same place.