Shortify
Hate the fact that sharing URLs in Minecraft completely sucks? Hate the truncation? Then this plugin will fix all your problems regarding URLs in Minecraft.
This plugin will shorten all URLs present in a chat message and then changes the message to display the shortened links.
As far as I know (from decompiling and testing other plugins like bShortLinks, URL Shorten, and ShortURL), this is one of a few plugins that uses something other than word.startsWith("http://") for URL detection, and so can handle punctuation, multiple URLs, and URLs anywhere in the message properly.
It is fully configurable, and allows you to choose between a large pool of URL shorteners, including bit.ly, is.gd (default) and is the only URL shortening plugin that supports YOURLS. It also allows you to configure how it shortens the link (see config.yml after installation of the JAR).
Automatically shorten URLs:
With advanced multiple-URL support:
It's compiled for JRE6, and should be compatible with all future CraftBukkit versions.
There are several other URL shortening plugins available, but this one is objectively the best because:
- Optimized to not cause chat lag for messages that don't contain URLs
- Essentially lagless
- Does not require any external dependencies
- Can shorten a URL in ANY position in the message
- Has full REGEX detection to perfectly detect URLs, including advanced punctuation handling
- Allows you to choose between many URL shorteners
- Lets you configure to only shorten URLs above a specific length
- 100% compatible with BukkitForge and MCPC+
Here is a basic configuration description.
Here is the archive of stable versions (from latest to oldest).
Source on Github: https://github.com/vemacs/Shortify
Installation:
Simply download the jar to your /plugins folder, and then restart or reload your server.
Configuration:
See Shortify/config.yml for more info. Shortify should work out of the box, but if you want to use another service, change the config.
Please post feedback and suggestions!
Development builds of this project can be acquired at the provided continuous integration server. These builds have not been approved by the BukkitDev staff. Use them at your own risk.
@SXRWahrheit
We're using the preferred updater from Bukkit, but I could possibly adapt an async implementation.
@ShakyTom
goo.gl's API seems to have broken for some reason. I'm looking into it.
@gbww
That's being worked on for the next release. Default will probably be to underline links.
The update checker for this takes quite a while, can you speed it up or do it async?
I always seem to get 400 errors when using goo.gl
I have setup an API key so can't see what could be wrong?
It would be great if there were an option to highlight the links (change their color). Players don't seem to understand that you can click on links in the Minecraft client unless they're colored blue.
vemacs: Thanks, managed it to hardcode it into MonsterIRC. And so far it works :)
https://github.com/dewick/MonsterIRC/commit/ee32f779eac2e0e56d79b6ce253d4648ca86b54e
@dickwick
That doesn't seem to be possible without modifying the MonsterIRC plugin. You could potentially add some Shortify classes to MonsterIRC, and modify sendMessageToGame (https://github.com/Monstercraft/MonsterIRC/blob/master/src/main/java/org/monstercraft/irc/ircplugin/IRC.java, line 200) to use those. Since the Bukkit API doesn't allow direct broadcast event interception, it'll have to be on their side, using our parsing classes.
Wow, this is amazing! Thanks for this. Is possible to shorten links going FROM IRC to game? We are using MonsterIRC (https://github.com/Monstercraft/MonsterIRC) and I would love to see IRC links being shortened in game chat.
@tuxed
Ah. Ok.
@ryan_the_leach
It would help if you filed in our github repository's bug tracker instead if you wanted to change the priority to be lower.
This plugin has out-of-the-box permissions but can be changed.
if dropped into the plugin directory and the config set up, will this plugin work without permissions being set up?
if yes, then it would appear that this plugin isn't compatible with mchat.
is there any chance of lowering the event priority so links get shortened before mchat gets to format the message?
@Zachary_DuBois
This would overly complicate the plugin. Keep in mind we support more than YOURLS and Bukkit.
If I had more time to dedicate to Minecraft plugin development, I'd likely write a title plugin, but at the moment I am restricted with regards to time due to other hobbies (learning C#).
You should add the ability to a show the title generated by YOURLs after it is shortened. Ex:
Please add this in! This would be awesome!
Definitely Love This. I have my own YOURLs and set this up with that and my YOURLs installation has a plugin that denies a URL that is on the worlds top 3 domain blacklists and checks Google Safe Search before shortening. Freaken love this :D
@seriosbrad
That will definitely be in the next release.
This plugin + my own domain + yourls = the best. Thanks!
It would be super sweet if we could specify a color for new links, as a sort of link highligher. :)
@HammyHavoc
This plugin does not support the branded bit.ly domains, nor per-user shortener, but you can set up yourls for a server-specific short domain. I feel that adding per-user shorteners would just make the plugin far more complex.
@tuxed
Does this mean that for example, only a specific user would have automatically shortened URLs? I just launched my ham.my URL shortener through bit.ly. Another admin also has their own URL shortener, would it be possible to update the plugin to add custom URL shortening per user so I have ham.my, example has ex.am? There's another admin planning to buy a short domain if this can be made possible.
@Bashhhh
There are permission nodes: assign shortify.shorten.
Add permission nodes, should be nice!
Thhis is awesome