Documentation
Quick InfoVersion: Alpha R13
Made for RPG Maker MZ 1.9.0
The BasicsThis plugin makes the following assumptions:
1) A quest cannot be both completed AND failed
2) A quest's name is UNIQUE
3) A category's name is UNIQUE
Make sure you follow these assumptions when setting up parameters.
Resource SpecsThe list window image should be 72 x 72 px. The background image should be 460px x 108px if using default resolution.
Quest StagesQuests are structured by "stages" which determine where the player is in the overall quest. If the player is on stage 2, then they will need to complete all objectives for stage 2 before the plugin will advance them to stage 3. This process is automatic, but you can advance stages manually before all objectives of a stage have been completed if you wish.
DescriptionsQuest descriptions are set up as a list of descriptions, with the first in the list corresponding to the description that will be shown for the first stage of the quest. Once you advance to the next stage, the next description in the list will be used. If a stage does not have a description, the last description in the list will be used.
ObjectivesEach automatic tracking objective can only track one of the available categories. If you want to track both gold and an item, you will need to make two objectives with one for gold and one for the item.
When an objective is automatically tracked, it will potentially auto complete the entire quest if the automatic tracked objective is last needed objective of the last stage. Make sure you have a manual objective last if you want the quest to need to be turned in to a specific NPC.
If there are no objectives for a given stage, this plugin assumes that the quest is complete at that point and automatically completes the quest.
Once an objective has been completed, it will be saved as completed and will NOT automatically become incomplete if the player no longer meets the requirements of the objective. You can manually set an objective to incomplete if you wish.
Objective IDs just need to be unique for each quest. You can re-use the ID in separate quests.
RewardsThis plugin will automatically award the gold, items/weapons/armors, and experience rewards. You will need to manually award any custom rewards.
Drag and Drop SortingCategories are sorted in the order they are listed in the Category Sort Order list. If you want a certain location to appear above another location, make sure the category is listed in the correct order.
Sort options are sorted in the order they are listed in the Sort Options parameter. You can change the order or which options are available to sort by here by either dragging and dropping or deleting sort types.
Date FormatsThe following numbers correspond to the following date formats:
0-2: Day / Month / Year are numeric
3-4: Day and Year numeric, Month long string
5-6: Day and Year numeric, Month short string
7-8: Day and Month numeric, no Year
These will be according to the user's locale (or the forced locale as set in [CGMZ] Core). For example, USA may see March 22, 2024 while Mexico may see 22 de marzo de 2024. This helps your users see dates that make sense to them.
Plugin CommandsThis plugin supports the following plugin commands:
Call Scene - Calls the Quest Log scene which displays discovered quests
Call Accept Scene - Calls the scene for accepting a single quest
Call Quest Board Scene - Calls the scene for accepting multiple quests
Set Objective Progress - Change the progress of an objective that is not being automatically tracked.
Advance Quest Stage - Forcibly advances the quest's stage by 1.
Get Quest Stage - Puts the current stage of the quest into a variable
Get Quest Status - Sets a variable to number based on quest discover/start/completion/fail status.
0 = undiscovered
1 = discovered
2 = started
3 = failed
4 = completed
Discover Quest - Discovers the quest but does not start it.
Start Quest - Starts the quest. Optionally also discovers it.
Complete Quest - Marks a quest as completed.
Fail Quest - Marks a quest as failed.
Change Pin Status - Pin, unpin, or toggle pinned status for a given quest.
Script CallsTo call the quest scene via JS, use:
SceneManager.push(CGMZ_Scene_QuestSystem);
OptionThe quest tracker can obey an option from the Options scene. To access this, you will need a plugin such as [CGMZ] Options that can create custom options. There are likely other options plugins out there as well.
When creating your custom option, set the symbol parameter to:
cgmz_questTracker
making sure your capitalization matches as well.
This should be a simple on/off option. When set to true, it will allow the quest tracker to display if other conditions are also met. When set to false, it will prevent the quest tracker from displaying.
IntegrationsThis plugin has special functionality when used with certain other [CGMZ] plugins:
[CGMZ] Menu Command Window
You can use this plugin to easily add the quest log scene to the main menu. To do so, use the following JavaScript parameter: SceneManager.push(CGMZ_Scene_QuestSystem);
[CGMZ] Toast Manager
You can show toasts for quest completion, start, objectives, and more. These are windows that display briefly that tell the player some useful but short info and then disappear.
[CGMZ] Infinite Colors
If you would like to use custom colors not present on the windowskin for your quests, you can set the custom color up via [CGMZ] Infinite Colors and then input the color id into the color parameter. To do so, click the text tab to turn the color parameter into a text field instead of the built-in color select ui which is limited to windowskin colors.
[CGMZ] Scene Backgrounds
Set up a scene background preset and then enter the preset id into the background image parameters here. This allows you to have a lot more options when setting up your background image, including scrolling backgrounds.
[CGMZ] Controls Window
Set up a controls window preset and then enter the preset id into the controls window parameter here. This allows you to easily show keyboard or gamepad controls for the Profession scene, depending on player's last input type.
[CGMZ] Window Settings
Control any window's windowskin, tone, style, etc. including all of the Quest windows.
[CGMZ] Window Backgrounds
Add an image as a window background, including scrolling parallax images, to any quest system window.
[CGMZ] Drop Tables
Give the player rewards from a table of items, with different odds of each reward. Can help increase randomness in your quest rewards.
Saved GamesThis plugin is partially compatible with saved games. This means you can:
✓ Add this plugin to a saved game and it will work as expected.
✘ Modifying plugin parameters is not fully supported. The following will not work correctly in previously saved games: Adding new quests should work, but modifying or deleting existing quests will not. The saved game will act as if the quest has not been modified or deleted.
✓ Remove the plugin with no issue to save data.
Filename
The filename for this plugin MUST remain CGMZ_QuestSystem.js. This is what it comes as when downloaded. The filename is used to load parameters and execute plugin commands. If you change it, things will begin behaving incorrectly and your game will probably crash. Please do not rename the js file.
Known Issues
This plugin currently has no known issues that need to be fixed. If you believe you have encountered a bug, please report it to Casper Gaming.
Compatibility
This plugin currently has no known compatibility issues with other RMMZ plugins. If you believe you have encountered a conflict, please report it to Casper Gaming.
Version HistoryVersion AlphaR2
- Added an icon parameter to categories, which can show up in various areas
- Added optional Legend window to the Quest Board scene
- Added a switch parameter to quests that turns on when quest is started
- Added parameters to change the header line gradient colors
- Added ability to hide gold/exp rewards if they are 0
- Added option to enable cancel button in quest accept scene
- Fixed bug with text in list window not being limited to the window
- Icon parameters now use icon selector in plugin manager
- Added toast manager integration (quest discover, start, complete, fail)
- Added parameter to objectives to turn a switch ON when completed
- Added option to automatically unpin completed/failed quests
- Fixed bug with objective switch after auto-tracked objective completed
- Fixed bug with display window not scrolling for category displays
- This plugin no longer requires Category Sort Order setup to show quests
- Invalid JSON no longer crashes, now warns in dev tool console
- Added option to start quests from the quest log
- Added option to always show completed quests objectives as complete
- Added option to pin quests from list window
- Added option to disable pinning completed or failed quests
- Added window tone, padding, back opacity options for each window
- Replaced $cgmzTemp function calls with CGMZ_Utils function calls
- Refactored list window code
- Added quest tracker window, various options for quest tracking on map
- Added options to customize divider element lines and padding
- Fixed bug with auto objectives not auto completing in some cases
- Fixed small bug that accidentally declared a global variable
- All text now supports text codes
- Date format now uses locale (removed date delimiter param)
- Integration with [CGMZ] Scene Backgrounds for scene background images
- Integration with [CGMZ] Controls Window for scene controls window
- Order in Plugin Manager with Toast Manager no longer important
- Param type changes for: Unstarted description, unstarted objective, board description, category description, empty quest board text
- Added option to remove quest tracker window title text
- Added option to auto hide tracker when message is displaying
- Added switch option to control quest tracker visibility
- Added option to not display the recommended level in list window
- Fix tracker bug to reset opacity after drawing complete objective
- Recommended Level colors converted to text code parameters
- Remove Pin From List Window parameter
- Added option to disable decline in quest accept scene
- Added custom sound effect for quest accept in quest accept/board scenes
- Added missable flag to quests
- Added completed / failed quest descriptions
- Added Blank Line and Custom Space display options
- Fix bug with display windows scroll slightly off with custom padding
- Fix bug with reward divider drawing unintended info if no rewards
- Pinned quests now sorted by order they were pinned
- Quest system displays should now be more responsive to font size changes
- Converted description parameter from note to multiline_string
- Added option to hide rewards from display
- Fix bug with automatic item crash with new [CGMZ] Core update
- Added option to exit out of the scene after accepting quest from board
- Added [CGMZ] Window Settings integration
- Added [CGMZ] Window Backgrounds integration
- Added config manager flag for quest tracker window visibility
- Added switch auto tracking
- Changed Objective description parameter
- Added option to not discover quests when declining in accept scene
- Improved [CGMZ] Toast Manager integration
- Added [CGMZ] Drop Table integration
- Added plugin command to change pin status
- Added option to disable unpinning important quests
- Added quest list height parameter
- Fix bug with Allow Pins parameter
- Fix bug with sort button not re-appearing in some cases
- Fix bug when drawing all hidden quest rewards