• Home
  • API reference
  • Source code

Welcome to OSRlib.NET!

OSRlib.NET is a .NET Core class library written in C# that provides an API for turn-based role-playing games (RPGs) in the Old School Renaissance (OSR) style.

It's designed for use as the core rules engine of a computer role-playing game (CRPG) in the Dungeons & Dragons Basic/Expert (or B/X) flavor, and lends itself well to Bard's Tale-style turn-based game play.

Add your own UI to interact with the OSRlib.NET API and you have yourself a turn-based RPG.

Object model

The object model of OSRlib is intended to be simple and intuitive. The following sections describe the primary classes and their relationships.

Being

A Being is any living entity that can initiate interaction with another entity within the game world, or can be interacted with by another Being. Player characters (PCs), non-player characters (NPCs), and monsters are all Beings.

OSRlib Being diagram

Party

A Party is a collection of Beings. Two Party objects are added to an Encounter, whose Beings can then battle.

OSRlib Party diagram

Adventure, Dungeon, & Encounter

An Adventure consists of one or more Dungeons. Each Dungeon is comprised of one or more Encounters.

An Encounter is typically populated with a monster Party. Adding a player Party to the Encounter starts the Encounter (begins the battle).

OSRlib Adventure diagram

  • Improve this Doc
Back to top Generated by DocFX