Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #==============================================================================
- # Quest Journal
- # Version: 2.1a
- # Author: modern algebra (rmrk.net)
- # Date: May 11, 2011
- #++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- # Description:
- #
- # This script provides a graphical interface for showing quest progress. It
- # is objective based, meaning that you choose when to reveal objectives and
- # you can set it so that they show up as complete or failed. That said, this
- # script does not build quests for you; it is only a supplementary scene for
- # showing them. As such, you need to event all of the quests yourself and
- # update quest progress via script call. Therefore, pay close attention to
- # the instructions both here and in the EDITABLE REGIONS.
- #++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- # Instructions:
- #
- # As with the previous version, all of the configuration is done in the
- # QuestData module. While it is not necessary, it is recommended that you
- # separate the configuration module from the rest of the script by cutting
- # and pasting it into its own section (as you will see if you have the demo).
- # If you wish to do that, you must cut everything from the first line down to
- # the final end of the module. The first lines of the body script should be
- # the equals bar right above # ** Game_Quest. Again, that is only to make
- # things neater and has no functional relevance; it's up to you.
- #
- # That said, you can go to EDITABLE REGION A at line 242 to configure the
- # default settings for the script. This ranges from the functional settings
- # at line 244 (such as whether access is from the menu or the map or which
- # categories are shown in the scene) to the graphical settings at line 267
- # (such as which icons to use for categories and what names should be given
- # to various headings). All of these will work fine without modification, of
- # course, but even if do not want to configure now, you should familiarize
- # yourself with all the settings so that you can make the best use of your
- # script. I have included tons of settings so that you can make the Quest
- # Journal unique for your game, even down to the order in which each section
- # of the info window is drawn. A brief description of each setting is
- # included either to the left or directly above each constant.
- #
- # EDITABLE REGION B is the real heart of the script however - this is where
- # you fill in all of the details for the quests. Read the instructions at
- # line 389 very carefully!
- #
- # You can activate and access a quest with this code in the Script event
- # command:
- #
- # (quest (quest_id))
- # quest_id : the integer ID of the quest you want to access
- #
- # From that, you can access or alter any relevant data stored in the quest,
- # like name, description, objectives, etc... Example:
- # (quest (1)).name = "Rest in Pieces"
- #
- # More relevantly, when it comes to controlling the progress of quests the
- # following codes can be used in a Script event command. The arguments are
- # the same for each command so I only explain them once. All of them are
- # pretty self-explanatory and using any of them will activate the quest
- # (unless you are using the MANUAL REVEAL setting at line 263).
- #
- # reveal_objective (quest_id, objective_id_1, ..., objective_id_n)
- # quest_id : the integer ID of the quest you want to access.
- # objective_id_1, ..., objective_id_n : a list of the IDs of the
- # objectives you want to operate on. It can be as few as one or as
- # many as all of them.
- # Will show the listed objectives in the Quest's information
- # conceal_objective (quest_id, objective_id_1, ..., objective_id_n)
- # Will hide the listed objectives in the Quest's information
- # complete_objective (quest_id, objective_id_1, ..., objective_id_n)
- # Changes the colour of the listed objectives to the completed colour.
- # The quest is completed once all prime objectives are.
- # uncomplete_objective (quest_id, objective_id_1, ..., objective_id_n)
- # Changes the status of the listed complete objectives back to active
- # fail_objective (quest_id, objective_id_1, ..., objective_id_n)
- # Changes the colour of the listed objectives to the failed colour.
- # The quest is failed once one prime objective is.
- # unfail_objective (quest_id, objective_id_1, ..., objective_id_n)
- # Changes the status of the listed failed objectives back to active
- # change_reward_status (quest_id, value)
- # value : either true or false. If excluded, defaults to true.
- # Totally optional, but this is just a personal switch which you can
- # turn on when the reward is given. You can then make it a condition
- # so you don't reward the players more than once. (see line 146)
- #
- # EXAMPLES:
- # reveal_objective (1, 0)
- # This would reveal the first objective of the quest with ID 1
- # complete_objective (6, 2, 3)
- # This would complete the third & fourth objectives of the quest with ID 6
- # change_reward_status (8)
- # This would set the reward switch to true for the quest with ID 8.
- #
- # Another new feature is the ability to set rewards that will show up in the
- # menu (see EDITABLE REGION B). In addition to that, you can use the following
- # code to automatically distribute the specified rewards for a quest if the
- # quest is complete and no reward has yet been given:
- #
- # give_quest_reward (quest_id)
- # quest_id : the ID of the quest whose rewards you want to distribute
- #
- # Of course, it can only distribute the rewards of type 0-4 (items, weapons,
- # armors, gold, or exp). It won't distribute rewards you specify by string.
- # To that end though, you can also use this code in a conditional branch and
- # it will be satisfied only if it distributes the rewards. Thus, if you
- # wanted to add some special rewards or do things like that, you can just put
- # that in the branch for when it is true.
- #
- # Other codes for the Script event command that can be useful are:
- #
- # reset_quest (quest_id)
- # quest_id : the integer ID of the quest you want to access.
- # This will re-initialize the quest, meaning all quest progress to
- # date will be lost
- # remove_quest (quest_id)
- # Deactivates the quest and resets it
- # conceal_quest (quest_id)
- # Deactivates the quest so it won't show up in the scene, but progress
- # is saved
- # reveal_quest (quest_id)
- # Activates or reactivates the quest. This command is NECESSARY if
- # MANUAL_REVEAL at line 263 is true or it has previously been
- # concealed. Otherwise, it is sufficient just to operate on the quest
- # change_quest_access (:symbol)
- # :symbol must be one of six options (include the colon!):
- # :disable - prevents access to the quest scene (greys out in menu)
- # :enable - enables access to the quest scene
- # :disable_menu - this removes the quest option from the menu
- # :enable_menu - this adds the quest option to the menu
- # :disable_map - this prevents access by key from the map
- # :enable_map - this allows access by key to the map
- # change_quest_background ("bg_filename", bg_opacity)
- # bg_filename : the filename of the picture for the background in
- # the Pictures folder
- # bg_opacity : the opacity of the background graphic. If excluded,
- # this defaults to the value of the setting at line 269.
- # change_quest_windows ("windowskin_filename", window_opacity)
- # windowskin_filename : the name of the Window graphic in System folder
- # window_opacity : the opacity of the windows. If excluded, this
- # defaults to the value of the setting at line 271.
- #
- # Also, there are a few codes that can be used in the Script command of a
- # conditional branch. I note here that all of these are optional. You could
- # use switch and variable checks and monitor quest progress solely through
- # events. However, these commands make it a little easier and they are:
- #
- # quest_revealed? (quest_id)
- # quest_id : the integer ID of the quest you want to access.
- # This is satisfied if the quest has been activated.
- # objective_revealed? (quest_id, objective_id_1, ... objective_id_n)
- # objective_id_1, ..., objective_id_n : a list of the IDs of the
- # objectives you want to operate on. It can be as few as one or as
- # many as all of them.
- # This is satisfied if the listed objectives have been revealed
- # quest_complete? (quest_id)
- # This is satisfied if all prime objectives of the quest are complete
- # objective_complete? (quest_id, objective_id_1, ... objective_id_n)
- # This is satisfied if all the listed objectives have been completed
- # quest_failed? (quest_id)
- # This is satisfied if any prime objective of the quest is failed
- # objective_failed? (quest_id, objective_id_1, ... objective_id_n)
- # This is satisfied if all the listed objectives have been failed
- # quest_rewarded? (quest_id)
- # This is satisfied if you have changed the reward status to true.
- #
- # If you want to call the Quest scene from an event, you use the following
- # code in a call script:
- #
- # call_quest
- # call_quest (quest_id)
- # quest_id : ID of the quest you want to open the scene on
- #
- # If you do not specify a quest_id (line 168) then it will simply open the
- # scene as it would normally. If you do specify a quest_id (line 169) then it
- # will open the scene on that quest so long as it has been revealed and it is
- # normally accessible through the quest menu.
- #
- # It will only give the rewards which are specified by the array. It will
- # obviously not distribute any rewards you identified by String. It will do
- # nothing if the reward_given boolean is true or if the quest is not yet
- # complete. As such, you can also use this in a conditional branch and it
- # will return true only if it gives the reward.
- #
- # Finally, a new feature in version 2.0 is the ability to have quest shops
- # where the player can pay money to have a quest revealed. Setting it up is a
- # little more complicated as it is all done in the script call and so you need
- # to be careful not to spill over lines. Essentially, to identify the
- # purchable quest you need to create an array like this:
- # [quest_ID, cost, [o1, o2, ..., on], switch_ID]
- # quest_ID : ID of the quest available for purchase
- # cost : the price to buy the quest
- # [o1, ..., on] : an array of the objectives revealed when the quest
- # is purchased. If you exclude this, all objectives are revealed.
- # switch_ID : this is the ID of a switch. When that switch is ON
- # the quest will be available for purchase. Otherwise it won't. If
- # excluded, the quest will always be available for sale at this shop
- # You need one of those for every quest available at the shop and you put
- # them all in another array and you pass it to the following code:
- #
- # call_quest_shop (quest_array, "ShopName")
- # quest_array : the array of the above elements
- # "ShopName" : the name of the shop. Allows you to differentiate
- # quest givers (defaults to the value at line 357 if excluded).
- #
- # All of that is further complicated by the line length limit in the script
- # command. In order to avoid this, it is better to create the array before
- # calling the shop. See the example for how this can be done.
- #
- # EXAMPLE:
- # a = []
- # a.push ([1, 50, [0]], [4, 80, 1])
- # a.push ([3, 100], [5, 75, [0,1], 1])
- # call_quest_shop (a, "Fighter's Guild")
- #
- # The first line creates the array. The second line adds two quests to it: the
- # quest with ID 1 will cost 50 Gold and, if purchased, will reveal the first
- # objective; the quest with ID 4 will cost 80 Gold but will only show up if
- # the switch with ID 1 is ON. It will reveal all objectives when purchased.
- # The third line adds two more quests: the quest with ID 3 will cost 100 Gold
- # and all objectives will be revealed when it is purchased; the quest with ID
- # 5 will cost 75 gold but will only show up when switch 1 is ON. If purchased,
- # it will reveal the first two objectives.
- #++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- # Compatibility:
- #
- # This script automatically adds itself to the default menu if you turn that
- # feature on. It will also automatically add itself to the menu if you use
- # Dargor's Custom Commands, YEM Main Menu Melody, Full Status Custom Menu
- # System, or Phantasia-esque Custom Menu System. It must be below them though!
- #==============================================================================
- $imported = {} unless $imported
- $imported["QuestJournal2.1"] = true
- #==============================================================================
- # *** Quest Data
- #++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- # This is the configuration module for the Quest Journal
- #==============================================================================
- module QuestData
- #\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
- # EDITABLE REGION A
- #||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
- # Functional Configuration
- # CATEGORIES - this is an array describing which categories are available for
- # the Quest Journal and the order in which they appear. The options are
- # :all, :active, :complete, and :failed. You can also create custom
- # categories which include only quests that are specifically added. To do
- # so, just make up a symbol name (:name, so like :primary or :secondary or
- # :companion or etc...) and add it to the array. Then, go to line 273 and
- # associate an icon with the SAME symbol. Then, when you are setting up the
- # quests at line 388, all you need to do is add that SAME symbol to the
- # custom_categories attribute
- CATEGORIES = [:all, :active, :complete, :failed, :side]
- # SORT_TYPE - This is how the quests are sorted. This value can be :id (sort
- # by ID), :revealed (sort by order they were revealed), :alphabet (sort
- # alphabetically by name), :level (sort by level) or :none. You can add
- SORT_TYPE = :revealed # reverse to any to flip. (IE. :revealedreverse)
- MENU_ACCESS = true # Can the script be accessed through the menu?
- MENU_INDEX = 3 # If above is true, where in the command window?
- KEY_ACCESS = false # Can the quest log be accessed by a key
- MAPKEY_BUTTON = Input::L # If above is true, which button?
- # MANUAL_REVEAL - whether you need to manually reveal every quest with the
- # reveal_quest command or whether they are automatically revealed as soon as
- # they are operated on (I.e. when you reveal, complete, etc.. objectives)
- MANUAL_REVEAL = true
- # Graphical Configuration
- BG_PICTURE = "" # The filename of the background picture
- BG_OPACITY = 255 # The opacity of the background picture, if used
- WINDOWS_SKIN = "Window" # The skin of the windows in the Quest Scene
- WINDOWS_OPACITY = 200 # The opacity of the windows in the Quest scene
- LIST_WIDTH = 184 # The width, in pixels, of the left-hand windows
- # ICONS - here is where you set up what icons are used for various things in
- # the script, like categories, gold, exp, or even for the menu option if you
- # are using one of the supported CMSes. If you have added custom categories
- # at line 245, then you should also add a line for each of the new categories
- # under the same format. Don't forget the comma at the end!
- ICONS = {
- :all => 0, # If 0, combines :active, :complete, and :failed
- :active => 68, # Icon representing active quest list
- :complete => 359, # Icon representing complete quest list
- :failed => 360, # Icon representing failed quest list
- :side => 68, # Icon representing side quest list
- :menu => 0, # Quests icon if using one of the supported CMSes
- :gold => 361, # Icon for gold if used as a reward
- :exp => 0, # Icon for exp if used as a reward
- :level => 377, # Icon for level. Simply prints integer out if 0
- :client => 322, # Icon for client
- :location => 72, # Icon for Location
- }
- # For the following colours, you can use either an integer, in which case it
- # takes its colour from that index of the windowskin palette, or you can use
- # an array in the form [Red, Green, Blue, Alpha] (Alpha can be excluded)
- COLOURS = {
- :active => 0, # The colour of a quest that is active
- :complete => [0, 255, 0], # The colour of a quest that is complete
- :failed => [255, 0, 0], # The colour of a quest that is failed
- :label => 0, # The colour for the label
- :content => 0, # The colour for the main content of the window
- :subtitle => 0 # The colour for the subtitles
- }
- VOCAB_QUESTS = "Missions" # What you want Quests to be called (eg. 'Missions')
- # LABEL_FONTNAME - The name of the font used for the label window. If "" or
- # [], then it just uses the default font.
- LABEL_FONTNAME = ""
- # LABEL_FONTSIZE - The size of the text in the label window. When 0, it will
- # be automatically fitted to the window size (since it is dynamic)
- LABEL_FONTSIZE = 0
- LABEL_BOLD = true # Whether the label should be bold
- # Info Window
- # INFO_LAYOUT - this allows you to choose the vertical order in which each
- # section of the quest information is drawn. The sections are - :banner,
- # :name, :client, :level, :location, :description, :objectives, & :rewards.
- # If you put two in an array, then they will be drawn at the same position.
- INFO_LAYOUT = [:banner, :name, [:client, :level], :location, :description,
- :objectives, :rewards]
- # NAME_FONTNAME - The name of the font used for the quest name in the info
- # window. If "" or [], then it just uses the default font.
- NAME_FONTNAME = ""
- NAME_FONTSIZE = 20 # Size of the font used for the name
- NAME_BOLD = true # Whether the Name
- # CONTENT_FONTNAME - The name of the font used for the actual content of the
- # description, objectives. If "" or [], then it just uses the default font.
- CONTENT_FONTNAME = ""
- # SUBTITLE FONTNAME - The font used for the subtitles in the info window
- # (The subtitles are: Description, Objectives, Rewards)
- SUBTITLE_FONTNAME = ""
- SUBTITLE_FONTSIZE = 20 # Size of the subtitles in quest info window
- SUBTITLE_BOLD = true # Whether to embolden the subtitles
- VOCAB_CLIENT = "Employer:"
- # CLIENT_WIDTH - The horizontal space available for client. If 0, it will
- # take a little over half of the screen
- CLIENT_WIDTH = 0
- VOCAB_LOCATION = "Location:"# The text used to identify the location
- # LOCATION_WIDTH - The horizontal space available for location. If 0, it will
- # take a little over half of the screen
- LOCATION_WIDTH = 0
- LEVEL_SPACE = 16 # The spacing between each level icon, if using icon
- VOCAB_DESCRIPTION = "Description" # The word to identify the description text
- DESC_FONTSIZE = 20 # The size of the font used in the description
- VOCAB_OBJECTIVES = "Objectives" # The word to identify the objectives list
- OBJECTIVE_BULLET = "●" # The character used for listing objectives
- OBJ_FONTSIZE = 20 # The size of the font used for objectives
- VOCAB_REWARDS = "Reward" # The word to identify the Rewards list
- REWARD_BULLET = "" # The character used for listing rewards
- REWARD_FONTSIZE = 20 # The size of the font for each reward
- ITEM_NUMBER_PREFACE = "x" # When reward amount > 1, this prefaces it.
- VOCAB_EXP = "EXP" # The word used for experience, if used in rewards
- DRAW_VOCAB_GOLD = false # Whether to draw the Gold vocab or only use icon
- # VOCAB_HELP_GENERAL - The phrase in the help window when the list is active
- VOCAB_HELP_GENERAL = "Use the horizontal directional keys to switch categories"
- # VOCAB_HELP_SELECTED - The phrase in the help window when info is active
- VOCAB_HELP_SELECTED = "Use the vertical directional keys to scroll up and down"
- # Alignment of text in the Help Window - 0 => Left; 1 => Centre; 2 => Right
- HELP_ALIGNMENT = 1
- JUSTIFY_PARAGRAPHS = false# Whether Description/objectives are justified.
- # Quest Shop Configuration
- VOCAB_PURCHASE = "Mission List" # What you want the shop to be called
- PURCHASE_USE_GOLD_ICON = true # Whether to use gold icon in Quest Shop
- PURCHASE_INFO_LAYOUT = [:name, [:client, :level], :location, :description,
- :rewards] # Same as line 310, but for the Shop
- PURCHASE_SE = ["Shop", 80] # The sound played when a quest is bought
- PURCHASE_LIST_WIDTH = 224 # The list width for the purchase scene
- #||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
- # END EDITABLE REGION A
- #////////////////////////////////////////////////////////////////////////////
- ICONS.default = 0
- COLOURS.default = 0
- #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- # * Quest Data
- #````````````````````````````````````````````````````````````````````````````
- # Returns skeleton data for the quest
- #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- def self.quest_data (id)
- # Set class variables to corresponding arguments
- banner = ""
- name = ""
- description = ""
- client = ""
- location = ""
- objectives = []
- prime = nil
- rewards = []
- level = 0
- common_event = 0
- icon_index = 0
- custom_categories = []
- case id
- #\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
- # EDITABLE REGION B
- #````````````````````````````````````````````````````````````````````````
- # To set up a quest, first identify it with an ID - this can be anything
- # as long as it is not the same as another quest, but it is important to
- # remember this ID as it is the only way to access your quest.
- # In any case, the format for setting up a quest is:
- #
- # when <quest_id> # Give the quest an ID number
- # banner = "filename"
- # name = "quest_name"
- # client = "person who gave the quest"
- # location = "place to go for the quest"
- # description = "quest_description"
- # objectives[0] = "first_objective"
- # ...
- # objectives[n] = "(n - 1)th objective"
- # prime = [objective_id, ..., objective_id]
- # rewards = [ [type, id, amount], ..., [type, id], "text" ]
- # level = integer
- # common_event = id
- # icon_index = quest_icon_index
- # custom_categories.push (:symbol_1, ..., :symbol_n)
- #
- # Each of these values have an importance.
- # banner is the name of a picture that can be shown at the top
- # name is the name of the quest
- # description is a small blurb explaining the overall goal of the quest
- # client is the name of the person who gave the quest
- # location is the place to go to to complete the quest
- # objective[0..n] are short-term goals that lead to the overall goal
- # primes are which objectives need to be complete before the quest is
- # considered to be complete
- # rewards will list the items you suggest. Note that there is no
- # automatic gain - it simply lists them in the scene - you will need
- # to give them out. The format is simple, [type, id, amount] where
- # type identifies whether it is an item (0), weapon (1), armor (2),
- # gold (3), or exp (4). id is the item ID (or the amount of gold or
- # exp). amount only applies if it is an item, weapon or armor and it
- # is how much of the item is given. If excluded, it won't draw it at
- # all but if it is included, it will draw even if only 1. You can
- # also just put a string ("text") and it will write that out.
- # level is the difficulty of the quest
- # common_event is the ID of a common event which is immediately called
- # when the quest is first completed.
- # icon_index is the icon that represents the quest
- # custom_categories is a new feature which allows you to define which
- # quests belong in special categories. All you need to do is add the
- # appropriate symbol (which corresponds to an included category at
- # line 245) and it will be added. Then, when the player scrolls over
- # to that category, this quest, if revealed, will be there.
- #
- # Note that any of the above values can be omitted without throwing an
- # error, but for the quest to work properly you should at least set the
- # name, description, and objectives. If you do omit these, the default
- # values are:
- #
- # banner = ""
- # name = "??????"
- # description = "??????????"
- # client = ""
- # location = ""
- # objectives = []
- # prime = [all objectives]
- # rewards = []
- # level = 0
- # common_event = 0
- # icon_index = 0
- # custom_categories = []
- #
- # If you do want to require that all objectives must be satisfied before
- # the quest is complete, then do not bother defining it. Otherwise, be
- # sure to set it. If you are using the Special Codes Formatter, recall
- # that all codes must be prefaced with \\, not just \.
- #||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
- when 1 # Quest 1
- name = "Prison Break"
- description = "The Empire has imprisoned the people of Cyana. It's your job to free them."
- client = "Guildmaster"
- location = "Cyana Prison"
- objectives[0] = "Find the prison cell."
- objectives[1] = "Free the prisoners."
- objectives[2] = "Return to the guild."
- rewards = [ [3, 1500] ] # 1500 Gold
- level = 1
- icon_index = 59
- when 2
- name = "Hunting"
- description = "There is a soldier in the Mist Forest. Hunt him down and kill him."
- client = "Guildmaster"
- location = "Mist Forest"
- objectives[0] = "Buy a boat to cross the river."
- objectives[1] = "Navigate your way through the Mist Forest."
- objectives[2] = "Kill the soldier."
- rewards = [ [3, 2000] ]
- level = 2
- icon_index = 11
- when 3
- name = "Bombs Away"
- description = "The mountain pass between Amethyne and Five Islands is blocked. Clear the way."
- client = "Guildmaster"
- location = "Amethyne Region"
- objectives[0] = "Meet with Flare in Emerdala."
- objectives[1] = "Speak with King Rello."
- objectives[2] = "Retrieve Tolian Powder from the peak of the Amethyne Mountains."
- objectives[3] = "Bring the powder to the Amethyne North Inn."
- objectives[4] = "Clear the Mountain Pass."
- rewards = [ [3, 4000] ]
- level = 3
- icon_index = 43
- when 4
- name = "Vengeance"
- description = "Gareth is a General in Kilano's military. He must be eliminated."
- client = "Guildmaster"
- location = "Five Islands Region"
- objectives[0] = "Enter Gareth's Castle."
- objectives[1] = "Search the Castle and meet with Shadow."
- objectives[2] = "Kill all the guards in the Library."
- objectives[3] = "Meet Shadow in the Library."
- objectives[4] = "Kill Gareth."
- rewards = [ [3, 5000] ]
- level = 5
- icon_index = 11
- when 5
- name = "The Test"
- description = "Find the Training Facility in Diamo."
- client = "Guildmaster"
- location = "Diamo Region"
- objectives[0] = "Cross the Ice Fields."
- objectives[1] = "Enter the fortress."
- objectives[2] = "Meet with the Guardians."
- objectives[3] = "Sleep."
- objectives[4] = "Meet the Master in the main hall."
- objectives[5] = "Meet the Master in the courtyard."
- objectives[6] = "Find a book about ghosts in the library."
- objectives[7] = "Return to the Master."
- objectives[8] = "Train against a practice dummy."
- objectives[9] = "Meet the Master in the main hall."
- objectives[10] = "Train with Shadow."
- objectives[11] = "Find Shadow."
- objectives[12] = "Sleep."
- rewards = []
- level = 5
- icon_index = 11
- # ASSASSINATION QUESTS
- when 155
- name = "Assassination"
- description = "Kill the target hiding in Emerdala."
- client = "Sanguine"
- location = "Emerdala"
- objectives[0] = "Kill the target."
- objectives[1] = "Return to Sanguine."
- rewards = [ ("???") ]
- icon_index = 11
- custom_categories.push (:side)
- when 156
- name = "Assassination"
- description = "Kill the target hiding in the Mist Forest."
- client = "Sanguine"
- location = "Mist Forest"
- objectives[0] = "Kill the target."
- objectives[1] = "Return to Sanguine."
- rewards = [ ("???") ]
- icon_index = 11
- custom_categories.push (:side)
- when 157
- name = "Assassination"
- description = "Kill the target hiding in Amethyne."
- client = "Sanguine"
- location = "Amethyne"
- objectives[0] = "Kill the target."
- objectives[1] = "Return to Sanguine."
- rewards = [ ("???") ]
- icon_index = 11
- custom_categories.push (:side)
- when 158
- name = "Assassination"
- description = "Kill the target hiding in the Amethyne Mountains."
- client = "Sanguine"
- location = "Amethyne Mountains"
- objectives[0] = "Kill the target."
- objectives[1] = "Return to Sanguine."
- rewards = [ ("???") ]
- icon_index = 11
- custom_categories.push (:side)
- when 159
- name = "Assassination"
- description = "Kill the target hiding in Rubana."
- client = "Sanguine"
- location = "Rubana"
- objectives[0] = "Kill the target."
- objectives[1] = "Return to Sanguine."
- rewards = [ ("???") ]
- icon_index = 11
- custom_categories.push (:side)
- when 160
- name = "Assassination"
- description = "Kill the target hiding in the Floodgates."
- client = "Sanguine"
- location = "Floodgates"
- objectives[0] = "Kill the target."
- objectives[1] = "Return to Sanguine."
- rewards = [ ("???") ]
- icon_index = 11
- custom_categories.push (:side)
- when 161
- name = "Assassination"
- description = "Kill the target hiding in the Flow Tower."
- client = "Sanguine"
- location = "Flow Tower"
- objectives[0] = "Kill the target."
- objectives[1] = "Return to Sanguine."
- rewards = [ ("???") ]
- icon_index = 11
- custom_categories.push (:side)
- when 162
- name = "Assassination"
- description = "Kill the target hiding in Topale."
- client = "Sanguine"
- location = "Topale"
- objectives[0] = "Kill the target."
- objectives[1] = "Return to Sanguine."
- rewards = [ ("???") ]
- icon_index = 11
- custom_categories.push (:side)
- when 163
- name = "Assassination"
- description = "Kill the target hiding in Diamo."
- client = "Sanguine"
- location = "Diamo"
- objectives[0] = "Kill the target."
- objectives[1] = "Return to Sanguine."
- rewards = [ ("???") ]
- icon_index = 11
- custom_categories.push (:side)
- when 164
- name = "Assassination"
- description = "Kill the target hiding in the Snow Caves."
- client = "Sanguine"
- location = "Snow Caves"
- objectives[0] = "Kill the target."
- objectives[1] = "Return to Sanguine."
- rewards = [ ("???") ]
- icon_index = 11
- custom_categories.push (:side)
- when 165
- name = "Assassination"
- description = "Kill the target hiding in Silvein."
- client = "Sanguine"
- location = "Silvein"
- objectives[0] = "Kill the target."
- objectives[1] = "Return to Sanguine."
- rewards = [ ("???") ]
- icon_index = 11
- custom_categories.push (:side)
- when 166
- name = "Assassination"
- description = "Kill the target hiding in the Silver Mines."
- client = "Sanguine"
- location = "Silvein"
- objectives[0] = "Kill the target."
- objectives[1] = "Return to Sanguine."
- rewards = [ ("???") ]
- icon_index = 11
- custom_categories.push (:side)
- when 167
- name = "Assassination"
- description = "Kill the target hiding in Goldare."
- client = "Sanguine"
- location = "Goldare"
- objectives[0] = "Kill the target."
- objectives[1] = "Return to Sanguine."
- rewards = [ ("???") ]
- icon_index = 11
- custom_categories.push (:side)
- when 168
- name = "Assassination"
- description = "Kill the target hiding in the Magma Caverns."
- client = "Sanguine"
- location = "Magma Caverns"
- objectives[0] = "Kill the target."
- objectives[1] = "Return to Sanguine."
- rewards = [ ("???") ]
- icon_index = 11
- custom_categories.push (:side)
- when 169
- name = "Assassination"
- description = "Kill the target hiding in Sapphane."
- client = "Sanguine"
- location = "Sapphane"
- objectives[0] = "Kill the target."
- objectives[1] = "Return to Sanguine."
- rewards = [ ("???") ]
- icon_index = 11
- custom_categories.push (:side)
- # LOCK QUESTS
- when 170
- name = "Infiltration"
- description = "Obtain the item locked away in Emerdala."
- client = "Numbers"
- location = "Emerdala"
- objectives[0] = "Obtain the item."
- objectives[1] = "Return to Numbers."
- rewards = [ ("???") ]
- icon_index = 94
- custom_categories.push (:side)
- when 171
- name = "Infiltration"
- description = "Obtain the item locked away in the Mist Forest."
- client = "Numbers"
- location = "Mist Forest"
- objectives[0] = "Obtain the item."
- objectives[1] = "Return to Numbers."
- rewards = [ ("???") ]
- icon_index = 94
- custom_categories.push (:side)
- when 172
- name = "Infiltration"
- description = "Obtain the item locked away in Amethyne."
- client = "Numbers"
- location = "Amethyne"
- objectives[0] = "Obtain the item."
- objectives[1] = "Return to Numbers."
- rewards = [ ("???") ]
- icon_index = 94
- custom_categories.push (:side)
- when 173
- name = "Infiltration"
- description = "Obtain the item locked away in the Amethyne Mountains."
- client = "Numbers"
- location = "Amethyne Mountains"
- objectives[0] = "Obtain the item."
- objectives[1] = "Return to Numbers."
- rewards = [ ("???") ]
- icon_index = 94
- custom_categories.push (:side)
- when 174
- name = "Infiltration"
- description = "Obtain the item locked away in Rubana."
- client = "Numbers"
- location = "Rubana"
- objectives[0] = "Obtain the item."
- objectives[1] = "Return to Numbers."
- rewards = [ ("???") ]
- icon_index = 94
- custom_categories.push (:side)
- when 175
- name = "Infiltration"
- description = "Obtain the item locked away in the Floodgates."
- client = "Numbers"
- location = "Floodgates"
- objectives[0] = "Obtain the item."
- objectives[1] = "Return to Numbers."
- rewards = [ ("???") ]
- icon_index = 94
- custom_categories.push (:side)
- when 176
- name = "Infiltration"
- description = "Obtain the item locked away in the Flow Tower."
- client = "Numbers"
- location = "Flow Tower"
- objectives[0] = "Obtain the item."
- objectives[1] = "Return to Numbers."
- rewards = [ ("???") ]
- icon_index = 94
- custom_categories.push (:side)
- when 177
- name = "Infiltration"
- description = "Obtain the item locked away in Topale."
- client = "Numbers"
- location = "Topale"
- objectives[0] = "Obtain the item."
- objectives[1] = "Return to Numbers."
- rewards = [ ("???") ]
- icon_index = 94
- custom_categories.push (:side)
- when 178
- name = "Infiltration"
- description = "Obtain the item locked away in Diamo."
- client = "Numbers"
- location = "Diamo"
- objectives[0] = "Obtain the item."
- objectives[1] = "Return to Numbers."
- rewards = [ ("???") ]
- icon_index = 94
- custom_categories.push (:side)
- when 179
- name = "Infiltration"
- description = "Obtain the item locked away in the Snow Caves."
- client = "Numbers"
- location = "Snow Caves"
- objectives[0] = "Obtain the item."
- objectives[1] = "Return to Numbers."
- rewards = [ ("???") ]
- icon_index = 94
- custom_categories.push (:side)
- when 180
- name = "Infiltration"
- description = "Obtain the item locked away in Silvein."
- client = "Numbers"
- location = "Silvein"
- objectives[0] = "Obtain the item."
- objectives[1] = "Return to Numbers."
- rewards = [ ("???") ]
- icon_index = 94
- custom_categories.push (:side)
- when 181
- name = "Infiltration"
- description = "Obtain the item locked away in the Silver Mines."
- client = "Numbers"
- location = "Silver Mines"
- objectives[0] = "Obtain the item."
- objectives[1] = "Return to Numbers."
- rewards = [ ("???") ]
- icon_index = 94
- custom_categories.push (:side)
- when 182
- name = "Infiltration"
- description = "Obtain the item locked away in Goldare."
- client = "Numbers"
- location = "Goldare"
- objectives[0] = "Obtain the item."
- objectives[1] = "Return to Numbers."
- rewards = [ ("???") ]
- icon_index = 94
- custom_categories.push (:side)
- when 183
- name = "Infiltration"
- description = "Obtain the item locked away in the Magma Caverns."
- client = "Numbers"
- location = "Magma Caverns"
- objectives[0] = "Obtain the item."
- objectives[1] = "Return to Numbers."
- rewards = [ ("???") ]
- icon_index = 94
- custom_categories.push (:side)
- when 184
- name = "Infiltration"
- description = "Obtain the item locked away in Sapphane."
- client = "Numbers"
- location = "Sapphane"
- objectives[0] = "Obtain the item."
- objectives[1] = "Return to Numbers."
- rewards = [ ("???") ]
- icon_index = 94
- custom_categories.push (:side)
- # INGERDIENT QUESTS
- when 185
- name = "Plant Hunting"
- description = "Find the ingredient somewhere in Emerdala."
- client = "The Alchemist"
- location = "Emerdala"
- objectives[0] = "Find the ingredient."
- objectives[1] = "Return to the Alchemist."
- rewards = [ ("???") ]
- icon_index = 74
- custom_categories.push (:side)
- when 186
- name = "Plant Hunting"
- description = "Find the ingredient somewhere in the Mist Forest."
- client = "The Alchemist"
- location = "Mist Forest"
- objectives[0] = "Find the ingredient."
- objectives[1] = "Return to the Alchemist."
- rewards = [ ("???") ]
- icon_index = 74
- custom_categories.push (:side)
- when 187
- name = "Plant Hunting"
- description = "Find the ingredient somewhere in Amethyne."
- client = "The Alchemist"
- location = "Amethyne"
- objectives[0] = "Find the ingredient."
- objectives[1] = "Return to the Alchemist."
- rewards = [ ("???") ]
- icon_index = 74
- custom_categories.push (:side)
- when 188
- name = "Plant Hunting"
- description = "Find the ingredient somewhere in the Amethyne Mountains."
- client = "The Alchemist"
- location = "Amethyne Mountains"
- objectives[0] = "Find the ingredient."
- objectives[1] = "Return to the Alchemist."
- rewards = [ ("???") ]
- icon_index = 74
- custom_categories.push (:side)
- when 189
- name = "Plant Hunting"
- description = "Find the ingredient somewhere in Rubana."
- client = "The Alchemist"
- location = "Rubana"
- objectives[0] = "Find the ingredient."
- objectives[1] = "Return to the Alchemist."
- rewards = [ ("???") ]
- icon_index = 74
- custom_categories.push (:side)
- when 190
- name = "Plant Hunting"
- description = "Find the ingredient somewhere in the Floodgates."
- client = "The Alchemist"
- location = "Floodgates"
- objectives[0] = "Find the ingredient."
- objectives[1] = "Return to the Alchemist."
- rewards = [ ("???") ]
- icon_index = 74
- custom_categories.push (:side)
- when 191
- name = "Plant Hunting"
- description = "Find the ingredient somewhere in the Flow Tower."
- client = "The Alchemist"
- location = "Flow Tower"
- objectives[0] = "Find the ingredient."
- objectives[1] = "Return to the Alchemist."
- rewards = [ ("???") ]
- icon_index = 74
- custom_categories.push (:side)
- when 192
- name = "Plant Hunting"
- description = "Find the ingredient somewhere in Topale."
- client = "The Alchemist"
- location = "Topale"
- objectives[0] = "Find the ingredient."
- objectives[1] = "Return to the Alchemist."
- rewards = [ ("???") ]
- icon_index = 74
- custom_categories.push (:side)
- when 193
- name = "Plant Hunting"
- description = "Find the ingredient somewhere in Diamo."
- client = "The Alchemist"
- location = "Diamo"
- objectives[0] = "Find the ingredient."
- objectives[1] = "Return to the Alchemist."
- rewards = [ ("???") ]
- icon_index = 74
- custom_categories.push (:side)
- when 194
- name = "Plant Hunting"
- description = "Find the ingredient somewhere in the Snow Caves."
- client = "The Alchemist"
- location = "Snow Caves"
- objectives[0] = "Find the ingredient."
- objectives[1] = "Return to the Alchemist."
- rewards = [ ("???") ]
- icon_index = 74
- custom_categories.push (:side)
- when 195
- name = "Plant Hunting"
- description = "Find the ingredient somewhere in Silvein."
- client = "The Alchemist"
- location = "Silvein"
- objectives[0] = "Find the ingredient."
- objectives[1] = "Return to the Alchemist."
- rewards = [ ("???") ]
- icon_index = 74
- custom_categories.push (:side)
- when 196
- name = "Plant Hunting"
- description = "Find the ingredient somewhere in the Silver Mines."
- client = "The Alchemist"
- location = "Silver Mines"
- objectives[0] = "Find the ingredient."
- objectives[1] = "Return to the Alchemist."
- rewards = [ ("???") ]
- icon_index = 74
- custom_categories.push (:side)
- when 197
- name = "Plant Hunting"
- description = "Find the ingredient somewhere in Goldare."
- client = "The Alchemist"
- location = "Goldare"
- objectives[0] = "Find the ingredient."
- objectives[1] = "Return to the Alchemist."
- rewards = [ ("???") ]
- icon_index = 74
- custom_categories.push (:side)
- when 198
- name = "Plant Hunting"
- description = "Find the ingredient somewhere in the Magma Caverns."
- client = "The Alchemist"
- location = "Magma Caverns"
- objectives[0] = "Find the ingredient."
- objectives[1] = "Return to the Alchemist."
- rewards = [ ("???") ]
- icon_index = 74
- custom_categories.push (:side)
- when 199
- name = "Plant Hunting"
- description = "Find the ingredient somewhere in Sapphane."
- client = "The Alchemist"
- location = "Sapphane"
- objectives[0] = "Find the ingredient."
- objectives[1] = "Return to the Alchemist."
- rewards = [ ("???") ]
- icon_index = 74
- custom_categories.push (:side)
- # when 100
- # name = "Example"
- # banner = ""
- # description = "Example"
- # client = "Example"
- # location = "Example"
- # objectives[0] = ""
- # objectives[1] = ""
- # objectives[2] = ""
- # objectives[3] = ""
- # prime = [0,1,2,3]
- # rewards = [ [3, 250] ]
- # level = 1
- # common_event = 0
- # icon_index = 11
- # custom_categories = []
- #||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
- # END EDITABLE REGION B
- #////////////////////////////////////////////////////////////////////////
- end
- unless prime
- prime = []
- objectives.each_index { |i| prime.push (i) }
- end
- return banner, name, description, client, location, objectives, prime,
- rewards, level, common_event, icon_index, custom_categories
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement