Log in with to leave a comment.

Hello! Your plugin is really cool, but i have one problem. I use plugin manager as source and books are not displayed in in-game menu. And the names of books and categories can includ only one word. I use cyrillic alphabet, maybe this is the problem? Thanks in advance!


Hi there!

Is the List Window "hide unread books" enabled? If so, books will only be displayed after you mark them as read with plugin commands.

In theory, using the cyrillic (or any other type of alphabet) should not be a problem. I have never tested it though, so I would not rule out this possibility completely. The plugin has no restriction to using book titles or categories containing multiple words. The only thing is that when using the plugin manager as source the plugin automatically trim out blank spaces to convert the title in the book key to be referenced in plugin commands. For example, if you name your book "Это тест" (used google translate here hehe), when using a plugin command to read it you would call it "Этотест" (that applies on both MV and MZ). The title displayed on the menu is the one with blank spaces, you just need to remove them for the plugin to locate it.

Let me know if this solves your issues. If not, I may need your help setting up a test project replicating them so I can take a look. I checked on my sample project and was unable to find anything (using western alphabet though).

Thank you very much,  you helped me a lot! Yes, the problem was in "hide unread books". Thank you again, for your help and for this very cool plugin. Have a nice day! :)

Glad it worked out! :D

First of all, great plugin. We are loving it!

I would need some help with adding the IAVRA plugin though.

I have adapted the JSON method with the Localization type, but I can't get it to work.

My JSON file are in a extra folder (root/lang/books.json)

And I also set it in the Plugin parameters.
Do you have any ideas about it?



There's two ways you can make Iavra's localization plugin work with TAA_BookMenu. The first one is to create a books.json file (or use the Plugin Manager) and set each book field as a localization key (Iavra's plugin uses #{{key}} by default, if I'm not mistaken). But that means you'll basically duplicate the entire library in yet another file.

The second way is the built-in integration I did with both plugins. To use it, set the datasource type to "Localization File" and point the file to one of your localization files. Then simply put the whole books.json structure inside your localization file (and have it on each language file with the same structure). Be sure to set the Localization Escape Code to the same key used by Iavra's plugin. And that's it!
Basically, you won't need the books.json, because its contents will be replicated into each language file (don't translate the object keys, just the texts).

I'm not sure if my explanation wasn't a bit confusing, so let me know if you still have questions.

Hello Taaspider!

A quick question, have you used Luna Engine with this plugin?

Hello there!

I have not. To be honest, I'm not familiar with the Luna Engine. I'll look into it, but I have to warn you it will take some time, as I currently have a lot of bug fixes and plugin compatibility requests piled up on my backlog. I'll get back to you as soon as I have looked into it.

Thanks for the quick response! I will try some tests too, and if i get something i will reach you! 

I'm not sure if i'm doing something wrong or if i'm just blind, but the Plugin doesn't seem be working on my end.

For Reference, i'm using RPGMaker MZ.

As far as i can see from the Parameters the Books Menu should be enabled by default. However no matter what i do it doesn't appear at all.

I also tried to make a simple book and open it with the read command and nothing happened again.

Is there something i'm missing?


Ok... are you setting up books using an external JSON file, or the Plugin Manager?
Make sure the proper option is selected in the parameter "DataSource Type".

For the book menu entry to be automatically included in the main menu, be sure to set "Auto Place Command" is set to true. Also, if the "Hide Unread Books" within the "Menu List Window Config" settings is set to "true", books won't be listed until a plugin command is issued to mark is as read (learn book, for example).

If you're using the Plugin Manager as source for your books, the book title is automatically converted to the book key by eliminating blank spaces. So, for example, the book "Test Book Number 1" would have a key "TestBookNumber1". This key is what you need to reference when issueing the read command:

Make sure your book key is correctly referenced in the plugin command.

If none of that solves your issue, I'm gonna need to ask you to setup a simple test project, zip it and send me a download link so I can take a look on what's going on =/

Issue is fixed.

Turns out the Word wrap plugin i used was not made for MZ so it couldn't load.

Thanks for the help though.

Is there a way that you can add the ability to add an icon next to the Book menu title? I am using Visustella Main Menu core and the Book menu looks a little out of place not having an icon next to the name. Any help would be appreciated!


You mean the menu item that leads to the actual book menu, right?

I think you can probably use Visustella's plugin for that. Just disable the "Auto Plance Command" parameter on BookMenu and use Visustella's method instead. Then you can use their plugin to select an icon and keep the same visual pattern for all entries.

(1 edit)

mind if you can tell me what the javascript command for it is?
I really wanna try to add that into my game for sure. But well I am sorta dumb on how to properly use it with visustella main menu core lol

You mean to command to trigger the Book Menu?

You can use the command SceneManager.push(Scene_BookMenu)
There's detailed instructions for everything at the plugin help section, including a few integration tips (inclusing Visustella's Main Menu). Be sure to give it a read! :)

Hello, I just want to ask. Could you consider adding auto word wrap feature for this plugin?

 VisuStella Message Core seems to be the only plugin that could work for word wrapping the text in this plugin (for MZ), the others only works for normal message windows. 

Unfortunately for some reason I can't use VisuStella Message Core, so I'm having a hard time to manually put line breaks here and there then play the game just to see the result.

Thank you

Hello there!

I don't have plans to add word wrap into the plugin itself, but I do like the idea of implementing my own messaging plugin including it (and ensure it is compatible with all my plugins). I've added it to my backlog with a higher priority, but I can't promise a release date (have been having little time to code, unfrotunately). But you can work on your game expecting a compatible word wrap function will come soon! :)

Ah glad to gear that! Thank you very much. Looking forward to it! :)

Hello !

I'm having a weird issue with inline images. When I playtest the game inside RPGM, everything  works without problems, but after deploying the game, the inline images won't appear...

Do you have an idea of what could be causing this and how to fix it ?


Which version of BookMenu are you using?

Also... which deployment type? Is it Android / Web deployment?

The plugin checks if the image exists before loading it into the screen. If it doesn't find the image, it skips this steps instead of crashing. However, there was a bug on older versions where this check would never work for Android / Web deployments. This was fixed on 1.6.0, if my memory serves me well.

Another possible reason is the required image was not exported. If you export your game with the option to remove unused files checked, the default exporting engine does not consider BookMenu inline images (as they are dinamically loaded by the game). There's three ways of working around this issue:

  1. Not marking this option on export.
  2. Enabling this feature, then manually copying inline images to your deployed project.
  3. Running your game in test mode and issuing the $gameSystem.createExportDummy() script cal, which will create a dummy map and dummy event which will ensure all inline images are referenced by an event. Then export your game removing unused files as usual. Check the help file on how to use this command.

Woops, my bad ! It was fixed upon downloading the 1.6.1, I was checking the wrong file xD

Yep, everything is working ! Thanks for the help, and thanks for the awesome plugin you made !!! :D

Hello I'm having an issue getting books I created in the book.json to appear

Now they are there and they work, I call it with Plugin>Read and it shows up, everything looks good. But when I access the menu and select my section I changed imputiom what ever it was, to PlayerHelpBooks and the books I read show up there.

But.... When I open the Category, and soon as I  select the name of the book. It loads the text for a 1/2 second, then disappears with just a background?

And It locks me into that menu. So what am I missing?

I called the book with this Plugin Command.

Inside Event:
"Plugin Command: LibraryData learn book GatheringTools"
"Text Popup: You found an old book about organizing tools more efficiently."
And then Made a Varaible to store each book name. Just to reference it when they collect it "You found \V[113], in this old chest"

And it pops up in the menu, but soon as I select it it disappears.
Using the latest Steam>RPGM MZ


I changed a bit of code on version 1.6.1 to prevent this behavior when background images are not correctly set... I tested this a bit, but something may have slipped unnoticed. Are you using version 1.6.1, right?

If yes, can you setup a test project for me with the issue present?
You can send me a download link here, or send me a private message on facebook or the official RM forums.

With that I can check exactly how your parameters are set, reproduce the issue and debug to discover what is going on.

(5 edits)

Sorry it took me so long to respond, yes the issue is still present after updating the plugin. I'll try to setup a test and link it. I'll edit this post in a while.

Edit: Ok this is weird. I made a test project, it works fine.

Does it have to be high/Low in the list? And is it compatible with these plugins. I really need 5 of them.

Ok I found out what was causing this issue, it's the

CGMZ_ToastManager.js it crashed the Boo Menu.
Turning it off, all is ok. So just letting you know. I might have to find a alternative if it's not an easy fix on my end.

Here is the link, in case you need to check something.

Edit off topic, you do a lot of plugin stuff. How would one go about toggling a custom Menu I made in Hud Maker Ultra?
I mean I know i can just flip a switch, but I want to be able for the player to press [Tab] or [Q] to show hide this menu.

It's all rigged to show when the switch is on, I just bot sure how to toggle it. But thanks, have a great weekend.

Hi there!

Oh boy... I had made a patch for compatibility with CGMZ_ToastManager in previous versions, but I completely forgot to double check that after 1.6.1 changes. I'll take a look after work, it's probably an easy fix.

As for the off topic question... if all you want is to have a key input to toggle the switch, it should be quite simple actually. Just create a new "plugin" with the following code (untested), changing <number> to your switch number:

Input.keyMapper[9] = 'tab';
var alias_sceneMap_updateScene = Scene_Map.prototype.updateScene;
Scene_Map.prototype.updateScene = function(){;
   if(!SceneManager.isSceneChanging() && Input.isTriggered('tab')){
       $gameSwitches.setValue(<number>, !$gameSwitches.value(<number>));

This should work for the map scene. If you need that to work on battle as well we would need to add a bit more of code.

Dude thanks so much. It was driving me nuts trying to get it working.
I am  dumb when it comes to code, but love creating.

(1 edit)

Is it possible to call more than 1? I tried this.

Never Mind, I fixed it lol.

Input.keyMapper[9] = 'tab';

Input.keyMapper[80] = 'p';

var alias_sceneMap_updateScene = Scene_Map.prototype.updateScene;

Scene_Map.prototype.updateScene = function(){;

   if(!SceneManager.isSceneChanging() && Input.isTriggered('tab')){

       $gameSwitches.setValue(1, !$gameSwitches.value(1));


   if(!SceneManager.isSceneChanging() && Input.isTriggered('p')){

       $gameSwitches.setValue(2, !$gameSwitches.value(2));



Just got to figure out how to call a sound, looking up tutorials.

Hello again!

So... can you send me that test project (or at least the plugins.js file)? :|

I'm unable to replicate the error. I have an MZ test project with all my plugins, I added ToastManager there and run some tests, but everything is working fine here. I'm thinking that there may be a specific set of parameters triggering the error...

(1 edit)

Ok, let me try linking it. Slow upload speed.

My project is to big, it'll take forever. I'll try to help the best I can to explain it. It only glitches out while this plugin is active. And it's at it's default settings.

If it's disabled, it works fine, but if it's on the text just disappears. And you get locked in the menu.

I'm going to see if there is a way to compress the game to upload, if I can.

So I just made sure it was updated, bot the Plugin and Core, still does it. Is it possible I'm adding the books to the players library wrong?

Nah, you're using the plugin commands right. You're using MV's commands, but should work fine too. Also, I've seen this behavior you describe on past versions and it would regardless of how many or which books were available for the player. If it is what I think it is, there may be a combination of parameters for BookMenu causing some kind of scenario I didn't foresee (probably related to background image settings).

Can you send me the plugins.js file from your project (it's inside the js folder)? It stores all your plugin parameter settings. With that I can copy all your BookMenu settings into my test project.

Also, run your project, then press F12 (usually, if it doesn't work press F8) to open the console. If there is any error already there, print it and paste it here for me. If there's nohing on console, run this set of commands and send me the output after accessing the book menu, but before selecting any book:


Then select a book and have the error occur. If any errors pop up in the console, send them to me. Also, run the following commands and send the output as well:


$dataBooks._books["<BOOK KEY>"].customBgMode
$dataBooks._books["<BOOK KEY>"].customBg

For the last two commands, replace <BOOK KEY> with whatever is returned by the third command (the one ending with _bookKey).

I hope that helps me find out what's going on. I tried all the parameter values I thought could cause this, but it's all working on my test project. There may be something else that I'm missing.

A demo would be nice for this... anyway, thank you for your work!

Well, there is a demo... just download my sample project:

Oh, sorry, didn't noticed that. Thank you!