Extra Hard Mode
Extra Hard Mode changes the game rules to create NEW, INTERESTING CHALLENGES for players who have mastered the core game. Unlike Mojang's "hard" mode or other plugins' "hardcore" modes which just punish you more for making mistakes without actually changing game mechanics, Extra Hard Mode delivers interesting new challenges for advanced players.
Support this project on Patreon!
Important Info
- Detailed rundown of all features and configuration help Check here or here (alternate formatting)
- You can enable specific features only for specific worlds, Check here
- Save yourself some time! Check "Troubleshooting and Common Questions" for the answer to your question.
- Here is a playlist of a few 1 minute clips showcasing some features
- If you have any questions feel free to ask, post bugs / feature suggestions in ticket section
Recommended Plugins
- Make tree logs and branches fall when chopped with GraviTree. Set "FallingLogsDamagePlayers" to true in its config for an extra challenge!
- For anti-grief, avoid plugins that disable explosions entirely, because that will undermine the cave-in mechanic and the new improved TNT.
- Avoid plugins which allow players to teleport themselves out of danger when they're in combat or lost. Especially avoid plugins which add commands like /home, /back, and /tpa, since they will undermine the difficulty VERY much. Consider instead a teleportation plugin like Population Density, which allows players to teleport only between teleportation posts it places on the surface every 400 blocks.
- You might want to look into balancing villagers. Having diamond gear tradable for very easily farmable materials will undermine the difficulty. I use Rebalance Villagers to make the trades harder.
Metrics
This plugin utilizes Hidendra's plugin metrics system, which means that the following information is collected and sent to mcstats.org:
- A unique identifier
- The server's version of Java
- Whether the server is in offline or online mode
- The plugin's version
- The server's version
- The OS version/name and architecture
- The core count for the CPU
- The number of players online
- The Metrics version
- Config options that are activated, allowing me to see what people use (or don't)
You can disable the stat collection via /plugins/PluginMetrics/config.yml if you wish. If you want to see the stats, you can go here
Source
Source can be found on github here. Contributions, pull requests and feedback are appreciated :).
Credits and Thanks
- Coding
- BigScary for creating this project
- Mitsugaru for implementing awesome utility classes
- Thank you for your donations
- Jemrada - 1.Dec 15, 21. Dec 15, 4.Feb 16
- BrattPitt - 23.Nov 13, 14. Dec 14
- TehSabbingSlayer - 30. Dec 13
- WoodenAxeServer - 6. Dec 13
- Netu - 4. July 13
- MrYFory - 25. Feb 13
Sponsors:
SurfHosting: 50% discount with code "Robo": https://billing.surfhosting.co/aff.php?aff=82


-
View User Profile
-
Send Message
Posted Jul 24, 2013@Diemex
Giving monsters the ability to temporarily dim all light sources would be awesome O.O
-
View User Profile
-
Send Message
Posted Jul 24, 2013@Ajaxan
If you really want that feature MonsterApokalypse has it. I don't think it's the correct way though as torches are only one of many ways to light up an area.
-
View User Profile
-
Send Message
Posted Jul 24, 2013Hey Diemex!
One thing that my players do really annoys me. After they have a few days on their island, they manage to place torches everywhere and very few mobs will spawn. Could you consider adding an ability for mobs to break torches just by walking next to them? This way mobs don't have to seek out torches, but if they just pass within I'd say a block or so of the torch, it breaks.
-
View User Profile
-
Send Message
Posted Jul 24, 2013@ok12Boss
Yes it still works, there are some small issues with the new zombie spawning but nothing mayor.
-
View User Profile
-
Send Message
Posted Jul 24, 2013Is this still working on 1.6.2 R0.1 CB2815?
-
View User Profile
-
Send Message
Posted Jul 23, 2013@mhudson0421
You can customize any and all aspects of the plugin in the config.
-
View User Profile
-
Send Message
Posted Jul 23, 2013Hello, Is it possible to configure this plugin to remove certain features or minimize the chances of them happening? I have several server members that are very skeptical about us adding this to the server, with the main issues resting in: - charged creeper spawning - zombie resurrection - witch spawning - blazes at bedrock level - skeletons firing silverfish - blazes splitting in two - magma cubes turning into blazes - having a portion of the inventory disappearing forever
Also, is it possible to alter the chances of a cave-in? I want this for my medieval RP server and I'm not sure if it would be great to have my miners dying every time they take an excursion underground.
Thanks, mhudson0421
-
View User Profile
-
Send Message
Posted Jul 22, 2013Ahhh I see, Notepad plusplus was automatically tabbing when I went down to the next row. Thanks!
-
View User Profile
-
Send Message
Posted Jul 22, 2013@fernetek
Yaml doesn't support tabs. To validate that your config is valid you can use a Yaml validator.
\t is a tab character.
There are no spoiler tags on dev.bukkit because that requires Javascript and they decided against that for security reasons.
It is good if you utilize a paste site like The builtin paste system on dev.bukkit
-
View User Profile
-
Send Message
Posted Jul 22, 2013I can't seem to add any blocks to the Additional Falling Blocks list. I've tried Minecraft Id's, Bukkit names, used and didn't use the format the list uses (- NAME). Every time I launch the server it spits out some error and resets the list.
Sorry for the wall of text, but I don't see a Spoiler option.
2013-07-22 09:30:34 [INFO] [ExtraHardMode] Enabling ExtraHardMode v3.3.3 2013-07-22 09:30:34 [SEVERE] Cannot load plugins\ExtraHardMode\config.yml org.bukkit.configuration.InvalidConfigurationException: while scanning for the next token found character '\t' that cannot start any token in "<string>", line 125, column 1: - LOG@0,1,2,3 ^
at org.bukkit.configuration.file.YamlConfiguration.loadFromString(YamlConfiguration.java:55) at org.bukkit.configuration.file.FileConfiguration.load(FileConfiguration.java:138) at org.bukkit.configuration.file.FileConfiguration.load(FileConfiguration.java:105) at org.bukkit.configuration.file.YamlConfiguration.loadConfiguration(YamlConfiguration.java:175) at com.extrahardmode.service.config.MultiWorldConfig.loadFilesFromDisk(MultiWorldConfig.java:106) at com.extrahardmode.config.RootConfig.load(RootConfig.java:77) at com.extrahardmode.config.RootConfig.starting(RootConfig.java:61) at com.extrahardmode.ExtraHardMode.registerModule(ExtraHardMode.java:161) at com.extrahardmode.ExtraHardMode.onEnable(ExtraHardMode.java:68) at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:217) at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:457) at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:381) at org.bukkit.craftbukkit.v1_5_R3.CraftServer.loadPlugin(CraftServer.java:282) at org.bukkit.craftbukkit.v1_5_R3.CraftServer.enablePlugins(CraftServer.java:264) at net.minecraft.server.v1_5_R3.MinecraftServer.j(MinecraftServer.java:304) at net.minecraft.server.v1_5_R3.MinecraftServer.e(MinecraftServer.java:283) at net.minecraft.server.v1_5_R3.MinecraftServer.a(MinecraftServer.java:243) at net.minecraft.server.v1_5_R3.DedicatedServer.init(DedicatedServer.java:151) at net.minecraft.server.v1_5_R3.MinecraftServer.run(MinecraftServer.java:382) at net.minecraft.server.v1_5_R3.ThreadServerApplication.run(SourceFile:573) Caused by: while scanning for the next token found character '\t' that cannot start any token in "<string>", line 125, column 1: - LOG@0,1,2,3 ^
at org.yaml.snakeyaml.scanner.ScannerImpl.fetchMoreTokens(ScannerImpl.java:358) at org.yaml.snakeyaml.scanner.ScannerImpl.checkToken(ScannerImpl.java:179) at org.yaml.snakeyaml.parser.ParserImpl$ParseIndentlessSequenceEntry.produce(ParserImpl.java:535) at org.yaml.snakeyaml.parser.ParserImpl.peekEvent(ParserImpl.java:161) at org.yaml.snakeyaml.parser.ParserImpl.checkEvent(ParserImpl.java:146) at org.yaml.snakeyaml.composer.Composer.composeSequenceNode(Composer.java:203) at org.yaml.snakeyaml.composer.Composer.composeNode(Composer.java:158) at org.yaml.snakeyaml.composer.Composer.composeMappingNode(Composer.java:237) at org.yaml.snakeyaml.composer.Composer.composeNode(Composer.java:160) at org.yaml.snakeyaml.composer.Composer.composeMappingNode(Composer.java:237) at org.yaml.snakeyaml.composer.Composer.composeNode(Composer.java:160) at org.yaml.snakeyaml.composer.Composer.composeMappingNode(Composer.java:237) at org.yaml.snakeyaml.composer.Composer.composeNode(Composer.java:160) at org.yaml.snakeyaml.composer.Composer.composeDocument(Composer.java:123) at org.yaml.snakeyaml.composer.Composer.getSingleNode(Composer.java:106) at org.yaml.snakeyaml.constructor.BaseConstructor.getSingleData(BaseConstructor.java:121) at org.yaml.snakeyaml.Yaml.loadFromReader(Yaml.java:480) at org.yaml.snakeyaml.Yaml.load(Yaml.java:399) at org.bukkit.configuration.file.YamlConfiguration.loadFromString(YamlConfiguration.java:53) ... 19 more
-
View User Profile
-
Send Message
Posted Jul 21, 2013@elyssah
Streamremover is a plugin I used 2 years ago for this purpose, maybe you can find an updated version of it.
@minecrafterFTW
Step 1: Check the console output and look from which plugin the message comes from
Step 2: Read the message: permissions.yml would indicate that this might be a permissions plugin.
Step 3: Try to fix the error yourself: If the file is missing then maybe create it?
Step 4: If you are here then: Make a copy of the relevant lines in your console and paste them on a site like pastie.org
Step 5: Go to the correct plugin page
Step 6: Make a concrete comment/ticket describing what you have done and include the log.
-
View User Profile
-
Send Message
Posted Jul 21, 2013I do /reload and it says permissions.yml is empty. what do I do?
-
View User Profile
-
Send Message
Posted Jul 20, 2013Thanks for such a great plugin!
I do have a small request/suggestion.
I really like that player's can't use water buckets to make new water sources and they have to use ice.
But this is sometimes leading to issues were we have ugly water that only mods can fix. Would it be possible to prevent the bucket from removing the water source, but still changing the empty bucket into a water bucket?
Players can still "remove" a water source by placing a block on it and then breaking it, if they really mean do it.
-
View User Profile
-
Send Message
Posted Jul 19, 2013@Irbricksceo
This means that there is an error in your yml file and it resets the parts that aren't recognized. Maybe look out for any yml errors in the console and if you can't figure it out at all you can post a link to pastie.org with your config and I can have a look at it.
-
View User Profile
-
Send Message
Posted Jul 18, 2013Hey, i am having an issue, the config resets when i start the server
-
View User Profile
-
Send Message
Posted Jul 18, 2013@Dmck2b
Well, it is not intended that the messages show everywhere, but the checks to see if a message should be shown simply haven't been implemented yet. I'll try to add those soon and also implement the missing messages.
-
View User Profile
-
Send Message
Posted Jul 18, 2013Hey there, I've been using the dev builds with SBAPI support you mentioned in this post and I noticed that outside of my EHM worlds the messages such as inventory weight and the little tips are still appearing (even when the worlds are not enabled in the config). Is this expected behaviour or a bug?
Thanks for the plugin!
EDIT: Forgot to mention, I've also added the silence permissions to the other worlds without any luck of hiding it.
-
View User Profile
-
Send Message
Posted Jul 15, 2013@Diemex
lol will its supposed to allow the explosion just block the environmental damage, and to make world guard work like that u have to do some config adjustments which i believe is the issue
-
View User Profile
-
Send Message
Posted Jul 15, 2013@N1T3SLAY3R
That is weird.... I wrote it so that everything is a creeper explosion and if your claimssystem blocks creeperexplosions it will also block ehm's explosions.
@Jemrada
Please read through the config before posting questions here. It's not like the config options are cryptic in any way.
-
View User Profile
-
Send Message
Posted Jul 15, 2013Is it possible to disable the respawning of Zombies after they are killed?