[TP][FUN] NetherPortal - Multi World Fast Travel with a challenge v0.6.10 [803]

Discussion in 'Inactive/Unsupported Plugins' started by asdaarg, Mar 5, 2011.

  1. Offline

    asdaarg

    NetherPortal v0.6.11

    New in Version 0.6.11:
    • Added NetherPortal.portal.use permission
    Description

    I always thought things like random tping around that make the game too easy takes away the fun of playing, but in SSP fast travel constrained by 8x ratio rule was fun and reasonable advantage considering that you had to go through the nether a dangerous place to set up portals there, and if you wanted to make the travel safer you'd have to build or dig to make it safe. Unfortunately I have not seen a single plugin that does the following:

    1. Fast travel (8x rule)
    2. Auto portal creation (i.e. when you go through a portal a portal is created at the destination that is linked to it)
    3. Multiworld

    Well this plugin does. But it is also different from other plugins.

    The challenging thing is of course how to match portals. One thing I did not like in SSP was portal hopping, making it possible to easily find caves by digging down in the nether and place a portal there , and travel ultra fast by placing portals where there was solid material on the nether side. One solution to this was creating airpockets and platforms as in NetherGate. While this preserves the 8x rule, it is a bit dangerous to use, since you can destroy things you've built, and alternatively it would make it difficult to program to avoid it.

    The easy solution for me, which also adds a bit of challenge in setting up working portals, is that portals simply do not work if there is not air for the portal to be created in, the portal exits on both sides, and a platform for the portal and you to stand on when you exit it. So the challenge is to find a suitable location for a portal, but you can do it with the aid of a compass which gives a rough indication of the probability of there being a suitable location nearby, the closer the greater. The compass will also give you a guaranteed indication "X" that there is one solid block underneath and 5 air blocks above and one solid block underneath and at least 1 but at most 4 "_". The shape of the "X" indications in the following form:
    Code:
     XX
    XXXX
     XX
    
    will guarantee that a portal can be constructed here, however if you have linked the world to more than 1 other world, readings from another world could interfere and you lose this guarantee, even though it is not likely to fail. Note, the exact size of the shape depends on the ratio between your world and the target world. If you are going to the nether from a normal world with default ratios (1 to 8) the shape is 8 times bigger. Note also that each indication then represent the entire 8x8x8 cube.
    If you are going to a higher or equal scale world, the portal has to be placed so the two bottom middle blocks reside within the two middle blocks of the shape.
    If you are going to a lower scale world, a special portal indication "N" "S" "W" or "E" is needed to guarantee that a portal can be placed, indicating the direction the other bottom middle block of the portal from the block you stand on (which is one of the bottom middle blocks).

    To get any reading at all YOU HAVE TO LINK THE WORLDS using the WORLD LINK or WORLD TARGET commands for a one way link.

    Here is a top down schematic view of all blocks needed on each level of a suitable location for a portal:
    Code:
      S  |  A  |  A  |  A  |  A  |  A
     SSS |  A  | AAA | AAA |  A  |  A
     SSS |  A  | AAA | AAA |  A  |  A
      S  |  A  |  A  |  A  |  A  |  A
    
    y-1    y     y+1   y+2   y+3   y+4
    
    Where S is solid i.e. non air block and A is air block.
    Full features list (open)

    • Portals that simply work, no strange glitches or random suffocations happening. Place a block in front of the portal exit and it will refuse to teleport you.
    • Fast travel (8x rule like in single player, but ratio adjustable)
    • Auto-portal-creation at destination, so you can go back, like in single player
    • Multiworld support - create or import any number of worlds, nether or normal.
    • Permissions/Group manager support (optional)
    • Iconomy support (optional) - set the cost of portal usage
    • The (now optional) challenge to find a suitable location for a portal using compass
    • The option to create portals destructively (air pocket and platform creation)
    • The option to link any portal to any other, one way or two way.
    • Basic safe teleportation commands-adjusting to prevent fall damage and suffocation
    • Eternal night in the nether - good bye blue sky!
    • Worlds can link/target each other to allow fast travel auto portal creation and compass reading
    • Deconstruct portals faster - destroy one block and all will drop.
    • Anti-obsidian farming auto-created portals.
    • Configurable commands
    • And more.. see full list of commands

    Commands (open)

    Code:
    fullsearch <target world>                searches a 400x400 area around you of suitable portal locations to target world
    fullsearch <target world> <size>         same as above but you can specify the area size
    teleport <world>                         teleports you to worldname to the corresponding coordinate
    teleport <world> <x> <y> <z>             teleports you to worldname to specified coordinate
    location                                 lists your corresponding coordinates in each world
    world create <world> <environment>       creates or imports world of type environment (normal or nether)
    world remove <world>                     removes a world (does not delete it)
    world ratio <world name> <ratio>         sets the ratio of the world (nether is 8 by default and normal is 1)
    world center                             centers the world at the spot you stand (0,64,0 by default)
    world list                               lists all loaded worlds
    world link <world1> <world2>             link together 2 worlds (i.e. both target each other)
    world settarget <world1> <world2>        world1 targets world2 - allows fast travel auto created portals and readings from world2.
    world detarget <world1> <world2>         removes world2 from world1's target list
    portal link <portal1> <portal2>          link together 2 portals (i.e. both target each other)
    portal settarget <portal1> <portal2>     portal1 targets portal2 - stepping into portal1 teleports you to portal2
    portal detarget <portal>                 set portal points to null i.e. nowhere
    portal name <portal>                     sets name of portal you last stepped through
    portal punch through to <world>          auto creates a portal in world for the latest entered portal and with air pocket and platform if necessary
    portal list                              lists all portals in current world and their locations and targets worlds and locations
    portal setcost <cost>                    set the iconomy cost of portal you last entered
    teleport adjust                          change configuration of command based teleport to not adjust you on y axis to avoid fall damage or suffocation
    teleport to potral <portal>              teleports you to a named portal.
    world target list                        lists the target worlds of a world
    setspawn                                 moves spawn point to current location
    

    config.txt (open)

    alwayspunchthrough - sets whether to punch through to a target world automatically when you enter the portal
    tpadjust - sets whether teleportation y coordinate is adjusted so you do not take fall damage or suffocate
    respinnormal - respawn in last normal world you were in, when you die in nether
    artificialportal - workaround for portal not teleporting you when it reports the portal block to be air
    cooldown - number of milliseconds it takes for a portal to work again
    compass - the item id of the compass
    noYscale - whether Y scaling (up/down) should be used or not.

    Permissions (open)

    NetherPortal.fullsearch
    NetherPortal.world.remove
    NetherPortal.teleport
    NetherPortal.world.create
    NetherPortal.world.ratio
    NetherPortal.world.center
    NetherPortal.world.list
    NetherPortal.location
    NetherPortal.world.link
    NetherPortal.world.settarget
    NetherPortal.world.detarget
    NetherPortal.portal.setcost
    NetherPortal.portal.link
    NetherPortal.portal.settarget
    NetherPortal.portal.detarget
    NetherPortal.portal.name
    NetherPortal.portal.punch.through.to
    NetherPortal.portal.list
    NetherPortal.portal.use
    NetherPortal.teleport.adjust
    NetherPortal.teleport.to.potral
    NetherPortal.world.target.list
    NetherPortal.setspawn
    NetherPortal.portal.create
    NetherPortal.portal.destroy

    Downloads (open)

    Todo (open)

    • Fix portal not lit on the other side at times (is this happening at all anymore? a bukkit issue that got resolved?)
    Done and will be in next update:

    Changelog (open)

    Changelog:
    Version 0.6.11:
    • Added config option noYscale, is false by default. It removes scaling factor on Y axis.
    Version 0.6.10:
    • Fixed /world remove not being called
    • World remove now removes the world from MC server without needing a restart.
    Version 0.6.9:
    • Added NetherPortal.portal.use permission
    Version 0.6.8:
    • Updated iConomy support to iConomy5
    • Added compass config option for changing the id of the compass
    Version 0.6.7:
    • Fixed inaccurate teleportation when portal exit is on different axis than entrance
    • Fixed portal names not being loaded into lookup table at startup.
    Version 0.6.6:
    • Fixed scrambled portals on reload when there is at least one portal without target
    Version 0.6.5:
    • Removed nag about some old event that i imported
    • Fixed singly linked portals not being loaded correctly
    Version 0.6.4:
    • portals will not break other portals when punching through, they will "angrily spit you out" on autopunchthrough
    • cooldown option for setting how long time til a portal can be used again
    • defaults to ops only when permissions is not present
    • autocreation of config file
    • uses NSCommand now
    Version 0.6.3:
    • bug fixed old portal names remaining after being renamed
    • All portals are now given auto-generated unique names until renamed. No more indistinguishable "null"s
    • Portals can no longer be given a non-unique name
    • Right clicking a portal gives info about it as well as selects it, in the same way walking through it does.
    Version 0.6.2
    • Updated for 617
    • Fixed broken permissions
    • Removed debug messages
    • Added permissions NetherPortal.portal.create and NetherPortal.portal.destroy so you can control who can create and destroy portals
    Version 0.6.1
    • Backward incompatible support for #602 (bukkit api changed so can't help it. You can use the previous version for #556 - nothing else changed)
    Version 0.6
    • Iconomy support: portal setcost <cost> (all portals are free when iconomy is not running) Backward compatible savefile format change to accomodate cost
    • Portals are no longer auto constructed on water, lava or any other player walkable materials
    • Portals now accepts player walkable materials as portal exits (but they will not show on indication still, which only looks for air)
    • Portals are no longer auto constructed in place of active portals (although they can still be constructed on inactive portals)
    • Fixed embarassing bug causing nonsensical indication. It should make a whole lot more sense now.
    • Fixed faulty target location is not safe messages
    • Fixed teleportation to bottom of world when using tpadjust when location is solid.
    • Fixed dropped air blocks on collapse causing client to crash
    Version 0.5.5
    • Teleportation to nonexisting world causes nullpointer exception bug (harmless but pollutes your server log) fixed
    • Portal frame corner blocks drops obsidian blocks on collapse when corner blocks are not obsidian bug fixed
    • Artificial Portal block (the workaround for bukkit portal is air block error) remaining after collapse bug fixed
    • Artificial Portal blocks configurable off by default. Put "artificialportal=true" in config.txt to turn it on.
    Version 0.5.4
    • If you die in the nether you respawn in last normal world you were in. Can be turned off by putting CFGrespinnormal=false in config.txt
    • command setspawn will set the location to current location
    Version 0.5.3
    • Permissions no longer required to have a config file
    Version 0.5.2
    • workaround for portal block said to be air (randomly stops working until server restarted - bukkit issue)
    • debug messages removed
    • fixed portal creation on too high or low altitude
    • fixed linking worlds is being only oneway
    • changed indications of 80000 to X and 70000 to _
    Version 0.5.1
    • Added alwayspunchthrough config option
    Version 0.5
    • Command for Air pocket and platform creation portals for lazy people
    • Command for teleporting to a portal
    • Configuration to adjust command based teleportation target y wise to avoid suffocation or fall damage, default is on, but can be changed in configuration file
    • Command to change the above configuration on the fly
    • Command to list all portals in current world and their locations
    • removing any block of a portal result in the portal to collapse and are thereby removed from list of registered portals
    • A portal that collapses, drops all of it obsidian blocks unless it was autocreated
    • Autocreated portal collapse when untargetted
    • Autocreated portals cannot change target
    Version 0.4
    • Symmetric Portal creation criteria
    • Portal linking feature - link individual portals
    • Configurable commands
    • Commands and permissions changed
    • World linking feature - link worlds rather than all worlds being directly accessible to each
    • worlds not saved when world created or imported fixed along with some other world related commands
    • Somewhat more useful search function for higher ratio to lower ratio worlds
    Version 0.3.2
    • fullsearch no longer teleports you but lists all locations
    • fullsearch allows specification of size and default changed to 400x400
    • proper colouring of text
    • np location displays corresponding locations in all worlds
    • indication no longer displays location
    • indication no longer displays two kinds of it
    Version 0.3.1
    • Save files to keep data on how portals are linked (needed for x8 to x1)
    • x8 to x1 auto portal creation finally working
    Version 0.3
    • workaround for "Player moved wrongly" bug.
    • moon higher up now updating every 2 hours (72 seconds your time) rather than 8
    • More output, less guessing
    • Fixed some permission names
    • Fixed always displaying indication 0 [0,0(0)] before any interaction with a newly loaded
    • Reverted to 8x8x8 rather than 8x1x8 even though it means only 1/8 of the nether is within reach of a 1x1x1 world. Since 8x1x8 makes readings make less sense.
      world
    • Compass starts moving erratically and spin on full indication
    • np tp <world> <x> <y> <z>
    • np fullsearch <target world>
    Version 0.2
    • set ratio fixed.
    • Normal worlds have a default ratio of 1 and nether default 8.
    • Auto-created portals are now lit (apparently problems with it still)
    • Improved long range search giving readings inverse square proportional to manhattan distance
    • Eternal night in the nether - good bye blue sky!
    Version 0.1
    • Initial Release

    Donate (Not necessary but appreciated)
     
    Hrdkr, harakiwi and Maxwolf Goodliffe like this.
  2. Offline

    GayJuice

    is the portal supposed to auto create or is there a create portal command line?
     
  3. Offline

    asdaarg

    You build the portals yourself like in single player, but as you enter it, it will autocreate a portal on the other side (like in single player) but only if it is a suitable location (unlike in single player). You can also force create it making it destroy blocks and/or place blocks as a platform to stand on, using a command or set it to do it automatically in the config file.
     
  4. Offline

    locutus

    So I just dropped this and NS command plugins/, and none of the commands work. plugman reports that "plugin has no registered commands..." I do get my compass to toggle on off wierd noises, but without linking worlds, thats useless. I tried using a prev version, but with no luck. What info do you need from me to help fix this?
     
  5. Offline

    asdaarg

    The commands are not typed in console if that's what you were trying. If you get "access denied" then you need either to be op or set up the permissions plugin.
     
  6. Offline

    locutus

    I'm op, typing commands as a player with permissions '*'
     
  7. Offline

    Don Redhorse

    thanks... download links work again nevertheless :)
     
  8. Offline

    asdaarg

    That's weird... Does it say "unknown console command" when you type it?
     
  9. Offline

    locutus

    It does. I think thats a Commandbook thing. I'll try it without Commandbook to see if its a compatibility issue.
     
  10. Offline

    WaferMouse

    Hi! The plugin works great! Thanks so much :)

    Has anyone managed to get a previously singleplayer Nether world to work correctly with it's corresponding regular world? I copied the region data over into the netherworld folder, but I don't think I understand Minecraft and Bukkit enough to know that that would work.

    Thanks in advance :D
     
  11. Offline

    asdaarg

    It should be possible, but I wouldn't suggest copying the region folder, but copy the entire world folder. Then you import it. I'm not sure if the existing portals will align up. If not then you will have to recenter one or both. The imported portals will not be registered, so you would have to do that by linking them manually, or destroy one on one side and then have the other autocreate its counterpart.
     
  12. Offline

    CameronK

    Uh.

    I've been using this plugin for a while now, and I haven't had much trouble. But now I get this in the console:

    Code:
    2011-05-05 18:01:20 [INFO] 1
    2011-05-05 18:01:22 [INFO] null
    2011-05-05 18:01:22 [INFO] null
    2011-05-05 18:01:22 [SEVERE] null loading NetherPortal v0.6.6 (Is it up to date?)
    java.lang.NullPointerException
        at com.asdaarg.bukkit.NetherPortal.NetherPortal.getWorld(NetherPortal.java:101)
        at com.asdaarg.bukkit.NetherPortal.NetherPortal.loadPortals(NetherPortal.java:198)
        at com.asdaarg.bukkit.NetherPortal.NetherPortal.onEnable(NetherPortal.java:165)
        at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:127)
        at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:584)
        at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:218)
        at org.bukkit.craftbukkit.CraftServer.loadPlugin(CraftServer.java:116)
        at org.bukkit.craftbukkit.CraftServer.loadPlugins(CraftServer.java:94)
        at net.minecraft.server.MinecraftServer.e(MinecraftServer.java:217)
        at net.minecraft.server.MinecraftServer.a(MinecraftServer.java:204)
        at net.minecraft.server.MinecraftServer.init(MinecraftServer.java:144)
        at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:259)
        at net.minecraft.server.ThreadServerApplication.run(SourceFile:394)
    I edited "np_worlds.txt" to remove two worlds that I mistyped when creating some portals a while ago. The plugin wouldn't let me remove them, and if I deleted the world folder it'd just recreate itself when the server was rebooted/reloaded.

    Any ideas on why this is? Am I going to have to redo all my portals and start over with new files?
     
  13. Offline

    asdaarg

    Well, its the way bukkit works. What worlds are loaded at startup are actually stored in level.dat. To stop them from being loaded at startup (or created, after you delete them), you have type:
    /world remove worldname
    The error you are getting is due to that you have portals in the file refering to a world that doens't exist.
     
  14. Offline

    CameronK

    I did remove the worlds with the command....

    Also, I deleted the worlds while the server was off and then removed them from the file. I still get the "null" error though (and none of the portals work, "the portal refuses to teleport you"). I'm guessing I somehow corrupted or messed up the encoding of the file when I opened it in Notepad? It's a .txt.....

    Here's the current contents:

    Code:
    realsurvival,1,0,64,0,NORMAL,,,,
    survival_nether,8,0,64,0,NETHER,,,,
    survival,1,0,64,0,NORMAL,,,,
    newcreative,1,0,64,0,NORMAL,,,,
    war,1,0,64,0,NORMAL,,,,
    
    ...except they all show up in one line on the file. Is that the problem, maybe?

    EDIT: as in this.

    [​IMG]
     
  15. Offline

    asdaarg

    They show up like that because notepad doesn't recognize newline character alone but needs newline and carriage return for a new line. If you edited it, it is possible you deleted a newline character e.g. when you backspaced them back like that. To make sure there is a newline after each put them on separate lines. I guess I should be putting in some error handling code so it doesn't do that when you remove a world manually.
     
  16. Offline

    CameronK

    Hm, okay. So if they're hidden, is there a fix for it?
     
  17. Offline

    asdaarg

    Just hit enter after each.
     
  18. Offline

    CameronK

    That's what I thought. Since I opened the others as well, I should probably fix them too.

    Thanks for your time and your awesome plugin! :)

    Hmm. I added the new lines to all the files....still no luck.

    These are all 3 of my files:
    [​IMG]

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 11, 2016
  19. Offline

    asdaarg

    Do you have any other text editors or even better, a hex editor? You could remove that carriage return char if its interefering.
     
  20. Offline

    Jargon

    Hey asdaarg, first off - awesome plugin! Been using it on my server I host for myself and my mates, never had a problem with it.

    However, that being said, I have recently discovered the need to exile certain players into other worlds and I know this can be done with a one-way portal, but I think I need a more spectacular approach, such as dumping them into a pit that has a portal to another portal suspended at the top of a map of another world so they drop a few hundred metres into the sea. Of course, to complete this awesomeness, I was wondering whether I could convince you to develop a horizontal portal. So instead of a 2x3 vertical portal, we could also create 2x2 horizontal portals.

    What do you think? Is it possible?
     
  21. Offline

    asdaarg

    Sounds like a fun feature to have but I'm not sure the client will support that. Its of course possible if you can do without the purple portal blocks.
     
  22. Offline

    Jargon

    Is that the limiting factor? The purple portal blocks only line up vertically? Hmmmm... that's a shame. If it's possible to do it without the portal blocks then I guess that'd have to do. Could water blocks be used instead or is this overly complicating things?
     
  23. Offline

    asdaarg

    Any blocks could be used, as I could do this with artificial portal blocks.
     
  24. Offline

    winnux8

    How can I do so that there would be no monsters in world called 'creative' and there would be monsters in the one called 'survival'? When are the config files for those worlds?

    If it's not possible to do so which this plugin, which plugin should I use for it?
     
  25. Offline

    asdaarg

    I think there was a plugin called mobcontrol
     
  26. Offline

    djlilis

    I'm getting this on a server I've inherited that's currently running:
    git-Bukkit-0.0.0-706-gf53e007-b740jnks
    NetherPortal version 0.6.6
    [LightningControl] v1.1
    NSCommand 0.2
    WorldEdit 4.4
    WorldGuard 5.0-alpha10

    On my 617 server running 0.6.2 this actually all worked pretty well. Here, though, I'm creating portals, naming them with /portal name, and then five seconds later /portal settarget will tell me that the named portal doesn't exist.
    np_portals.txt looks like:

    gensokyo,0,77,274,-1,0,P0,0,0.0
    gensokyo,-61,59,46,-1,0,mikogate,0,0.0
    gensokyo,-24,63,22,-1,1,gensospawn,0,0.0
    gensokyo,-54,71,75,-1,0,P1,0,0.0
    oldmayohiga,218,65,63,-1,0,oldmayospawn,0,0.0
    world,-407,61,1507,-1,0,mshri00,0,0.0
    world,-410,61,1500,-1,1,mshri02,0,0.0
    world,-410,61,1503,-1,1,mshri01,0,0.0
    world,518,66,321,-1,1,mayohellgate,0,0.0
    world,545,55,303,-1,0,mayospawn,0,0.0

    Doesn't matter how many I have in there, really; I can rename the file and let NP recreate and I'll still get the same behavior. The only thing that really consistently seems to work is the portals with the default names like P0.

    /portal settarget mshri01 mshri00
    Portal by name mshri00 does not exist (always the two spaces after the name reported missing.)
    If I flip the arguments, mshri00 is not found. If I try to target mshri02 to mshri01, mshri01 is not found.
    Confused.

    Also, I've noticed you now seem to be spit out of portals a little more poorly oriented; is there a way to determine or set the way you exit a portal?
     
  27. Offline

    asdaarg

    I'll look into it, its probably to do with my last bugfix.
    Edit: Fixed the issue with the names, but not sure what's causing the inexact teleportation. It never used to happen.
    Edit: Fixed the teleportation issue too, It happens when your exit portal is perpendicular to the one you entered.
     
  28. Offline

    djlilis

    Oh, so direction is preserved through the portals, so portals at the moment need to line up parallel to one another on opposite side walls (if they're being backed by walls in the first place)? That would make sense since I changed the orientation of one of the portals, but I never thought about the orientation of the worlds compared to one another. I just started getting spit out inside the obsidian border of the portal.
    What was up with the names? That was pretty fast for something I've only seen one other person complain about; I didn't think you'd even be able to replicate the issue.
     
  29. Offline

    asdaarg

    Well, I did change around a bit a while ago how setting the name of portals work to avoid duplicate code and forgot to use it in one place, so I knew where to look. The direction is preserved yes, except for in the case where they are perpendicular, in which case you are spit out North if you enter from the West for instance. Previously it readjusted the exit position if it was perpendicular based on the direction of the entrance portal rather than the exit.
     
  30. Offline

    CameronK

    /world remove [world] does not work.
     
  31. Offline

    asdaarg

    The world is still loaded at startup?
     

Share This Page