Hasgler Odyssey

Hasgler Odyssey

Team size 6
Project duration 3 months
Primary role Physics/Collision programming, logic programming
Language used C++
Release date 12/05/2021

Game Description

Hasgler Odyssey is a 2D Rogue-Like videogame. Developed entirely in C++ with SFML. My team and I had to make the game engine by ourselves.
This was the first approach that I made to videogame development in C++ and I have to say that it was a very great experience and I realized that I like so much to code in C++.
What I enjoyed the most on this project was the opportunity to learn with my team and to share all the experience with them.

Game Download

We have an Itch.io page where everything about the project is explained. It has the instructions to download and try the game if you want ;).

GO TO PAGE

Game Trailer

What I did

My main task was the development of the collision system for our sprites so we could make the main mechanics of our game. To achieve this I created a system that made two things:

-The first part were the methods that created the colliders for the sprites. You could give a sprite or array of sprites and it generated two types of colliders, a box collider, for the main collisions and to optimize the system and a pixel-perfect collider to detect the collision between the entities of the game.

-The second part was the collision detection system. This system was checking first the box colliders for near entities and if some of the colliders of the entities were colliding it checked the pixel-perfect colliders and, if the two entities were colliding, it reported the collision to the other systems.

Other important task in which I was involved was optimizing the entity generation. At first, when we were developing the game we arrived at some point where when we wanted to have a lot of entities in the game at the same time the performance of the game was really bad, so I made some optimizations to the game so we could generate enough entities to cover all our map.

The last task in which I was very involved was in developing the logic of the game. Making a manager that generated the entities with it's characteristics for each level of the game.