The Island Guardian

The Island Guardian is a game in which you are a guardian of an island. You have to clean the island of plastic and plastic monsters to save the environment. The game was made in Unity and the programming was done in C#. This was made in a team of 6.

The aim of the is to teach 12-15 year old kids about the environment in a fun and friendly way. The contains a lot of interesting facts about the environment and the plastic problem. It also has very cute animals.

For the game I was lead programmer. I was responsible to make sure that everything worked together well and that the programmer could easily collaborate. I also was in charge of the leaderboard, some gameplay programming and the AI.

Role

Lead Programmer

Platform

PC/Windows

Leaderboard

I aimed to implement a leaderboard for the game that could be accessed both in-game and online. Given the need to develop everything from scratch, I chose to build an API using ExpressJS. This decision required me to familiarize myself with ExpressJS, as it was a technology I hadn't utilized previously.

The API, along with the associated database, was hosted on a Linux server running Ubuntu. For the database, I opted for MariaDB. Setting up the entire infrastructure, including the control panel, involved using Pterodactyl, and I undertook the task of configuring it independently.

Leaderboard Textures made by groupmates

AI

This was a prototype

The AI in the game operates on a straightforward yet effective system. In its neutral state, designated as patrolling, the AI dynamically navigates the environment. It selects a random position on the nav mesh and engages in random rotations to simulate natural movement.

Upon detecting the player, the AI switches to pursuit mode, actively following the player's movements. However, if the player manages to exit the AI's field of view, the AI intelligently reverts to a strategic approach by heading towards the player's last known position. This adaptive behavior adds an element of challenge and strategy to the player's experience, enhancing the overall gameplay.

Furthermore, the enemies also drop plastic, which is one of the things the player should clean, as the goal is to clean the island.

Wand

The wand is the main utility of the player. It is used to clean the plastic and to kill the enemies. The wand has a cooldown, so you cannot spam it. The wand also has a range, so you cannot just kill the enemies from a distance.

As part of the project, I implemented a wand suction ability using a collider. When players engage the left mouse button, the collider becomes active, allowing the wand to pull in nearby plastic objects. This interaction is designed for smooth visual flow, as the plastic smoothly moves towards the wand. The collected plastic undergoes a visual transformation, smoothly shrinking before being destructed.

This was a prototype.