AutoPluginLoader » 1.13 - 1.21.10 icon

AutoPluginLoader » 1.13 - 1.21.10 -----

Automatically reloads/loads plugins, even updating a plugins code! (PlugMan v2)




[​IMG]

[​IMG]

• Automatically reload plugins when uploaded.
• Automatically load plugins when uploaded.
• Automatically reload a plugins dependencies.
• Supports small, large & modded servers.
• Supports small and large plugins.
• Fully configurable messages.
• Fully configurable settings.
• Toggle-able alert messages.
• Ignore specified plugins.
• Tab completion support!
• No dependencies!
• Alert messages for:
» Automatically reload plugins.
» Automatically load plugins.
• Folia support.

[​IMG]

[​IMG]

[​IMG]
Code (Text):
• AutoPluginLoader.Alerts » Get alerts when a plugin is automatically reloaded/loaded.
• AutoPluginLoader.Commands » View & use the commands. (Required to use any other command)
• AutoPluginLoader.Load » Load a plugin.
• AutoPluginLoader.Unload » Unload a plugin.
• AutoPluginLoader.Reload » Reload a plugin.
• AutoPluginLoader.Usage » View the commands for a plugin.
• AutoPluginLoader.Info » View the info on a plugin.
• AutoPluginLoader.List » View the list of plugins.
• AutoPluginLoader.ReloadConfig » Reload the config.yml.
• AutoPluginLoader.Version » View APL's currently loaded version.
• AutoPluginLoader.History » View the sessions APL history.

[​IMG]
Code (YAML):
# =============================================================================
#  AutoPluginLoader (APL) - config.yml
# =============================================================================

messages
:
  # ---------------------------------------------------------------------------
  # ► Core alerts
  # ---------------------------------------------------------------------------
  Plugin-Automatically-Updated
: '&bᴀᴘʟ &7• &a %plugin% &fwas automatically updated &7(⏱ %time% ms)'
  Plugin-Automatically-Loaded
: '&bᴀᴘʟ &7• &a %plugin% &fwas automatically loaded &7(⏱ %time% ms)'

  # ---------------------------------------------------------------------------
  # ► Command list frame
  # ---------------------------------------------------------------------------
  Header
: '&8┏&m━━&b ᴘʟᴜɢɪɴ ᴄᴏᴍᴍᴀɴᴅꜱ &8&m━━━━━━━━━━━━━━━━━━━━━━━━━━━━&8┓'
  Footer
: '&8┗&m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━&8┛'
  Command-Format
: '&8• &e/ %command% &7→ &f%description%'

  # ---------------------------------------------------------------------------
  # ► Generic responses
  # ---------------------------------------------------------------------------
  Config-Reloaded
: '&bᴀᴘʟ &7• &fThe config.yml was &asuccessfully &freloaded.'
  No-Permission
:   '&bᴀᴘʟ &7• &cYou do not have permission to do that.'
  Cant-Put-APL-There
: '&bᴀᴘʟ &7• &fYou can’t use &aAutoPluginLoader &fas a plugin argument.'
  Invalid-Plugin
: '&bᴀᴘʟ &7• &c %plugin% &fis not a plugin on this server.'
  Invalid-Subcommand
: '&bᴀᴘʟ &7• &fThat sub-command doesn''t exist. &7 (&e/apl &fto view the list&7 )'
  No-Description
: '&bᴀᴘʟ &7• &c %plugin% &fhas no plugin description.'

  # ---------------------------------------------------------------------------
  # ► History responses
  # ---------------------------------------------------------------------------
  History-Header
: '&8&m┏&m━━&b ᴀᴘʟ ʜɪꜱᴛᴏʀʏ &8&m━━━━━━━━━━━━━━━━━&8┓'
  History-Footer
: '&8┗&m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━&8┛'
  # Example entry: "(12:34:56) Loaded » WorldEdit"
  History-Display-Format
: '&7 ( %timestamp%) &f%action% &7» &b%pluginName%'
  No-History
: '&bᴀᴘʟ &7• &fThere is currently no history. &7 (This clears every server restart )'

  # ---------------------------------------------------------------------------
  # ► Status checks & plugin state messages
  # ---------------------------------------------------------------------------
  Already-Loaded
:  '&bᴀᴘʟ &7• &a %plugin% &fis already loaded.'
  Already-Unloaded
: '&bᴀᴘʟ &7• &a %plugin% &fis already unloaded.'
  Failed-To-Load
:  '&bᴀᴘʟ &7• &cFailed to load %plugin%. &7(Check console.)'

  Plugin-Is-Reloading
: '&bᴀᴘʟ &7• &a %plugin% &fis reloading…'
  Plugin-Has-Reloaded
: '&bᴀᴘʟ &7• &a %plugin% &fhas been reloaded.'
  Plugin-Loaded
:      '&bᴀᴘʟ &7• &a %plugin% &fhas been enabled.'
  Plugin-Unloaded
:    '&bᴀᴘʟ &7• &a %plugin% &fhas been disabled.'
  Plugin-Unloaded-With-Dependencies
: '&bᴀᴘʟ &7• &a %plugin% &fdisabled &7(its dependencies were also reloaded)'
  Plugin-Unloaded-Note
: '&bᴀᴘʟ &7• &fHint&8 : &e/apl unload (plugin ) -d &freloads its dependencies too.'
  Nothing-Was-Changed
: '&bᴀᴘʟ &7• &fNo plugins needed loading or updating.'

  # ---------------------------------------------------------------------------
  # ► Command / info lists
  # ---------------------------------------------------------------------------
  No-Commands-Registered
: '&bᴀᴘʟ &7• &c %plugin% &fhas no registered commands.'
  Sub-command-Unknown
:   '&bᴀᴘʟ &7• &c %argument% &fis not a valid sub-command.'
  Version
: '&bᴀᴘʟ &7• &fCurrent version&8 : &a%version%'
  Commands
: '&bᴀᴘʟ &7• &a %plugin%&f''s commands&8: &e%commands%&f.'
  Commands-Split
: '&f, &e'

  Plugins-Info
:
    - '&b» &fPlugin&8
: &a%plugin%'
    - '&8• &fVersion&8
: &a%version%'
    - '&8• &fAuthor(s)&8
: &a%authors%'
    - '&8• &fStatus&8
: %status%'

  Plugin-Split
: '&f, &a'

  Plugin-List
:
   - '&b• &fPlugins &b»'
    - '&8• &fEnabled&8
: &a%enabled%&f.'
    - '&8• &fDisabled&8
: &c%disabled%&f.'

  Enabled-Split
: '&f, &a'
  Disabled-Split
: '&f, &c'

  # ---------------------------------------------------------------------------
  # ► Usage hints
  # ---------------------------------------------------------------------------
  Usages
:
    Load
:  '&bᴀᴘʟ &7• &fUsage&8 : &e/apl load (plugin )'
    Unload
: '&bᴀᴘʟ &7• &fUsage&8 : &e/apl unload (plugin )'
    Unload-With-Dependencies
: '&bᴀᴘʟ &7• &fUsage&8 : &e/apl unload (plugin ) -d'
    Reload
: '&bᴀᴘʟ &7• &fUsage&8 : &e/apl reload (plugin )'
    Usage
: '&bᴀᴘʟ &7• &fUsage&8 : &e/apl usage (plugin )'
    Info
:  '&bᴀᴘʟ &7• &fUsage&8 : &e/apl info (plugin )'

# =============================================================================
#  Update Checker
# =============================================================================
update-check
:
  enabled
: true
  permission
: autopluginloader.update
  message
: "&bᴀᴘʟ &7• &fA new version, &b%latest%&f, is available. You're running &e%current%&f."


# =============================================================================
#  Core Settings
# =============================================================================
settings
:
  # -------------------------------------------------------------------------
  # ► Target plugins folder
  # -------------------------------------------------------------------------
  # Folder where your plugins (*.jar) are stored.
  # Usually this should remain as 'plugins'.
  Your-Plugins-Folder
: 'plugins'

  # -------------------------------------------------------------------------
  # ► Auto-load / Auto-update behavior
  # -------------------------------------------------------------------------
  Automatically-Load-Plugins
:  true
  Automatically-Update-Plugins
: true
  # NOTE:
  #   This DOES NOT mean that when an update is released online it will be
  #   automatically downloaded and uploaded to your server.
  #
  #   This option refers to the scenario where you replace or drag an updated
  #   jar into the plugins folder (e.g., a new WorldEdit jar). APL detects the
  #   changed file and reloads the plugin's code, updating the currently
  #   loaded version WITHOUT needing a full server restart.
  #
  #   Sorry for any confusion — this is purely local file-based detection.

  # -------------------------------------------------------------------------
  # ► Task timings (in seconds)
  # -------------------------------------------------------------------------
  Load-Data-Delay
: 5       # Seconds – must be < Timer-Delay

  Task
:
    Timer-Delay
: 10         # Seconds – must be > Load-Data-Delay (initial wait before first scan)
    Timer
: 1               # Seconds – interval between plugin folder checks

  # Minimum age (seconds) a modified jar must have before APL triggers a reload:
  Seconds-Before-Reloading
: 5

  # Delay (seconds) to wait after uploading a NEW *.jar before attempting to load it:
  Seconds-Before-Loading
:  5

  # -------------------------------------------------------------------------
  # ► Dependency behavior & alerts
  # -------------------------------------------------------------------------
  Always-Reload-A-Plugins-Dependencies
: true   # If false, use “-d” flag when unloading to reload deps
  Send-Players-Alerts
: true                     # Players need AutoPluginLoader.Alerts permission

  # -------------------------------------------------------------------------
  # ► Plugins to ignore (never auto-loaded/auto-updated)
  # -------------------------------------------------------------------------
  Plugins-To-Ignore
:
   - 'WorldEdit'
    - 'WorldGuard'
    - 'AutoPluginLoader'       # Don’t remove – avoids recursion issues
    - 'Skript'                 # Skript reloads can break extensions
    - 'ItemsAdder'
    - 'Oraxen'

[​IMG]
Code (Text):
• APLMain.PluginAPI.loadPlugin(File plugin);
» Loads a plugin. (Must be done before enabling a plugin)

• APLMain.PluginAPI.enablePlugin(Plugin plugin);
» Enable a plugin. (Must be loaded)

• APLMain.PluginAPI.getPlugin(String s);
» Make a string return as a Plugin.

• APLMain.PluginAPI.getPlugins();
» Returns all plugins as an ArrayList<Plugin>().

• APLMain.PluginAPI.getPluginsInAlphabeticalOrder();
» Returns all plugins as an ArrayList<Plugin>(), but in alphabetical order.

• APLMain.PluginAPI.disablePlugin(Plugin plugin);
» Disables a plugin. (Recommend to unload it 1st)

• APLMain.PluginAPI.reloadPlugin(Plugin plugin);
» Disables and then enables a plugin. (Doesn't refresh new code in a plugin)

• APLMain.PluginAPI.unloadPlugin(Plugin plugin, Boolean ReloadDependents);
» Unload a plugin and have the option to reload the plugins that plugin depends on.

• APLMain.PluginAPI.getDescription(File file);
» Returns the PluginDescriptionFile of a file.

• APLMain.PluginAPI.getFile(JavaPlugin plugin);
» Grab the file from a plugin.

[​IMG]

The quickest way to get support for any of my resources
would be to join my Resource Discord.
» https://discord.gg/2vUqykD

Note »
Please DO NOT leave bad reviews for any issues
that you have. Please simply PM me or leave it
in the discussion tab. Thank you. (y)

That and reviews are highly appreciated! :alien:

[​IMG]

My other plugins

[​IMG] [​IMG] [​IMG] [​IMG] [​IMG]
Resource Information
Author:
----------
Total Downloads: 15,696
First Release: Jan 12, 2020
Last Update: Nov 16, 2025
Category: ---------------
All-Time Rating:
35 ratings
Find more info at discord.gg...
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings