University Project

C# & XNA Custom Game Engine
C#, XNA & WinForms Custom Game Editor

Occupation is a stealth action title set in an Axis-occupied Britain. As freedom fghter Desmond Black, the player must skillfully navigate through occupied territory, evading guards, dogs and land mines as he atempts to bring down occupying forces. The game takes inspiration from titles such as Flashback, Another World & Oddworld and the progression is screen-based. 

Overview
Set in an alternate take on history, in Occupation the second world war took a different turn. Britain is now occupied by the Axis war machine which has conquered most of Europe, Africa and  Russia. In Britain there are pockets of resistance, ex RAF pilot Desmond Black is one such man, waging a one-man war of subterfuge and sabotage against the occupying Nazi forces.

From the early concepting stages of Occupation I helped set out and champion the overall vision for the game as a screen-based platformer with a focus on stealth mechanics. Games such as OddWorld and Flashback immediately came to mind due to their punishing gameplay and intuitive encounter design. In order to emphasise the stealth and looming danger aspects of the game brief it was decided to give the player only a single knife and to only allow the player to take down enemies when attacking them from behind. This ensured that the player had to approach each of the levels with a focus on stealth. I believed that by breaking the game down into multiple linked screens we could better capture the magic of some of the older titles that served as inspiration and more importantly it allowed us to focus on making interesting puzzles and traps for the player on a screen-by-screen basis. We also made the decision to make everything step-based (characters move a fxed amount with each step) for much the same reason. I concepted the three tiers of movement, another mainstay of those titles serving as inspiration which demanded that the player is always on one of three tiers of height

Enemies are programmed to operate on a simple line of sight basis, whereby if the player is within the line of sight of a guard, their animation and AI state switch to aiming at the player and a countdown begins behind the scenes. The player has only a few seconds to break the line of sight before the guard opens fire. Enemies cannot see the player if he is stood behind them. Enemies such as the attack dog and the panzer tank also have separate AI for encounters. Light and shadows also determine whether a line of sight check is successful, with the timed lights taking precedence over volumes of shadow.

Game Screenshots

Tools

I created an editor for Occupation that was very similar to the one used in Velisia, albeit not as sophisticated. The Occupation Editor allowed for the scripting of guard patrols, placement of actors and traps as well as the layering of assets across multiple levels. The editor supported multiple types of bounding box which helped support many of the game mechanics, such as impassible walls, ladders and ledges, area exits and volumes of shadow.