[INACTIVE][TP] Nether v1.2 (2.0 in progress) - Super-Simple Nether Portals [1000]

Discussion in 'Inactive/Unsupported Plugins' started by SpaceManiac, Feb 14, 2011.

  1. Offline

    SpaceManiac

    Nether - Super-Simple Nether Portals
    Version: v1.2
    Tested on: should work on all RBs 450+; tested on 766. DOES NOT work on 1060.

    I'm updating Nether very soon to work on 1060+ and also adding some nifty new features!

    I use Bukkit, but have no plugins except a bit of my own tinkering installed. When multiworlds came out I decided that the denizens of my server could use some Nether action, but every plugin I could find came with too many frills, so I wrote up a simple one to use. There is no configuration and no commands. Figured I'd post it here in case somebody found it useful. It's basically designed to be used when you just want to add a classic Nether to your currently single-world server.

    Features:
    • World coordinates are scaled 8x like in single player.
    • No configuration, commands, or persistent storage - drop and go!
    • Teleportation is smooth and usually lag-free (especially when the chunks on the other side are already loaded)
    • Portals are auto-created when teleporting through a new portal, carving a small cavern and placing a platform if needed.
    • Dying in the Nether teleports you back to the Earth spawn!
    Known Issues:
    • Portal frames are not detected, only active portals, so if you try to portal through to an inactive portal, a new portal might be generated a few blocks off.
    • Both sides of a portal must be uncovered or there is a risk of suffocation when teleporting in.
    • The area carved around new portals can sometimes cut into existing structures if you're not careful, though this is unlikely.
    • Ghast noises can still be heard on Earth in some cases (Bukkit bug).
    Download: Nether v1.2
    Source code: GitHub (MIT License)

    Changelog:
    Version 1.2 (April 13)
    • Portals no longer make a giant platform and air bubble and instead seek vertically for a suitable location (thanks Acru).
    • The Nether world name is now configurable (thanks Acru).
    • The Nether world is now loaded on startup instead of first portal use.
    Version 1.1 (February 25)
    • Removed some vestigial debugging methods.
    • Dying in the Nether now respawns players on Earth.
    • Fixed TSLPC.
    Version 1.0 (February 15)
    • Initial release.
     
  2. Offline

    Incendia

    I would very much appreciate it :3 Warmups are the only thing stopping me from using nether on my server (people like to use nethergates as doors to their houses so the instant teleporting kinda breaks their homes lol)
     
  3. Offline

    Arcwolf

    Tested the 1.2.1 unofficial and it works as advertised now. I repeated the same procedures as before and now the problem is fixed. Good work nailing the bug.

    Thanks!
     
  4. Offline

    Brettflan

    Tested my build of Nether on CB recommended build 556 and couldn't duplicate this problem.
     
  5. is this working for the curent recommended build ? caus for me nothing happend when it's tryng to make nether' it make like 10 blocks around the portal nothing more
     
  6. Offline

    Arcwolf

    I went and incorporated the following to the 1.21 unoffical's onEnable:

    getServer().createWorld(worldName, Environment.NETHER);
    System.out.println("Loaded World [" + worldName + "]");

    Seems that plugins like propertime dont like it when a world isnt loaded during server startup. Perhaps that could be incorporated into future versions?
     
  7. Offline

    axebyte

    If only this supported permissions or Op only or something.. to prevent 100 portals from being created that are active..
    Any way to limit them? Have one or two Admin created and thats it.
     
  8. Offline

    IOn Vash

    how do you disable mobs in the nether? it lags the server.
     
  9. Offline

    Incendia

    The most you can do at the moment is restrict your lighter tool
     
  10. Offline

    Shasharala

    I just downloaded the unofficial version. Hope this works! o.o

    EDIT:
    Seems to create new portals. The system for determining portals is different from the old one... thereby causing problems for me... now my portals don't sync up.
     
  11. Offline

    Vaneshi

    Dumb question... I've CrowdControl set to 0% on Ghast's in my Minecraftia overworld map and still the invisible buggers keep appearing.

    How do you kill them off? Or is it a stop server & restart thing?
     
  12. Offline

    Brettflan

    I think there's been a problem related to interfacing with Ghasts and Slimes in that they're not actually classed as Creatures for some reason, even in the original Mojang code. CrowdControl might be bumping into that issue.

    OK, I went ahead and added a warmup along with a couple of accompanying configurable messages. I liked the way the "warmup" delay works enough that I made the plugin default to having a 5 second delay along with sending messages to the player when they enter a portal and and after they've been teleported. If you want a different delay length (or no delay) and/or want no messages displayed, those can be set in the config.yml file.

    Unofficial Nether 1.3 download:
    http://wimbli.com/minecraft/Nether_1.3_unofficial.zip

    Changelist:
    • Added some new features with config options:
      1. "portal-delay-seconds" for delayed portal triggering, defaults to 5 second delay (can be disabled by setting the option to 0)
      2. "show-entry-text" to enable/disable text being sent to player on portal entry, defaults to true
      3. "portal-entry-text" to specify what text to show players on portal entry, does nothing unless option above is set to "true"
      4. "show-exit-text" to enable/disable text being sent to player after portal action, defaults to true
      5. "portal-exit-text" to specify what text to show players after portal action, does nothing unless option above is set to "true"
    • made nether world creation/loading occur when plugin is enabled, mainly for compatibility with other plugins (courtesy of ArcWolf)
    • improved non-debug console/log output to indicate the "to" and "from" portal coordinates when a player passes through a portal
    • switched back to using direction player is facing for offset in exit portal instead of velocity, since new portal delay option effectively invalidates velocity
    • a couple of very minor bugfixes and tweaks, also moved a very large chunk of code from one file to another to accommodate the new portal delay feature
    Short demo video:


    With the way my versions handle teleporting the player into the exit portal itself, the player should be safe from environmental hazards left outside the exit portal (lava, completely blocked in portal, whatever).
    However, there is a consideration: if the portal is in fact completely blocked in and there is no way for the player to exit it, they will be stuck since they can only go back through the portal after having stepped out of it. It's not that big of a deal, though. The solution: have the player log out and back in, that's it. That will clear them from the "just portaled" list. After then moving around inside the portal a step or two, they should be transported back through.

    I think I'm pretty much done with the changes I wanted to make, so this may be the last unofficial version I release barring updates for Bukkit version compatibility and possible bugfix updates.
    @SpaceManiac: of course you are welcome to use any or all of the changes in my fork as you see fit. Pull the whole thing, or cherry-pick and rework any bits and pieces that catch your fancy.
    EDIT: I guess I can't really speak for dakotahawkins' changes in my fork, but... any changes I committed, certainly.

    EDIT 2: by the way, for reference, the default contents of config.yml for unofficial 1.3:
    Code:
    show-entry-text: true
    show-exit-text: true
    debug-output: false
    compression-ratio: 8
    portal-entry-text: You feel the pull of nether energies.
    nether-world-name: netherworld
    portal-delay-seconds: 5
    portal-exit-text: The portal has taken you... elsewhere.
    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 9, 2016
  13. Offline

    Sopsys

    Thank you for this, but there's a slight bug here or there or somewhere.

    Teleporting to Nether and portal generation works fine, but teleporting back wont. Most of the time it teleports back to spawn, rarely it might work fine.
    Worked always in Official Nether 1.1. Also works in Bukkits own(?) portal thing, but the portal generation there does not find a free Y position for the portal, it rather creates a platform or a cave.

    16:09:58 [INFO] NETHER_PLUGIN: sopsys used portal at (61, 69, -193) to NORMAL world (493, 64, -1543)
    16:09:59 [WARNING] sopsys moved wrongly!
    16:09:59 [INFO] Got position 493.0, 64.0, -1542.31
    16:09:59 [INFO] Expected 503.30000001192093, 71.0, -1540.699999988079

    It's something related with that i think. Those "Got position" -coordinates are correct.

    Here's some logs with debug data enabled. TP to Nether was fine, but ended up in spawn after coming back from Nether.

    2011-03-28 16:17:12 [INFO] NETHER_PLUGIN: sopsys just entered a portal at: 492, 64, -1543
    2011-03-28 16:17:12 [INFO] NETHER_PLUGIN: sopsys: Using portal block: 492, 64, -1543
    2011-03-28 16:17:12 [INFO] NETHER_PLUGIN: sopsys: Portal is X oriented.
    2011-03-28 16:17:12 [INFO] NETHER_PLUGIN: sopsys: using coordinates at (X: 61, Z: -193).
    2011-03-28 16:17:12 [INFO] NETHER_PLUGIN: sopsys used portal at (492, 64, -1543) to NETHER world (62, 69, -193)
    2011-03-28 16:17:12 [WARNING] sopsys moved wrongly!
    2011-03-28 16:17:12 [INFO] Got position 62.0, 69.0, -192.31
    2011-03-28 16:17:12 [INFO] Expected 0.699999988079071, 66.20000004768372, 0.30000001192092896

    2011-03-28 16:17:21 [INFO] NETHER_PLUGIN: sopsys just entered a portal at: 62, 69, -193
    2011-03-28 16:17:21 [INFO] NETHER_PLUGIN: sopsys: Using portal block: 61, 69, -193
    2011-03-28 16:17:21 [INFO] NETHER_PLUGIN: sopsys: Portal is X oriented.
    2011-03-28 16:17:21 [INFO] NETHER_PLUGIN: sopsys: Starting portal search at (X: 492, Z: -1540).
    2011-03-28 16:17:21 [INFO] NETHER_PLUGIN: sopsys:
    2011-03-28 16:17:21 [INFO] NETHER_PLUGIN: sopsys: ^.>.>
    2011-03-28 16:17:21 [INFO] NETHER_PLUGIN: sopsys: .^.>.
    2011-03-28 16:17:21 [INFO] NETHER_PLUGIN: sopsys: ^.S.v
    2011-03-28 16:17:21 [INFO] NETHER_PLUGIN: sopsys: .<.v.
    2011-03-28 16:17:21 [INFO] NETHER_PLUGIN: sopsys: <.<.v
    2011-03-28 16:17:21 [INFO] NETHER_PLUGIN: sopsys: X.
    2011-03-28 16:17:21 [INFO] NETHER_PLUGIN: sopsys:
    2011-03-28 16:17:21 [INFO] NETHER_PLUGIN: sopsys: found portal at (X: 493, Z: -1543).
    2011-03-28 16:17:21 [INFO] NETHER_PLUGIN: sopsys used portal at (62, 69, -193) to NORMAL world (493, 64, -1543)
    2011-03-28 16:17:22 [WARNING] sopsys moved wrongly!
    2011-03-28 16:17:22 [INFO] Got position 493.0, 64.0, -1542.69
    2011-03-28 16:17:22 [INFO] Expected 513.3000000119209, 70.0, -1522.699999988079

    Ended up at coords 524.5, 75 (or something, a few blocks above ground), -1522.5

    Cannot edit, so i just triple post then.

    Tried with Nether 1.2.1. The portals are working just fine in it (=does not tp to spawn when returning to normal world, instead teleports to the portal just as expected) so i think i'll stick with it until you fix the bug in 1.3.

    2011-03-28 17:05:42 [INFO] NETHER_PLUGIN: sopsys: found portal at (X: 570, Z: -1574).
    2011-03-28 17:05:42 [INFO] NETHER_PLUGIN: sopsys used portal to NORMAL world
    2011-03-28 17:05:51 [INFO] NETHER_PLUGIN: sopsys: using coordinates at (X: 71, Z: -197).
    2011-03-28 17:05:51 [INFO] NETHER_PLUGIN: sopsys used portal to NETHER world

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

    Vaneshi

    Ok, trying unofficial 1.3 and it's all good (once I regenerated my Nether).

    But in my eternal quest to make Ghast's behave themselves I've ecountered a small problem.
    >crowd list population netherworld
    [INFO] World netherworld is unknown

    It bloody well is, I'm bloody well stood next to the portal surrounded by netherrack! I've tried Nether, Netherworld, NetherWorld and various other combinations but I've yet to find the right combination to reign in Ghasts.
     
  15. Offline

    Incendia

    <3, but...

    Same problem. returning through sends me to spawn instead of the portal.

    Edit: lol, I logged out after I'd used the portal and it sent me to spawn right? Well when I logged back in I was falling from the sky in a random part of the world.
     
  16. Offline

    Brettflan

    Ah, I'm able to duplicate. That seems to happen solely when the delay is set to 0. I'm pretty sure it's a conflict between the movement event and the teleport both trying to send to different locations.
    I'll see about releasing a quick fix soonish.

    OK, give this a shot:
    http://wimbli.com/minecraft/Nether_1.3.1_unofficial.zip

    The only change is to have it update the target location for movement events going into a portal if the portal delay is set to 0, to keep them from potentially conflicting.

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

    Incendia

    No, I've got the portal delay set to 5 (default)
     
  18. Offline

    Brettflan

    Ah, I probably should have been testing it with the latest RB. My mistake, I'd been running it on a newer dev version. I'm able to duplicate that error using RB 556. After looking around, it seems to be a widespread issue when teleporting between worlds in RB 556 and probably older versions. It's a CraftBukkit bug which has since been fixed in newer dev versions.

    So, your best options are:
    1. Set the "portal-delay-seconds" config.yml option to 0 for now to remove the delay. This is probably what you'll need to do for now. You could alternately keep using the older version, but this workaround should work and the newer version includes a couple of improvements beyond the older version.
    2. Upgrade to a newer dev build of CraftBukkit. I don't recommend this, since there has been some really really major breakage since the last recommended build, where most plugins no longer work properly.

    The only way I can think of to work around it with the delay would be to piggyback the delayed teleport onto another player movement event. That would be extremely hackish and seems like a waste of time to handle a CraftBukkit bug which has already been fixed. So... apologies.
     
  19. Offline

    Incendia

    I'd appreciate it if you would though, I can't add nether until this is fixed (instant tp isn't really an option) and we aren't likely to get a new RB until after 1.4 releases.
     
  20. Offline

    Brettflan

    I'm not sure why I'm bothering since I have no personal use for it, and it is definitely a hacky workaround by creating and hijacking an extra teleport event. However, I was curious, and it worked during brief testing on RB 556, so...
    Here you go:
    http://wimbli.com/minecraft/Nether_1.3.1b_unofficial.zip (only for RB 556 due to bug workaround)

    I should stress that this version is indeed only meant for RB 556 due to the hacky workaround added. Once you have a newer CraftBukkit build that fixes the bug, the workaround in this version shouldn't be needed or desired.
     
  21. Offline

    SpaceManiac

    Wow, yikes, alerts broke and I didn't realize people had been posting in here. I'll read over what's been said and get stuff taken care of asap.
     
  22. Offline

    Dreadreaver

    god and I already thought you abandoned this plugin! great to see you're still out there ... I would love for you to use the fork of Arcu in Github for 1.2, works pretty nice and for the changes of Brettflan you should look into them too, altough I havent tried his version yet.
     
  23. Offline

    Sopsys

    Works really well, thank you sir!
     
  24. Offline

    Brettflan

    With RB 600 now out, here's a reminder that if you use it you should be using this one of my unofficial builds:
    http://wimbli.com/minecraft/Nether_1.3.1_unofficial.zip

    Only if you're still on RB 556 should you be using my unofficial 1.3.1b linked above, since it includes a bug workaround that should only needed on RB 556.
     
  25. Offline

    computerquip

    I get "Could not pass event PLAYER_MOVE to nether"

    EDIT: A quick replacement of the CB build fixes it. It works fine in 600 as far as I can tell along with spawning a separate portal in the Nether.

    QUESTIONS:

    1. When I die in the Nether, it sends me back to the normal world. Any way to change that?
    2. When I die in the Nether, I still hear explosions in the normal world and all of the zombies from the Nether drop down to the normal world. Although I can't interact with them and a quick client reconnect fixes the zombies, I still hear explosions which means that's server sided. Why is that?
     
  26. Offline

    Brettflan

    1. The main goal of this plugin is to make the Nether world handling work as close to how it does in singleplayer as possible. Respawning in the normal world when you die in the Nether is part of that.
    2. This is a bug which would need to be handled by CraftBukkit, AFAIK.
     
  27. Offline

    Dreadreaver

    U still her explosions in the normal world and the zombies follow you from the nether?

    oO First time I hear about something like that.

    I'm using Nether 1.2(Nether 1.1 + Acrus Fork) and I never experienced any issues like that. Cant say anthing about Brettflans build as I havent tested it yet.

    Could you try using Acrus build? Its working perfectly fine on CB556, cant say anthing about CB600 though. You can find a compiled version from Acru himself some pages ago.
     
  28. Offline

    Brettflan

    I haven't personally seen it do that since about a week ago or so, but it does happen. I'm not sure if there are any specific circumstances that cause it or not.

    I seem to recall that when it happened to me I had used a /home command (from Essentials) which teleported me from the Nether back to the normal world, rather than having gone through a portal.
     
  29. Offline

    computerquip

    For the sake of fixing it, I can give you my server address so you can come on and see for yourself.

    EDIT: btw, Brettflan, why not fork the project officially? SpaceManiac mentioned that he'd get back into it but he hasn't show interest since.
     
  30. Offline

    Brettflan

    I do have my source fork available:
    https://github.com/Brettflan/Nether
    SpaceManiac is still around and expressed interest in maintaining the project just on the last page, so that works for me. I'll just bum around here until he runs me off. ;)

    That problem of creatures potentially coming with you when you teleport out of the Nether is a CraftBukkit bug (or Mojang client/server bug), and I'm ~90% sure there's no good workaround for it.
    From the 3-4 times I saw it happen they seem to usually just be phantoms which you can't actually interact with, particularly Pig Zombies. Ghast fireball explosions seem to be another matter.
    What version of CraftBukkit are you on, out of curiosity?
     
  31. Offline

    computerquip

    At the time, I was using #600. Using #602 I couldn't replicate the problem. However, I wasn't using the same world so maybe just bad luck? I have the old map data so I can test the old map data. I'll do that in the morning.
     

Share This Page