UltraHardcore Reloaded
Just another UHC plugin?
Well, not exactly. This plugin is a very complete UltraHardcore plugin, lightweight, actively maintained and updated, with a lot of features, for Bukkit & Spigot 1.8.3+ (if you need Bukkit 1.7.9 compatibility, use the 1.2 version).
↓ Download links ↓
GitHub and Jenkins builds are not checked by the BukkitDev staff. Use them at your own risks.
Please note — the description below is being updated to the 1.4 version. By the meantime, please use the README on GitHub to see the features of the latest version of this plugin.
Features
This plugin manages an UHC match, with a lot of options.
All the standard features of an UltraHardcore plugin are here: no regeneration with food, teleportation of the players (grouped by teams or in solo), etc. But wait! We have some unique features...
Almost all features can be disabled, see the configuration file.
Episodes
The time is divided with episodes. An episode is nothing more than a time mark; this can be used to compare the duration of two matches, to manage the advancement of the game for the players, to say « Border reduction at the next episode », or (the original objective) to split a published video of the game...
The end of an episode is broadcasted in the chat. The support of the /title
command is planned, when Bukkit for Minecraft 1.8 will be available.
Scoreboard-related
Match infos are displayed on a scoreboard, on the left of the screen.
This scoreboard contains the number of alive players, teams, along with the current episode.
Of course, the title of this scoreboard can be changed, as well as his content.
Also, the health of the players is displayed in the players list.
Gameplay tweaks
New and changed crafts, new tracker compass...
Golden heads
Players drop their head on death (PVP-only flag available). Then...
(You can configure the amount of golden apple crafted, the type (enchanted or not), the number of hearts regenerated, and if a lore is added (saying “Made from the fallen head of ThePlayer”) — for each kind of “golden head”.)
Difficulty increased
Because else, it's too simple.
New crafts.
Option to disable ghast tears (replaced by gold) (to avoid regeneration potions), level-II potions (dat power), enchanted golden apple (dat POWER).
Tracker
With a compass, if you right-click with some rotten flesh in your inventory, the compass will point to the nearest player (team excluded).
But it's not as simple as that. The craft is different: you'll need one loot from each main aggressive mobs.
In the snapshots 1.1.1+: harder crafts, with an ender pearl or an eye of ender instead of the redstone, as an option (one of the three crafts displayed above).
And also: semi-shapeless recipe, with the central part (iron + central ingredient) fixed, but the loots, not.
Enderpearls, why not in UHC?
You can disable the enderpearls' damages. With this option, at any time, a player can teleport near you... This adds a little spice to the game.
Death announcements
You can configure a death sound (by default, WITHER_SPAWN — DDAAAAAANNNnnnnnnnngggggggggg), to notify all players a player has passed away.
And you can launch a lightning bolt (only an effect, no damages) on the death point, to make the death point visible for the nearest players...
You can also send a “team-death” message.
Borders
We have a great wall generator. Because glass walls are great, but light gaps in the caverns, nope.
So, what about a two-blocks wall? As example, glass blocks to replace the air-like blocks, and bedrock for the other blocks. But you can use bookshelves instead of the glass if you want (hey, why not?).
By the way, the wall can be circular or squared, and will be centered on the world' spawn point.
The support of the vanilla world border is planned, when Bukkit for Minecraft 1.8 will be available.
You want to reduce the size of the map during the game? You'll need to warn your players before.
Just execute /uh border warning <futureDiameter>
, and boom, all players out of the future border will receive, every 90s by default, this message:
You can also join the time available before the reduction. And see the players out of any border, with /uh border check <diameter>
.
To change the diameter and block the players inside the new border*, just execute /uh border set <diameter>
.
* The players are blocked inside the border without wall only if WorldBorder is installed.
Team chat
What if you want to share an information with your team (like coordinates)? Or if you can't use Mumble?
Well, if it's the case, just use /t <message>
to send a private message to your team!
//amaury.carrade.eu/files/Minecraft/Plugins/UH/UHPlugin_TeamPrivateMessage.png" rel="noopener nofollow" target="_blank">http://amaury.carrade.eu/files/Minecraft/Plugins/UH/UHPlugin_TeamPrivateMessage.png" alt="[AmauryPi -> his team] Hi there, this message is private!" />
In the snapshots 1.1.1+: you can lock the team chat with /togglechat
, and administrators can go inside another private team-chat using /togglechat <team ...>
.
From a locked team-chat, just use /g <message>
to send a message to the main, global, chat.
Also, ProTips are sent to inform the players about these possibilities & commands.
Spectator mode
Install SpectatorPlus, disable the kick on death (option death.kick.do
).
That's all, you have a spectator mode.
(But nothing prevents you from configuring SpectatorPlus for it to fit with your wildest desires.)
You can also add startup spectators (the players marked as such will not play at all), with /uh spec add <player>
.
Integration into other plugins
Besides SpectatorPlus, this plugin can be integrated into WorldBorder and dynmap.
WorldBorder will manage all border-check-related tasks; the dynmap will display the spawn and death points of the players.
Freezer
Pause needed? Execute /uh freeze all
and the mobs and players will be frozen; the players will be invulnerable; the bows, disabled; the timer, frozen.
And use /uh freeze none
to unfreeze the game.
You can also (un)freeze an individual player with /uh freeze on|off <player>
.
Others
There are a lot of other big and small features. You can see a complete list below.
Also, the commands acts like such a list too :) .
All the features are here
(Images too)
Commands & permissions
Documentation available in game: execute /uh
.
You can see the documentation of a command with sub-commands by executing the command without subcommand.
Example: /uh team
for the documentation of the team
command.
Legend: /uh command <required> [optional=default]
.
Command | Description | Permission |
---|---|---|
/uh start |
Starts the game | uh.start |
/uh start slow |
Starts the game slowly, for smaller servers | uh.start |
/uh shift |
Shifts an episode | uh.shift |
/uh team |
Manages teams | uh.team |
/uh addspawn [<x> <z>] |
Adds a spawnpoint for a team | uh.addspawn |
/uh spec |
Manages startup spectators | uh.spec |
/uh border |
Manages the border (current, set, warning, check) | uh.border |
/uh generatewalls |
Generates the wall | uh.generatewalls |
/uh heal <player> [half-hearts=20] |
Heals a player to the number of half-hearts given | uh.heal |
/uh healall [half-hearts=20] |
Heals all players instead of only one | uh.healall |
/uh resurrect <player> |
Resurrects a dead player. He is counted as a player (not a spectator) and unbanned (if needed) | uh.resurrect |
/uh tpback <player> [force] |
Safely teleports back a player to his death point | uh.tpback |
/uh freeze |
(Un)freeze the entire game or some players | uh.freeze |
/t <message> |
Sends a private message to the entire team of the sender. | — |
/uh about |
Prints informations about the plugin and the translations | uh.about |
Other permissions
Permission | Description |
---|---|
uh.build |
Allows a player to build before the start of the game. Without, a player spawns in adventure mode and can't break anything. With, he spawns in creative mode and can do everything he wants. |
If you don't want to bother with permissions: the operators can do anything; the non-ops, nothing (except play and execute /t <message>
).
Installation
Download the latest version and put the downloaded JAR file into the `plugins/` folder of your Minecraft server.
This plugin is not compatible with Minecraft 1.7 or 1.8.0; Minecraft 1.8.3+ is needed. The plugin was tested and works with both CraftBukkit and Spigot.
If you absolutely need Bukkit 1.7.9 compatibility, use UHCReloaded 1.2. Bukkit 1.7.4 and below are not supported at all.
You can also install these plugins:
- WorldBorder, for all border-check-related tasks;
- SpectatorPlus, if you want to enable a spectator mode for dead players;
- dynmap, because the plugin can display the spawn & death points on the map.
This plugin is needed for some options:
- ProtocolLib, for the hardcore hearts and the automatic respawn.
After the installation, I recommend you to:
- teleport yourself to 0,0 (in creative,
/tp 0 100 0
); - set the world spawn point here (
/setworldspawn
); - reload the server (for the plugin to take into account the change) (
/rl
); - pregenerate the entire world (WorldBorder is preconfigured, just execute
/wb fill
); - only after that, generate the wall (
/uh generatewalls
) (don't forget to configure the shape and the size in the config file before). Otherwise, holes will be formed in the wall when Minecraft will populate the terrain.
Attribution
This project is a very big fork of a plugin made by azenet for the “Kill the Patrick” matches, an event organized by and for french YouTubers.
About the version numbering
1.<evenNumber>
: stable version.1.<oddNumber>
: snapshot.
It's as simple as that.
Issues, suggestions and source code
The source and the issues are hosted by GitHub. Click below to access the repository!
By the way, please add an issue on GitHub if you have a suggestion or a bug report :) .
@johnb165 →
I like ideas :D . This is why I added your previous suggestion into my list.
For the TagAPI support, this can be a good idea; also, it's easy to implement I think.
I through names where colored according to the team color (or display name); it appears it's not always the case.
Thanks for this suggestion :) . Saved.
Sorry if Im bugging you with Ideas, but how about a TAGAPI support too? It will display the players' usernames corresponding to their team color
I will wait for update
@johnb165
Good Idea
@TheMCBrosofGaming
It will be done as you can see here.
And here you can see all the features that are thought to be added.
Instead of doing spawnpoints how about you have this command that scatters the players/teams. Like /scatter <radius>
@johnb165 →
Hmm, great idea :) . This can be interesting. I'll think about this.
You should add BARAPI support
@PlusMCPKBPK
The whole point of UHC is that it's Hardcore - so why would a player respawn after 10 seconds?
Also, can I ask what is wrong with adventure mode + fly? In my opinion the gamemode doesn't make any difference, so long as you can fly...
@AmauryPi OK
and answer of your question is mean when i get killed or died i will get creative mode and will respawn instantly when your setup time are left
like this in config waittimeuntilrespawn = <your setup> Example = 10
so it will work like this
Your Settimg Time > I Died > gamemode 1 [10 sec] like spectator + cannot break anything > respawn
and i have vedio for explain http://youtu.be/vfwF0rii7gU
@PlusMCPKBPK →
This plugin is initially intended to be a plugin installed on a dedicated server, for one UHC match.
And I don't want to make it complicated to use.
This said, there's an API in this plugin. So, I (or anyone) can add a world white-list on this plugin — and only that —, and then create another plugin to manage an automated UHC server. The other plugin will use this plugin to manage each individual match.
I keep the idea in mind, but this can be long to implement. Not the world filter, but the other plugin.
Why? I mean, if you want a spectator mode, I have one; but why for 10 seconds? I don't understand the interest of this point.
By the way, if you can, please use GitHub for requesting features :) .
Please add my UHC idea system
- can choose world = what world that will be UHC world
- lobby world
- join sign
- will have mineplex respawn that when you died you will be get creative mode 10 sec and cannot destroy anything and when time left you will be respawn in survival mode
@PlusMCPKBPK →
Hello.
This plugin is not compatible with CraftBukkit 1.7.2, that's why you are getting this error. But you found the origin of the issue :) .
I'll add a clear notice for this I think :) .
Oh isee ! my craftbukkit 1.7.9 ro.1 first released is error , i forget to update , sorry
What is this ? Player Visibility Make Error ? and Can you fix this ?
Plugin `Ultra_Hardcore v0.1' uses the space-character (0x20) in its name `Ultra Hardcore' - this is discouraged [19:29:54] [Server thread/ERROR]: Could not load 'plugins\UHPlugin-1.0.jar' in folder 'plugins' org.bukkit.plugin.InvalidDescriptionException: Invalid plugin.yml at org.bukkit.plugin.java.JavaPluginLoader.getPluginDescription(JavaPluginLoader.java:160) [craftbukkitserver.jar:git-Bukkit-1.7.2-R0.3-29-g48182b4-b3057jnks] at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java:133) [craftbukkitserver.jar:git-Bukkit-1.7.2-R0.3-29-g48182b4-b3057jnks] at org.bukkit.craftbukkit.v1_7_R3.CraftServer.loadPlugins(CraftServer.java:357) [craftbukkitserver.jar:git-Bukkit-1.7.2-R0.3-29-g48182b4-b3057jnks] at org.bukkit.craftbukkit.v1_7_R3.CraftServer.<init>(CraftServer.java:319) [craftbukkitserver.jar:git-Bukkit-1.7.2-R0.3-29-g48182b4-b3057jnks] at net.minecraft.server.v1_7_R3.PlayerList.<init>(PlayerList.java:68) [craftbukkitserver.jar:git-Bukkit-1.7.2-R0.3-29-g48182b4-b3057jnks] at net.minecraft.server.v1_7_R3.DedicatedPlayerList.<init>(SourceFile:14) [craftbukkitserver.jar:git-Bukkit-1.7.2-R0.3-29-g48182b4-b3057jnks] at net.minecraft.server.v1_7_R3.DedicatedServer.init(DedicatedServer.java:126) [craftbukkitserver.jar:git-Bukkit-1.7.2-R0.3-29-g48182b4-b3057jnks] at net.minecraft.server.v1_7_R3.MinecraftServer.run(MinecraftServer.java:436) [craftbukkitserver.jar:git-Bukkit-1.7.2-R0.3-29-g48182b4-b3057jnks] at net.minecraft.server.v1_7_R3.ThreadServerApplication.run(SourceFile:628) [craftbukkitserver.jar:git-Bukkit-1.7.2-R0.3-29-g48182b4-b3057jnks] Caused by: org.yaml.snakeyaml.constructor.ConstructorException: null; could not determine a constructor for the tag !@UTF8 at org.yaml.snakeyaml.constructor.SafeConstructor$ConstructUndefined.construct(SafeConstructor.java:475) [craftbukkitserver.jar:git-Bukkit-1.7.2-R0.3-29-g48182b4-b3057jnks] at org.yaml.snakeyaml.constructor.BaseConstructor.constructObject(BaseConstructor.java:183) [craftbukkitserver.jar:git-Bukkit-1.7.2-R0.3-29-g48182b4-b3057jnks] at org.yaml.snakeyaml.constructor.BaseConstructor.constructSequenceStep2(BaseConstructor.java:277) [craftbukkitserver.jar:git-Bukkit-1.7.2-R0.3-29-g48182b4-b3057jnks] at org.yaml.snakeyaml.constructor.BaseConstructor.constructSequence(BaseConstructor.java:248) [craftbukkitserver.jar:git-Bukkit-1.7.2-R0.3-29-g48182b4-b3057jnks] at org.yaml.snakeyaml.constructor.SafeConstructor$ConstructYamlSeq.construct(SafeConstructor.java:440) [craftbukkitserver.jar:git-Bukkit-1.7.2-R0.3-29-g48182b4-b3057jnks] at org.yaml.snakeyaml.constructor.BaseConstructor.constructObject(BaseConstructor.java:183) [craftbukkitserver.jar:git-Bukkit-1.7.2-R0.3-29-g48182b4-b3057jnks] at org.yaml.snakeyaml.constructor.BaseConstructor.constructMapping2ndStep(BaseConstructor.java:326) [craftbukkitserver.jar:git-Bukkit-1.7.2-R0.3-29-g48182b4-b3057jnks] at org.yaml.snakeyaml.constructor.SafeConstructor.constructMapping2ndStep(SafeConstructor.java:143) [craftbukkitserver.jar:git-Bukkit-1.7.2-R0.3-29-g48182b4-b3057jnks] at org.yaml.snakeyaml.constructor.BaseConstructor.constructMapping(BaseConstructor.java:307) [craftbukkitserver.jar:git-Bukkit-1.7.2-R0.3-29-g48182b4-b3057jnks] at org.yaml.snakeyaml.constructor.SafeConstructor$ConstructYamlMap.construct(SafeConstructor.java:459) [craftbukkitserver.jar:git-Bukkit-1.7.2-R0.3-29-g48182b4-b3057jnks] at org.yaml.snakeyaml.constructor.BaseConstructor.constructObject(BaseConstructor.java:183) [craftbukkitserver.jar:git-Bukkit-1.7.2-R0.3-29-g48182b4-b3057jnks] at org.yaml.snakeyaml.constructor.BaseConstructor.constructDocument(BaseConstructor.java:142) [craftbukkitserver.jar:git-Bukkit-1.7.2-R0.3-29-g48182b4-b3057jnks] at org.yaml.snakeyaml.constructor.BaseConstructor.getSingleData(BaseConstructor.java:128) [craftbukkitserver.jar:git-Bukkit-1.7.2-R0.3-29-g48182b4-b3057jnks] at org.yaml.snakeyaml.Yaml.loadFromReader(Yaml.java:480) [craftbukkitserver.jar:git-Bukkit-1.7.2-R0.3-29-g48182b4-b3057jnks] at org.yaml.snakeyaml.Yaml.load(Yaml.java:411) [craftbukkitserver.jar:git-Bukkit-1.7.2-R0.3-29-g48182b4-b3057jnks] at org.bukkit.plugin.PluginDescriptionFile.<init>(PluginDescriptionFile.java:189) [craftbukkitserver.jar:git-Bukkit-1.7.2-R0.3-29-g48182b4-b3057jnks] at org.bukkit.plugin.java.JavaPluginLoader.getPluginDescription(JavaPluginLoader.java:155) [craftbukkitserver.jar:git-Bukkit-1.7.2-R0.3-29-g48182b4-b3057jnks] ... 8 more [19:29:54] [Server thread/WARN]: Plugin `Player_Visibility v1.3.2' uses the space-character (0x20) in its name `Player Visibility' - this is discouraged
The BEST of its kind :D
super good plugin! this are awsome thanks :<3
@pgmann →
Thanks for the advice. I added a warning about this in the project's description :) .
@pgmann
Already have changed the message.
Than You for the warning :)
Glad to see the plugin getting listed on BukkitDev. Be careful giving people direct download links, it can get your project removed... you're meant to add a statement staying external builds are not checked by BukkitDev staff. Just FYI :-)