top of page

VFS Final  Project- OUTLAW'S GAMBIT 

Programmer| Technical Designer                    Vancouver Film School

Project Overview:       

Engine - Unity
Programming Language - C#   
          

Welcome to my portfolio featuring Outlaw's Gambit, a thrilling third-person space shooter game that I developed as my final project at Vancouver Film School. In this high-octane adventure, players take on the role of a rogue pilot navigating the inside of asteroid field , battling enemies, and uncovering secrets in a visually stunning universe.

Prototyping 

I started implementing basic gameplay movements in term 4. I rapidly prototyped player's ship movement and set up the cameras during first week of term 4, which was really motivating for my team to move forward with this game idea as we had to choose one game idea from four games we discussed. I started implementing the weapon system for player ship. I was able to implement blaster and seeker missile weapon before the end of term four. Although our plan was to make only third person camera but I discussed with team members and implemented first person camera also because I wanted to have a cockpit view of our game also which I was able to implement before our final submission.

Prototyping
github.jpg
outputGameplay.gif

First Person cockpit view, Boss Fight and Blaster weapons system

Gameplay Programming

Gameplay Programming

Being the only programmer in our team I  implement many features and systems for our game. I worked on three C's of our game. I started working on spaceship movement through which I learned about the unity's rigidbody physics systems. I learned how the forces work together to implement 3D spaceship movement. I implemented objects such as unlockable doors, Turret Hatch unlock system, breakable objects, boost gates.   

github.jpg
outputProto.gif

Spaceship's six dimensional movement, blaster and Boss AI Missiles 

UI Programming

Throughout our game project, we underwent extensive iterations on the user interface based on valuable feedback indicating that the original design was too distracting. In response, we refined the UI to enhance player focus and streamline gameplay. I utilized linear interpolation (lerping) to achieve smooth transitions for the UI bars, significantly improving the visual experience. Additionally, I implemented crucial features such as missile count displays, shield regeneration indicators, a boost bar, and a blaster heat meter. To further enhance player feedback, I also integrated a hit marker, ensuring that players receive clear and immediate responses during gameplay. These updates not only improved usability but also contributed to a more engaging gaming experience.

UIProgram
github.jpg
github.jpg
outputUI.gif

Player's shield bar and  boost bar  regenerating, Blaster heat bar increasing

AI Movement and Weapon System

I Implemented a flying enemy AI that uses a PID controller for smooth and precise movement, enhancing the fluidity of its actions within the game. The AI operates using a state machine, which allows it to create its own target empty objects in the level and move toward them dynamically. To navigate effectively, I incorporated raycasting, enabling the AI to detect and avoid obstacles in its path. The AI features distinct states: a reposition state for searching optimal locations within the level, a patrol state that activates when the player is out of range, and an attack state that engages when the player comes within proximity. This comprehensive design not only creates engaging combat scenarios but also adds depth to the enemy behavior, enriching the overall gameplay experience.

AI
github.jpg

Enemy AI changing states and finding path using raycast system and blaster weapons to attack player

​

​

​

targeting

Advanced Targeting System

I implemented an advanced targeting system for our game that enhances player engagement and accuracy in combat. This system tracks enemy movements and features a missile lock-on indicator that activates when enemies fall within a specified angle relative to the player. It seamlessly integrates with missile launchers, providing a strategic advantage during encounters. Additionally, I developed a leading indicator that visually represents the enemy's projected position, allowing players to anticipate and aim more effectively. This combination of features not only improves targeting precision but also enriches the overall gameplay experience, encouraging players to refine their strategies in real-time.

github.jpg
outputtarget.gif

Targeting Indicators - Leading indicator for enemy position prediction and missile indicators for missile lockOn

​

​

​

VFX Effects

I designed and implemented a variety of captivating visual effects (VFX) for our game, significantly enhancing the overall aesthetic and gameplay experience. Key elements include a dynamic warp effect that immerses players during Boost gate hit sequences, alongside an electrifying wire effect that adds visual flair to energy-based mechanics. Additionally, I created a stunning star dust effect that enriches the environment, providing a sense of depth and wonder. For projectiles, I developed custom shader effects that not only improve their visual impact but also convey important gameplay information. These VFX elements work in harmony to create a vibrant and engaging atmosphere, elevating the player's immersion in the game world.

vfx
github.jpg
outputvfx.gif

Electrical Wire Effect , Blue Warp effect activates when player hit boost gates and startdust particles in levels

​

​

Cinematic Timeline Events

I implemented cinematic sequences for our game project using Unity's Timeline and Cinemachine, quickly mastering these tools to enhance our storytelling. This integration allows for dynamic cutscenes that significantly enrich the narrative experience. I also designed and executed the game's outro cinematic, recording the sequence myself to ensure a seamless and cohesive conclusion to the player’s journey. These cinematic elements not only add depth to the story but also create a more immersive atmosphere, leaving players with a lasting emotional impact as they complete the game.

cinematic
cinematicOutro.png
introCinematic.png

SFX and Music Implementation

I collaborated closely with audio designers to integrate sound effects (SFX) into our game using FMOD, ensuring that every auditory element enhanced the gameplay experience. This collaboration involved fine-tuning sound cues to match in-game actions, creating a more immersive atmosphere for players. Additionally, I worked alongside a music mixer to strategically place background music at pivotal moments, ensuring that the audio complemented the emotional tone of the game. Through this teamwork, we crafted a rich auditory landscape that elevates the overall experience, drawing players deeper into the game world.

​

By using FMOD, I created an adaptive audio system that makes the game's sound much more exciting and immersive for players.

This adaptive audio means that the music change based on what’s happening in the game. For example, when player is in encounter with enemies, the music gets more intense, and the background sounds can shift depending on where the player is or what they’re doing. This real-time change makes the game feel more alive and engaging.

sfx

Optimization

Throughout production, we faced performance issues in our game largely due to garbage collection associated with arrays in the code. To address this, I focused on optimizing memory usage and reducing the garbage collection (GC) allocation value. By implementing more efficient data structures and minimizing unnecessary array allocations, I significantly improved the game's performance, resulting in smoother gameplay and reduced frame rate drops. These optimizations not only enhanced the overall player experience but also contributed to a more stable and responsive game environment, allowing us to deliver a polished final product.

optimization

Organizing the project

I took the initiative to organize our Unity project meticulously, structuring folders and assets in a clear and logical manner. This organization significantly aided the team in locating necessary resources quickly, ultimately saving valuable time during development. Additionally, I created separate scenes for each team member to work in, which effectively minimized merge conflicts when using version control. By ensuring that everyone could focus on their designated scenes, we streamlined our workflow and maintained a cohesive development process, allowing us to collaborate more efficiently and enhance productivity across the team.

organizing
org2.png
org3.png
org1_edited_edited.jpg
Developers

Developers​

​

Han Wu -  3D & Environment Artist

Orbit Vecarri - Project Manager / VFX Artist

Cole Webster -  Level Designer / Combat Designer

Sandeep Singh - Programmer / Technical Designer / VFX Artist

João Victor da Costa Mazzei -  Artist & UI Designer

Contact

Connect with me on LinkedIn, send an email, or check out my YouTube channel for more content.

linkedin-logo-linkedin-symbol-linkedin-i
youtube-icon-2048x2048-oa03jx3h_edited.j

Get in Touch

png-transparent-google-mail-gmail-logo-i
bottom of page