SkellettProxy
What I'll explain in this tutorial?
- How to install correctly SkellettProxy
- How to use correctly the syntax of it
- Many examples
SkellettProxy is an addon that give to us a really huge BungeeCord support on Skript.
What you need to install SkellettProxy?
- A BungeeCord server
- 1+ Servers
- Skellett installed in all connected servers.
Place SkellettProxy.jar in your plugins folder of your BungeeCord server.
Place Skellett.jar in all your connected servers of your BungeeCord.
Enable SkellettProxy option in every Skellett config.
Put the IP of your Bungeecord in every Skellett config as "Host".
Run BungeeCord and all the servers connected in it.
(Version of Skellet & SkellettProxy should match to work correctly.)
(EventPort must be different in every Skellett config.)
(Port must be the same in every Skellett & SkellettProxy config.)
SkellettProxy Config.yml
debug: false #Debug Mode if enabled you l'll get connection info messages in your bungee console.
Port: 7332 #Event port (Should be the same in all Skellett config files connected in your bungeecord.)
GlobalScripts: #These scripts are loaded into all connected servers in your bungeecord.)
Enabled: true
NetworkVariables: #These variables are connected in all servers in your bungeecord.)
Enabled: true
AutomaticSharing: false #If enabled all network variables are automatically loaded in all the servers and you don't need to get them first of use.
NetworkVariables [AutomaticSharing: False]
set network variable {tutorial} to "Example"
set {_variable} to network variable {tutorial}
set {_variable} to network variable {tutorial}
NetworkVariables [AutomaticSharing: True]
set global variable {tutorial} to "Example"
You can execute bungeecord commands using:
skellettcord execute bungeecord console command "end"
You can execute an action in every connected servers using the evaluate expression:
loop all bungeecord servers:
evaluate "broadcast ""&cJust a tutorial!""" on bungeecord server "%loop-value%"
evaluate "broadcast ""&cJust a tutorial!""" on bungeecord server "%loop-value%"
Small resources using Skellettcord sintax
Little friends system using global variables:
command /friends [<text>] [<offlineplayer>]:
trigger:
if arg-1 is "add":
if arg-2 is set:
if {friends::%player%::%arg-2%} isn't set:
set global variable {friends::%player%::%arg-2%} to true
message "&8[&3Friends&8] &7You have added &b%arg-2% &7to your friends list."
stop
else:
message "&8[&3Friends&8] &c%arg-2% &7is already in your friends list."
stop
if arg-1 is "remove":
if arg-2 is set:
if {friends::%player%::%arg-2%} is set:
delete global variable {friends::%player%::%arg-2%}
message "&8[&3Friends&8] &7You have removed &c%arg-2% &7from your friends list."
stop
else:
message "&8[&3Friends&8] &c%arg-2% &7is not in your friends list."
stop
if arg-1 is "list":
set {_size} to size of {friends::%player%::*}
if {_size} is more than 0:
message "&8[&3Friends&8] &8(&b%{_size}%&8) &a%{friends::%player%::*}%"
else:
message "&8[&3Friends&8] &7Your friends list is empty."
stop
on join:
loop {friends::%player%::*}:
if skellettcord "%loop-value%" is online bungeecord:
add loop-value to {_online::*}
set {_size} to size of {_online::*}
if {_size} is more than 0:
message "&3Online Friends&8: &8(&b%{_size}%&8) &a%{_online::*}%"
else:
message "&cNo one of your friends is online."
trigger:
if arg-1 is "add":
if arg-2 is set:
if {friends::%player%::%arg-2%} isn't set:
set global variable {friends::%player%::%arg-2%} to true
message "&8[&3Friends&8] &7You have added &b%arg-2% &7to your friends list."
stop
else:
message "&8[&3Friends&8] &c%arg-2% &7is already in your friends list."
stop
if arg-1 is "remove":
if arg-2 is set:
if {friends::%player%::%arg-2%} is set:
delete global variable {friends::%player%::%arg-2%}
message "&8[&3Friends&8] &7You have removed &c%arg-2% &7from your friends list."
stop
else:
message "&8[&3Friends&8] &c%arg-2% &7is not in your friends list."
stop
if arg-1 is "list":
set {_size} to size of {friends::%player%::*}
if {_size} is more than 0:
message "&8[&3Friends&8] &8(&b%{_size}%&8) &a%{friends::%player%::*}%"
else:
message "&8[&3Friends&8] &7Your friends list is empty."
stop
on join:
loop {friends::%player%::*}:
if skellettcord "%loop-value%" is online bungeecord:
add loop-value to {_online::*}
set {_size} to size of {_online::*}
if {_size} is more than 0:
message "&3Online Friends&8: &8(&b%{_size}%&8) &a%{_online::*}%"
else:
message "&cNo one of your friends is online."
Global "/msg" command:
command /msg [<offlineplayer>] [<text>]:
aliases: /tell , /message , /send , /say , /w
trigger:
if arg-1 is set:
if arg-1 isn't player:
if arg-2 is set:
message coloured "&8[&b►&8] &a%player% &9&l> &3%arg 2%" to bungeecord player "%arg-1%"
message coloured "&8[&b►&8] &a%player% &9&l> &3%arg 2%"
stop
else:
message " &8[&c✖&8] &7You need to write the text of the message."
stop
else:
message " &8[&c✖&8] &7You can't send a message to yourself."
stop
else:
message " &8[&c✖&8] &7You need to write the player's name."
stop
aliases: /tell , /message , /send , /say , /w
trigger:
if arg-1 is set:
if arg-1 isn't player:
if arg-2 is set:
message coloured "&8[&b►&8] &a%player% &9&l> &3%arg 2%" to bungeecord player "%arg-1%"
message coloured "&8[&b►&8] &a%player% &9&l> &3%arg 2%"
stop
else:
message " &8[&c✖&8] &7You need to write the text of the message."
stop
else:
message " &8[&c✖&8] &7You can't send a message to yourself."
stop
else:
message " &8[&c✖&8] &7You need to write the player's name."
stop
Ping command:
command /ping:
trigger:
set {_ping} to skellettcord ping of "%player%"
if {_ping} is less than 51:
message " &8[&a▪&8] &3Ping: &a%{_ping}%ms"
stop
if {_ping} is more than 50:
if {_ping} is less than 151:
message " &8[&a▪&8] &3Ping: &6%{_ping}%ms"
stop
if {_ping} is more than 150:
message " &8[&a▪&8] &3Ping: &c%{_ping}%ms"
stop
trigger:
set {_ping} to skellettcord ping of "%player%"
if {_ping} is less than 51:
message " &8[&a▪&8] &3Ping: &a%{_ping}%ms"
stop
if {_ping} is more than 50:
if {_ping} is less than 151:
message " &8[&a▪&8] &3Ping: &6%{_ping}%ms"
stop
if {_ping} is more than 150:
message " &8[&a▪&8] &3Ping: &c%{_ping}%ms"
stop
Bungee broadcast:
command /broadcast [<text>]:
trigger:
if sender is a player:
if player has permission "bungeescript.broadcast":
skellettcord message coloured "&8[&3Network&8] &b%arg-1%" to all bungeecord players
if sender is console:
skellettcord message coloured "&8[&3Network&8] &b%arg-1%" to all bungeecord players
trigger:
if sender is a player:
if player has permission "bungeescript.broadcast":
skellettcord message coloured "&8[&3Network&8] &b%arg-1%" to all bungeecord players
if sender is console:
skellettcord message coloured "&8[&3Network&8] &b%arg-1%" to all bungeecord players
FAQ
Q Skellett isn't correctly connected in your Bungeecord?
A Be sure that you enabled skellettproxy in the options and that you put the correctly IP of your bungeecord.
Q Are you getting socket errors?
A Be sure that all the ports your using are open and with all correctly permissions to do what you need.