FlightControl
FlightControl
The Ultimate Flight Control Plugin
FlightControl gives you detailed control over player flying and flight mode, as well as a plethora of unique flight-related features. Most features are designed to make flight mode less over-powered.
Disambiguation:
- "Flight mode" is the state of being able to start and stop flying at will.
- "Flight / flying" is the current state of flight.
Don't be afraid to donate a little (top-right); Computer Engineering students need cash. ;)
Features
All features are optional and configurable:
- Affect player exhaustion when starting to fly and during flight
- Automatically enable / disable flight mode on player login
- Charge players for flying (requires Vault)
- Control flight speed
- Control which kinds of weather (clear, rain, thundering) players are allowed to fly in
- Hovering
- Increase player mining speed while flying, using Haste
- Limit flying time
- Put players in a state of persistent flight
- Set what time of day players are allowed to fly
- Stop players from flying when taking damage or while starving
- Stop players from sprinting while flying
Commands
Note: Arguments enclosed in [brackets] are optional; args enclosed in <brackets> are required.
- /fc - Show all FlightControl commands
- /fc reload - Reload FlightControl configuration file
- /fly [player] [on | off] - Toggle / set flight mode, possibly for other players
Examples
- Toggle flight mode for self: /fly
- Turn off flight mode for self: /fly off
- Turn on flight mode for player "Notch": /fly Notch on
Permissions
- fc.*: Gives all permissions for FlightControl.
- fc.reload: Reload config. Default: op
- fc.fly.*: Gives all flight permissions.
- fc.fly.allow: Allow player to fly. Default: true
- fc.fly.disable: Disable flight mode. Default: true
- fc.fly.enable: Enable flight mode. Default: true
- fc.fly.others: Allow player to control flight mode for other players. Default: op
Configuration
Click here to view the default configuration.
Dependencies
- Vault - [Optional] Required to charge players for certain actions.
Installation
- Pre-Installation:
- Install any dependencies, listed above.
- Make sure the file "server.properties" key "allow-flight" is set to "true", so the server does not kick players for flying.
- If you are using Essentials, make sure the following permissions are set, so that Essentials does not mess with the functionality of FlightControl:
- essentials.fly: true
- essentials.fly.safelogin: false
- Installation:
- Download the latest FlightControl .jar file here.
- Remove any old "FlightControl-x.y.z.jar" file from your server's plugins directory.
- Remove any existing "FlightControl/config.yml" file from your server's plugins directory, so that FlightControl will generate a new config.
- Move the new FlightControl .jar file into your server's plugins directory.
- Reload your server's plugins ("/reload") if running, or start the server if not.
- Post-Installation:
- Set permissions, and reload your permission plugin (probably "/perms reload").
- Set config values for FlightControl in the "FlightControl/config.yml" file in your server's plugins directory, and give the "/fc reload" command as OP.
- Click "Subscriptions" to get notifications when a new version of FlightControl is released!
To Do
- Per-world support.
Notes
- FlightControl uses PluginMetrics to gather statistical data (available at MCStats). To disable statistics gathering server-wide, edit the "plugins/PluginMetrics/config.yml" file, and set "opt-out" to "true".
- FlightControl is compiled for Java 7. If you get an error in your logs similar to "Unsupported major.minor version 51.0", then you need to upgrade Java!
- Comments / suggestions appreciated! Make sure you know how to file tickets before submitting a bug report.
Does this still work in 1.13.2?
@n0nnie
Hey, sorry about your incident... I'm not actively developing any plugins at the moment, I have been very busy with other jobs and projects. As for your issue specifically, did you have the configuration item "flight_mode: enable_on_join:" set to true (see the Configuration page above)? That would enable flight for players automatically once they join the server, and (if set) should have prevented this exact thing from happening.
If I start developing for my plugins again (and I would like to), then I will definitely keep your comment in mind.
Hi, me again.
I am posting although I know your last login was in 10-2014 ^^
I had a incident on my server. Some players were flying and then the server crashed (hoster had networkproblems). As thy logged in again, they still were in the air, without flying and they cratered (hit the ground to hard) and died.
The only one who died not was me. I was also in the air. What was different? I were op in survivalmode. So I got this idea now:
How about a permissionbased system to avoid this? My idea is to give certain levels of security:
1. level - no permission - just die 2. level - fc.ground.lvl1 - you have configureable amount of time to type "fly" otherwise die 3. level - fc.ground.lvl2 - you login and you are standing on first surface what is underneath you 4. level - fc.ground.lvl3 - same like lvl2 but ground is checked for lava or other harmfull things 5. level - fc.ground.lvl1 - you still can fly but fly is disabled as soon as your foots touch a solid surface and you have to enable it again 6. level - fc.ground.lvl6 - you can fly as you have never logged out
With this permissionsystem user can give donators better access to fly etc.
Hm maybe a check if the damage was done by a mob or another player can indicate a pvp-event. Maybe pvp-servers will set persist-fly-during-pvp to true or something.
But I agree. The disable on damage option covers pvp pretty good ^^
@n0nnie
Glad you like it! :)
In response to your PvP request: if I'm understanding you correctly, that can be achieved by setting "flying.disable_on_damage" to true. Although there is no "cool down" time... I've been thinking about adding cool down time for that.
@austinbowen
AWESOME =)
I installed it now. Have to test it (I am at work now), but I think this will be exactly what I was looking for. Now you have written a flycontrol plugin that is unique! Thank you very much!
Another Idea, that came up by setting up Grief Preventions PVP Part. We do not have a PVP-System but maybe this will be handy for others who have. Consider to disable flight while in a certain PVP event. Maybe with an option, that flight can only be enabled if there is no damage taken for an amount of time? I am not that experienced about PvP so something else got better ideas how to disable flight during PvP
@Arminius4
@n0nnie
I've added the features that you were asking about! The new file is awaiting approval by the Bukkit team, but it can be downloaded here (not yet approved by Bukkit!):
FlightControl v1.0.0
You will need to let FlightControl re-generate its config file in order to see the new options, or you can add them to your existing config file yourself.
This might be doublepost now Sorry
Thank you very much for considering. Your Plugin is very cool =)
Some Infos: I am running a 1.6.4 Server with Java7 on Ubuntu and it works just fine. No errors, no glitches, no unexpected behaviour. Just good work =)
@n0nnie
Ooh, also a good idea! I'll see what I can do.
I will definite install this! Thats just awesome!
Reading through your Documentation brought me to another Featureidea: It would be cool, if rain, storm, night, can also disable fly (like damage does)
So it can be configured to be dangerous to fly the whole day in one direction, because nightfall will bring you to the ground somewhere in wilderness.
@Arminius4
That's a great idea, to prevent a player from flying if they have less than a configurable amount. I'll add that as soon as I've got time.
Could you extend your plugin that a player with no money would not be able to fly?
@cipi1965
My server is running 1.7.9 and it has ignore creative. I think you just need to let the plugin re-create the config file, to show the new config options. You'll have to rename the current config file (from "config.yml" to "config.yml.old", for example) and reload the plugin. The plugin will generate the default config file, and the new config values will appear. You will need to set the values that you have set in the old config.
Can you add ignore creative for 1.7.9?
@AspenTheWolf
Check out my previous comment. :)
FlightControl v0.3.0 (Beta) has just been released! It is in the process of being reviewed by the Bukkit team at the moment, but you may download it (as yet UNAPPROVED by Bukkit) here: FlightControl v0.3.0 (Beta)
@austinbowen
Alright, all good ideas, I'll keep a look-out for when/if you update it then ^o^ Thank you! :D
@AspenTheWolf
I could definitely make it charge players for the time that they fly. I would use the flight time because distance would be harder to track... Also, I would probably make it charge them when they stop flying, as opposed to at a fixed interval as with exhaustion. Since a player's balance is less real-time critical, I believe this would work fine, and would not be difficult to implement.
I'll definitely think about it. But I made this plugin over spring break, which is now over, so it may be a while before I incorporate anything new...
Do you think that you could add the optional ability to charge players a configurable amount per distance/time flown?
The Beta release (v0.2.0) is under review. Keep watch for it!