casper667

Casper Gaming
Veteran
Joined
Mar 15, 2012
Messages
432
Reaction score
544
First Language
English
Primarily Uses
RMMZ
CGMZ Encyclopedia and Bestiary
By: Casper Gaming
Last Update: December 16, 2022
Latest Version: 1.6.0
Forum-Header-Introduction.png
This plugin creates a powerful encyclopedia for your game, with default categories including bestiary, items, armors, weapons, skills, and states. It can also handle as many custom categories as desired with their own custom entries.
Forum-Header-Features.png
  • Add a bestiary to your game
  • Add an encyclopedia of items, weapons, armors, states, and skills to your game
  • Add custom categories with custom entries to your encyclopedia
  • Many configuration and customization options available
Forum-Header-Screenshots.png
A bestiary entry
encyclopedia1.png
All entries can scroll if they have more info than can display in the window, such as the bestiary sketch
encyclopedia2.png
An item entry
encyclopedia3.png
An armor entry
encyclopedia4.png
A weapon entry
encyclopedia5.png
A skill entry
encyclopedia6.png
A state entry
encyclopedia7.png
A custom entry
encyclopedia8.png
EBsAIiJ.png


Forum-Header-HowTo.png
Import into plugin manager and enable the plugin. Some customization options available. Further instructions in plugin.
Forum-Header-Download.png
Plugin (along with all my other plugins) can be found here: https://www.caspergaming.com/plugins/cgmz/encyclopedia/
Requires CGMZ Core plugin: https://www.caspergaming.com/plugins/cgmz/core/
To easily add this plugin to the menu, use my Menu Command Window: https://www.caspergaming.com/plugins/cgmz/menucommandwindow/
Forum-Header-CreditAndTerms.png
https://www.caspergaming.com/terms-of-use/
Forum-Header-VersionHistory.png
Version 1.0
- Initial Release

Version 1.1.0
- Added additional checks during battle to discover enemies

Version 1.1.1
- Fixed totals window being too large in some cases
- Fixed list window items having no padding
- Fixed bug with the list window not scrolling up after cancel

Version 1.1.2
- This plugin now initiates a check for CGMZ Achievements after discovery

Version 1.1.3
- Fixed a bug with TP Gain effects being drawn over Item descriptions
- Whitespace is now trimmed from the currency unit for the heading in bestiary

Version 1.2.0
- New entries and custom data are now automatically recognized in saved games
- Added ability to use text codes in descriptions, categories, and item lists
- Added option to change label text color
- Added option to change text alignment of totals window
- Added option to customize category window height and column count
- Added plugin command to discover multiple entries at once
- Fixed bug with custom image size being incorrect for first draw
- Fixed display bug for items with learn skill effects
- Fixed display bug with Drop Item Double party effects
- Compatibility for VS Core (fix for weird window spacing)

Version 1.2.1
- Fixed bug with columns for other horizontal command windows

Version 1.2.2
- Fixed bug with Include Categories (when set to OFF only) behaving weirdly

Version 1.3.0
- Added ability to choose which info to display for every category
- Added ability to re-order information shown for every category
- Added custom batch discovery plugin command
- Added ability to turn off auto-discovery
- Increased max height of display window
- Fixed bug with custom entries that didn't have descriptions
- Fixed bug with uppercase symbols for custom categories
- Documentation no longer horizontally scrolls
- Documentation update to be easier to read/explain more

Version 1.5.0:
- Added option to display different name in list and display windows for custom entries
- Custom entries now support multiple images instead of just one
- Added plugin command to change custom entry sketch
- Fixed issue with adding this plugin into a saved game that did not previously have the encyclopedia

Version 1.6.0
- Added option to hide undiscovered entries from the list window
- Added option to customize the sort order in the list window
- Added text code for displaying sketch images mixed in with description for custom entries
- Updated color parameters to use new text color selector
 
Last edited:

GalacticGod

Veteran
Veteran
Joined
Jan 28, 2018
Messages
698
Reaction score
1,146
First Language
English
Primarily Uses
RMMV
What happens if you are using SV Battlers or Dragonbones as Enemy Battlers? Would they still show in the beast book as whatever image I am using as a placeholder for the enemy or no image at all be shown?
 

casper667

Casper Gaming
Veteran
Joined
Mar 15, 2012
Messages
432
Reaction score
544
First Language
English
Primarily Uses
RMMZ
@GalacticGod If you are using the built in side view, it will load the enemy image from the img/sv_enemies folder. If you are using the built in front view, it loads the enemy image from the img/enemies folder. It will load whatever image has been assigned to that enemy in the image property for the enemy in database. I am not sure how dragonbones or other custom enemies work but other than additional features not displaying (such as animation), it should still be able to load the enemy image you assign in the database.
 

Meike

||Telling Stories Through Games||
Veteran
Joined
Apr 25, 2015
Messages
112
Reaction score
175
First Language
English
Primarily Uses
RMMV
Love it~
 

GalacticGod

Veteran
Veteran
Joined
Jan 28, 2018
Messages
698
Reaction score
1,146
First Language
English
Primarily Uses
RMMV
Just so everyone who is interested knows; this plugin does work alongside Dragonbones. I think this is the first "Beast Book" type of plugin I found that works correctly. Awesome job!
 

Knightmare

Knight of the Night
Veteran
Joined
Mar 14, 2012
Messages
1,263
Reaction score
326
First Language
English
Primarily Uses
RMMZ
Awesome plugin. One suggestion if you don't mind. I'm using VisuStella Battle Core and in it you are allowed to make "dummy" enemies that swap other enemies in it's place. I tend to make my games where all the battles have random enemies selected from one dummy.

I noticed when I playtest that I will go through several battles with a variety of enemies but when I check the bestiary all that gets exposed are the "dummy" placeholder enemies and all the other enemies that I encountered remain undiscoverable even though the plugin swapped them out.

My suggestion is, I'm not a coder, but I am somewhat adept at modifying and editing code slightly for my own personal use but I don't know where to edit to make it to where it pulls and shows enemies that are actually encountered in battle and not by enemy ID in the bestiary.

Any help would be appreciated. I've done the usual things to see if it works other ways and it doesn't.
 

casper667

Casper Gaming
Veteran
Joined
Mar 15, 2012
Messages
432
Reaction score
544
First Language
English
Primarily Uses
RMMZ
@Knightmare Right now it just discovers the enemy when the battle start is called. I can add additional checks throughout the battle loop to check for new discoveries, that should be enough to discover enemies when/if they appear. I should be able to have an update out for that this weekend.

In the mean time, if you have the enemy ID of what is being swapped in, you can manually discover enemies with the plugin command for discovering enemies in an event, or if you have access to the JS code that causes enemies to appear you can call
JavaScript:
$cgmz.encyclopediaDiscovery("bestiary", id);
where id would be the id of the enemy.
 

Knightmare

Knight of the Night
Veteran
Joined
Mar 14, 2012
Messages
1,263
Reaction score
326
First Language
English
Primarily Uses
RMMZ
@Knightmare Right now it just discovers the enemy when the battle start is called. I can add additional checks throughout the battle loop to check for new discoveries, that should be enough to discover enemies when/if they appear. I should be able to have an update out for that this weekend.

In the mean time, if you have the enemy ID of what is being swapped in, you can manually discover enemies with the plugin command for discovering enemies in an event, or if you have access to the JS code that causes enemies to appear you can call
JavaScript:
$cgmz.encyclopediaDiscovery("bestiary", id);
where id would be the id of the enemy.

Awesome, thank you! I do random battles so the plugin command thing won't work, I'll patiently await your update. I think I'll throw a little "lettuce" your way if you're on that...you know....that "site." wink wink.
 
Last edited:

casper667

Casper Gaming
Veteran
Joined
Mar 15, 2012
Messages
432
Reaction score
544
First Language
English
Primarily Uses
RMMZ
@Knightmare I have updated this to version 1.1.0 which should solve the problem. It now discovers enemies that have appeared at the start of every turn, and it also discovers them whenever they attack or are attacked.

Version 1.1.0
- Added additional checks during battle to discover enemies
 

Knightmare

Knight of the Night
Veteran
Joined
Mar 14, 2012
Messages
1,263
Reaction score
326
First Language
English
Primarily Uses
RMMZ
Thank you very much for doing this! I also just made you a salad with some "lettuce" over there wink wink.
 

CrocPirate

Veteran
Veteran
Joined
Sep 1, 2020
Messages
91
Reaction score
110
First Language
English
Primarily Uses
RMMZ
Thank you for making this plugin. But I was wondering if there will be a way for the Encyclopedia entries to recognize message code, mainly \i[x] for icons and \c[x] to change the color of the text?
 

Attachments

  • Test0.png
    Test0.png
    609.1 KB · Views: 72
  • Test1.png
    Test1.png
    510.8 KB · Views: 70

casper667

Casper Gaming
Veteran
Joined
Mar 15, 2012
Messages
432
Reaction score
544
First Language
English
Primarily Uses
RMMZ
@CrocPirate I know it is a commonly requested feature, but it is also not so easy to do with how I draw the custom description lines so I am not sure when I will have time to get to this. I would also want this to be a feature for all of my plugins instead of just this one. Eventually I will be adding this feature, just not sure when right now.
 

cincave

Warper
Member
Joined
Sep 28, 2020
Messages
2
Reaction score
1
First Language
C
Primarily Uses
RMMZ
Hey @casper667. Thanks for this. Quick question: can we add other fields for the custom entries?

Like additional images and more
 

casper667

Casper Gaming
Veteran
Joined
Mar 15, 2012
Messages
432
Reaction score
544
First Language
English
Primarily Uses
RMMZ
@cincave Not right now, I could maybe add it though. What would you all want in the other fields?
 

cincave

Warper
Member
Joined
Sep 28, 2020
Messages
2
Reaction score
1
First Language
C
Primarily Uses
RMMZ
@casper667 Thanks for responding, dude. I suppose my request is if you could rewrite the code for custom entries to accept more fields that the user can designate. If I wanted an Atlas, I want the custom entry to allow an "Established" field, "Area" field and "Product Import and Export" etc.

I guess when you prompt for "category" for a custom entry, it should also ask for the custom fields we wanna add for that particular category entry.

Also, the option to add more images would be great. 2-3 is the perfect amount.
 

Zaven

Veteran
Veteran
Joined
Aug 22, 2020
Messages
40
Reaction score
17
First Language
German
Primarily Uses
RMMZ
Thank you for another great plugin. I just noticed that when changing from a category with a lot of entries to one with less, the list is not displayed (does not scroll up). When the list is activated, only the first entry is displayed, and the list appears again when you scroll upwards.

Encyclopedia_1.pngEncyclopedia_2.png
 

poorrabbit

Veteran
Veteran
Joined
Mar 15, 2014
Messages
164
Reaction score
124
First Language
English
Primarily Uses
RMMZ
I am going to try this out later today in any case, but I have a question:

My enemies stats are adjusted in every battle to match character level and to have modifiers such as "strong" (more HP/ATK). Does this plugin grab the stats from the actual enemy being fought or does it grab enemy stats from the DB?

I am guessing the later...but hopeful on the former...
 

casper667

Casper Gaming
Veteran
Joined
Mar 15, 2012
Messages
432
Reaction score
544
First Language
English
Primarily Uses
RMMZ
@poorrabbit It loads all data from the database, so if your enemies scale (or anything else scales) it will show the base from the db.
 

Latest Threads

Latest Profile Posts

RE4make almost had me with their demo until I got to the dog stuck in a bear trap and realized that he was dead and could no longer be saved. Just not the kind of reimagining I'm interested in.
Here's some dudes that I'm drawing for Jimmy's Quest!
autredo.png
Autism Acceptance Month 2023!


Did this randomly in my free time, I guess today is a good day to show it.
If I were to not exaggerate, I would say that I have changed my damage formula about a million times by now. Give or take 1 or 2.

Forum statistics

Threads
130,017
Messages
1,207,050
Members
171,280
Latest member
Seancreatif
Top