WorldPos - continuity between worlds
WorldPos
About
This plugin simply saves your position whenever you leave a world, this allows the plugin to teleport you back to your previous position when you want to go back to that world. Without this plugin, you would be sent to the spawn (previous position not saved). Also, I promise to keep this plugin updated, whether that means a new Bukkit build or the official Minecraft API.
PLEASE READ MY COMMENT (FIRST PAGE) ON THE NEW VERSION (3.7) BEFORE UPGRADING.
Commands & Permissions
Command | Aliases | Description | Permission Node |
---|---|---|---|
/world [world name] | /worldwarp [world name] | Teleports you to a world and returns you to your last position in that world | WorldPos.world.{world name} OR WorldPos.world.{world name}.others (if a target player is given) |
/worldpos list | /wp list | Lists all loaded worlds on the server | WorldPos.list |
/worldpos back | /wp back | Takes you back to your last position before being teleported | WorldPos.back |
/worldpos | Displays plugin version | None |
All permissions
Title | Description | Permission Node |
---|---|---|
Hostname teleport | Allows access to specified hostname teleport | WorldPos.hostname.{hostname key} |
Portal teleport | Allows players to use a portal to enter specified world | WorldPos.portal.{world name} |
List worlds | Allows players to use /worldpos list | WorldPos.list |
Back | Allows players to use /worldpos back | WorldPos.back |
DOCUMENTATION!
Click on "pages" at the top of this website! Please check if your question is answered there BEFORE asking me directly.
Donations
All of the work I do for Bukkit is done out of my love of the community. I am not paid to do any of this work. Donations help me continue development of these projects and ultimately lead to a better product. I appreciate everyone that donates to me. You can do so by clicking here. Thank you.
Source Code & Jenkins
All source code can be found on my Github repository found here: WorldPos Github Repository Feel free to take code, fork, ect. Credits are appreciated.
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. You can grab the latest developer builds here. Whenever I push a commit to Github (upstream) a new build will be created automatically. However I recommend you stick to builds posted on here on BukkitDev as they are usually more stable.
While upgrading to a newer version PLEASE backup the players folder inside of the WorldPos folder. I cannot be held responsible for any lost data during an upgrade. Please play it safe and backup.
CONVERTER (3.6 => 3.7)
Version 3.7 now supports (and only supports) UUID instead of player names. Upgrading without using the converter will cause players to lose their location data.
Instructions are provided in the .zip file, please read them.
Download: http://ge.tt/4BJuF5o1/v/0?c
Download and run at your own risk. This file and its contents have NOT been verified by Bukkit staff.
Please note, I tried uploading this file this BukkitDev project page to have it verified, but it was rejected due to not being a plugin.
@JeremyPark123999
Huh, I never thought about that happening. What solution would be best? I have the following in mind:
1.) Find the nearest ground block below the player while saving their last position
2.) Find the nearest ground block below the player while teleporting the player to their last position (saved position would technically be in the sky)
3.) Some form of a potion effect
I'm leaning towards option 2. Of course, you would have to toggle this on in the config. The only problem I can think of is if there is lava beneath the player, or cactus, etc, as it would then teleport them on to it. Though, without this they would just fall into it anyways. So I guess that may be a non-issue.
I am getting some complaints from players that log off while in flight. When they get sent to their last location, they can fall down and die. Can you add a way to fix this. Thanks :)
Still no response on getting the test data. I'm not talking about 100 players always on, just if you have had that many unique players ever with a save file. I'll lower that to 50, many people should have that.
That also means I will be the one converting your worldpos player files, if you didn't want to do it yourself.
If any of you guys have 100+ unique players and use worldpos, please send me a PM. To develop the application that will convert player files (legacy) to the new version, I need a "real world" set of data to do it on. Thank you.
Update: the new version (which will be version 4) will use the Universal Unique ID system.
I will be providing a separate plugin which will allow for conversion to the new UUIDs and format of the player files. This is needed because Mojang plans on allowing players to change their name freely in the future (1.8?), and plugins still associating player data with their name are susceptible to being "hacked" (player can change their name to that of an admin or another player). Please know that I intend to do my best in handling this in the best way I possibly can.
Read more about it here: http://forums.bukkit.org/threads/psa-the-switch-to-uuids-potential-plugin-server-breakage.250915/
@Nabakin
A new permissions layout is definitely planned. For the spawn point thing, right now it gets that data directly from Bukkit. I may tap into Multiverse's API, or implement another solution, either way that is a problem and will be fixed somehow.
Everyday I work a little bit on the new version. It's currently spring break so I will have much more time and energy to work on this though.
Still working out the ins and outs of the world group thing. I think I have it figured out. Then I need to work out the best way to setup the commands.
@Mike724
Could you implement separate permissions for those who can go through portals and those who can use the /world and /worldwarp commands? Because right now in order for my players to go through portals they need WorldPos.world.{world name} which also allows access to /world and /worldwarp.
Also when I set the multiverse spawn for a certain world, it doesn't seem like worldpos uses it. When someone new goes through the portal to my spawn they spawn a little to the left and the pitch and yaw aren't accounted for, just set to a preset location strait off into the distance.
I really appreciate all that you've done to make this plugin, I use it everyday and absolutely love it. Thank you.
Just a clarification: The .json files are still extremely easy to modify if you need to. You can just open them in a text editor and change the values without a problem.
Sorry for not updating this in a while. I've been busy with other things as well. I'm taking the votes into consideration. I'm not going to make it a database, it will stay as normal files. I will be changing the .txt files to .json files, though, and will offer a way to convert to the new format. The new format won't make any noticeable difference to the users or server admin, but it will help me out a bit. Also, I plan on doing a little bit of caching to reduce the number of times the hard drive has to be read to and written to.
I created a poll, I would love for you guys to vote.
Thanks!
I'd like input here. I'm working out how WorldPos should store location data for players in the new version. Do you prefer the current (.txt files), a database like MySQL or SQLite, or a better version of the current storage method (caching, json)?
Thank you guys for all of the support! I have taken all of your feature requests into account. I'm working on a rewrite to WorldPos, because I feel the current code is not up to my standards and not as maintainable as it should be. Unfortunately about a week or less ago my SSD/hard drive failed and I had to buy a new one. I just recently got all of my stuff setup again and am beginning the rewrite. Also I've been very busy with my two jobs and school.
Thank you
Great plugin @Mike724 I high recommend it.
I'm looking for 1 additional feature which would make it even greater.
I'd love the ability return to the last world within 2 or more 'groups' of worlds,for example:
**Config**
myworld:
myworld_nether
myworld_the_end
creative_world: []
skyworld:
skyworld_nether
skyworld_lobby
Entering command ///world skyworld// from myworld or creative_world would return me to the last location within the last world of the skyworld group, which may be either skyworld, skyworld_nether or skyworld-lobby.
Keep up the great work.
Just a suggestion: When new players go to my factions world that is setup with worldpos portals they fall to their deaths, because they haven't been to that world. Could you add an event that makes it so when you go through a worldpos portal for the first time, you get teleported to the world's spawn. Thanks.
Just as a reminder guys, I'm working on the new version. However, life and school do come before me working on minecraft plugins. I'm not going to give an ETA because I likely wouldn't be able to stick to it, and I don't want to rush it out and release a less than stellar plugin. Thanks for all the downloads and support! :)
@Mike724
My postion in the players folder seems accurate: Creative,-1467.873713,14.769977,469.63775,-3.0600934,50.3172
It's probably another plugin interfering with it if I'm the only one this is happening to. Thanks!
@PhilMcCrackin
Hmm, with round position set to false, the plugin will round the location to 6 decimal places. That should be more than enough precision to avoid it putting you on top of a wall. Can you open the .txt file of a player this happens to and verify there are six decimal places for all of the numbers? If it's not that maybe another plugin is affecting it
@Mike724
Thank you for such a quick reply. I currently have roundPosition set to false. And nope, I wasn't the one posting about portal support acting unpredictably.
@PhilMcCrackin
Thank you for posting that tip :) I've had to help quite a few people that didn't see my tutorial/documentation on portal support
@PhilMcCrackin
Do you have roundPosition set to true in the config? When that is set to true it will round the x y and z coordinates to the nearest integer which could cause that behavior. Did you also post about portal support acting unpredictably (would sometimes let players drop from y = 300)? I got an email about a comment made that said that, but I don't see it here.
I'm always available on Skype, Google Hangouts, and even AIM if you want to get in contact with me.