⍟ Simple Portals ⍟ - Effective Regional Portals (BungeeCord Compatible) 1.7.1

A simple yet effective way to create portals for your server!

  1. XZot1K
    Native Minecraft Version:
    Tested Minecraft Versions:
    • 1.8
    • 1.9
    • 1.10
    • 1.11
    • 1.12
    • 1.13
    • 1.14
    • 1.15
    • 1.16
    • 1.17
    • 1.18
    • 1.19
    Source Code:
    XZot1K, AlessioGR
    Languages Supported:
    Can Support Any (No premades aside English)
    DedicatedMC is currently used for the official ZotWare testing server. If you need something powerful in terms of hardware without digging a hole in your pocket give them a shot and let me know how you like them!

    Please refer down to the Plugin Usage section before reaching out for direct assistance!

    What is Simple Portals?

    Simple Portals is the simplest, yet effective way to create region-based portals. The plugin was heavily tested on many large live servers and put under stress to ensure performance was optimal. Simple Portals also allows the teleporting of players across your bungee cord server without even using the bungee cord API!

    ⍟ Features ⍟
    • Packet particle visuals for selections, region display, and other immersive effects.
    • Object-oriented portals making the API very easy to manipulate and modify specific portals.
    • No dependencies (Everything is developed from scratch within the plugin)
    • Per-portal permissions
    • Command Sympathy (Many commands have abbreviations for easier use)
    • Fluids and other movable materials are frozen in the portal regions.
    • Optimized Code (As stated above the plugin was thoroughly tested on multiple servers and developed with plenty of care)
    • Bungee Coord server switching (This feature uses the plugin channel, therefore, it communicates with the bridge server)
    • Lightweight Update checker (Checks for newer versions once every time on enable)
    • Powerful Developer API (Enough methods and events to take full control)
    • Simple To Manipulate (All commands and features are made to be used with ease)
    • Auto-Updating Configuration
    • Entity Portal Transfer (Items, Vehicles, etc. can all teleport through portals maintaining velocity and more!)
    • Nether/End Portal Destination Replacement - Ability to replace where nether/end portals take players per-world without the need of custom created portals!

    ⍟ Commands ⍟
    (Note: By typing an invalid command, a usage message will be displayed.)​
    • /simpleportals <selectionmode/sm> - Toggles the player in and out of selection mode which allows them to create a region.
    • /simpleportals reload - reloads all configurations.
    • /simpleportals info - provides information about the plugin.
    • /simpleportals create <name> - creates a new portal if the player's region is full created.
    • /simpleportals delete <name> - deletes a existing portal.
    • /simpleportals fill <name> <material> - attempts to fill the portal with the defined material (directional support is partial, meaning some materials may be better placed or created before portal creation).
    • /simpleportals <setlocation/sl> <name> - sets the teleport location of the specified portal to the sender's location.
    • /simpleportals <setlocation/sl> <name> <name> - sets the teleport location of the specified portal to the center of the other entered portal.
    • /simpleportals <showregion/sr> <name> - displays the specified portal's region.
    • /simpleportals <enable/disable> <name> - enables/disabled the portal entirely untiled toggled again
    • /simpleportals <switchserver/ss> <name> <server> - sets the server the portal will teleport a player to.
      • # Please note that to remove a server from a portal you must set it to 'none'.
    • /simpleportals <addcommand/addcmd> <name> <command> - this command adds a command line that will be run when a player enters the portal (You are able to add a colon followed by PLAYER or CONSOLE to the end of the command to determine how the command is run).
    • /simpleportals <clearcommands/clearcmds> <name> - this command simply clears the commands in the list.
    • /simpleportals <togglecommandonly/tco> <name> - this command toggles command only mode for a portal.
    • /simpleportals <commands/cmds> <name> - provides a list of all commands on the defined warp in the order they were added.
    • /simpleportals message <name> <text> - sets the message of the specified portal to the specified text (A colon followed by NORMAL, BAR, TITLE, or SUBTITLE can be used to define the type of message to be set).
    • /simpleportals <disablemessages/dm> <name> - disables all messages associated with the defined portal.
    ⍟ Permissions ⍟
    • simpleportals.showregion - Allows the player to view a portal's region.
    • simpleportals.setlocation - Allows the player to set a portal's teleport location.
    • simpleportals.info - Allows the player to view the plugin's information.
    • simpleportals.reload - Allows the player to reload the configuration files.
    • simpleportals.create - Allows the player to create a portal.
    • simpleportals.delete - Allows the player to delete a portal.
    • simpleportals.list - Allows the player to list all portals.
    • simpleportals.switchserver - Allows the player to change the server a portal can teleport a player to using BungeeCord.
    • simpleportals.selectionmode - Allows the player to enter/exit selection mode.
    • simpleportals.portal.* - Allows the player to use all portals.
    • simpleportals.portal.<name> - Allows the player to use the specified portal.
    • simpleportals.addcommand - Allows the player to add a command to the specified portal.
    • simpleportals.clearcommands - Allows the player to clear all commands from the specified portal.
    • simpleportals.togglecommandonly - Allows the player to toggle command only mode for a portal.
    • simpleportals.viewcommands - Allows the player to view the commands of a portal.
    • simpleportals.toggle - Allows the player to toggle a portal entirely.
    • simpleportals.message - Allows the sender to use the message command for portals.
    • simpleportals.dm - Allows the sender to use the disable messages command for portals.
    • simpleportals.fill - Grants access to the portal fill commands.
    ⍟ Media ⍟

    The showcase below was provided by @Ajneb97, he did a wonderful review highlighting some major and smaller features of SimplePortals. At the time of recording, SimplePortals v1.2.8 was being used. He covered some Version Specific issues that may occur and other very specific tweaks you can accomplish in the config (Though some things were changed/fixed in newer versions). Many thanks to him!

    The showcase below was provided by Lucas Gaspareto, many thanks to him for the awesome showcase! (Please note that this video was made using an early v1.2 build)

    Servers Using SimplePortals:
    Contact to have yours added here
    • mc.thecrafters.net - (Using mainly for server-based portals)
    • Galacticamc.com:25570 - (Using mainly for server-based portals)
    • minecraft.alonia.eu
    If you create a tutorial on this plugin, please let me know as I will post it here!

    Below is a very brief look at the region visual display during the portal create process:

    ⍟ Plugin Usage ⍟

    SimplePortals is made to be, well... simple! Therefore the portal creation process is quite straightforward. Please find instruction below:

    [NOTE] - The "Selection Mode" command is a toggle, meaning when ran once it will enable and twice it will disable.

    • Step 1) - In order to create a portal, you must first enter "selection mode" by using the command "/portals selectionmode" or "/portals sm".
    • Step 2) - The next step is to "left-click" the lowest block at the end of a cuboid or rectangular region and then "right-click" the highest block in the opposite corner of the region. This will set your current selection for any portals you wish to create soon.
    • Step 3) - To finish off the portal creation process you must use the command "/portals create <portal name>" to create the portal using your WorldEdit-Like selection.
    • Step 4) - From this point, you have a created portal. Now by default the destination, the portal will teleport the user to will always be set to the lowest-block or Point-1. To change the portal's destination, use the command "/portals setlocation" or "/portals sl" at the location you wish your portal to take you to.

    Below is some extra information:
    • You can fill a portal's region with a specific material by using the "/portals fill <portal name>" command (Don't worry all liquid-based materials will not flow out of the region).
    • You can relocate the portal's region by using the "/portals relocate <portal name>" command after making another selection in "selection mode".
    • For commands and some other features in the plugin, use {player} as the placeholder to obtain the player's name.
    • To make a portal teleport the player to another server via Bungee simply set the server name using the command "/portals switchserver <portal name> <server>". You can set this value to "none" to disable the feature for a portal.
    • As for adding commands to be run by the portal when entered you can add them using the "/portals addcommand <portal name> <command>" command. To remove the commands you may use the "/portals clearcommands <portal name>" command.
    • When adding a command ensure NOT to use a slash.
    • Always END IT WITH A COLON followed by either PLAYER or CONSOLE. Another that can be used since v1.3.6 is CHAT which sends the command into chat for other plugins to use as fake commands!
    • Similar to command adding, setting a portal's message requires a type. Behind the entered text, simply add either :NORMAL, ':BAR, :TITLE, or :SUBTITLE to indicate which message should be set (INCLUDE THE COLONS).
    ⍟ Developer API ⍟

    Currently, everything in the API can be found in the API package inside the plugin which can be found on the GitHub page. However, below you can find the API class names and their purpose.
    • Manager (Class) - this stores all general methods, calculations, and storage lists or maps.
    • PointType (Enum) - this is used inside the listener for the region selection.
    • Portal (Class Object) - this is an entire object that stores all information about a single portal.
    • Region (Class Object) - this is an entire object that stores all information about a region (Coordinates and Locations).
    • SerializableLocation (Class Object) - this is used to serialize a location and prevent future changes to the same location.
    • TaskHolder (Class Object) - this is used to store the visual effect tasks for each player. This class also manages them to make sure not too many are shown at once.
    • [Removed in 1.4.3] PortalActionEvent (Event Object) - this event is called when a player is teleported by a portal.
    • PortalEnterEvent (Event Object) - this event is called when a player enters a portal's region.
    ⍟ FAQ ⍟

    (Q) Users are teleported to the nether/end when using a dedicated portal material for a simple portal.

    (A) This issue has been reported before, a majority of the time this is due to world manipulation plugins such as Multiverse or MultiWorld. Please ensure you test without the world plugin and also use their latest build (dev build) to ensure it was not something that was resolved.

    (Q) I'm getting an error/message involving the "simpleportals.cdbypass" permission node. How can I resolve this?

    (A) This is not actually an issue, the message is to notify the user who is either OP or has the permission that they have bypassed the cooldown for the feature. This message can be disabled by setting it to "" in the lang.yml.

    (Q) I'm getting an error in the console and I'm unable to teleport or use portals in general. How can I resolve this?

    (A) The plugin is native to the latest version of Minecraft; therefore, older versions may need tweaking within the configuration. Normally in this case setting the particle options in the config.yml will resolve this issue for you.

    (Q) How can I disable the portal titles, action bar, or subtitle messages?

    (A) If the portal has not been created yet, setting the default messages in the lang.yml will disable them for all newly created portals. For already made portals you must either disable the plugin and set the messages to "" in the portals.yml or use the "/portals message <name> :NORMAL", "/portals message <name> :BAR", "/portals message <name> :TITLE", or "/portals message <name> :SUB-TITLE" commands to simply disable each one individually. As of v1.5.1, the command "/portals dm <name>" can be used to disable messages.

    ⍟ Contact ⍟

    For the best support experience please contact through the official support discord here!

    BEFORE requesting support check the FAQ section above ^^^

    Please try to avoid contacting the developer through a direct message.

    ⍟ Terms of Use ⍟

    Please do NOT use code from this plugin and call it your own or report issues/bugs within the review section. That is pretty much the only thing I ask! :)

Recent Updates

  1. ⍟ 1.7.1 | The 1.19 Update ⍟
  2. ⍟ 1.6.9 | Bug Fix ⍟
  3. ⍟ 1.6.8 - MC 1.18.1 ⍟

Recent Reviews

  1. sergservis
    Version: 1.6.9
    [20:07:38 WARN]: [SimplePortals] Task #83 for SimplePortals v1.6.9 generated an exception
    java.lang.NoSuchMethodError: org.bukkit.entity.Player.sendTitle(Ljava/lang/String;Ljava/lang/String;III)V
    at xzot1k.plugins.sp.api.objects.Portal.lambda$performAction$3(Portal.java:296) ~[?:?]
    at org.bukkit.craftbukkit.v1_8_R3.scheduler.CraftTask.run(CraftTask.java:59) ~[spigot.jar:git-PaperSpigot-"acaf625c"]
    at org.bukkit.craftbukkit.v1_8_R3.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:352) ~[spigot.jar:git-PaperSpigot-"acaf625c"]
    at net.minecraft.server.v1_8_R3.MinecraftServer.B(MinecraftServer.java:750) ~[spigot.jar:git-PaperSpigot-"acaf625c"]
    at net.minecraft.server.v1_8_R3.DedicatedServer.B(DedicatedServer.java:366) ~[spigot.jar:git-PaperSpigot-"acaf625c"]
    at net.minecraft.server.v1_8_R3.MinecraftServer.A(MinecraftServer.java:680) ~[spigot.jar:git-PaperSpigot-"acaf625c"]
    at net.minecraft.server.v1_8_R3.MinecraftServer.run(MinecraftServer.java:583) ~[spigot.jar:git-PaperSpigot-"acaf625c"]
    at java.lang.Thread.run(Thread.java:748) ~[?:1.8.0_312]
  2. boulettebill
    Version: 1.6.9
    I tryed manyyyy plugins before this one... The simplest, and the best. The video tutorial is very clear, and all commands are very easy to learn.
  3. editon
    Version: 1.6.7
    I use that Plugin and love it!
    It is soo esey and powerful.

    I wish that it wold add that Entetys like Horses and other Stuff can teleport onver that. Thas were nice!
  4. VZlomka
    Version: 1.6.7
    Many thanks to AGI#0001, aka Noe | Tag me please, for releasing a hotfix for an issue I reported. Very fast, efficient, and with quality!
  5. NoeX
    Version: 1.6.7
    This is the most feature-rich and best performing portal plugin you can find on spigot. The support from the developer is great as well.
  6. R00t
    Version: 1.6.6
    I'm always very skeptical of trying out new resources for new functions, simply because I want to ensure my clients have a stable and fast experience. This fits the bill. Its effect on performance is quite literally close to zero. I appreciate the effort you put into this resource, so my players can easily run through a portal and can teleport randomly across the world!
  7. NinjarakuPwnz
    Version: 1.6.6
    Amazingly lives up to it's name "Simple Portals" it takes literally seconds to setup a new portal even for Bungee networks. the in-game "/portals help" is nicely and effectively informative though you only commonly need 2 commands to make the new portal. no need for adding permissions, as an OP to make a portal, works as effectively as /server <name> would for players traveling though to destinations(no portal lag!), Works perfectly with zero console alerts or problems of any kind alongside currently 38 plugins on 1.17.1 Thank you kindly! Great Plugin! "Remember, for cross-bungee, put the plugin on Each server you plan to put the portals in for traveling, works flawlessly. I could go on, I'll just say Everyone should use this.
  8. MiguelDXCCYH43Q1
    Version: 1.6.6
    Works perfect!It helped me starting with my new network easily,thanks the plugin!
  9. rockrevenchy
    Version: 1.6.4
    it just works

    im glad to say that it works flawlessly regardless of what setup you throw at it, my lobby is on papermc 1.12.2 (to save CPU/RAM) and the proxy is Velocity instead of bungee and that plugin just doesnt care, it just does what it has to without any struggle.
  10. BlueBukkitDev
    Version: 1.6.3
    Excellent plugin! I was going to make my own but then decided to look around and what do you know, this is exactly what I wanted. Thank you so much.