Code Monkey home page Code Monkey logo

multiversehardcore's Introduction

MultiverseHardcore

Spigot version Plugin size Spigot average rating Scrutinizer code quality Open issues license

Minecraft Version: 1.16

With this plugin, you can prevent your players from entering a world if they die in it.

Deathbans only affect the worlds you choose and can be temporary or permanent.

Multiverse-Core is required to use this plugin.

Installation

  1. Install Multiverse-Core on your server.
  2. Download the JAR file and put it on your Minecraft server plugins folder.
  3. Restart the server.

Basic usage

After you've successfully installed the plugin, log in to your server and enter the following command:

/mvhc create hardcore

World hardcore created

If everything went well, a Multiverse world called hardcore will have been created. Type /mv list or /mvhc worlds and you should see the name of your new world.

mvhc worlds output

Teleport to your new Hardcore world using /mv tp hardcore and you'll see a warning message. Be careful, if you die you won't be able to play in the world again!

Be careful, you are entering a HARDCORE world

For more options when creating a world (temporary bans, respawn world, Nether, The End...) check the command section.

Commands

Create a Hardcore world

With this command, you can create a default Multiverse world in your server and make it Hardcore.

/mvhc create <world> [spectator_mode] [create_nether] [create_end] [ban_forever] [ban_length] [include_nether] [include_end] [respawn_world]

Options:

  • world: Name of the world you want to create
  • spectator_mode (Optional): Set to true if you want players who die to be put on spectator mode. If set to false, they will be kicked out of the world.
  • create_nether (Optional): Set to true if you want to create a Nether for the world. You may need Multiverse-Netherportals for your Nether to work.
  • create_end (Optional): Same as create_nether but with The End.
  • ban_forever (Optional): Set to true to make the deathban permanent.
  • ban_length (Optional): Death ban length (in seconds). If ban_forever is set to true, this value doesn't matter.
  • include_nether (Optional): Set to true if you want your players to be deathbanned in the main world if they die on the Nether. Also, if set to true, players who die on the main world won't be able to play in the Nether.
  • include_end (Optional): Same as include_nether but with The End.
  • respawn_world (Optional): Name of the respawn world (this is required if spectator_mode is set to false).

Make a world Hardcore

Use this command if you already have a world created and want to make it Hardcore.

/mvhc makehc <world> [spectator_mode] [ban_forever] [ban_length] [include_nether] [include_end] [respawn_world]

The options are all explained in the previous command.

Unban player

Use this command to unban a death banned player from a hardcore world

/mvhc unban <world> <player>

See player info

Use this command to see information about a player in a Hardcore world:

/mvhc player [world] [player]

Options:

  • world (Optional): Hardcore world. Not necessary if it's the same world you're in.
  • player (Optional): Name of player. Not necessary if you want to see your information.

See Hardcore world information

Use this command to see information about a Hardcore world:

/mvhc world [world]

Options:

  • world (Optional): Hardcore world. Not necessary if it's the same world you're in.

See Hardcore worlds list

Use this command to get a list of all Hardcore worlds in your server:

/mvhc worlds

See plugin version

/mvhc version

Permissions

Below are all the permission nodes for MultverseHardcore. All permissions are set by default for OPs. It is, as such, recommended to use a permissions plugin.

Permission description
multiversehardcore.main Gives permissions for the main /mvhc command. Without it no multiversehardcore command will be permitted
multiversehardcore.create Allows creating new hardcore worlds
multiversehardcore.player.self Allows getting player participation info of self
multiversehardcore.player.others Allows getting player participation info of other players
multiversehardcore.version Gives permissions for /mvhc version
multiversehardcore.world Allows getting world info
multiversehardcore.list Allows listing worlds
multiversehardcore.makehc Allows making existing worlds hardcore
multiversehardcore.unban Allows unbanning players
multiversehardcore.bypass.<world> Allows bypassing the hardcore setting for specific worlds. Use multiversehardcore.bypass.* to bypass all worlds.

multiversehardcore's People

Contributors

dependabot[bot] avatar lluiscamino avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar

multiversehardcore's Issues

Need More Time and Spec Mode off

The spectator mode should turn off after leaving world cause when players /hub they be in spec mode and cant enter portals without disconnecting also i wanted a bigger time limit for day or every months

Ban Length doesn't work if enter world the second time.

Dungeon:
spectator_mode: 'false'
ban_ops: 'true'
ban_forever: 'false'
respawn_world: 'THREE'
ban_length: '86400'
start_date: '1616374132552'
include_nether: 'true'
include_end: 'true'

What it's supposed to do: Ban for 24hrs
What is happening: Once you die and reenter the world it will kick you out, but go in the second time and it will let you in.

Plugin not registering / showing anywhere

hello!
The plugin does not load at all when starting the PaperSpigot server. No relevant info is displayed in the server's console and running /plugins in game does not show the plugin either.

/paper version:
This server is running paper version git-paper-457 (MC: 1.16.5) (Implementing API version 1.16.5-R0.1-SNAPSHOT)

UPDATE:
After Downgrading to V1.0 the issue no longer persists.

ERROR Could not pass event PlayerDeathEvent to MultiverseHardcore v1.0

[Server] INFO java.lang.IndexOutOfBoundsException: Index: 3, Size: 1
15.06 00:08:11 [Server] INFO at java.util.ArrayList.rangeCheck(ArrayList.java:657) ~[?:1.8.0_242]
15.06 00:08:11 [Server] INFO at java.util.ArrayList.get(ArrayList.java:433) ~[?:1.8.0_242]
15.06 00:08:11 [Server] INFO at life.lluis.multiversehardcore.files.PlayersList.addDeathBan(PlayersList.java:105) ~[?:?]
15.06 00:08:11 [Server] INFO at life.lluis.multiversehardcore.events.PlayerDeath.onDeath(PlayerDeath.java:21) ~[?:?]
15.06 00:08:11 [Server] INFO at com.destroystokyo.paper.event.executor.asm.generated.GeneratedEventExecutor176.execute(Unknown Source) ~[?:?]
15.06 00:08:11 [Server] INFO at org.bukkit.plugin.EventExecutor.lambda$create$1(EventExecutor.java:69) ~[patched_1.15.2.jar:git-Paper-174]
15.06 00:08:11 [Server] INFO at co.aikar.timings.TimedEventExecutor.execute(TimedEventExecutor.java:80) ~[patched_1.15.2.jar:git-Paper-174]
15.06 00:08:11 [Server] INFO at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70) ~[patched_1.15.2.jar:git-Paper-174]
15.06 00:08:11 [Server] INFO at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:607) ~[patched_1.15.2.jar:git-Paper-174]
15.06 00:08:11 [Server] INFO at org.bukkit.craftbukkit.v1_15_R1.event.CraftEventFactory.callPlayerDeathEvent(CraftEventFactory.java:784) ~[patched_1.15.2.jar:git-Paper-174]
15.06 00:08:11 [Server] INFO at net.minecraft.server.v1_15_R1.EntityPlayer.die(EntityPlayer.java:598) ~[patched_1.15.2.jar:git-Paper-174]
15.06 00:08:11 [Server] INFO at net.minecraft.server.v1_15_R1.EntityLiving.damageEntity(EntityLiving.java:1152) ~[patched_1.15.2.jar:git-Paper-174]
15.06 00:08:11 [Server] INFO at net.minecraft.server.v1_15_R1.EntityHuman.damageEntity(EntityHuman.java:801) ~[patched_1.15.2.jar:git-Paper-174]
15.06 00:08:11 [Server] INFO at net.minecraft.server.v1_15_R1.EntityPlayer.damageEntity(EntityPlayer.java:754) ~[patched_1.15.2.jar:git-Paper-174]
15.06 00:08:11 [Server] INFO at org.bukkit.craftbukkit.v1_15_R1.entity.CraftLivingEntity.damage(CraftLivingEntity.java:311) ~[patched_1.15.2.jar:git-Paper-174]
15.06 00:08:11 [Server] INFO at org.bukkit.craftbukkit.v1_15_R1.entity.CraftLivingEntity.damage(CraftLivingEntity.java:298) ~[patched_1.15.2.jar:git-Paper-174]
15.06 00:08:11 [Server] INFO at com.earth2me.essentials.commands.Commandkill.updatePlayer(Commandkill.java:41) ~[?:?]
15.06 00:08:11 [Server] INFO at com.earth2me.essentials.commands.EssentialsLoopCommand.loopOnlinePlayers(EssentialsLoopCommand.java:103) ~[?:?]
15.06 00:08:11 [Server] INFO at com.earth2me.essentials.commands.Commandkill.run(Commandkill.java:26) ~[?:?]
15.06 00:08:11 [Server] INFO at com.earth2me.essentials.commands.EssentialsCommand.run(EssentialsCommand.java:171) ~[?:?]
15.06 00:08:11 [Server] INFO at com.earth2me.essentials.Essentials.onCommandEssentials(Essentials.java:557) ~[?:?]
15.06 00:08:11 [Server] INFO at com.earth2me.essentials.Essentials.onCommand(Essentials.java:470) ~[?:?]
15.06 00:08:11 [Server] INFO at org.bukkit.command.PluginCommand.execute(PluginCommand.java:45) ~[patched_1.15.2.jar:git-Paper-174]
15.06 00:08:11 [Server] INFO at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:159) ~[patched_1.15.2.jar:git-Paper-174]
15.06 00:08:11 [Server] INFO at org.bukkit.craftbukkit.v1_15_R1.CraftServer.dispatchCommand(CraftServer.java:752) ~[patched_1.15.2.jar:git-Paper-174]
15.06 00:08:11 [Server] INFO at org.bukkit.craftbukkit.v1_15_R1.CraftServer.dispatchServerCommand(CraftServer.java:714) ~[patched_1.15.2.jar:git-Paper-174]
15.06 00:08:11 [Server] INFO at net.minecraft.server.v1_15_R1.DedicatedServer.handleCommandQueue(DedicatedServer.java:469) ~[patched_1.15.2.jar:git-Paper-174]
15.06 00:08:11 [Server] INFO at net.minecraft.server.v1_15_R1.DedicatedServer.b(DedicatedServer.java:431) ~[patched_1.15.2.jar:git-Paper-174]
15.06 00:08:11 [Server] INFO at net.minecraft.server.v1_15_R1.MinecraftServer.a(MinecraftServer.java:1132) ~[patched_1.15.2.jar:git-Paper-174]
15.06 00:08:11 [Server] INFO at net.minecraft.server.v1_15_R1.MinecraftServer.run(MinecraftServer.java:940) ~[patched_1.15.2.jar:git-Paper-174]
15.06 00:08:11 [Server] INFO at java.lang.Thread.run(Thread.java:748) [?:1.8.0_242]

mvhc permissions

Is there any documentation on the permissions for the hardcore. If not could we get a permission similar to banOPs?

Maven repository is HTTP when it should be HTTPS

I just cloned your project for the first time, and maven wouldn't build on my machine because the pom.xml line 38 has an http when it could have an https:

<url>http://repo.onarandombox.com/content/repositories/multiverse/</url>

should be

<url>https://repo.onarandombox.com/content/repositories/multiverse/</url>

Changing http to https made everything work on my machine. This might be a setting you have on your machine to allow http maven repositories, but others may not have that setting for a little additional security :)

User is able to teleport back into world as a spectator

Hi there,

EDIT: Running server with Spigot 1.16.3

I currently have a minor issue with the plugin. I use the CommandSigns plugin, along with Multiverse-Core and MultiverseHardcore.

I set up a brand new Hardcore world and made sure the settings were set to ban forever and that spectator mode was set to false.
image

On the command sign, I set temporary permissions that allow the user to teleport back into the hardcore world. Obviously, when they right-click the sign, it teleports them to the hardcore world. These are the temporarily granted permissions the users receive when they right-click the sign (which then immediately revokes them afterward)
image

During testing, I got a regular user to test what happens when he dies in the world. Sure enough, it bans him permanently... kinda. The issue comes in when the user uses the command sign to teleport back in. He's able to re-join the world but as a spectator.

I'm unsure why this is the case, but I feel it's something to do with the Command signs plugin with the Multiverse plugin overwriting the Multiverse Hardcore plugin's settings somehow.

Any ideas on why the user is able to teleport back into the world as a spectator? Could this issue be caused by the CommandSigns plugin?

Kind regards,
SirAussieman

Automatically Teleport Player After Deathban?

I want to have a deathban world. Players who die in overworld will be forced into the deathban world. At the end of their deathban, I want to reset their player data in the deathban world and teleport them back to the overworld. (Preferably back at their bed if they have one).

The key part missing is the timed action. In the case that a player is offline when they are suppose to be teleported, they should simply respawn in the overworld when they log back in.

Compatiblity issues with Java 8

[18:31:20] [Server thread/ERROR]: Could not load 'plugins\MultiverseHardcore-1.0.2.jar' in folder 'plugins'
org.bukkit.plugin.InvalidPluginException: java.lang.UnsupportedClassVersionError: life/lluis/multiversehardcore/MultiverseHardcore has been compiled by a more recent version of the Java Runtime (class file version 55.0), this version of the Java Runtime only recognizes class file versions up to 52.0

Prevent other commands

This plugin seems great, though one thing I'm trying to do is block certain plugins from working on this world, namely tpa, warp, and home commands in Essentials. I do not want players to be able to type /home safe to escape some near-death moment the way they can in survival.

Edit: Closed my own issue, I used LuckPerms contexts to address this.

Plugin triggers legacy material support

[19:04:22] [Server thread/WARN]: Initializing Legacy Material Support. Unless you have legacy plugins and/or data this is a bug!
[19:04:27] [Server thread/WARN]: Legacy plugin MultiverseHardcore v1.0.3 does not specify an api-version.

I manually added api-version: "1.15" to plugin.yml, and the warning stopped. I'm not sure if that's an appropriate choice, but it seemed to work without any adverse effects.

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.