
Friends is a social plugin that lets players add friends, send messages, mail, gifts, and create parties on your server. Works across BungeeCord and Velocity networks, with full Folia support.
Features
- Friend System – Add friends, best friends, favorites, groups, notes, and nicknames.
- Friend Chat –
/fcchannel to broadcast to all online friends at once. - Gift System – Send items to friends with anti-abuse protection (cooldowns, daily limits, blacklist).
- Private Messaging – Direct messages with reply functionality and sound notifications.
- Mail System – Send offline messages to players who aren't online. Can be disabled server-wide.
- Party System – Create parties, invite friends, and manage groups.
- Party Effects – Party members get potion effects with proximity-based activation.
- Party Waypoints – Action-bar arrow pointing at the nearest member or a specific locked target.
- Last-Seen Lookup –
/friend seen <player>checks when any player was last online. - Leaderboards – Rankings for most friends, gifts sent, and messages.
- Statistics – Track your social stats and see your rankings.
- GUIs – Clean inventory menus with custom model data support for resource packs.
- Cross-Server – Full BungeeCord and Velocity support in a single jar.
- Folia Support – Works on Folia's region-threaded scheduler out of the box.
- PlaceholderAPI – 25+ placeholders for scoreboards and more.
- WorldGuard – Friend groups can auto-share your WG region access.
- GriefPrevention – Party members auto-trusted in leader's claims.
- Database – MySQL and SQLite with auto-migration.
- Developer API – Full API for integration.
Commands
Friend
/friend add <player>– Send a friend request./friend remove <player>– Remove a friend./friend accept <player>– Accept a request./friend deny <player>– Deny a request./friend list– View your friends./friend requests– View pending requests./friend best <player>– Toggle best friend status./friend fav <player>– Toggle favorite status./friend nick <player> <nickname>– Set a nickname for a friend./friend note <player> <note>– Add a note about a friend./friend group create/delete/set/list– Manage friend groups./friend tp <player>– Teleport to a friend./friend jump <player>– Jump to a friend's server./friend info <player>– View friend details./friend seen <player>– Last-seen lookup for any player./friend block/unblock <player>– Block or unblock a player./friend chat [message]– Toggle friend chat mode or send a one-shot message./friend compass– Toggle the party compass./friend waypoint <player|clear>– Lock the compass on a specific member./friend emote <player> <type>– Send a particle emote./friend status <message>– Set your status message./friend menu– Open the friends menu.
Messaging & Mail
/msg <player> <message>– Send a private message./reply <message>– Reply to the last message./mail read [page]– Read your mail./mail send <player> <message>– Send mail./mail delete <id/all>– Delete mail./fc [message]– Friend chat channel.
Party
/party create– Create a party./party invite <player>– Invite a player./party accept/deny <player>– Handle invitations./party leave– Leave your party./party kick <player>– Kick a player./party info– View party info./party disband– Disband your party./party transfer <player>– Transfer leadership./party effects– View active effects./party shop– Purchase party effect upgrades (requires Vault)./party chat [message]– Toggle party chat mode or send a one-shot message./pc [message]– Party chat shortcut.
Gifts
/gift <player>– Send the held item to a friend./gift pending– View pending gifts./gift accept <id>– Accept a gift./gift deny <id>– Deny a gift.
Menus & Admin
/settings– Open notification settings menu./stats– View your social statistics./leaderboard– View friend leaderboards./freload– Reload the plugin configuration./fupdate– Check for plugin updates.
All primary commands also accept f-prefixed aliases (/fmsg, /freply, /fmail, /fparty, /fgift, /fstats, /fsettings, /fleaderboard) for servers with naming conflicts. On startup, the plugin warns if another plugin owns any primary name.
Permissions
| Permission | Default | Description |
|---|---|---|
friends.use |
true | Basic friend commands |
friends.mail |
true | Mail system access |
friends.party |
true | Party system access |
friends.party.effects |
true | Party effects access |
friends.chat |
true | Friend chat channel access |
friends.teleport |
true | Teleport to friends |
friends.jump |
true | Jump to a friend's server |
friends.network |
true | Cross-server features |
friends.reload |
op | Reload command |
friends.admin |
op | All admin commands |
PlaceholderAPI
%friends_count%– Total friends%friends_online%– Online friends%friends_offline%– Offline friends%friends_best_friends%– Best friends count%friends_favorites%– Favorite friends count%friends_max%– Max friends limit%friends_requests%– Pending friend requests%friends_gifts_pending%– Pending gifts%friends_gifts_sent%– Total gifts sent%friends_gifts_received%– Total gifts received%friends_gifts_daily_remaining%– Gifts you can still send today%friends_gifts_cooldown%– Gift cooldown remaining (seconds)%friends_messages_sent%– Messages sent%friends_mail_total%– Total mail%friends_mail_unread%– Unread mail%friends_messaging_enabled%– Private messages toggle%friends_status%– Your status message%friends_in_party%– In party (true/false)%friends_party_size%– Party size%friends_party_name%– Party name%friends_party_leader%– Party leader name%friends_is_party_leader%– Are you party leader (true/false)%friends_rank_friends%– Leaderboard rank (friends)%friends_rank_gifts%– Leaderboard rank (gifts)%friends_rank_messages%– Leaderboard rank (messages)
Multi-Server Setup (BungeeCord / Velocity)
Only one jar is shipped: Friends.jar. It goes on every backend Spigot/Paper/Folia server. Nothing on the proxy.
1. Install the plugin
Drop Friends.jar into /plugins/ on every backend server in your network.
2. Set up MySQL
All servers share the same database. Open database.yml on each server and set:
database:
type: mysql
host: your-database-ip
port: 3306
name: friends
username: your-user
password: your-password
pool:
max-connections: 10
timeout: 30000
keep-alive: true
Make sure the friends database exists. Tables are created on first boot.
3. Configure each server
In config.yml set a unique name and enable networking:
server-name: "lobby"
network:
enabled: true
channel: "friends:network"
Use a unique server-name per backend (e.g. survival, skyblock, lobby).
4. Enable proxy mode on each backend
BungeeCord (spigot.yml):
settings:
bungeecord: true
Velocity (paper-global.yml):
proxies:
velocity:
enabled: true
online-mode: true
secret: "your-velocity-secret"
5. Restart every backend. Friend requests, messages, mail, and party invites sync across the network.
Quick Checklist
- Friends.jar on every backend server
- MySQL database shared across all servers
- Unique
server-nameon each server -
network.enabled: trueon each server - BungeeCord mode or Velocity forwarding enabled
Troubleshooting
- Friends not syncing? Check every server points to the same MySQL database.
- Cross-server messages not working?
bungeecord: true(BungeeCord) or Velocity forwarding must be enabled. - Players show wrong server? Each server needs a unique
server-namein config.yml. - Another plugin owns /msg, /party etc.? Use the f-prefixed aliases (
/fmsg,/fparty) or/friends:<cmd>.
Config
server-name: "lobby"
settings:
max-friends: 0
best-friends:
max-limit: 5
enabled: true
friend-groups:
enabled: true
max-groups: 10
friend-teleport:
enabled: true
cooldown: 30
friend-jump:
enabled: true
cooldown: 10
private-messages:
friends-only: false
log-to-console: false
sounds: true
cross-server: true
allow-toggle: true
party:
max-size: 8
allow-public-parties: true
effects:
enabled: true
proximity-required: true
proximity-range: 50
scaling-strength: true
scale-percentage: 10
update-interval: 100
compass:
enabled: true
update-interval: 20
shop:
enabled: true
leader-only: true
reset-on-disband: true
integrations:
grief-prevention:
enabled: true
shared-building: true
shared-containers: true
shared-interactions: true
shared-entities: true
luck-perms:
enabled: true
worldguard:
enabled: false
shared-groups:
- trusted
- build
network:
enabled: true
channel: "friends:network"
mail:
enabled: true
auto-cleanup:
enabled: true
days-old: 30
gifts:
enabled: true
cooldown: 60
max-daily: 10
max-stack-size: 64
expiry-days: 7
blacklist:
- BEDROCK
- BARRIER
- COMMAND_BLOCK
emotes:
enabled: true
cooldown: 5
range: 10
debug: false
API Usage
Friend Management
FriendsAPI.getFriends(playerUUID); // Get a player's friends list
FriendsAPI.getOnlineFriends(playerUUID); // Get only online friends
FriendsAPI.areFriends(playerUUID, otherUUID); // Check friendship status
FriendsAPI.addFriend(playerUUID, friendUUID); // Add a friend directly
FriendsAPI.removeFriend(playerUUID, friendUUID); // Remove a friend
Friend Requests
FriendsAPI.sendFriendRequest(senderUUID, receiverUUID);
FriendsAPI.getPendingRequests(playerUUID);
FriendsAPI.acceptFriendRequest(receiverUUID, senderUUID);
FriendsAPI.denyFriendRequest(receiverUUID, senderUUID);
Messaging & Mail
FriendsAPI.sendMessage(senderUUID, receiverUUID, message);
FriendsAPI.getPlayerMail(playerUUID);
FriendsAPI.sendMail(senderUUID, receiverUUID, content);
Party System
FriendsAPI.createParty(leaderUUID);
FriendsAPI.disbandParty(partyId);
FriendsAPI.invitePlayerToParty(partyId, playerId);
FriendsAPI.getPlayerParty(playerId);
FriendsAPI.getPartyEffects(partyId);
FriendsAPI.sendPartyMessage(player, message);
FriendsAPI.isPartyChatEnabled(playerUUID);
Settings & Stats
FriendsAPI.getPlayerSettings(playerUUID);
FriendsAPI.getPlayerStats(playerUUID);
FriendsAPI.getLeaderboard(type, limit);
Optional Dependencies
- PlaceholderAPI – For placeholders
- LuckPerms – For permission integration
- GriefPrevention – For claim trust integration
- WorldGuard – For region sharing by friend group
- Vault – For the party effects shop
- ProtocolLib – For enhanced features
Ченджлог
1.4.7Релиз1.20.4, 1.20.5, 1.20.6 · 13 июня 2026 г.
Fixes
- Friend chat now reaches your friends on other servers - not just the server you're on.
- Messages, friend requests, mail alerts, and party invites now go through across servers.
- Switching servers no longer leaves you showing offline to some friends and online to others.
- Disabling gifts in the config now also blocks sending them from the menu.
- Turning off best friends, friend groups, teleport, or jump now actually disables them.
/friend jumpnow connects you to your friend's server properly.- Gifts are fully safe from duplication or loss when sending or claiming them.
Improvements
- Cross-server messaging now uses proper proxy forwarding - works on BungeeCord and Velocity with no extra proxy plugin.
- Faster database performance and smoother logins on busy/larger networks.
1.4.6Релиз1.20.4, 1.20.5, 1.20.6 · 7 июня 2026 г.
Fixes
- Friends no longer disappear after a server restart.
- Friends now show as offline the moment they leave - no more players stuck showing "online."
- Your friends list no longer randomly empties out while you're playing.
- Gifts can no longer be duplicated or lost when sending or claiming them.
- Mail now respects your block list - blocked players can't mail you.
- Privacy toggles (like private messages) now apply instantly instead of after a relog.
1.4.5Релиз1.20.4, 1.20.5, 1.20.6 · 30 мая 2026 г.
New Feature – Friendship Levels
- Friendship Levels – Friends now level up together the more you play. Levels build from messaging, gifting, streaks, and time spent online together, and reward both friends when they level up.
/friend level <player>shows your level with a progress bar, also displayed in the friend profile menu.- Fully configurable in the new
levels.yml– level curve, max level, and per-level rewards.
Fixes
- Friend heads now show each player's real skin in every menu instead of a blank/Steve head.
- Party menu: promoting or kicking a member now always targets the player you clicked.
- Daily streaks now complete correctly for both players when sent back on the same day.
New Placeholders
%friends_top_level%– Your highest friendship level%friends_level_with_<player>%– Friendship level with a specific friend%friends_favorites%– Favorite friends count%friends_slots%– Remaining friend slots%friends_current_streak%– Your highest active streak%friends_party_online%,%friends_wishlist_count%,%friends_gifts_total%and more- Placeholders now refresh in the background for smoother performance.
New Command
/friend level <player>– View your friendship level with a friend
Auto Config Updates
- The new
levels.ymlis written on first boot, and new keys merge into your existing configs automatically – no need to delete anything.
1.4.4Релиз1.21.9, 1.21.10, 1.21.11 · 22 мая 2026 г.
- Fixed: friends on other servers now correctly show as online in your friend list after switching servers on a network (previously they showed as offline/unknown).
1.4.3Релиз1.21.9, 1.21.10, 1.21.11 · 20 мая 2026 г.
- Fixed: MySQL/MariaDB database connections now work correctly (previous versions always fell back to SQLite).
- Fixed: SQLite fallback now works correctly when MySQL is unavailable.
1.4.2Релиз1.21.9, 1.21.10, 1.21.11 · 12 мая 2026 г.
New Features
- Friend Streaks – Daily streaks between friends,
/friend streak <player>. Both sides send daily to keep it going. Auto-warns before expiry, auto-resets when broken, caps at 1000. Milestone rewards at 3, 7, 14, 30, 60, 100, 365, 500, 1000 days. - Trust Levels – 6 tiers (Acquaintance, Buddy, Pal, Close Friend, Best Friend, Bestie). Points earned from messages, gifts, and streak days.
/friend trust <player>to view,/friend trust tiersfor the full list. - Gift Wishlists –
/friend wishlist add <material> [amount] [note]or/friend wishlist addhandto use the held item./friend wishlist <player>to see a friend's list before gifting. - Rock Paper Scissors Gambling –
/friend rps <player> <bet>to challenge a friend with Vault money. Configurable min/max bet and house cut. Clickable accept/deny and move buttons in chat. - LuckPerms Per-Rank Friend Limits – Set different max-friends per group. Supports the
unlimitedkeyword. - Two New Config Files –
streaks.ymlandtrust.ymlare fully customizable (rewards, tiers, perks, sounds).
Interactive Chat
- RPS challenges, move picks, streak replies, and wishlist removes are now clickable buttons in chat.
- Streak warning notifications include a one-click "send back" button.
Bug Fixes
- Players with 0 friends or 0 requests no longer re-hit the database on every check (empty list now treated as a real cache hit).
- Fixed NPE risk when a mail sender's name could not be resolved.
- Fixed thread race in friend-request cancellation.
- Removed the startup preload of the entire
player_settingstable – now lazy-loaded per player on join. - Improved tab completion – now lists
reload,menu,streak,trust,wishlist,rpsand pulls emote names dynamically. - Declared the missing
friends.limit.*permissions in plugin.yml so admins can see and grant them.
Auto Config Updates
- Existing servers get new keys merged into
config.ymlautomatically on startup – no need to delete your old config. - New
streaks.ymlandtrust.ymlare written on first boot. - Help text auto-refreshes when help-version bumps.
New Commands
/friend streak <player>– Send a daily streak/friend streak list– View your active streaks/friend trust <player>– View trust level with a friend/friend trust tiers– List all tier thresholds and perks/friend wishlist– View your wishlist/friend wishlist add <material> [amount] [note]/friend wishlist addhand [amount] [note]– Add held item/friend wishlist remove <material>/friend wishlist clear/friend rps <player> <bet>– Challenge to RPS/friend rps accept | deny– Respond to a challenge/friend rps rock | paper | scissors– Pick a move
New Placeholders
%friends_chat_enabled%– Friend chat receive toggle%friends_in_friendchat%– Friend chat mode active%friends_streak_count%– Number of active streaks%friends_longest_streak%– Your longest streak ever
New Permissions
friends.limit.<number>– Sets the friend cap to any number.friends.limit.15,friends.limit.250,friends.limit.9999all work. Highest match wins if multiple are granted.friends.limit.unlimited– Removes the cap entirely (overrides any number).
1.4.1Релиз1.21.9, 1.21.10, 1.21.11 · 22 апреля 2026 г.
Modrinth Release.
Комментарии
Загружаем…