top of page



Hi, my name is...
Juan David
Diaz
...and I am a Unity Gameplay Programmer with 5 years of experience making games in 2D and 3D. I have strong skills in C#, Java, and Javascript. I can implement complex mechanics and systems into games and create useful tools for developers and designers.
Featured Projects
The Last Sit
Endless Top-Down Shooter.
➤ DESCRIPTION
An elderly office worker awakes amidst an unexpected apocalypse. As your colleagues transform into wheelchair-bound zombies, your sole motivation lies in a promise made by the CEO: a long-awaited raise in the event of an apocalypse. Experience this unique game where movement is tethered to the recoil of your weapons, adding a layer of strategic depth to the gameplay.
➤ CONTRIBUTIONS
• Designed and implemented the main mechanic: physics-based sliding movement generated by the recoil of weapons.
• Implemented a progression system for the weaponry. Weapons have stats that can be upgraded with coins through the weapon shop.
• Created 3 weapon types with different stats and bullet patterns: revolver, shotgun, and heavy machine gun.
• Implemented most of the UI elements of the game, including a window for a weapon shop and an upgrade shop.
• Added a script to the Pathfinding algorithm that slightly alters the path of every enemy so they avoid taking the same route.
• Implemented a camera lookahead feature so the player can see far ahead in the direction they are aiming at.
• Built the level layout using Unity's 2D Tilemap tool.
➤ DESCRIPTION
An elderly office worker awakes amidst an unexpected apocalypse. As your colleagues transform into wheelchair-bound zombies, your sole motivation lies in a promise made by the CEO: a long-awaited raise in the event of an apocalypse. Experience this unique game where movement is tethered to the recoil of your weapons, adding a layer of strategic depth to the gameplay.
➤ CONTRIBUTIONS
• Designed and implemented the main mechanic: physics-based sliding movement generated by the recoil of weapons.
• Implemented a progression system for the weaponry. Weapons have stats that can be upgraded with coins through the weapon shop.
• Created 3 weapon types with different stats and bullet patterns: revolver, shotgun, and heavy machine gun.
• Implemented most of the UI elements of the game, including a window for a weapon shop and an upgrade shop.
• Added a script to the Pathfinding algorithm that slightly alters the path of every enemy so they avoid taking the same route.
• Implemented a camera lookahead feature so the player can see far ahead in the direction they are aiming at.
• Built the level layout using Unity's 2D Tilemap tool.

Afterlife
2D Platformer.
➤ DESCRIPTION
Explore a haunted mansion and uncover its secrets. Reveal the deadly traps by sacrificing your life and spreading your blood all over the mansion.
➤ CONTRIBUTIONS
• Designed and implemented a creative main mechanic: revealing the path as the player spreads blood when dying.
• Created 3 different levels that explore the main mechanic.
• Created a nice-looking UI interface that fits the game setting.
• Added sound effects and particle effects that enhance the player experience
➤ DESCRIPTION
Explore a haunted mansion and uncover its secrets. Reveal the deadly traps by sacrificing your life and spreading your blood all over the mansion.
➤ CONTRIBUTIONS
• Designed and implemented a creative main mechanic: revealing the path as the player spreads blood when dying.
• Created 3 different levels that explore the main mechanic.
• Created a nice-looking UI interface that fits the game setting.
• Added sound effects and particle effects that enhance the player experience

Kitchen Khaos
3D Casual Arcade Game
➤ DESCRIPTION
A furious witch cursed your kitchen with absolute chaos. The dishes have come to life and will do anything to escape and not be cleaned. Clean all the dishes by the end of the shift and avoid the traps the dishes put in your way!
➤ CONTRIBUTIONS
• Implemented 4 types of dishes with unique abilities designed to increase the chaos.
• Implemented dishes' AI, including wandering, obstacle avoidance, and escaping behavior.
• Implemented a spawn system that spawns dishes with weighted probabilities, limits the total amount of dishes, and ensures there are always dishes to meet the level's goals.
• Implemented a level customizer to tune the time, difficulty, and goals of each level.
• Applied Object Pooling design pattern to spawn and despawn many dishes.
➤ DESCRIPTION
A furious witch cursed your kitchen with absolute chaos. The dishes have come to life and will do anything to escape and not be cleaned. Clean all the dishes by the end of the shift and avoid the traps the dishes put in your way!
➤ CONTRIBUTIONS
• Implemented 4 types of dishes with unique abilities designed to increase the chaos.
• Implemented dishes' AI, including wandering, obstacle avoidance, and escaping behavior.
• Implemented a spawn system that spawns dishes with weighted probabilities, limits the total amount of dishes, and ensures there are always dishes to meet the level's goals.
• Implemented a level customizer to tune the time, difficulty, and goals of each level.
• Applied Object Pooling design pattern to spawn and despawn many dishes.

Chess.js
Chess developed in JavaScript
➤ CONTRIBUTIONS
• Designed the software architecture that drived the entire program construction.
• Coded the chess rules according to FIDE standards.
• Tested and debugged the move generation algorithm
• Implemented the UI and Input system.
• Used clean code practices to make bug-free, readable, high-quality code.
➤ CONTRIBUTIONS
• Designed the software architecture that drived the entire program construction.
• Coded the chess rules according to FIDE standards.
• Tested and debugged the move generation algorithm
• Implemented the UI and Input system.
• Used clean code practices to make bug-free, readable, high-quality code.


Spell Creator
Unity Editor Tool
➤ DESCRIPTION
Editor tool created in Unity. This tool allows the developer to create handmade drawings and link them to a script or behavior. These drawings are stored in data that can be recognized by an algorithm that executes the associated script.
➤ USE CASE
Used in a crafting game in which potions are created by using ingredients and spells. Spells are casted with specific gestures drawn with the mouse. This tool allowed to easily create any type of gesture for the spells. It also make gestures compatible with the gesture recognition algorithm so spells can trigger actions in the game.
➤ DESCRIPTION
Editor tool created in Unity. This tool allows the developer to create handmade drawings and link them to a script or behavior. These drawings are stored in data that can be recognized by an algorithm that executes the associated script.
➤ USE CASE
Used in a crafting game in which potions are created by using ingredients and spells. Spells are casted with specific gestures drawn with the mouse. This tool allowed to easily create any type of gesture for the spells. It also make gestures compatible with the gesture recognition algorithm so spells can trigger actions in the game.

bottom of page