Code Monkey home page Code Monkey logo

jmc-warp's Introduction

JMC Warp

JMC Warp is a plugin for Minecraft servers that adds the ability to craft special Warpstone blocks that allow players to easily teleport between two connected Warpstones.

Installing
Guide for players
Guide for administrators
Guide for developers
FAQ

Installing

Simply copy the plugin's .jar file into your server's plugin folder and restart the server. The plugin will then be enabled.

Guide for players

Obtaining a Warpstone

image

A Warpstone can be crafted by placing a Lodestone and an Enderpearl into a crafting square. The recipe is shapeless so you don't need to worry about where the ingredients are placed.

Naming a Warpstone

A Warpstone can be renamed in an anvil like any other item and this allows the player to differentiate between different Warpstone locations. e.g Farm or Home.

Placing and connecting warpstones

When a Warpstone is first placed in the world it will not be connected to any destinations so it will function like a normal Lodestone. In order to connect two Warpstones one must be placed on top of another. This will connect the two so that they will allow teleportation between them. If the connect is successful the player will hear a sound effect, see a particle effect, and receive a message letting them know that the two Warpstones are now connected.

Warpstones can be picked up and relocated just like any other block and they will retain their connections.

Using a Warpstone

Once two Warpstones are connected together and each are placed in the world, players are free to use them as warps. Simply standing on either Warpstone will teleport them to the other.

If the destination Warpstone has been removed from the world (either by a player or due to an explosion) the Warpstone will not teleport the player but let them know that the destination is no longer valid.

Guide for administrators

Configuration

The following settings can be changed in the config.yml file.

block

Default: minecraft:lodestone
Specifies which block to use in the warpstone crafting recipe.

Commands

/jmcwarp give

Gives the player a warpstone.

Persitence

The Warpstone state is currently persisted in the file todo.yml. In future versions this may change to something more scalable.

Guide for developers

Events

The plugin raises the following events;

WarpstoneCraftEvent

Raised when a Warpstone is crafted.

WarpstonePlaceEvent

Raised when a Warpstone is placed in the world by a player.

WarpstoneConnectEvent

Raised when a Warpstone is placed on top of another and the two are successfully connected together.

WarpstoneUseEvent

Raised when a player walks on to a Warpstone even if it doesn't have a destination.

WarpstoneWarpEvent

Raised after a player has walked onto a Warpstone and has been teleported to the destination Warpstone.

WarpstoneDestroyEvent

Rasied when Warpstone is destroyed via EntityExplodeEvent, BlockExplodeEvent or BlockBreakEvent.

FAQ

What happens if a Warpstone is broken by a player or exploded?

The Warpstone will always drop itself so a player can pick it back up and it will retain all of it's connection information so that it can be replaced.

What happens if more than one Warpstone is connected to another?

If a Warpstone is connected to more than one destination it will store that information but a player using that Warpstone will currently always warp to the first destination that was connected. Effectively ignoring all connections after the first. This will be addressed in a future version where the player will be able to select which of the connected destinations to warp to.

Can anybody craft Warpstones?

Currently anybody can craft a Warpstone if they have the right ingredients but in a future version this ability will need to be unlocked via a command so that ranks and permissions can be supported.

Can a connection be removed?

Not at the moment but in a future version a Warpstone will be able to be placed in a Grindstone in order for it's connection to be removed. Effectively turning back into a Lodestone.

Why a Lodestone?

Lodestones seem to fit from a lore perspective and they also aren't cheap to craft meaning Warpstones won't be overused. This can be changed in the configuration.

Why a block and not just a command?

Blocks are diegetic, commands are cumbersome to type on certain devices.

What happens if a player uses a Warpstone with a destination that has been removed from the world?

If the destination Warpstone is no longer placed in the world (because a player removed it or it got destroyed somehow) the Warpstone will simply not teleport the player and will inform them with a message.

Can you warp between different dimensions?

Yep. Multidimensional warping is supported.

jmc-warp's People

Contributors

adamjamesnaylor avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.