This demo implements several quests using the quest engine. The purpose is both to show how to use the engine, and to show how easy it is to make quests that are more interesting than you usually find even in professional games. I highly recommend you play through the demo before reading the code, as it is a fun little game! You can talk to NPCs by clicking on them, and you click on monsters to attack them. Combat is simplified in this demo. Click on the enemy and they die, just like that. If only it worked that way in the actual games! Each quest is kept in it's own code file. The quests are: Blubber Bladder quest: The simplest form of quest: Kill 3 blubbers and return their bladders to the quest giver. Three unique things about this quest: 1) It is randomly assigned to an NPC. If you are eligible for the quest, there is a 50% chance that any NPC will offer it to you. 2) Blubbers only drop their bladders if you have the quest. In reality the quest object gives the bladder to you, not the Blubber mob. 3) If you attempt to talk to a different NPC while carrying a bladder, they will refuse to interact with you because of the smell. This demonstrates how powerful the engine is: literally every NPC in your game can be involved in a quest, without having any quest-specific code programmed into them. Fireworks quest: A typical FedEx quest, but with a twist. The Fireworks Sorcerer sends you on a series of errands to get packages for him from other NPCs. Each time, the other NPC is chosen at random, showing how you can make your quests very dynamic. When the quest has been done four times, the fireworks expert puts on a fireworks display. Dagger quest: A multi-step FedEx quest in which you have to get items for several people in order to get a dagger.