Dog On Patrol

Hammer++ | Half-Life 2

Dog on Patrol is a single-player Half-Life 2 level where the player is tasked with helping D.O.G., a pet-like automaton, escape an abandoned shipping and garage center. All the while, they are being hunted down and shot at by a sniper in a central tower. The player must create cover for D.O.G. and find a path out of the abandoned facility.

Technical Specification

  • Software: Hammer++, Half-Life 2 Episode 2

  • Platform: PC

  • Average Playtime: 10 Minutes

  • Play Here!

Design Goals

COMPANION AI INTERACTIONS

Create unique interactions with ally NPCs where they can help the player progress through the level by interacting with items around them to empower the player.

ENVIRONMENTAL COMBAT

Design environments with interactive elements that alter how the player navigates the level and deal with combat scenarios. By incorporating the environment into combat scenarios, the player can have a more engaging combat experience.

RECURRING NEMESIS TYPE ENEMY

Develop a recurring enemy in the level that is always hunting down the player. This will help to create a consistent tension between the player, puzzles, and enemies throughout the level.

COMPANION AI INTERACTIONS

In this level, I programmed a unique ally NPC named D.O.G. to help out the player throughout the level.

  • This means that at certain points throughout the level, D.O.G. will throw items like explosive barrels to the player to help them blow up walls and enemies.

  • I also programmed D.O.G. to require help from the player at times as well.

  • D.O.G. will not move or perform further actions without knowing that he and the player are safe.

  • This unique behavior was all created in the NPC and the level using a combination of triggers and scripts to make D.O.G. feel like he was reacting to the player’s actions throughout the level.

ENVIRONMENTAL COMBAT

In wanting to create dynamic combat sequences in which the player was able to engage with enemies in unique ways:

  • I created wooden boards all along the walls that could be broken down to crush enemies against the wall.

  • I added lots of physics objects that the player could use to throw at enemies

  • More wooden boards were implemented along the exterior wall facing the sniper to allow the player to create cover from the sniper.

  • Large cranes with breakable rope/hooks were implemented as more useful cover from the sniper.

RECURRING NEMESIS TYPE Enemy

In this level, I implemented a unique ‘Sniper‘ enemy that follows the player through the three main sections of the level:

  • By doing so, I created a constant gameplay tension throughout the level for the player.

  • By interacting with the environment, the player can block the sniper’s gaze.

  • D.O.G. will often not complete actions without the player blocking off the sniper first.

Post Mortem

What went well?

  • Planning and working in passes for the scripting and gameplay went well, especially towards the end of development.

  • Working on a lot of custom scripts to get both AI and interactable environmental objects working well taught me a lot about scripting in Hammer Engine and created some impressive gameplay moments.

WHAT I LEARNED.

  • Planning out a more balanced development schedule for working on and planning aesthetic polish for the level throughout development.

  • Doing many more playtests and getting insight from other designers would help alleviate a lot of the issues around trying to solve conveyance.

What went wrong?

  • The aesthetic portion of the level was difficult to get up to the same level as the gameplay. I spent a lot of extra time in the end of development, trying to make the level look better.

  • Conveyance on key gameplay elements and new mechanics could have been executed better, especially with more playtesting.