ICE

Screenshots

ICE is a real time strategy game set in a cold postapocalyptic world. After killing the leader of a mutant tribe and gaining control of it, you fight for what remaining territory and resources the cold world has left.

(RTS Top down of the #1 level)

I worked mostly on the first level during this Game project, it had a few more specification compared to the second level. This level was going to be an introduction to the game and have a seamless tutorial. The problem was that the tutorial area took up 1/3 of the map area I was allowed to work with. Our navigation mesh was not very fond of small and tight areas. Since I had so little space to work with I had a hard time making the layout interesting without breaking the navigation mesh for the units. During the creation of this map, it was always a constant battle between the units behaving correctly and having an interesting and fun layout. In the end, the level was still fun to play even though I would have wanted it to be a bit more advanced, I was pretty happy with the result

(Unit balancing)

We designed the unit dynamics in a Rock, Paper, Scissors-way.  When balancing the units I made sure each unit had its own strength and weakness.


The Grunt has high mobility but is easily stopped by the Tanks armor. The Ranger has high damage and long range but gets overrun by the Grunts numbers. The Tank absorbs most of the damage but against enemies that have high damage attacks the armor is almost ignored.

This was the first Game project during The Game Assembly that we used LUA in. Since I have a lot of interest in scripting I was the one handling LUA. I had however never scripted in LUA before, I talked to the programmers about getting started. Since it was going to take time before LUA was actually implemented in the game, they recommended me to do one of their assignments. The assignment was to script Pong with the use of LUA. When I could start scripting in the game, my main task was the objective mechanics. Our objectives were capture points, I scripted it so that you gain control over them by placing your units in a trigger. When multiple units were at one capture point, it was captured faster. The capture speed also changed depending on how many objectives you owned versus your opponent.

(Pong scripted in LUA)

(Scripted objective)

(AI balancing)

The AI in our game was very well made, the programmers allowed me to control several things through XML. Things like squad size, decision time, unit spawn, upgrades and a lot more. Even though I could tweak all this, it was still quite a challenge to balance the AI. I tested the AI by turning off Fog of War and just watched it play. This gave me a lot of insight into how it actually worked, I was able to see some patterns the AI favored to have. These patterns was not a very optimal playstyle and not many player would make those decisions, by tweaking the values in XML I was able to change the patterns into something that seemed more human-like to play against.

My contributions:

Specification:

Tools:


    U
nity 3D


XML

Adobe Photoshop

Autodesk Maya

Notepad ++

In-house tools



    L
evel design


Game design

LUA - scripting

Export tools - scripting

Level dressing

AI & Unit balancing

Quality assurance

Difficulty balancing

Collision models


    S
tudio: Distortion Games


School project: 10 weeks(half time)

Level editor: Unity 3D

Engine: In-house

Team size: 11

2 Level Designers

3 Artists

6 Programmers


(Unit balancing)
(Scripted objective)
(Pong scripted in LUA)
(RTS Top down of the #1 level)
(AI balancing)

Level Design & Game Design