By continuing to use this site, you agree to the Terms of Service of this website, including usage of cookies.

OK, Don't show this again

A modern open source factions plugin for PocketMine-MP
version 1.1.1
Approved
Direct Download How to install?
Switch version
487 Downloads / 2698 Total
14 Reviews
Plugin Description §

PiggyFactions Banner

PiggyFactions Poggit-CI Discord

PiggyFactions is an open-sourced factions plugin for PocketMine-MP.

Disclaimer

PiggyFactions is currently in beta. While we have tested quite thoroughly, there may exist some bugs. Please report any issue on GitHub.

Notices

  • Content in Table of Contents are now deprecated and may no longer be accurate. Please refer to piggydocs-rtd for the documentation instead.
  • As of Version 1.1.1, there are be BC-Breaks with the PureChat PR-15 build. Please update to PR-17 immediately. Click here to download.

Table of Contents

Prerequisites

  • Basic knowledge on how to install plugins from Poggit Releases and/or Poggit CI
  • PMMP 3.13.0 or greater
  • mysql & sqlite3 PHP extensions (should already exist within your PHP binaries)
  • Economy type supported by libPiggyEconomy:

Features

Feature PiggyFactions FactionsPro
PiggyCE Integration
Hierarchy/HRKChat Integration
Economy Integration
Saves Players by UUID
Per Faction Permissions
SQLite3 Support
MySQL Support
Async Queries
Command Autocomplete
Form UI
Multi-Language Support

Installation & Setup

  1. Install the plugin from Poggit.
  2. (Optional) Setup the data provider that PiggyFactions will be using. By default, PiggyFactions will use SQLite3 which requires no additional setup. If you would like to use MySQL instead, change database.type from sqlite to mysql & enter your MySQL credentials under database.mysql.
  3. (Optional) You may configure certain faction features in the config.yml file.
  4. (Optional) You may configure messages within the languages folder.
  5. (Optional) You may want to setup safezones & warzones
    1. Run the command /f admin
    2. Create a faction (preferably named Safezone/Warzone)
    3. Set the appropriate flags (either safezone/warzone) with /f flag
    4. Claim chunks for their respective types
    5. Leave the faction
  6. You're done!

Commands

Command Description Permissions Aliases
/f PiggyFactions main command piggyfactions.command.faction.use
/f addpower <player> <power> Add player power piggyfactions.command.faction.addpower
/f admin Toggle admin mode piggyfactions.command.faction.admin
/f ally <faction> Ally with other factions piggyfactions.command.faction.ally
/f allychat Toggle ally chat piggyfactions.command.faction.allychat /f ac
/f ban <player> Ban a member from your faction piggyfactions.command.faction.ban
/f chat Toggle faction chat piggyfactions.command.faction.chat /f c
/f claim [auto/circle/square] Claim a chunk piggyfactions.command.faction.claim
/f create <name> Create a faction piggyfactions.command.faction.create
/f deposit <money> Deposit money into faction bank piggyfactions.command.faction.deposit
/f description <description> Set faction description piggyfactions.command.faction.description /f desc
/f demote <player> Demote a faction member piggyfactions.command.faction.demote
/f disband Disband your faction piggyfactions.command.faction.disband
/f enemy <faction> Mark faction as an enemy piggyfactions.command.faction.enemy
/f flag <flag> Manage faction flags piggyfactions.command.faction.flag
/f fly Fly within faction territory piggyfactions.command.faction.fly
/f help [page] Display command information piggyfactions.command.faction.help
/f home Teleport to faction home piggyfactions.command.faction.home
/f info [faction] Display faction info piggyfactions.command.faction.info /f who
/f invite <player> Invite a player to your faction piggyfactions.command.faction.invite
/f join <faction> Join a faction piggyfactions.command.faction.join
/f kick <player> Kick a member from your faction piggyfactions.command.faction.kick
/f language <language> Change personal language for PiggyFactions piggyfactions.command.faction.language /f lang
/f leader <player> Transfer leadership of your faction piggyfactions.command.faction.leader
/f leave Leave your faction piggyfactions.command.faction.leave
/f logs View your faction logs piggyfactions.command.faction.logs /f log
/f map View map of area piggyfactions.command.faction.map
/f money View faction bank balance piggyfactions.command.faction.money
/f motd <motd> Set faction MOTD piggyfactions.command.faction.motd
/f name <name> Rename your faction piggyfactions.command.faction.name
/f neutral <faction> Reset relation with another faction piggyfactions.command.faction.neutral
/f permission <role> <permission> [value] Set faction role permissions piggyfactions.command.faction.permission /f perms
/f player <player> Display player info piggyfactions.command.faction.player /f p
/f powerboost <faction/player> <target> <powerboost> Increases max power piggyfactions.command.faction.powerboost
/f promote <player> Promote a faction member piggyfactions.command.faction.promote
/f seechunk Toggle chunk visualizer piggyfactions.command.faction.seechunk /f sc
/f sethome Set faction home piggyfactions.command.faction.sethome
/f setpower Set player power piggyfactions.command.faction.setpower
/f top [type] [page] Display top factions piggyfactions.command.faction.top
/f truce <faction> Truce with other factions piggyfactions.command.faction.truce
/f unally <faction> End faction alliance piggyfactions.command.faction.unally
/f unban <player> Unban a member from your faction piggyfactions.command.faction.unban
/f unclaim [all/auto/circle/square] Unclaim a chunk piggyfactions.command.faction.unclaim
/f version Display version & credits for PiggyFactions piggyfactions.command.faction.version /f v, /f ver
/f withdraw <money> Withdraw money from faction bank piggyfactions.command.faction.withdraw

Permissions

Permissions Description Default
piggyfactions Allow usage of all PiggyFactions features op
piggyfactions.command Allow usage of all PiggyFactions commands op
piggyfactions.command.faction Allow usage of /f subcommands op
piggyfactions.command.faction.use Allow usage of /f true
piggyfactions.command.faction.addpower Allow usage of /f addpower op
piggyfactions.command.faction.admin Allow usage of /f admin op
piggyfactions.command.faction.ally Allow usage of /f ally true
piggyfactions.command.faction.allychat Allow usage of /f allychat true
piggyfactions.command.faction.ban Allow usage of /f ban true
piggyfactions.command.faction.chat Allow usage of /f chat true
piggyfactions.command.faction.claim Allow usage of /f claim true
piggyfactions.command.faction.create Allow usage of /f create true
piggyfactions.command.faction.demote Allow usage of /f demote true
piggyfactions.command.faction.deposit Allow usage of /f deposit true
piggyfactions.command.faction.description Allow usage of /f description true
piggyfactions.command.faction.disband Allow usage of /f disband true
piggyfactions.command.faction.enemy Allow usage of /f enemy true
piggyfactions.command.faction.flag Allow usage of /f flag true
piggyfactions.command.faction.fly Allow usage of /f fly true
piggyfactions.command.faction.help Allow usage of /f help true
piggyfactions.command.faction.home Allow usage of /f home true
piggyfactions.command.faction.info Allow usage of /f info true
piggyfactions.command.faction.invite Allow usage of /f invite true
piggyfactions.command.faction.join Allow usage of /f join true
piggyfactions.command.faction.kick Allow usage of /f kick true
piggyfactions.command.faction.language Allow usage of /f language true
piggyfactions.command.faction.leader Allow usage of /f leader true
piggyfactions.command.faction.leave Allow usage of /f leave true
piggyfactions.command.faction.logs Allow usage of /f logs true
piggyfactions.command.faction.map Allow usage of /f map true
piggyfactions.command.faction.money Allow usage of /f money true
piggyfactions.command.faction.motd Allow usage of /f motd true
piggyfactions.command.faction.name Allow usage of /f name true
piggyfactions.command.faction.neutral Allow usage of /f neutral true
piggyfactions.command.faction.permission Allow usage of /f permission true
piggyfactions.command.faction.player Allow usage of /f player true
piggyfactions.command.faction.powerboost Allow usage of /f powerboost op
piggyfactions.command.faction.promote Allow usage of /f promote true
piggyfactions.command.faction.seechunk Allow usage of /f seechunk true
piggyfactions.command.faction.sethome Allow usage of /f sethome true
piggyfactions.command.faction.setpower Allow usage of /f setpower op
piggyfactions.command.faction.top Allow usage of /f top true
piggyfactions.command.faction.truce Allow usage of /f truce true
piggyfactions.command.faction.unally Allow usage of /f unally true
piggyfactions.command.faction.unban Allow usage of /f unban true
piggyfactions.command.faction.unclaim Allow usage of /f unclaim true
piggyfactions.command.faction.version Allow usage of /f version true
piggyfactions.command.faction.withdraw Allow usage of /f withdraw true

Flags

Flag Description
open Anyone is able to join the faction
safezone Mark current faction as a SafeZone
warzone Mark current faction as a WarZone

Admin Mode

To enable Admin mode, use the command /f admin. Admin mode will allow you to modify claimed faction lands, forcibly unclaim faction lands, etc. Nearly all commands have support for admin mode.
NOTE: /f admin should be toggled off when you are not using it to prevent accidental modifications. Admin mode will automatically be disabled upon server restart.

HRKChat Tags

Sample Format: &6{{piggyfacs.rank.symbol}}{{piggyfacs.name}} &r&7{{hrk.displayName}}&r: {{msg}}

Tag Name Description
piggyfacs.name Player's faction name
piggyfacs.power Player's faction power
piggyfacs.rank.name Faction rank name
piggyfacs.rank.symbol Faction rank symbol
piggyfacs.members.all Total member count
piggyfacs.members.online Online member count

PureChat Tags

You will need to download our fork of PureChat for PiggyFactions integration.

Make sure to change default-factions-plugin to PiggyFactions in PureChat's config.yml
Sample Format: &6{fac_rank}{fac_name} &r&7{display_name}&r: {msg}

Tag Name Description
{fac_name} Player's faction name
{fac_rank} Faction rank symbol

ScoreHud Addon

An addon for JackMD's ScoreHud can be found here.

Issue Reporting

  • If you experience an unexpected non-crash behavior with PiggyFactions, click here.
  • If you experience a crash in PiggyFactions, click here.
  • If you would like to suggest a feature to be added to PiggyFactions, click here.
  • If you require support, please join our discord server here.
  • Do not file any issues related to outdated API version; we will resolve such issues as soon as possible.
  • We do not support any spoons of PocketMine-MP. Anything to do with spoons (Issues or PRs) will be ignored.
    • This includes plugins that modify PocketMine-MP's behavior directly, such as TeaSpoon.

Additional Information

  • We do not support any spoons. Anything to do with spoons (Issues or PRs) will be ignored.
  • We are using the following virions: Commando, libasynql, and libFormAPI.
    • Unless you know what you are doing, use the pre-compiled phar from Poggit-CI and not GitHub.
    • If you wish to run it via source, check out DEVirion.

Translators

  • Chinese (Simplified) - @Taylarity, @Aericio, TGPNG, prprprprprprpr
  • Chinese (Traditional) - @Taylarity, @Aericio, TGPNG, prprprprprprpr
  • French - Thouv (@adeynes), @ItsMax123, steelfri_031, @superbobby2000
  • German - @SalmonDE
  • Indonesian - @MrAshshiddiq, @SillierShark195
  • Serbian - yuriiscute53925
  • Spanish - @UnEnanoMas

License

   Copyright 2020 DaPigGuy

   Licensed under the Apache License, Version 2.0 (the "License");
   you may not use this file except in compliance with the License.
   You may obtain a copy of the License at

       http://www.apache.org/licenses/LICENSE-2.0

   Unless required by applicable law or agreed to in writing, software
   distributed under the License is distributed on an "AS IS" BASIS,
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   See the License for the specific language governing permissions and
   limitations under the License.

"Castle" vector graphic used in the banner and icon is licensed under the Pixabay License.

What's new §
  • BC-BREAK: Stop using Chunk objects for claim lookups and use Position instead.
  • BC-BREAK: Renamed ClaimsManager::getClaim() to ClaimsManager::getClaimByPosition()
  • BC-BREAK: Separate PlayerManager::getPlayer() to getPlayer() and getPlayerByUUID()
  • Reduced usage of class::getInstance() calls
  • Added command: /f unsethome
  • Added feedback to /f claim auto and /f unclaim auto
    • Note: To begin autoclaiming, you will need to first create a claim with /f claim, then use /f claim auto after that.
    • This is not intended behavior and is planned to be fixed in later versions.
  • Fixed error when promoting a player to leader in admin mode
  • Updated Translators list in /f version
  • New Languages:
    • id_ID: Indonesian
    • fr_FR: French
  • Updated existing language file strings
  • Bumped version to v1.1.1
  • Implemented new commands:
    • /f addpower (#40)
    • /f powerboost
    • /f player
      • {PLAYER} - Name
      • {FACTION} - Faction
      • {RANKSYMBOL} - Symbol of faction rank
      • {POWER} - Amount of power
      • {TOTALPOWER} - Max amount of power
      • {TIMETOMAXPOWER} - Time to max on power in hours
      • {POWERPERHOUR} - Amount of power obtained within an hour
      • {POWERPERDEATH} - Amount of power obtained per death
      • {CREATIONDATE} - Date of first login (format: January 1, 1970 @ 12:00 AM PST)
      • {AGE} - Detailed duration string since first login
      • {SIMPLEAGE} - Simplified {AGE}
    • /f unclaim <auto|circle|square>
    • /f version
  • New Languages: Serbian, Simplified Chinese
  • Updated Languages: German, Traditional Chinese, Spanish
  • Added config option to enforce alphanumeric faction names (#65)
  • Added the following tags for /f info
    • {CLAIMS} - # of claims
    • {CREATIONDATE} - Date of creation of faction (format: January 1, 1970 @ 12:00 AM PST)
    • {AGE} - Detailed duration string since faction creation
    • {SIMPLEAGE} - Simplified {AGE}
    • {RELATIONS} - Color coded list of factions in relationship with
  • Overclaiming now requires having outter claims to first be overclaimed
  • FactionEvent & FactionMemberEvent classes are now marked as abstract
  • Changed FactionRelationEvent constructor signature to accept two factions rather than an array of two factions
  • Fixed members with ban & kick permissions to ban or kick faction leaders
  • Fixed crash when using non-implemented language as the default language
  • Fixed exploit which allowed players to fly indefinately
  • Bumped minimum PMMP version to 3.13.0
  • Bumped version to 1.1.0
  • Updated ParoxityTeam/Commando to v2.1.0 (#59)
  • Fixed /f fly not disabling on teleport
  • Fixed crash when leaving while /f fly is toggling off
  • Fixed several potential crashes caused by faction member not yet existing
  • Bumped version to 1.0.8
  • New Language: Chinese (Traditional) by @Taylarity
  • New Language: Spanish by @UnEnanoMas
  • Added obtaining power through kills
  • Improved the update notifier
  • Fixed several missing permission nodes
  • Fixed /f permission not accepting neutral or truced
  • Fixed missing space in the logs.actions.kick message
  • Bumped version to 1.0.7
  • Fixed forms causing Internal Server Errors for float/int arguments
  • Bumped version to 1.0.6
  • Implemented faction bank
    • /f money
    • /f deposit
    • /f withdraw
    • /f top money
  • Localization improvements
    • Added /f language for players to change their language
    • Allow default server language to be changed within config.yml
    • Moved language files to its own folder
  • New Language: German (#51) by @SalmonDE
  • Database changes
    • Added patch system
    • Main thread is now stopped until tables are created
    • Main thread is now stopped on disable until all PiggyFactions queries are finished
  • DEVELOPERS: FactionsPlayer instance now available for most events
  • FactionCommand now implements PluginIdentifiableCommand (#49)
  • Add EconomyAPI, MultiEconomy, HRKChat as a soft dependency
  • Fixed autoclaiming not working when moving between unclaimed chunks
  • Bump version to 1.0.5
  • Added faction logs (#34)
  • Added virion checks
  • Added /f fly
  • Change displayed power to be rounded to the hundredth (#44)
  • Bump version to 1.0.4
  • Switched to ParoxityTeam/Commando fork
  • Added better auto completion for /f permission & /f flag
  • Added /f claim subcommands auto, circle, square
  • Fixed usernames not correctly updating when changed
  • Fixed /f setpower not displaying final player power
  • Fixed missing command permissions for disband, enemy, flag, top, & truce
  • Bump version to 1.0.3
  • Fixed container permissions having no effect
  • Fixed int column type remaining from development
  • Bumped version to 1.0.2
  • Added RANK_SYMBOL & RANK_NAME tags to faction/ally chats (#2)
  • Allow blocking of commands in claims by relation (#6)
  • Added faction player count limit feature (#7)
  • Added ability to customize /f form title
  • Added Poggit update checks
  • Cleaned up /f map
  • Fixed potential crash with slow chunk generation
  • Fixed potential crash caused by auto power gain

jsonfromstatefarm
using v1.1.1
26 Jul 20
TheRealSnipeZ
using v1.1.1
21 Jul 20
Very nice plugin but the commands, /f money /f deposit /f withdraw /f top money Do NOT work, any idea why? their's no error in console
Aericio
24 Jul 20
Enable economy features in the configuration. It's disabled by default.
VecroGamingYT
using v1.1.1
15 Jul 20
I gave it a 4 because I dont know if it has PureChat Support I Tried The Link That was sent to another client but it still didn't work please reply :)
Aericio
15 Jul 20
Create an issue on the GitHub repository and be more specific.
G2Wolverine3751
using v1.1.0
29 Jun 20
"Undefined offset: 4" (EXCEPTION) in "plugins/PiggyFactions.phar/src/DaPigGuy/PiggyFactions/commands/subcommands/roles/PromoteSubCommand" at line 33
Aericio
13 Jul 20
This issue was resolved in v1.1.1.
NormalOcean6686
using v1.0.7
31 May 20
U can`t open chest while raiding
FabiTrvsh
using v1.0.6
01 Jun 20
/ f fly bug, when doing / warp, / hub, / home or any command to go to a place you continue with the active fly
DaPigGuy
01 Jun 20
This issue has been resolved in v1.0.8 currently pending approval on Poggit
Gabitzuu
using v1.0.4
19 May 20
The best factions plugin for PMMP that i've ever seen!
BlockingCrazy
using v1.0.4
18 May 20
Hi I am making an faction server the I realised u cant destroy obsiden with tnt so I might have a whole code that u can use to make that happen.
EarthCraftOfficial
using v1.0.3
14 May 20
1. be Able to Increase Claim size so like 128x128, 2. How to get Strength, 3. Something like Purechat, 4. Something is broken with the Power so its like .6666666666 and stuff its quite annoying
DaPigGuy
15 May 20
All of the above were addressed in your GitHub issue.
mrpwes
using v1.0.3
13 May 20
it was so great i have nothing to say keep it up
SandStorm-dev
using v1.0.2
10 May 20
why players in warzone and wilderness can't use enderpearl and god apple?
Ember61
using v1.0.1
07 May 20
How to get it to work with purechat
Aericio
13 Jul 20
https://poggit.pmmp.io/r/95436/PureChat_pr-17.phar
TungstenVn
using v1.0.1
07 May 20
noice
litter295
using v1.0.0
07 May 20
Yessiiirrrr. Btw do you take suggestions piggy?
DaPigGuy
07 May 20
You can leave suggestions on the GitHub issue tracker or on Discord

Reply to review by :

Supported API versions
3.13.0
->
3.15.0
Dependencies
EconomyAPI 5.7.2
Optional
View Plugin
MultiEconomy 2.0.0
Optional
View Plugin
PiggyCustomEnchants 2.1.7
Optional
View Plugin
Producers §
  • Collaborators:
    • @Aericio
    • @Heisenburger69
    • @Thunder33345
    • @TwistedAsylumMC
  • Translators:
    • @ItsMax123
    • @MrAshshiddiq
    • @SalmonDE
    • @SillierShark195
    • @Taylarity
    • @UnEnanoMas
    • @adeynes
    • @superbobby2000
License §
Categories:
General
Keywords
Permissions
Database
Other files
Permissions
Commands
Asynchronous tasks

You can leave one review per plugin release, and delete or update your review at any time

Loading...