Guest User

CONFIG

a guest
Dec 31st, 2013
150
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #==============================================================================
  2. # Quest Journal
  3. # Version: 2.1a
  4. # Author: modern algebra (rmrk.net)
  5. # Date: May 11, 2011
  6. #++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  7. # Description:
  8. #
  9. # This script provides a graphical interface for showing quest progress. It
  10. # is objective based, meaning that you choose when to reveal objectives and
  11. # you can set it so that they show up as complete or failed. That said, this
  12. # script does not build quests for you; it is only a supplementary scene for
  13. # showing them. As such, you need to event all of the quests yourself and
  14. # update quest progress via script call. Therefore, pay close attention to
  15. # the instructions both here and in the EDITABLE REGIONS.
  16. #++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  17. # Instructions:
  18. #
  19. # As with the previous version, all of the configuration is done in the
  20. # QuestData module. While it is not necessary, it is recommended that you
  21. # separate the configuration module from the rest of the script by cutting
  22. # and pasting it into its own section (as you will see if you have the demo).
  23. # If you wish to do that, you must cut everything from the first line down to
  24. # the final end of the module. The first lines of the body script should be
  25. # the equals bar right above # ** Game_Quest. Again, that is only to make
  26. # things neater and has no functional relevance; it's up to you.
  27. #
  28. # That said, you can go to EDITABLE REGION A at line 242 to configure the
  29. # default settings for the script. This ranges from the functional settings
  30. # at line 244 (such as whether access is from the menu or the map or which
  31. # categories are shown in the scene) to the graphical settings at line 267
  32. # (such as which icons to use for categories and what names should be given
  33. # to various headings). All of these will work fine without modification, of
  34. # course, but even if do not want to configure now, you should familiarize
  35. # yourself with all the settings so that you can make the best use of your
  36. # script. I have included tons of settings so that you can make the Quest
  37. # Journal unique for your game, even down to the order in which each section
  38. # of the info window is drawn. A brief description of each setting is
  39. # included either to the left or directly above each constant.
  40. #
  41. # EDITABLE REGION B is the real heart of the script however - this is where
  42. # you fill in all of the details for the quests. Read the instructions at
  43. # line 389 very carefully!
  44. #
  45. # You can activate and access a quest with this code in the Script event
  46. # command:
  47. #
  48. # (quest (quest_id))
  49. # quest_id : the integer ID of the quest you want to access
  50. #
  51. # From that, you can access or alter any relevant data stored in the quest,
  52. # like name, description, objectives, etc... Example:
  53. # (quest (1)).name = "Rest in Pieces"
  54. #
  55. # More relevantly, when it comes to controlling the progress of quests the
  56. # following codes can be used in a Script event command. The arguments are
  57. # the same for each command so I only explain them once. All of them are
  58. # pretty self-explanatory and using any of them will activate the quest
  59. # (unless you are using the MANUAL REVEAL setting at line 263).
  60. #
  61. # reveal_objective (quest_id, objective_id_1, ..., objective_id_n)
  62. # quest_id : the integer ID of the quest you want to access.
  63. # objective_id_1, ..., objective_id_n : a list of the IDs of the
  64. # objectives you want to operate on. It can be as few as one or as
  65. # many as all of them.
  66. # Will show the listed objectives in the Quest's information
  67. # conceal_objective (quest_id, objective_id_1, ..., objective_id_n)
  68. # Will hide the listed objectives in the Quest's information
  69. # complete_objective (quest_id, objective_id_1, ..., objective_id_n)
  70. # Changes the colour of the listed objectives to the completed colour.
  71. # The quest is completed once all prime objectives are.
  72. # uncomplete_objective (quest_id, objective_id_1, ..., objective_id_n)
  73. # Changes the status of the listed complete objectives back to active
  74. # fail_objective (quest_id, objective_id_1, ..., objective_id_n)
  75. # Changes the colour of the listed objectives to the failed colour.
  76. # The quest is failed once one prime objective is.
  77. # unfail_objective (quest_id, objective_id_1, ..., objective_id_n)
  78. # Changes the status of the listed failed objectives back to active
  79. # change_reward_status (quest_id, value)
  80. # value : either true or false. If excluded, defaults to true.
  81. # Totally optional, but this is just a personal switch which you can
  82. # turn on when the reward is given. You can then make it a condition
  83. # so you don't reward the players more than once. (see line 146)
  84. #
  85. # EXAMPLES:
  86. # reveal_objective (1, 0)
  87. # This would reveal the first objective of the quest with ID 1
  88. # complete_objective (6, 2, 3)
  89. # This would complete the third & fourth objectives of the quest with ID 6
  90. # change_reward_status (8)
  91. # This would set the reward switch to true for the quest with ID 8.
  92. #
  93. # Another new feature is the ability to set rewards that will show up in the
  94. # menu (see EDITABLE REGION B). In addition to that, you can use the following
  95. # code to automatically distribute the specified rewards for a quest if the
  96. # quest is complete and no reward has yet been given:
  97. #
  98. # give_quest_reward (quest_id)
  99. # quest_id : the ID of the quest whose rewards you want to distribute
  100. #
  101. # Of course, it can only distribute the rewards of type 0-4 (items, weapons,
  102. # armors, gold, or exp). It won't distribute rewards you specify by string.
  103. # To that end though, you can also use this code in a conditional branch and
  104. # it will be satisfied only if it distributes the rewards. Thus, if you
  105. # wanted to add some special rewards or do things like that, you can just put
  106. # that in the branch for when it is true.
  107. #
  108. # Other codes for the Script event command that can be useful are:
  109. #
  110. # reset_quest (quest_id)
  111. # quest_id : the integer ID of the quest you want to access.
  112. # This will re-initialize the quest, meaning all quest progress to
  113. # date will be lost
  114. # remove_quest (quest_id)
  115. # Deactivates the quest and resets it
  116. # conceal_quest (quest_id)
  117. # Deactivates the quest so it won't show up in the scene, but progress
  118. # is saved
  119. # reveal_quest (quest_id)
  120. # Activates or reactivates the quest. This command is NECESSARY if
  121. # MANUAL_REVEAL at line 263 is true or it has previously been
  122. # concealed. Otherwise, it is sufficient just to operate on the quest
  123. # change_quest_access (:symbol)
  124. # :symbol must be one of six options (include the colon!):
  125. # :disable - prevents access to the quest scene (greys out in menu)
  126. # :enable - enables access to the quest scene
  127. # :disable_menu - this removes the quest option from the menu
  128. # :enable_menu - this adds the quest option to the menu
  129. # :disable_map - this prevents access by key from the map
  130. # :enable_map - this allows access by key to the map
  131. # change_quest_background ("bg_filename", bg_opacity)
  132. # bg_filename : the filename of the picture for the background in
  133. # the Pictures folder
  134. # bg_opacity : the opacity of the background graphic. If excluded,
  135. # this defaults to the value of the setting at line 269.
  136. # change_quest_windows ("windowskin_filename", window_opacity)
  137. # windowskin_filename : the name of the Window graphic in System folder
  138. # window_opacity : the opacity of the windows. If excluded, this
  139. # defaults to the value of the setting at line 271.
  140. #
  141. # Also, there are a few codes that can be used in the Script command of a
  142. # conditional branch. I note here that all of these are optional. You could
  143. # use switch and variable checks and monitor quest progress solely through
  144. # events. However, these commands make it a little easier and they are:
  145. #
  146. # quest_revealed? (quest_id)
  147. # quest_id : the integer ID of the quest you want to access.
  148. # This is satisfied if the quest has been activated.
  149. # objective_revealed? (quest_id, objective_id_1, ... objective_id_n)
  150. # objective_id_1, ..., objective_id_n : a list of the IDs of the
  151. # objectives you want to operate on. It can be as few as one or as
  152. # many as all of them.
  153. # This is satisfied if the listed objectives have been revealed
  154. # quest_complete? (quest_id)
  155. # This is satisfied if all prime objectives of the quest are complete
  156. # objective_complete? (quest_id, objective_id_1, ... objective_id_n)
  157. # This is satisfied if all the listed objectives have been completed
  158. # quest_failed? (quest_id)
  159. # This is satisfied if any prime objective of the quest is failed
  160. # objective_failed? (quest_id, objective_id_1, ... objective_id_n)
  161. # This is satisfied if all the listed objectives have been failed
  162. # quest_rewarded? (quest_id)
  163. # This is satisfied if you have changed the reward status to true.
  164. #
  165. # If you want to call the Quest scene from an event, you use the following
  166. # code in a call script:
  167. #
  168. # call_quest
  169. # call_quest (quest_id)
  170. # quest_id : ID of the quest you want to open the scene on
  171. #
  172. # If you do not specify a quest_id (line 168) then it will simply open the
  173. # scene as it would normally. If you do specify a quest_id (line 169) then it
  174. # will open the scene on that quest so long as it has been revealed and it is
  175. # normally accessible through the quest menu.
  176. #
  177. # It will only give the rewards which are specified by the array. It will
  178. # obviously not distribute any rewards you identified by String. It will do
  179. # nothing if the reward_given boolean is true or if the quest is not yet
  180. # complete. As such, you can also use this in a conditional branch and it
  181. # will return true only if it gives the reward.
  182. #
  183. # Finally, a new feature in version 2.0 is the ability to have quest shops
  184. # where the player can pay money to have a quest revealed. Setting it up is a
  185. # little more complicated as it is all done in the script call and so you need
  186. # to be careful not to spill over lines. Essentially, to identify the
  187. # purchable quest you need to create an array like this:
  188. # [quest_ID, cost, [o1, o2, ..., on], switch_ID]
  189. # quest_ID : ID of the quest available for purchase
  190. # cost : the price to buy the quest
  191. # [o1, ..., on] : an array of the objectives revealed when the quest
  192. # is purchased. If you exclude this, all objectives are revealed.
  193. # switch_ID : this is the ID of a switch. When that switch is ON
  194. # the quest will be available for purchase. Otherwise it won't. If
  195. # excluded, the quest will always be available for sale at this shop
  196. # You need one of those for every quest available at the shop and you put
  197. # them all in another array and you pass it to the following code:
  198. #
  199. # call_quest_shop (quest_array, "ShopName")
  200. # quest_array : the array of the above elements
  201. # "ShopName" : the name of the shop. Allows you to differentiate
  202. # quest givers (defaults to the value at line 357 if excluded).
  203. #
  204. # All of that is further complicated by the line length limit in the script
  205. # command. In order to avoid this, it is better to create the array before
  206. # calling the shop. See the example for how this can be done.
  207. #
  208. # EXAMPLE:
  209. # a = []
  210. # a.push ([1, 50, [0]], [4, 80, 1])
  211. # a.push ([3, 100], [5, 75, [0,1], 1])
  212. # call_quest_shop (a, "Fighter's Guild")
  213. #
  214. # The first line creates the array. The second line adds two quests to it: the
  215. # quest with ID 1 will cost 50 Gold and, if purchased, will reveal the first
  216. # objective; the quest with ID 4 will cost 80 Gold but will only show up if
  217. # the switch with ID 1 is ON. It will reveal all objectives when purchased.
  218. # The third line adds two more quests: the quest with ID 3 will cost 100 Gold
  219. # and all objectives will be revealed when it is purchased; the quest with ID
  220. # 5 will cost 75 gold but will only show up when switch 1 is ON. If purchased,
  221. # it will reveal the first two objectives.
  222. #++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  223. # Compatibility:
  224. #
  225. # This script automatically adds itself to the default menu if you turn that
  226. # feature on. It will also automatically add itself to the menu if you use
  227. # Dargor's Custom Commands, YEM Main Menu Melody, Full Status Custom Menu
  228. # System, or Phantasia-esque Custom Menu System. It must be below them though!
  229. #==============================================================================
  230.  
  231. $imported = {} unless $imported
  232. $imported["QuestJournal2.1"] = true
  233.  
  234. #==============================================================================
  235. # *** Quest Data
  236. #++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  237. # This is the configuration module for the Quest Journal
  238. #==============================================================================
  239.  
  240. module QuestData
  241. #\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
  242. # EDITABLE REGION A
  243. #||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
  244. # Functional Configuration
  245. # CATEGORIES - this is an array describing which categories are available for
  246. # the Quest Journal and the order in which they appear. The options are
  247. # :all, :active, :complete, and :failed. You can also create custom
  248. # categories which include only quests that are specifically added. To do
  249. # so, just make up a symbol name (:name, so like :primary or :secondary or
  250. # :companion or etc...) and add it to the array. Then, go to line 273 and
  251. # associate an icon with the SAME symbol. Then, when you are setting up the
  252. # quests at line 388, all you need to do is add that SAME symbol to the
  253. # custom_categories attribute
  254. CATEGORIES = [:all, :active, :complete, :failed, :side]
  255. # SORT_TYPE - This is how the quests are sorted. This value can be :id (sort
  256. # by ID), :revealed (sort by order they were revealed), :alphabet (sort
  257. # alphabetically by name), :level (sort by level) or :none. You can add
  258. SORT_TYPE = :revealed # reverse to any to flip. (IE. :revealedreverse)
  259. MENU_ACCESS = true # Can the script be accessed through the menu?
  260. MENU_INDEX = 3 # If above is true, where in the command window?
  261. KEY_ACCESS = false # Can the quest log be accessed by a key
  262. MAPKEY_BUTTON = Input::L # If above is true, which button?
  263. # MANUAL_REVEAL - whether you need to manually reveal every quest with the
  264. # reveal_quest command or whether they are automatically revealed as soon as
  265. # they are operated on (I.e. when you reveal, complete, etc.. objectives)
  266. MANUAL_REVEAL = true
  267. # Graphical Configuration
  268. BG_PICTURE = "" # The filename of the background picture
  269. BG_OPACITY = 255 # The opacity of the background picture, if used
  270. WINDOWS_SKIN = "Window" # The skin of the windows in the Quest Scene
  271. WINDOWS_OPACITY = 200 # The opacity of the windows in the Quest scene
  272. LIST_WIDTH = 184 # The width, in pixels, of the left-hand windows
  273. # ICONS - here is where you set up what icons are used for various things in
  274. # the script, like categories, gold, exp, or even for the menu option if you
  275. # are using one of the supported CMSes. If you have added custom categories
  276. # at line 245, then you should also add a line for each of the new categories
  277. # under the same format. Don't forget the comma at the end!
  278. ICONS = {
  279. :all => 0, # If 0, combines :active, :complete, and :failed
  280. :active => 68, # Icon representing active quest list
  281. :complete => 359, # Icon representing complete quest list
  282. :failed => 360, # Icon representing failed quest list
  283. :side => 68, # Icon representing side quest list
  284. :menu => 0, # Quests icon if using one of the supported CMSes
  285. :gold => 361, # Icon for gold if used as a reward
  286. :exp => 0, # Icon for exp if used as a reward
  287. :level => 377, # Icon for level. Simply prints integer out if 0
  288. :client => 322, # Icon for client
  289. :location => 72, # Icon for Location
  290. }
  291. # For the following colours, you can use either an integer, in which case it
  292. # takes its colour from that index of the windowskin palette, or you can use
  293. # an array in the form [Red, Green, Blue, Alpha] (Alpha can be excluded)
  294. COLOURS = {
  295. :active => 0, # The colour of a quest that is active
  296. :complete => [0, 255, 0], # The colour of a quest that is complete
  297. :failed => [255, 0, 0], # The colour of a quest that is failed
  298. :label => 0, # The colour for the label
  299. :content => 0, # The colour for the main content of the window
  300. :subtitle => 0 # The colour for the subtitles
  301. }
  302. VOCAB_QUESTS = "Missions" # What you want Quests to be called (eg. 'Missions')
  303. # LABEL_FONTNAME - The name of the font used for the label window. If "" or
  304. # [], then it just uses the default font.
  305. LABEL_FONTNAME = ""
  306. # LABEL_FONTSIZE - The size of the text in the label window. When 0, it will
  307. # be automatically fitted to the window size (since it is dynamic)
  308. LABEL_FONTSIZE = 0
  309. LABEL_BOLD = true # Whether the label should be bold
  310. # Info Window
  311. # INFO_LAYOUT - this allows you to choose the vertical order in which each
  312. # section of the quest information is drawn. The sections are - :banner,
  313. # :name, :client, :level, :location, :description, :objectives, & :rewards.
  314. # If you put two in an array, then they will be drawn at the same position.
  315. INFO_LAYOUT = [:banner, :name, [:client, :level], :location, :description,
  316. :objectives, :rewards]
  317. # NAME_FONTNAME - The name of the font used for the quest name in the info
  318. # window. If "" or [], then it just uses the default font.
  319. NAME_FONTNAME = ""
  320. NAME_FONTSIZE = 20 # Size of the font used for the name
  321. NAME_BOLD = true # Whether the Name
  322. # CONTENT_FONTNAME - The name of the font used for the actual content of the
  323. # description, objectives. If "" or [], then it just uses the default font.
  324. CONTENT_FONTNAME = ""
  325. # SUBTITLE FONTNAME - The font used for the subtitles in the info window
  326. # (The subtitles are: Description, Objectives, Rewards)
  327. SUBTITLE_FONTNAME = ""
  328. SUBTITLE_FONTSIZE = 20 # Size of the subtitles in quest info window
  329. SUBTITLE_BOLD = true # Whether to embolden the subtitles
  330. VOCAB_CLIENT = "Employer:"
  331. # CLIENT_WIDTH - The horizontal space available for client. If 0, it will
  332. # take a little over half of the screen
  333. CLIENT_WIDTH = 0
  334. VOCAB_LOCATION = "Location:"# The text used to identify the location
  335. # LOCATION_WIDTH - The horizontal space available for location. If 0, it will
  336. # take a little over half of the screen
  337. LOCATION_WIDTH = 0
  338. LEVEL_SPACE = 16 # The spacing between each level icon, if using icon
  339. VOCAB_DESCRIPTION = "Description" # The word to identify the description text
  340. DESC_FONTSIZE = 20 # The size of the font used in the description
  341. VOCAB_OBJECTIVES = "Objectives" # The word to identify the objectives list
  342. OBJECTIVE_BULLET = "●" # The character used for listing objectives
  343. OBJ_FONTSIZE = 20 # The size of the font used for objectives
  344. VOCAB_REWARDS = "Reward" # The word to identify the Rewards list
  345. REWARD_BULLET = "" # The character used for listing rewards
  346. REWARD_FONTSIZE = 20 # The size of the font for each reward
  347. ITEM_NUMBER_PREFACE = "x" # When reward amount > 1, this prefaces it.
  348. VOCAB_EXP = "EXP" # The word used for experience, if used in rewards
  349. DRAW_VOCAB_GOLD = false # Whether to draw the Gold vocab or only use icon
  350. # VOCAB_HELP_GENERAL - The phrase in the help window when the list is active
  351. VOCAB_HELP_GENERAL = "Use the horizontal directional keys to switch categories"
  352. # VOCAB_HELP_SELECTED - The phrase in the help window when info is active
  353. VOCAB_HELP_SELECTED = "Use the vertical directional keys to scroll up and down"
  354. # Alignment of text in the Help Window - 0 => Left; 1 => Centre; 2 => Right
  355. HELP_ALIGNMENT = 1
  356. JUSTIFY_PARAGRAPHS = false# Whether Description/objectives are justified.
  357. # Quest Shop Configuration
  358. VOCAB_PURCHASE = "Mission List" # What you want the shop to be called
  359. PURCHASE_USE_GOLD_ICON = true # Whether to use gold icon in Quest Shop
  360. PURCHASE_INFO_LAYOUT = [:name, [:client, :level], :location, :description,
  361. :rewards] # Same as line 310, but for the Shop
  362. PURCHASE_SE = ["Shop", 80] # The sound played when a quest is bought
  363. PURCHASE_LIST_WIDTH = 224 # The list width for the purchase scene
  364. #||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
  365. # END EDITABLE REGION A
  366. #////////////////////////////////////////////////////////////////////////////
  367. ICONS.default = 0
  368. COLOURS.default = 0
  369. #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  370. # * Quest Data
  371. #````````````````````````````````````````````````````````````````````````````
  372. # Returns skeleton data for the quest
  373. #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  374. def self.quest_data (id)
  375. # Set class variables to corresponding arguments
  376. banner = ""
  377. name = ""
  378. description = ""
  379. client = ""
  380. location = ""
  381. objectives = []
  382. prime = nil
  383. rewards = []
  384. level = 0
  385. common_event = 0
  386. icon_index = 0
  387. custom_categories = []
  388. case id
  389. #\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
  390. # EDITABLE REGION B
  391. #````````````````````````````````````````````````````````````````````````
  392. # To set up a quest, first identify it with an ID - this can be anything
  393. # as long as it is not the same as another quest, but it is important to
  394. # remember this ID as it is the only way to access your quest.
  395. # In any case, the format for setting up a quest is:
  396. #
  397. # when <quest_id> # Give the quest an ID number
  398. # banner = "filename"
  399. # name = "quest_name"
  400. # client = "person who gave the quest"
  401. # location = "place to go for the quest"
  402. # description = "quest_description"
  403. # objectives[0] = "first_objective"
  404. # ...
  405. # objectives[n] = "(n - 1)th objective"
  406. # prime = [objective_id, ..., objective_id]
  407. # rewards = [ [type, id, amount], ..., [type, id], "text" ]
  408. # level = integer
  409. # common_event = id
  410. # icon_index = quest_icon_index
  411. # custom_categories.push (:symbol_1, ..., :symbol_n)
  412. #
  413. # Each of these values have an importance.
  414. # banner is the name of a picture that can be shown at the top
  415. # name is the name of the quest
  416. # description is a small blurb explaining the overall goal of the quest
  417. # client is the name of the person who gave the quest
  418. # location is the place to go to to complete the quest
  419. # objective[0..n] are short-term goals that lead to the overall goal
  420. # primes are which objectives need to be complete before the quest is
  421. # considered to be complete
  422. # rewards will list the items you suggest. Note that there is no
  423. # automatic gain - it simply lists them in the scene - you will need
  424. # to give them out. The format is simple, [type, id, amount] where
  425. # type identifies whether it is an item (0), weapon (1), armor (2),
  426. # gold (3), or exp (4). id is the item ID (or the amount of gold or
  427. # exp). amount only applies if it is an item, weapon or armor and it
  428. # is how much of the item is given. If excluded, it won't draw it at
  429. # all but if it is included, it will draw even if only 1. You can
  430. # also just put a string ("text") and it will write that out.
  431. # level is the difficulty of the quest
  432. # common_event is the ID of a common event which is immediately called
  433. # when the quest is first completed.
  434. # icon_index is the icon that represents the quest
  435. # custom_categories is a new feature which allows you to define which
  436. # quests belong in special categories. All you need to do is add the
  437. # appropriate symbol (which corresponds to an included category at
  438. # line 245) and it will be added. Then, when the player scrolls over
  439. # to that category, this quest, if revealed, will be there.
  440. #
  441. # Note that any of the above values can be omitted without throwing an
  442. # error, but for the quest to work properly you should at least set the
  443. # name, description, and objectives. If you do omit these, the default
  444. # values are:
  445. #
  446. # banner = ""
  447. # name = "??????"
  448. # description = "??????????"
  449. # client = ""
  450. # location = ""
  451. # objectives = []
  452. # prime = [all objectives]
  453. # rewards = []
  454. # level = 0
  455. # common_event = 0
  456. # icon_index = 0
  457. # custom_categories = []
  458. #
  459. # If you do want to require that all objectives must be satisfied before
  460. # the quest is complete, then do not bother defining it. Otherwise, be
  461. # sure to set it. If you are using the Special Codes Formatter, recall
  462. # that all codes must be prefaced with \\, not just \.
  463. #||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
  464. when 1 # Quest 1
  465. name = "Prison Break"
  466. description = "The Empire has imprisoned the people of Cyana. It's your job to free them."
  467. client = "Guildmaster"
  468. location = "Cyana Prison"
  469. objectives[0] = "Find the prison cell."
  470. objectives[1] = "Free the prisoners."
  471. objectives[2] = "Return to the guild."
  472. rewards = [ [3, 1500] ] # 1500 Gold
  473. level = 1
  474. icon_index = 59
  475. when 2
  476. name = "Hunting"
  477. description = "There is a soldier in the Mist Forest. Hunt him down and kill him."
  478. client = "Guildmaster"
  479. location = "Mist Forest"
  480. objectives[0] = "Buy a boat to cross the river."
  481. objectives[1] = "Navigate your way through the Mist Forest."
  482. objectives[2] = "Kill the soldier."
  483. rewards = [ [3, 2000] ]
  484. level = 2
  485. icon_index = 11
  486. when 3
  487. name = "Bombs Away"
  488. description = "The mountain pass between Amethyne and Five Islands is blocked. Clear the way."
  489. client = "Guildmaster"
  490. location = "Amethyne Region"
  491. objectives[0] = "Meet with Flare in Emerdala."
  492. objectives[1] = "Speak with King Rello."
  493. objectives[2] = "Retrieve Tolian Powder from the peak of the Amethyne Mountains."
  494. objectives[3] = "Bring the powder to the Amethyne North Inn."
  495. objectives[4] = "Clear the Mountain Pass."
  496. rewards = [ [3, 4000] ]
  497. level = 3
  498. icon_index = 43
  499. when 4
  500. name = "Vengeance"
  501. description = "Gareth is a General in Kilano's military. He must be eliminated."
  502. client = "Guildmaster"
  503. location = "Five Islands Region"
  504. objectives[0] = "Enter Gareth's Castle."
  505. objectives[1] = "Search the Castle and meet with Shadow."
  506. objectives[2] = "Kill all the guards in the Library."
  507. objectives[3] = "Meet Shadow in the Library."
  508. objectives[4] = "Kill Gareth."
  509. rewards = [ [3, 5000] ]
  510. level = 5
  511. icon_index = 11
  512. when 5
  513. name = "The Test"
  514. description = "Find the Training Facility in Diamo."
  515. client = "Guildmaster"
  516. location = "Diamo Region"
  517. objectives[0] = "Cross the Ice Fields."
  518. objectives[1] = "Enter the fortress."
  519. objectives[2] = "Meet with the Guardians."
  520. objectives[3] = "Sleep."
  521. objectives[4] = "Meet the Master in the main hall."
  522. objectives[5] = "Meet the Master in the courtyard."
  523. objectives[6] = "Find a book about ghosts in the library."
  524. objectives[7] = "Return to the Master."
  525. objectives[8] = "Train against a practice dummy."
  526. objectives[9] = "Meet the Master in the main hall."
  527. objectives[10] = "Train with Shadow."
  528. objectives[11] = "Find Shadow."
  529. objectives[12] = "Sleep."
  530. rewards = []
  531. level = 5
  532. icon_index = 11
  533.  
  534. # ASSASSINATION QUESTS
  535. when 155
  536. name = "Assassination"
  537. description = "Kill the target hiding in Emerdala."
  538. client = "Sanguine"
  539. location = "Emerdala"
  540. objectives[0] = "Kill the target."
  541. objectives[1] = "Return to Sanguine."
  542. rewards = [ ("???") ]
  543. icon_index = 11
  544. custom_categories.push (:side)
  545. when 156
  546. name = "Assassination"
  547. description = "Kill the target hiding in the Mist Forest."
  548. client = "Sanguine"
  549. location = "Mist Forest"
  550. objectives[0] = "Kill the target."
  551. objectives[1] = "Return to Sanguine."
  552. rewards = [ ("???") ]
  553. icon_index = 11
  554. custom_categories.push (:side)
  555. when 157
  556. name = "Assassination"
  557. description = "Kill the target hiding in Amethyne."
  558. client = "Sanguine"
  559. location = "Amethyne"
  560. objectives[0] = "Kill the target."
  561. objectives[1] = "Return to Sanguine."
  562. rewards = [ ("???") ]
  563. icon_index = 11
  564. custom_categories.push (:side)
  565. when 158
  566. name = "Assassination"
  567. description = "Kill the target hiding in the Amethyne Mountains."
  568. client = "Sanguine"
  569. location = "Amethyne Mountains"
  570. objectives[0] = "Kill the target."
  571. objectives[1] = "Return to Sanguine."
  572. rewards = [ ("???") ]
  573. icon_index = 11
  574. custom_categories.push (:side)
  575. when 159
  576. name = "Assassination"
  577. description = "Kill the target hiding in Rubana."
  578. client = "Sanguine"
  579. location = "Rubana"
  580. objectives[0] = "Kill the target."
  581. objectives[1] = "Return to Sanguine."
  582. rewards = [ ("???") ]
  583. icon_index = 11
  584. custom_categories.push (:side)
  585. when 160
  586. name = "Assassination"
  587. description = "Kill the target hiding in the Floodgates."
  588. client = "Sanguine"
  589. location = "Floodgates"
  590. objectives[0] = "Kill the target."
  591. objectives[1] = "Return to Sanguine."
  592. rewards = [ ("???") ]
  593. icon_index = 11
  594. custom_categories.push (:side)
  595. when 161
  596. name = "Assassination"
  597. description = "Kill the target hiding in the Flow Tower."
  598. client = "Sanguine"
  599. location = "Flow Tower"
  600. objectives[0] = "Kill the target."
  601. objectives[1] = "Return to Sanguine."
  602. rewards = [ ("???") ]
  603. icon_index = 11
  604. custom_categories.push (:side)
  605. when 162
  606. name = "Assassination"
  607. description = "Kill the target hiding in Topale."
  608. client = "Sanguine"
  609. location = "Topale"
  610. objectives[0] = "Kill the target."
  611. objectives[1] = "Return to Sanguine."
  612. rewards = [ ("???") ]
  613. icon_index = 11
  614. custom_categories.push (:side)
  615. when 163
  616. name = "Assassination"
  617. description = "Kill the target hiding in Diamo."
  618. client = "Sanguine"
  619. location = "Diamo"
  620. objectives[0] = "Kill the target."
  621. objectives[1] = "Return to Sanguine."
  622. rewards = [ ("???") ]
  623. icon_index = 11
  624. custom_categories.push (:side)
  625. when 164
  626. name = "Assassination"
  627. description = "Kill the target hiding in the Snow Caves."
  628. client = "Sanguine"
  629. location = "Snow Caves"
  630. objectives[0] = "Kill the target."
  631. objectives[1] = "Return to Sanguine."
  632. rewards = [ ("???") ]
  633. icon_index = 11
  634. custom_categories.push (:side)
  635. when 165
  636. name = "Assassination"
  637. description = "Kill the target hiding in Silvein."
  638. client = "Sanguine"
  639. location = "Silvein"
  640. objectives[0] = "Kill the target."
  641. objectives[1] = "Return to Sanguine."
  642. rewards = [ ("???") ]
  643. icon_index = 11
  644. custom_categories.push (:side)
  645. when 166
  646. name = "Assassination"
  647. description = "Kill the target hiding in the Silver Mines."
  648. client = "Sanguine"
  649. location = "Silvein"
  650. objectives[0] = "Kill the target."
  651. objectives[1] = "Return to Sanguine."
  652. rewards = [ ("???") ]
  653. icon_index = 11
  654. custom_categories.push (:side)
  655. when 167
  656. name = "Assassination"
  657. description = "Kill the target hiding in Goldare."
  658. client = "Sanguine"
  659. location = "Goldare"
  660. objectives[0] = "Kill the target."
  661. objectives[1] = "Return to Sanguine."
  662. rewards = [ ("???") ]
  663. icon_index = 11
  664. custom_categories.push (:side)
  665. when 168
  666. name = "Assassination"
  667. description = "Kill the target hiding in the Magma Caverns."
  668. client = "Sanguine"
  669. location = "Magma Caverns"
  670. objectives[0] = "Kill the target."
  671. objectives[1] = "Return to Sanguine."
  672. rewards = [ ("???") ]
  673. icon_index = 11
  674. custom_categories.push (:side)
  675. when 169
  676. name = "Assassination"
  677. description = "Kill the target hiding in Sapphane."
  678. client = "Sanguine"
  679. location = "Sapphane"
  680. objectives[0] = "Kill the target."
  681. objectives[1] = "Return to Sanguine."
  682. rewards = [ ("???") ]
  683. icon_index = 11
  684. custom_categories.push (:side)
  685.  
  686. # LOCK QUESTS
  687. when 170
  688. name = "Infiltration"
  689. description = "Obtain the item locked away in Emerdala."
  690. client = "Numbers"
  691. location = "Emerdala"
  692. objectives[0] = "Obtain the item."
  693. objectives[1] = "Return to Numbers."
  694. rewards = [ ("???") ]
  695. icon_index = 94
  696. custom_categories.push (:side)
  697. when 171
  698. name = "Infiltration"
  699. description = "Obtain the item locked away in the Mist Forest."
  700. client = "Numbers"
  701. location = "Mist Forest"
  702. objectives[0] = "Obtain the item."
  703. objectives[1] = "Return to Numbers."
  704. rewards = [ ("???") ]
  705. icon_index = 94
  706. custom_categories.push (:side)
  707. when 172
  708. name = "Infiltration"
  709. description = "Obtain the item locked away in Amethyne."
  710. client = "Numbers"
  711. location = "Amethyne"
  712. objectives[0] = "Obtain the item."
  713. objectives[1] = "Return to Numbers."
  714. rewards = [ ("???") ]
  715. icon_index = 94
  716. custom_categories.push (:side)
  717. when 173
  718. name = "Infiltration"
  719. description = "Obtain the item locked away in the Amethyne Mountains."
  720. client = "Numbers"
  721. location = "Amethyne Mountains"
  722. objectives[0] = "Obtain the item."
  723. objectives[1] = "Return to Numbers."
  724. rewards = [ ("???") ]
  725. icon_index = 94
  726. custom_categories.push (:side)
  727. when 174
  728. name = "Infiltration"
  729. description = "Obtain the item locked away in Rubana."
  730. client = "Numbers"
  731. location = "Rubana"
  732. objectives[0] = "Obtain the item."
  733. objectives[1] = "Return to Numbers."
  734. rewards = [ ("???") ]
  735. icon_index = 94
  736. custom_categories.push (:side)
  737. when 175
  738. name = "Infiltration"
  739. description = "Obtain the item locked away in the Floodgates."
  740. client = "Numbers"
  741. location = "Floodgates"
  742. objectives[0] = "Obtain the item."
  743. objectives[1] = "Return to Numbers."
  744. rewards = [ ("???") ]
  745. icon_index = 94
  746. custom_categories.push (:side)
  747. when 176
  748. name = "Infiltration"
  749. description = "Obtain the item locked away in the Flow Tower."
  750. client = "Numbers"
  751. location = "Flow Tower"
  752. objectives[0] = "Obtain the item."
  753. objectives[1] = "Return to Numbers."
  754. rewards = [ ("???") ]
  755. icon_index = 94
  756. custom_categories.push (:side)
  757. when 177
  758. name = "Infiltration"
  759. description = "Obtain the item locked away in Topale."
  760. client = "Numbers"
  761. location = "Topale"
  762. objectives[0] = "Obtain the item."
  763. objectives[1] = "Return to Numbers."
  764. rewards = [ ("???") ]
  765. icon_index = 94
  766. custom_categories.push (:side)
  767. when 178
  768. name = "Infiltration"
  769. description = "Obtain the item locked away in Diamo."
  770. client = "Numbers"
  771. location = "Diamo"
  772. objectives[0] = "Obtain the item."
  773. objectives[1] = "Return to Numbers."
  774. rewards = [ ("???") ]
  775. icon_index = 94
  776. custom_categories.push (:side)
  777. when 179
  778. name = "Infiltration"
  779. description = "Obtain the item locked away in the Snow Caves."
  780. client = "Numbers"
  781. location = "Snow Caves"
  782. objectives[0] = "Obtain the item."
  783. objectives[1] = "Return to Numbers."
  784. rewards = [ ("???") ]
  785. icon_index = 94
  786. custom_categories.push (:side)
  787. when 180
  788. name = "Infiltration"
  789. description = "Obtain the item locked away in Silvein."
  790. client = "Numbers"
  791. location = "Silvein"
  792. objectives[0] = "Obtain the item."
  793. objectives[1] = "Return to Numbers."
  794. rewards = [ ("???") ]
  795. icon_index = 94
  796. custom_categories.push (:side)
  797. when 181
  798. name = "Infiltration"
  799. description = "Obtain the item locked away in the Silver Mines."
  800. client = "Numbers"
  801. location = "Silver Mines"
  802. objectives[0] = "Obtain the item."
  803. objectives[1] = "Return to Numbers."
  804. rewards = [ ("???") ]
  805. icon_index = 94
  806. custom_categories.push (:side)
  807. when 182
  808. name = "Infiltration"
  809. description = "Obtain the item locked away in Goldare."
  810. client = "Numbers"
  811. location = "Goldare"
  812. objectives[0] = "Obtain the item."
  813. objectives[1] = "Return to Numbers."
  814. rewards = [ ("???") ]
  815. icon_index = 94
  816. custom_categories.push (:side)
  817. when 183
  818. name = "Infiltration"
  819. description = "Obtain the item locked away in the Magma Caverns."
  820. client = "Numbers"
  821. location = "Magma Caverns"
  822. objectives[0] = "Obtain the item."
  823. objectives[1] = "Return to Numbers."
  824. rewards = [ ("???") ]
  825. icon_index = 94
  826. custom_categories.push (:side)
  827. when 184
  828. name = "Infiltration"
  829. description = "Obtain the item locked away in Sapphane."
  830. client = "Numbers"
  831. location = "Sapphane"
  832. objectives[0] = "Obtain the item."
  833. objectives[1] = "Return to Numbers."
  834. rewards = [ ("???") ]
  835. icon_index = 94
  836. custom_categories.push (:side)
  837.  
  838. # INGERDIENT QUESTS
  839. when 185
  840. name = "Plant Hunting"
  841. description = "Find the ingredient somewhere in Emerdala."
  842. client = "The Alchemist"
  843. location = "Emerdala"
  844. objectives[0] = "Find the ingredient."
  845. objectives[1] = "Return to the Alchemist."
  846. rewards = [ ("???") ]
  847. icon_index = 74
  848. custom_categories.push (:side)
  849. when 186
  850. name = "Plant Hunting"
  851. description = "Find the ingredient somewhere in the Mist Forest."
  852. client = "The Alchemist"
  853. location = "Mist Forest"
  854. objectives[0] = "Find the ingredient."
  855. objectives[1] = "Return to the Alchemist."
  856. rewards = [ ("???") ]
  857. icon_index = 74
  858. custom_categories.push (:side)
  859. when 187
  860. name = "Plant Hunting"
  861. description = "Find the ingredient somewhere in Amethyne."
  862. client = "The Alchemist"
  863. location = "Amethyne"
  864. objectives[0] = "Find the ingredient."
  865. objectives[1] = "Return to the Alchemist."
  866. rewards = [ ("???") ]
  867. icon_index = 74
  868. custom_categories.push (:side)
  869. when 188
  870. name = "Plant Hunting"
  871. description = "Find the ingredient somewhere in the Amethyne Mountains."
  872. client = "The Alchemist"
  873. location = "Amethyne Mountains"
  874. objectives[0] = "Find the ingredient."
  875. objectives[1] = "Return to the Alchemist."
  876. rewards = [ ("???") ]
  877. icon_index = 74
  878. custom_categories.push (:side)
  879. when 189
  880. name = "Plant Hunting"
  881. description = "Find the ingredient somewhere in Rubana."
  882. client = "The Alchemist"
  883. location = "Rubana"
  884. objectives[0] = "Find the ingredient."
  885. objectives[1] = "Return to the Alchemist."
  886. rewards = [ ("???") ]
  887. icon_index = 74
  888. custom_categories.push (:side)
  889. when 190
  890. name = "Plant Hunting"
  891. description = "Find the ingredient somewhere in the Floodgates."
  892. client = "The Alchemist"
  893. location = "Floodgates"
  894. objectives[0] = "Find the ingredient."
  895. objectives[1] = "Return to the Alchemist."
  896. rewards = [ ("???") ]
  897. icon_index = 74
  898. custom_categories.push (:side)
  899. when 191
  900. name = "Plant Hunting"
  901. description = "Find the ingredient somewhere in the Flow Tower."
  902. client = "The Alchemist"
  903. location = "Flow Tower"
  904. objectives[0] = "Find the ingredient."
  905. objectives[1] = "Return to the Alchemist."
  906. rewards = [ ("???") ]
  907. icon_index = 74
  908. custom_categories.push (:side)
  909. when 192
  910. name = "Plant Hunting"
  911. description = "Find the ingredient somewhere in Topale."
  912. client = "The Alchemist"
  913. location = "Topale"
  914. objectives[0] = "Find the ingredient."
  915. objectives[1] = "Return to the Alchemist."
  916. rewards = [ ("???") ]
  917. icon_index = 74
  918. custom_categories.push (:side)
  919. when 193
  920. name = "Plant Hunting"
  921. description = "Find the ingredient somewhere in Diamo."
  922. client = "The Alchemist"
  923. location = "Diamo"
  924. objectives[0] = "Find the ingredient."
  925. objectives[1] = "Return to the Alchemist."
  926. rewards = [ ("???") ]
  927. icon_index = 74
  928. custom_categories.push (:side)
  929. when 194
  930. name = "Plant Hunting"
  931. description = "Find the ingredient somewhere in the Snow Caves."
  932. client = "The Alchemist"
  933. location = "Snow Caves"
  934. objectives[0] = "Find the ingredient."
  935. objectives[1] = "Return to the Alchemist."
  936. rewards = [ ("???") ]
  937. icon_index = 74
  938. custom_categories.push (:side)
  939. when 195
  940. name = "Plant Hunting"
  941. description = "Find the ingredient somewhere in Silvein."
  942. client = "The Alchemist"
  943. location = "Silvein"
  944. objectives[0] = "Find the ingredient."
  945. objectives[1] = "Return to the Alchemist."
  946. rewards = [ ("???") ]
  947. icon_index = 74
  948. custom_categories.push (:side)
  949. when 196
  950. name = "Plant Hunting"
  951. description = "Find the ingredient somewhere in the Silver Mines."
  952. client = "The Alchemist"
  953. location = "Silver Mines"
  954. objectives[0] = "Find the ingredient."
  955. objectives[1] = "Return to the Alchemist."
  956. rewards = [ ("???") ]
  957. icon_index = 74
  958. custom_categories.push (:side)
  959. when 197
  960. name = "Plant Hunting"
  961. description = "Find the ingredient somewhere in Goldare."
  962. client = "The Alchemist"
  963. location = "Goldare"
  964. objectives[0] = "Find the ingredient."
  965. objectives[1] = "Return to the Alchemist."
  966. rewards = [ ("???") ]
  967. icon_index = 74
  968. custom_categories.push (:side)
  969. when 198
  970. name = "Plant Hunting"
  971. description = "Find the ingredient somewhere in the Magma Caverns."
  972. client = "The Alchemist"
  973. location = "Magma Caverns"
  974. objectives[0] = "Find the ingredient."
  975. objectives[1] = "Return to the Alchemist."
  976. rewards = [ ("???") ]
  977. icon_index = 74
  978. custom_categories.push (:side)
  979. when 199
  980. name = "Plant Hunting"
  981. description = "Find the ingredient somewhere in Sapphane."
  982. client = "The Alchemist"
  983. location = "Sapphane"
  984. objectives[0] = "Find the ingredient."
  985. objectives[1] = "Return to the Alchemist."
  986. rewards = [ ("???") ]
  987. icon_index = 74
  988. custom_categories.push (:side)
  989. # when 100
  990. # name = "Example"
  991. # banner = ""
  992. # description = "Example"
  993. # client = "Example"
  994. # location = "Example"
  995. # objectives[0] = ""
  996. # objectives[1] = ""
  997. # objectives[2] = ""
  998. # objectives[3] = ""
  999. # prime = [0,1,2,3]
  1000. # rewards = [ [3, 250] ]
  1001. # level = 1
  1002. # common_event = 0
  1003. # icon_index = 11
  1004. # custom_categories = []
  1005. #||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
  1006. # END EDITABLE REGION B
  1007. #////////////////////////////////////////////////////////////////////////
  1008. end
  1009. unless prime
  1010. prime = []
  1011. objectives.each_index { |i| prime.push (i) }
  1012. end
  1013. return banner, name, description, client, location, objectives, prime,
  1014. rewards, level, common_event, icon_index, custom_categories
  1015. end
  1016. end
RAW Paste Data