myUltraWarps
This very efficient warp plugin has so many features that your head may just implode, and with THE FEATURE MATCH GUARUNTEE, if you find a warp-related feature that this plugin doesn't have, just tell me and I'll add it to the future features list! It's that easy!
My goal is to give you a warping plugin to ensure that you never need any other warping plugin ever again. With this plugin, you can do some much more than just warp. You can customize the messages for each warp that appear when someone warps to it or tries to and doesn't have permission. I'm a perfectionist and I use this plugin on my own Minecraft server, so you can be assured that this plugin works and it works well.
The full feature, command, permissions, and future features lists are linked to this page below. They're very long, but don't be intimidated. You don't have to read all of it. :P
features
^Click me to see all the cool features myUltraWarps has to offer. Remember: you don't have to read everything. It's a long, long list. :)
commands
^Click me to see all the cool commands you can use!
permissions
^Click me to see all the permission nodes this plugin has. Note that we have myultrawarps.user and myultrawarps.admin for easy setup!
the config.txt
^Click me to get help with the config.txt. It's not as complicated as it looks!
known bugs
Though you can teleport with vehicles, you can't teleport between worlds yet. That's CraftBukkit's fault. I would love it if you could help me convince CraftBukkit to fix this stupid bug! I have not been able to find any workarounds; I have tried everything and everything else. I tried reporting the bug, but they have been persistent in ignoring me for weeks now. They even marked my first report as "resolved" when it wasn't and I had to remake it. We need to force them to listen to us! Please help by going here, making an account, and posting a comment! I would really appreciate it!
future features
^There are even more features yet to come listed here!
source code
As per some users' request, I have published the full source code for myUltraWarps on GitHub. Click the heading above to go see it and/or download it for free. If you're one of those people who hates waiting for Bukkit to approve the newest version of myUltraWarps (and I don't blame you if you are), you can download the source code that will be updated immediately with every new released version, compile it using Eclipse or some other J.D.K., and replace the stuff inside the myUltraWarps.jar with the new source code. (Remember to update the plugin.yml, too!)
other plugins
myGuardDog
- Griefers can go find a different server to grief on.
myPluginWiki
- This is like the Minecraft Bukkit developer's Library of Congress.
donations
^I run a Minecraft server myself and it costs a good amount of money each month to have it hosted, so if you love this plugin, you can click the link above and donate to show your gratitude! Every cent helps!
my server
^I know that most of you here are Bukkit server admins yourselves, so you probably won't be interested in this, but I have a server. If you're interested, I put a link to our website here. Our server is hosted by FragNet and is up 24/7. It's a basic Survival freebuild server with a few basic plugin modifications. Building is vanilla, but everyone can warp freely (using myUltraWarps). I have written almost half of the plugins on the server and we're moving toward having all the plugins written by me. There are some plugins of mine on that server that aren't even on Bukkit yet. If you feel like visiting, please do! We love new people!
comments
If you have any opinions, ideas for new features, bugs to report, or anything else, pleeeeeeeeeeeeeeeeeease post a comment below! Also, if you feel inclined to be harsh, I won't take it personally. Feel free.
Have fun ultra-warping!
@REALDrummer
Sry if my explanations aren't clear. What i mean is that lots of server use some kind of multiverse plugin (set spawn is integrated in most of them) and I think it would be great if you can use /spawn to get to the worlds spawn.
But your /set spawn is great for server who don't have a multiverse plugin so I think you should add both options to your plugin. If you don't set a spawn the bukkit spawn is used otherwise your spawn point is used.
And for new players who join for the fist time you can add a command like /set mainspawn or firstspawn where only the players spawn if they join for the first time.
@MarioG1 I was kind of rushing to get the update before I left for ten days, so I guess I forgot to mention some stuff.
For the configuration, you have to answer the questions with either a "Yes." or a "No." with a space between the question mark and the answer. It's very specific and I forgot to mention that. Sorry. I really need to make that more lenient.
I don't quite understand what you're saying about /set spawn. /set spawn only handles the main spawn. It's only concerned with people who join the server for the first time. Therefore, I don't quite see how having multiple worlds changes anything. I've never encountered a server where each new player didn't spawn in the same spot the first time they join the server.
However, I guess the warning messages that appear when people spawn in and you haven't set a spawn point with this plugin are just silly. I'll get rid of them and make it just default to the Bukkit spawn point. That will also allow you to change the spawn point with other plugins if you feel the need, but it's kind of a waste of computing power to have another plugin that does /set spawn when this one already does it. The ultimate goal of this plugin is to eliminate the need for any other warp-related plugins other than this, but if you feel the need, the next version will read the Bukkit spawn point.
Your config file is a little bit buggy and strange :):
The two question get reset to default after every server restart.
I think it would be easier to understand if you replace the two question with
enablegroupesupport: ture/fale
usepermissions: ture/fals
Also i think it would be better if /spawn reads the spawn from bukkit and teleports you to the worlds spawn (useful if you have more than on world).
EDIT:
Or make it configurable so that admins that already have a plug to change the world's spawn can manage it that you plugin reads the worlds spawn and all others can use your plugin to set a new spawn.
Thx. for this great plugin.
ERROR! ERROR! If you don't have a Vault-compatible permissions file, myUltraWarps gets an error when you try to create a warp! Sorry, everyone! It was a very tiny mistake. I fixed it in v4.1, which I've already uploaded. Sorry again. Thanks, KennedyBushnell, for telling me about the problem! That was a serious oversight. I will try my best not to let it happen in the future.
myUltraWarps v4 is finally here! Phew! What an update! There are tons of new features and bug fixes and addons and all sorts of other stuff. Also, in case you haven't read yet, you need Vault now! Get Vault! Anyway, if you have any question or comments, I will be gone for about two weeks to a place with no WiFi. My phone has Internet, but I won't be able to upload a new version of myUltraWarps until I'm back. Enjoy v4!
Phew. I've made a huge breakthrough of the configurations. I was getting error after error after error trying to get this stuff to work. Then Java started reading some of my statements backward for some reason. It was truly bizarre. I've never seen anything like it. It took me days to get past the last error. It was like the final boss on a really hard game. Anyway, the configurations are near perfect. I'm doing final testing now. /warp all is working just fine and it will be very, very easy to make /send since it does the exact same thing as /warp all but for only one person.
I hope to finish this plugin before the end of the summer. Every time I think of a new feature, I write it down. I have a lot planned. If you have any ideas for future features that aren't on the list, please leave a comment! I would be happy to look into it. Every feature I've thought up is in the plugin or planned. I have not rejected any ideas yet. Thanks again.
@MarioG1
Oops. Yes, there are permissions for /link and /unlink. They are covered by myultrawarps.user, but they also have separate nodes called myultrawarps.link and myultrawarps.unlink. They also have nyultrawarps.link.other and myultrawarps.unlink.other permissions. Sorry. I forgot to put those in the description. I'm thinking of simplifying the main page and making other pages for more specific stuff like a complete feature list, permissions list, command list, and such, but for now, I'll just add those nodes in the list where they should be. Thanks. I missed that.
Vault is giving me problems that seem to be coming from Vault itself right now, so that's kind of my first priority, but I am still trying to figure out a way to not override /list. I'm just having a hard time figuring out how. If you have any ideas, please tell me. I'll keep thinking about it, though.
I know that nobody uses /list i only use it sometimes in the server console to see how many people are online at the moment.
Another Question:
Are there permissions for /link and /unlink because its easy to create traps with these commands?
Thx tor this great plugin. I uses Niftywarp in former times but i got some problems with it some time ago.
I'm having real problems with the group and individual settings. Sorry it's taking so long. Rest assured I'm trying very hard to fix these issues. I was planning on releasing the next version of myUltraWarps when Minecraft 1.3 comes out, but they just announced a release date for 1.3...and it's not until August 1. So, I'm going to release another version between now and August 1. I'm going to release it as soon as I get these configuration bugs worked out. It may be a while yet.
Also, I've decided to use Vault for permissions and economy interactions. This means two things: (1) You can change group settings for permissions-based groups and you don't need to use PermissionsBukkit! You can use any permissions plugin supported by Vault...which is just about all of them! (2) It means you will need Vault. Vault is a great plugin that I would suggest you get anyway, of course. Vault is a very simple plugin that allows plugins to access data from other plugins. ...mainly advanced economy and permissions information. You will be able to use myUltraWarps without Vault, but you will not be able to customize settings by permissions groups or pay/reward people when they use a switch warp unless you get Vault.
Have fun ultra-warping!
@MarioG1
In response to the first bug: You're right. I'm sorry about that. I completely forgot that Bukkit even has a /list because it's much easier to just press Tab. Tab displays all the people who are on the server and how good their connection is. I haven't used /list in ages. Thanks for telling me, though. I remember NiftyWArp used the same command, though.../list warps. I wonder how they got around that. I have not yet figured out a way to make the command pass through the plugin and go to others if the parameters are wrong. For example, You can't have one plugin with the command /save the warps and another with /save the world because the command root is the same for both: /save. I'm working on a way to fix that, but I haven't had any luck yet. I'll find a way, though. Thanks for telling me.
In response to the second bug: Yes. I am actually aware of this one. Gaz_Lloyd informed me of it a few comments down. Actually, /warp b will only warp you to the warp "bend" if "bend" was created before "b" was created. It searches through the list in the order that the warps were made and stops at the first match. Sorry about that. However, I have remedied the problem. The fix will be in the next version of the plugin. Sorry about that.
Thanks again for your comment. I appreciate it.
I found 2 bugs:
1.) The plugin /list warp command conflicts with the /list command (bukkit)
2.) If one warps is called b and the other bend for example you can't warp to b you get always warped to bend.
The rest of your plugin works great :)
@MarioG1
I am actually working on that right now. In fact, if all goes well, you'll be able to set different max warps, default warp and no warp messages, and other settings for the entire server, for different PermissionsBukkit groups, or for individuals. You will even be able to give permission to individuals to set their own default messages.
Can u add a limit for max warps per player?
@Gaz_Lloyd
Firstly, thank you so much for telling me. I appreciate you taking the time to leave a comment. Telling me about bugs I missed is a huge help to me.
Secondly, I understand. When it searches for warps, it searches the list in the order that the warps were created. Therefore, if "gaz" was created first, /warp gaz would warp you to "gaz", but if "gazenchant" was made first, then it would find "gazenchant" first. I will change the search algorithm so that it searches as a the full warp name first, then it searches as just the first few letters of a warp name if it doesn't find the warp. Sorry about the confusion. Rest assured that it's an extremely easy fix. I'll have it all better in myUltraWarps v4. Thank you for the comment.
Creating a warp with a name and then using that name as a prefix for another warp breaks it; for example, I have two warps: gaz for my home and, gazenchant for my enchantment table. /warp gaz goes to gazenchant. I would expect it to do with "For player and warp names, you can type even just the first letter and it will search for warps or players with names beginning with that letter!" I suggest giving an exception for if the warp name is given as exact (i.e. /warp g would search but /warp gaz would not as gaz is an entire warp name.
CraftBukkit just released a new version...and myUltraWarps worked perfectly with the brand new version! No update required! The majority of the myUltraWarps code is basic Java, not Bukkit-reliant. Therefore, unless CraftBukkit delivers some extreme renovations, I do not anticipate that this plugin will require an update for quite some time. :)
Commands are so simple now!!! Not only are they not case-sensitive, but for warp and player names, you can type just a few letters or even just one letter and it will search for warps or players with names beginning with that letter or letters! So now, /warp REALDrummer's Wartorn_Desert just became /warp r's w! I suggest using a few more letters, especially if your server has lots of people, but how cool is that?! Plus, I added /to and /from to the ever-expanding list of commands.
@maw_a_timewalker
Thanks for the help, but unfortunately, there are two problems. One: Like I said, the source code they post on GitHub is not the full source code. It's only a portion of it. I need the full source code to modify the CraftBukkit .jar. Two: The plugin works fine without modifying CraftBukkit unless you are in Creative Mode and you walk onto a pressure plate that is linked to a warp. Then the server spams "[player] moved too quickly!" and won't load anything until the player stops moving or relogs. Once again, though, it works fine unless you walk on to a linked pressure plate while in Creative Mode. By the way, jumping/falling onto a linked pressure plate works just fine even in Creative Mode. Yeah. It's weird.
@REALDrummer
you can find the code on there github :P
https://github.com/Bukkit
and you dont need the modify the source code to make your plugin work ...
I have /link, /unlink, and switch-warping all set up! It's perfect!...except that every time you try to warp more than five blocks with switches, CraftBukkit kicks you with the reason that "You moved too quickly! :( (Hacking?)". Okay, CraftBukkit, I admit it: I'm hacking. I obviously misunderstood because I always thought that HACKING WAS THE POINT OF USING CRAFTBUKKIT!! -_- I'm not happy with CraftBukkit right now. I can't even modify the craftbukkit.jar because I need the entire source code for CraftBukkit to do so and the source code they posted online was incomplete. If you have the entire source code for CraftBukkit or you know where to find it, PLEASE leave a comment! I can fix the bug! I know where it is and I know how to fix it. I just can't save my changes because I need the full source code to compile the .class. Please help me help you!