KonseptBooks

Allows you to store signed books in a file ("the library"), and then have users check out those books into their inventory.
You can then edit the book and update the library, and that change will then propagate to any books users already have checked out.

The News book

Commands

There is just one command, /konseptbooks
If available, it will use the aliases "book", "books" and "kb"

If you just say /books it won't know what you mean, but you can add a book name to that.
For example, /books Newbie Book
If there is a book called "Newbie Book", the user will get it.

In addition to getting books, there are some other actions available.
To differentiate between book titles and actions, the actions start with a hyphen, -

  • -add : Add the book you're holding to the library.
  • -author : Set author of the signed book you're holding.
  • -delete : Delete the book in your hand from the library.
  • -help : See a fantastic help text!
  • -library : Open an inventory that contains all the books.
  • -list : List the books you can get.
  • -prepend : Prepend a page to the book you're holding.
  • -reload : Reload the settings and library.
  • -save : Save the library to disk.
  • -title : Change the title of the signed book you're holding.
  • -update : Update the library with the book you're holding.
  • -unsigned : Get an unsigned copy of a book.

Actions in detail

-add
Only works in-game, and you have to be holding a signed book when you do it.
It saves it with the title and author it has at the time, so make sure those are what you want.

-author
Change the author of the book you're holding.
Only works if the book is singed, of course. Very useful if you want the Rules book to be signed by Server Admin, for example.
Does not update the book in the library, just the one in your hand. See -update.

-delete
Delete a book from the library.
Sometimes books go obsolete, and sometimes you add a book with a misspelled title. Just hold the signed book in your hand and /books delete
Gone!
It uses the book in your hand to try and protect against accidental deletions, because if you accidentally delete the wrong book you can add it again from the one in your hand.
Note, however, that from the console, where you can't hold a book in your hand, it is possible to supply a book title to delete.

-help
Gives you a list of actions. It doesn't just rattle off all the possible actions, it actually checks if you have permission to do that action.
Very similar to the list above, but also mentions how to get books and that they're automatically updated.

-library (New in 1.0-BETA)
This will open an inventory containing all the books in signed form so that you can freely pick and choose between them.
Note that if there are more than 54 books it would render wrongly, so only the alphabetically first 54 are shown.

-list
Gives you a list of book titles.
Very useful for knowing what to put behind /konseptbooks when not doing an action.
There is currently no way to have books that are not listed.

-prepend
If you're holding an unsigned book, this will add a page to the beginning of it, pushing all the rest of the pages one page back.
Very useful for something like server news, or other things where you want new additions on the first page.
Does not update the book in the library, just the one in your hand. See -update.

-reload
Makes KonseptBooks reload it's configuration, and the book library.
It is not recommended that you hand-edit the at any time, so please don't use it for that.

-save (New in 1.0-BETA)
Writes the current library to disk. This is normally done automatically when a book is saved or updated, but if you have autosave turned off you will need to do this manually when you're done updating books.

-title
Change the title of the book you're holding.
Only works if the book is singed, of course. Very useful if you misspelled Wizard's Guide when you signed the book. Does not update the book in the library, just the one in your hand. Also, -update will not work as it is now an entirely new book as far as KonseptBooks is concerned. See -add.

-update
Takes the book in your hand, and updates the book of the same title in the library.
You can also update a book in the library from an unsigned book. If you do, supply the title.
For example /books -update Server News to update the Server News book. Supplying a title will NOT work if you update from a signed book. Updated books will propagate right away to all logged-in players if they have the permission to get updates.

-unsigned
Get an unsigned copy of a book. Useful for when you want to edit something you've already added to the library and the original has been signed already.
You must supply a book name, like /books -unsigned Our Glorious Admin to edit the most obvious book of them all.

Permissions

Each of the actions has a konseptbooks.action.action node, like konseptbooks.action.reload

In addition, there is konseptbooks.getbooks, which gives permission to get books from the library, and konseptbooks.getupdates that allows the books you own to be automatically updated.

For convenience, two extra nodes are provided with groups of permissions.

konseptbooks.admin gives access to all actions, getting books and updates. It is given by default if you are an operator.

konseptbooks.user gives access to getting books, having them automatically update as well as the -list and -help actions. It is not given to anyone by default, you must specifically grant it.

Updates

By default, this plugin will check for updates when it is activated, and then again every time you reload it's configuration.
It will not download anything, but it will tell you in the console and log that there is a new version, and give you the link to download it.
To disable this behavior completely, set checkForUpdates: false in the configuration file.

Configuration

The configuration is currently rather limited, so let me know if you want or need any additional knobs to twiddle.

Defaults:

autosave: true
checkForUpdates: true
giveNewbieBook: false
newbieBookName: 'Welcome'

autosave

If you don't want the plugin to save changes to the library file, set autosave to false. This is a generally bad idea and is discouraged.

checkForUpdates

If this is set to true, the plugin will check dev.bukkit.org if there is an updated version available. It won't download it for you, but it will put a download link in your log. For the future there may be a change to have it tell you in-game when there is an update, but I've left that out for now because it can be so very very annoying. Leave a comment!

giveNewbieBook

If this is set to true, new players that join the server will be given a book.

newbieBookName

If giveNewbieBook is true, and this book name exists in the library, the book will be given to new users.
NOTE: New users must have the konseptbooks.getbooks permission to actually get the book
If the book does not exist in the library, KonseptBooks will just complain in console, and take no further actions.


Comments

  • To post a comment, please or register a new account.
Posts Quoted:
Reply
Clear All Quotes

About This Project

  • Project ID
    74108
  • Created
    Feb 9, 2014
  • Last Released File
    Never
  • Total Downloads
    710
  • License

Categories

Members

Recent Files

Bukkit