Lesson 3.11: Adding Quests to Locations

Quests are a core concept of any roleplaying game. Various people send our player off on quests to kill some monsters, return with items for potions, retrieve the secret stone, and so much more. These provide some of the motivations for our heroes to adventure. Then when the player completes the quests, they may get … Continue reading Lesson 3.11: Adding Quests to Locations

Lesson 3.8: Simple Monster Combat

Now that we have the pieces in place, we are going to allow our players to fight these terrible monsters that are terrorizing the village. The initial combat simulation will be simple: the player will fight one monster at a time.attacks with weapons will always succeed.damage is rolled randomly based on the selected weapon and … Continue reading Lesson 3.8: Simple Monster Combat

Lesson 3.7: Displaying Game Messages

As the player interacts with the game world (including combat), we need to display messages in the game screen: combat messages, damage done to creatures, healing, and more. We are going to do this by having the GameSession view model expose the Messages property. The Messages property is then data bound to the UI. DisplayMessage … Continue reading Lesson 3.7: Displaying Game Messages

Lesson 3.3: Build Inventory System

Starting with a simple inventory item list was a good way to being thinking about this problem and building the user experience to show a player's inventory. However, exposing the list directly and allowing all callers to edit the list can lead to a lot of duplicate code editing that list, and builds more interdependencies … Continue reading Lesson 3.3: Build Inventory System

Lesson 3.2: Initial Player Inventory

Our first attempt at providing player inventory will be a simple one -- and we will expand upon it as we build out the game engine. For this initial system, we are going to use a simple list in the Player class that holds the player's items. using System.Collections.Generic; namespace SimpleRPG.Game.Engine.Models { public class Player … Continue reading Lesson 3.2: Initial Player Inventory

Lesson 2.10: Moving in the Game World

Showing the player's location is the first step, but we also need to provide the ability to move around our game world. We're going to build some controls and event handlers that move the player between adjacent locations in the world. To begin we're going to create a new view model class to assist with … Continue reading Lesson 2.10: Moving in the Game World