Achievements Plugin
Achievements Plugin v1.4By Winthorp Darkrites/WinterDream Games Creator
This plugin allows you to add Achievements to your game. Those Achievements will be stored in a JSON and will be shared among all plays and savegames of your project
Be sure to have installed the .js file in the js/plugins folder of your project and the .JSON file in the data folder of your project.
If at any time you want to wipe your achievements data, just open the JSON and write []
PRO TIP: As the Achievments changes are PERMANENT it's useful to keep a hidden event in that adds all the achievements, once you are ready to distribute your game youcan whipe and re-add the achievements to reset them.
https://www.youtube.com/embed/z3XYDBZH3Xo
This plugin comes with the following features:
[*]Pictures or Icons: You can use pictures (48x48 px) or RMMZ icons for your achievements
[*]AutoGray Feature (only pictures): If you use pictures and you enable Autogray, the plugin will turn pictures to grayscale if the achievement is locked
[*]Fulfillments: You can add up to 3 fulfillments per Achievement and you can decide how every each of them is displayed (text, gauge or combination of both). If ALL active fulfillments are met, the plugin will auto-unlock the achievement
[*]Hidden achievements: You can set Achievements to "Hidden", they will use a standard format and will hide fulfillments and rewards in the menu
[*]PopUp Window: You can choose to show a popUp message when the achievement is unlocked, it can also play a Sound Effect when popping. PopUp window have a built in queque and will display multiple unlocked achievements one by one
[*]JSON Auto-Encryption: The plugin offer the option to soft encrypt the JSON file, it's nothing a programmer can't decrypt but it should stop average users from just changing "false" with "true" in the isDone field
CALLING THE PLUGIN FROM EXTERNAL SOURCES:
The achievement completion can be also called from outside the plugin, for example you could call it from the Title Screen if you want to create a "Start the game" achievement! To do so, just write the script call: window.WD_Interplugin_Achievements.complete(id);
Where "id" is the ID of the achievement!
Please make sure the database is ready and plugins are loaded before the external script call commence.
KNOWN COMPATIBILY ISSUES:
[*]VisuStella Core: Error when you use "Battle Test" in the editor, for some reason with VisuStella it searches for Test_WD_Achievements.json in the data folder (only for Battle Test). Simply create a dummy file with that name and you are good to go
Terms of use
Please refer to the Terms of Use. By using this plugin you accept WinterDream terms
Version, bugs and further development
VERSION 1.0:
[*]Initial Release
VERSION 1.1:
[*]Hotfix for a problem reported by Rizky Fauzy Ananda. The save/load feature of the JSON would crash on web distribution. Added a check to control if the game is played on a local machine and added a new save/load method by key foraging in the event the game is a web distribution. Thanks to Aerosys and caethyril for the help with this fix!
VERSION 1.2:
[*]Added two Quality of Life plugin commands: Re-Hide an achievement (useful if you manually de-hidden an achievement) and Reset all Achievements to Not Done, you can simply hit this command to undo all achievements, hopefully this will speed up the pre-distribution process of your project
VERSION 1.2.1:
[*]Fixed a minor bug in the data load that shouldn't have caused any issues anyway
[*]Removed a couple of dead variables that were implemented but never used
VERSION 1.3:
[*]Fixed pictures misplacements if using a different Screen vs UI resolution
[*]Investigated the possible issue of teleporting to another map while popping the achievement complete window, no issues have been recorded
[*]Investigated the possible issue of changing scene (menu, save, game over, title screen) while achievement windows is popping. No fatal error, but it would be better to avoid such simultaneous events or the pop window might be lost
[*]Investigated the possible issue about giving out rewards while not in the game. The game will IGNORE all the rewards, there is no way to recover them. That said, popping an achievement outside the game need the special external script call to be doable. So shame on you if you pop a rewarding achievement outside the game!
[*]Added a script call to run the "Complete Achievement" command outside the plugin (see instructions in the description). Be sure to have the database and plugins ready before doing so.
VERSION 1.4:
[*]Fixed a problem that would save achievements in both format (encrypted and clear) if the dev switched Encryption flag while adding them, this would result in a fatal crash once the plugin tries to load the JSON with both encrypted and clear data. The new load method now prevents another fatal crash that would happen when adding an achievement right after wiping the JSON. Thanks to F.O.X. Development for the report.
[*]Changed the sprite generation function for the achievements pictures, now they anchor to the windows instead of the scene, this should solve once for all the misplacement bug when the UI resolution is different from screen resolution. Plus it should avoid conflict with other plugins that manipulate the windows behaviour (but this is something I can only guarantee to an extent)
Future released will aim to allow text translation and more automation
Download
It can be downloaded for free on Itch
本贴来自国际rpgmaker官方论坛作者:Winthorp处,因国际论坛即将永久关站,为了存档多年珍贵资料,署名转载到本论坛存档,由于官方帖子为英文原帖,需要中文翻译请点击论坛顶部切换语言为中文就可以将帖子翻译成中文浏览,方便大家随时查看,原文地址:https://forums.rpgmakerweb.com/threads/achievements-plugin.164134/
页:
[1]