Git Product home page Git Product logo

minecraft-nodebb-integration's Introduction

NodeBB Integration

This Bukkit plugin is a companion app for Minecraft Integration, a NodeBB forum plugin. It establishes a WebSocket connection to the forum which allows communication between the forum and your Minecraft server. This allows information on your Minecraft server and players to be displayed on your forum via widgets, user profiles, posts, shoutboxes, etc.. Your forum can also send events back to the server such as posts, messages, awards, groups. The plugin is a WebSocket client only and exposes it's API only to the Minecraft Integration plugin. The WebSocket client is run asynchronously to prevent network lag from interfering with normal server processes. If your forum uses a secure connection, this plugin's connection will be secure as well.

Requirements

Requires Java 8 or higher.

What is NodeBB?

Form the NodeBB Docs:

NodeBB logo

NodeBB is a next-generation discussion platform that utilizes web sockets for instant interactions and real-time notifications. NodeBB forums have many modern features out of the box such as social network integration and streaming discussions.

What does the NodeBB Integration plugin do?

NodeBB Integration sends socket events to your forum when a Bukkit event occurs. The forum listens for these events and displays relevant information to forum users.

  • Display server info such as online time, plugins, mods, and online players, updated in real-time.
  • Show rankings such as most money, playtime, or McMMO skills on your forum, also updated in real-time.
  • Synchronize server chat and forum shoutboxes.
  • Synchronize server ranks with forum group membership.
  • Apply ranks to Minecraft players based on Forum usage. (Posts, reputation, etc..)

Plugin Configuration

After placing the NodeBB Integration jar into your plugins folder and restarting your Minecraft server, a config.yml will be created in the folder plugins/NodeBB_Integration with the following options:

Option Usage
FORUMURL The web address of the forum the plugin is connecting to. e.g., https://community.example.com/. Can use color codes with '&'.
FORUMNAME The name of your forum, displayed on messages sent by this plugin. Can use color codes with '&'.
APIKEY The API Key for your forum from the server settings section of Minecraft Integration.
SOCKETNAMESPACE Advanced use only. Default is plugins
PLUGINID Advanced use only. Default is MinecraftIntegration

The FORUMURL and APIKEY are required. You can save them to the config.yml or using the commands below. After editing the configuration, use the command /nodebb reload to reconnect to the forum. No server restart is required.

Commands

For OPs

These commands are available to all OPs and any players that have the permission nodebb.admin

/nodebb Displays all plugin commands.

"Picture of commands using /nodebb"

/nodebb reload Reloads the config.yml from disk and reconnects to the forum.

/nodebb key [key] Gets or sets the forum API Key and reloads.

/nodebb url [url] Gets or sets the forum URL and reloads.

/nodebb name [name] Gets or sets the forum name and reloads.

/nodebb debug [toggle] Displays information useful for fixing errors. Use the toggle option to turn on verbose logging.

For Players

All players have these commands. No permission is required.

/register [KEY] Connects the forum account associated with the email entered to the players UUID, allowing additional features on your forum.

Setting up your NodeBB forum

NodeBB Integration is designed for use with the NodeBB plugin Minecraft Integration.

Minecraft Integration provides a GUI to manage:

  • Forum accounts linked to a player's UUID.
  • Linking a users' avatar to their Minecraft skin.

as well as adding Widgets to your forum:

  • Server Status (dynamically updated)
  • TPS Graph
  • Player Rankings (for Playtime, Money, or McMMO stats.)
  • Player Graphs (for displaying online players or player rankings over time.)

Example Widgets

Server Status

Dynamically updates player count, avatars, online status, and plugins.

Player Graph

Updates dynamically.

Player Rankings

Dynamically updates the statistic and player order.

Advanced Configuration

Advanced users can create their own NodeBB plugin to listen for Bukkit events using the socket.io module.

The SOCKETNAMESPACE and PLUGINID must be changed to their appropriate values in the config.yml.

var socketPlugins = require('./socket.io/plugins');

socketPlugins.MyPlugin = { eventPlayerJoin: function (socket, data, callback) { // The event is parsed into a plain js object. console.log(data.player.name); } }

Project Information

License: CC0 or MIT License.

Source: https://github.com/yariplus/bukkit-plugin-nodebb-integration

minecraft-nodebb-integration's People

Contributors

terrobility avatar yariplus avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

minecraft-nodebb-integration's Issues

Sponge bugs

server version is not implemented and motd formatting is broken

Removing VanishNoPacket breaks the plugin

If I remove VanishNoPacket, then this error happens, nodebb can't connect, and commands don't work.

[23:01:28] [Craft Scheduler Thread - 7/INFO]: [NodeBB-Integration] Success! The socket client was created.
[23:01:28] [EventThread/INFO]: [NodeBB-Integration] Connected to the forum!
[23:01:28] [Server thread/WARN]: [NodeBBIntegration] Task #578 for NodeBBIntegration v0.7.0-beta.3 generated an exception
java.lang.NoClassDefFoundError: org/kitteh/vanish/staticaccess/VanishNotLoadedException
    at com.yaricraft.nodebbintegration.tasks.TaskTick$1.run(TaskTick.java:64) ~[?:?]
    at org.bukkit.craftbukkit.v1_8_R3.scheduler.CraftTask.run(CraftTask.java:71) ~[spigot.jar:git-Spigot-db6de12-d3e0b6f]
    at org.bukkit.craftbukkit.v1_8_R3.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:350) [spigot.jar:git-Spigot-db6de12-d3e0b6f]
    at net.minecraft.server.v1_8_R3.MinecraftServer.B(MinecraftServer.java:723) [spigot.jar:git-Spigot-db6de12-d3e0b6f]
    at net.minecraft.server.v1_8_R3.DedicatedServer.B(DedicatedServer.java:374) [spigot.jar:git-Spigot-db6de12-d3e0b6f]
    at net.minecraft.server.v1_8_R3.MinecraftServer.A(MinecraftServer.java:654) [spigot.jar:git-Spigot-db6de12-d3e0b6f]
    at net.minecraft.server.v1_8_R3.MinecraftServer.run(MinecraftServer.java:557) [spigot.jar:git-Spigot-db6de12-d3e0b6f]
    at java.lang.Thread.run(Unknown Source) [?:1.8.0_45]
Caused by: java.lang.ClassNotFoundException: org.kitteh.vanish.staticaccess.VanishNotLoadedException
    at java.net.URLClassLoader.findClass(Unknown Source) ~[?:1.8.0_45]
    at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:101) ~[spigot.jar:git-Spigot-db6de12-d3e0b6f]
    at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:86) ~[spigot.jar:git-Spigot-db6de12-d3e0b6f]
    at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_45]
    at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_45]
    ... 8 more

Compatibility for redisbungee/network

I would like to suggest support of the plugin for redisbungee, that is basically that the online weather data, actions, etc is synchronized in a network of bungeecords.

In my case it would be better to have the plugin as well to show the forum where it will see total connection to the network than one in each lobby server connected to bungeecord.

I messed up sockets.

Sockets are messed up somehow. It's opening too many connections. Causes bad things to happen.

Sockets get disconnected from the NodeBB server almost immediately it seems, but they remain open. SIO tries to auto-close them, but it isn't fast enough fast enough.

Need to find out why they are disconnecting.

Connection leak is a reported Socket.IO Java issue. Sockets not responding was a cluster issue, see below.

SpongeForge server install

Hi,

Sorry if this is obvious ๐Ÿ˜ž I don't find how to install the plugin with a SpongeForge server.

I tried to put it in plugins and mods folder, I get this message :

[06:47:22] [Server thread/INFO] [FML]: FML has found a non-mod file nodebb-integration-universal-0.7.3.1.jar in your mods directory. It will now be injected into your classpath. This could severe stability issues, it should be removed if possible.

java.lang.UnsupportedClassVersionError

Hi,
I encountered the error in title trying to get minecraft-nodebb-integration working with my fresh new server.

I first had an error with Vault missing as dependency, so I added it (I could propose a readme commit precising it).

And now I have this new error :

04:54:18 INFO]: This server is running CraftBukkit version git-Bukkit-6053c5c (MC: 1.10.2) (Implementing API version 1.10.2-R0.1-SNAPSHOT)
[04:54:19 ERROR]: Could not load 'plugins/nodebb-integration-universal-0.7.3.jar' in folder 'plugins'
org.bukkit.plugin.InvalidPluginException: java.lang.UnsupportedClassVersionError: com/radiofreederp/nodebbintegration/NodeBBIntegrationBukkit : Unsupported major.minor version 52.0
at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:133) ~[bukkit.jar:git-Bukkit-6053c5c]
at org.bukkit.plugin.SimplePluginManager.loadPlugin(SimplePluginManager.java:328) ~[bukkit.jar:git-Bukkit-6053c5c]
at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java:251) [bukkit.jar:git-Bukkit-6053c5c]
at org.bukkit.craftbukkit.v1_10_R1.CraftServer.loadPlugins(CraftServer.java:294) [bukkit.jar:git-Bukkit-6053c5c]
at org.bukkit.craftbukkit.v1_10_R1.CraftServer.(CraftServer.java:256) [bukkit.jar:git-Bukkit-6053c5c]
at net.minecraft.server.v1_10_R1.PlayerList.(PlayerList.java:70) [bukkit.jar:git-Bukkit-6053c5c]
at net.minecraft.server.v1_10_R1.DedicatedPlayerList.(SourceFile:14) [bukkit.jar:git-Bukkit-6053c5c]
at net.minecraft.server.v1_10_R1.DedicatedServer.init(DedicatedServer.java:184) [bukkit.jar:git-Bukkit-6053c5c]
at net.minecraft.server.v1_10_R1.MinecraftServer.run(MinecraftServer.java:514) [bukkit.jar:git-Bukkit-6053c5c]
at java.lang.Thread.run(Thread.java:745) [?:1.7.0_101]
Caused by: java.lang.UnsupportedClassVersionError: com/radiofreederp/nodebbintegration/NodeBBIntegrationBukkit : Unsupported major.minor version 52.0
at java.lang.ClassLoader.defineClass1(Native Method) ~[?:1.7.0_101]
at java.lang.ClassLoader.defineClass(ClassLoader.java:803) ~[?:1.7.0_101]
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) ~[?:1.7.0_101]
at java.net.URLClassLoader.defineClass(URLClassLoader.java:449) ~[?:1.7.0_101]
at java.net.URLClassLoader.access$100(URLClassLoader.java:71) ~[?:1.7.0_101]
at java.net.URLClassLoader$1.run(URLClassLoader.java:361) ~[?:1.7.0_101]
at java.net.URLClassLoader$1.run(URLClassLoader.java:355) ~[?:1.7.0_101]
at java.security.AccessController.doPrivileged(Native Method) ~[?:1.7.0_101]
at java.net.URLClassLoader.findClass(URLClassLoader.java:354) ~[?:1.7.0_101]
at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:77) ~[bukkit.jar:git-Bukkit-6053c5c]
at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:62) ~[bukkit.jar:git-Bukkit-6053c5c]
at java.lang.ClassLoader.loadClass(ClassLoader.java:425) ~[?:1.7.0_101]
at java.lang.ClassLoader.loadClass(ClassLoader.java:358) ~[?:1.7.0_101]
at java.lang.Class.forName0(Native Method) ~[?:1.7.0_101]
at java.lang.Class.forName(Class.java:278) ~[?:1.7.0_101]
at org.bukkit.plugin.java.PluginClassLoader.(PluginClassLoader.java:40) ~[bukkit.jar:git-Bukkit-6053c5c]
at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:129) ~[bukkit.jar:git-Bukkit-6053c5c]
... 9 more

Is it due to Bukkit version number or related to a language settings ?

Regards.

Create a Spigot Resource

I (and many others) depend on spigot to get plugin update notifications. Would you be willing to start publishing this on spigot as well? <3

Cloudflare Issues

http://d.l33t.tech/18zOO/2kRihqGt

When using my cloudflare url, it does not work properly. When using my direct url, it does. I don't want my "live" url to be displayed though. Is there a way to let this work with cloudflare or could there be a way added to do a "live" url?

Commands don't function - spigot 1.8.8

The plugin appears to load, but none of the commands do anything. typing /nodebb or /nodebb <anything> just returns a line of text in chat that says /nodebb. (I am opped)

I thought it was one of my other plugins breaking it somehow, but I installed a fresh server spigot and no other plugins, and there is still the same issue.

Here is a log file http://pastebin.com/a37te0Uw

"address" option in "socketio" needs to be manually set, else throws "xhr poll error"

Problem Description:
The "address" option in the "socketio" section needs to be manually set to the NodeBB URL in the config file for the plugin to connect. If that isn't done, the following error is produced repeatedly in an interval of a few seconds:

[23:41:45 INFO]: [NodeBB-Integration] io.socket.engineio.client.EngineIOException: xhr poll error [23:41:50 INFO]: [NodeBB-Integration] Error connecting to the forum.

Environment:

  • Server Software: SpigotMC
  • Server Software Version: git-Spigot-a1b8bf3-f01861f (MC: 1.9.2) (Implementing API version 1.9.2-R0.1-SNAPSHOT)
  • NodeBB version: 1.0.2
  • plugin version: v0.7.0-beta.9
  • HTTP protocol used: HTTPS
  • nginx version: nginx/1.4.6 (Ubuntu).
  • Output of nginx -V: http://pastebin.com/bUBiR6SA
  • Java version: "1.7.0_95"
    • Additional Information: OpenJDK Runtime Environment (IcedTea 2.6.4) (7u95-2.6.4-0ubuntu0.14.04.2)
      OpenJDK 64-Bit Server VM (build 24.95-b01, mixed mode)

True In-Game Registration

I don't know how feasible this is, but it might be cool to do a command with a username as an argument (or email? But that goes back to PII in game again where they could accidentally chat it) and it will generate a custom register url with whatever information already filled in OR maybe even register them and send them an email with a password and if there is any other information needed for registration... prompt them for it when they login the first time? I feel like some natural nodebb functionality will get in the way with this... but if you can figure out a way... this would be baller. That command could be /register and if they already have a login, you could make that the /login command.

Connection refused

Hi,

Still trying to get minecraft-nodebb-integration working ๐Ÿ˜Š .

Now I'm having a connexion error.

[22:34:43 WARN]: java.net.ConnectException: Connection refused
[22:34:43 WARN]: at java.net.PlainSocketImpl.socketConnect(Native Method)
[22:34:43 WARN]: at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
[22:34:43 WARN]: at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
[22:34:43 WARN]: at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
[22:34:43 WARN]: at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
[22:34:43 WARN]: at java.net.Socket.connect(Socket.java:589)
[22:34:43 WARN]: at sun.security.ssl.SSLSocketImpl.connect(SSLSocketImpl.java:668)
[22:34:43 WARN]: at sun.security.ssl.BaseSSLSocketImpl.connect(BaseSSLSocketImpl.java:173)
[22:34:43 WARN]: at sun.net.NetworkClient.doConnect(NetworkClient.java:180)
[22:34:43 WARN]: at sun.net.www.http.HttpClient.openServer(HttpClient.java:432)
[22:34:43 WARN]: at sun.net.www.http.HttpClient.openServer(HttpClient.java:527)
[22:34:43 WARN]: at sun.net.www.protocol.https.HttpsClient.(HttpsClient.java:264)
[22:34:43 WARN]: at sun.net.www.protocol.https.HttpsClient.New(HttpsClient.java:367)
[22:34:43 WARN]: at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.getNewHttpClient(AbstractDelegateHttpsURLConnection.java:191)
...

For the moment I just rout the server port. Are there any other ports or network settings required by this plugin in order to work โ“

Regards

Sponge 1.10.2 Issues

No connection to the forum as far as I can tell and any /nodebb command just throws this NPE
Forge 12.18.2.2099 for Minecraft 1.10.2
spongeforge-1.10.2-2098-5.1.0-BETA-1814

plugins for spongeforge
Nucleus-0.12.1-S5-1.10.2
griefprevention-1.10.2-2.1.0.83
PermissionsEx-build142-Sponge
worldedit-build3610-sponge-mc1.10.2-6.1.4-SNAPSHOT-dist

modpack is the hermitpack on the ftb launcher

[15:31:08] [Server thread/INFO] [nucleus/]: Server ran the command: /nodebb help
[15:31:08] [Server thread/ERROR] [Sponge/]: Error occurred while executing command 'nodebb help' for source DedicatedServer: null
java.lang.NullPointerException
    at com.radiofreederp.nodebbintegration.commands.CommandNodeBB.help(CommandNodeBB.java:115) ~[CommandNodeBB.class:0.7.3]
    at com.radiofreederp.nodebbintegration.commands.CommandNodeBB.doCommand(CommandNodeBB.java:63) ~[CommandNodeBB.class:0.7.3]
    at com.radiofreederp.nodebbintegration.sponge.commands.CommandNodeBBSponge.execute(CommandNodeBBSponge.java:50) ~[CommandNodeBBSponge.class:0.7.3]
    at org.spongepowered.api.command.spec.CommandSpec.process(CommandSpec.java:351) ~[CommandSpec.class:1.10.2-2098-5.1.0-BETA-1814]
    at org.spongepowered.api.command.dispatcher.SimpleDispatcher.process(SimpleDispatcher.java:333) ~[SimpleDispatcher.class:1.10.2-2098-5.1.0-BETA-1814]
    at org.spongepowered.common.command.SpongeCommandManager.process(SpongeCommandManager.java:291) [SpongeCommandManager.class:1.10.2-2098-5.1.0-BETA-1814]
    at net.minecraft.command.ServerCommandManager.func_71556_a(SourceFile:82) [bd.class:?]
    at net.minecraft.server.dedicated.DedicatedServer.func_71333_ah(DedicatedServer.java:423) [ld.class:?]
    at net.minecraft.server.dedicated.DedicatedServer.func_71190_q(DedicatedServer.java:388) [ld.class:?]
    at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:613) [MinecraftServer.class:?]
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:471) [MinecraftServer.class:?]
    at java.lang.Thread.run(Thread.java:745) [?:1.8.0_101]

Change Registration Method

Having the user enter their password into chat is super sketchy and the password shows up in server logs.. plus if user mistypes (forgets / or something) then password is spammed to server. Is it possible to do something like enjin does and generate a unique key for the user to enter on the forum or vice versa?

missing source?

alpha 21 is in the release section, but looks like you forgot to push the changes to github?

sadly getting some errors using Sponge https://gist.github.com/phit/6f5b11b20775301c7bfffd8da5d68f6c

unrelated but I also had to do some patching to the forum plugin to get it to run with NodeBB 1.9.X, I would make a PR but I more or less just bandaided it so it wouldn't crash the forums

https://github.com/yariplus/nodebb-plugin-minecraft-integration/blob/f1c762bb47c7e0a07345f1a60f7fda0dbce6bc94/src/lib/widgets.js#L37-L39

to _nodebb.translator.translate(html, "en_US", html => callback(null, { html }));

Spigot 1.9

So I don't have Vault on my server, which I would love to get to solve the problem. However, I'm running 1.9 and Vault isn't quite updated to 1.9. Is it just that I can't use this with 1.9 yet or am I missing something simple?

[23:17:02] [Server thread/ERROR]: Could not load 'plugins/nodebb-integration-universal-0.7.1.jar' in folder 'plugins' org.bukkit.plugin.UnknownDependencyException: Vault at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java:219) [spigot.jar:git-Spigot-104c8c8-e43b278] at org.bukkit.craftbukkit.v1_9_R1.CraftServer.loadPlugins(CraftServer.java:296) [spigot.jar:git-Spigot-104c8c8-e43b278] at net.minecraft.server.v1_9_R1.DedicatedServer.init(DedicatedServer.java:201) [spigot.jar:git-Spigot-104c8c8-e43b278] at net.minecraft.server.v1_9_R1.MinecraftServer.run(MinecraftServer.java:527) [spigot.jar:git-Spigot-104c8c8-e43b278] at java.lang.Thread.run(Thread.java:745) [?:1.8.0_66] [/code]

ASM 5 issues 1.7.10?

Getting a problem relating to ASM 5, running Java 8 and Minecraft 1.7.10 (which I understand this still supports?)

[16:37:53] [Server thread/ERROR]: Could not load 'plugins/nodebb-integration-universal-0.7.2.jar' in folder 'plugins' org.bukkit.plugin.InvalidPluginException: java.lang.NoClassDefFoundError: com/radiofreederp/nodebbintegration/MinecraftServer at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:149) ~[JavaPluginLoader.class:1.7.10-1614.56] at org.bukkit.plugin.SimplePluginManager.loadPlugin(SimplePluginManager.java:334) ~[SimplePluginManager.class:1.7.10-1614.56] at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java:256) [SimplePluginManager.class:1.7.10-1614.56] at org.bukkit.craftbukkit.v1_7_R4.CraftServer.loadPlugins(CraftServer.java:343) [CraftServer.class:1.7.10-1614.56] at net.minecraft.world.storage.SaveHandler.initBukkitData(SaveHandler.java:462) [ayq.class:?] at net.minecraft.world.storage.SaveHandler.func_75757_d(SaveHandler.java:138) [ayq.class:?] at net.minecraft.world.World.<init>(World.java:371) [ahb.class:?] at net.minecraft.world.WorldServer.<init>(WorldServer.java:162) [mt.class:?] at net.minecraft.server.MinecraftServer.func_71247_a(MinecraftServer.java:375) [MinecraftServer.class:?] at net.minecraft.server.dedicated.DedicatedServer.func_71197_b(DedicatedServer.java:337) [lt.class:?] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:643) [MinecraftServer.class:?] at java.lang.Thread.run(Thread.java:745) [?:1.8.0_91] Caused by: java.lang.NoClassDefFoundError: com/radiofreederp/nodebbintegration/MinecraftServer at java.lang.Class.forName0(Native Method) ~[?:1.8.0_91] at java.lang.Class.forName(Class.java:348) ~[?:1.8.0_91] at org.bukkit.plugin.java.PluginClassLoader.<init>(PluginClassLoader.java:189) ~[PluginClassLoader.class:1.7.10-1614.56] at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:145) ~[JavaPluginLoader.class:1.7.10-1614.56] ... 11 more Caused by: java.lang.ClassNotFoundException: Failed to remap class com.radiofreederp.nodebbintegration.MinecraftServer at org.bukkit.plugin.java.PluginClassLoader.remappedFindClass(PluginClassLoader.java:512) ~[PluginClassLoader.class:1.7.10-1614.56] at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:433) ~[PluginClassLoader.class:1.7.10-1614.56] at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:211) ~[PluginClassLoader.class:1.7.10-1614.56] at java.lang.ClassLoader.loadClass(ClassLoader.java:424) ~[?:1.8.0_91] at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ~[?:1.8.0_91] at java.lang.Class.forName0(Native Method) ~[?:1.8.0_91] at java.lang.Class.forName(Class.java:348) ~[?:1.8.0_91] at org.bukkit.plugin.java.PluginClassLoader.<init>(PluginClassLoader.java:189) ~[PluginClassLoader.class:1.7.10-1614.56] at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:145) ~[JavaPluginLoader.class:1.7.10-1614.56] ... 11 more Caused by: java.lang.IllegalArgumentException: INVOKESPECIAL/STATIC on interfaces require ASM 5 at org.objectweb.asm.MethodVisitor.visitMethodInsn(Unknown Source) ~[asm-all-5.0.3.jar:5.0.3] at org.objectweb.asm.ClassReader.a(Unknown Source) ~[asm-all-5.0.3.jar:5.0.3] at org.objectweb.asm.ClassReader.b(Unknown Source) ~[asm-all-5.0.3.jar:5.0.3] at org.objectweb.asm.ClassReader.accept(Unknown Source) ~[asm-all-5.0.3.jar:5.0.3] at org.objectweb.asm.ClassReader.accept(Unknown Source) ~[asm-all-5.0.3.jar:5.0.3] at net.md_5.specialsource.JarRemapper.remapClassFile(JarRemapper.java:246) ~[JarRemapper.class:?] at net.md_5.specialsource.JarRemapper.remapClassFile(JarRemapper.java:232) ~[JarRemapper.class:?] at org.bukkit.plugin.java.PluginClassLoader.remappedFindClass(PluginClassLoader.java:477) ~[PluginClassLoader.class:1.7.10-1614.56] at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:433) ~[PluginClassLoader.class:1.7.10-1614.56] at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:211) ~[PluginClassLoader.class:1.7.10-1614.56] at java.lang.ClassLoader.loadClass(ClassLoader.java:424) ~[?:1.8.0_91] at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ~[?:1.8.0_91] at java.lang.Class.forName0(Native Method) ~[?:1.8.0_91] at java.lang.Class.forName(Class.java:348) ~[?:1.8.0_91] at org.bukkit.plugin.java.PluginClassLoader.<init>(PluginClassLoader.java:189) ~[PluginClassLoader.class:1.7.10-1614.56] at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:145) ~[JavaPluginLoader.class:1.7.10-1614.56] ... 11 more

The plugin seems pretty amazing, excited to get it working :33

Error on user login

Error in console when a user joins the server.
Just adding this here so you don't forget about it

22:39:40 CONSOLE: WARN]: org.json.JSONException: JSONObject["user"] is not a JSONObject. 22:39:40 CONSOLE: WARN]: at org.json.JSONObject.getJSONObject(JSONObject.java:596) 22:39:40 CONSOLE: WARN]: at com.radiofreederp.nodebbintegration.MinecraftServerEvents.lambda$onPlayerJoin$5(MinecraftServerEvents.java:28) 22:39:40 CONSOLE: WARN]: at com.radiofreederp.nodebbintegration.socketio.SocketIOClient$1.call(SocketIOClient.java:59) 22:39:40 CONSOLE: WARN]: at io.socket.client.Socket.onack(Socket.java:379) 22:39:40 CONSOLE: WARN]: at io.socket.client.Socket.onpacket(Socket.java:307) 22:39:40 CONSOLE: WARN]: at io.socket.client.Socket.access$100(Socket.java:19) 22:39:40 CONSOLE: WARN]: at io.socket.client.Socket$2$2.call(Socket.java:111) 22:39:40 CONSOLE: WARN]: at io.socket.emitter.Emitter.emit(Emitter.java:117) 22:39:40 CONSOLE: WARN]: at io.socket.client.Manager.ondecoded(Manager.java:407) 22:39:40 CONSOLE: WARN]: at io.socket.client.Manager.access$1600(Manager.java:20) 22:39:40 CONSOLE: WARN]: at io.socket.client.Manager$7.call(Manager.java:383) 22:39:40 CONSOLE: WARN]: at io.socket.emitter.Emitter.emit(Emitter.java:117) 22:39:40 CONSOLE: WARN]: at io.socket.parser.Parser$Decoder.add(Parser.java:157) 22:39:40 CONSOLE: WARN]: at io.socket.client.Manager.ondata(Manager.java:399) 22:39:40 CONSOLE: WARN]: at io.socket.client.Manager.access$1000(Manager.java:20) 22:39:40 CONSOLE: WARN]: at io.socket.client.Manager$2.call(Manager.java:350) 22:39:40 CONSOLE: WARN]: at io.socket.emitter.Emitter.emit(Emitter.java:117) 22:39:40 CONSOLE: WARN]: at io.socket.engineio.client.Socket.onPacket(Socket.java:497) 22:39:40 CONSOLE: WARN]: at io.socket.engineio.client.Socket.access$900(Socket.java:30) 22:39:40 CONSOLE: WARN]: at io.socket.engineio.client.Socket$5.call(Socket.java:299) 22:39:40 CONSOLE: WARN]: at io.socket.emitter.Emitter.emit(Emitter.java:117) 22:39:40 CONSOLE: WARN]: at io.socket.engineio.client.Transport.onPacket(Transport.java:127) 22:39:40 CONSOLE: WARN]: at io.socket.engineio.client.transports.Polling.access$700(Polling.java:17) 22:39:40 CONSOLE: WARN]: at io.socket.engineio.client.transports.Polling$2.call(Polling.java:124) 22:39:40 CONSOLE: WARN]: at io.socket.engineio.parser.Parser.decodePayload(Parser.java:251) 22:39:40 CONSOLE: WARN]: at io.socket.engineio.client.transports.Polling._onData(Polling.java:134) 22:39:40 CONSOLE: WARN]: at io.socket.engineio.client.transports.Polling.onData(Polling.java:106) 22:39:40 CONSOLE: WARN]: at io.socket.engineio.client.transports.PollingXHR$5$1.run(PollingXHR.java:113) 22:39:40 CONSOLE: WARN]: at io.socket.thread.EventThread$2.run(EventThread.java:75) 22:39:40 CONSOLE: WARN]: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 22:39:40 CONSOLE: WARN]: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 22:39:40 CONSOLE: WARN]: at java.lang.Thread.run(Thread.java:745)

Message config needed improvements.

  • Message config should be separate from main config.
  • Need a good way to reset and update default messages.
  • Need to complete in-game message editor.

Issues...

This just doesn't seem to work with any modern stack and latest NodeBB/Node. Am I missing something?

Just seems none of the widgets appear at all. Seems to link fine. But that's it.

In-game forum login?

Hello, would there be a way to log in to the forum account in the game? So people would need to first make account on my NodeBB forum and then just get into the game and provide username and password or just password if their nickname in game matches the username on the forum?
Would be very cool addition and could help me to connect forum to the server even more. I tried to do this by myself but failed. Thanks in advance

Connect to forum using localhost

I keep getting this error every so often when my server is running. I have nodebb running locally with the plugins installed.

image

Force Registration.. But Nicely.

I have a suggestion on a future improvement. Have an option to force a player to register. Either rudely by making it so they can't move or anything when they first login or nicely by warning them every time they login and giving them a week (configurable) grace period before locking movement. This would make it so that people would be more likely to actually register on the forum.

Forum group/rank syncing

How does this work from server to forum and vice versa?
What group/rank systems are supported?
Any chance on getting support for PexPermissions ranks? :)

Apart from this, absolutely stellar plugin! Amazed at how well it works. Top job!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.