RCAchievements

This project is abandoned and its default file will likely not work with the most recent version of Minecraft. Whether this project is out of date or its author has marked it as abandoned, this project is no longer maintained.

RC-Achievements I am currently working on an Achievements Plugin for my Server but I will release it to the public a few days later, because I think it is so awesome everyone should habe a Chance to try it out :D

Here are some already finished Features:

  • Customizable Achievements that can be put together by combining multiple so called Requirements and Rewards.
  • API for developers to tag methods and provide them for the admin to configure.
  • Multithreaded Achievement Checking. That means all events queue the players to checked based on the event type and the Worker Queue will work through all checks in parallel tasks.
  • MySQL Support (SQLite still in development)
  • Here are some already finished Requirements you can use: o LOCATION - When a player reaches a location (can be configured in game via command) o TIME - Supports a timer that works especially well with locations, e.g. you can make the player run from one waypoint to an other in 10 seconds. o CRAFT - Monitor any item a player crafts and award achievements accordingly o BLOCK - Monitor block placement and breaking of blocks o ENCHANT - Monitor players enchanting items o ACHIEVEMENT - Give an achievement when players gathered other achievements o CUSTOM - Use any tagged methods from your favorite plugins
  • Some of the requirements can be counted, that means it will save the player progress to the database, e.g. make the player destroy 10 crop and make him craft 10 bread with that
  • Possible Rewards: o COMMAND o MONEY o (WIP: Items)
  • Spout Achievements PopUp on Achievement Gain
  • Configurable Custom Sound on Achievement Gain

Here is a documented example file of how you could design an achievement. The achievement will be triggered and awarded to the player when all or some requirements are true. Requirements can be done in order or not.

This code can be used by developers to support RCAchievements:

private void registerAchievements() {

        // register a class for the achievement plugin
        Plugin rcAchievements = Bukkit.getPluginManager().getPlugin("RCAchievements");

        if (rcAchievements != null && rcAchievements.isEnabled()) {
            AchievementHandler.registerPlugin(this, RCSkillAchievements.class);
        }
    }

And the RCSkillAchievements.class:

@ClassName("player")
public class RCSkillAchievements implements TaggedAchievement {

    @MethodName("level")
    public static int getLevel(AchievementPlayer player) {

        return PlayerManager.getPlayer(player.getPlayer()).getRank().getId();
    }


    @MethodName("exp")
    public static int getExp(AchievementPlayer player) {

        return PlayerManager.getPlayer(player.getPlayer()).getExp();
    }


    @MethodName("skillpoints")
    public static int getSkillpoints(AchievementPlayer player) {

        return PlayerManager.getPlayer(player.getPlayer()).getSkillpoints();
    }

}

Finally here are some achievements we configured four the Beta Test on our server: http://pastebin.com/03FajmML

Whats ToDo and what will come:

  • SQLite Support
  • Parameters for the tagged API methods
  • Tracking Shift Click Crafting is currently broken
  • More Requirements and Rewards (let me know what you want!)
  • English Localization and language.yml config
  • Web Support with list of all configured Achievements

Oh and if you want to try a demo you can get the mostly stable version here. But be warned it is in german and still has some bugs. You will also need the RaidCraftCore (Base API for our plugins). You will not need the RCAchievements-API since it is compiled into the RCAchievements.jar:

http://ci.raid-craft.de

I am happy about any feedback good or bad ;)


Comments

Posts Quoted:
Reply
Clear All Quotes

About This Project

  • Project ID
    40716
  • Created
    Jun 12, 2012
  • Last Released File
    Never
  • Total Downloads
    0
  • License

Categories

Members

Recent Files

No files uploaded yet.