Programming Portfolio

Here is available my programming portfolio, starting with the prototype of the videogame FPS, which means First Person Shooter, that is called Guns or Roses and with the prototype of the video game Procedural Infinite Runner 3D, called Runladia, driven by the subjects taken at Florida University.

Star Harvest

Mechanics

-Complex farm system using Scriptable Objects in which the player can plant and harvest different seeds

-Complex inventory system that is completely related to the farm system and with a drag and drop system

-Minimap

-Complex combat by turns system that gives feedback to the player of everything that is happening in the combat

-Different skills in the combat as hits (fixed damage, percentage damage and statistics-based damage), heal, posinous attack and paralysis.

-Unlocking skills as the mission level increases

-Missions system related to the inventory system

-Pop up notification system

-Use of Singleton design pattern in order to pass and save information as the current level mission and the current inventory between scenes

-Implementation of idle and movement animations

-Movement of the player

-Camera following player

-Camera limits

-Main Menu and functionality

-Pause Menu and functionality

-UI and HUD in real time

-Implementation of music and sound effects

-Implementation of art made by Shupei Ruan, Eline Lubbers and Dariya Nikulina

Description

Star Harvest is an RPG, Role-Playing Game, prototype, created with Unity using the C# programming language.

It is a videogame where the player will have to harvest and sow seeds of different types, explore zones and enter into a complex combat by turns system, all of that in order to level up in the missions panel.

For its creation, it has been necessary the use of Scriptable Objects, as well as the utilization of the Singleton pattern design in order to save and pass information between scenes.

Furthermore, it has been created in a 2D Unity project.

Surface Hunter

Mechanics

-Shooting plungers controlling the parable of the shoot using fisics

-Timer

-Random instantiation of fishes

-Floating texts with points

-Implementation of fish movement from one point to other by code

-Main Menu and functionality

-UI and HUD in real time with score and time left

-Implementation of music and sound effects

-Implementation of art made by Shupei Ruan

Description

Surface Hunter is a videogame prototype created with Unity using the C# programming languague.

It’s a videogame where you will have to throw plungers controlling the parable, implemented with fisic inside the code, in order to hit the fishes, kill them and get points before the time runs out.  

For its creation, it has been necessary the use of scripts as the timer one, the movement and score of each fish and the random fish generator.

Furthermore, it has been created in a 2D Unity project.

Cat Action RPG

Mechanics

-Roll functionality and its animations with Blend Space

-Attack functionality and its animations with Blend Space

-Enemies with their AI using state machines with patrol, follow and attack states

-Implementation of animations

-Movement of the player and its animations

-Camera following player

-Camera limits

-Main Menu and functionality

-UI and HUD in real time

-Implementation of music and sound effects

-Implementation of external assets

Description

Cat Action RPG is an RPG, Role-Playing Game, prototype, created with Godot using the GodotScript programming language.

It is a videogame where the player will have to explore zones and kill evil bats that have different AI states.

For its creation, it has been necessary the use of scripts using GodotScript

Furthermore, it has been created in a 2D Godot project.

Guns or Roses

Mechanics

-Different guns with its own range, cadence and damage

-Firing bullets of different size depending on the firegun

-Gun switching with mouse wheel

-Different types of Enemies with their AI using Nav Mesh and different state machines with patrol, follow and attack states

-Moving platforms

-Movement of the player

-Fade to black animation between scenes

-Blood on screen when the player gets damage

-Main Menu and functionality

-Pause Menu and functionality

-UI and HUD in real time with the objective

-Saving information as score between scenes with JSON files

-Implementation of music and sound effects

-Implementation of external assets

Description

Guns or Roses is an FPS, First Person Shooter, prototype, created with Unity using the C# programming language.

For its creation, it has been necessary the use of individual scripts for each gun with different range, force and sounds, as well as another script exclusively dedicated to the mechanic of switching guns. Also has been essential the implementation of AI for the enemies.

In addition, has been created in a project in the modality of 3D URP of Unity, optimal for the implementation of lights that,  all together with the urban ambience or environment, the enemies, the sounds, the enemies to kill tracking and the appearance of blood in the screen as the player decreases his/her life, conform this prototype.

Finally, the prototype counts with a saving system through a JSON file, which can be accessed through the in-game pause menu.

Main Menu Guns or Roses FPS
Pistol Guns or Roses FPS
Pause Menu Guns or Roses FPS
Bloon on Screen Guns or Roses FPS
Rifle Gun with lights Guns or Roses FPS
Sniper Guns or Roses FPS
Rifle Gun Guns or Roses FPS
Game Over Menu Guns or Roses FPS

Runladia

Mechanics

-Procedural asset instantiation depending on probability by using Maths, concretely Perlin Noise.

-Procedural instantiation of enemy drones that go to the player position

-Chronometer that counts time

-Movement of the obstacles with fisics

-Movement of the player

-Movement of the floor texture

-Main Menu and functionality

-UI and HUD in real time

-Saving information as score between scens with PlayerPrefs

-Implementation of music and sound effects

-Implementation of external assets

Description

This project, Runlandia, is a prototype of Procedural Infinite Runner 3D created with Unity using the C# programming language.

To create it, it has been necessary to use Perlin Noise, which, according to Wikipedia, “is a mathematical function that uses interpolation between a large number of precomputed gradients of vectors that construct a value that varies pseudo-randomly in space or time.” That is, it is a mathematical function that, through certain procedures, generates random values based on probability. So this mathematical function has been used to generate, according to certain probabilities, obstacles and drones that the player must avoid.

In addition, the prototype has three levels: easy, intermediate and difficult, and, depending on the level, each one grants a smaller number of lives as the difficulty increases, as well as greater probability of generating obstacles and drones to avoid and less probability of getting PowerUps or lives for the player. Also, through a script that refers to the texture, movement has been added to the texture of the ground, as well as music and sounds as recommended in the feedback of a first version of the prototype.

All this together makes up this prototype: the movement of the texture of the ground, the movement of the player, the animation of the character’s running, the day and night cycle, the procedural generation of obstacles and drones, the menus, the atmosphere and the sound.

Credits:

Music:

Piece: Only the Braves
Music of  https://www.fiftysounds.com/es/

Piece: The Wild Side
Music of   https://www.fiftysounds.com/es/

External assets:

https://assetstore.unity.com/packages/2d/gui/sci-fi-gui-skin-15606

https://assetstore.unity.com/packages/3d/characters/robots/sci-fi-drone-214089#description

https://assetstore.unity.com/packages/3d/environments/sci-fi/sci-fi-barrel-175837

https://assetstore.unity.com/packages/3d/props/weapons/sci-fi-turrets-cannon-69615 

Runlandia Inicio
Captura juego
Captura Runlandia juego 2
Captura Runlandia muerte
Captura Runlandia Game Over

Work with me

If you have any questions or any project in which we can collaborate or hire me, do not hesitate to write to me and contact me.