TempFly (Now includes Factions Fly) icon

TempFly (Now includes Factions Fly) -----

Treat flight time as a currency!



TempFly Rewrite Beta
Surprise, I decided to rewrite the entire plugin as I felt it was necessary due to the poor quality of my old code. I was a beginner when I first wrote this plugin almost 3 years ago, It was inefficient and very difficult to add new features (90% of the plugin was static abuse and nothing could be added modularly).


I was putting off releasing this because I wanted to add everything at once but there are many bugs in the old version that people have been waiting to be patched for a while. Therefore I will instead post smaller installments starting with this version as a base because i think it is a waste of time to go back and patch the old version when I am working on a new one anyway.


--->You will need to reset your config and language file for this new version.<---


Features Additions:


Sql database and Multithreading.

  • I had to rewrite TempFly’s internal data management system. A backup of your old data will be made just in case something goes wrong.

  • In the process of doing this I decided to multithread the plugin to a minor degree.

  • Autosaving and many ambient saving functions now happen asynchronously meaning IO operations will not affect your main server thread. This includes YAML storage.

  • Sql is not currently available in the 3.0.0 beta release. Its implementation is not yet finished.

Gamemode Hooks

  • Tempfly now has extensive out of the box hooks for:
    • Completed
      • ASkyBlock
        • I know this was already in the plugin but it sucked and it was not thoroughly tested.
        • It has been redone to fit in with the new hook system.
    • In progress
      • IridiumSkyblock
        • Almost complete.
      • BSkyBlock and AcidIsland
      • SuperiorSkyblock2
    • Planned additions
      • Lands
      • Towny
      • Factions (MassiveCraft)
      • PlotSquared
      • PlotMe
    • I am open to more recommendations. I started with the skyblock hooks because I am very familiar with the genre and it was easy for me.
  • I am hoping this will help make the plugin more customizable and versatile for different types of servers. Info about the hooks will be posted on the main resource page.

  • Developers:
    • There is now an easy to use extended API in tempfly for adding gamemode hooks for servers with custom plugins. See the source for instructions.
    • I will post tutorials at some point in the future.

AutoFly
  • Flight will now be auto enabled for players who had their flight disabled due to a restriction or unmet requirement. Example, if a player enters a disabled region with flight enabled, their flight will be disabled. It will then auto enable when they leave the region. Any reasons a player loses flight are now counted as FlightRequirements and can use this feature.

Region Hooks
  • TempFly has region support for
    • WorldGuard

    • …?
  • Let me know if you want another region plugin supported, I can’t find any other popular ones. The systems are in place to add more region plugins.

  • Developers
    • if you have a custom regions plugin on your server there is a developer api to easily hook it into tempfly.

Timer
  • Added a permanent flight timer option that counts down time even when flight is disabled.
    • This can be tied in with the feature time_decay to consume flight at all times, even when the player is not on the server.
  • Added ability for players with infinite flight to toggle their infinite flight.
    • Permission for infinite flight has been changed.
      • tempfly.infinite

      • tempfly.infinite.toggle
Time
  • Added group based max time settings for players alongside the default max defined in the config.

  • The max time permission groups will override the configurable default max.

Bypass
  • Added the ability for players with permission tempfly.bypass to bypass flight restrictions.

  • In addition with tempfly.bypass.toggle they can toggle their requirement bypass.

Commands
  • The time commands have been made more intuitive as there was a great deal of confusion with the arguments I had before. You can now mix and match the following however you want in your commands. The units can be specified many ways too, like m/min/mins/minutes
    • -{unit} {time}
      • /tf give player -m 2
    • {time} {unit}
      • /tf give player 2 mins
    • {time}{unit}
      • /tf give player 2m
    • Just seconds
      • /tf give player 120
    • Decimals work
      • /tf give player 0.8m
      • Will give 48 seconds
Max Time
  • Added permission based max time groups in the config.
    • These are optional, one global max time can be used still like before.
  • Due to the nature of the way permissions work, you will be required to install the plugin vault if you wish to pay offline players time while using permission groups.
    • This is also optional.

Performance
  • I've gone through all the internal systems and meticulously optimized them the best I could to reduce the plugins footprint on the server. This includes caching certain things that are used alot to save on lookup and constructor costs, among many others.

Metrics
  • Tempfly now uses Bstats to collect information about how many servers are using the plugin. You can disable this in the bstats config if you want, however I would appreciate it if you left it on.
    • Bstats has a negligible impact on server performance
    • I am mainly using the stats to collect information about how many servers use my built in gamemode hooks, that way i can put my effort into the features i see are being used the most.

RequirementProvider api
  • This is for developers mainly but can apply to any tech savvy server owners who want to get into a bit of coding to customize flight on their server.
  • There is now a very easy to use api in tempfly that allows you to implement rules that dictate whether players can fly or not given specific conditions. These rules can be as simple as disabling flight in a certain biome or when a player is hungry.
  • All internal TempFly gamemode hooks are just complex usages of this api, i will link you a small tutorial to understand the basics of this.

Bugs:
  • Fixed shop allowing players to buy more than max time.
  • Fixed infinite flight when teleporting back and forth from disabled worlds.
  • The flight timer now starts the instant a player begins flying and the action bar pops up fluidly, it doesn’t look laggy when a player starts flying now.
  • Flight timer now updates the instant a player receives or loses time instead of on the next timer cycle, so it looks better now.
  • Reload command
    • Reload now supports updating disabled regions and worlds.
    • The autosave interval was not being reset with the reload command.
    • Everything should now be updated in real time on /tf reload. Let me know if I missed something.
  • Trails
    • Fixed trails gui not updating if a player is not in flight mode.
    • Default trail can be specified in the config and now works as intended.
    • Default trail will now be applied back to the player when they remove their trail if specified in the config.
  • Daily bonus is now 100% fixed, I tried to overcomplicate the code and it was stupid. It no longer spams out daily bonuses to players at midnight.
  • Daily bonus no longer gives more than max configurable time.
  • A backup for data.yml was saved for no reason on initial installation of the plugin.
  • Combat log was not properly logging players, starting their combat timer on first combat and not resetting after each hit
  • Too many more to list. I came across so many obscure bugs while rewriting the plugin that I just fixed them and didn’t bother logging them.
----------, Aug 21, 2020
Resource Information
Author:
----------
Total Downloads: 31,779
First Release: Mar 27, 2018
Last Update: Apr 14, 2022
Category: ---------------
All-Time Rating:
121 ratings
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings