Inactive [TP] TravelPortals 2.2.4 [1.2 betas, etc... see bukkitdev]

Discussion in 'Inactive/Unsupported Plugins' started by cppchriscpp, Jan 17, 2011.

  1. Offline

    cppchriscpp

    Current version: 2.2.4

    This project is moving to BukkitDev! Go here!
    The information on this post is no longer being maintained. This topic is here for historical reference. I would strongly prefer if BukkitDev were used over this, so that I can keep communication all in one place.

    2.2 brings a few new features and a ton of bug fixes. Most tickets that were open against the plugin are now closed with this release. Check it out over at BukkitDev!


    So, I was thinking the other day about how long it takes to travel from place to place. I figured that portals to the nether would be pretty cool when they work, (oh hey now they do) but I wanted a quick way to get anywhere. /warp works, but that is just too easy for users. As such, I decided to write my own plugin to do this. One day later, enter TravelPortals.

    [​IMG]

    They're fairly simple to use, though I will admit that I would like a more intuitive interface than using commands. Portals are 3x3, and consist of 6 pieces of obsidian, a door, and a redstone torch for the center. From above, the portal looks like this:
    Code:
    n o n
    o R o
    n D n
    
    o is a stack of two obsidian blocks, D is a door, and R is a redstone torch. n can be any block or air. It does not matter. After you have constructed the frame, place a redstone torch at the bottom. It should tell you that you have created a portal, and fill up with water.
    [​IMG]
    Just add a redstone torch!

    After this, just give the portal a name, and give it the name of another portal for the destination and you're set. As long as the destination portal exists, walking into it will take you straight there. For help in-game, type /portal help.

    Yes, this does work across multiple worlds.

    Using /portal help will list all of the commands in game. The important commands are /portal name, /portal warp, /portal list, and /portal hide.

    Here is a video explaining exactly how to make them, provided by MinecraftZero.

    Old Change Log (open)

    New changes will be shown on the BukkitDev project. This is no longer maintained.
    Recent Changes:
    1.5_1
    - Fixed a small world loading issue. If you ever had issues with multiworld worlds not loading right, this build is for you!

    1.5
    - moved TravelPortals.ser to the data folder (finally)
    - also moved travelportals.txt to data folder
    - more intuitive backup system that should remedy any problems with saves
    -- new configuration variable; lets you define how many backups of the portals to keep. This should make recovery easy if anything ever goes wrong.
    - lots of code fixes - if anyone saw all of the misuse of static in the plugin, it's fixed!
    - A minor typo that may not have even been in a released version of the plugin
    - Gives a user feedback when just using /portal.
    Note: Another build may be released in the coming days, but it will have no new functional updates. I just want to work on the documentation a bit; getting a functional release out seemed more important than this.

    1.4_3
    - Cooldown time is now variable. The config option is "cooldown" and the default has been changed to 8.
    1.4_2
    - Made hidden portal destinations show up as such.
    - Fixed a small issue with the included config file. Replace or repair yours if you want both door types to work right. The second instance of door needs to be door2.
    1.4_1
    - Permissions fix because I goofed up something minor. If you don't use permissions, don't worry about this one.
    1.4
    - Fix for portals not always triggering in recent versions.
    - /portal info now shows info about nearby portals, or those named. (Permission node: travelportals.command.info)
    - /portal deactivate [name] will deactivate a portal given its name. The physical portal will be untouched, but all data related to it will be deleted. This is op only without permissions, and should only be used for cleanup. (Permission node: travelportals.command.deactivate)
    - /portal export Will export all portals to a text file. The format is: x,y,z,name,destination. There is a new configuration option that will automate this process whenever a portal is made or destroyed.
    - /portal list is now paginated and shows portal destinations. This looks indescribably better than the old version.
    - Support for metal doors is now on by default. There is now a second configuration option for doors - both block types can be used to make a portal. If you do not want this functionality, set the second door type to be the same as your first door type, as laid out in the comments in the new configuration file.
    - Minor changes to the save system; whenever TravelPortals.ser is saved, the older version is moved to TravelPortals_ser.bak, and the new one takes its place. This might help with the random deletions one user referred to. There is also more debugging information available if something happens to go wrong.
    - Migration to the BLOCK_DESTROY hook; I figured this would trigger when a block was destroyed by anything. WRONG. It is more optimal than the alternative, however.
    - Various bug fixes, code cleanup, and user output cleanup.
    1.3_2
    - onCommand fix.
    1.3_1
    - Block damage fix. (To developers wondering, org.bukkit.block.BlockDamageLevel.BROKEN has become org.bukkit.block.BlockDamageLevel.STOPPED. Your code will compile fine but blocks will not break right.)
    1.3
    - Configuration file support! (plugins/TravelPortals/config.yml)
    -- Customize the types of blocks used to construct the portal
    - Permissions support (Thanks to Cecer)
    - Minor bug fixes.
    1.2 (and its derivatives)
    - Multiworld support!
    - Various bug fixes.


    Download:
    Latest Version: Download

    If you want help with this plugin, please provide the following information about your server setup. It will help me figure out what is wrong, and what you or I can do about it. Your failure to include this information in support requests may result in your post being ignored.

    Help Requests (open)

    I receive a good amount of requests for support with this plugin. Some of them are better than others; if you do not want to be part of the second category, I will need some information about your server, and how it is set up. Simply telling me "it doesn't work" does not tell me anything. I run the most recent version of this on my own server with around 60 users; I'm pretty sure it is capable of working in at least some settings.

    Please provide as much of this information as you can reasonably find. If I detail how to get it, I want you to do that!
    - an EXTREMELY detailed description of the problem (Don't spare any words; I don't mind reading)
    - Any errors shown in the console
    - Any errors shown to the client
    - All of the information from /debug info and /plugins
    - Server's CraftBukkit build (go to the console and type /version; provide that.)
    - Any changes in your setup that preceeded the errors
    - Any other details that could be relevant.


    Source code is in the dev.bukkit git repository!

    Please report any bugs via email, or here.

    Enjoy!
     
    vrox, kahlilnc, Wind and 2 others like this.
  2. Hey I'm having a problem where I have to restart the server to create a portal. The first one I make works just fine, but if I try to make a second one, it just doesn't do anything. Build 498
     
  3. Offline

    cppchriscpp

    What operating system? What messages are there in the console? What version of the plugin? Are there errors during startup? Stop? Are you using all default values for the config? Have you tried the most recent recommended build? (493) When I have a few minutes I'll create a recommended method of reporting issues. If you can provide any more details beyond this, please do. Thank you.
     
  4. Offline

    davr

    I have travel portals 1.32 installed on the latest recommended bukkit release. It works great...except there's a 50/50 chance of the portals actually triggering, and I have to go in and out of the portal multiple times before it actually activates and takes me to the destination. I figure it must be this plugin, since I also have the Nether plugin installed, and its portals work 100% of the time.
     
  5. Offline

    PopeUrban

    Oddly enough, after a few more restores from the backup, it stopped killing my travelportals.ser.

    I do still have the issue everyone does with the portals being kinda buggy about actually triggering
     
  6. Offline

    cppchriscpp

    Okay, okay. six or seven people have mentioned the randomly not triggering bug, including myself. I get it! I'll look into it as soon as I can.
     
  7. Windows, none, the latest, no, no, yes, and yeah. Sorry I typo'd with 498. I meant 493.
     
  8. Offline

    cherryghost

    Randomly not triggering here too. And loading it with the latest Essentials breaks the essentials plugins
     
  9. Offline

    TheDarkness73

    So, when I try to get this mod working, all the server log comes up with is this, and the mod doesnt work. also, I am using the latest build, 493:

    Code:
    2011-03-09 13:56:27 [SEVERE] PLAYER_COMMAND loading TravelPortals v1.31 (Is it up to date?)
    java.lang.NoSuchFieldError: PLAYER_COMMAND
    at com.bukkit.cppchriscpp.TravelPortals.TravelPortals.onEnable(TravelPortals.java:125)
    at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:118)
    at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:414)
    at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:187)
    at org.bukkit.craftbukkit.CraftServer.loadPlugin(CraftServer.java:83)
    at org.bukkit.craftbukkit.CraftServer.loadPlugins(CraftServer.java:61)
    at org.bukkit.craftbukkit.CraftServer.reload(CraftServer.java:205)
    at org.bukkit.command.SimpleCommandMap$ReloadCommand.execute(SimpleCommandMap.java:196)
    at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:80)
    at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:183)
    at net.minecraft.server.NetServerHandler.c(NetServerHandler.java:619)
    at net.minecraft.server.NetServerHandler.chat(NetServerHandler.java:582)
    at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:576)
    at net.minecraft.server.Packet3Chat.a(SourceFile:24)
    at net.minecraft.server.NetworkManager.a(SourceFile:230)
    at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:75)
    at net.minecraft.server.NetworkListenThread.a(SourceFile:100)
    at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:357)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:272)
    at net.minecraft.server.ThreadServerApplication.run(SourceFile:366)
    2011-03-09 13:56:27 [WARNING] Can't keep up! Did the system time change, or is the server overloaded?
     
  10. Offline

    cppchriscpp

    So update to the latest version. 1.3_1 has been out of date for quite a while.

    And to the person before him, yeah, it's a known issue. It's kind of been mentioned eight times now.

    As for the essentials thing, essentials break so many plugins; I'm not even going to try to solve that problem. Sorry, you're going to have to choose one.

    UPDATE: So apparently a new kinda-urgent build of bukkit/craftbukkit just came out - unfortunately I have absolutely zero time to update for any changes right now. It seems to work fine from a quick test; if anything is broken beyond what is already known let me know. I won't be able to update as soon as I'd like to.
     
  11. Offline

    Fireside

    Hey cppchriscpp, thanks for all the effort you have put into this. We've been enjoying your travelportals on my server for some time and they are awesome.
    For the sake of stability and player happiness I run my server a safe distance from the bleeding edge, so we are back here on CB440 for now.
    But I'm really glad your still putting your available time into this plugin, because I would hate to go without it on future builds.

    If you get bored of fixing things and feel like adding something to the system. I would put in a big word for steel doors as an option.. Redstone gate locking and easy one way gates with a pressure plate would be cool.

    Cheers,
    Fireside.
     
  12. Offline

    cherryghost

    I'm still waiting for a donate button [​IMG]
     
  13. Offline

    cppchriscpp

    Well as it stands, you can set which kind of door you want to use in the config file, unless I am mistaken. However, this probably isn't quite what you want, and in retrospect was a dumb way to do things. I guess I could do that pretty easily given the time. The way I want to do it is to add two options to the config file to replace the doortype variable given now -- one for whether to support wooden doors and one for whether to support iron doors. However, with the way I've written the plugin, this doesn't actually make all that much sense.

    What I'll probably do, given the time, is make a secondary option for the door type, and allow the user to set both. By default, one will be the type for a wooden door, and one will be the type for an iron door. If this is not the desired behavior, users can simply set both of them to be the same type. I'll probably toss a comment in to be sure people realize this is an option.

    Anyway the issue is time, and I cannot promise when this will happen. The bugfixes will obviously be of a higher priority, and I do not currently have time for either. Anyway I need to be elsewhere in a few minutes so I'll have to cut this post a tad short; hope this is the answer you were looking for though!

    Edit: Just a warning, this will make it very possible to make drowning traps with the default portals.
     
  14. /agree. Travelportals + LWC = Hilarious pranks
     
  15. Offline

    cppchriscpp

    A MASSIVE update has just been released. This is what happens when I suddenly get a day full of free time to devote to this.

    Here's the change log from the first post:

    Version 1.4:
    - Fix for portals not always triggering in recent versions.
    - /portal info now shows info about nearby portals, or those named. (Permission node: travelportals.command.info)
    - /portal deactivate [name] will deactivate a portal given its name. The physical portal will be untouched, but all data related to it will be deleted. This is op only without permissions, and should only be used for cleanup. (Permission node: travelportals.command.deactivate)
    - /portal export Will export all portals to a text file. The format is: x,y,z,name,destination. There is a new configuration option that will automate this process whenever a portal is made or destroyed.
    - /portal list is now paginated and shows portal destinations. This looks indescribably better than the old version.
    - Support for metal doors is now on by default. There is now a second configuration option for doors - both block types can be used to make a portal. If you do not want this functionality, set the second door type to be the same as your first door type, as laid out in the comments in the new configuration file.
    - Minor changes to the save system; whenever TravelPortals.ser is saved, the older version is moved to TravelPortals_ser.bak, and the new one takes its place. This might help with the random deletions one user referred to. There is also more debugging information available if something happens to go wrong.
    - Migration to the BLOCK_DESTROY hook; I figured this would trigger when a block was destroyed by anything. WRONG. It is more optimal than the alternative, however.
    - Various bug fixes, code cleanup, and user output cleanup.

    I strongly suggest updating to this version when you get the chance. It has a bunch of updates I've said I'd look into throughout the life of this project, and cleans up a bunch of the things sent to users.
     
  16. Hey,

    really great Update Portals now work perfectly every time.
    BUT with your change in the BLOCK_DESTROY handling all users need to habe TravelPortals.portal.destroy in order to destroy any blocks.

    I tested it with Groupmanager 1.0-alpha3 and had to try quite a while until i narrowed down the permission which denied my user block destroy rights.

    Thanks!
     
  17. Offline

    PopeUrban

    very nice :)

    I had an Idea on TNT:

    It's not perfect, but it *might* theoretically be a workaround to throw an event when a portal is used in the playerlistener that verifies integrity before processing the warp and teleporting the player.

    If integrity fails, then the portal is destroyed. Broadcast to anything within N blocks of the portal a message that the unstable portal self destructed, and wipe it. Fun alternate option... unstable portal explodes before it's wiped from the DB :)

    This would be a lighter CPU cycle option than implementing the scheduler to listen to what could potentially be a very LONG list of portals, as it would only fire the check when it's relevant. As in when the portal is being used. Additionally, if the SAME event verifies water, then it could also handle the issue of bucketing out the water. You could then tie that to an IF, tie the IF to your config, and allow the end user to decide if they want portals to verify or not, as I know a lot of your users like the option of making stealth portals, one ways, etc.

    I looked over the sources, but your algorithms for the portal structure are a bit much to comprehend at a glance to try and implement this myself, however I thought the general theory may be helpful. I feel obligated as I referenced you YAML implementation to get the configs working in Thermostat, so I wanted to give a little back :)
     
  18. Offline

    cppchriscpp

    Wow, whoops. That was kind of a big bug. I've released 1.4_1 to remedy this -- grab it from the same link and it should solve this problem. Sorry for all of the confusion on that - I stuck the permissions check in the wrong place. Those details made it really easy to find my mistake though. Thanks for the heads up.

    That's an excellent idea - I'll see if I can find some time for that later in the week. Indeed, the theory is helpful, and I hadn't even thought of using that as a fix.
     
  19. Hey.
    First of all gorgeous plugin.
    But I would like to set a Range for a Portal, so that a warp won't work if the distance between the start and the traget portal is to big. Is that allready possible? If not could you implemtet somthing like that?
     
  20. Offline

    cppchriscpp

    Not currently there, and I don't intend to add any functionality like that. If I see the request a bunch more times, maybe. I don't like adding extra complexity when it is unnecessary.
     
  21. Offline

    McAron

    Thx it's work great!
     
  22. Offline

    Josch

    With cb 531 people can't destroy blocks when TravelPortals is active.
     
  23. Offline

    cppchriscpp

    Download 1.4_1, as I said a few posts above.
     
  24. Offline

    KazukiMutou

    I'd like to report a bug. Note that TravelPortals still functions normally for me except for this bug. The problem is that whenever I create a portal that's pretty far from spawn (like a good 5 minutes at full speed with a cart), it doesn't work. I create the portal the exact same way but it doesn't activate (water doesn't fill and portal is not being created). However, when I go back close to spawn and create a portal there, it just works. No changes, nothing. Any idea what the issue might be?

    Some info:

    Craftbukkit build 527
    TravelPortals 1.4_1.
    Several other plugins which I don't think are relevant because it's not like TravelPortals doesn't function at all.
     
  25. Offline

    PopeUrban

    FYI, your given door variables in the config both fill door.

    I had to pop upen your source to get double door types working.

    The config.yml in the zip reads:

    Code:
    
    # The type of block used for the door. Default: 64
    door: 64
    
    # A second type of block that can be used for the door. Default: 71
    # This makes it so users can use iron doors too! If you do not want this,
    # change this value to 64. (Or whatever you are using for your only door type.)
    door: 64
    
    # The name of the type of block used for the door. Default: door
    doorname: door
    
    That second door block needs to be door2 for your code to work. Easy edit, but the given config doesn't work out of the box with they missing 2, as both fill door, and thus the portals only work with the second door type in the list!

    Also, the new list display looks great! However, the destination fields will display portals set to hidden.

    Seems to me that for a hidden portal it should simply display a ?

    If Public and Private (let's use these names for the portals) are in a state of:

    Public: Listed
    Private: Unlisted

    Then /portal list would read

    Public -> ?

    This allows users using permissions to set up un-snoopable portals by disallowing info for the destination.

    Thus, you can have a portal that links to an unlisted one, that IS public, without allowing other users to directly link to the unlisted portal. It's a small thing, but it just seems that unlisted names should always be unlisted, even if they're linked to a listed portal.
     
  26. Offline

    cppchriscpp

    Not really; I've had that happen once or twice ever. Restarting the server seems to fix it. I don't really think anything in my code could be causing that; I've just been assuming it's some anomaly with bukkit. If it were consistent, then maybe I'd have an idea -- maybe I need to use larger structs to store my locations. Anyway let me know if that's the fix when you get a safe time to restart.

    Fixed both of these issues and also updated the export function to actually show whether or not the portals are hidden. This is now the last parameter. You're right; hidden portals should not be listed on either side.

    Thanks for the heads up on the fixes.
     
  27. Offline

    woodzy

    plugin maker, can u add something to this plugin? u know how the signs system workes on startgates can u do something like that maby? insted of useing the chat system?
     
  28. Offline

    cppchriscpp

    No. This has been discussed before.
     
  29. Offline

    woodzy

    how come ;(

     
  30. Offline

    cppchriscpp

    I would have thought the part where I said this has been discussed before would have been a good enough hint for you to look at posts that had already been made. As I said the last time or two this has been asked, I do not want to change the entirety of this plugin works. Signs would be even more clunky than the current setup, and in addition they would require a lot more coding that I do not care to do. And finally, as I have stated at least three times, THIS IS NOT STARGATE. If you want that plugin, use it.

    If you want to see prior discussion of this, I believe it's between pages one and two, though it has come up again since then.

    Additionally, it would be really nice if you made at least half of an attempt to use proper spelling and grammar. That first post took me a few tries to read correctly.
     
  31. Offline

    Camren

    Great Plugin! I love the feature where you don't have to "define" the regions as with StarGate, and using WorldEdit. WorldEdit is being a pain and wont let me /define. Building the portal itself and linking it is great!! I love it!! (so far :p)

    Also, I just want to let you guys know that this is how the portal is supposed to be set up, if you're having any probs...

    Front View:

    [air][obsidian][air]
    [obsidian][wood][obsidian]
    [obsidian][wood][obsidian]
    [grass][grass][grass]

    With the Blank Blocks being Air, the Black being Obsidian, the wood being the door, and the Grass being ground, which can be replaced or used with either Grass or Dirt. Also, if your having problems, make sure
    1) You put the door first, before the Redstone Torch. I found that using the /give namehere command in Minecraft works for me when I used the "On-State" version of the light. Maybe that's part of your problems. I'm not entirely sure if the Off-State version doesn't work, but I just used the On- and it works perfectly ;)

    2) That from a birds eye view, it should look like this:
    [obsidian][obsidian][obsidian]
    [wood]

    ^ The door should be on the block IN-FRONT of the obsidian. That means you will have to go behind the portal and place it in the block in-front of the portal. This will make the door on the right, when you look at it from the front.

    Read on the first page. He clearly stated that he's not going to. And if you want StarGates, go use it. Also, while your at it, go learn how to spell, lol.

    Hope I solved some problems here!!

    Thanks again for the plugin, great job!!

    -Cam
     

Share This Page