Press "Enter" to skip to content

Open Source C# RPG: 001 – Project introduction

I started a new project on GitHub to build a highly-configurable, single-player RPG in C#. I released it under the MIT license, so you can pretty much do whatever you want with the source code.

Project location

You can get the source code from here:

Project look

Since I’m not a “graphics guy”, I’m going to keep the appearance of the game simple.

It will be use 2-dimensional, overhead view without any animation (other than re-drawing your character when it moves to a new location).

Project overview

The solution currently has two desktop WPF applications. One for playing the game, the second for managing the XML files that will hold the information about the locations, game items, monsters, etc.

In the future, I may also create another project with a web UI.

The game data will be stored in XML files, since I don’t know what database you might have available (if you have one at all). If enough people are interested, I may make some changes to let you save the game data to a database. But that’s not a high priority for now.

Project management

I’m looking for a web-based project management tool to keep track of the status of each feature, allow people to submit requests for features, etc. Once I find one, I’ll post about it on the site here.

Pull requests

With GitHub, you can pull down the source code to the project, make changes locally, and request to push your changes back into the project (so other people will have your changes when they download the source code).

I’m open to letting you submit changes. However, so far, I’ve only used GitHub for my personal projects. So, it might take a little while for me to figure out how to accept (and verify) changes.

Update frequency

I plan to post at least once a week with the updates to the project. However, since I am moving back to the US in the beginning of June, I may miss a few weeks as I find an apartment, go to job interviews, etc.

If you want to receive an e-mail whenever there is an update, please sign up to the mailing list below.



  1. Levelonehuman
    Levelonehuman June 4, 2015

    This is excellent work! I’m working as a Junior Developer (new to the industry) and as such, still learning a great deal about the ins and outs of development (particularly C#/.Net). I’ve always been a big gamer and decided to start working on my own game to help teach myself a few things, and then I ran into your tutorial on building a simple RPG.

    This helped me tremendously, both in understanding some parts about the syntax that I didn’t quite understand, and especially with thinking of the bigger picture in terms of what different parts might be necessary to accomplish a given task, and what impact that might have on code that’s already been written. Syntax is one thing (generally easy enough to Google), but I think your tutorial did an excellent job of discussing the WHY behind what needs to be done.

    I’ve also read your list of “10 books to become a great programmer” and have recommended my director add some of them to our library. In my decidedly limited experience, I feel like ‘anybody’ can write out a bit of code that performs task x, but making it elegant, maintanable, and easy to understand is a skill in and of itself. I think you did an excellent job of that on the RPG tutorial, and I’ve started digging through this new code as well. I definitely plan to use it, or at least reference it, in my own little side project.

    I look forward to seeing new updates to this, and thanks again for what you do! It’s been a huge help.

    • Scott Lilly
      Scott Lilly June 18, 2015

      Thanks. I just finished moving (and started a new job), so I should be back to working on this game next week.

Leave a Reply

Your email address will not be published. Required fields are marked *