- Supported Minecraft Versions
- 1.10
- 1.11
FacSk aims to add full control of Factions within Skript.
I have been asked many many times to add Factions support to Skellett (My other Skript addon) I get atleast one or more message a week asking to add support for it. So I decided to make a new Addon. Here you go enjoy!
Main:
- 100% faction player control
- 100% faction control
- 90% events
- 0% faction flag support
- 5% relationships and rival support
- 0% faction permission support
- Java 8
- Factions and MassiveCore
- Any Spigot version that Factions and MassiveCore support
Expressions:
code_language.skript:
[the] faction[s] player [(from|in|of)] (1¦%-player%|2¦[uuid] %-string%)
#Changers: set (Faction)
#Info: Setting this is the faction that the player should autoclaim for.
[the] auto[ ]claim [(mode|state)] of faction[s] player %mplayer%
faction[s] player %mplayer%'s auto[ ]claim [(mode|state)]
#Last activity is data that Factions uses for clearing out inactive players
#If you set this to anything it will only update the player to the current time so their data won't be deleted for inactivity
[the] last activity [time] of faction[s] player %mplayer%
faction[s] player %mplayer%'s last activity [time]
#Changers: set (String)
[the] [faction] ID of faction[s] player %mplayer%
faction[s] player %mplayer%'s [faction] ID
#Changers: set (Faction), reset
#Info: resetting this will set their faction to the default faction
[the] faction of faction[s] player %mplayer%
faction[s] player %mplayer%'s faction
#Changers: set (Rel), reset
#Info: Rel is the name of roles in Factions
#Info: resetting this will set their role to the default role
[the] faction role of faction[s] player %mplayer%
faction[s] player %mplayer%'s faction role
#Changers: set (String)
[the] [faction] title of faction[s] player %mplayer%
faction[s] player %mplayer%'s [faction] title
#Changers: set (Number)
[the] [faction] power[ ]boost[er] of faction[s] player %mplayer%
faction[s] player %mplayer%'s [faction] power[ ]boost[er]
#Changers: set (Number), reset
#Info: resetting this will set their power to the default power
[the] power of faction[s] player %mplayer%
faction[s] player %mplayer%'s power
[the] max[imum] power of faction[s] player %mplayer%
faction[s] player %mplayer%'s max[imum] power
[the] max[imum] universal power of faction[s] player %mplayer%
faction[s] player %mplayer%'s max[imum] universal power
[the] power per hour [rate] of faction[s] player %mplayer%
faction[s] player %mplayer%'s power per hour [rate]
[the] power (per|loss on) death [rate] of faction[s] player %mplayer%
faction[s] player %mplayer%'s power (per|loss on) death [rate]
#Changers: set (Boolean)
[the] map [auto] [update] [(mode|state)] of faction[s] player %mplayer%
faction[s] player %mplayer%'s map [auto] [update] [(mode|state)]
#Changers: set (Boolean)
[the] overriding [(mode|state)] of faction[s] player %mplayer%
faction[s] player %mplayer%'s overriding [(mode|state)]
#Changers: set (Boolean)
#Info: This is a toggle for players to view the title of a faction when they enter a faction claim
[the] territory [info] title[s] [(mode|state|toggle)] of faction[s] player %mplayer%
faction[s] player %mplayer%'s territory [info] title[s] [(mode|state|toggle)]
[the] faction name of faction[s] player %mplayer%
faction[s] player %mplayer%'s faction name
[the] name and title of faction[s] player %mplayer% [and] [with] (data [of]|from|and|compared to) faction %faction%
[the] name and title of faction[s] player %mplayer% [and] [with] (data [of]|from|and|compared to) player %mplayer%
#Info: This is loopable
[(the|all)] [of] [the] faction[s] players
#Info: This returns just the normal name of the player (E.g: LimeGlass)
[the] name of faction[s] player %mplayer%
faction[s] player %mplayer%'s name
#Grabs the player from MPlayer
[the] player of faction[s] player %mplayer%
faction[s] player %mplayer%'s player
Effects:
code_language.skript:
load [the] faction[s] (data|info) of %mplayer%
load %mplayer%'s faction[s] (data|info)
(reset|clear) [the] faction[s] (data|info) of %mplayer%
(reset|clear) %mplayer%'s faction[s] (data|info)
(force|make) [the] faction[s] player %mplayer% leave [their] [faction]
(force|make) [the] faction[s] player %mplayer% [to] [try (and|to)] claim %locations% [for [faction] %-faction%]
Conditions:
code_language.skript:
[the] faction[s] player %mplayer% (1¦is|2¦is(n't| not)) [a] (default|noob|new|fresh off the boat) [player]
[the] faction[s] player %mplayer% (1¦[does] ha(s|ve)|2¦do[es](n't| not) have) [a] faction
[the] faction[s] player %mplayer% (1¦[does] ha(s|ve)|2¦do[es](n't| not) have) [a] [faction] title
[the] faction[s] player %mplayer% (1¦[does] ha(s|ve)|2¦do[es](n't| not) have) [a] [faction] power[ ]boost[er]
[the] faction[s] player %mplayer% (1¦is|2¦is(n't| not)) in [their] own (territory|land|claim)
[the] faction[s] player %mplayer% (1¦is|2¦is(n't| not)) in enemy (territory|land|claim)
Faction Syntax:
Expressions:
code_language.skript:
[the] faction at [location] %location%
#Info: Grabs a faction either by name or id
[the] faction from [faction] (string|id|name) %string%
#Info: This is loopable
[(the|all)] [of] [the] factions
#Changers: set (String)
[the] name of faction %faction%
#Changers: set (String)
[the] description of faction %faction%
faction %faction%'s description
#Changers: set (String)
[the] motd of faction %faction%
faction %faction%'s motd
#Info: This is loopable
[(the|all)] [of] [the] motd messages (of|from) faction %faction%
[(the|all)] [of] [the] faction %faction%'s motd messages
#Changers: set (Timeperiod)
[the] time creat(e[d]|ion) of faction %faction%
[the] time faction %faction% was created
#Changers: set (Location)
[the] home [location] of faction %faction%
faction %faction%'s home [location]
#Changers: set (Number)
[the] power[ ]boost[er] of faction %faction%
faction %faction%'s power[ ]boost[er]
[the] power of faction %faction%
faction %faction%'s power
[the] max[imum] power of faction %faction%
faction %faction%'s max[imum] power
[the] [amount of] land [(count|size)] [(of|from)] faction %faction% [has] [in [world] %-string%]
faction %faction%'s land [(count|size)] [in [world] %-string%]
#Info: This is loopable
[(the|all)] [of] [the] (claimed worlds|worlds [claimed]) [(of|by)] faction %faction% [has claims in]
faction %faction%'s claimed worlds
#Info: This is loopable
[(the|all)] [of] [the] players (in|of) faction %faction%
faction %faction%'s players
#Info: This is loopable
[(the|all)] [of] [the] (1¦online|2¦offline) players (in|of) faction %faction%
faction %faction%'s (1¦online|2¦offline) players
#Info: This is loopable
[(the|all)] [of] [the] players with role %factionrel% (in|of) faction %faction%
faction %faction%'s players with role %factionrel%
[the] leader of faction %faction%
faction %faction%'s leader
[get] [the] war[ ]zone faction
[get] [the] (wilderness|none) faction
[get] [the] safe[ ]zone faction
Effects:
code_language.skript:
load [the] faction[s] (data|info) of faction %faction%
load faction %faction%'s faction[s] (data|info)
#Info: This removes the current leader of a faction and replaces them with the next best replacement
promote [a] [new] leader in faction %faction%
promote %faction%'s faction leader
(send|message) %strings% [to] faction %faction%
Conditions:
code_language.skript:
[the] faction %faction% (1¦[does] ha(s|ve)|2¦do[es](n't| not) have) [a] description
[the] faction %faction% (1¦[does] ha(s|ve)|2¦do[es](n't| not) have) [a[n]] motd
[the] faction %faction% (1¦[does] ha(s|ve)|2¦do[es](n't| not) have) [a] home [location]
[the] home at [location] %location% (1¦is|2¦is(n't| not)) valid for faction %faction%
[the] [location] %location% (1¦is|2¦is(n't| not)) [a] valid home [location] for faction %faction%
#Info: This checks if a faction has more land and than power (Meaning they could easily have land claimed)
[the] faction %faction% (1¦[does] ha(s|ve)|2¦do[es](n't| not) have) [a] land inflation
#Info: Tests if all the faction players are online or offline
[the] faction %faction% players are [all] (1¦offline|2¦online)
[are] any faction %faction% players online
[are] explosions (1¦(disabled|not allowed)|2¦(enabled|allowed)) in faction %faction%
Events:
code_language.skript:
[on] [facsk] faction[s] create:
#Returns the faction
event-faction
[on] [facsk] faction[s] desc[ription] (change|edit):
#Returns the faction
event-faction
#Returns the new description
event-string
[on] [facsk] faction[s] disband:
#Returns the faction
event-faction
[on] [facsk] faction[s] home (change|edit):
#Returns the faction
event-faction
#Returns the location of the new home
event-location
[on] [facsk] faction[s] invite:
#Returns the faction
event-faction
#Returns the mplayer
event-mplayer
[on] [facsk] faction[s] motd (change|edit):
#Returns the faction
event-faction
#Returns the new motd
event-string
[on] [facsk] faction[s] name (change|edit):
#Returns the faction
event-faction
#Returns the new name
event-string
[on] [facsk] faction[s] (role|rank) (change|edit):
#Returns the mplayer
event-mplayer
#Returns the event rank change
[the] event(-| )(rel|role|rank)
[on] [facsk] faction[s] relation[s] (change|edit):
#Returns the faction
event-faction
#Returns the faction
[the] other [event(-| )]faction
#Returns the event rel change
[the] event(-| )(rel|role|rank)
[on] [facsk] faction[s] title (change|edit):
#Returns the mplayer
event-mplayer
#Returns the new title
event-string
Types:
mplayer
faction
factionrel
Factionrel enum types:
ENEMY(
"an enemy", "enemies", "an enemy faction", "enemy factions",
"Enemy"
),
NEUTRAL(
"someone neutral to you", "those neutral to you", "a neutral faction", "neutral factions",
"Neutral"
),
TRUCE(
"someone in truce with you", "those in truce with you", "a faction in truce", "factions in truce",
"Truce"
),
ALLY(
"an ally", "allies", "an allied faction", "allied factions",
"Ally"
),
RECRUIT(
"a recruit in your faction", "recruits in your faction", "", "",
"Recruit"
),
MEMBER(
"a member in your faction", "members in your faction", "your faction", "your factions",
"Member"
),
OFFICER(
"an officer in your faction", "officers in your faction", "", "",
"Officer", "Moderator"
),
LEADER(
"your faction leader", "your faction leader", "", "",
"Leader", "Admin", "Owner"
);
Example script
code_language.skript:
command /test:
trigger:
set {_p} to faction player from player
message "Autoclaim state: %auto claim state of faction player {_p}%"
message "Last activity: %last activity time of faction player {_p}%"
make faction player {_p} claim player's location
Hope you enjoy this Factions hook in Skript! Leave a 5 star review to show your support