FriendMe
Description
FriendMe allows you and your friends to have a friends list!
Red text means that it is a beta feature
Dependencies
You can have BarAPI not MessageBarAPI - that's an error
Releases
If there is an error generated, please write the complete error message in your comment.
Ideas
If you have any ideas for features for this plugin, don't hesitate to post them in the comments! I want this plugin to be tailored to the whims of the users, and that means you!
Source
Due to a long list of GitHub requests, here it is: LINK
To Do List
working out some buggy commandstoggling bukkit scoreboard functionalitytoggle-able PVP protection from friendsability to upload friendship data to a new version
Currently Working on
- BungeeCord support (via proxy query)
Installation
To install the plugin, just drop the .jar file in your /plugins directory and restart your server!
Commands
/friend add <username> | send a player a friend request, if they are online | |
---|---|---|
/friend remove <username> | remove a player from your friends list | |
/friend accept | accept a friend request | |
/friend deny | deny a friend request | |
/friend help | lists all FriendMe commands | |
/friend list online | list all online friends | |
/friend list offline | list all offline friends and when they were last online | |
/friend load | load friends from friends.yml |
Permissions
friendme.user | required for a player to use the plugin | |
---|---|---|
friendme.admin | required to allow a player to use /friend panel (for later) |
Sample Config.yml
#-------------------------# # Bungee Cord Instances # #-------------------------# bungee: false #-------------------------# # Plugin Metrics # #-------------------------# metrics: true #-----------------------------# # Attacking Friends # #-----------------------------# friendly-fire: false #---------------# # BarAPI # #---------------# bar: You have %on% friends online!
I just typed the command to add a friend, we were in the same world at the same time and it lagged for a while then said "An internal error occurred while attempting to perform this command" Any help?
@CopyableCougar4 I think he means /msg for essentials, basically people can only do /msg to talk to you if they are your friend.
A patch! I will test it out tomorrow. Thank you for continue working on the plugin!
@Koz4christ What private message command do you speak of?
Great and simple looking plugin. I would add it to my server if there was an option to set it for users to only receive private messages from those in their list
@Nikkolo94 As of now that addition has been put on ice. Although with the mysql addition all servers sharing a database should be synced up with each other on friends, there is just no cross-server friend requests.
@CopyableCougar4
ok just waiting to be approved.
anynews about
Currently Working on
BungeeCord support (via proxy query) ?
@xDizasterCYx I just uploaded a patch to be approved. Every database connection it makes sure the connection wasn't closed and if it was then a new connection is created. If the errors persist, please reply so I know.
@CopyableCougar4
ok no prob.
@xDizasterCYx Sorry, this issue will require a patch, but I will get the patch out when I have some free time (not until at least Friday).
@CopyableCougar4
Can we fixed that? or we need to wait for an update?
@madtomic Okay so what I have found out so far is that:
Sorry that this isn't a conclusive answer, more of an update on what I know so far.
I hope to post more soon! CopyableCougar4
@CopyableCougar4
Well now it works but when the server loads this error is spamming in the console:
http://pastebin.com/yq741YLX
I tried to copy and paste the config.yml back in from default copy and added in my mysql info and then I would get the follow errors and it just spam the same errors until the server crashes. I think it's the MAPI or something with mysql that is causing the errors. maybe outdated api like MAPI?
10:56:54 PM [22:56:54 WARN]: at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) 10:56:54 PM [22:56:54 WARN]: at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) 10:56:54 PM [22:56:54 WARN]: at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) 10:56:54 PM [22:56:54 WARN]: at java.lang.reflect.Constructor.newInstance(Unknown Source) 10:56:54 PM [22:56:54 WARN]: at com.mysql.jdbc.Util.handleNewInstance(Util.java:407) 10:56:54 PM [22:56:54 WARN]: at com.mysql.jdbc.Util.getInstance(Util.java:382) 10:56:54 PM [22:56:54 WARN]: at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1013) 10:56:54 PM [22:56:54 WARN]: at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:987) 10:56:54 PM [22:56:54 WARN]: at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:982) 10:56:54 PM [22:56:54 WARN]: at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:927) 10:56:54 PM [22:56:54 WARN]: at com.mysql.jdbc.ConnectionImpl.throwConnectionClosedException(ConnectionImpl.java:1213) 10:56:54 PM [22:56:54 WARN]: at com.mysql.jdbc.ConnectionImpl.checkClosed(ConnectionImpl.java:1200) 10:56:54 PM [22:56:54 WARN]: at com.mysql.jdbc.ConnectionImpl.createStatement(ConnectionImpl.java:2485) 10:56:54 PM [22:56:54 WARN]: at com.mysql.jdbc.ConnectionImpl.createStatement(ConnectionImpl.java:2467) 10:56:54 PM [22:56:54 WARN]: at me.CopyableCougar4.main.MySQL_Loader.load(MySQL_Loader.java:72) 10:56:54 PM [22:56:54 WARN]: at me.CopyableCougar4.main.MySQL_Loader$1.run(MySQL_Loader.java:57) 10:56:54 PM [22:56:54 WARN]: at org.bukkit.craftbukkit.v1_7_R3.scheduler.CraftTask.run(CraftTask.java:53) 10:56:54 PM [22:56:54 WARN]: at org.bukkit.craftbukkit.v1_7_R3.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:345) 10:56:54 PM [22:56:54 WARN]: at net.minecraft.server.v1_7_R3.MinecraftServer.v(MinecraftServer.java:600) 10:56:54 PM [22:56:54 WARN]: at net.minecraft.server.v1_7_R3.DedicatedServer.v(DedicatedServer.java:260) 10:56:54 PM [22:56:54 WARN]: at net.minecraft.server.v1_7_R3.MinecraftServer.u(MinecraftServer.java:558) 10:56:54 PM [22:56:54 WARN]: at net.minecraft.server.v1_7_R3.MinecraftServer.run(MinecraftServer.java:469) 10:56:54 PM [22:56:54 WARN]: at net.minecraft.server.v1_7_R3.ThreadServerApplication.run(SourceFile:628) 10:56:55 PM [22:56:55 WARN]: com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: No operations allowed after connection closed.
now I stop the server and open the same config.yml file. you can see the mysql section is wiped along with some other data. You can see the missing config in this config.yml
and same errors as before.
@CopyableCougar4
These errors I would get on first start up before I added the mysql info in config file. If I open the config.yml now. I would have all the mysql:
10:12:31 PM [22:12:31 INFO]: [FriendMe] Enabling FriendMe v3.3.3 10:12:34 PM [22:12:34 WARN]: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure 10:12:34 PM The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server. 10:12:34 PM [22:12:34 WARN]: at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) 10:12:34 PM [22:12:34 WARN]: at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) 10:12:34 PM [22:12:34 WARN]: at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) 10:12:34 PM [22:12:34 WARN]: at java.lang.reflect.Constructor.newInstance(Unknown Source) 10:12:34 PM [22:12:34 WARN]: at com.mysql.jdbc.Util.handleNewInstance(Util.java:407) 10:12:34 PM [22:12:34 WARN]: at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1116) 10:12:34 PM [22:12:34 WARN]: at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:343) 10:12:34 PM [22:12:34 WARN]: at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2334) 10:12:34 PM [22:12:34 WARN]: at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2371) 10:12:34 PM [22:12:34 WARN]: at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2163) 10:12:34 PM [22:12:34 WARN]: at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:794) 10:12:34 PM [22:12:34 WARN]: at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:47) 10:12:34 PM [22:12:34 WARN]: at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) 10:12:34 PM [22:12:34 WARN]: at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) 10:12:34 PM [22:12:34 WARN]: at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) 10:12:34 PM [22:12:34 WARN]: at java.lang.reflect.Constructor.newInstance(Unknown Source) 10:12:34 PM [22:12:34 WARN]: at com.mysql.jdbc.Util.handleNewInstance(Util.java:407) 10:12:34 PM [22:12:34 WARN]: at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:378) 10:12:34 PM [22:12:34 WARN]: at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:305) 10:12:34 PM [22:12:34 WARN]: at java.sql.DriverManager.getConnection(Unknown Source) 10:12:34 PM [22:12:34 WARN]: at java.sql.DriverManager.getConnection(Unknown Source) 10:12:34 PM [22:12:34 WARN]: at me.CopyableCougar4.main.MAPI.getConnection(MAPI.java:23) 10:12:34 PM [22:12:34 WARN]: at me.CopyableCougar4.main.FriendMe.onEnable(FriendMe.java:101) 10:12:34 PM [22:12:34 WARN]: at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:316) 10:12:34 PM [22:12:34 WARN]: at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:324) 10:12:34 PM [22:12:34 WARN]: at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:404) 10:12:34 PM [22:12:34 WARN]: at org.bukkit.craftbukkit.v1_7_R3.CraftServer.loadPlugin(CraftServer.java:446) 10:12:34 PM [22:12:34 WARN]: at org.bukkit.craftbukkit.v1_7_R3.CraftServer.enablePlugins(CraftServer.java:380) 10:12:34 PM [22:12:34 WARN]: at net.minecraft.server.v1_7_R3.MinecraftServer.n(MinecraftServer.java:352) 10:12:34 PM [22:12:34 WARN]: at net.minecraft.server.v1_7_R3.MinecraftServer.g(MinecraftServer.java:326) 10:12:34 PM [22:12:34 WARN]: at net.minecraft.server.v1_7_R3.MinecraftServer.a(MinecraftServer.java:282) 10:12:34 PM [22:12:34 WARN]: at net.minecraft.server.v1_7_R3.DedicatedServer.init(DedicatedServer.java:182) 10:12:34 PM [22:12:34 WARN]: at net.minecraft.server.v1_7_R3.MinecraftServer.run(MinecraftServer.java:436) 10:12:34 PM [22:12:34 WARN]: at net.minecraft.server.v1_7_R3.ThreadServerApplication.run(SourceFile:628) 10:12:34 PM [22:12:34 WARN]: Caused by: java.net.UnknownHostException: null 10:12:34 PM [22:12:34 WARN]: at java.net.Inet6AddressImpl.lookupAllHostAddr(Native Method) 10:12:34 PM [22:12:34 WARN]: at java.net.InetAddress$1.lookupAllHostAddr(Unknown Source) 10:12:34 PM [22:12:34 WARN]: at java.net.InetAddress.getAddressesFromNameService(Unknown Source) 10:12:34 PM [22:12:34 WARN]: at java.net.InetAddress.getAllByName0(Unknown Source) 10:12:34 PM [22:12:34 WARN]: at java.net.InetAddress.getAllByName(Unknown Source) 10:12:34 PM [22:12:34 WARN]: at java.net.InetAddress.getAllByName(Unknown Source) 10:12:34 PM [22:12:34 WARN]: at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:244) 10:12:34 PM [22:12:34 WARN]: at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:292) 10:12:34 PM [22:12:34 WARN]: ... 27 more 10:12:34 PM [22:12:34 ERROR]: Error occurred while enabling FriendMe v3.3.3 (Is it up to date?) 10:12:34 PM java.lang.NullPointerException 10:12:34 PM at me.CopyableCougar4.main.FriendMe.onEnable(FriendMe.java:103) [?:?] 10:12:34 PM at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:316) [craftbukkit.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks] 10:12:34 PM at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:324) [craftbukkit.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks] 10:12:34 PM at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:404) [craftbukkit.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks] 10:12:34 PM at org.bukkit.craftbukkit.v1_7_R3.CraftServer.loadPlugin(CraftServer.java:446) [craftbukkit.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks] 10:12:34 PM at org.bukkit.craftbukkit.v1_7_R3.CraftServer.enablePlugins(CraftServer.java:380) [craftbukkit.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks] 10:12:34 PM at net.minecraft.server.v1_7_R3.MinecraftServer.n(MinecraftServer.java:352) [craftbukkit.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks] 10:12:34 PM at net.minecraft.server.v1_7_R3.MinecraftServer.g(MinecraftServer.java:326) [craftbukkit.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks] 10:12:34 PM at net.minecraft.server.v1_7_R3.MinecraftServer.a(MinecraftServer.java:282) [craftbukkit.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks] 10:12:34 PM at net.minecraft.server.v1_7_R3.DedicatedServer.init(DedicatedServer.java:182) [craftbukkit.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks] 10:12:34 PM at net.minecraft.server.v1_7_R3.MinecraftServer.run(MinecraftServer.java:436) [craftbukkit.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks] 10:12:34 PM at net.minecraft.server.v1_7_R3.ThreadServerApplication.run(SourceFile:628) [craftbukkit.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]
@madtomic Is there more to that stacktrace? If that's the entire stacktrace the issue will be hard to fix because the stacktrace literally traces the problem through the code and if that's all the stacktrace I don't know where in my code the problem is.
@xDizasterCYx Change the host to just say localhost. The jdbc part and port are added when MAPI creates the connection.
@CopyableCougar4
Here's my config:
http://pastebin.com/kz51s6Y0