SkyBukkit
SkyBukkit
General
SkyBukkit seamlessly brings SkyBlock to Bukkit servers. It allows players to easily and effectively play SkyBlock alone or with their friends on any Bukkit server, even when a survival world already exists.
For example, on a standard Bukkit server, a player might decide that he has had enough survival gameplay for the day. By simply typing “/island home” the player can teleport to his completely-separate SkyBlock and get to work there. Furthermore, the player would automatically have his inventory, armor, xp, hunger, health, saturation and exhaustion switched, just like he had logged onto another, SkyBlock-dedicated, server.
This same player could then just use “/island spawn” to jump right back into his normal survival environment, while all of his items, etc. are switched back.
While plugins like this do already exist, they all have far fewer features and those projects are outdated with their authors vanished off of the face of the earth. This project attempts to remedy the problem, while offering a server experience like no other.
This plugin has been re-written completely from scratch to achieve maximum performance and compatibility on Bukkit servers.
News
SkyBukkit Release v0.6.0
Release v0.6.0 contains a number of accessibility fixes.
SkyBukkit Release v0.5.14
Release v0.5.14 removes some super-hacky CB-dependant code, amoung other things.
SkyBukkit Release v0.5.13
Release v0.5.13 contains serveral technical fixes as well as some anti-cheat item duplicaiton protection.
Use
Prerequisites
SkyBukkit depends on WorldGuard for it's island protection ability. Please ensure you have it (and WorldEdit, which WorldGuard depends on) installed.
You are also probably going to want to install a plugin like MultiVerse, which will allow you to create a separate world for SkyBlock instances.
PLEASE NOTE: It is highly inadvisable to make your SkyBukkit world an existing survival world. If you do, it will create a host of problems, for example:
- When a player creates a SkyBlock, a giant area of land will become un-editable by other players, as it infringes on their protected SkyBlock land area.
- When a player deletes a SkyBlock, a giant area of land from sky to bedrock will be deleted, creating a massive void pit.
Instead, a separate world should be created (using a plugin similar to MultiVerse) which is using the cleanroom world generator.
Introduction
Simply place the plugin in the standard Bukkit plugin directory and it will automatically generate its configuration the next time the server is run. The default configuration is fine for normal use, but feel free to tweak it for a unique server experience (all available options are available below).
Players simply use “/island create” to create their own SkyBlock instance. They are automatically teleported to their new island and their inventory is switched for them. To delete or replace the SkyBlock they use “/island destroy” or "/island replace" respectively.
Say a player wanted to invite his friend over to his SkyBlock so they could play together. Said player would use a party. Just by typing “/island invite <friend>” they can create a new party and invite the friend to join. The friend would accept or decline the invitation be using “/island accept” or “/island decline”, respectively. The friend could leave at any time with “/island leave”.
That is just a snapshot of all available commands. They, with their accompanying descriptions and permission nodes, can be found further down.
Configuration
Please Note: All of the below configuration options are compulsory. If any are omitted, they will be re-generated next time the server starts.
Name | Default | Description |
---|---|---|
center: x: | 0 | X co-ordinate of where the center island should be placed. |
center: z: | 0 | Z co-ordinate of where the center island should be placed. |
pvpEnabled: | false | Whether or not PVP is allows on islands. |
switchInventories: | true | Whether or not SkyBukkit will auto-switch inventories. |
world: | world | Name of the world where the islands should be stored. |
partyMaxSize: | 0 | The maximum number of players allowed in a single party if INF (0) |
islandHeight: | 128 | Y co-ordinate of where newly-generated islands should be placed. |
islandSpacing: | 120 | Distance between generated islands. |
islandSize: | 100 | Size of the protection “bubble” between SkyBlocks. |
items: | (LIST) | List of all items in the SkyBlock chest. |
items: id: | (INTEGER) | ID of an item in the chest. |
items: dmg: | (INTEGER) | Damage value of an item in the chest. |
items: qty: | (INTEGER) | Quantity of an item in the chest. |
A sample configuration file containing the default values can be found below:
center: x: 0 z: 0 pvpEnabled: false switchInventories: true world: world partyMaxSize: 0 islandHeight: 160 islandSpacing: 120 islandSize: 100 items: - id: 287 dmg: 0 qty: 12 - id: 327 dmg: 0 qty: 1 - id: 352 dmg: 0 qty: 1 - id: 338 dmg: 0 qty: 1 - id: 40 dmg: 0 qty: 1 - id: 79 dmg: 0 qty: 2 - id: 361 dmg: 0 qty: 1 - id: 39 dmg: 0 qty: 1 - id: 360 dmg: 0 qty: 1 - id: 81 dmg: 0 qty: 1 - id: 323 dmg: 0 qty: 1
Commands
Please Note: Wildcard *s are valid in permission nodes. Commands may also be prefixed with the alias /is instead of /island.
Command | Permission | Description |
---|---|---|
/island create | skybukkit.island.create | Create a new SkyBlock. |
/island destroy | skybukkit.island.destroy | Destroy your current SkyBlock. |
/island replace | skybukkit.island.replace | Replace your current SkyBlock. |
/island home | skybukkit.tp.home | Teleport to your SkyBlock, and save your inventory. |
/island spawn | skybukkit.tp.spawn | Teleport to the main world, restoring your inventory. |
/island invite <player> | skybukkit.party.invite | Invite <player> to your SkyBlock, creating a party. |
/island kick <player> | skybukkit.party.kick | Kick <player> from your party. |
/island promote <player> | skybukkit.party.promote | Make <player> the party leader. |
/island accept | skybukkit.party.accept | Accept a pending invitation. |
/island decline | skybukkit.party.decline | Decline a pending inviation. |
/island leave | skybukkit.party.leave | Leave your current party. |
/island leader | skybukkit.party.leader | Display your party leader. |
/island members | skybukkit.party.members | Display your party's members. |
/island admin destroy <player> | skybukkit.admin.destroy | Destroy <player>'s SkyBlock. |
/island admin tp <player> | skybukkit.admin.tp | Teleport to <player>'s SkyBlock. |
/island help | N/A | Display this help message. |
Download
The latest plugin build can be downloaded here.
Latest Changes
Features
- More feedback towards players when using commands or playing
- Perform check when issuing /island home
- Resend Chunks When an Island is created/destroyed.
- Extreme Server Tick Lag. Do the "heavy-lifting" in a worker.
- Max Players per Party
- Configurable Items and Quantities
- Option to disable inventory management
- Added /is command alias
- Shortened all "/island party *" commands to just "/island *"
- Deny disallowed players entry
- /island world -> /island spawn
- Leave the sky when you use /island leave
- Go to the sky when you use /island accept
- Inform implicitly promoted players that they have been promoted
- Inform party members when a member leaves their party
- Inform promoted players that they have been promoted
Bug Fixes
- Enabled maven resource filtering for plugin.yml
- Removed super hacky cb refs
- Changed pom
- Fixed maven dependancies
- Fixed a fatal island creation bug
- Fixed an entity removal bug
- Fixed an island protection bug
- Fixed an island respawning bug
- Fixed another island respawning bug
- Fixed a island creation tick lag bug
- Fixed teleportation and other random bugs
- Fixed protection regions not being removed
- Save WG Regions
- Fixed syntax errors
- Fixed potential CCE
- Made config error messages more user-friendly
- Spelling error correction
- Fixed Deserialization NPE
- Fixed Island Un-Protection Exceptions
- Made party max sizes work
- Fixed another NPE
- Fix docs
- Fixed party commands
- Fixed NPE
- Fixed spelling
- Properly color player names
Planned Features
v1.0.0
SkyBukkit is in a preliminary phase, so please feel free to file a ticket for any feature requests you may have.
How Can I Help?
The plugin is developed solely by me in my free time so:
- If you are a developer would like to contribute to this project, or any of my other projects, please PM me or email me at [email protected].
- If you are a not developer but would still like to contribute somehow, please consider donating. Donations are highly valued and much appreciated.
About
Developer: Keeley Hoek (escortkeel)
Well, i want translate this plugin, but i can't translate it. where is "string"? I did not learn java, and i don't understand what is decompile. Also, every time my player create an island, my players can't do everything until those players rejoin my server. I am using SkyBukkit Release v0.5.11, Minecraft 1.2.5 too
@Apple_columb
The tree is that shape so u can catch anything it drops
Change default island please. There should be a torch, more realistic tree (As for now it's kinda like a cube, not a tree) and book with some info about plugin.
how can i close down skybukkit plugin the protection ability?
And also is skitscape using this plugin for his server?
it seems like he just edited the commands but its exactly the same.
can someone please help me when i do /island home it tells me im already in the sky?
how can i fix that?
does anyone else experience this?
Yes, my server have Skyblock world closed and we all waiting for release a next version, hurry up ;)
No, it's joke, rather better then early.
@shadvalentine
Sure shadvalentine! :)
protectIslands:true/false is coming the next version. :)
Can you add options in the config file to change region flags so that if people build over to a friends island they can enter and help build ... I use protection stones so they can protect there islands
Hi, I will give you a little overview about my requests:
@spazmonkey777
Yes, this is pretty much one of the most annoying bugs that is still in this plugin; the inability to use commands at seemingly random times (although yours does not seem that random at all).
That, along with some spawn issues (people spawning on their skyblock after death in another world) are the bugs that are bothering me the most, but otherwise, people are still joining the server just for this plugin.
Anyone else having an issue where when a nearby player makes a new island, their neighbors can no longer use commands or play normally. They have to relog to fix themselves. It's fairly annoying, especially if your neighbor keeps restarting their island. I have no idea what would be causing this issue. We are running 1.3.2.
@shadvalentine
If you really don't want WG why not disable regions in WG config.yml file. This is only do be tested as not sure if exceptions are being handled for this. Can I ask out of interest why you would want to turn this off ?? To optimise the plugin it would actaully make sense to use WG to store all the party information is as well. But everybody has there only reasons and needs and different setups. You do realise that removing the regions PVP will be enabled unless you disable it at the server level. Also i wouldn't run this in a live environment without giving it full testing as you may find it will start to break if it finds exceptions it can't handle due to there being no regions attached to the island.
@erisawesome
i have been manulay deleting the regons as islands are created .. would be nice for this to be an option in the settings ...
@erisawesome
As far as i am aware you can't get rid of the WG protection it is built into the plugin and is an essential part. Islandsize is the distance between Islands so setting it to 0 would cause there to not be a gap between the Islands.
But Keeley can give you a concrete answer.
This is truly, the best SkyBlock plugin ever.
Keep Up The Good Work!!
- erisawesome
PS how do i get rid of the worldguard protection? i tried setting Islandsize: 0 doesnt work
@escortkeel: You say, that this is going to use an external schematic, for the island... I was wondering if you had a rough estimate on when that will be implemented, as a few of the members of my server are very excited about it, and keep asking me when it'll happen. (The island design I have planned is quite different than normal SkyBlock, and has really piqued their interests)
Thanks, in advance. Kytten
@DJTomek
@DJTomek I presume you are using MV Inventories for your 2 current worlds ? If that is the case I would let that handle the inventories for all 3 worlds or you could well end up with some strange results with 2 plugins fighting for control on Inventory management. The current problem stems from the plugin currently not using /sethome in the island world, there are reasons for this as this solution is not required if you are running your SkyBukkit world as a standalone server. As you can see this is the next feature that keeley has stated he will be implementing in v0.60 . Until that time there will be some strange effects which others have commented on when it loses track of which world the player is actually in. Depending on your levels of skill you could use a plugin like MyCommands to create a custom island create command where you call the standard island create function , followed by the sethome function. You will also need to create a similar function on replace destroy which deletes the home. This is not ideal if you don't have the technical skills. or the other option is to wait for the next update to come out which hopefully will be very soon. I am only answering these questions as i know that Keeley was had major internet problems which has kept him offline of the past 4-5 days.
Anything I have stated is only my own personal help as a developer and large server only and is not official support which only Keeley can give as the owner and author of this plugin.
Regards
Relicum
I'm using Multiverse for many months (maybe a year) and I NEVER have a problem... Can be, but i didn't meet any problem...
But what you recomend for three worlds with three different inventories? I'll try it.
@DJTomek
Sensible suggestion, never use Multi Inventory managers it is only a receipt for disaster. Multiverse Inventories can handle it all for you. Once /sethome is set on island creation it will work exactly how you are requesting.
regards
Relicum