CyberBukkit

This project is abandoned and its default file will likely not work with the most recent version of Minecraft. Whether this project is out of date or its author has marked it as abandoned, this project is no longer maintained.

CyberBukkit

CyberBukkit uses the DropBox API and the Bukkit API to bring you the ultimate server file management experience. It allows you to simply edit, drag, drop, rename... Items without having to use an FTP server. This is especially convenient on paid hosted servers, or simply when you are away from home. You can even use the Dropbox Android or iOS app to access your files!

Current features

The current stage of CyberBukkit has the following features:

  • Dropbox linking and authorisation.
  • Multithreaded downloading.
  • Automatic file download and overwrite from Dropbox at startup.
  • Synchronisation with the Dropbox servers

Example usage

  • Share certain folders with co-administrators, without giving the console password out.
  • Share a certain plugin folder with a person helping you with it.
  • Allow players to download the server world by making the world folder public.
  • Manage your server's plugins and files remotely, without the need for an FTP client.

Installation

  1. Create a Dropbox account. You may do so here if you do not already have one.
  2. Simply drop the CyberBukkit jar into your plugins folder.
  3. The server startup will pause at the authorisation process. Follow the instructions in the console.
  4. When prompted to type a code, you may notice that the text is invisible. This is intentional, as the code should be kept strictly private.
  5. Done!

Configuration

buffer_size: 4

The size of the file write buffer. Specified in multiples of 1024 for convenience and optimal results. Optimum buffer size is related to a number of things: file system block size, CPU cache size and cache latency. If you want to optimise this, find out the allocation unit size for of your minecraft host's filesystem. If you're using paid hosting, submit a ticket, and I'm sure they'll tell you if you ask nicely. Minimum: 1, maximum: 64.

maximum_upload_threads: 12 & maximum_download_threads: 12

The maximum number of download and upload threads CyberBukkit will use. More threads means faster downloading/uploading. However, since each thread is dedicated to one download for maximum stability, increasing it won't help to get a 1GB file any faster. Setting it too high may result in failed downloads and corrupted files. This could have a number of reasons, including, but not limited to:

  • Dropbox detects too much download requests at once and denies some.
  • Your router/ internet subscription can't handle the ammount of simultaneous downloads, and you are DOS'ing yourself. Please note that it is set to 24 by default, but I've tested it on my own network up to 48, and it still worked fine.

CyberBukkit will always inform you if this happens. It will log the failure, and re-try later.

dropbox_folder: CyberBukkit

Limits access of CyberBukkit to one folder. Leave blank to sync the whole Dropbox to your server folder (Not recommended). Not case sensitive.

verbose_logging: false

Logs every single synchronisation to the console. Not recommended for large servers, as it can spam your console up quite a bit.

Remarks

  • It is possible to replace every file in your server folder at runtime, (whilst it is running). However, keep in mind that you will need to restart, not reload, your server for this to have effect in the case of the server.jar file. You may set this as automatic in the config.
  • While it is possible to automatically check for file updates at faster than 5 minute intervals, I respect Dropbox's request not to do so, to reduce stress on their servers and to avoid getting my API license revoked, which would break the plugin for everyone. I ask of everyone using this plugin not to abuse the "/sync" command. Thank you for your understanding. If requested enough, I might make my own application, similar to Dropbox's desktop application, taking care of fully automatic syncing.
  • Whilst files from the Dropbox server only get updated at 5 minute intervals, or when prompted with the "/sync" command, files on the server get uploaded to the Dropbox server nearly instantly. This is due to limitations in the Dropbox Java API.

Core features To-Do

  1. Dropbox-to-server synchronisation [Done!]
  2. Server-to-dropbox synchronisation [Working on it right now!]
  3. Redundant file removal feature [Done!]
  4. Add buffer size config option [Done!]
  5. Multithreaded downloading [Done!]
  6. Thread limiter [Done!]

Secondary features To-Do

  1. File/Folder black/whitelist [Will be added next version]

Comments

Posts Quoted:
Reply
Clear All Quotes

About This Project

  • Project ID
    63504
  • Created
    Aug 10, 2013
  • Last Released File
    Never
  • Total Downloads
    0
  • License

Categories

Members

Recent Files

No files uploaded yet.