TAA_BookMenu (v1.5.1)

taaspider

Veteran
Veteran
Joined
Jan 27, 2017
Messages
105
Reaction score
119
First Language
Portuguese
Primarily Uses
RMMV
TAA_BookMenu - v1.5.1
Created by taaspider

Terms of Use
Any plugins developed by taaspider are free for use for both commercial and noncommercial RPG Maker games, unless specified otherwise. Just remember to credit "taaspider".

Redistribution of parts or the whole of taaspider plugins is forbidden (which also includes reposting), unless it comes from the official website (linked within the post). You are allowed to edit and change the plugin code for your own use, but you're definitely not allowed to sell or reuse any part of the code as your own. Although not required to use my plugins, a free copy of your game would be nice!

Introduction

When we create a game, we usually create a whole new world rich in lore and details, and want to make it all available to the players, so that they can understand every single detail we develop. However, just dumping it all in lengthy dialogues usually bore and scare most of the players, who will simply give up on your world.

A common alternative used by many AAA games is to minimize dialogue and exposition, and provide additional details through in-game books.

This plugin aims to provide just that for your game: a book menu where the player can read up additional lore when he feels up to it. You can place books throughout your game, providing a bit more of context for hungry players as they progress, and keeping exposition to a minimum.

Features
  • Creates a main menu command gathering books the player discovers throughout your world, letting them read whenever they want;
  • Allows the dev to call a detached window and show the contents of a book outside the menu;
  • Input your game books into the engine using either the Plugin Manager or an external JSON file;
  • Compatibility with multilanguage plugins that uses multiple external files for text;
  • Allows the dev to setup background images for both scenes separately, with options to use different images for each window or a single image for everything;
  • Allows you to include inline images along with the book text. The image can be used with its original size, or proportionally resized through a special escape code.
  • Use inline trailing images to give a nice finishing touch to your books!
  • Scroll book text by cliking (PC) or touching (mobile) the arrows or swyping up and down;
Solar_Flare also developed a nice add on for this plugin, which allows books to be loaded from external text files (one file per book). I recommend checking it out here.

Screenshots

Screenshots were taken from the original MV post, but starting on version 1.5.0 there is also support for MZ.









View attachment 161834

How to Use

First of, download the plugin here. There's a bunch of parameters that allows you to customize each of the scenes (the detached book window and the book menu). The plugin's help section describe most which are not self explanatory, try taking a look there if you feel lost.

One important thing though... you have to set up your books before you can call them inside your game. There's two ways of doing that: inside the Plugin Manager itself or using external JSON files. The plugin can only work with one of this methods at a time, so you need to chose which one you want at the "DataSource Type" parameter. I'll enclose the instructions for each case in spoiler tags below to make it more readable.

You can also test the plugin using my sample demo project. It was built with MV, but you can open it with MZ as well (just open the game.rmmzproject file and you're good to go).

There's two main parameters to configure:
  • Category Order: List your book categories in the order you wish them to appear in the menu command. If you don't wish to display categories, input at least one entry here and choose to hide categories in the Menu List Window options;
  • Books: Here you'll have to list all the books you want to make available to the player. Each book have the following attributes:
    • Title
    • Title Color
    • Text
    • Category
    • Id
    • Custom Background
    • Custom Background Mode
The book category parameter must be one of the categories listed in the Category Order parameter.
The Id is used only to order the books under each category. If you leave all Ids equal (0), the plugin will use the order it reads the books from the editor (usually the order you input them).
Title Color is an optional parameter that allows you to set a custom color ONLY on the title section of the scene. So that it will appear with the default color on the list section of the menu, and the custom color on the title window. If you want a custom color on both windows just use color escape codes.

If you want a book to have a custom background (overriding the global settings), just select an image for the "Custom Background" parameters. Leave it blank to go with the global background settings.

In this case, there's a bunch more parameters to configure. But first, let's establish the file format the plugin expects to find:

{
"library": {
"categories": [
"Category 1",
"Category 2",
...
"Category N"
],
"books": {
"title1": {
"title": "Book Title",
"titleColor": 1,
"text": "Book's content.",
"category": 0,
"id": 0,
"customBg": "File Name",
"customBgMode": 11
},
"title2": {
...
},
...,
"titleN": {
...
}
}
}
}


A few important notes:
  • The "category" tag must be a number, referencing the category index in the "categories" array;
  • The "id" tag is used to control the ordering of books in the list window. It must be a number, but it can also be omitted and the plugin will define the order according to the order it reads the books from the file (usually the order they're placed);
  • titleColor is an optional parameter that allows you to set a custom color ONLY on the title section of the scene. So that it will appear with the default color on the list section of the menu, and the custom color on the title window. If you want a custom color on both windows just use color escape codes.
  • Each book must have an unique key tag. This tag will be used by most of the plugin available commands (its the "title1", "title2", ..., "titleN" references above);
  • customBg and customBgMode are optional, use them only when you want the book to have a custom background image. If you want it to go with the default background settings, just omit the parameters or set customBg to an empty string ("");
  • customBgMode must be an integer. It is read bitwise by the plugin, so long story short, use one of the following values:
    • 5: Detached Text Window Only
    • 6: Menu Text Window Only
    • 7: All Text Window Only
    • 9: Detached Title + Text Window
    • 10: Menu Title + Text Window
    • 11: All Title + Text Window
You can customize the objects inside the JSON file as you wish using the other plugin parameters:
  • Category List: Specify the path to the array object containing the list of categories you'll use. You need at least one category, so if you do not wish to show categories in the book menu create at least one entry and use it for every book, them hide categories in the Menu List Window parameters. In our little example above, it would be "library.categories";
  • Root Context Object: The path where we'll find our book objects. Again, in our example it would be "library.books";
  • Title/Text/Category/Id Object: The name of the object inside each book holding its name, text, category and Id;
  • Undefined Category: If per any chance the plugin fails to recognize the category text, place a default text to show in its place;
File Type

This plugin has a default compatibility with localization plugins, like Iavra's Localization Core, for example). Plugins like this work with multiple external files, one for each language. If you want to use this feature, choose "Type" "Localization File" and point the plugin to one of the language files (any of them, it doesn't matter which), and configure "Localization Escape Code" accordingly, so that this plugin can build the placeholder tag for you.

If you're not using a localization plugin and just want to load books from a JSON file, choose "Dedicated File" and ignore the "Localization Escape Code" parameter.

The plugin gives a lot of options for you to setup background images on both scenes. Configurations are kept separate for each one, so you can set different backgrounds for each scene if you wish.

All images must be in png format and located in the img/pictures folder. The parameters to config each type of background image is shared by all possible options.

A warning though, the plugin won't manipulate, stretch or shrink images. It will only place the images as they are. It's up to you to provide images on the right size.

Apart from choosing the images, you must also inform the plugin how you want it to present them. Options are a little different between scenes because the Menu Scene has an additional window (the list window), but the logic is the same. Here's a few things you should know:
  • If you set it up as "None", the plugin will paint a black background, with no image;
  • If you set "Default Map Print", it will keep the base class default, which is using a print screen from the map the player is located;
  • If you set "Full Background Image", the image will be place as a background for the whole screen, regardless of the size of your windows;
  • There's a bunch of options saying "Multiple Images", and then a combo highlighted between parenthesis, like "Title + Text", "Title / Text + List", for example. The dash sign (/) means the windows will share a single image, while the plus sign (+) means it will use a different image;
  • The option "Single Image" will set the same image across all windows in the scene. If the scene takes the whole screen, it will work exactly as the "Full Background Image". If not, it will be placed as best as possible to cover all windows on the scene, and nothing more;
  • There are also options to allow you to combine different configurations, so you can customize the background to your liking!

The escape code %img("filename") can be used to include an image along with the book text in its original size (or resized to fit into window, see next section). The plugin will always look for images in PNG format in the pictures folder.

You can also include optional parameters to force the plugin to resize the image to your liking: % img("filename", width, height) (again, no space between % and img). The code parameters width and height are percentile numbers. For instance, if you want the image to be displayed in half its original size use % img("filename", 50, 50).

Ex.: %img("Sword", 50, 50)
%img("Sword", 40, 20)

You can also include inline trailing images at the beginning of text lines in the book text. This can add a nice finishing touch to your books. To use this feature, include the proper escape code: %in_img("filename"). You can use the same options to resize the trailing image as with the common image tag (ex.: %in_img("filename", 10, 10).

One additional note: images are loaded into memory asynchronously. Which means the plugin won't wait for it to be ready to show the book's text. If, however, the image finishes loading and the screen is already showing your book's text it will be automatically updated. In other words, slower machines may see the book load without the image, just to see the screen automatically update a few seconds later including it.

EDIT: Beginning on version 1.4.1, a new parameter was included (Inline Image Preloading), which when turned on triggers the plugin to try and preload inline images whenever a book is highlighted on the book list, before text is loaded. The goal is try to prevent the behavior described above. However, image loading is still asynchronous. Even though the plugin will try to preload it, depending on your specs and image size you can still experience images loading after the text.

Main Menu Options
- Use this plugin command to enable / disable / show / hide the main menu entry for the book menu.

Book Commands
- Use this to read / learn / forget / preload images / read and learn books. Here's what each option means:
+ Read: opens the detached window with the book contents, but do not add the book to the books read list;
+ Learn: only adds the book to the books read list;
+ Forget: only removes the book from the books read list;
+ Preload Images: force preload all inline images from the book, to make a close Read command faster;
+ Read and Learn: opens the detached window with the book contents and also add the book to the books read list;
You can specify a comma separated list of books.

Category Commands
- Use this to learn / forget all books from the specified category. You can specify a comma separated list of categories.

Book List Features
- Handle the following commands:
+ Show Categories: Enable to show book categories, Disable to hide them;
+ Hide Unread Books: Enable to hide unread books, Disable to show all books;
+ Show Title Bar: Enable to show title bar for the detached book window or Disable to hide it;
+ Preload Inline Images: Enable to preload inline images when highlighting a book in the book menu, Disable to load images only when the book is loaded;

Reset
- Reset read books, book list or both.

$gameSystem.isShowBookMenu()
- Test if the book menu should be shown at the main menu.

$gameSystem.isBookMenuEnabled()
- Test if the book menu should be enabled at the main menu.

$gameSystem.isBookCategoriesVisible()
- Test if the books categories are visible in the list window.

$gameSystem.isUnreadBooksHidden()
- Check if books not found by the player are shown at the list menu.

$gameSystem.getTotalBooks()
- Return the total number of books in the game.

$gameSystem.getTotalBooksRead()
- Return the number of books the player has found.

$gameSystem.getTotalBooksFromCategory(category)
- Replace "category" with the category name, regardless of the datasource type selected. This will return the total number of books under this category. Remove blank spaces in the category name, if any.
Example: $gameSystem.getTotalBooksFromCategory("History");

$gameSystem.getTotalBooksReadFromCategory(category)
- Replace "category" with the category name, regardless of the datasource type selected. This will return the total number of books from the specified category that has already been read by the player. Remove blank spaces in the category name, if any.
Example: $gameSystem.getTotalBooksReadFromCategory("History");

$gameSystem.isBookRead(bookKey)
- "bookKey" should be replaced by the book tag, if you're using a JSON file as your datasource, or the book title (minus blank spaces) if you're using Plugin Manager. This will return true if the player has already read the book, or false if he didn't.
Examples:
$gameSystem.isBookRead("bookJsonTag");
$gameSystem.isBookRead("PluginManagerTitle");

$gameSystem.resetLibrary()
- Reload the whole book list and books read. It might be useful when testing your game.

$gameSystem.resetLibraryBookList()
- Reload all book data from your datasource, but keeps the list of books read. This should be used carefully, as changing category/books names, order, or ids, can be game breaking. It maybe useful for testing, but I recommend caution if it is to be used on your released game.

$gameSystem.resetLibraryBooksRead()
- Reload the list of books read, making the player forget all books read.

$gameSystem.createExportDummy()
- Creates a dummy map with 1 tile and an event with commands to show every inline image called from within books. This is a useful tool to run just before exporting your game. This dummy map prevents inline images to be deleted when selecting the option to exclude unused files. The command will always create a new map with a high index (last map id + 1). To see the dummy map you'll need to close and reopen the editor.

Touch/Click support allows the player to scroll book text by clicking the up/down arrows (when visible) or by touching/clicking and swyping up and down the book text.This parameter has three possible values:
  • Disable: completely disables Touch/Click support;
  • Up/Down Arrows Only: Enables support only for scrolling by clicking / touching on the up/down arrows;
  • Full Support: Enables support for scrolling using the up/down arrows and by touch/click and dragging up and down.
By default this option is set to 'Full Support', but if you're using another plugin to provide custom touch behavior you may stumble into compatibility issues. In that case, try disabling full support either total or partially. I cannot guarantee compatibility with plugins which customize touch inputs with Full Support on ('Up/Down Arrows Only' should be okay though).

The text window must be activated for this feature to be available. Simply highlighting the book (which loads the text) in the book menu is not enough. The book must be selected with 'ok' to activate this feature.


Notes
  • This plugin does not implement wordwrap, as it is widely available with a bunch of free plugins out there. I won't be reinventing the wheel, so I highly recommend using one of those. I, for instance, use Visustella's Message Core;
  • This plugin creates almost everything it uses, but plugins that handle text or customize the engine code for window objects may cause conflicts;
  • I don't know how many around here go through the trouble of using multi language plugins like me, but I've built this plugin to make those people lives easier. You can set it up so that it reads the books data directly from one of your JSON language files, and just reference the key tag of each book in the plugin commands. The plugin will take care of using placeholders to make sure the right language is used. I've tested it out with Iavra's Localization Core, but it should work with any plugin of this kind if there are JSON files involved;

Credit and Thanks
  • A huge thanks to CodeBreakerZ and his tutorial videos, which really helped me begin to understand the engine default scripts and how I could slowly start bringing my ideas to life. Although I know my way through coding, I'm not an expert in Javascript and had no idea where to start messing with the engine before his videos;
  • Also, I probably would have taken ages longer to find my way through the default code without studing a few of Yanfly's plugins. So... really... thank you for your hard work, and keep flooding ourselves with amazing free plugins. A lot of things I dreamed of building back at the XP ages are now available thanks to you.
  • A special thanks to Pie4aPie for suggesting the trailing images feature. That was a nice addition to the plugin!
  • Another thanks for Solar_Flare for the feedback and pointing out a few enhancements for version 1.4.1 and 1.4.2.
  • A special thanks to DarkSearinox92, who provided me with a ton of feedbacks and helped me test version 1.5.0 fixes and peformance enhancements!
  • If you're using another plugin to provide wordwrap, it may be disrupted when using inline images. It happens because in order to allow inline images I have to break down book input, and I treat each text and image section separately. So, the wordwrap tag included at the beginning of the text is lost when there's one or more inline images. The workaround for that is to simply manually include a wordwrap tag after an inline image tag if you're going to continue the book's text.
    For example, using Yanfly's wordwrap tag: '<WordWrap>Initial text.%img("Sword")<WordWrap>Text after image.'
  • If using the Plugin Manager as source and a book text is left with an empty the game can break if you try to access the book. As I see no use on loading a book without any text, I'm not planning on failsafe that for now.

  • Version 1.5.1:
    • Fixed an issue with window layers on MZ, which could cause incompatibility with other plugins;
    • Fixed a bug with the plugin command to learn all books from a category when books didn't have sequential ids (like having books with ids 1, 4, 10 instead of 1, 2 and 3). It would mess with category book count in the menu scene;
  • Version 1.5.0:
    • Added MZ compatibility;
    • Reworked a few functions, enhancing performance a bit;
    • Discontinued the parameter "Text Windows WordWrap Fix", as it is no longer needed (found a better solution);
    • Added support to home/end keys into the book text window, allowing quick navigation to the start or end of your book text;
    • Added some steps to validate runtime images (inline images and custom backgrounds) exists before trying to load them. This way the game won't crash if it tries to load an image that is not available in the filesystem;
    • Added a plugin command to force inline image preloading of a specific book;
    • Revised and enhanced detached scene book performance when inline images are present;
    • Fixed an issue with hide categories plugin command;
    • Added a parameter to allow a custom folder for inline images, making it easier to copy them to an exported project (since default export with exclude unused files don't consider such files);
    • Added a few scrolling parameters;
  • Version 1.4.2:
    • Added the parameter 'Load Before Title', allowing to hold game load until all books are loaded to memory, or running it asynchronously (as it was with previous versions)
    • Fixed an issue with book counting when Hide Unread Books is disabled
  • Version 1.4.1:
    • Added a parameter to the ReadBook command, to allow a book to be read in the detached window without marking it as read. Simply call the plugin command as follows: ReadBook <BookName> false
    • Added a fix to prevent errors when loading save files created before the plugin was enabled in the plugin manager;
    • Changed how save files are handled, so that only books read are stored (not the whole library). This will make save files lighter. As a result, the "Reset Book List On Load" parameter was removed (book list will always be reset on load, as only books read are saved);
    • Added a "@require 1" to each image background parameter, so that the editor will know to keep them when exporting with the exclude unused options enabled. Thanks to Solar_Flare for pointing it out;
    • Added the script call $gameSystem.createExportDummy() to create a dummy event calling a show picture for each inline image. This is a tool to be used just before exporting your game, so that "exclude unused files" won't delete inline images;
    • Changed the function used to load the library from DataManager.createGameObjects to DataManager.loadDatabase;
  • Version 1.4.0:
    • Fixed arrows not showing in the text window when scrolling;
    • Fixed clipping text on text window when using wordwrapping plugins (enable 'Text Windows WordWrap Fix' to activate it);
    • Fixed Auto Place, Enable and Show menu parameters;
    • Added native plugin support to touch/click and drag scrolling, and scrolling by clicking/touching the up/down arrows. Touch/click support can also be disabled (total or partially) using the 'Native Touch/Click Support' parameter;
  • Version 1.3.7:
    • Added a handler to allow closing the detached window when pressing 'ok' as well as 'cancel';
    • Fixed the black text window issue on large books with lots of line breaks;
  • Version 1.3.6:
    • Added the 'Load Closed Categories' parameter to allow categories to be automatically closed when loading the plugin menu. If set to NO, the plugin will retain previous behavior of always showing every category open
  • Version 1.3.5:
    • Included parameters that an be used to reset or keep book list on game load. If set to reset, New books created into the selected datasource will be loaded into the game, otherwise it will keep the list of books previously loaded by that save. Similarly, there's another new parameter that allows you to reset or remember books read on game load. Which means you can set the plugin to make it so all books listed on the book menu are forgotten, or remembered on game load;
    • Added script calls and plugin commands to reset the whole library, only the book list, and only books read (forget all books found);
  • Version 1.3.4:
    • Added new feature to allow trailing inline images into book texts
    • Fixed bug with text padding not being applied to book text
    • Fixed an issue when using RS_MessageAlign that caused the first line to
      not be aligned correctly
  • Version 1.3.3:
    • Fixed bug that caused odd window behavior when two or more books in a row had custom backgrounds.
    • Fixed bugs that interfered with windowskin and window opacity parameters
      Option added to set a custom color for book titles only in the title section. When in book menu, it will appear with default color in the list section while using the custom color in the title section. Use escape codes if you the same color on both sections.
    • Included a small fix so that the first item on the list is automatically selected when the Book Menu is loaded.
    • Fixed an issue when using inline images along with wordwrap
  • Version 1.3.2:
    • Fixed compatibility with MOG_MenuCursor (and probably with most plugins that creates a new layer over the scene as long as it stays over the WindowLayer).
  • Version 1.3.1:
    • Added a custom log function to help me debug future issues;
    • Fixed compatibility issues with Olivia_StateTooltipDisplay Plugin.
  • Version 1.3.0:
    • Fixed a bug caused by the custom background change of the previous version that could cause the game to crash when opening a book with no custom background;
    • Reworked the Window_BookText prototype to allow inline images to be included along with a book text.
  • Version 1.2.0:
    • Included a new feature allowing books to have custom background images that override the default ones. It comes with options to use the custom images on the detached scene only, menu scene only, or both. The image can also be set to cover only the text window or title + text windows.
  • Version 1.1.0:
    • Reorganized all aliases inside an object, to make them easier to track down;
    • Included the possibility to customize scene backgrounds with images. The Detached Scene and Menu Scene have different configurations, so that they can have different backgrounds if the dev wishes.
  • Version 1.0.1: Fixed mouse wheel scrolling, that wasn't working as expected;
  • Version 1.0: First release!
 
Last edited:

BrentBAM

Veteran
Veteran
Joined
Jul 22, 2020
Messages
56
Reaction score
26
First Language
English
Primarily Uses
RMVXA
Sounds perfect for making some tutorials with pictures! Will definitely give this a try. Thank you!!
 
Joined
Mar 9, 2013
Messages
353
Reaction score
89
First Language
Spanish
Primarily Uses
N/A
This can be even use to make an history of your game. Can you enable/disable text by switches/vars right?
 

chocopanda

Veteran
Veteran
Joined
Sep 24, 2017
Messages
41
Reaction score
16
First Language
English
Primarily Uses
RMMV
how do i call this or put this in the menu via script call w/o using auto place command? it seems that the instruction is only for binding in mv menu manager and not for main menu core for visustella

nvm. figured it out
SceneManager.push(Scene_Book);
 
Last edited:

chocopanda

Veteran
Veteran
Joined
Sep 24, 2017
Messages
41
Reaction score
16
First Language
English
Primarily Uses
RMMV
okay. some problems..

1. the plugin is not showing the detached window for read or read and learn (if the category is hidden -- i don't know if this is intended)
2. One you select a category and read it, you'll be directed to a blank window with no escape or way to return to the menu.. all you can do is quit the game
3. the window overlaps even the back ui button on the menu

i'll post more if i found out something
 
Last edited:

jhs

Villager
Member
Joined
Jun 22, 2019
Messages
8
Reaction score
7
First Language
korean
Primarily Uses
RMMZ
9FCE408C-B1EF-482D-9B15-47892F6DDF19.jpeg
(I am using a translator)
An error has occurred.
Please correct it.
 

taaspider

Veteran
Veteran
Joined
Jan 27, 2017
Messages
105
Reaction score
119
First Language
Portuguese
Primarily Uses
RMMV
This can be even use to make an history of your game. Can you enable/disable text by switches/vars right?
If you mean hiding text in a book using switches and variables, no, this feature is not present. What you can do is write multiple books and hide/show then based on the learn book feature. Set it up to hide unread books, then mark as unread (forget) to hide, or learn to show.

how do i call this or put this in the menu via script call w/o using auto place command? it seems that the instruction is only for binding in mv menu manager and not for main menu core for visustella

nvm. figured it out
SceneManager.push(Scene_Book);
Sorry, forgot to update that section of the help file. I'll fix that in a future release. Glad you already found the answer. Just a small detail... you need to call "Scene_BookMenu" to add to main menu, not Scene_Book. Scene_Book triggers the detached scene, Scene_BookMenu triggers the menu view.

1. the plugin is not showing the detached window for read or read and learn (if the category is hidden -- i don't know if this is intended)
Just tested it here and it works. Are you sure the book key you're passing to the plugin command exists?
If the book key is not found the command aborts to prevent a game crash. That's the only scenario where I can replicate what you describe.

2. One you select a category and read it, you'll be directed to a blank window with no escape or way to return to the menu.. all you can do is quit the game
What do you mean by selecting and reading a category?
Are you learning all books from a category and accessing the books through the book menu?
I need more details to understand what's happening.

3. the window overlaps even the back ui button on the menu
You can fix this changing the window positioning through the plugin's parameters.
 
Joined
Mar 9, 2013
Messages
353
Reaction score
89
First Language
Spanish
Primarily Uses
N/A
If you mean hiding text in a book using switches and variables, no, this feature is not present. What you can do is write multiple books and hide/show then based on the learn book feature. Set it up to hide unread books, then mark as unread (forget) to hide, or learn to show.
Yeah, that way might work, also it will be better sorted. I'll try it when time comes.
Thank you for the tip.
 

Zaven

Veteran
Veteran
Joined
Aug 22, 2020
Messages
30
Reaction score
14
First Language
German
Primarily Uses
RMMZ
Thank you for this great plugin. I was setting up a crafting system and was about to set the recipes as common events and showing the text in the normal text window. But then I discovered the plugin and it has exactly what I need.
 

taaspider

Veteran
Veteran
Joined
Jan 27, 2017
Messages
105
Reaction score
119
First Language
Portuguese
Primarily Uses
RMMV
View attachment 161889
(I am using a translator)
An error has occurred.
Please correct it.
Sorry, I don't know why I didn't see your post before. I actually need more information to help you there. Can you open the console window when the error occurs (F12) and send me a print?
If I am to guess here, I think you might be trying to run your project with Plugin Parameters set to use a JSON File as source, but you don't have a JSON file. If you send me the console output I'll be able to confirm this.

Also, I've updated my sample demo project. Try taking a look at it to see how it works.
 

Heartless_Angel

Lv. 666
Veteran
Joined
Mar 19, 2018
Messages
40
Reaction score
43
First Language
German
Primarily Uses
RMMZ
I´m so glad you ported this, I used it in my games mv version ^^
So being able to use it again in MZ will be great <3
 

jhs

Villager
Member
Joined
Jun 22, 2019
Messages
8
Reaction score
7
First Language
korean
Primarily Uses
RMMZ
Sorry.
I didn't put the books.json file.
But there was another problem.
I tried the plugin command 'Read', but the window does not appear.
What is wrong?
 

taaspider

Veteran
Veteran
Joined
Jan 27, 2017
Messages
105
Reaction score
119
First Language
Portuguese
Primarily Uses
RMMV
Sorry.
I didn't put the books.json file.
But there was another problem.
I tried the plugin command 'Read', but the window does not appear.
What is wrong?
The book key you're passing to the read command needs to exist in your JSON file, otherwise the plugin will ignore the command to avoid crashes. Make sure that the book you're calling is in there.

If it is, please send me a print from your event contents and the JSON file contents for your specific book (you can send the whole file if you wish, but I just need to check your specific book).
 

jhs

Villager
Member
Joined
Jun 22, 2019
Messages
8
Reaction score
7
First Language
korean
Primarily Uses
RMMZ
I don't know why, but it suddenly resolved.
I didn't touch the json file, but it works.
Sorry and thank you.
 

Zaven

Veteran
Veteran
Joined
Aug 22, 2020
Messages
30
Reaction score
14
First Language
German
Primarily Uses
RMMZ
I have a little problem with the numbers. I assume the numbers behind the categories are the number of books? I have two categories with one book each. So it should be (1) there? (At first I only had one category with two books. Then it said (3), so I assumed that books and category were just added together. But that is no longer true either). Am I doing something wrong, or is the counter not quite right?
books.png

Edit: found out what happened. If you give an ID to a book, this ID is added to the number of books. In the example image book one has the ID 1 and book two the ID 2. I have given book two the ID 4 and the number behind the category changes to (5).
 
Last edited:

taaspider

Veteran
Veteran
Joined
Jan 27, 2017
Messages
105
Reaction score
119
First Language
Portuguese
Primarily Uses
RMMV
I have a little problem with the numbers. I assume the numbers behind the categories are the number of books? I have two categories with one book each. So it should be (1) there? (At first I only had one category with two books. Then it said (3), so I assumed that books and category were just added together. But that is no longer true either). Am I doing something wrong, or is the counter not quite right?
View attachment 163310

Edit: found out what happened. If you give an ID to a book, this ID is added to the number of books. In the example image book one has the ID 1 and book two the ID 2. I have given book two the ID 4 and the number behind the category changes to (5).
That is probably a bug, as it should not be happening. I'm without access to my computer right now, but I'll take a look this weekend. I'll let you know if I find anything.

EDIT: @Zaven , just tested it over here with both MV and MZ and could not reproduce the behavior you described. Can you PM me with your book settings, please?
Send me your plugins.js file so I check your plugin settings. If you're using a JSON file as source for the plugin please send me that as well.
 
Last edited:

jhs

Villager
Member
Joined
Jun 22, 2019
Messages
8
Reaction score
7
First Language
korean
Primarily Uses
RMMZ
I was using it well, but an error occurred.
Please look at the photo and the file.

BookMenuError2.png
 

Attachments

Last edited:

jhs

Villager
Member
Joined
Jun 22, 2019
Messages
8
Reaction score
7
First Language
korean
Primarily Uses
RMMZ
It was because of CGMZ_ToastManager.js.
It seems to be incompatible with this.
 

taaspider

Veteran
Veteran
Joined
Jan 27, 2017
Messages
105
Reaction score
119
First Language
Portuguese
Primarily Uses
RMMV
It was because of CGMZ_ToastManager.js.
It seems to be incompatible with this.
I'm not familiar with this plugin. From what I could learn doing a quick search I see it creates additional windows on scenes. That can indeed cause trouble with my plugin. I can take a look and see if there is anything on my end I can do, at least to prevent a crash, but I won't promise anything (including a deadline).

I'll let you know when I manage to work on this.
 

Users Who Are Viewing This Thread (Users: 0, Guests: 1)

Latest Threads

Latest Posts

Latest Profile Posts

My pumpkin! Anyone like Fallout?

It's not terrible, but could be better. This thing took me over an hour to carve. :kaophew:

Dad's watching a WWII documentary while I work on some cool assets for my games. I just love RPG Maker!
Also Happy Halloween! Dad's friend won't be coming unfortunately, but Dad will still be taking me to Boxi Park to have some fun tonight! I'll be posting a video on my YouTube channel of the show, and I'll be sure to post a link here.
"Nightmares exist outside of logic and there's little fun to be had in explanations. They're antithetical to the poetry of fear. In a horror story the victim keeps asking why, but there can be no explanation and there shouldn't be one..." - Stephen King
I feel people seek explanation and demand it sometimes in games, but in the horror genre, well, maybe you shouldn't have one. Silent Hill 1 comes to mind...
Managed to implement QSprite.

Always double check your plugin order.


Finally! I've been puzzling over why it wasn't working for two days now. Turns out all of my calculations were correct, I just forgot to give some events hitboxes. :kaoswt: Now my randomly generated maps check for collision errors, and move stuff around in real time if they finds any. :LZSexcite:

Forum statistics

Threads
104,682
Messages
1,008,069
Members
136,171
Latest member
emcautley1
Top