[Skript] Cellblock [First Premium Skript Resource] icon

[Skript] Cellblock [First Premium Skript Resource] -----

Cellblock - Create cells for your prison players!




With 1.20.1 now out, Cellblock 2 is being updated to begin support for it. This release includes many bug fixes and updates to support Minecraft 1.20.1 and Skript 2.7.0.

NOTICE: skript-reflect currently does not support Minecraft 1.20.1 or Skript 2.7.0. This update is only for development and testing purposes and might not function properly.

Bug Fixes
  • Fixed an issue when the setup of Cellblock failed
  • Fixed syntax errors from skQuery
  • Fixed syntax errors from now missing syntax from skQuery
  • Fixed syntax errors when using skript-mirror
I have reviewed how Cellblock 2 handles signs and will be doing the following update when Skript and skript-reflect support the latest versions of Minecraft:
  • Hanging signs only allow a certain amount of characters, this will impact the amount of information that Cellblock can display on a sign. I will review this in better detail to see how Cellblock can support hanging signs.
  • Signs will be locked and can only be edited by players with the specific permission cellblock.signs.edit. The cell owner or any other player cannot edit signs.
  • Cellblock will likely support dual-sided signs but it depends on how these can be accessed during the sign-click event. If hanging signs are supported, there may not be support for dual-sided signs.
----------, Jul 14, 2023

cellblock-logo.png

Cellblock 2 - Pre-release 6
This update brings a couple of new features to Cellblock 2

General Changes
  • Version integer: 29072020
  • /cells is now an alias of the main /cellblock command.
  • Goto command should work a bit better. If it's not working properly for you (getting stuck in blocks, not working etc), please report it to me.
Added
  • Option restoration is now a thing. Cellblock 2 has a lot of options to customize Cellblock. The problem is when you update the script, you lose the options. Cellblock 2 will by default save the last set of options 5 times. You can then restore your option values to that point. Each time Cellblock loads up, it'll save them. For more information, consult the options section for "SaveOptions".
  • Eviction of specific cells and players has been added via /cb evict <player|cell> <player name|cell name>. This will evict the player from all their cells or just whoever is renting a specific cell.
  • Sign refreshing can be done via command of /cb refresh (more will be added to this command in future updates) or automatically when Cellblock loads up by enabling the option RefreshSignsOnLoad.
  • RemoveCornerBlocks option has been added. By default is true, it'll basically just set the 2 set points of a cell to air when its created. Making inner selections easier. Please be careful with what you enter. This command doesn't have many fail-safes to prevent breaking cells and will let you use any property and value.
    • rent-price/buy-price
    • time (how long they get when they rent it, uses 1d1h1m1s format)
    • expires (how long is left, uses 1d1h1m1s format)
    • owner/renter (this might break cells)
API Updates
  • Cellblock_Cells_Homes_Remove can be used to remove a specific cell from a players home list
  • Option saving and restoring are internal functions and not advised to be used outside of Cellblock Core. This might change in future versions, but they're currently not.
Bug Fixes
  • Selling a cell removes it from the user's homes.
  • Buying a cell adds it to the user's homes
  • Fixed a bug where the renter couldn't do anything in their cell
  • Fixed a colour formatting issue with the /cb setmode command
----------, Jul 27, 2020

cellblock-logo.png

Cellblock 2 - pre-release 4
General changes

  • Cellblock_API_Send_Message/Cellblock_API_Send_Message_2 functions now support {@M} (Money) prefix and {@Header} prefixes
  • Cellblock_Utilities_Time_To_Clock_String function now has a second format argument to make it more useful.
  • /cb rent and sign renting will now use the extension command function over the extension function directly for greater flexibility.
  • /cb home if disabled will tell the user instead of doing nothing. This might change to Cellblock detecting its been disabled and removing the command from the registry.
New events
  • Cell Buy event is fired before a cell is bought. This can be cancelled
  • Cell Rent event is fired before a cell is rented. This can be cancelled.
----------, Jul 25, 2020

cellblock-logo.png

Cellblock 2 - pre-release 3
Bug fixes

  • Rent prices are now taken from the balance of the user. They originally were using the buy price variable which caused users to be able to rent a cell for free
  • Extend prices are now taken from the balance of the user. Using the same buy variables as buying, they now use the rent prices.
  • Sign updates should be more reliable for extending rent times.
----------, Jul 25, 2020

cellblock-logo.png

Cellblock 2.0.0 pre-release 2 (Release: 24072020)
Additions
  • Rent extensions can now be done by clicking on a Cell sign, using the /cb rent command or the new /cb extend command. Rent extensions use the flags system so staff in override mode, users with admin flags, users with the rent flag or the renter themselves can extend rent times.
  • Deleting cells now exists. Cellblock 2 had no way of removing a cell once it had been created. /cb delete [cell] [reset=false] will handle this.
  • Cell Deletion event is fired when a cell is deleted. It's fired before any data is deleted and can stop data deletion, but cannot stop reset if that's set to true via the command. This might change in future updates to the reset being part of Cellblock_Cells_Delete_Cell function.
  • New options have been added. Deleted-1/4 for updating the signs of cells when they've been deleted or you can use RemoveSignsOnDelete to have the signs be set to air.
Changes
  • Some messages were slightly altered to be worded better and have a clearer meaning
----------, Jul 25, 2020

cellblock-logo.png

First pre-release of Cellblock 2
Cellblock 2 is completely rewritten and includes a huge overhaul of the Cellblock system. When first created, Cellblock wasn't made to handle large amounts of cells and player activity. Under certain circumstances, it was unable to keep up with demand and caused issues. There were oversights in Cellblock 1's protection system and command patterns.

With Cellblock 2, those are fixed. Cellblock 2 utilities a different way of handling cell data; by not saving it to Skript. The problem with Skript's variable system is that Skript wants to save variables to the .csv file. Cellblock 2 will process data when it's loaded up. Storing only the 2 locations of a Cell and then getting all the block locations when it's loaded. Cellblock 2 also features different ways to save Cell reset data. Reset data is used by Cellblock to restore a Cell to how it first looked after a user has finished renting a Cell (new options discussed below). Both reset data and block locations are not stored by Skript at any point. Cellblock 2 will attempt to modify the config.sk to exclude Cellblock from having the "celldata" variables saved and will delete them on startup and shut down to prevent any saving. This is what caused the long delays in booting up Cellblock.

A downfall of Cellblock 1 was its reliance on console commands to process and perform actions. This caused confusion and difficulty with extending Cellblock with CellAddons and created server lag as console commands have a big overhead when being performed. Cellblock 2 features a wide array of functions to run with improved performance and an easy to use API setup.

The best part, Cellblock 2 is included to everyone who has already bought Cellblock!

Here's a breakdown of Cellblock 2:
  • Completely rewritten
    • Cellblock 2 was written from the ground up with the experience of Cellblock 1
    • Huge redesigns and improvements to Cellblock 1
  • Customisability increased
    • New options allow you more control over how Cellblock saves data, the appearance of signs, what right/left clicking a does, how Cellblock saves data and more
  • Redesigned API interface
    • Easier to understand and connect too, the Cellblock API gives a great amount of control without confusing command setups.
    • The use of functions allows for data to be passed between Cellblock and CellAddons and utilise Cellblock helpers
    • Extendable command API allows for easy command registration for the main Cellblock command
  • Performance benefits
    • By not saving a lot of data, Cellblock has increased load times. Skript struggles with big amounts of variables, Cellblock doesn't save what isn't needed and off-loads as much as it can from Skript
    • Functions perform much better than console commands and it's shown across Cellblock 2.
  • Better Cell protection
    • Cells originally were able to blown up, set on fire, have pistons move blocks and other unforeseen player interacts. Cellblock 2 has an improved protection system that protects the original blocks of the cell from the owner and other players.
  • Renting and Buying cells
    • Originally, to be able to buy a Cell, you needed the free CellAddon BetterCells. The problem was that BetterCells wasn't able to fully handle everything cell-related and wasn't fully fleshed out. Players are now able to buy cells from the server, sell them back or sell them to other players. Players are then able to rent the cells from those players.
  • Improved flag system
    • Provides a better way to access flags, manage flags and view flags.
    • Flags have stronger controls over cells
  • Multiple Cell signs
    • You can now have multiple signs for a Cell instead of just one. Cellblock will update them all automatically whenever anything changes for a Cell
  • Bug fixes
    • As Cellblock grew, features were not put in properly. They were often made to just work with what was there and lacked in good design. Every part of Cellblock 2 has had a performance and data-efficient model in mind.
Important:

While Cellblock 2 is in a pretty stable and near-complete stage for a pre-release, it still does have some issues. Please carefully read below for more information. If you have any questions, please contact me.
  • Upgrading
    • Cellblock 2 does not support any data from Cellblock 1.x. There is no upgrade/converter for Cellblock 1.x to Cellblock 2.x. A converter tool is coming. This release of Cellblock 2 is to show the work being done and for users who are starting fresh servers.
  • CellAddons
    • There is no backwards compatibility for CellAddons designed for Cellblock 1.x to work with Cellblock 2. If I have created you a CellAddon, please contact me to have a new version made in Cellblock 2. Costs might be applied.
    • A tool is being made to port CellAddons to the new API and/or to support them with Cellblock 2's API by pretending to be Cellblock 1.
  • Bugs warning
    • Cellblock is over 5 years old and has been tested rigorously by myself and by the buyers of the resource. Bugs might exist in Cellblock 2.0.0-pre1 and other pre-releases. Cellblock 2.0.0-pre1 can be used in a production environment but does there is that risk.
  • Missing features
    • There are some commands that are missing from Cellblock such as setting the time/price of a Cell after its creation and other commands which are currently in development.
Suggestions:

If you have any suggestions for Cellblock 2 please do say! This is a great opportunity for new features to be to Cellblock. Cellblock is in an easily extendable stage of development where adding new features can be fit in easily without having to work around existing systems.

Many thanks,
BaeFell



----------, Jul 6, 2020

cellblock-logo.png

Cellblock 1.8.2
General Update
  • LATEST VERSION SUPPORT! Cellblock 1.8.2 will run on Spigot/Paper 1.14.4 using Skript 2.4-beta5. Cellblock 1.8.2 will also support lower versions as well.
Bug fixes
  • CELLBLOCK WARNINGS! All warnings produced by Skript when loading Cellblock.sk have been fixed
  • CELLBLOCK ERRORS! Errors for Cellblock have been fixed
  • VARIABLE TYPOS! There were some typos in variables used across Cellblock. These have been fixed.
  • BETTERCELLS WARNINGS! Using newer versions of Skript produced warnings from BetterCells.sk. These warnings are now fixed



Cellblock 2 Progress
  • Cellblock 2 will be completely different in how it is setup and run on a very unique setup. This will allow Cellblock 2 to be more powerful that Cellblock 1 in terms of what is offered by Cellblock, the performance impact Cellblock has on the server and the extension of the Cellblock API
  • Due to the size of Cellblock 1, rewriting and converting it to the new Cellblock 2 setup is taking some time. There is also the time taken with writing the new Cellblock Core which is what will run everything in Cellblock
  • I am actively maintaining multiple projects aside from Cellblock and haven't been able to dedicate my full time to it. I do aim to be dedicating more time to Cellblock by the end of the year.

Thanks to everyone for purchasing Cellblock. This update came from user reports which I wouldn't of known about otherwise. Please inform me of any issues you have when using Cellblock.

Thanks again,
BaeFell
----------, Sep 1, 2019

cellblock-logo.png
Cellblock 1.8.1

Please complete the Cellblock Feedback Survey:
https://baefell.typeform.com/to/PTWbFO
I will review every single response.

New features
  • CELL RESET EVENT! A new event has been created which listens for when a cell is reset. It is available only before the event is triggered and can be cancelled.
  • AUTO-TORCH! When a cell is created, Cellblock will attempt to place 2 torches into the cell. This means every cell will have some light and gives the player 2 basic light sources.
Bug fixes
  • NO COMMAND RESULT! Some commands didn't say anything if it was failed/missing arguments. Hopefully, they should all say the intended result or a failed message
  • DEBUG CODE! Removed some debug code that would broadcast messages
  • INVENTORY CLEARING! When a cell is reset and cleared by Cellblock, items in things like chests, furnaces and other blocks that have an inventory, would drop all their items. Cellblock clears them before setting them to air
Planned updates
  • REWRITE! I will eventually be doing a rewrite of Cellblock. This version will be Cellblock 2. However, Cellblock is over 2,000 lines long, contains advanced features and my time is limited. Please complete the survey above as it'll provide me with essential feedback.

----------, Oct 29, 2018

[​IMG]
Cellblock 1.8
Bug fixes
  • API IMPROVEMENTS! After creating BetterCells, I found multiple issues within the CellblockAPI which can cause incorrect handling of API data resulting in endpoints failing to run
  • MISC FIXES! After reviewing parts of Cellblocks core code, I found some minor bugs which have been patched to keep Cellblock running smoothly.
[​IMG]
  • BETTERCELLS! Another free addon for Cellblock that extends the features of the cells themselves. Currently in a BETA stage, BetterCells lets your users buy their cells
  • COMPLETELY FREE! All current and new buyers of Cellblock get not only BetterCells but Cell Directory and DefaultCellProtection for free!
  • MORE TO COME! BetterCells will gradually provide features that extend from Cellblock. BetterCells exists to prevent Cellblock becoming clogged with features that take away from the core prison cell focus of just renting
  • CELL DIRECTORY SUPPORT! Cell Directory supports BetterCells buying feature and will change the sign to show that a cell is owned which overwrites line 3 and 4.
Thanks,
BaeFell
----------, Feb 7, 2018

[​IMG]
Cellblock 1.7
Changes
  • 1.12+! Added support for Minecraft/Skript 1.12+
  • MORE VERSION SUPPORT! Cellblock now utilises the fork of skQuery by LimeGlass
  • Some official comments have been changed to have updated links and branding uses
New features
  • HOME CELLS! Players can now set their Home Cells via /cb home [set|info] [cell] - this is enabled by default but can be turned off via the options setting: @AllowHomeCells
  • DEFAULTCELLPROTECTION! Another free addon included with Cellblock, more information below!
Bug fixes
  • SIGNS! Cell signs no longer get removed when the cell resets
[​IMG]
  • DEFAULTCELLPROTECTION! A buyer of Cellblock needed a way to prevent his users from buying a cell and destroying it but found it difficult to make cells just the inside of the cell. DefaultCellProtection shows off the power of the CellblockAPI and protects the blocks a cell. You'll need Cellblock 1.7 or above to run DefaultCellProtection
  • COMPLETELY FREE! Just like Cell Directory - DefaultCellProtection is completely free
  • DRAG&DROP! Designed to just work, DefaultCellProtection works straight away, no configuring, setting up or commands to run. DefaultCellProtection integrates itself with Cellblock perfectly.
Thanks,
BaeFell
----------, Feb 7, 2018

[​IMG]
Cellblock 1.6

Changes
  • COMMENTS! Some more comments have been added to Cellblock's source. They're mainly to help out anyone looking into the API
  • HELP MENU COMMAND! The command shown by the help menu can be changed on line 77. Default is "cb"
  • ADMIN ERROR! Help menu says sorry when an admin command is info'd and the player isn't admin
  • API CHANGES! When a Cell is created, their name is saved in a list accessible by using the Cell ID as the key. Commands can also be registered for the help menu and then accessed through the Cellblock command instead of overriding.
  • CONVERTER! A converter for 1.6 has been put in. It's only a small one which adds all current Cells to the Cell ID list.
New features
  • EVENTS API! Cellblock has an events API.
Code (Text):

on script load:
    set {cb::temp::example::input::command} to "example-event-console" # Cellblock sends the arguments in a set order
    set {cb::temp::example::input::event} to "break" # The event you're listening for
    execute console command "cb-console injectors add command example::input::command example::input::event after false %script%" # Registering with Cellblock

command /example-event-console [<text>] [<text>] [<text>] [<text>]:
    executable by: console
    trigger:
        if arg 1 is "break":        # event
            if arg 2 is set:        # player
                if arg 3 is set:    # cell
                    if arg 4 is set: # event-location (needs parsing)
                        set {_p} to arg 2 parsed as player
                        set {_u} to uuid of {_p}
                        set {_c} to arg 3
                        set {_l::*} to arg 4 split at ","
                        set {_loc} to the location at ("%{_l::1}%" parsed as number), ("%{_l::2}%" parsed as number), ("%{_l::3}%" parsed as number) of the world world of {_p}
 
  • NEW API! CellblockAddons can now register a command and have it display in the /cb help menu, plus have a description for it when a player does /cb help <command>
Code (Text):

    set {cb::temp::example::input::command} to "example-console free [[player]]"
    set {cb::temp::example::input::shortcommand} to "free"
    set {cb::temp::example::help::show} to true
    set {cb::temp::example::help::command} to "free"
    set {cb::temp::example::help::admin} to true
    set {cb::temp::example::description::array} to true
    set {cb::temp::example::description::hasdesc} to true
    set {cb::temp::example::description::desc::1} to "%{cb::prefix}% Shows all the cells which are free"
    set {cb::temp::example::description::desc::2} to "%{cb::prefix}% Quickly and easily find a free and open cell using /%{cb::settings::helpcommand}% free!"
    set {cb::temp::example::description::desc::3} to "%{cb::prefix}% Powered by an Example Addon!"
    execute console command "cb-console injectors new command example %script%"
 
[​IMG]
Cell Directory
  • COMPLETELY FREE! Get Cell Directory at no extra cost! Cell Directory is in the Cellblock.zip which is downloadable from now on.
  • FANCY FEATURES! Easily allow users to view a list of cells through signs that can either be rotated or be set to 1 Cell! Example signs:
    [​IMG]
  • PLACEHOLDERS! The signs for Cell Directory use specific placeholders. Here are them all, and their explanation:
    • cell directory, cell dir, [Cell List], cell list, &9&l[Cell List], &9Cell List or &9[Cell List] - These are top line tags. Cell Directory knows that you're creating a sign for it by putting one of the above. They're automatically converted to &9[Cell List] after a successful sign creation
    • c:<just a cell name> - You can just put a Cell name prefixed with c:. Cell Directory then shows the information specifically for that Cell. That Cell is then the Active Cell.
    • integer-integer - This loops between the listed 2 integers. Currently only supports like: 1-6. Backwards looping isn't supported and will just cause it to go back by 1 and be stuck. Cells that don't exist come up as <none>. The Active Cell is the Cell currently shown on the sign.
    • price - This shows the price for the currently Active Cell. If no price is set, then <none> appears (will be changed in next update to <currency>0)
    • time - Shows the time for the currently Active Cell. If the time is not set, then the line is set to "Invalid Time".
    • owner - Sets the line to show the Active Cell's owner. If the Cell is not owned/for sale, then the owner line is displayed as "Unowned".
  • RENT FEATURE! Cell Directory signs register into Cellblock's signs. This means that they are watched by Cellblock too. When a sign is right clicked, the user will be given the exact same information as if they right click a normal cell info sign from Cellblock. The users can rent, extend their time or get into about the Active Cell.
Planned Features:
  • COMMANDS! I'm planning on adding commands to Cell Directory. Features like updating signs and adding tags. So you could randomise a sign (probably using CSV feature probably) and do things like only show Cells which aren't owned, their price is greater than or less than a specific amount or even show Cells which have a specific amount of time left.
  • CSV! I'm also looking into being able to list Cells dynamically through comma-separated values. This means that you can do things like 1,3,6 and only show the specific Cells.
  • GLOBAL LIST! Using the commands and tags feature above, I'm going to try and make it so you could list every Cell and provide a specific tag for which ones to show.
I hope you enjoy the hard work I've put into this. Sorry about the lack of updates (last one nearly a year ago :oops:...), but I'm trying my hardest to manage my real life job, personal life, Umbaska (3), SkriptRepo, the continuation of Skript, skUnity forums, skUnity discord and so much more! I do appreciate everyone that has purchased Cellblock and I'm proud of what has been created.

Thank you,
nfell2009
----------, Dec 13, 2016

Why wont this work

EDIT: Yay, it works.
----------, Jan 24, 2016

[​IMG]

Cellblock 1.5
Another huge update!
Changes:
  • TIMEPARSER! Moved TimeParsers code to Cellblock
  • TIME SYSTEM! The new time system now uses integers rather than time spans for more control
  • INFO COMMAND! The entire /cell info command has a rework! You can now get info of a cell, player and even an entire overview of every cell!
New features:
  • CELLADDONS! Cellblock has a brand new API! This means that other scripts can override Cellblock commands or have code run before/after a command. CellAddons can also add their own commands to the Cellblock command base (examples in Cellblock.sk). If you're completely unsure then just ask me and I'll help you through it.
  • FLAGS & FRIENDS! Users can now add flags to their friends! This means that certain people can now build and place in a cell
  • SET PRICE & TIME! After creating a cell, you can now set a price and time of it! /cell help time & /cell help price will give you all the information you need
Removed features:
  • TIMEPARSER! Removed the requirement for TimeParser.sk to be present, if that counts? :p
Bug fixes:
  • TIME! Fixed a bug with the way time worked by swapping to the new integer based system
  • RENTAL! Made it so signs now work with renting

Please note: while I do try my hardest to debug Cellblock; some bugs may still be present! I'm only 1 person and can't test it in every situation that it may go through. If you notice a bug report it to me and I'll get it patched up.

Thanks again to all the loyal Cellblockers (aka people who have purchased Cellblock). If you have any suggestions just feel free to say!
----------, Jan 22, 2016

[​IMG]
Logo courtsey of: Rexs123 ( https://rexsdev.com )!
I've been working a load on Cellblock for the last 2 weeks to give everyone a great update. I've tried my hardest to make it as bug-free as possible, but bugs can still exist anyway. If you find any just PM me or Skype me: nfell2009

Changes:
  • OPTIONS! The option "OtherText" is now "E"
  • REQUIREMENTS! I was using the JSON message which required skQuery. To make sure everyone can use Cellblock with ease, I have replaced it for a normal message
  • ERROR MESSAGES! Not sure which position you forgot to set? The /cb create command will tell you!
  • ARGUMENTS! Instead of having to remember the cell ID, Cellblock will automatically detect what cell you're in!
  • RESET COMMAND! There is now a message to confirm the reset (needs to be improved for increased reliability)
New features:
  • TOPTIPS! These messages appear by a few things. They can be easily configured in the options part of the script
  • SET PRICE! You can easily set the price of the cell with /cb price <set|add|subtract|remove> <price> [Cell ID]
  • IMPROVED HELP COMMAND! The help command has been re-hauled! You can do /cb help <command> to get a load of info on that command
  • BETTER API ADDON SUPPORT! There are better ways to now get cells from Cellblock!
  • OPTIONAL CELL ARGUMENT! Fed up of having to remember every single cell ID? You can just leave the arg empty and Cellblock will automatically do it for you!
  • VARIABLE CLEANING! When a player leaves, Cellblock will get rid of any player data that they have left behind. Anything that is stored under {cb: :p layer::%player%::*} is deleted on quit. Anything stored under their UUID is kept
Removed features :
  • NONE! There were no features removed from this version
Bug fixes:
  • NONE! There were no bugs reported or found that needed to be fixed
Coming soon:
  • MORE ADMIN FEATURES! There will be better ways to control cells of players
  • MORE CUSTOMISATION! You'll soon be able to change a load more about a cell
  • FLAGS AND GROUPS! Players can work with others in an easy to use way
  • ADDON PACK! I'm currently working on an addon pack for Cellblock (currently has Cell Directory in) and other scripts I have released. It might be premium. But not entirely sure.
Thanks to everyone who has purchased Cellblock! If you have any suggests
----------, Dec 9, 2015

You can now easily install this script by just downloading the jar and placing it in your plugins folder and restarting/reloading your server.

It will then install the script directly to your Skript folder. It will also install SkQuery. This version of SkQuery will be used: http://dev.bukkit.org/bukkit-plugins/skquery/files/5-sk-query-3-21-4/

If you need any help just let me know! :)
----------, Feb 1, 2015

Resource Information
Author:
----------
Total Downloads: 67
First Release: Jan 29, 2015
Last Update: Jul 14, 2023
Category: ---------------
All-Time Rating:
7 ratings
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings