Quest Icons and Preview

This page will go through the set-up to get Quests icons show up on the Region Map

Overview

In first case, I'm talking about ThatWelshOne_'s Modern Quest System Plugin.

The Quest Icons are displayed on the Quest Mode on the Region Map.

Make sure the SHOW_QUEST_ICON setting is set to true or the Switch ID you set for it is ON.

This will also make it possible to Preview these Quests. Which button is needed to show the Quest Preview is set with the SHOW_QUEST_BUTTON setting.

There are a few more settings for the Quest Preview which are listed and explained here.

Now to make a Quest display an Icon for it, you'll need to edit the 004_Quest_Data.rb file (of the Modern Quest Plugin). If you haven't set up any Quests for your game yet, then you should probably do that first. (Follow the instructions that come with the MQS (Moder Quest System) plugin to know how.)


Example 1

Let's take a look at the Quest1 Data that comes by default with the Quest Plugin:

Quest1 = {
  :ID => "1",
  :Name => "Introductions",
  :QuestGiver => "Little Boy",
  :Stage1 => "Look for clues.",
  :Location1 => "Lappet Town",
  :QuestDescription => "Some wild Pokémon stole a little boy's favourite toy. Find those troublemakers and help him get it back.",
  :RewardString => "Something shiny!"
}

To make this Quest show an Icon (when the Quest is active) on the Region map, we only need to add where to display the Icon for this Quest:

  • RegionID

  • X Position

  • Y Position

  • Custom Quest Icon (optional)

We add this in following format

:Map => [RegionID, X Position, Y Position]

The edited Data for Quest1 would now look like this:

Quest1 = {
  :ID => "1",
  :Name => "Introductions",
  :QuestGiver => "Little Boy",
  :Stage1 => "Look for clues.",
  :Location1 => "Lappet Town",
  :Map => [0, 13, 12]
  :QuestDescription => "Some wild Pokémon stole a little boy's favourite toy. Find those troublemakers and help him get it back.",
  :RewardString => "Something shiny!"
}

This will make appear an Icon on Region0 on Position X 13 and Position Y 12. If we look in the townmap.txt PBS file, these coordinates will be Lappet Town.

Result in Game when Quest 1 is Active:

Quest 1 active and shown on the Map.

On the screenshot you might notice that it is saying "C: View Quest" in the Button Preview Box on the Top Right. This is because I have -FL-'s Set the Controls Screen Plugin installed. If you don't have installed this Plugin, it'll say "USE: View Quest" by default or the Input Key you set for viewing a Quest's Information set by the QUEST_PREVIEW_BUTTON Setting.

Now when we press the button that we've set to open the quest Preview, we get this result:

Quest 1 Preview shown on the Map.

Example 2

Let's take a look at the Quest2 Data that comes by default with the Quest Plugin:

Quest2 = {
  :ID => "2",
  :Name => "Introductions",
  :QuestGiver => "Little Boy",
  :Stage1 => "Look for clues.",
  :Stage2 => "Follow the trail.",
  :Stage3 => "Catch the troublemakers!",
  :Location1 => "Somewhere deep into Lappet Town",
  :Location2 => "Viridian Forest",
  :Location3 => "Route 3",
  :StageLabel1 => "1",
  :StageLabel2 => "2",
  :QuestDescription => "Some wild Pokémon stole a little boy's favourite toy. Find those troublemakers and help him get it back.",
  :RewardString => "Something shiny!"
}

This Quest Data is an extansion of Example 1, it includes multiple Stages and Locations.

Now when we want to assign a Quest Icon for each Stage and make it display that Icon on a different location for each Stage, we can do as following:

Quest2 = {
  :ID => "2",
  :Name => "Introductions",
  :QuestGiver => "Little Boy",
  :Stage1 => "Look for clues.",
  :Stage2 => "Follow the trail.",
  :Stage3 => "Catch the troublemakers!",
  :Location1 => "Somewhere deep into Lappet Town",
  :Location2 => "Viridian Forest",
  :Location3 => "Route 3",
  :Map1 => [0, 13, 12, "Purple"],
  :Map2 => [0, 13, 11, "Green"],
  :Map3 => [0, 15,  6, "Orange"],
  :StageLabel1 => "1",
  :StageLabel2 => "2",
  :QuestDescription => "Some wild Pokémon stole a little boy's favourite toy. Find those troublemakers and help him get it back.",
  :RewardString => "Something shiny!"
}

The number tells the script for which Stage this Map Position should be used to display the Icon.

We added an icon "Purple" for Stage 1, "Green" for Stage 2 and "Orange" for Stage 3 after the Map Positions of each Stage. The actual name of the image is "mapQuestPurple.png" for Stage 1, "mapQuestGreen.png" for Stage 2 and "mapQuestOrange.png" for Stage 3.

The Icons are located in:

  • Graphics > Pictures > RegionMap > Icons > Quest (for v20.1)

  • Graphics > UI > Town Map > Icons > Quest (for 21.1)

Quest Icons
  • If you don't specify an Icon, it'll use the default "mapQuest.png" Icon.

  • You can name the icon anything you want but it needs to start with "mapQuest" or the script will not be able to find it.

Result in Game for Stage 1:

Quest 2 Stage 1 active and shown on the Map.

Previewing Stage 1:

Quest 2 Stage 1 Preview shown on the Map.

Result in Game for Stage 2:

Quest 2 Stage 2 active and shown on the Map.

Previewing Stage 2:

Quest 2 Stage 2 Preview shown on the Map.

Result in Game for Stage 3:

Quest 2 Stage 3 active and shown on the Map.

Previewing Stage 3:

Quest 2 Stage 3 Preview shown on the Map.

Example 3

Let's take a look at the Quest6 Data that comes by default with the Quest Plugin:

Quest6 = {
  :ID => "6",
  :Name => "The journey begins",
  :QuestGiver => "Professor Oak",
  :Stage1 => "Deliver the parcel to the Pokémon Mart in Viridian City.",
  :Stage2 => "Return to the Professor.",
  :Location1 => "Viridian City",
  :Location2 => "nil",
  :QuestDescription => "The Professor has entrusted me with an important delivery for the Viridian City Pokémon Mart. This is my first task, best not mess it up!",
  :RewardString => "nil"
}

This Quest has just like in Example 2 more than 1 Stage. It only serves as an example, so it doesn't need to make any sense but we can assign here 1 Map position for both stages.

The Data would then look like this:

Quest6 = {
  :ID => "6",
  :Name => "The journey begins",
  :QuestGiver => "Professor Oak",
  :Stage1 => "Deliver the parcel to the Pokémon Mart in Viridian City.",
  :Stage2 => "Return to the Professor.",
  :Location1 => "Viridian City",
  :Location2 => "nil",
  :Map1 => [1, 13, 16],
  :QuestDescription => "The Professor has entrusted me with an important delivery for the Viridian City Pokémon Mart. This is my first task, best not mess it up!",
  :RewardString => "nil"
}

There's no number in :Map, this means that this Map Position will be used for both stages.

Result in Game for Stage 1:

Quest 6 Stage 1 active and shown on the Map.

Previewing Stage 1:

Quest 6 Stage 1 Preview shown on the Map.

Result in Game for Stage 2:

Quest 6 Stage 2 not shown on the Map.

Previewing Stage 2 is not possible as there was no map position given for that Quest Stage.


Example 4

Let's take a look at the Quest8 Date that comes by default with the Quest Plugin:

Quest8 = {
  :ID => "8",
  :Name => "These boots were made for walking",
  :QuestGiver => "Musician #1",
  :Stage1 => "Listen to the musician's, uhh, music.",
  :Stage2 => "Find the source of the power outage.",
  :Location1 => "nil",
  :Location2 => "Celadon City Sewers",
  :QuestDescription => "A musician was feeling down because he thinks no one likes his music. I should help him drum up some business."
}

You can also only put :Map2. This would mean that only Stage 2 will show a Quest Icon on the Region Map and Stage 1 will not.

Quest8 = {
  :ID => "8",
  :Name => "These boots were made for walking",
  :QuestGiver => "Musician #1",
  :Stage1 => "Listen to the musician's, uhh, music.",
  :Stage2 => "Find the source of the power outage.",
  :Location1 => "nil",
  :Location2 => "Celadon City Sewers",
  :Map2 => [0, 13, 10]
  :QuestDescription => "A musician was feeling down because he thinks no one likes his music. I should help him drum up some business."
}

Result in Game for Stage 1:

Quest 8 Stage 1 not shown on the Map.

Previewing Stage 1 is not possible as there was no map position given for that Quest Stage.

Result in Game for Stage 2:

Quest 8 Stage 2 active and shown on the Map.

Previewing Stage 2:

Quest 8 Stage 2 Preview shown on the Map.

You don't need to add a Map Location for all Quests, you can for example only do this for Main or Story Quests

Last updated