Introduction

Concept

An infinite dungeon explorer where you try to delve as deep as you can and collect items and equipment to improve your character.

What will you learn to create from following this series?:

  • World generation (tilemaps)
  • Reading tile configuration from json
  • Player, NPCs and Pathfinding
  • Field of view rendering + map exploration
  • Basic melee combat + basic chase AI
  • Inventory system and consumable items
  • Storing and loading game data

Setup

To setup the project we can follow the steps from the “basic project setup” article I wrote some time ago.

The IDE and lang version used for this series

  • Visual Studio 2022
  • C# 9

I will be using the following nuget packages for this roguelike series:

  • SadConsole v10.5.0
  • Monogame DesktopGL v3.8.2.1105
  • GoRogue v3.0.0-beta09 (pre-release package)

This setup should leave you with a basic console with some random input:

Lets also add a Constants.cs script to the root of the project which will just contain the games title for now.
We will add more content to this later in the series.

/// <summary>
/// Easy access to all const game information
/// </summary>
internal static class Constants
{
	public const string GameTitle = "Roguelike";
}

And in our Program.cs main method lets adjust our WindowTitle with the new const we defined:

Settings.WindowTitle = Constants.GameTitle;

Checkout the next article to continue with the series!

You can find all the code for this series down in the repository here:
https://github.com/Ven0maus/Code2DTutorials/tree/Tutorials/Roguelike

Leave a comment

Design a site like this with WordPress.com
Get started