• Welcome to skUnity!

    Welcome to skUnity! This is a forum where members of the Skript community can communicate and interact. Skript Resource Creators can post their Resources for all to see and use.

    If you haven't done so already, feel free to join our official Discord server to expand your level of interaction with the comminuty!

    Now, what are you waiting for? Join the community now!

Fixed Delete/Reset Network variables.
  • Like
Reactions: AlvianMinecraft
Y3r9ixi.png


Version: 1.0.7a

Added:

  • Added the ability to loop network variables.
Fixed:
  • Forgot to change version tag to 1.0.7 last update. Now 1.0.7a, Whoops.
  • Network variables that wern't set caused errors on the Bungeecord.
  • Updated the lang file to be up to date with latest version.
  • Network variables not having changers.

Example script:
code_language.skript:
on script load:
    set network variable {testing::test} to "test"
    set network variable {testing::test1} to "something else"
    broadcast "%network variable {testing::*}%"
    loop network variable {testing::*}:
        broadcast "%loop-value%"

Information:
  • The config.yml will reset on updating, so make sure you have saved your valuable configuration options.
  • You need to install this update on both the Spigot servers and Bungeecord servers.
  • If you find any bugs, please notify a Skungee developer with all the information you can provide, errors, your code, the versions of the servers and Skungee etc
  • Source code at: https://github.com/TheLimeGlass/Skungee
  • Skungee progress can be viewed at https://github.com/TheLimeGlass/Skungee/projects
  • Skungee bugs can be reported at https://github.com/TheLimeGlass/Skungee/issues
  • If you feel like donating to this free project you can do so by clicking the button below, much love.
  • Enjoy :emoji_grinning:
Y3r9ixi.png


Version: 1.0.7

Added:

  • Started work on implementing the BungeeTabListPlus API
  • New Artwork hooked up by https://luisadraws.com/ <3
  • Revamped and implemented handlers for a majority of Bungeecord handling.
  • Created an advanced API to access Skungee and communicate using it's socket system.
  • Bungee YAML (Can only set and get at the moment)
  • Massive variable revamp, You can now properly use variables and list variables. You can also loop now aswell. This is way better than the old system. Anything Skript can have set, Skungee can too. Old variables may or may not work, I suggest deleting your network variables file and reloading them in.
  • Changed the storage system to extend more storage types in the future and also better performance
  • Recoded alot of internals.
  • Added async wait until effect that waits until Skungee has connected.
  • Added a new Hault configuration open which makes Skungee hault the server asynchronously until it has connected.
  • Remade the Skungee titles (They actually work now)
  • Created a massive packet library, Skungee can now listen to any packet sent by any player on the Bungeecord, send me suggestions of packets you think should be added to Skungee's API.
  • Configurations are now backed up to a folder on new updates, instead of deleting.
  • Added a condition to check if a player can access a server.
  • Added a condition to check if a player is running a legacy client (<= 1.7)
  • Added asynchronous network variable updating.
Fixed:
Syntax:
code_language.skript:
#Effects
wait [asynchronously] until [skungee] (connect(s|[ion])|[has] connect(ed|[ion])) [[with] timeout %-timespan%]

set async [variable] %objects% to [the] [skungee] (global|network|bungee[[ ]cord]) variable [(from|of)] %objects%

#Conditions
[bungee[[ ]cord]] [(player|uuid)] %string/player% (1¦can|2¦can(n't| not)) (connect|join|login|log on) [to] [the] [server] %string%

bungee[[ ]cord] [(player|uuid)] %string/player% (1¦is|2¦is(n't| not)) [a] legacy [(client|account)]
[(player|uuid)] %string/player% (1¦is|2¦is(n't| not)) [a] legacy [(client|account)]

#Expressions
(skungee|bungee[[ ]cord]) [y[a]ml] (1¦value|2¦(node|path)[[s with] keys]|3¦list) %string% (of|in|from) [file] %string%

#Titles
    #Effects
    (show|display|send) [skungee] title %skungeetitle% to [bungee[[ ]cord]] [(player|uuid)][s] %strings/players%

    (hide|clear|stop|remove) [bungee[[ ]cord] title[s] %skungeetitles%

    #Expressions
    [a] [new] (skungee|bungee[[ ]cord]) title [with text] %string% [and] [with
        subtitle %-string%] [[that] lasts] for %timespan%[[,] [with] fade in %-timespan%][[,]
        [and] [with] fade out %-timespan%]

    [(all [[of] the]|the)] sub[-]title[s] (of|from) [(skungee|bungee[[
        ]cord])] title[s] %skungeetitles%
    [Skungee] %skungeetitles%[''s] [(skungee|bungee[[ ]cord])] title[s] sub[-]title[s]


    [(all [[of] the]|the)] fade in[ ][time][s] (of|from) [(skungee|bungee[[
        ]cord])] title[s] %skungeetitles%
    [Skungee] %skungeetitles%[''s] [(skungee|bungee[[ ]cord])] fade in[ ][time][s]

    [(all [[of] the]|the)] fade out[ ][time][s] (of|from) [(skungee|bungee[[
        ]cord])] title[s] %skungeetitles%
    [Skungee] %skungeetitles%[''s] [(skungee|bungee[[ ]cord])] fade out[ ][time][s]

    [(all [[of] the]|the)] (message|string)[s] (of|from) [(skungee|bungee[[
        ]cord])] title[s] %skungeetitles%
    [Skungee] %skungeetitles%[''s] [(skungee|bungee[[ ]cord])] (message|string)[s]


    [(all [[of] the]|the)] [stay] time[s] (of|from) [(skungee|bungee[[
        ]cord])] title[s] %skungeetitles%
    [Skungee] %skungeetitles%[''s] [(skungee|bungee[[ ]cord])] [stay] time[s]


Example script:
code_language.skript:
command /broadcast <string>:
    trigger:
        if argument contains ":":
            set {_text::*} to argument split at ":"
        else:
            add argument to {_text::*}
        set {_title} to a new skungee title with text "%{_text::1}%" that lasts for 10 seconds with fade in 5 ticks, and with fade out 5 ticks
        if size of {_text::*} > 1:
            set subtitle of skungee title {_title} to {_text::2}
        show skungee title {_title} to all of the bungeecord players

on script load:
    wait until skungee has connected
    set bungee yaml value "test" from "plugins/Test/config.yml" to 5
    set {_value} to bungeecord yaml value "test" from "plugins/Test/config.yml"
    set async variable {_example} to the network variable {some::example}
    broadcast "%{_value}%"

There are 2 new Configuration nodes in this update.


Information:
  • The config.yml will reset on updating, so make sure you have saved your valuable configuration options.
  • You need to install this update on both the Spigot servers and Bungeecord servers.
  • If you find any bugs, please notify a Skungee developer with all the information you can provide, errors, your code, the versions of the servers and Skungee etc
  • Source code at: https://github.com/TheLimeGlass/Skungee
  • Skungee progress can be viewed at https://github.com/TheLimeGlass/Skungee/projects
  • Skungee bugs can be reported at https://github.com/TheLimeGlass/Skungee/issues
  • If you feel like donating to this free project you can do so by clicking the button below, much love.
  • Enjoy :emoji_grinning:
Y3r9ixi.png


Version: 1.0.6b

Added:

  • Tablist Header and Footer Effect
  • Bungeecord permissions Expression
  • Bungeecord permission groups Expression
  • Unregister commands Effect
  • Unregister event listeners Effect
  • Skungee messages, will explain below.
  • Enable plugins Effect
  • Ability to get all ServerInstance servers (Needs ServerInstances 1.0.1+) Expression.
  • Worked on shutdown mechanics for ServerInstances, Windows doesn't like deleting files... Not releasing yet.
  • Folders per servers can now be defined in the GlobalScripts folder! Example: Bungeecord/plugins/Skungee/GlobalScripts/Hub/
    All of the scripts located in this folder will be placed on the server named "Hub" if that server is online, exists and connected.
    Scripts that are still located in Bungeecord/plugins/Skungee/GlobalScripts/ that aren't in subfolders will remain to be loaded on every server like normal.
Fixed:
  • Rare issue where some packets didn't load objects.
  • Fixed some null pointers.
  • Added more bugs :emoji_stuck_out_tongue:
Syntax:
code_language.skript:
#Tablist Header and Footer Effect
set tab[list] (1¦header|2¦footer|3¦header and footer) (for|of) bungee[[ ]cord] [(player|uuid)[s]] %strings/players% to %strings% [and %-strings%]
#Player permissions Expression
[(all [[of] the]|the)] bungee[[ ]cord] permissions (from|of) [(player|uuid)[s]] %strings/players%
#Player permission groups Expression
[(all [[of] the]|the)] bungee[[ ]cord] [permission] groups (from|of) [(player|uuid)[s]] %strings/players%
#Enable all plugins Effect
enable [(all [[of] the]|the)] bungee[[ ]cord] plugins
#Load all plugins Effect
load [(all [[of] the]|the)] bungee[[ ]cord] plugins
#Shutdown Effect (end part is for ServerInstances only)
(stop|shutdown) bungee[[ ]cord] server[s] %strings% [(and|with) [serverinstances] saving %-boolean%
#Unregister commands from plugins Effect
unregister [the] commands from [the] [bungee[[ ]cord]] plugin[s] %strings%
#Unregister event listeners from plugins Effect
unregister [the] listeners from [the] [bungee[[ ]cord]] plugin[s] %strings%
#Get server instances servers
[(all [[of] the]|the)] server[ ]instances [names]

#Skungee messages:
#Event:
    [on] (bungeecord|skungee) message [from [channel[s]] %strings%]:
        #event-string - This will be the channel names.
#Expression:
    [(all [[of] the]|the)] (skungee|bungee[[ ]cord]) message[s]
#Explaining below

Skungee Messages:
So skungee messages, what are they? These are a channel messaging system that replicated a similar system like Bungee Plugin Messages, they carry two Strings, one to define the channel (Which is optional) and the other which defines serialized objects (aka more strings). You can send strings to other servers that are listening in on the Skungee message event.

So say we want to make a Staff chat system (because everyone asks me for that these days)

We first start off with sending the message, lets do it in a command
code_language.skript:
command /staffchat <string>:
    aliases: /sc
    trigger:
        send skungee message argument to "staff"

Pretty easy so far right? Well these are very basic and simple. The coding for these are literally like 20 lines long. Next we need to listen in on this message. So say this is another server now:

code_language.skript:
on skungee message from channel "staff":
    loop all players:
        if loop-player has permission "staff.chat":
            message skungee message to loop-player

This will listen for when the channel "staff" gets used, and then Skript will scan all online players who have the permission then message them, simple. You can also not define the channel and just place "on skungee message" to then use "event-string" to get what channel the message is coming from.

If you place the coding examples described above in the GlobalScripts folder on the Bungeecord Skungee folder this system will work across all servers on the Bungeecord network.

This suggestion was from @Pikachu (Giving credit where credit is due)

Thanks. Here is a title broadcast system using Skellett that I helped someone on Spigot prior to this update, so thought I should add it:

Example script:
code_language.skript:
on skungee message from channel "test":
    broadcast "&a%skungee messages%"
command /skmsg:
    trigger:
        send skungee messages "testing" and "hello" to channels "test"
on join:
    wait 5 seconds
    set tablist header of bungeecord player uuid of player to "&6&lTesting"
    wait 3 seconds
    set tablist footer of bungeecord player uuid of player to "&5&lTesting"
    wait 3 seconds
    set tablist header and footer of bungeecord player uuid of player to "&a&lTesting"
    wait 3 seconds
    set tablist header and footer of bungeecord player uuid of player to "&1&lTesting" and "&4Hello"
code_language.skript:
#Title example
#Place this code below on any server that you want the Title to be executed on.
command /titlebroadcast <text>:
    trigger:
        send argument to "Title"
     
#Place this code below on any server that you want the Title to be displayed on.
on skungee message from channel "Title":
    if skungee message contains "||":
        set {_elements::*} to skungee message split at "||"
        #Titles below is from Skellett
        show a title from "%{_elements::1}%" and subtitle "%{_elements::2}%" to all players for 5 seconds and 10 ticks fade in and 15 ticks fadeout
    else:
        show a title from coloured skungee message to all players for 5 seconds and 10 ticks fade in and 15 ticks fadeout

Information:
  • The config.yml will reset on updating, so make sure you have saved your valuable configuration options.
  • You need to install this update on both the Spigot servers and Bungeecord servers.
  • If you find any bugs, please notify a Skungee developer with all the information you can provide, errors, your code, the versions of the servers and Skungee etc
  • Source code at: https://github.com/TheLimeGlass/Skungee
  • Skungee progress can be viewed at https://github.com/TheLimeGlass/Skungee/projects
  • Skungee bugs can be reported at https://github.com/TheLimeGlass/Skungee/issues
  • Ignore the release on Github for this lol, was lazy to fill it out.
  • If you feel like donating to this free project you can do so by clicking the button below, much love.
  • Enjoy :emoji_grinning:
YoGD5vl.png

Version: 1.0.6 and 1.0.6a update log

Added:

  • Events now actually work! There was a strange bug within Skript and some syntax, that I still have no clue why it happens. Either way I changed the syntax up and now they work. The event syntax are below in the syntax section.​
  • Added ProxyPingEvent (Ping event) this means you can now change the motd, icon, players, bungee version (client side) and version name.
    maQU2Qr.png
(There is also a hover message but the client doesn't screenshot it for some reason)
  • Added configuration node to enable ServerInstances, this does nothing without having bought and downloaded ServerInstances.
  • Oh was ServerInstances introduced yet? Here is a briefing of what ServerInstances is, ServerInstances is a premium expansion to Skungee by @LimeGlass that allows users to create custom servers on the fly like a player server system or a cloud network. Here is an example:
  • You may find more information about ServerInstances at it's main page: https://forums.skunity.com/resources/serverinstances.516/ If you have any questions or concerns, please feel free to use our discussion section or private message LimeGlass the main developer of Skungee on Discord, SkUnity forums or Spigot.
  • Built a Sections API this is basically scopes but my own take, it's just a library right now that anyone can use if they please.
  • Added complex event values that may or may not work, they worked during our testing but report anything that may not work. These event values work on the three new events.
  • Stole some deep fried bananas from @Gatt <3
Fixed:
  • Fixed a bug where Skungee wouldn't send a DISCONNECT packet before a Spigot server crashed or was stopped. This significantly helps the Bungeecord Skungee understand when servers goes offline, although it has an automatic cache system to guess.
  • Fixed events
  • The last uploaded version was not 1.0.6 apparently, I don't know if the coding was or not, but the plugin.yml was not and so thus strange things happened. This is 1.0.6a. Sorry about that.
  • Fixed some ServerInstance things.
  • Localhost never worked for some servers for some reason, Java is weird, Skungee now checks all possible Network setups.
  • Cleaned up some packet stuff and made custom internal packets.
  • Added an internal shutdown system for Skungee to manage Spigot servers if the user has requested or something happened to that server.
  • Fixed some grammar issues in error messages and configurations.
  • Removed the TestListener which was a debug system for the events that never worked.
Syntax:
code_language.skript:
#Events
[on] bungee[[ ]cord] disconnect
    [(all [[of] the]|the)] event (skungee|bungee[[ ]cord]) player[s]

    [(all [[of] the]|the)] event (skungee|bungee[[ ]cord]) server[s]

[on] bungee[[ ]cord] [server list] ping
    (ping|server list|event) bungee[[ ]cord] (motd|description)
    bungee[[ ]cord] (ping|server list|event) (motd|description)

    (ping|server list|event) bungee[[ ]cord] (favicon|icon|image)
    bungee[[ ]cord] (ping|server list|event) (favicon|icon|image)

    (ping|server list|event) bungee[[ ]cord] [listed ]player(s| list)
    bungee[[ ]cord] (ping|server list|event) [listed ]player(s| list)

    (ping|server list|event) bungee[[ ]cord] (version|protocol) [(1¦name|2¦(protocol|number))]
    bungee[[ ]cord] (ping|server list|event) (version|protocol) [(1¦name|2¦(protocol|number))]

[on] [player] switching of server[s] [to %string%]
[on] [player] switch server[s] [to %string%]
[on] [player] server switch [to %string%]
    [(all [[of] the]|the)] event (skungee|bungee[[ ]cord]) player[s]
 
    [(all [[of] the]|the)] event (skungee|bungee[[ ]cord]) server[s]

#Effects
(stop|shutdown) bungee[[ ]cord] server[s] %strings%

Example script:
code_language.skript:
on bungeecord ping:
    broadcast "%bungeecord event motd%"
    set bungeecord event motd to "     &e(     &e&l&n    Deep fried bananas!   &r     &e)\n           &b\\         &6Second line           &b//"
    broadcast "%bungeecord server list version%"
    broadcast "%bungeecord server list version protocol%"
    broadcast "%bungeecord server list version name%"
    #protocol 1 represents the latest protocol, meaning the client should usually be out of date, allowing for the protocol name to be set and viewed.
    set bungeecord server list version protocol to 1
    broadcast "%bungeecord server list version protocol%"
    set bungeecord server list version name to "&b&lRate Skungee 5 stars"
    broadcast "%bungeecord server list version name%"
    set bungeecord server list favicon to "C:\Users\Owner\Desktop\testing\Skungee.png"
    #Some random 64x64 icon, use imgur if your images aren't working.
    #set bungeecord server list favicon to "https://i.imgur.com/mybV0I6.jpg"
    broadcast "%bungeecord server list players%"
    #add "&6Hey how are you", "This is pretty &b&lDOPE" and "&1Thanks" to bungeecord server list players
    set bungeecord server list players to "&6Hey how are you", "This is pretty &b&lDOPE", "&bSkungee is the love of my life", "--------------------------------", "&5Join our server at example.com idk", "--------------------------------", "" and "LimeGlass" parsed as offlineplayer
    #reset bungeecord server list players
on player switch servers:
   broadcast "&4testttttttttttt"
   broadcast "&4%event bungeecord player%"
   broadcast "&4%event bungeecord server%"
on bungeecord disconnect:
   broadcast "&ctest"
   broadcast "&c%event bungeecord player%"
   broadcast "&c%event bungeecord server%"
command /testing <string>:
   trigger:
       if bungeecord server argument is online:
           broadcast "yes"
       else:
           broadcast "no"

There is 1 new Configuration node in this update.

Information:
  • The config.yml will reset on updating, so make sure you have saved your valuable configuration options.
  • You need to install this update on both the Spigot servers and Bungeecord servers.
  • If you find any bugs, please notify a Skungee developer with all the information you can provide, errors, your code, the versions of the servers and Skungee etc
  • Source code at: https://github.com/TheLimeGlass/Skungee
  • Skungee progress can be viewed at https://github.com/TheLimeGlass/Skungee/projects
  • Skungee bugs can be reported at https://github.com/TheLimeGlass/Skungee/issues
  • If you feel like donating to this free project you can do so by clicking the button below, much love.
  • Enjoy
This updates contains alot of fixes and changes.

This update also introduces:

ServerInstances
which is a premium Skript addon that extends Skungee's API to create cloud network based servers. It has syntax which get injected into Skungee on startup and those syntax can then be utilized to create and manage a cloud based network, all configurations and data folders are found within the Skungee plugin folder.

I have been working and testing this new system for awhile now and it's finally ready to be released, just waiting on SkUnity staff to approve of it.

I will be posting more information and a new update 1.0.6a to address some launch changes when that gets released :emoji_grinning:

This version is only available on SkUnity until release of ServerInstances.
  • Like
Reactions: medivh and Uzumaki
YoGD5vl.png

Version: 1.0.5d

Added:

  • Added a configuration node to disable console colour from Skungee on both Bungeecord and Spigot. If your console doesn't support colour, you can now view messages more cleaner :emoji_grinning:
  • Yearly update of the configuration information messages.
  • Added some more statistics to the Spigot Skungee on bStats https://bstats.org/plugin/bukkit/Skungee
  • Added a console message to Spigot Skungee when the Spigot Skungee connects to the Bungeecord Skungee.
  • Added support for future configuration files o.O
Fixed:
  • Fixed a bug that crashed Spigot Skungee when the Bungeecord Skungee denied a packet from being returned. (Reported on Discord)
  • Removed the whitelist ability on the Spigot Skungee side, it was causing some issue and had potential to break alot of stuff. Bungeecord Skungee still has this feature and acts like a wall to any packet not from an address in the whitelist.
  • Fixed a bug where if the user deleted the config.yml while Skungee was starting up, Skungee would error and not enable. (#2)
  • Fixed a potential bug when starting up if the configuration didn't load correctly.
  • Fixed a bug where the Ping packet would spam but was intentional. I have added a debug message below stating that it's attempting to connect to the Bungeecord Skungee. (Done cards)
  • Did some internal cleaning, so let me know if you find any bugs, thanks.
There are 2 new Configuration nodes in this update.

Information:
  • The config.yml will reset on updating, so make sure you have saved your valuable configuration options.
  • You need to install this update on both the Spigot servers and Bungeecord servers.
  • If you find any bugs, please notify a Skungee developer with all the information you can provide, errors, your code, the versions of the servers and Skungee etc
  • Source code at: https://github.com/TheLimeGlass/Skungee
  • Skungee progress can be viewed at https://github.com/TheLimeGlass/Skungee/projects
  • Skungee bugs can be reported at https://github.com/TheLimeGlass/Skungee/issues
  • If you feel like donating to this free project you can do so by clicking the button below, much love.
  • Enjoy
YoGD5vl.png

Version: 1.0.5c

Fixed:

  • Fixed multiple servers being in the ServerTracker for events.
  • Fixed a recurrent bug from 1.0.5b that happened when two servers (unrelated to Skungee) crashed at the same time.
  • Fixed a bug where online states didn't accept multiple servers (I forgot about the expression in the last update).
  • Improved the BungeePacket sending system.
  • Fixed a bug where players wouldn't work in some BungeePackets.
Information:
  • The config.yml will reset on updating, so make sure you have saved your valuable configuration options.
  • You need to install this update on both the Spigot servers and Bungeecord servers.
  • If you find any bugs, please notify a Skungee developer with all the information you can provide, errors, your code, the versions of the servers and Skungee etc
  • Source code at: https://github.com/TheLimeGlass/Skungee
  • Skungee progress can be viewed at https://github.com/TheLimeGlass/Skungee/projects
  • Skungee bugs can be reported at https://github.com/TheLimeGlass/Skungee/issues
  • If you feel like donating to this free project you can do so by clicking the button below, much love.
  • Enjoy
  • Like
Reactions: FUZIK
Found a bug from 1.0.5a that caused Spigot blocked servers to not work correctly when breaches are enabled. This caused effects and expressions to not send.

Side note:
It's my Birthday (LimeGlass) today. :emoji_stuck_out_tongue:


Information:
  • The config.yml will reset on updating, so make sure you have saved your valuable configuration options.
  • You need to install this update on both the Spigot servers and Bungeecord servers.
  • If you find any bugs, please notify a Skungee developer with all the information you can provide, errors, your code, the versions of the servers and Skungee etc
  • Source code at: https://github.com/TheLimeGlass/Skungee
  • Skungee progress can be viewed at https://github.com/TheLimeGlass/Skungee/projects
  • Skungee bugs can be reported at https://github.com/TheLimeGlass/Skungee/issues
  • If you feel like donating to this free project you can do so by clicking the button below, much love.
  • Enjoy
YoGD5vl.png

Version: 1.0.5a

Added:

  • Added a disconnect packet so the Bungeecord Skungee can tell when a server is disconnected quicker.
  • Added a port checker for the ServerTracker
  • Added configuration option to make the blacklist a whitelist
Fixed:
  • Fixed some debug messages not having proper English statements, and also removed some development debug messages.
  • Fixed Conditions and Effects returning an unreadable modified syntax if the user has modified it in debug messages.
  • Fixed Expression CurrentServer from potentially returning an incorrect server due to two servers on the same server machine.
  • Fixed two expression where the ServerTracker could not understand servers that share a similar server machine.
Information:
  • The config.yml will reset on updating, so make sure you have saved your valuable configuration options.
  • You need to install this update on both the Spigot servers and Bungeecord servers.
  • If you find any bugs, please notify a Skungee developer with all the information you can provide, errors, your code, the versions of the servers and Skungee etc
  • Source code at: https://github.com/TheLimeGlass/Skungee
  • Skungee progress can be viewed at https://github.com/TheLimeGlass/Skungee/projects
  • Skungee bugs can be reported at https://github.com/TheLimeGlass/Skungee/issues
  • If you feel like donating to this free project you can do so by clicking the button below, much love.
  • Enjoy