Hi!, My name is Kosi Chima A Junior Game Developer and Computer Programmer.

I have participated in Game Jams and developed projects for some of my College Classes, here are some of my most frequent projects.

(NOTE: There is no downloadable content on this webpage)

Project Source

2D GAME ENGINE (in development)

A game engine is a software framework that provides the tools and infrastructure for developers to create video games. It handles many of the low-level tasks of game development, such as graphics rendering, input handling, and physics simulation, allowing developers to focus on the higher-level creative aspects of game design.

There are many different types of game engines, but they all share some common features. A typical game engine includes the following:

•Renderer: The renderer is responsible for drawing the game world to the screen. It takes care of things like applying textures, lighting, and shadows.

•Input handler: The input handler handles user input from devices such as keyboards, mice, and gamepads. It translates this input into events that the game can understand.

•Physics engine: The physics engine simulates the physical world of the game. It takes care of things like collisions, gravity, and movement.

•Audio engine: The audio engine plays sounds and music in the game. It can be used to create a variety of sound effects, such as explosions, footsteps, and music.

•Scripting engine: The scripting engine allows developers to write scripts to control the behavior of the game. This can be used to create things like AI, cutscenes, and gameplay mechanics.

The Entity-Component-System (ECS) Design Pattern

The Entity-Component-System (ECS) is a popular design pattern for game development. It is a way of organizing game data that is efficient and scalable.

In an ECS, game objects are represented as entities. Each entity has a set of components that define its properties and behavior. For example, a player entity might have a position component, a health component, and a movement component.

Components are stored separately from entities. This makes it easy to add or remove components from entities, and it also makes it easy to reuse components across different entities.

Systems are responsible for updating the game state. They do this by iterating over entities and components. For example, a movement system might iterate over all player entities and update their positions based on their input.

Using SDL to Create a Window, Render Graphics, and Handle Input

SDL (Simple DirectMedia Layer) is a cross-platform library that provides low-level access to the graphics, sound, and input subsystems of the operating system. It is a popular choice for developing 2D games.

To use SDL to create a window, render graphics, and handle input, you will need to do the following:

•Initialize SDL
•Create a window
•Create a renderer
•Load images
•Render graphics
•Handle input
•Quit SDL
How to Use Lua to Embed Scripting in Your Game Engine

Lua is a lightweight scripting language that is often used in game development. It is easy to embed Lua in a C++ application, and it can be used to extend the functionality of your game engine.

To embed Lua in your game engine, you will need to do the following:

•Include the Lua header file
•Create a Lua state
•Load Lua scripts
•Call Lua functions
•Close the Lua state

How to Design and Implement a Game Loop

The game loop is the main loop of your game. It is responsible for updating the game state, rendering graphics, and handling input.

To design and implement a game loop, you will need to do the following:

•Initialize the game
•Enter the game loop
•Update the game state
•Render graphics
•Handle input
• Repeat steps 3-5 until the game is over
•Quit the game

References to all aid in development is listed in the github readme as well as the itch.io launch page.

Project Source

The Last Sapling

The Last Sapling was created as a submission entry into the Global Game Jam 2023 with the theme of the competition being 'ROOTS'

My team consisted of 6 individuals (2 Programmers, 2 Designers and 2 Artists), with myself as both the lead developer and the project lead. The project itself was completed under the time constraint of 47 hours.

Last Sapling follows a small sapling creature on its path to escape it and its homelands' dire situation, the entire forest has been overrun and infected by uninhabitable creatures. The Sapling carries with it, a magical seed object that would allow the sapling to regrow the ecosystem from scratch, if successful... All it needs is to escape to the surface.

My Part in this:

My primary responsibility for this project was to lead the team as a whole, but more specifically the Camera and Character Controller as well as the forefront of implementing game mechanics.

Other Responsibilities:

Player Character Controller
Player Camera Controller
Player Teleporting Abilites
Player Interaction with Objects and Enemies
Animation and Sound implementaion

Using the seed as a gameObject the player would be able to throw said object and on request, teleport to the landing location of the seed gameObject, this is the essential movement feature of the game, using the seed to teleport and traverse your way out of the platform style maze, while also avoiding the various enemies and their projectiles.

The 'angry-birds' like aiming of the seed, was implemented using the basic framework of bezier curves animation, By using the 3 point control curve and De Casteljau's algorithm. The implementation of the algorithm proved extremely difficult. It was my first time working with bezier curves or even graph implementation in a game, the math associated with the aiming also did not turn out as perfectly as I hoped.

The Teleportation in action!
Code Snippet for the Trajectory

Project Source

Grave Dig!

Grave Dig was a short story game project completed and submitted to the Pixel Jam Game Jam in the summer of 2022

The team was predominantly online, collaborating with people I had never even previously met. It consisted of about 10 -12 individuals all interchanging and working on several aspects of the project

Grave Dig is an escape-adventure game that implores the mechanics of Minecraft. The player character has two modes; mining and attacking. The map is randomly generated on every attempt to keep the game fresh and unpredictable The game is taxing, in the sense as it reveals almost nothing about the surrounding area, the ability to find the quickest escape route and perhaps avoid enemies is purely based on luck.

My Main Part in this:
Player Controller Design : The player character uses 8-directional top down movement.
Most of the mechanics for the movement is assisted by the Unity Input Manager system using in built functions like 'GetAxisRaw' and keywords like 'normalize'

I also had a hand in :
•Player Camera Controller
•Player Mining System
•Sound Design and implementation

Octo-directional movement and Mining in action!
Initial Math Calculation for Player Movement

Project Source

Festival Of Dionysus!

In collaboration with the 5th Grade Gifted Class of Ms. Archuleta at Dunleith Elementary School, Festival of Dionysus is an educational game that tests the simple knowledge of the 5th grade curriculum

My team consisted of 3 other members, split into 2 programmers, 1 researcher and 1 artist. The project scope consisted of frequent meetings with our client(s) as well as frequent research into the curriculum of the 5th grade level.

Festival Of Dionysus is a Greek themed Educational game, consisting of a central Hub area and three minigames that can be accessible from the central hub.
•The first minigame uses the mechanics and idea of the 'red-light, green-light' game, it is a two person game, each given their own set of questions and set of answers to choose from to advance further, without being seen by the onlooking Medusa head at the end goal.

•The second minigame is a Labyrinth inspired by the story of Theseus and the Minotaur, in the Labyrinth entering every room pocket causes a prompt asking a question to move forward, if the wrong answer is given , the player character is frozen in place until the correct answer is provided, all the while the player is being chased by the minotaur game object who does not stop. It is a race against time

•The third mini game is a play of Tower defense, as you have to defend the Pantheon from attackers by answering different math and greek history questions correctly.

My Main Part in this:
Hub center Design: The making of the Player Movement as well the mini game Interactables to pull up the Canvas Panel they were layered under. Enemy AI Pathfinding: The Minotaur in the second minigame uses Unity's A* Pathfinding system implementation.

I also had a hand in :
•Player Camera Controller
•Labyrinth Mini game (Mini game 2) - Minotaur Enemy AI Pathfinding•
•Settings, Options and Pause Menu.
•Research and Client Communication.

Player Controller for the Hub Character
The Medusa game in action!
The Labyrinth chase in action!
Defend Greece!

About me!

Pronounced "Co-See"

I also go by Cozy
I am currently a Graduate of Kennesaw State University
I hold two Bachelor's degrees; Bachelor of Science in Game Design as well as a Bachelor of Science in Computer Science.

I have been Learning and developing different styles of games for the greater part of 5 years now, and I absolutely love it,
However, I will never forgive Hollow Knight for my infatuation with modern Metroidvania style games.


As much as I enjoy problem solving and programming, I greatly enjoy my pastimes and hobbies like; Petting my Cat , Book Collecting, Playing with my Cat, Playing Basketball/Soccer, Doting on my Cat, and going to Concerts!.

My Capstone team "Last Second Games" and I after our C-Day Game Presentation