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

Advanced friend system
version 2.0.0
Approved
Direct Download How to install?
Switch version
2 Downloads / 215 Total
1 Review
Plugin Description §

minecraft_title

A complete, Friends System Plugin for PocketMine-MP, made with performance and modularity in mind.

✨ Features

  • ✅ Add / remove friends with request system
  • ✅ Accept or deny friend requests (player optional if only one request)
  • ✅ Automatic expiration of requests after configurable cooldown
  • ✅ Optional storage: YAML or JSON
  • ✅ Friend status display: Online / Offline + last seen
  • ✅ Notifications when a friend joins or leaves the server
  • ✅ Configurable message prefix ([FriendsX])
  • ✅ Multi-language support (see below)
  • ✅ Per-player settings:
    • Receive friend requests on/off
    • Friend join/leave notifications on/off
  • ✅ Friend limit system, with permission-based limits
  • ✅ Block system:
    • Block / unblock players
    • List blocked players
  • ✅ Requests helper:
    • List all pending requests
    • Accept/deny via name or UI
  • ✅ Optional Forms UI (GUI) for managing friends, requests, settings, blocked players

📦 Installation

  1. Download the precompiled .phar or build from source (see below)
  2. Place the FriendsX.phar into your server's plugins/ folder
  3. Start the server once to generate files
  4. (Optional) Edit config.yml to configure:
    • Storage type (yaml / json)
    • Friend request cooldown
    • Language
    • Prefix formatting
    • Friend limits
    • Forms (GUI) enabled / disabled

🧾 Commands

Command Description
/friends Open the Friends GUI (if forms are enabled) or show help
/friends add <player> Send a friend request
/friends accept [player] Accept a received request (player optional if only one)
/friends deny [player] Deny a received request (player optional if only one)
/friends remove <player> Remove from your friend list
/friends list Show your friends and their statuses (Online / Offline)
/friends requests Show all pending friend requests
/friends settings Open personal settings (requests + notifications)
/friends block <player> Block a player (they cannot send you friend requests)
/friends unblock <player> Unblock a previously blocked player
/friends blocked Show your blocked players list

⚙️ Config

# ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
# ┃         FriendsX Plugin       ┃
# ┃       Main Configuration      ┃
# ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛

# 🔧 Storage system for player data (friends list)
# Options:
#  - yaml   = saves data into YAML files (human-readable)
#  - json   = saves data into JSON files
storage: yaml

# 🌐 Language for all plugin messages
# Available: eng, ita, fra, deu, esp, por, pol
# Make sure there is a corresponding file in the /lang folder, e.g. eng.yml
lang: eng

# ⏱️ Friend request expiration time (in seconds)
# After this time, a pending request can no longer be accepted.
friend-request-cooldown: 120

# ✉️ Prefix shown before every message sent by the plugin
# You can use Minecraft color codes like §6, §e, etc.
prefix: "§7[§6FriendsX§7] §r"

# 🤝 Friendship behaviour
# If true, when a player removes a friend, the other side is also removed.
# Example:
#  - two-sided-friends: true  -> A removes B, B also loses A as friend
#  - two-sided-friends: false -> A removes B, but B still has A in their list
two-sided-friends: true

# 👥 Friend limit
# Maximum number of friends a player can have by default.
default-friend-limit: 50

# 🔐 Friend limits by permission
# You can override the default limit using permissions.
# Format:
#  friend-limits:
#    permission.node.here: limit
#
# Example:
#  friend-limits:
#    friendsx.limit.vip: 100
#    friendsx.limit.elite: 200
#
# If a player has multiple permissions, the HIGHEST limit is used.
friend-limits: {}

# 🎛 UI / Forms
# Enable or disable UI menus..
forms:
  enabled: true

🌍 Supported Languages

  • 🇬🇧 eng – English
  • 🇮🇹 ita – Italian
  • 🇫🇷 fra – French
  • 🇩🇪 deu – German
  • 🇪🇸 esp – Spanish
  • 🇵🇱 pol – Polish
  • 🇵🇹 por – Portuguese (BR)
  • 🇺🇦 ukr – Ukrainian
  • 🇷🇺 rus – Russian
  • 🇯🇵 jpn – Japanese
  • 🇰🇷 kor – Korean
  • 🇨🇳 zho – Chinese (Simplified)
  • 🇹🇷 tur – Turkish

⭐ Contribute

  • Found a bug? Open an issue
  • Pull requests welcome
  • Star the repo if you like the project!
What's new §
  • Add migration, SQLite & new friend features
    • Bump plugin to v2.0.0 and introduce data migration and SQLite support. Adds new permission friendsx.migrate and documents sqlite storage in config (plugin will import data/friends_v2.json when switching). Adds new friend commands/arguments (migrate, msg, status, top), messaging, status, favorites/groups, top-list, UI enhancements (search, pagination, confirm dialogs, group selector) and many new translation keys across languages. Implements SQLiteProvider, MigrationManager, FriendsMetadataManager, PlayerStatusManager and other manager/form updates; updates JSONProvider and various command handlers/forms to support new features.
  • Add Forms UI and expand multi-language support
    • Introduced optional Forms UI (GUI) for managing friends, requests, settings, and blocked players. Added new language files for Japanese, Korean, Russian, Turkish, Ukrainian, and Chinese. Updated existing language files with UI strings. Enhanced README with new features, updated commands, and configuration options. Bumped plugin version to 1.2.0 and added forms section to config.
  • Update and improve Ukrainian friend system translations
  • Updated Ukrainian yaml file with corrections
  • feat: Add Ukrainian language support and refine translations
  • fix(i18n): Merge missing UI strings into Ukrainian translation
  • fix: Ensure explicit newlines for friends and blocked lists
  • refactor(i18n): Improve Ukrainian translation wording
  • refactor: Localize command usage parameters and refine settings messages
  • Add friend blocking, settings, and friend limits
    • Introduces friend blocking functionality with new commands (/friend block, unblock, blocked), per-player friend settings, and configurable friend limits (including permission-based overrides). Updates language files for all supported languages with new messages, enhances command argument handling for usability, and refactors core logic to support blocking, friend request management, and friend list limits. Also adds managers for block, settings, and last seen tracking, and updates the plugin version to 1.1.0.
  • Create TimeUtils.php
  • Delete src/Akari_my/util directory

FiXUnique
Outdated
using v1.0.0
23 May 25

Reply to review by :

/ 5
Supported API versions
5.0.0
->
5.36.0
Producers §
  • Collaborators:
    • @Akari-my
License §
Categories:
General
Fun

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

/ 5
Loading...