Aditya Dinesh

Game Programmer

Crystal (Text Based Adventure) 


Crystal is a text based adventure developed using C++ based on another text based adventure named Zork and Pokemon. In this game you start as a hero named ‘Jack’ who is set out on an adventure to rescue his sister ‘Maria’ from the evil ‘Arceus’. You start from your home and explore in different directions searching for the legendary elemental crystals which will help you defeat Arceus. Each crystal is protected by a powerful beast which is also weak to one of the other crystals. This was a solo project made using C++, C# and Visual Studio.  


You begin your adventure with an empty backpack but as you explore you can collect different items and weapons along the way. When you die you lose all your items at the area you died and start over from ‘Home’ with nothing. At specific locations you will encounter enemies against whom you must battle to progress further. These enemies have a weakness to one item (which you need to figure out from clues) and by default you can always punch an enemy if you are out of items.

Each crystal (Topaz, Emerald, Sapphire, Ruby, Diamond and Amethyst) are protected by beasts who have immense power. Each of these beasts have a weakness to one of the 6 crystals. Sapphire and Amethyst are special crystals as they are needed to access specific areas in the game.

Input Commands/ Actions :-

  1. Look around: – Gives a brief description of the area you are in along with the possible directions in which you can go.
  1. Go <direction>: – Go in the specified direction that the player enters. Can’t go in the direction which doesn’t exist or require specific items to go through.
  1. Pick <item>: – Pick the item that you specify if it’s present in the current area.
  1. Inventory check: – Displays the list of items in your backpack.
  1. Help me: – Displays the list of commands the player can enter to interact with the game.
  1. Attack <item/punch> {only in Battle Mode}: – Attacks with the specified item/punch. Only applicable in battle mode. Also, can’t use attack with an item which are present in your backpack


Crystal Room Generation Tool

This tool was made using C# for ease of creating new rooms and also edit data of an already generated room. This tool saves the room data in JSON file which is used in the actual game. You can add basic details like the name of the room, description, id, directions where it can go and which room will it lead to, accessibility conditions, items and enemies. Additional security checks have also been added so that the user doesn’t enter data in the wrong format and enter data in mandatory fields

Crystal Analytics Tool

This tool was made using C# for analysing player data. This data is retrieved from the actual gameplay data stored in a database externally. It primarily focuses on 4 game data which is :

Actions used : The number of times a player has used an action (input commands).
Items picked : The number of times a player has picked up an item.
User Played : The number of times the user has played the game.
Hero Deaths : The number of times the player has died.