[nodebb-plugin-minecraft-integration] Minecraft Integration!
-
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.
-
@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.
-
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.
-
v0.3.0 Changes
New Widgets:
Top Players Graph - Shows a Pie chart with top players and their total recorded play time.
Online Players Grid - Displays a player avatar grid, such as the one on the server status widget, but as it's own separate widget.Changes:
Widgets now respect the Widget Title and Widget Container, and will only override them when nothing is specified. Details:
- The Widget Container Will default to the panel + header container when the Container field is empty.
- The Widget Title Will default to the Server Name when the Title field is empty.
- The Server Name will default to "Server X" if none is specified.
The Widget container is now properly aligned with non-Minecraft Essentials widgets.
Changing the plugin settings no longer requires a restart or even a reload!
MOTD now has several options on where and how to display it.
Now works with 0.5.7 to 0.6.1 using MongoDB. (Should be compatible with any database now, as it uses Settings module for everything and never calls the database directly.)
No longer attempts to query a server if its ping fails.
Configurable ping delay. (Recommend one minute.)
COLORS! You can change colors for most widgets.
Avatar Borders. Select any type of border with a solid color or gradient.
Default settings for new installs should be fixed so as not to crash if the server not at localhost.
Default settings are more intelligent overall, such as not using the default port for queries if a non-default port is selected for pinging.
Most debug icons were removed. They will be returning in the future, but the current implementation was mostly useless.
ACP pages are more mobile-friendly.
Charts and tables now occupy the entire widget container.
Avatar Size can be adjusted.Experimental Stuff:
Added a widget preview pane.
Added Avatar CDN selection. (Only cravater currently works 100%) -
v0.3.4 Changes
New Widget: Dynmap Mini Map
- Displays a mini Dynmap with configurable start location. (World/MapType/Coordinate)
- Can be attached to the Status Widget, or used on its own.
New Feature: Dynmap Modals
- Can add a links to MiniMap or Status widgets to open Dynmap in a fullscreen-ish modal window.
- Full chat capabilities for local servers.
Added option to disable the plugin list.
Added togglable option groups for the Server Status ACP for better organization.
Fixed alignment of a lot of widgets.
Fixed some ajax issues from a recent core update. -
v0.4.0 Changes
This version changes compatibility to 0.7.0 in preparation for upcoming changes.
Fixed some minor issues with multiple charts on the same page.
Fixed an issue where avatars would sometimes push other content incorrectly.
Fixed dropdowns on the status widget sometimes derpping.
Added styling to the parent widget container in the ACP, might be helpful to some that use a lot of widgets like myself.
Added a compass icon replacing the text link to toggle the modal dynmap.Notes:
I'm changing to 0.7.0 compatibility preemptively (Nothing currently requires it.) because I'm developing on 0.7.0 and I cannot guarantee I will be able to make time to test for backwards compatibility going forward. If someone ever desperately needs compatibility message me and I will do it.
I'm working on some major changes including changing the plugin to "nodebb-plugin-minecraft-integration". It will be more intimate with nodebb and feature close coupling of forum data in addition to the widgets. The coupling is optional and will not be on by default. Coupling works alongside a Minecraft-NodeBB server plugin, also by me. (I currently have builds for Bukkit, Bungee, and Sponge servers and plan to support each since the code is very similar.) Forum registration is handled on the Minecraft server itself via player commands. The users' forum name, avatar, and groups will be the same as and actively linked to their Mojang UUID info and can't be changed on the forum except by admins. Minecraft features such as rankings, leaderboards, stat pages, PMs, etc.. are pushed to nodebb through the Minecraft plugin even if coupling is turned off and updated real-time with sockets.
nodebb-plugin-minecraft-integration is still a ways off but I thought I would let people know what I'm working on since my updates to MCWidgetEssentials have been few recently.
-
Wow sounds good. Good job so far looking forward to seeing this expanded plugin