[nodebb-plugin-minecraft-integration] Minecraft Integration!

NodeBB Plugins
  • ABANDONED

    I am putting this plugin on haitaus as I do not have time to maintain it and no idea if I ever will. You can contact me directly if there is a feature you need for your forum and I'll make a best effort to help you out. Cheers.



    .

    Minecraft Integration

    The Minecraft Integration project aims to reproduce and enhance widgets and features found on sites such as Enjin (XenForo-based) for use on a NodeBB forum.

    Compatible with NodeBB v1.5.0 and up.

    Requirements

    • At least one Minecraft server with:
      • The plugin nodebb-integration installed.
      • Java 8u101 or greater
      • Supported server versions include: Spigot/Paper, Forge, Sponge, GlowStone BungeeCord, Waterfall, RedisBungee, or PocketMine.
      • (K/Cauldron, MCPC+, and Thermos supported via the legacy jar and do not require Java 8)

    Setup

    After installing the plugin and restarting your NodeBB forum, go to the Plugins->Minecraft Integration page in the Admin control panel and add a new server.

    Copy the server's API key.

    On your Minecraft server console, enter the command /nodebb key {APIkey}

    The server will now connect to your forum and send it information every minute or when an event occurs.

    Server Configuration

    Server Name

    This name is used by the plugin to identify the server.

    Server Address

    This is the address users use in game to connect to the server.

    API Key

    This key is used to connect your Minecraft server to the forum.

    Widgets

    Server Status Widget

    Shows MOTD, min/max players, version, online player avatars, and other information about the Minecraft server. Displays everything in a pretty table. Custom rows can be added for things such as Mod Pack downloads, donation links, or any other html you wish to add.

    Server Status Widget Sample Image

    Mini Map Widget

    Displays a Dynmap or Overviewer mini-map with configurable start location. (World/MapType/Coordinate).

    Dynmap Mini Map Sample Image

    Online Players Graph Widget

    A graph showing the number of player on the server recently. (Last 30 pings)

    Online Players Graph Sample Image

    Online Players Grid Widget

    A grid of avatars of players currently on the server.

    Online Players Grid Sample Image

    Top Players List Widget

    Displays user avatars in a list representing the top players' approximate play time.

    Top Players List Sample Image

    Top Players Graph Widget

    A graphic chart (Pie) representing the top players' approximate play time.

    Top Players Graph Sample Image

    TPS Graph Widget

    A graph showing the servers' recent Ticks per Second.

    Chat Widget

    Show the in-game chat in a shoutbox-like widget. Send messages if your forum user is registered.

    Plugin API

    Other apps can read data the plugin has collected via it's API.

    Features in Development

    • Character Profiles - A mini profile for your character.
    • Gallery Widget - A selection of user-uploaded screen-shots.
    • Server Page - A page just for server data.
    • Directory Widget - Display notable character profiles.
    • Ping Graph Widget - Display recent server pings.
  • @yariplus really nice 👍

  • @baris Thank you!

  • Added several icons to the status with dropdowns for mods and plugins on the server.

    Will be adding Legacy server support soon as well.

  • The newest version (0.2.0) has quite a few improvements:

    Server settings are now configured in the Installed Plugins page, while the display options are on the widget config.

    Added legacy server compatibility, simply check the "Is Legacy?" box in the server settings page.

    Server query data is now stored on the database and updated every minute instead of every page load.

    Widget boxes should now blend with the current theme styles, and text is aligned much better.

    Widget boxes are aligned properly on different viewports and when stacked.

    Fixed a few errors if query was offline, but server ping was successful.

  • (0.2.5 Changes)

    Two new widgets. Online Players Graph and Top Players List.

    New per widget color customization options. (with colorpicker)

    Many bugfixes, including one major one that could prevent installation.

  • @yariplus can you add a map widget? Maybe something based on Dynmap Forge?

  • @pitaj Depends.

    Dynmap forge/bukkit integration is fairly easy, even easier if it's on the same machine. I'll probably add that at some point, but if I just made widgets that communicate with dynmap forge/bukkit, it wouldn't be much different than just adding a static page with an <iframe>. (I've seen many sites doing this, and it works well)

    However, my goal is to write widgets without the use of server plugins or mods, which can be more difficult. The best way I can think of would be to write a Node.js port of dynmap, and add it as a dependency. I'll look into how difficult this may or may not be.

  • How did i miss this!

    Nice plugin!

    Also, is this compatible with v0.5.x?

  • @Scuzz Thanks!

    @Scuzz said:

    Also, is this compatible with v0.5.x?

    I'm not sure, I designed it with 0.6.0. If it's something you're interested in, it shouldn't be too much trouble for me to back-port it.

  • @Scuzz Here you go

    sudo npm install git://github.com/yariplus/nodebb-widget-minecraft-essentials.git#v0.5.x
    
  • @yariplus We are currently on 0.5.x as we are waiting on an upgrade for one of the main plugins we use.

    Thanks for the extra work, we will be using this asap!


  • seems to mess up when on mobile.

  • @Scuzz Shoot, working on a fix.

    This is actually two problems, the first one is easy, the width of the widget just needs to be 12. But the other problem is that I'm creating my own container, assuming that the user isn't going to use their own widget container, which is a bad assumption on my part. They should be the right size/alignment whether you are using a widget container or not.

  • @Scuzz pull the latest master branch

    sudo npm install git://github.com/yariplus/nodebb-widget-minecraft-essentials.git
    

    I tested it on it on a android and ios, 0.5.0 and 0.6.0

  • @yariplus I noticed it had its on container but that did interfere with my other widgets so i had to put it in its own.

    Thanks for the update!

    Edit- Looks good now!

  • Saying that, I have seen a lot of errors in my log

    { [MongoError: Btree::insert: key too large to index, failing bitbangers.objects.$_key_1_value_-1 1051 { : "MCWES1onlinePlayers", : "{"onlinePlayers":["0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","1","1","1","1","1","1","1","0","0","0","0","0","0","1"],"time":["10..." }]
      name: 'MongoError',
      code: 17280,
      err: 'Btree::insert: key too large to index, failing bitbangers.objects.$_key_
    

    Also, When this plugin is enabled I get issues where my other widgets do not load. I have to click on the logo to get a refresh and then the widgets load.

    mismatched anonymous define() module
    

    Is reported in java console.

  • @Scuzz Thanks for reporting the errors.

    The second one was a problem with the way I was importing chart.js, and should be fixed in the latest commit.

    I think the first one is a string formatting error, I'll try formatting the string better.

  • Oh wow. Somehow this went under the radar for me. Nice work 🙂

  • @Scuzz Sorry this took so long, I've been a bit busy.

    > { [MongoError: Btree::insert: key too large to index, failing bitbangers.objects.$_key_1_value_-1 1051 { : "MCWES1onlinePlayers", : "{"onlinePlayers":["0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","1","1","1","1","1","1","1","0","0","0","0","0","0","1"],"time":["10..." }]
    >   name: 'MongoError',
    >   code: 17280,
    >   err: 'Btree::insert: key too large to index, failing bitbangers.objects.$_key_
    

    The latest npm package 0.2.14 or git master branch should fix this issue. Tested in 0.5.7 with mongo.

    I've added a bunch of new features too, I'll be detailing them soon once I get the rest of the bugs worked out.


Suggested Topics