AutoCast 1.033

Did someone say customization?

  1. Kyllian
    Native Minecraft Version:
    1.13
    Tested Minecraft Versions:
    • 1.7
    • 1.8
    • 1.9
    • 1.10
    • 1.11
    • 1.12
    • 1.13
    • 1.14
    Source Code:
    https://github.com/InstantlyMoist/AutoCast
    Contributors:
    InstantlyMoist (me)
    [​IMG]

    Welcome to AutoCast, the best autobroadcasting plugin available on Spigot. AutoCast is has a user-friendly configuration to make your server look even better, this without deaccelerating the servers' performance.

    To illustrate this, take a look at the timings of my own testing server, where I'd send a automated message every half a second. You can see it doesn't even show up in the timings ;)

    AutoCast also comes with an easy to use API which makes the plugin even more useful for developers. Make sure to check out the bottom of the page to get more information about it.

    Still not convinced? Make sure to read the complete plugin page, you could even join my discord server to receive some personal feedback.

    Curious about how AutoCast is doing? Check out the bStats!

    [​IMG]
    • mc.islandearth.net
    • Want to be added? PM me!
    [​IMG]
    As stated before, the plugin is lightning fast which you could see from the timings, the plugin shouldn't be visible on the timings page, this because the plugin is not using the main thread to execute the broadcasts, it will use another thread, not used by the server, to make sure the message gets sent. This results a very lightweight plugin.

    You might think aSynchronous tasks aren't safe, but in theory they are. After thourough testing I found out what can, and can't be used in a aSynchronous context. Things like commands, and world/entity editing can't be done aSynchronously, those thing will be perfectly executed on the main thread, but still not use much performance.

    Besided everything I mentioned above, it also makes your server look alot more professional. This because you can edit the plugin completely to your own likings, if you wish the plugin was completely yellow, you easily make the plugin yellow just by changing the messages.

    You can also use PlaceHolderAPI in this plugin, which means you can add more information in your messages, PlaceHolderAPI will also work in the actionbar, title, bossbar, and book.

    When you purchase AutoCast, you will automatically get my support, this means you can always contact me on my discord and receive almost immediate support when I'm available.

    [​IMG]
    AutoCast contains a ton of features and customization. This list will give you a rough idea where AutoCast is capable of:
    • Unlimited messages
    • PlaceholderAPI support in every message.
    • Permissions and commands per message
    • (Animated) Title/subtitle support
    • (Animated) Actionbar support
    • (Animated) Bossbar support
    • (Animated) Scoreboard support
    • (Animated) TabList support
    • Easy animation support
    • JSON message (Clickable messages with different types of executions, the messages are also hoverable)
    • JSON Book support (Opening a book when a message is sent)
    • aSynchronous data fetching/sending, so it doesn't affect any of the server performance
    • Highly customizable MOTD on join.
    • Ability to turn off the messages as a player.
    • Almost immediate discord support when available
    • Static actionbar + bossbar support
    • MySQL Support
    • MOTD Support
    • Everything is customizable
    Please keep in mind things like titles, actionbars and stuff like that will not work in 1.7/1.8 due to server/client limitations.

    [​IMG]
    Animated scoreboard:
    scoreboard.gif
    Book:
    [​IMG]

    Bossbar:
    [​IMG]

    Complete message (Old):
    [​IMG]

    Static bossbar/actionbar:
    [​IMG]

    TabList:
    tablist.gif

    Unknown player MOTD:
    [​IMG]

    Known player MOTD:
    [​IMG]

    Title broadcast:
    [​IMG]

    Actionbar broadcast:
    [​IMG]

    Bossbar broadcast:
    [​IMG]



    config.yml
    Code (Text):

    # AutoCast
    #
    # Welcome to the newest version of AutoCast, the most customizable autobroadcast plugin for spigot. Perfect for all your needs!
    # It might take you some time to set it up, but once you take the effort. It will look amazing.
    #
    # If you somehow can't set it up or experience any performance related issues, don't hesitate to contact me on; https://discord.gg/zgKr2YM
    #
    # Important information:
    # BroadCastInterval will be in ticks, so if you wish to have 15 minutes of delay, do: 15 * 60 * 20, this will give you the amount of ticks.
    # Make sure you add the correct message name in the EnabledMessages list! It's cAsE sEnSiTivE
    #

    UpdateChecking: true

    MySQL: false

    BroadcastInterval: 18000

    RandomOrder: true

    MinimumPlayers: 1

    Log: true

    EnabledMessages: # Make sure you only add messages that you'd like to be broadcasted
      - 'CreatorMessage'
      - 'PlaceholderAPI'

    OnJoin:
      SendMessage: true
      ClearChat: true
      DisableOther: true
     
    messages.yml
    Code (Text):

    # messages.yml start
    #
    # Important links:
    # BarStyle: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/boss/BarStyle.html
    # Sound: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Sound.html ! YOU CAN ALSO USE RANDOM AS A SOUND
    # BarColor: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/boss/BarColor.html
    # ClickAction: https://ci.md-5.net/job/BungeeCord/ws/chat/target/apidocs/net/md_5/bungee/api/chat/ClickEvent.Action.html
    #
    # Important information:
    # In order to disable something, replace the list like:
    # Text:
    #   - 'Text here'
    # With
    # Text: []
    #
    # In order to create more message, you will need to copy paste the old message, and change it to your likings. If you wish to create an empty message.
    # execute the command /autocast create (name) and this will create an empty message for you.
    #
    # In order to create a proper book, you will need to use: https://minecraftjson.com/
    # Not sure how this works? Make sure to check out the plugin page for more information!
    #
    # In order to set the bossbar color change the first word with the color, followed by a semicolon:
    # COLOR;TEXT
    #
    # If it's somehow still unclear how to set up a proper message for your own server, don't hesitate to contact me.
    # You can PM me on Spigot: https://www.spigotmc.org/members/kyllian.31777/
    # Or join my discord server for further assistance: https://discord.gg/zgKr2YM
    #
    # In order to get multiple lines in a hover message, put \n in the place where you'd like a new line to begin
    # This also counts for the MOTD
    #
    # Enjoy <3



    PluginMessages:
      InvalidArgument: '&8&oAutoCast: &7Invalid argument! Please do /autocast help!' # Message sent when the argument is invalid
      Reloaded: '&8&oAutoCast: &7Reloaded plugin!' # Message sent when the plugin has been reloaded
      NoPermissions: '&8&oAutoCast: &7You don''t have permissions!' # Message sent when you don't have permissions to execute a command
      ForceSending: '&8&oAutoCast: &7Force sending message' # Message sent when you are force sending a message
      SwitchedMode: '&8&oAutoCast: &7Automated messages are now %state%' # Message sent when either the player or admin switched the mode
      MustBeAPlayer: '&8&oAutoCast: &7You must be a player in order to receive these messages' # Message sent when you must be a player
      UnknownMessage: '&8&oAutoCast: &7The message you specified is unknown, Please use an existing message' # Message sent when the specified message is not known
      BroadcastLayout: '&8&oAutoCast: &7%message%' # Default broadcast layout
      CheckingUpdate: '&8&oAutoCast: &7Checking for update...'
      UpdateFound: '&8&oAutoCast: &7New version found! You are currently running version %oldversion%, version %newversion% is ready to be downloaded on %url%'
      UpdateNotFound: '&8&oAutoCast: &7You are up to date!'
      ChangedOrderMessage: '&8&oAutoCast: &7Changed order to %order%'
      MessageCreated: '&8&oAutoCast: &7Empty message has been created and is visible in the messages file!'
      MessageExists: '&8&oAutoCast: &7The message you specified exists already!'

    MOTD:
      Enabled: true
      CustomSlot: 2019
      PlayerKnown:
        - '&7Welcome back %player_name%\n&7We just added survival!'
        - '&7Welcome back %player_name%\n&7Creative just had an update!'
      PlayerUnknown:
        - '&7Welcome to AutoCast\n&7We have survival, please join!'
        - '&7Hey, you''re new!\n&7Did you know we have playervaults?'

    Static: # Static actionbar/bossbar
      UpdateTime: 20 # Time before the action/bossbar updates
      ActionBar:
        Enabled: true
        Text:
          - '&7Welcome to the server &8%player_name%&7!'
          - '&7Welcome to the server &8%player_name%&7!'
          - '&7Welcome to the server &8%player_name%&7!'
          - '&7This server is running &8AutoCast&7!'
          - '&7This server is running &8AutoCast&7!'
          - '&7This server is running &8AutoCast&7!'
          - '&7Your ping is &8%player_ping%&7!'
          - '&7Your ping is &8%player_ping%&7!'
          - '&7Your ping is &8%player_ping%&7!'
      BossBar:
        Enabled: true
        BarStyle: SOLID
        Text:
          - 'WHITE;&8X: &7%player_x% &8Y: &7%player_y% &8Z: &7%player_z%'
      Scoreboard:
        Enabled: true
        Animation:
          1:
            Header: '&8&oAutoCast'
            Text:
              - '&7Welcome,'
              - '&7%player_name%!'
              - ' '
              - '&8&oRAM: UNKNOWN' # &7%server_ram_used%/%server_ram_total%MB
              - '&8&oOnline: UNKNOWN' # &7%server_online%/%server_max_players%
              - ''
              - '&8&oUnique joins: UNKNOWN' # &7%server_unique_joins%
          2:
            Header: '&7AutoCast'
            Text:
              - '&8&oWelcome,'
              - '&8&o%player_name%!'
              - ' '
              - '&7RAM: UNKNOWN' # &8&o%server_ram_used%/%server_ram_total%MB
              - '&7Online: UNKNOWN' # &8&o%server_online%/%server_max_players%
              - ''
              - '&7Unique joins: UNKNOWN' # &8&o%server_unique_joins%
      TabList:
        Enabled: true
        Animation:
          1:
            Header:
              - '&8&oWelcome to AutoCast'
              - '&7%player_name%!'
            Footer:
              - '&7%statistic_hours_played% hours played!'
              - '&8&o%player_first_join_date% is when you first joined!'
          2:
            Header:
              - '&7Welcome to AutoCast'
              - '&8&o%player_name%!'
            Footer:
              - '&8&o%statistic_hours_played% hours played!'
              - '&7%player_first_join_date% is when you first joined!'

    Messages:
      OtherJoinMessage: # Message sent on join
        Text:
          - '&7----------------{ &8&lAutoCast &7}----------------'
          - '&7Welcome to the server %player_name%!'
          - '&7Make sure to vote today!'
          - '&7Click on this message to join our discord!'
          - '&7-----------------------------------------'
        ClickAction: OPEN_URL
        Click: 'https://discord.gg/zgKr2YM'
        HoverText: '&7Click here to join the discord\n&7Don''t be scared'
        Sound: 'RANDOM'
        Permission: 'NONE'
        Commands: []
        Title: []
        TitleDuration: 10
        ActionBar: []
        ActionDuration: 10
        BossBar: []
        BossStyle: SEGMENTED_6
        BossDuration: 10
        BookPages: []
      FirstJoinMessage: # Message sent on first join
        Text:
          - '&7----------------{ &8&lAutoCast &7}----------------'
          - '&7Welcome to the server %player_name%!'
          - '&7Enjoy your stay!'
          - '&7Click on this message to join our discord!'
          - '&7-----------------------------------------'
        ClickAction: OPEN_URL
        Click: 'https://discord.gg/zgKr2YM'
        HoverText: '&7Click here to join the discord'
        Sound: 'NONE'
        Permission: 'NONE'
        Commands: []
        Title: []
        TitleDuration: 10
        ActionBar: []
        ActionDuration: 10
        BossBar: []
        BossStyle: SEGMENTED_6
        BossDuration: 10
        BookPages:
          - '["",{"text":"ServerName:","color":"gray","bold":true},{"text":"\nAutoCast welcomes you to the server %player_name%!","color":"gray","bold":false},{"text":"\nPlease read the whole book to gather information about the server!","color":"gray"}]'
          - '["",{"text":"Rules:","color":"gray"},{"text":" Hover over them to see the consequences!","color":"gray","italic":true},{"text":"\n1. Do not swear!","color":"gray","hoverEvent":{"action":"show_text","value":{"text":"","extra":[{"text":"If you do so, you will receive a 24 hour mute!","color":"red"}]}},"italic":false},{"text":"\n2. Do not grief","color":"gray","hoverEvent":{"action":"show_text","value":{"text":"","extra":[{"text":"If you do so, you will receive a pernament ban!","color":"red"}]}}},{"text":"\n3. Do not spam","color":"gray","hoverEvent":{"action":"show_text","value":{"text":"","extra":[{"text":"If you do so, we will mute you for 2 hours","color":"red"}]}}}]'
          - '["",{"text":"Info: ","color":"gray"},{"text":"\nWe just updated to 1.13","color":"gray","hoverEvent":{"action":"show_text","value":{"text":"","extra":[{"text":"This means we now have new blocks!","color":"gray"}]}}},{"text":"\nWe recently installed AutoCast for a better server experience!","color":"gray","clickEvent":{"action":"open_url","value":"https://www.spigotmc.org/resources/autocast.43894/"},"hoverEvent":{"action":"show_text","value":{"text":"","extra":[{"text":"You can also click on here to be redirected to their download page!","color":"gray"}]}}},{"text":"\nWe just created a new discord server!","color":"gray","clickEvent":{"action":"open_url","value":"https://discord.gg/zgKr2YM"},"hoverEvent":{"action":"show_text","value":{"text":"","extra":[{"text":"You can join it by clicking on this message!","color":"gray"}]}}}]'
      CreatorMessage:
        Text:
          - '&7----------------{ &8&lAutoCast &7}----------------'
          - '&7Welcome to &8AutoCast&7! The best autobroadcasting plugin available on Spigot.'
          - '&7This plugin has been made by &8Kyllian&7, you can check out his Spigot profile by clicking on this message.'
          - '&7If you wish to get more help regarding the plugin, make sure you join the discord link stated in the help command'
          - '&7-----------------------------------------'
        ClickAction: OPEN_URL
        Click: 'https://www.spigotmc.org/members/kyllian.31777/'
        HoverText: '&7Click here to see his profile!'
        Sound: 'NONE'
        Permission: 'NONE'
        Commands: []
        Title:
          - '&cTitle only; '
          - ' ;&aSubtitle only'
        TitleDuration: 10
        ActionBar: []
        ActionDuration: 10
        BossBar:
          - 'RED;&cBossbar one'
          - 'GREEN;&cBossbar two'
        BossStyle: SEGMENTED_6
        BossDuration: 10
        BookPages: []
      PlaceholderAPI:
        Text:
          - '&7----------------{ &8&lAutoCast &7}----------------'
          - '&7Hey %player_name%, this plugin supports PlaceholderAPI'
          - '&7Not sure what this is or how it works? Make sure to click on the message!'
          - '&7It will take you to a site which explains it all!'
          - '&7-----------------------------------------'
        ClickAction: OPEN_URL
        Click: 'https://www.spigotmc.org/wiki/placeholderapi/'
        HoverText: '&7Don''t be scared to click me!'
        Sound: 'NONE'
        Permission: 'NONE'
        Commands: []
        Title:
          - '&cTitle only; '
          - ' ;&aSubtitle only'
        TitleDuration: 10
        ActionBar: []
        ActionDuration: 10
        BossBar:
          - 'RED;&cBossbar one'
          - 'GREEN;&cBossbar two'
        BossStyle: SEGMENTED_6
        BossDuration: 10
        BookPages: []
    # messages.yml end
     
    database.yml
    Code (Text):
    host: 'localhost'
    port: 3306
    database: 'autocast'
    username: 'root'
    password: 'password'
    table: 'messages'
    data.yml
    Code (Text):
    enabled: true
    LastMessage: CreatorMessage
    UUID: true
    [​IMG]
    If you wish to create a nice book like this:

    [​IMG]

    You will need to use this site. This will help you through the process.
    You can add text how you want it to be, you can see the final outcome right here:

    [​IMG]

    Once you're finished putting in all your text, hover events and click events. you need the following string:

    [​IMG]

    This would result the following line: ["",{"text":"Info: ","color":"gray"}]

    This is what you will add in your configuration file:
    Code (Text):
    Messages:
      CreatorMessage:
        BookPages:
          1: '["",{"text":"Info: ","color":"gray"}]'
    And like this you will receive a clickable book like shown in the pictures section.

    [​IMG]
    Create a table with the name in your database file, the rest will be happening automatically once you boot the plugin.

    [​IMG]

    Your final table should look like this. This is the first created messages by the plugin itself. You can edit this to your liking. Make sure that you pair the message names and the config.yml. This is only in the beta version.

    [​IMG]

    [​IMG]
    /autocast (Alias: /ac)
    Base command of the plugin

    /autocast reload
    Reloads the plugin
    Permission: autocast.reload

    /autocast disable/enable
    Disables or enables the automated message sending
    Permission: autocast.switchmode

    /autocast create (message)

    Created an empty message with the given name
    Permission: autocast.create

    /autocast force (message)
    Forces a random, or specified message
    Permission: autocast.force

    /autocast hide/show
    Shows or hides the message for a player
    Permission: autocast.hideandshow

    /autocast update
    Gives you the ability to check for updates
    Permission: autocast.update

    /autocast order random/ordered
    Changes order of the messages
    Permission: autocast.order

    /broadcast (message) (Alias: /bc, /say)
    /broadcast (title/actionbar/bossbar) message
    Broadcasts a message to all players
    Permission: autocast.broadcast

    [​IMG]
    Outdated to do list from the premium version:
    • Expand bStats so it would store more useful information Added in version 3.31
    • Make sure the BossBar stops using resources Added in version 3.1
    • Add worldguard region support Delayed untill worldguard is working properly
    • Static action/bossbar Added in version 3.1
    • Broadcast command Added in version 3.1
    • Reworked config/other files for more side information Added in version 3.1
    • BarStyle support Added in version 3.1
    • Random sound option Added in version 3.1
    • Split join messages into first join and other joins for a warm welcome Added in version 3.1
    • Add subcommand to change order type Added in version 3.32
    • Add ability to broadcast messages via actionbar, bossbar and title Added in version 3.41
    • New line support in hover messages (\n) Added in version 3.11
    • JSON support in books Added in version 3.21
    • Under action bar support Not possible due to server limitations
    • Countdown in bossbars Added in version 3.2
    • mySql support Added in version 3.3 20%
    • Update checker Added in version 3.31
    • Ability to set a delay per message Not adding because of overcomplicating
    • Add a MOTD Added in version 3.4
    • Scoreboard support Added in version 3.4
    • Add animations to the scoreboard Added in version 3.42
    • Animated tablist Added in version 3.5
    • More ideas are welcome :)
    [​IMG]
    ActionBar:
    Code (Text):
    AutoCastPlugin.actionBar.sendActionBar(player, messagesList, duration);

    AutoCastPlugin.actionBar.sendActionBar(player, message, duration);

    AutoCastPlugin.actionBar.sendActionBar(player, message);
    Book:
    Code (Text):
    AutoCastPlugin.book.openBook(book, player);
    BossBar:
    Code (Text):
    AutoCastPlugin.BossBar.sendBossBar(player, messagesList, barStyle, duration);

    AutoCastPlugin.BossBar.sendBossBar(player, message, barStyle,  barColor, duration);
    Title:
    Code (Text):
    AutoCastPlugin.title.sendTitle(player, fadein, fadeout, stay, titles, duration);

    AutoCastPlugin.title.sendTitle(player, fadein, fadeout, stay, title, subtitle);
    BF3Chilled and JarFiles like this.

Recent Reviews

  1. TeemoCell
    TeemoCell
    5/5,
    Version: 1.033
    AutocCast is still the best Announcement plugin i ever used. Used it already on my first server. Still best Announcement plugin. The Coder/Owner is really friendly and helpful. Thats a must have :D
  2. djnico46
    djnico46
    5/5,
    Version: 1.033
    Excellent plugin , works great on 1.14.1 . A idea for you : can we have a command for execute a message unique on just one player ? ex: /autocast force (message) (player) , just the player saw the message . Sorry for my little english . thx
  3. Arenis
    Arenis
    5/5,
    Version: 1.033
    Excellent plugin, it works perfectly and the author is incredibly helpful and friendly
  4. BF3Chilled
    BF3Chilled
    5/5,
    Version: 1.032
    > Fast Update, friendly and active Author 5/5
  5. jackYodil
    jackYodil
    1/5,
    Version: 1.031
    False reviews resources and this plugin is not well optimized. He claims false things when in fact I prove him wrong. Never trust this guy with anything.
    1. Kyllian
      Author's Response
      Just like you did with my other plugins :) You're hypocrite, accusing me of false reviews while you started leaving those at mine. When I asked for an explanation you told me I/you should use a different plugin which is completely subjective. You're not forced to use one of my plugins and its pathetic you leave those kinds of reviews
  6. BF3Chilled
    BF3Chilled
    5/5,
    Version: 1.023
    awesome plugin, awesome and friendly author + its opensource
    5/5!
    1. Kyllian
      Author's Response
      Thank you!
  7. ShaneBee
    ShaneBee
    5/5,
    Version: 1.022
    I feel like I have spent so much time looking for a great auto broadcaster. I tried a few in the past, and they always missed the mark. Whether it not allowing me to do certain things, or just causing odd lag when the broadcasts fired.
    This plugin is exactly what I have been looking for. THANK YOU!!!
    Kyllian is a great dev. Thanks for an awesome plugin.
    Also, dear Kyllian, just ignore Leodur2006. He has reviewed several of my plugins with 1 stars and each of those reviews were removed because he was just personally attacking me after he didn't like what i said to him, and making some stupid pointless reviews. He is a bitter 13 year old who is just out to attack people he doesn't like.
    1. Kyllian
      Author's Response
      Thank you! I'm very glad to hear you're enjoying the plugin!
  8. SamB440
    SamB440
    5/5,
    Version: 1.022
    I will reinstate once again how wonderful it is to have this plugin on my server. The character issue that Leodur described are probably just him saving the file in the wrong format or just Minecraft in general. Kyllian has always been active and even has a Discord you can join.
    1. Kyllian
      Author's Response
      Thank you again :)
  9. TeemoCell
    TeemoCell
    5/5,
    Version: 1.022
    Amazing Plugin. Kyllian is a really friendly a great guy. Always helping.
    Keep up the good work.
  10. TenjouKia
    TenjouKia
    5/5,
    Version: 1.022
    Kyllian is a great guy :) He really put thoughts into making a plugin and that is cool