Get the latest Education e-news
 
  • Student Postmortem: Collins College's Eternal Winter

    [11.11.08]
    - Blake Mitchell
  •  Eternal Winter was developed by Protonic Entertainment, a group of senior students at Collins College in the late spring and summer of 2008. Our goal was to create a three-level (we ended up paring down to one level) playable mod within about seven months, or by the end of September.

    The initial concept for the game was that it would be a first-person shooter, heavy on story and player choice. We wanted players to be able to choose their own paths, both in terms of how the story plays out and how they navigate levels. A major feature of the game is that the levels are open-ended, giving the player freedom to wander around the environment with very little restriction. The intended demographic is teens and young adults.

    What Went Right
    1. Learning curve. A lot of the production of Eternal Winter was dependent on how well we could learn new skills and how quickly we could teach ourselves new materials. One of the most important areas where this came into play was in deciding which engine to use. After considering the strengths and weaknesses of each engine available to us, as well as our skill levels with those technologies, we decided to go with the Unreal 2004 Editor.

    All the students on the team have had a class in using Unreal. We already knew how to create a level, import custom static meshes, and write custom Unreal scripts. This ensured we could focus more on advancing our skills rather than learning the basics. Still, our limited collective knowledge was quickly pushed to its limit. To do more advanced things with the editor, we had to go outside the classroom to find online tutorials, extended talks with previous instructors, and Unreal's Video Training Modules (VTM).

    We used the Unreal Editor to build the levels and create the cinematics, while the Unreal Development Environment (UDE) was used to compile code. Old Skool Monsta Toolz was used to manage level events, weapon drops, and artificial intelligence. 3ds Max 9 was used to create the characters, level props, level assets, and animations. Photoshop, Illustrator, Genetica, Wood Workshop, Crazy Bump, and some real photographs were used to create the textures. We also had access to a Vicon system for motion-capture data. Most of the concept art and several models were subcontracted out.

    2. City buildings: geometry versus meshes. One of the things we had to consider when developing the mod was how to create the buildings that would populate the environment.

    Two options presented themselves: use geometry generated by Unreal or import static meshes directly into the level.

    While it was quicker to create more detailed buildings with static meshes, we realized we could use binary space partition (BSP) brushes to carve out geometry in Unreal. The benefit of using these brushes is they gave us more efficient rendering and memory usage. Additionally, the textures could be changed on the fly when using the brushes inside the engine, whereas it would take much longer to get this effect using static meshes. The brushes had a one-to-one collision detection, which we had trouble with when using static meshes.

    3. Game map layout. When creating the map for Eternal Winter, we knew we wanted to implement multi-paths into our open-ended environments. We had action paths, which tested the player's skill in dogging and attacking, while still providing a fun run-and-gun experience. We also had stealth paths, which challenged the player to sneak past enemies and fend off ambushes. We went through several iterations of the level to get a seamless blend for these paths as the player traversed the open-ended environments, and with each iteration, we got closer to our goal.

    The paths were ultimately defined by enemy placement. The final action paths are heavily populated with enemies, while the stealth paths are not. This allows the player to seamlessly transition between paths or just keep to one path.

    We wanted not only stealth and action paths, but also a vehicle path. Having a third path was troubling because it made it harder to define the paths by the streets. We had to remap the levels entirely when we made the decision to add the third path. What we did was turn the alleyways and backstreets into stealth paths, thereby keeping the streets as action paths. This also allowed us to create more intense action paths to offer the player a greater challenge.

    4. Unreal 2004 versus Unreal 3. As mentioned, deciding which engine to use was crucial to creating Eternal Winter. Equally important to finding the right engine for our skill sets, we had to find the right engine for our limited hardware. We chose to work with Unreal 2004 because it allowed us to work with 10 computers, whereas had we used Unreal 3, we would have only been able to use two computers.

    Plus, as I mentioned, we had already learned how to perform basic functions using Unreal 2004 (but in order to reach our goals we had to learn far beyond our basic skills).

    5. UnrealMatinee. We used UnrealMatinee to create the game's cinematic. Matinee is a track-based and non-linear editing system for keyframing properties over time and creating in-game cinematics.

    While we wanted players to watch the cinematics, we didn't want to take them out of the game. We were looking to achieve some kind of seamless transition between the cinematic and gameplay. This is where Matinee came in.

    We used in-game assets and characters to help maintain player immersion. Matinee also helped us eliminate loading times between cinematics and gameplay.

Comments

comments powered by Disqus