I spent maybe way too much time on my site's menu, and it has a lot of Javascript.
Sooo... if it looks odd, try enabling Javascript.

Felix Park, the website!

Professional work I've done in various games.

The Last of Us Part II
For *The Last of Us Part II* I was responsible for gameplay implementation and scripting for the level *Jackson - The Horde*. An intense set-piece from beginning to end, there were several unique considerations that needed some creative problem solving. Due to AI performance limitations, the horde of infected sequence necessitated the creation of a new NPC AI that could bridge existing full-featured enemy AI (navigation) and incredibly stripped down background NPCs. Working closely with AI Programming, we got to a place where we could work with a more robust amount of 20 or so horde NPCs, which while a massive number compared to other combat encounters in the game, still needed a lot of scripting in order to keep players feeling constantly hounded by dozens on dozens of enemies (who could still do combat): - Extra custom spawning system taking into account multiple possible player paths, backtracking, and high visual impact spawn closets (with great work done by Derek Chatwood on level design) - Supporting the limited NPC count for those high visual impact spawns by making a culling system in script supporting way more fine tuning in terms of ensuring, absolutely, the player can't see an NPC despawn - Managing the pool of NPCs to make sure there was minimal look re-use I also implemented one of the more complex animated sequences in the game, involving 30+ enemy/prop actors, each with multiple animations, all while the player has control to stop or advance (making timing incredibly variable). Scripting the buddy AI in the later part of the level was also challenging - much of it needed the buddy AI to keep ahead of the player to do quick narrative beats (throwing a molotov at a bunch of enemies, leading the player in a snow-blind situation). To no developer's surprise the hardest aspect by far was the door during the combat encounter that: - The player could open - The player could open and then backtrack - The buddy AI would eventually open, wait, and bark at the player to go through - The buddy AI could lead the player through, if already open - Enemy AI were located on either side of - That needed to be closed and blocked off by a buddy AI by them knocking a cabinet over in front of, after the player and other buddy AI had passed through I was also responsible for implementing the combat encounter afterwards, designing the enemy wave composition to make sure we presented a suitable difficulty spike for the player in this, one of their first real combat encounters of the game. Outside of this level, I also did the finishing touches on an interactable later in the game, the museum's orrery (model of the solar system) - tuning it to be scientifically accurate to the relative orbit and rotation speeds of the planets (with the exception of Jupiter, which has such a high rotation speed as to look totally glitched out and ridiculous in-game, so it was reduced to 10% speed). [Back to main Portfolio](portfolio.html)