Quest/Mission Sustem

Hello everyone i hope someone got an answer for my question, i know its a simple thing but i just want to make sure i take the right path with this system.

Currently i am working on a small open world game and i need help with a Mission, in most games its called Dungeons but i dont know whats the general name for it so researching it was hard.

Basic Concept:
Player walks to an NPC and a dialogue comes up showing the Difficulty and level Recruitment and Reward of this Mission. If they Press cancel it will close the Dialogue and if they press accept a loading screen will come up and they will be teleported to the Level of that mission. Once they complete the Mission ( Eliminate all AI, Collect the Missing Items and Give them to AI at the end of the map) a Door will appear and once they walk in it another Dialogue will appear and they will collect their reward and press Done then a loading screen will come up and they will be teleported back to the Mission NPC in the Open world

You can find such simple system in World Of Warcraft and Free Realms and etc.

Simple Explanation would really help.

Hi BootaMan,

At the highest level, it sounds like you’ll need to use OpenLevel Node for changing levels and the ‘GameInstance’ for storing data between levels.

Diving into a asset pack systems could be like “jumping in at the deep end” But there is a free pack Easy Quests that will atleast serve as an example for how some of your ideas could be executed.

Good Luck!

Thanks for the Reply, My main issue is when the Dungeon is done, i want the player to return to the exact position they were in, in the open world near the dungeon npc

You’re welcome.

So there’s a variable type called a ‘Transform’ - this is a vector (location), rotation, and scale (keep scale at 1 in this case) all rolled into one.

I’d set a “PositionToReturnToInOpenWorld” Transform in the ‘Game Instance’(or just a vector variable if you don’t care about what direction/rotation they are facing upon return)

Then when returning to the world, use the value that you saved in the game instance to position your player.

1 Like