Ever wanted to make your server seem a bit more...alive? Something as simple as an animated wall to greet players, or as complex as a constantly changing city or town? This plugin allows you to accomplish that, and more! LiveBlocks is an extensive plugin that allows players to create 'animations' within their world that can change both the type and position of blocks on the fly. Additionally, users are allowed to specify certain triggers that dictate whether or not these animations happen based off of events. Want a passage to open up whenever a user is within 5 blocks? There's a way you can accomplish that! Want a custom-made dungeon to change every hour? You can accomplish that too!
Features
Able to designate any 3-dimensional area as a 'LiveBlock' region
LiveBlock regions can be modified and saved in each separate state, allowing players to store 'frames' for the region
Players can then use various trigger events that dictate when the LiveBlock region will flip between frames, and how often it does so!
Uses a light-weight saving method, so block changes should not be too heavy on the server (unless you run the animation at a fast rate or change a large amount of blocks (we're talking chunks) in one fell swoop)
Full permissions support
Full configuration support
Installation
Simply download the latest .jar file, drop it in your plugins folder, and then load the server. After it's first load, you can edit the config file to your delight!
How to Use
Everything you could possibly need to know is in this guide:
In-Depth Usage Guide
Permissions
Permission
Description
1
liveblocks.create
Allows user to create and define a new LiveBlocks region
2
liveblocks.proximity
Allows user to set off proximity detection for all LiveBlocks
Updating this section as I complete the features and see reasons for more permissions
Commands
All commands have a base of either 'liveblocks', 'livb', or 'lb' [lb removed due to concern for conflicts with LogBlock] (These are interchangeable and for your convenience)
[TempRegion] = this command makes use of your 'temporary region'. Your temporary region is defined by the two corner-points that you select using the LiveBlocks selection tool.
[Focus] = this command makes use of your 'focus'. Your focus is the current region that you're modifying. When you create a new region, your focus is automatically set to it.
Command
Description
1
/livb help
lists all of the LiveBlocks commands and their functions
2
/livb create <regionName>
[TempRegion] creates a new region with the given name using your temporary region
3
/livb checkFocus
checks the current 'focused' region that any command with [Focus] will manipulate
4
/livb setFocus <regionName>
sets your current focus to the given region
5
/livb addFrame
[Focus] adds an animation frame to the focus (It saves the current block set-up in your region as the frame)
6
/livb updateFrame <frameNumber>
[Focus] updates a specified frame of the focus with current block set-up (See: Frame Reference)
7
/livb previewFrame <frameNumber>
[Focus] updates the focus region to display the contents of the specified frame (See: Frame Reference)
8
/livb addProximity <proxUpdateInterval>
[Focus] [TempRegion] adds a proximity region to your focus using your temporary region. 'proxUpdateInterval' = How often you want the server to check for someone entering the proximity region
Updating these as I go along through the testing phases
Frame Reference
With any command that requires a 'Frame Number', keep this in mind:
0 -> Base Region (what you initially saved as your region)
1 -> First Frame (the first actual 'change' you made to your region)
2 -> Second Frame, etc
Configuration
To be updated when the plugin is near that level of functionality*
Reporting Bugs
Having an issue with the plugin? I'll just need a few minor things:
Bukkit Build #
Error Log (if any)
Description of error, what breaks, and whether or not you can reproduce the error (if yes, list how)
Please report this in the Ticket Tracker.
Demonstration Video
The following video is of the PROTOTYPE for this plugin! It is not a representation of the finished product, simply an example of what it can do!