How a Book Works#
Everything revolves around the book item. Each copy carries a book id in its metadata (bookUid), and that id points to one saved book — its cover, its pages, its pictures. The item is the book: wherever the item goes, the book goes with it.
The item | What happens when it is used |
|---|---|
Blank — no book id yet | A fresh id is written into the item and the writer opens on an empty book. |
Written | A menu titled Book offers Open — read it — and Edit — open the writer with everything already in it. |
When a book is saved, the item's metadata is refreshed with bookUid, bookTitle and author, so an inventory that shows metadata tells players which book they are holding.
There is no command and no admin panel. Books are written, read and changed only by using the item — or opened from your own scripts, as Exports and Events shows.
Writing a Book#
The writer is one window with two parts: Book Settings — what goes on the cover — and Pages. The minimap is hidden while it is open, and so is the qs-interface HUD when it is running.
The cover#
Field | Notes |
|---|---|
Book Title | Required. Printed on the cover and saved into the item. |
Author | Required. Printed under the title. |
Cover Image URL | Optional. The picture that fills the cover. Without one, the cover is dark leather with gilded corners. |
Description | Optional. A short blurb printed on the cover below the author. |
Pages#
Add Page appends a page at the end. Each page has four fields:
Field | How it reads |
|---|---|
Page Title | Optional. A serif heading at the top of the page. |
Subtitle | Optional. Italic, under the heading, followed by an ornamental rule. |
Content | Required. Plain text — every line break starts a new indented paragraph. |
Image URL | Optional. A picture placed above the text, with a light sepia tone. |
The arrows beside each page move it up or down, and the bin removes it. Pages stop at Config.BookDefaults.maxPages — 50 by default — where the button turns into Maximum pages reached.
Saving and deleting#
Action | What happens |
|---|---|
Save | Checks the required fields first — a missing one is highlighted and Please fill in all required fields appears. Otherwise the book is saved, the window closes and Book saved successfully confirms it. |
Delete | Only when editing a written book. Asks for confirmation, then removes the book from the database. |
| Closes without saving. Whatever was typed since the last save is lost. |
Deleting empties the book, not the item. The item keeps its id: Open now reports This book has no data, and Edit starts a new book in the same item.
Pictures#
Cover and page pictures are web addresses loaded by each reader's own game, so they must be public and point directly at the image file — the address of the picture itself, usually ending in .png, .jpg or .webp, not a page that shows it. Use a host that keeps links permanent; Discord attachment links expire after a while and the picture disappears from the book.
Reading a Book#
Open shows the book full screen. It starts closed, on the cover — title, author, blurb and cover picture — and opens into spreads of two pages on aged paper, each numbered at the foot.
Control | Does |
|---|---|
The arrows under the book | Turn the page, with a page-turn animation and sound. |
The counter between them | Cover, then Page 3 of 12. |
Click outside the book, or | Close it. |
A book opens only when it has a title and at least one page. With an odd number of pages, the last spread closes on a blank ~ Back Cover ~.
Copies of the Same Book#
Two items that carry the same bookUid are two copies of one book. That is how a server hands the same text to many players — a rulebook for every newcomer, a menu on every table, a manual for every officer: write it once, then give out items that point at it. Exports and Events shows how for each inventory.
Who Can Write#
Writing follows the item. Whoever uses a blank book writes it, and whoever holds a written book can edit it. So you decide who writes by deciding who gets blank books:
Sell them in a shop that only one job can open — a library, a newspaper, city hall.
Make them craftable from paper, so writing costs something.
Keep them admin-only, and give players finished copies or read-only books.
Config.CreatorJobs (police and ambulance by default) is not checked when a book is used or saved. Your own scripts can still ask it through the book:hasPermission callback — true for admins and for the jobs listed there.
Languages#
41 translations ship in locales/: ar · bg · bn · ca · cs · da · de · el · en · es · et · fa · fi · fr · he · hi · hr · hu · id · it · ja · ko · lt · lv · ms · nl · no · pl · pt · ro · ru · sk · sl · sv · sw · th · tr · uk · ur · vi · zh.
The interface reads its texts from locales/en.json. To play in another language, copy the contents of that language's file — locales/es.json for Spanish — over locales/en.json, set Config.Locale to the same code, and restart. Any text can be reworded the same way.
Keep a copy of your edited
en.jsonbefore updating — a new version ships the English file again.



