Ok Soo... I have been trying to code a plugin where above a players head it displays the players health... I am (obviosuly) extremely new to Scoreboards and, like a good learner, am asking others for help. I yes, have copied code but have thoroughly looked threw and it and have tried to understand it. Here is my main: Code: package me.ztowne13.CrimsonPvP; import java.io.File; import java.util.logging.Logger; import net.minecraft.server.v1_5_R2.Packet; import net.minecraft.server.v1_5_R2.Packet206SetScoreboardObjective; import net.minecraft.server.v1_5_R2.Packet207SetScoreboardScore; import net.minecraft.server.v1_5_R2.Packet208SetScoreboardDisplayObjective; import net.minecraft.server.v1_5_R2.Scoreboard; import net.minecraft.server.v1_5_R2.ScoreboardBaseCriteria; import net.minecraft.server.v1_5_R2.ScoreboardObjective; import net.minecraft.server.v1_5_R2.ScoreboardScore; import org.bukkit.Bukkit; import org.bukkit.configuration.file.YamlConfiguration; import org.bukkit.craftbukkit.v1_5_R2.entity.CraftPlayer; import org.bukkit.entity.Player; import org.bukkit.event.EventHandler; import org.bukkit.event.Listener; import org.bukkit.event.entity.EntityDamageEvent; import org.bukkit.event.player.PlayerJoinEvent; import org.bukkit.plugin.java.JavaPlugin; public class Main extends JavaPlugin implements Listener{ Scoreboard sb = new Scoreboard(); public final Logger logger = Logger.getLogger("Minecraft"); public void onDisable(){ this.logger.info("CrimsonPvP Disabled"); } public void onEnable(){ this.logger.info("[CrimsonPvP] By Ztowne13 Has Been Enabled!"); Bukkit.getPluginManager().registerEvents(this, this); } @EventHandler public void onPlayerJoin(PlayerJoinEvent e){ Player p = e.getPlayer(); test(p); } @EventHandler public void onEntityDamage(EntityDamageEvent e){ Player p = (Player) e; ScoreboardScore score = sb.getPlayerScoreForObjective("Answer to life", sb.getObjective("Test")); score.setScore(p.getHealth()); } public void test(final Player player) { getServer().getScheduler().runTask(this, new Runnable() { @Override public void run() { String name = "Test"; sb.registerObjective(name, new ScoreboardBaseCriteria(name));//Create new objective in the scoreboard Packet206SetScoreboardObjective packet = new Packet206SetScoreboardObjective(sb.getObjective(name), 0);//Create Scoreboard create packet Packet208SetScoreboardDisplayObjective display = new Packet208SetScoreboardDisplayObjective(2, sb.getObjective(name));//Create display packet set to sidebar mode sendPacket(player, packet);//Send Scoreboard create packet sendPacket(player, display);//Send the display packet ScoreboardScore scoreItem1 = sb.getPlayerScoreForObjective("Answer to life", sb.getObjective(name));//Create a new item ScoreboardScore scoreItem2 = sb.getPlayerScoreForObjective("4 * 4", sb.getObjective(name));//Create a new item scoreItem1.setScore(20);//Set it's value to 42 scoreItem2.setScore(12);//Set it's value to 12 Packet207SetScoreboardScore pScoreItem1 = new Packet207SetScoreboardScore(scoreItem1, 0);//Create score packet 1 Packet207SetScoreboardScore pScoreItem2 = new Packet207SetScoreboardScore(scoreItem2, 0);//Create score packet 2 sendPacket(player, pScoreItem1);//Send score update packet sendPacket(player, pScoreItem2);//Send score update packet } }); } public static void sendPacket(Player player, Packet packet) { ((CraftPlayer) player).getHandle().playerConnection.sendPacket(packet); } } First problem... I have an error that makes absolute no sense to me and i would like so help or explanation: Code: [SEVERE] Could not load 'plugins/CrimsonPvP.jar' in folder 'plugins' org.bukkit.plugin.InvalidPluginException: java.lang.NoClassDefFoundError: net/minecraft/server/v1_5_R2/Scoreboard at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:182) at org.bukkit.plugin.SimplePluginManager.loadPlugin(SimplePluginManager.java:305) at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java:230) at org.bukkit.craftbukkit.v1_5_R1.CraftServer.loadPlugins(CraftServer.java:239) at org.bukkit.craftbukkit.v1_5_R1.CraftServer.<init>(CraftServer.java:217) at net.minecraft.server.v1_5_R1.PlayerList.<init>(PlayerList.java:55) at net.minecraft.server.v1_5_R1.DedicatedPlayerList.<init>(SourceFile:11) at net.minecraft.server.v1_5_R1.DedicatedServer.init(DedicatedServer.java:105) at net.minecraft.server.v1_5_R1.MinecraftServer.run(MinecraftServer.java:381) at net.minecraft.server.v1_5_R1.ThreadServerApplication.run(SourceFile:573) Caused by: java.lang.NoClassDefFoundError: net/minecraft/server/v1_5_R2/Scoreboard at me.ztowne13.CrimsonPvP.Main.<init>(Main.java:32) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) at java.lang.reflect.Constructor.newInstance(Constructor.java:513) at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:178) ... 9 more Caused by: java.lang.ClassNotFoundException: net.minecraft.server.v1_5_R2.Scoreboard at org.bukkit.plugin.java.PluginClassLoader.findClass0(PluginClassLoader.java:70) at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:53) at java.lang.ClassLoader.loadClass(ClassLoader.java:306) at java.lang.ClassLoader.loadClass(ClassLoader.java:247) ... 15 more Ok now my second problem that some explanation as well as some example mini strpis of code would help... I am trying to make it when a player joins (or best event) for the server to create the scoreboard above the players head of their health. On a damage event I want a packet sent to a player updating this... I am not trying to just have someone write this for me... I honestly have looked at about every bukkit post on scoreboards and need some individual explaining on this exact topic. Thankyou so much. I know it may sound stupid but honestly i have lost understand of what the heck i am supposed to do for this.
*cough *cough http://forums.bukkit.org/threads/tutorial-scoreboards-teams-with-the-bukkit-api.139655/
Yes like TheGreenGamerHD said there is an official api for scoreboards now. But from your error it seems that you are using an incorrect version of craftbukkit to run the plugin. Code: java.lang.NoClassDefFoundError: net/minecraft/server/v1_5_R2/Scoreboard