Skip to content

Latest commit

 

History

History
444 lines (219 loc) · 23.3 KB

prison_docs_000_toc.md

File metadata and controls

444 lines (219 loc) · 23.3 KB

Prison Documentation


Documented updated: 2023-11-18

Project Related

Build logs


Prison Supports Spigot 1.8 through Spigot 1.20.x+

Prison Supports Java 1.8 though Java 20+

Prison is created for the Spigot Platform, and works on other platforms based upon Spigot

Prison supports Spigot 1.20.x, along with Java 1.8 through Java 20. At this time there hasn't been any reports of incompatibilities. Since prison is using a library to support the correct blocks for the version of the server that you are running, we are limited to when updates are released for that library. Luckily they have had a couple of releases and we have applied them to the latest alpha releases. So if you are wanting to maximize the new Spigot 1.20 experience, please upgrade to the latest alpha release as found on our discord server in the #alpha channel.

Newer features and updates in Prison:

  • Prison's AutoFeatures was redesigned to support more Event Listener Priorities. This means prison is more flexible and will work with more plugins, using them the way you want to. Some of the new priorities are ACCESS so you can use Prison's Mine and Teleport Access by Rank without having to use Prison's block handlers. This bypasses the need to configure WorldGuard regions for access to the mines that are linked to Prison Ranks.

  • Now supports RevEnchants, both with Prison handling the block break events, and with RevEnchants handling the events.

  • Prison Backups: Prison now has a new feature that will backup (zip) all of the files within it's plugin directory. Prison now will perform an automated backup when it detects a change in Prison's version to help preserve settings from prior versions. See the new Prison Backup Document.

  • Auto Configure: Even if you really don't want to use auto configure when setting up your server, it may be worth trying it out just to see what it does. If you're not happy with it, then deleting the plugins/Prison/ directory will remove "everything" and on the next restart of your server, prison will load for the first time. So if you are just getting started with prison, it's worth a try.

  • Prison now has Access By Rank to reduce the number of Permissions needed! This simplifies a lot of settings and on a simple Prison server, can get you up and running much faster.

  • Backpacks: It is advised not to use Prison's backpacks at this time. They will be going through a rewrite and may result in content losses when upgrading when the newer version is available. It is suggested you give MinePacks at try.

  • Prison Mine Bombs! Prison is starting to add mine bombs to the list of available features. This is a work in progress and more enhancements and features will be added in the future. The idea with these, is that you can configure almost every aspect of the mine bombs, and you can have as many different varieties as you want.

  • Prison Tokens! Prison is starting to implement the earning of tokens within the mines as the players mine. This is a work in progress. Currently the hooks are added to earn tokens, and for admins to manage them. But more features need to be added to help enable using them.

  • Prison Stats! More stats are being tracked for each player. This is a work in progress. Prison is tracking blocks mined and even per mine. Prison is tracking time spent mining in each mine, along with how much a player is earning per mine with both regular currency, and with tokens. Top-n reports will be available shortly. Rankup requirements will soon include the ability to specify blocks mined, time spent mining, and even tokens. This will help you customize how you want your players to ranup.

Features planned for the near future

These new features are in the planning stages...

  • Block Converters: Auto features can be controlled by enabling different blocks to perform different functions, if so desired. Currently the list of blocks is very limited and hard coded in both the configuration files, and also in the source code. But Block Converters will remove all of that, and place the configs in a new json file. The new format will provide a very powerful way to control all block conversions, such as smelting, blocking, and even drops. It will support permissions on all blocks and items, so you could setup a smelting to provide multiple block types, or even provide different block and item types based upon perms. Block Converters will take prison to the next level on mining customizations, but yet simplify auto features in both the auto features configs and code.

  • New backpacks: A rewrite of the backpacks that will give a little more flexibility. You will be ble to use them as backpacks, or as vaults. Could even sell, or trade backpacks/vaults with their contents. ETA is unknown since a new storage management system needs to be created.

  • Mine Effects: The ability to set mine effects for a given mine, or to allow players to buy effects using their earned tokens. Effects could be simple potion effects (haste, night vision), or even effects such as no fall damage, and even flight. Other options could be no-pvp, enable pvp, no block break, no fire, etc... The options are numerous, but will be added a little at a time, and upon request.

  • Mine Regions: Mine regions may be added to prison soon. They would be "area" that will control the Mine Effects and a region would/should enclose a given mine. But mine regions could be used on their own, were no mine is involved, such as at spawn to enble flight and no fall damage for your higher ranking players, or even allow players to "buy" regions to put around their bases so they can enable nigh vision and flight.

  • Custom Menus: Simple custom menus could be added so admins can setup simple commands and features. For example, custom token shop for enchantments or other in game items, or run any commands in general. This will start off simple, but will expand upon requests.

  • Unlimited Prestiges: This has been a long standing requested feature. It's close to being added. Although the levels may be unlimited, special configurations could be added for different levels, such as adding ladder commands at specific levels (ladder commands allows you to peform any action upon rankup, even from other plugins).

  • Custom Shops: Custom shops will allow for an unlimited number of new shops to be created. These shops can be tied to perms or player Ranks, or even specific mines. Each shop could be either stand alone, or it could be based upon another shop with price modifies and new items to prevent the need to redefine all entries for each shop. A mine shop would only be able to sell items that are retrived from mining in that mine.

  • Cells: They have been requested many times in the past. At this time, we cannot add them yet, but we would like to sometime in the distant future.

  • Enchantments: In the past we have stated that Prison will never support enchantments for pickaxes, or other tools, or weapons and amour. But as Prison is evolving and more features such as mine bombs and mine effects are added, along with natively supporting tokens within prison, the idea of adding enchantments is almost a no-brainer since most of the complicated details will already be supported through other features. So in the distant future, some time after mine bombs and mine effects have matured, we may add our own Enchantments.


New! Prison Fast Start

See the Auto Configure documentation for more information: Prison Auto Configure / Prison Quick Start!

Prison now has a new set of features that can help you get up and running faster than ever! With the latest version of Prison, you can even have a functional Prison server running with just two Prison commands. See below for more information.

It is strongly recommended that the '/ranks autoConfigure' should always be ran first. Prison's Auto Configure sets up so many features, that it can help resolve many initial issues. It's worth trying the first time you run prison since it's easy to undo: just delete the `plugins/Prison' directory and the next time you restart your server Prison will startup as if it was just installed with no settings.

Before you try to setup Prison, you really need to install an Economy or the Ranks module will not be enabled. It is strongly suggested you install the following plugins: Vault, EssentialsX, EssentialsX-Chat, PlaceholderAPI, LuckPerms, WorldEdit (or Fast Async World Edit, FAWE, on newer versions of Spigot), WorldGuard.

/ranks autoConfigure. It can auto create your ranks and virtual mines, A through Z, it will link the mines to the ranks, setup the Mine Access By Rank and TP Access By Rank. It will also setup the Mine as a Virtual Mine will and assign blocks of increasing values to all mines. Each mine will also be assigned a random liner. The Ranks autoConfigure will also enable sellall and load over 90 default blocks for your shop. Auto features will be enabled (auto pickup, auto smelt, and auto blocking).

Some of the newer features that are enabled with /ranks autoConfigure are: Ladder Base Rank Cost Multiplier (ranks cost more every time you prestige), auto configure 10 prestige levels, and improved placement of the mine. Based upon where you are standing, you can now define both the location of the mine, and the size.

Once it generates all the virtual mines, all you need to do is to use the command /mines set area help on all mines to make them physical mines and then prison will be ready to use. Plus there are many new features to help provide the finishing touches in almost no time.

Auto configure can get you up and running with as little as two commands. The first command is: /ranks autoConfigure. Then the second command you run while you are in game, and it defines the mine for you in the world. It's based upon where you are standing to make it "simple": /mines set area A feet 10 6. This last command tells prison to place the mine at your feet and to expand the walls outward by 10 blocks in all directions, and push the bottom of the mine down by 6 blocks. The result will be a mine that is 21 x 21 x 7.

  • /ranks autoConfigure
  • /mines set area a feet 10 6

At this point you have a 1 mine functional prison server. Of course you will want to add more mines, but this is a quick overview of the basics on getting up and running.

To see the blocks at this point, just reset the mine:

  • /mines reset a

Then to protect the world so players cannot break your builds, you need to setup a global WorldGuard region for that world:

  • /rg flag __global__ -w world passthrough deny

For more information, check out the following commands.

  • /mines set area help
  • /mines set tracer help
  • /mines set size help
  • /mines set liner help

Prison Auto Configure / Prison Quick Start Guide!


A Quick Word About the Prison Command Handler

Prison has an advanced command handler that manages all of the commands. Programmatically, the commands are not setup the same as a normal bukkit command, but instead, there are a lot of more powerful features available through the Prison Command Handler.

All commands will respond to the help keyword. It will show a list of all of the parameters for the command, any permissions tied to the command, and other details too. If a document is associated with the command, it can show a clickable link when used in-game (not many commands have been linked to their docs yet).

The Prison Command Handler also manages aliases, auto complete (tab complete), organizing commands in a hierarchy so you can explore what commands are available by starting with the root commands. For example, /prison is the core root command, and it will also show you a listing of all other root commands. So /prison is a great place to begin exploring the commands that are available.

For the latest alpha releases, there is an exciting new command: /prison support cmdStats. This new command will show you every prison command that was ran since the server was started, along with how many times the command was used, and the average milliseconds it took Prison to handle that command. Some commands, such as /mines reset are submitted and ran asynchronously and so their average run times will not be able to be reflected in that command. The cmdStats does not track "command" usage if it bypasses the Prison Command Handler, such as when a mine automatically resets since the internal calls bypass the Prison Command Handler.

This is useful to give you an idea what commands your players and mods may be using.


Table of Contents for this Document


Commands Shortcut help

Adding the help argument as the first parameter of any command will show additional help.

PRISON COMMANDS:

RANKS COMMANDS:

MINES COMMANDS: Guidebook TO-DO (Work-In-Progress)

  • /mines mines.admin
  • /mines blockEvents
  • /mines block mines.admin
  • /mines command mines.admin
  • /mines create [mineName] mines.create
  • /mines delete [mineName] [confirm] mines.delete
  • /mines info [mineName] [page] mines.info
  • /mines list [page] mines.list
  • /mines rename [page] mines.rename
  • /mines reset [mineName] mines.reset
  • /mines set mines.admin
  • /mines stats mines.stats
  • /mines tp [mineName] mines.tp mines.tp.[mineName]
  • /mines wand mines.wand
  • /mines whereami mines.whereami

MORE COMMANDS: Guidebook TO-DO (Work-In-Progress)

  • /sellall prison.admin none for GUI
  • /prisonmanager prison.admin for Admin GUI none for Players GUIs
  • /prestiges none
  • /prestige ranks.user ranks.rankup.prestiges
  • /rankupMax [ladder] ranks.user ranks.rankupmax ranks.rankupmax.[ladderName]
  • /rankup [ladder] ranks.user ranks.rankup.[ladderName]
  • /gui [gui]
  • /backpack

Guides: Setting Up the Server Basics


Guides: Configuring Prison

These guides cover the core fundamentals of Prison. They may reference other plugins, but these guides will not go in to depth on how to install or use the other plugins; those details will be a focused guide of their own.


Guides: Working with other Plugins


Guides: Configuring Other Plugins for Prison

This section of guides will focus more on other plugins and how they can integrate with Prison. They may use a few aspects of the prison API or command interface, but these guides will spend the majority of their time covering the other technologies that can help give Prison your own character.


Guides: FAQs

This section of guides will focus on FAQs; short helps for common problems.