A cross-platform C++ game based on the D20 System, using SDL
C++ Objective-C C
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
fonts
images
levels
music
.editorconfig
COPYRIGHTS.txt
Config.h
Dice.cpp
Dice.h
EquipScreen.cpp
EquipScreen.h
Game.cpp
Graphics.cpp
Graphics.h
Inventory.cpp
Inventory.h
Items.cpp
Items.h
LICENSE.txt
MainGame.cpp
MainGame.h
MapEditor.cpp
MapEditor.h
Money.cpp
Money.h
README.md
SDLMain.h
SDLMain.m
Screen.cpp
Screen.h
SelectionScreen.cpp
SelectionScreen.h
ShopScreen.cpp
ShopScreen.h
Sprites.cpp
Sprites.h
startScreen.cpp
startScreen.h
utilities.cpp
utilities.h

README.md

D20 Game

A cross-platform C++ game based on the D20 System from Dungeons and Dragons.

Gameplay Screenshot

Introduction

This project started as a university school project by Patrick McFern and Christopher Karpyszyn in 2007. The project assignment asked that we implement the D20 rules in a turn-based RPG using C++. The rest was up to us.

Despite the hundreds of hours it took to get this project together, the code sat on a dusty hard drive for years. In 2015, we decided to open source as much of the project as we could as it benefits no one being hidden out of sight. More about licensing below.

We're putting this code into the wild. Feel free to fork it, remix it and make it your own. We had a lot of fun assembling this project and we hope it inspires you.

Libraries

The code depends on the following libraries:

Project Status

The code was recently revived in order to compile against the C++11 standard. It has been tested on OSX 10.9 and Windows 7, and should generally work on any platform supported by SDL 1.2.

Here's some of the known issues at this time:

Dependence on console window output

The console window output details some of the mechanics of the game during gameplay. In particular, the outcome of combat with AI characters are only shown here. This was a requirement for the original project and has not yet been improved. In the future, the console output should be moved into the graphical portion of the game.

OSX support

The game will build and run under OSX, but there are some known issues.

  • No console window. Combat outcome is hidden from the player.
  • Map editor does not save changes.

Licensing

This project uses media which is not open sourced. Thankfully, the C++ code is our own property and we've made that available under the MIT license.

Please read COPYRIGHTS.txt and LICENSE.txt for a detailed overview of the licensing.