Original Source
- Original title: A simple QuestLog
- Original author: Winthorp
- Original date: July 12, 2023
- Source thread: https://forums.rpgmakerweb.com/threads/a-simple-questlog.159257/
- Source forum path: Game Development Engines > RPG Maker Javascript Plugins > JS Plugin Releases (RMMZ)
Summary
QuestLog Plugin v2.4 By Winthorp Darkrites This is my take on a simple QuestLog plugin, it's nothing exceptional, it's really basic, but I tried to make it as customizable as possible to make it compatible with multilanguage games. The core functionality is really simple, create quest, display quest, remove quest. That's it.
Archived First Post
By Winthorp Darkrites
This is my take on a simple QuestLog plugin, it's nothing exceptional, it's really basic, but I tried to make it as customizable as possible to make it compatible with multilanguage games.
The core functionality is really simple, create quest, display quest, remove quest. That's it.
What may be of interest for someone who doesn't write is own plugin is the (I hope) versatility.
How to call the questlog:
- You can do it by script line
- You can do it by Plugin Command
- You can add a command in the main menu activating the option in the Plugin Parameters. You can also rename the command either via Plugin Parameter or Plugin Command.
Quest will be created by Plugin Command with the following parameters:
- ID: The ID of the quest, useful to use Remove Quest and Set Quest Completion commands. Please be sure to use unique ID and I suggest to keep track of your quests on a note somewhere as you can check it in game.
- Icon: It will show the desired Icon in the Quest Info window. Of course it refer to the games Icons.
- Name: The quest name, keep it short.
- Index: The order it will be displayed on the quest list. (First the active quest will be ordererd, then the completed quests)
- Giver: Who gave you the quest [NOTE: Standard format will be "From: (this value). You can change "From:" via Plugin Parameter or Plugin Command]
- Area: Where is located the quest [NOTE: Standard format will be "Area: (this value). You can change "Area:" via Plugin Parameter or Plugin Command]
- Description: The description of the text. IMPORTANT: Text doesn't line break automatically, it will try to fit in the window by shrinking. For this reason I added a check that will search for \n line break and splits the text into a new line.
- Completion: From Version 1.3 the quest can be Ongoing (active), Completed or Failed! [NOTE: Standard format will be "Status: Ongoing/Completed. You can change "Status:", "Ongoing" and "Completed" via Plugin Parameter or Plugin Command]
Layout:
The layout is really simple, a Title window showing the name for the QuestLog (you can edit the title via Plugin Parameters and Plugin Command; also you can edit the font size, for now only via Plugin Parameter), a window showing an ordered quest list and a window showing the active quest informations.
Managing the plugin:
As I said before, you need to add the quests via Plugin Command, you can set their completion always via Plugin Command either by name (exact name) or by ID. In the same way, you can remove the quests from the list.
Video
Terms of use
Free for personal and commercial projects, read the ToS before using
VERSION 1.0:
- Initial Release
VERSION 1.1:
- Added new plugin command to edit an existing quest description by ID or Quest Name
- Added new Plugin Command to change FontSize
VERSION 1.2:
- Merged "Set Completion by ID / by Name" and "Remove Quest by ID / by Name"
- Changed font size for the Quest List and Quest Description, you can change them via Plugin Parameters or Plugin Command
- Changed the alignemnt con Quest List from "left" to "Center", can be changed via Plugin Parameter
- Created a command that checks if a quest is completed and stores the result in a Switch of your choice (ON for Complete, OFF for Ongoing)
- Created a plugin command to change the Quest Icon searching it by ID or Name
VERSION 1.2.1:
- Fixed an issue reported by Grillmonger where QuestList would wipe if game was closed entrely and then reloaded. Upon further investigation the fix was extended to the other Plugin Parameters too (Such as Title Font, etc..) that would not carry over the changes if done via Plugin Command
VERSION 1.2.2:
- Hotfix for changes made in 1.2.1 as Plugin Parameters from Plugin Manager where not correctly loaded (Report by Grillmonger)
VERSION 1.3:
- Updated the code to a newer version with, but not limited to, tweaks to the save and load functionality.
- Added the "Failed" status to the Quests with the needed changes to "Add Quest", "Set Completion" and "Check Completion". Added bits of code to allow retrocompatibility with the older versions.
- Added the option to Autoset the Description Font Size, the plugin will range from a font size of 100 to a font size of 10, trying to fit the text both in width and height. You still need to break the lines with \n as before. The autosize text is only left aligned due to a limitation of the DrawTextEx feature used. (On the positive side, it should accept the usual RMMZ text code like \I for icons, didn't tried it)
- Added the possibility to add a longer title that will be displayed in the Quest Informations window (while the short name will be used for the quest list on the left). If you don't need it just leave blank the field.
- Minor fix on a bug that could cause the menu button to change name due to a conflict with the Quest List items
VERSION 1.3.1:
- Hotfix for a small bug that would turn the menu command name to "true", thanks to ryf for the report!
VERSION 1.3.2:
- Fixed an old part of the code creating two problems: A black layer under the scene and no centering if the Game UI was changed from the System 2 tab as reported from ryf and Puppet Knight
VERSION 1.4:
- Added the setting to show or hide the title in the QuestLog
- Added the possibility to switch the quest list / quest info layout
- Added the option to use 100% of the graphic box (standard setting for this plugin) or 90% (standard RPG Maker MZ scene compatible with cancel touch button)
- Added the possibility to hide the cancel touch button (useful for 100% size, but make sure the player has access to non touch controls)
- Added the possibility to change the windows skin for the QuestLog only, also you can change the colors tone (by re-selecting the default skin you can apply different color tones to it)
- Added a new plugin command to change all the above mid-game
VERSION 1.5:
- Fixed an unexpected behaviour in the Auto Size description text that resets the font size after correctly finding the fitting value
- Added a padding value to the text to have the desired look to the text graphic
- Added a full support for RMMZ text codes while keeping the alignment options
- Minor tweaks to the Plugin Parameters
- Now the plugin will automatically support compatibility with v1.1 or lower without having to choose different files
VERSION 1.6:
- Fixed a bug were the old quest files would be deleted if any quest action (like accepting a quest) would be done after reloading a save and before opening the questlog. (Thanks to TewiInaba for the report)
- Fixed a minor bug in the "Complete Quest" command
- Changed the Icon selection parameters from a number to an icon selector
- Added an external script call to check quest completion, see help
VERSION 1.6.1:
- Changed the Quest Title from DrawText to DrawTextEx. The text will still be centered but now you can add the standard RMMZ commands such as \I for Icons or \C for colours
VERSION 2.0:
- Code rebuilt and updated but kept compatible with older versions
- Updated the Discord invite link in the help file that was invalid, embarassing!
- Added translations managed via WD_Core
- Dynamic Resize has been moved to WD_Core, plus a new text management option has been added: AutoWrap. Just write your sentence (supports RMMZ text codes) and the code will automatically wrap the text in the designed area. No need to manually use the \n code (but you still can if you want to force a new line). If the text is still too big, the AutoWrap will try to shrink the font size to the minimum required.
- Added the optional rule to display an expanded data log if the player clicks on the quest
- Added the optional rule to activate a small Quest List on the map scene (either managed by the player or by the dev)
- Added Quest Categories to group quests together
VERSION 2.0.1:
- The plugin wasn't saving correctly the quests! Thanks to kricu for the report, now it's all correct. NOTE: Old savefiles won't work, sadly, only work with new saves.
- The tracking system now correctly saves the tracking preference and loads them when the player loads a savefile
VERSION 2.0.2:
- Corrected a typo that would block the "Edit Quest Descriptor" command, thanks to tinribs26 for the report!
- Also correct a misplaced code line that would crash the above command when launched
VERSION 2.1:
- Fixed a nasty memory bug that would "remember" the quests when exiting an existing game and starting a new one without exiting the executable
- Added a command to check if a quest already exist (useful if you want to add a quest from different sources)
VERSION 2.2:
- Changed the quest window refresh method to adapt it to Android deployments (Thanks to Stevynn for the report)
- Fixed incorrect font variable used in manual text mode
VERSION 2.3:
- The Language control has been moved to WinterDream Core (you will need v1.3 or higher). QuestLog loses the parameters "Default Language" and AutoDetect language, now controller by the central plugin
VERSION 2.4:
- Added the option to hide/show a quest
- Added the option to show the quest title in the tracking HUD
- Now you can mass store quests undere ID driven storages, this will make it super easy to switch between different characters or parties
- Tracked quests will now automatically be removed when they are set to Completed or Failed
- Fixed a bug in the conversion of old Quests to the new format
- Fixed a bug in logs activation / deactivation
- Fixed a bug in the Export Quest Completion functionality
- Now Categories names and Quest Titles accept RMMZ text commands, especially useful for colours
- Thanks to Tails for this two reports
- Fixed a bug on the "Add or Remove Quest Tracking" flag parameter that was a string instead of a boolean
- Fixed the "Change tracking text" plugin command that wouldn't refresh the HUD informations
- Thanks to tinribs26 for those two reports!
- Fixed a bug in the new Quest Containers functionality that would break the savegames load. It's now patched with retrocompatibility for old broken saves.
- Fixed a font reset problem during category and quest titles display
Further developments will include: -
Download for free on Itch.io
Downloads / Referenced Files
Log in, then follow the RPG Maker Developers Group to see these download links.
Log in to downloadLicense / Terms Note
Terms of use Free for personal and commercial projects, read the ToS before using Version, bugs and further development VERSION 1.0:
Creator Claims / Removal
If you are the original creator and want this listing reassigned, edited, or removed, join BMMPlay and contact the moderators with proof that matches the original RPG Maker Web profile, linked GitHub, itch.io page, or another public creator identity.
Replies (0)
No replies yet.
Topic Summary
Loading summary...