Playthrough Trailer

Images

Tech & Tools

  • C++ 17 for building the Game Engine
  • SDL2 for abstracting game input and rendering
  • Javascript for building the Game Level Editor
  • Gameplay

    The goal of the game is to collect as many coins as you can and reach the red flag! However, you must do this while avoiding enemy characters. If you get hit by an enemy you will lose one life. Be careful you only have 3 lives! To move your character you can use WASD or the arrow keys, with w, up, and space bar being used to jump. To move forward while you jump hit the left/right arrow or A/D as you press spacebar. You can also kill an enemy character by jumping on top of it, however we do not condone violence.

    Special Feautre

    The special feature in our game is a reverse-parallax! Reverse-Parallax is a scrolling technique in which the background image moves slowly in comparision to the foreground images. This creates an illusion of the game level floating above the background scene.

    Code Architecture

    The following docs below are generated through ‘Doxygen’ and gives you an overview of the game code base and architecture of the Game Engine. Architecture Docs

    Post Mortem

    Making this game has been a learning process for everyone, if we had more time we could have done a lot more.

    One of our biggest struggles was refactoring the code to use the Component Pattern. We underestimated how long and tedious it would be, and that delayed the process of everything else that needed to be done, which left us short on time. If we could we would have liked to spend more time fine tuning the physics component. We also could have made child classes from game entity like main player, NPCs, collectable item, just to have more separation of data types because at the moment we have game entity containing a lot of attributes that may not be neccessary for all game entities.

    Besides that it would have been nice if we could have implemented more features. For example having a 2 player option or making the character experience different effects from consuming different items like being able to temporarily fly after consuming a feather or moving faster after consuming a potion. Another fun idea would have been adding a character creator portion of the game where the user can choose different outfits or colors for the dino.

    Installing and Running the Game

    Installing the game

    Install the following frameworks

  • SDL2
  • SDL_ttf
  • SDL_mixer
  • SDL_image
  • Download and Extract the following ZIP file to a folder. Game.zip

  • After Extracting open the terminal and run the following command inside of the Game folder python build.py
  • The above steps would result in binary file being created in the name of Game in the bin folder
  • Running the game

  • From the root directory type the following command ./bin/game
  • Entire Project including Documentation: download project files

    Binary for Mac OS: download binary file