Skip to content

Custom game project showcasing the implementation of different software design patterns and data structures built in C++. This includes the state, composite, component, command and factory design patterns, as well as a graph/node data structure to represent the game world with different locations with adjacent location nodes.

Notifications You must be signed in to change notification settings

jamesvovos/game-dev-custom-project

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Game Dev Custom Project.

Custom game project showcasing the implementation of different software design patterns and data structures built in C++. This includes the state, composite, component, command and factory design patterns, as well as a graph/node data structure to represent the game world with different locations with adjacent location nodes.

GameImage

Installation Guide

1. Install Chocolatey with PowerShell.exe

Install Chocolatey

@"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command "[System.Net.ServicePointManager]::SecurityProtocol = 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin"

2. Run the Makefile

Run the Makefile in root/build directory or run the make command from the project root directory:

g++ src/*.cpp -o game.exe -g -Wall -Wno-missing-braces -Iinclude -Llib -lraylib -opengl32 -lgdi32 -lwinmm -lmingw32

3. Run the game executable

Once the Make command has been run successfully, there should be a pengl32.exe application ready to run in the projects root directory.

PenglExampleImage

Features

  • Implementation of Raylib graphics library (no game engine used).
  • Implementation of different software design patterns in C++. This includes the state, composite, component, command and factory design patterns.
  • Graph and node data structures to represent the game world with different locations. Locations contain a list of adjacent location nodes in which players can travel to.
  • Player inventory system using vector data structure.
  • Basic axis-aligned bounding box collision detection.
  • Audio using Raylib.

License

MIT

About

Custom game project showcasing the implementation of different software design patterns and data structures built in C++. This includes the state, composite, component, command and factory design patterns, as well as a graph/node data structure to represent the game world with different locations with adjacent location nodes.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published