Hardcore Adventure

Version: v1.0

HardcoreAdventure brings hardcore to any number of worlds. Hardcore basically provides each user with a set number of lives. If the lives run out, then they are transported to a separate location. Some of the features included in this build:

  • customization of lives (default 1)
  • enable/disable hardcore mode
    • Hardcore mode is also known as adventures.
    • If an adventure is started, then lives are monitored and stats are tracked. Also players will not be able to join (only admins can add after an adventure starts)
    • If the adventure has not begun, then any player can join the adventure if they have permissions
  • set the respawn location of people that lose all their lives
  • track stats of players
    • level
    • blocks destroyed
    • blocks placed
    • monsters killed
    • total experience
    • diamond ore destroyed
    • meters traveled
    • creepers killed
    • animals killed
  • track highscores for each stat tracked
  • track a players best score (because when you die all your stats are reset)
  • achievements for stats (each achievement grants a user a customizable item (dragon egg by default))
    • 3 levels (gold, silver bronze)
    • gold grants 3 items, silver 2 items, and bronze 1 item
  • Use 7 (customizable) dragon eggs to revive a player that is not currently alive
  • Multiworld support (can have any number of worlds, or all worlds if no world is specified)
  • Permisisons support (Currently tested with PermissionsEx)

Description

The logic behind the plugin is to set up adventures in worlds. Those that are not apart of the adventure are not impacted by the plugin.

Players join the adventure or are added to the adventure. If the adventure has already started, then a player must be added and cannot join.

Upon load of the plugin, 4 files are generated: config.yml, players.yml, highscores.yml, and personalbest.yml.

config.yml is basic configuration of the plugin. It contains details about basic configuration such as default lives, achievement values, world names, and whether an adventure has started or not.

players.yml contains the player data as well as statistical data. If a player loses all of their lives, they are removed from this file.

highscores.yml contains the top scores for each stat.

personalbest.yml contains all the personal best stats for each player even if they had died.

Installation Guide

  1. Copy the HardcoreAdventure.jar to your plugins directory
  2. Run /reload or restart the server
  3. Depending on how you want your world set up, you can either have all worlds participate or only select worlds. To add select worlds use /hcadv addworld [worldname] to add a world to the list. You can also use /hcadv removeworld [worldname] to remove. In the server that I play on, we set up the server to have two worlds on the list: HardcoreAdventure and HardcoreAdventure_nether. In order to do this we used the plugin 'multiverse'. If no worlds are added, then all worlds are assumed to be hardcore.
  4. /hcadv setrespawn
    • Designates the respawn location for players that have lost all of their lives. In the server I play on, we configured to have a separate world as a respawn location. I recommend creating a separate world, such as a purgatory world where all dead players will be sent to.
  5. /hcadv setlives #
    • Designates the number of lives each player starts with when they join the adventure (by default this is set to 1)

Once these steps are done, then you are about ready. All that is left is for players to join an adventure or add players to the adventure by using either of the commands /hcadv add [playername] or /hcadv join [playername]. In version 1.1, I plan on adding auto join for players that are new to automatically join the adventure.

Once you have adventurers, then you can start playing using the command /hcadv start. You can stop tracking stats and lives at any time by using the command /hcadv stop.

With the adventure started, stats are recorded and highscores are updated in real time. When a player loses all of their lives, then all of their stats are wiped, and they are removed from the adventure and sent to the default spawn location.

There are two ways to add a player while an adventure is active:

  1. use the command /hcadv add [player]
  2. Collect 7 (7 is default) dragon eggs (is default) and use the command /hcadv revive $player$ (reviving a player will set that players lives to the default lives)

You collect dragon eggs by completing achievements.

Although it is not required, I recommend using this plugin alongside with multiverse.

I hope everyone likes the plugin and check out the plugin in action at: 'play.efcraft.net'

Commands

Parameters surrounded by [ ] are optional parameters. Parameters surrounded by $ $ are mandatory parameters.

User Commands:

  • /hcadv help [#]
    • Lists help page for user commands
  • /hcadv list [#]
    • Displays the list of adventurers
  • /hcadv join [player]
    • Joins an adventure that is not started
  • /hcadv check [player]
    • Checks if a player has joined the adventure
  • /hcadv stats [player]
    • Gets the stats of player
  • /hcadv revive $player$
    • Revives another player, but at a cost
  • /hcadv best [player]
    • Displays the best stats for a given player
  • /hcadv earned [player]
    • Displays the number of achievements a player has earned
  • /hcadv earned all [player]
    • Displays number of achievements as well as which achievements were earned
  • /hcadv ach
    • Displays all the achievements that are available
  • /hcadv highscores
    • Displays the highscores of the stats

Admin Commands:

  • /hcadv help admin [#]
    • Displays admin command help
  • /hcadv add [player]
    • Adds a player irregardless of whether an adventure has started or not
  • /hcadv load
    • Loads all files from disk (Use this to load custom configurations made when editting files)
  • /hcadv reload
    • Saves all files to disk and then loads it
  • /hcadv info
    • Displays the info of the hardcore adventure, taken from config file
  • /hcadv start
    • Starts an adventure, which enables stat tracking, life tracking, and prevents players from using /hcadv join
  • /hcadv stop
    • Stops an adventure, which disables stat tracking, life tracking, and allows players to join using /hcadv join
  • /hcadv setrespawn
    • Sets the default respawn location for players that lose all of their lives
  • /hcadv addworld [world]
    • Adds a world to be monitored by HardcoreAdventure (if no world is specified, then all worlds are monitored)
  • /hcadv removeworld [world]
    • Removes a world from being monitored by HardcoreAdventure (if no world is specified, then all worlds are monitored)
  • /hcadv save
    • Saves all files to disk from memory
  • /hcadv setlives $#$
    • Sets the default lives
  • /hcadv resetachvals
    • Resets achievement values to its default

Permissions

  • /hcadv help [#]
    • - hcadv.help
  • /hcadv list [#]
    • - hcadv.list
  • /hcadv join [player]
    • - hcadv.join and - hcadv.join.player
  • /hcadv check [player]
    • - hcadv.check
  • /hcadv stats [player]
    • - hcadv.stats
  • /hcadv revive $player$
    • - hcadv.revive
  • /hcadv best [player]
    • - hcadv.best
  • /hcadv earned [player]
    • - hcadv.earned
  • /hcadv earned all [player]
    • - hcadv.earned
  • /hcadv ach
    • -hcadv.achievements
  • /hcadv highscores
    • - hcadv.highscores

Admin Commands:

  • /hcadv help admin [#]
    • - hcadv.help
  • /hcadv add [player]
    • - hcadv.add and -hcadv.add.player
  • /hcadv load
    • - hcadv.load
  • /hcadv reload
    • -hcadv.reload
  • /hcadv info
    • - hcadv.info
  • /hcadv start
    • - hcadv.start
  • /hcadv stop
    • - hcadv.stop
  • /hcadv setrespawn
    • - hcadv.setrespawn
  • /hcadv addworld [world]
    • - hcadv.addworld
  • /hcadv removeworld [world] monitored)
    • -hcadv.removeworld
  • /hcadv save
    • - hcadv.save
  • /hcadv setlives $#$ -
    • - hcadv.setlives
  • /hcadv resetachvals
    • - hcadv.resetachvals

TODO List

  1. Add auto-join list for new players to the server
  2. Add more Stats to stat tracking (if requested)
  3. Add commands to customize achievement values
  4. Monitor comments for user requests.
  5. Add SQL support

ChangeLog

v1.0 - Release!!


Comments

  • To post a comment, please or register a new account.
Posts Quoted:
Reply
Clear All Quotes

About This Project

  • Project ID
    35157
  • Created
    Dec 27, 2011
  • Last Released File
    Dec 27, 2011
  • Total Downloads
    1,977
  • License

Categories

Members

Recent Files