Minecraft Blogs / Tutorial

Successfully UHC (╯°□°)╯︵ ┻━┻

  • 5,541 views, 2 today
  • 6
  • 3
  • 5
Clairefox's Avatar Clairefox
Level 28 : Expert Artist
54
[NOTE] This Guide is based off of my own experiences with creating and a UHC Event Server. Your experiences will not be exactly like this, nor should they be <3 I have created this guide as well, just a guide. Refer to it, but don't live by it.

My server just finished it's first UHC Event <3 I learned a lot from this experience and would love to share it with everyone! So I'm making the following tutorial on how to setup and run your very own UHC Event Server! What I mean by event, is that it will run no more than a few hours [depending on number of people participating]. I will reference our UHC Event throughout and use it as an example for command inputs as well.

When I first created our UHC Event Server, I had these links for initial reference:

Reddit UHC Guide
Sid's UHC Hosting Tutorial

Things not being covered in this Tutorial:
Getting a Host for your Server
Advertising Your Match

Things that will be covered in this Tutorial:
Bukkit/Plugin setup
Starting the Event
Event Cleanup and Server Reset

For this Tutorial, I will be assuming you're computer literate and able to do basic functions like right-clicking and File > Save.


Image


Try always to use the Recommended Build or Last Successful Artifact of a server file version. In this Tutorial, we will be using version 1.7.4 as all of the plugins discussed below will work for that version.
Spigot Download Link

You will need the following plugins to make a server like in this Tutorial:
Essentials
PermissionsEX
WorldBorder
WorldEdit
WorldGuard
Skript
TimedMessages
PlayerHeads
SimplyVanish <-- Only needed if you want to allow Spectators
UltraHardcore


For editing your server's files, I highly recommend using Notepad++ as it is an amazing and FREE program that will make understand your files so much easier. <3
  1. Create a "UHC Server" folder if you haven't already.
  2. Download and place the spigot.jar file into your Server's folder.
  3. Open a new tab in Notepad++ and paste in the following: [Replace 4G with the amount of memory you want to allocate to this server]java -server -XX:MaxPermSize=128M -Xmx4G -jar spigot.jar -o truePAUSE
  4. Save the file as "run.bat" and close it.
  5. Double-click "run.bat" to start up your server and generate all of its files.
  6. Type "stop" into the command window to shutdown your server after all the text stops flowing and it says "Done" near one of the bottom lines.
  7. Right-click "spigot.yml" file in your server's folder and open with Notepad++
  8. Change the following to read:mob-spawn-range: 6entity-tracking-range: players: 128other: 128save-structure-info: false
  9. Save the file and close it.
  10. Right-click "server.properties" file and open with Notepad++
  11. Change the following to read:allow-flight=truepvp=trueenable-command-block=truespawn-protection=0
  12. Save the file and close it.
  • Don't forget to add yourself to the whitelist if you enabled the whitelist in server properties.
  • With version 1.7 you can also make a cool little picture that will show up in the server list on player's clients! Pictures need to be 64x64.
Image

I'll be going through each plugin one-by-one for their config files here.
  1. Download all of the plugins in the list above and place their .jar files into your "plugins" folder in your Server's folder.
  2. Double click your "run.bat" file to start the server and generate each plugin's config files.
  3. Type "stop" into the command window to shutdown your server after all the text has stopped and you see "Done" like before.
Essentials
Essentials has about 4 .jar files total. For your server, you will only need: EssentialsChat.jar, EssentialsProtect.jar, and EssentialsSpawn.jar
  1. Go into your Essentials folder inside your plugin's folder and right-click "config.yml" and open with Notepad++
  2. Scroll carefully [lots of text to search through] and change to following to:sethome-multiple: [all options should be "0"]prevent: [under EssentialsProtect. All options should be "false"]spawnpoint: [under EssentialsSpawn. Should be blank]kit: [under EssentialsSpawn. Should be blank]
You can also edit the help, motd, and rules files in your Essentials folder. When someone types "/help", "/motd" [also first thing they see when logging in], and "/rules", they see what are in these files.

As examples, here is what my server uses:
help.txt
&9Welcome to the Help File! The following pages are available:
/help commands
/help spectator
#
#
#commands
&2Basic In-Game Commands
&2/help &fBrings up the Help File
&2/rules &fBrings up our Server's Rules
&2/tc &fSends a message to all of, and to only, your Teammates
&2/t IGN &fSend a private message to a player
&2/r &fReply to a message sent to you
#
#
#spectator
&6As a Spectator, you will not be able to interact with the world and you will be invisible to all other players.
&6You cannot chat at all in-game. Please be a good sport and don't give away other players locations.
&6Spectators are required to move to the Spectator Lobby on TS if they are using TS.
&eSpectators giving out coordinates and other info, that players can use against each other OR to give them an advantage with resources, will be temp-banned until the event is over.
&2Commands available to Spectators
&a/fly &fAllows you to fly
&a/tp IGN &fTeleports you to another player
&a/spawn &fTeleports you to spawn
motd.txt
Welcome {PLAYER} to &cCherry's UHC Event <3
&2Please make sure to review UHC Rules using &a/rules
&ePlease wait patiently for the game to begin.
rules.txt
&21. &fBe polite and respectful to all players. Be in control of your language.
&22. &fRacism, Sexism, and Discrimination of any kind will not be tolerated.
&23. &fNo Strip-Mining.
&24. &fRegen Potions cannot be made, instead Golden Apples/Heads can regen health.
&25. &fAbsolutely No X-ray Mods/Texture packs or Hacking.
&26. &fNo client-side Mods [mini-maps, health bars, etc].
&27. &fNo Cross-Team Alliances.
PermissionsEX

There's no need to edit the config file in permissionsex folder. You will however need to update the permissions.yml file in there. This file says what each player, based on the group they are put in, can and cannot do. As what you need may be slightly different than what I need, I will just post mine as an example and you can edit it to your heart's desire. Please wait until the end of this tutorial before editing it, because you might remove some things that you actually DO need <3

There are 5 teams listed in it under basic names. Change these to whatever you would like. Change my name to yours at the bottom under "users:"
permissions.yml
groups:
default:
prefix: '&7'
default: true
permissions:
- bukkit.command.help
- -bukkit.command.plugins
- -essentials.ban.notify
- essentials.chat
- essentials.chat.color
- essentials.help
- essentials.me
- essentials.modifyworld.*
- essentials.motd
- essentials.msg
- essentials.msg.color
- essentials.msg.url
- essentials.rules
- essentials.spawn
- essentials.tell
- modifyworld.*
- uhc.timer
options:
rank: '1000'
Spectator:
default: false
prefix: '&f'
permissions:
- bukkit.command.help
- -bukkit.command.plugins
- essentials.back
- essentials.back.ondeath
- -essentials.ban.notify
- -essentials.build.break.*
- -essentials.build.interact.*
- -essentials.build.place.*
- -essentials.build.pickup.*
- essentials.protect.damage.*
- essentials.protect.entitytarget
- essentials.fly
- essentials.fly.safelogin
- essentials.help
- essentials.me
- essentials.motd
- essentials.rules
- essentials.silentjoin
- essentials.silentquit
- essentials.spawn
- essentials.teleport.timer.move
- essentials.tp
- essentials.worlds.*
- simplyvanish.auto-vanish
- simplyvanish.vanish.self
- uhc.timer
options:
rank: '500'
Owner:
prefix: '&f'
default: false
inheritance:
- default
permissions:
- event.commands
- event.score
- bukkit.command.save
- bukkit.command.stop
- bukkit.command.effect
- bukkit.command.plugins
- bukkit.command.scoreboard
- bukkit.command.setblock
- bukkit.command.whitelist.*
- essentials.*
- permissions.*
- worldborder.*
- worldguard.*
- permissions.*
- playerheads.spawn
- simplyvanish.reload
- simplyvanish.reappear.*
- simplyvanish.vanish.*
- skript.admin
- timedmessages
- timedmessages.*
- UHC.generateborder
- worldedit.*
options:
rank: '1'
users:
Clairefox:
group:
- Owner
permissions:
- bukkit.command.scoreboard
- event.commands
PlayerHeads
  1. In the PlayerHeads folder, right-click and open "config.yml" with Notepad++
  2. Change all percentages to 0 if you don't want any monster/animal heads to drop. I do suggest putting player heads to 0, because the UHC plugin will place playerheads on spikes anyways.
  3. Save and close the file.
SimplyVanish
  1. In the SimplyVanish folder, right-click and open "config.yml"
  2. Change the following to say:messages: suppress: join: true quit: trueauto-vanish: use: true
  3. Save the file and close it.
UltraHardcore
  1. In the UltraHardcore folder, right-click and open "config.yml"
  2. Change the following to say: features: worlds: [Your Netherworld Name here] potionNerfs: disableSplash: false disableAbsorb:ture disableGlowstone: true deathbans: enabled: false [only if you want to allow Spectators, otherwise leave true] scatter: delay: 20 [20 ticks is 1 second] default: world: [Your Overworld Name. Then change the coords and radius to what you will set in the WorldBorder command] useteams: true [If you are using teams]
TimedMessages

This is used for time markers to show how long people have been playing, and also lets them know how much time is left in the game. This is great for your YouTubers as you can set it to intervals that are great lengths for their videos.
I'll provide mine as an example, but make sure in yours that the mode = rotation, so that the messages go in the order that they appear. You don't need to touch the "config.yml", instead we are editing the "messages.yml"

This example shows messages for 3 hours, but you should edit it down for how long you want to run your event.
messages.yml
messages:
UHCtimestamp:
mode: rotation
delay: 20m
permission: uhc.timer
messages:
- '&LIGHT_PURPLE[Server] GO!!'
- '&LIGHT_PURPLE[Server] 20 MINUTES IN'
- '&LIGHT_PURPLE[Server] 40 MINUTES IN'
- '&LIGHT_PURPLE[Server] 60 MINUTES IN'
- '&LIGHT_PURPLE[Server] 80 MINUTES IN'
- '&LIGHT_PURPLE[Server] 100 MINUTES IN'
- '&LIGHT_PURPLE[Server] 120 MINUTES IN'
- '&LIGHT_PURPLE[Server] 140 MINUTES IN'
- '&LIGHT_PURPLE[Server] 160 MINUTES IN: PREPARE FOR SUDDEN DEATH'
- '&LIGHT_PURPLE[Server] GAME OVER'
Skript

Skript is an amazing plugin for us that don't know Java and cannot make our own plugins!! After using it on our UHC event, I've already started using it on our regular server for those little things that I couldn't fix before <3
I'm not going to give a tutorial on how Skript works, but if you want to learn more about it, I highly suggest visiting their forums and Documentation pages.

Here I will post the skripts that I've made for our UHC event.
UHCspectator - Upon a players death they are turned invisible and are unable to interact with the world. Literally all they can do it teleport around and just watch.
UHCscoreboard - Tracks actions that players take. I gave out other prizes after our UHC event was done, like items for the team that mined the most, harvested the most, ate the most, etc.
UHCcommand - Runs the necessary commands to Scatter/Start/Sudden Death/Stop so you don't have to type out ALL those commands when the time comes <3 Make sure to change my name 'Clairefox' in the /eventdeath command to your own.

Place them into your Skripts > scripts folder. Make sure all the other scripts in that folder are disabled [unless you have one in there that you want to use]

Open the "variables.csv" file with Notepadd++ to view the results of the UHCscore after a match. The in-game command only works with the players online unfortunately.

WorldBorder - Nothing to be done from outside the game.
WorldEdit - Nothing to be done from outside the game.
WorldGuard - Nothing to be done from outside the game.

Image

Yay! The hardest part is halfway over ^_^
Double-click your "run.bat" file and log on to your server <3

For an Event with 20 people participating, I suggest a map radius of 750 or less [diameter 1500 or less]. I also suggest a total time no more than 3 hours and 20 minutes. Our first event ran for 4 hours and there were some players who seemed less enthused towards the end >_>..

But for building your arena's now <3 Once you've found a good 1500x1500 chunk with lots of land we can start. For the example of these commands, we'll assume the center of this chunk is at 0,0. Change the numbers to reflect how big you want your own map to be.
  1. Stand at 0,0 and run the following commands
  2. /wb shape square
  3. /wb set 750
  4. /wb fill
  5. /wb fill confirm
  6. Now wait until your map is done being filled.
Now that that is done, we can build the wall. [This first command sets the wall to White Stained Glass blocks. Change the 95:0 to the block you want. the ":0" is required even if it's just "95" normally]
  1. /generateborder 750 OverworldName:0,0 Square:95:0 That command will more than likely lag you off the server. Don't Panic. Count to 10 and log back in and the wall will be done.
Now we can start defining regions:
  1. /region flag __global__ creeper-explosion deny
  2. /region flag __global__ pvp deny
  3. /region flag __global__ enderman-grief deny
  4. /region flag __global__ fire-spread deny
  5. /region flag __global__ mob-spawning deny
  6. //pos1 749,0,749
  7. //pos2 -749,0,-749
  8. //expand vert
  9. /region define arena
  10. /region flag arena priority 10
  11. /region flag arena creeper-explosions allow
  12. /region flag arena pvp deny
  13. /region flag arena enderman-grief allow
  14. /region flag arena fire-spread allow
  15. /region flag arena mob-spawning allow
  16. /region flag arena build allow
  17. //pos1 750,0,750
  18. //pos2 -750,40,-750
  19. /region define mining
  20. /region flag mining greeting [You're below y:40] Remember No Strip-Mining!
Now go ahead and build your Spawn building. Type "//wand" to get the wooden axe [or take it out of the creative inventory] and left-click to select the first position, and right-click to select the second position. Do this to cover the entire area of your spawn building. Type the following:
  1. /region define spawn g:Owner
  2. /region flag spawn creeper-explosion deny
  3. /region flag spawn pvp deny
  4. /region flag spawn enderman-grief deny
  5. /region flag spawn mob-spawning deny
  6. /region flag spawn build deny
  7. /region priority spawn 20
Now do the same and build your "Sudden Death" arena. Select it using the wand as well. Type the following commands:
  1. /region define finale g:Owner
  2. /region flag finale creeper-explosion deny
  3. /region flag finale pvp deny
  4. /region flag finale enderman-grief deny
  5. /region flag finale mob-spawning deny
  6. /region flag finale build deny
  7. /region priority finale 20
People may or may not go into the Nether world. But we better prepare for it.
  1. /spawn
  2. /world
  3. From where you stand [should still be 0,0] type the following:
  4. /wb shape square
  5. /wb set 110
  6. /wb fill
  7. /wb fill confirm
  8. Now wait until your map is done being filled.
  9. /generateborder 110 OverworldName_nether:0,0 Square:95:15That command will more than likely lag you off the server. Don't Panic. Count to 10 and log back in and the wallwill be done.
  10. /region flag __global__ creeper-explosion deny
  11. /region flag __global__ pvp deny
  12. /region flag __global__ enderman-grief deny
  13. /region flag __global__ fire-spread deny
  14. /region flag __global__ mob-spawning deny
  15. //pos1 109,0,109
  16. //pos2 -109,0,-109
  17. //expand vert
  18. /region define arena
  19. /region flag arena priority 10
  20. /region flag arena creeper-explosions allow
  21. /region flag arena pvp allow
  22. /region flag arena enderman-grief allow
  23. /region flag arena fire-spread allow
  24. /region flag arena mob-spawning allow
  25. /region flag arena build allow
Let's get the Teams ready now. Repeat these commands for as many teams as you would like to create.
  1. /scoreboard teams add TEAMNAME
  2. /scoreboard teams option TEAMNAME color COLORNAME
If you're using my skripts, you can use "/eventcreateteams" instead and it will automatically create 10 teams that are colored. If you need to remove the teams for some reason, use "/eventdeleteteams" and it will remove all of the teams in the scoreboard.

Image


Ok~ NOW the hard parts are over!

Now it's the day of your event and everyone is logged on to your server and waiting in the spawn area.
For my event, because I didn't think of a better way to do it, I wrote down everyone's name on a piece of paper, cut them out and literally drew out of a hat xD It worked though <3 Type the following commands to separate players into their teams. Repeat them for each player.
  1. /scoreboard teams join TEAMNAME PLAYERNAME

OR What you can do to automate this process is to setup some command blocks with the following command:
  1. /scoreboard teams join TEAMNAME @r[c=3,team=]
"@r" is 'random', "c=" is the number of people to join to this team. and leave the "team=" just like that, don't add anything after that. You'll need 1 command block per team.

Now that everyone is separated into their teams, we are ready to begin!
  1. /eventscatter
  2. Once everyone is scattered across the map with their teams, you can start the countdown.
  3. /eventstart
These commands are run from the scripts that I made. If you made other scripts to run your scatter and start, use those instead. The /eventscatter command is set for a region with a radius of 750. Edit the command inside the file for your own uses.

Now the game is in full swing~ People are mining and crafting; People are fighting and dying~ But now the time markers say it's time for Sudden DEATH!!! *scary music*
  1. /eventdeath
This will start a second countdown specifically for Sudden Death and everyone can finish the event <3
Make sure, that if you're using my skripts, to change from my name to your name in the /eventdeath command inside the file. Use Notepad++ to open the scripts.

When you're all done:
  1. /eventstop
  2. type "stop" into the console window to safely shutdown the server.
Image

"OMG THAT WAS SO MUCH FUN!!!!!"
"CAN WE DO IT AGAIN??????"

Of course! Let's do some cleanup~ Now that all the hardwork is done, the second time around is so much easier!

Create a Backup copy of your UHC Server Folder FIRST!
In your server's folder, delete the following from the top folder:
  • Everything inside each worlds folder [ie: World, World_nether, World_the_end]
  • banned-ips.txt
  • banned-players.txt
  • ops.txt
  • white-list.txt
In your server's plugins folder, delete the following:
  • Essentials - userdata
  • PermissionsEX - Inside the permissions.yml, delete everything below "users:" except for yourself of course
  • SimplyVanish - vanished.dat


DO NOT TOUCH the WorldGuard config file <3 Saving your regions will allow you to only have to "/region redefine" instead of creating each region from scratch.

After removing those files, double-click "run.bat" to start up your server again and log on to it. Repeat the "World Setup" section again. Use "/region redefine regionname" instead of creating all those regions from scratch after you've selected their 'pos1' and 'pos2'.

You'll be all set up again afterwards and ready for the next match <3


Image

Phew~ That was a mouthful ^_^; Thank you all for reading <3

I hope you found this Tutorial helpful. Please let me know if I left out something that you would like to see added or if I said something incorrectly in this guide.

If you would like, you can view my server's first UHC Event through my eyes
@ http://www.youtube.com/watch?v=nPOq0ruVQFY

Here is a copy of a blank, ready to play world. A plugin, created by my awesome friend Shone, is included for TeamChat! It recognizes the color from each scoreboard team and allows your players to speak to each other [all of their team and only their team] using '/tc' or '/teamchat' <3

Make sure to add yourself to the whitelist first and set yourself as 'Owner' in PEX.

[Link to soon come]


Image
Tags

3 Update Logs

Update #3 : by Clairefox 04/07/2014 12:11:38 amApr 7th, 2014

Updated whole blog with the experiences I've had from UHC Season 2.
LOAD MORE LOGS

Create an account or sign in to comment.

1
05/16/2015 3:06 pm
Level 1 : New Miner
anonpmc1254296
anonpmc1254296's Avatar
[deleted]
1
08/04/2014 8:38 pm
Level 5 : Apprentice Miner
louisferraiolo
louisferraiolo's Avatar
My mc has alot of blocklag when adding uhc plugiin D;
1
06/23/2014 6:53 pm
Level 6 : Apprentice Miner
LebronDaMan
LebronDaMan's Avatar
THANK YOU you do not know how much this helped me ily!
1
06/24/2014 10:45 pm
Level 28 : Expert Artist
Clairefox
Clairefox's Avatar
<3 :D
1
07/07/2014 7:19 am
Level 6 : Apprentice Miner
LebronDaMan
LebronDaMan's Avatar
<3
Planet Minecraft

Website

© 2010 - 2024
www.planetminecraft.com

Welcome