Spigot – die neusten Beiträge

Wieso wird mein Scoreboard nicht angezeigt?

	  public void setScoreboard(Player p) {
		    ScoreboardManager sm = Bukkit.getScoreboardManager();
		    Scoreboard board = sm.getNewScoreboard();
		    Objective o = board.registerNewObjective("test", "dummy");
		    o.setDisplaySlot(DisplaySlot.SIDEBAR);
		    o.setDisplayName(cfg.getString("Displayname"));
		    o.getScore("§a   ").setScore(10);
		    o.getScore("§fMap").setScore(9);
		    o.getScore("§d" + p.getWorld().getName()).setScore(8);
		    o.getScore("§e    ").setScore(7);
		    o.getScore("§fKills:").setScore(6);
		    o.getScore("§e"+ p.getStatistic(Statistic.PLAYER_KILLS)).setScore(5);
		    o.getScore("§f    ").setScore(4);
		    o.getScore("§fTeams:" ).setScore(3);
		    o.getScore("§aERLAUBT!").setScore(2);
		    o.getScore("§1   ").setScore(1);
		    o.getScore("§eMade by KoCoLP!").setScore(0);
		    p.setScoreboard(board);


		  }
		  
		  @EventHandler
		  public void onJoin1(PlayerJoinEvent e) {
		    (new BukkitRunnable() {
		        public void run() {
		          for (Player all : Bukkit.getOnlinePlayers())
		            GunGame.this.setScoreboard(all); 
		        }
		      }).runTaskLater((Plugin)this, 1L);
		  }
		  
		  @EventHandler
		  public void onQuit2(PlayerQuitEvent e) {
		    (new BukkitRunnable() {
		        public void run() {
		          for (Player all : Bukkit.getOnlinePlayers())
		            GunGame.this.setScoreboard(all); 
		        }
		      }).runTaskLater((Plugin)this, 1L);
		  }
		  
		  @EventHandler
		  public void onDeath3(PlayerDeathEvent e) {
		    for (Player all : Bukkit.getOnlinePlayers())
		      GunGame.this.setScoreboard(all); 
		  }
	


programmieren, Minecraft, developer, Bukkit, scoreboard, Spigot

Was ist besser?

Hey Community,

Ich bin momentan auf der Suche nach einem gutem Serverhoster für mein Minecraft-Netzwerk.

Eigentlich wollte ich Living Bots nehmen, denn die spezialisieren ja sich darauf und biten für 20€ im Monat folgendes:

  • 4 AMD EPYC CPU Cores (also 64)
  • Memory 12 GB RAM - schneller DDR4 Speicher mit ECC-Fehlerkorrektur
  • Storage 80 GB SSD - ausfallsicherer SSD Clusterstorage

(Quelle)

Allerdings wurde mir hier mehrmals auch "Contabo" empfohlen.

Die bieten für 15€ im Monat folgendes:

  • 8 CPU-Kerne
  • 30 GB RAM (garantiert)
  • 800 GB Speicherplatz (100% SSD)

(Quelle)

Ich brauche folgende Server:

  • Lobby Server, 40 Slots 4GB RAM
  • Survival Server, 20 Slots 5GB RAM
  • Skyblock Server, 20 Slots 5GB RAM
  • Acarde Minigames Server, 30 Slots 6GB RAM
  • Eigener Spielmodus, 8 Slots 3GB RAM
  • SpeedUHC, 16 Slots 3GB RAM
  • Murder Mystery, 10 Slots 2GB RAM

Natürlich reichen der Living Bots Server da nicht aus, allerdings sind bei dem Contabo Server sehr wenig Kerne dabei. Es laggt wenn die Spieler zwischen den Servern joinen und leaven.

Was ist also besser? (Bei Living Bots muss Ich dann mit der RAM runtergehen). Oder kennt jemand einen Kompromiss (bitte nicht mehr als 20€ im Monat, mit Store und Forum Website ist das schon sehr gut für einen neuen Server).

Contabo 44%
Nimm lieber das hier: 33%
Living Bots 22%
PC, Server, Computer, Technik, Linux, CPU, programmieren, Java, RAM, Gaming, Minecraft, Minecraft Server, Plug-in, Spigot, BungeeCord, Spiele und Gaming

Minecraft Citybuild Server erstellen?

Hey Community,

Ich baue gerade an einem Minecraft Spigot 1.14.4 Server.

Das Hauptprinzip des Servers ist "Advanced Survival". Ich will aber nicht nur Minigames und andere Spielmodi als Extra hinzufügen, sondern habe auch von "Citybuild" gehört.

Bitte nehmt es mir nicht übel, aber Ich bin so gar nicht der Typ der oft auf Servern spielt, sondern eher der Typ, der sich auf das "Schönbauen" konzentriert und die Server selbst macht.

Das führt natürlich dazu, dass Ich keine Ahnung habe, was Citybuild eigentlich ist (Ja, Ich weiß, es ist lustig, dass Ich keine Ahnung habe). Anscheinend geht es darum, dass es Coins gibt (also wird Vault benötigt) und man diese mit Jobs verdienen kann. Man kann Plots claimen und so etwas schönes bauen (Warum auch immer, das macht ja gar keinen Sinn, da gibt es bestimmt auch einen Grund für). Materialen bekommt man aus anderen Welten (z. B. Farmwelt).

Korrigiert mich wenn Ich etwas falsch verstanden habe (Habe Ich sehr wahrscheinlich).

Doch Ich weiß trotzdem nicht, wie man so einen Citybuild Server macht.

Deshalb lautet meine eigentliche Frage: Wie mache Ich so einen Server und was für Plugins benötige Ich dafür (Bzw. welche würdet ihr mir empfehlen)? Wie kann Ich automatisch so eine Welt mit Plots generieren? Und das größte Problem ist, dass das der eigentliche Server in der 1.14.4 ist, die meißten Plugins aber nur für z. B. 1.12. Wie kann Ich machen dass 1.12 Plugins trotzdem funktionieren (Die anderen Server kriegen das ja auch hin, dass man mit verschiedenen Versionen joinen kann)? Und man soll das ganze auch von einem 1.14.4 Server betreten können.

Auch wenn ihr nur die Antwort auf eine Frage kennt, gebt sie mir Bitte. Ich weiß, dass Ich seht viele Fragen gestellt habe, deshalb freue Ich mich auch über eine Antwort. Danke im Vorraus ♥️.

Server, Computer, Gaming, Minecraft, Minecraft Server, Spigot, Bukkit server, Bukkit-Plugin, BukkitSpigot, Spigot Server, Spigot Plugin, Spiele und Gaming

Minecraft plugin scheduler?

Hallo leute, sobald ich zwei cooldowns parallel am laufen habe, und einer durch ist, gibt es beim zweiten cooldown folgende errormeldung. Weiß jemand wo das Problem ist?:

java.lang.NullPointerException
    at de.johannes.hcfabilitys.main.ABILITYT$1.run(ABILITY.java:101) ~[?:?]
    at org.bukkit.craftbukkit.v1_8_R3.scheduler.CraftTask.run(CraftTask.java:71) ~[spigot-1.8.8-R0.1-SNAPSHOT-latest.jar:git-Spigot-db6de12-18fbb24]
    at org.bukkit.craftbukkit.v1_8_R3.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:350) [spigot-1.8.8-R0.1-SNAPSHOT-latest.jar:git-Spigot-db6de12-18fbb24]
    at net.minecraft.server.v1_8_R3.MinecraftServer.B(MinecraftServer.java:723) [spigot-1.8.8-R0.1-SNAPSHOT-latest.jar:git-Spigot-db6de12-18fbb24]
    at net.minecraft.server.v1_8_R3.DedicatedServer.B(DedicatedServer.java:374) [spigot-1.8.8-R0.1-SNAPSHOT-latest.jar:git-Spigot-db6de12-18fbb24]
    at net.minecraft.server.v1_8_R3.MinecraftServer.A(MinecraftServer.java:654) [spigot-1.8.8-R0.1-SNAPSHOT-latest.jar:git-Spigot-db6de12-18fbb24]
    at net.minecraft.server.v1_8_R3.MinecraftServer.run(MinecraftServer.java:557) [spigot-1.8.8-R0.1-SNAPSHOT-latest.jar:git-Spigot-db6de12-18fbb24]
    at java.lang.Thread.run(Unknown Source) [?:1.8.0_241]

Hier der code:

public static void inGameCountDown(Player p, Player t) {
tp = Bukkit.getScheduler().scheduleSyncRepeatingTask(Main.getPlugin(), new Runnable() {
@Override
public void run() {
System.out.println("Activating run for: " + p.getName());
if(cooldown.get(p) == null) {
returnInventory(p, t);
Bukkit.getScheduler().cancelTask(tp);
}
if (cooldown.get(p) == 1) {
System.out.println("Canceling cooldown for: " + p.getName());
Bukkit.getScheduler().cancelTask(tp);
cooldown.remove(p);
returnInventory(p, t);
}
if(cooldown.containsKey(p)) {
int c = cooldown.get(p);
c--;
System.out.println("Hashmap contains key for: " + p.getName() + "   " + c);
cooldown.put(p, c);
}
}
}, 20, 20);
}
Java, Bukkit, Spigot, Minecraft Plugin

[Spigot] InventoryClickEvent Fehler?

Hallo Community!

Ich programmiere gerade ein LobbySystem und bin gerade dabei einen Navigator zu programmieren. Mit Rechtsklick auf Item in der Hotbar öffnet sich ein Inventar sobald ich aber auf ein Item im Inventar klicke welches in einem Listener registriert ist passiert nichts.

Hier der Code:

Die Class in dem die Items angelegt werden:

public class NavigatorInventory {

public static void openNavigatorInventory(Player player) {

  Inventory NavigatorInv = Bukkit.createInventory(null, 9*1, "§6§lNavigator");
  
  ItemStack placeholder = new ItemAPI("§e", Material.STAINED_GLASS_PANE, (byte)15, 1).build();
  
  NavigatorInv.setItem(0, placeholder);
  NavigatorInv.setItem(1, placeholder);
  NavigatorInv.setItem(2, placeholder);
  NavigatorInv.setItem(3, placeholder);
  NavigatorInv.setItem(4, new ItemAPI("§aCityBuild", Material.STONE_AXE, (byte)0, 1, "§7Spiele CityBuild", "§7Klicke um zu connecten.").build());
  NavigatorInv.setItem(5, placeholder);
  NavigatorInv.setItem(6, new ItemAPI("§3Testitem", Material.ENDER_STONE, (byte)0, 1).build());
  NavigatorInv.setItem(7, placeholder);
  NavigatorInv.setItem(8, placeholder);
  
  player.openInventory(NavigatorInv);
  

}

}

public class NavigatorInventoryListener implements Listener {
private Main main;

public NavigatorInventoryListener(Main main) {
    this.main = main;
    Bukkit.getPluginManager().registerEvents(this, main);
}

@EventHandler
public void onClick(InventoryClickEvent e) {
    Player player = (Player) e.getWhoClicked();
    player.sendMessage("l");
    if(!main.canBuild.contains(player)) {
        e.setCancelled(true);
    }
    if(e.getInventory().getName().equals("§6§lNavigator")){
        if(e.getCurrentItem().getItemMeta().getDisplayName().equals("§aCityBuild")) {
            player.sendMessage("§3CityBuildTest");
        }
       else if (e.getCurrentItem().getItemMeta().getDisplayName().equals("§3Testitem")) {
            player.sendMessage("§3TestItemTest");
        }



    }

}

}

Jetzt sollten eigentlich die Testnachrichten ausgegeben werden (später ein Inventory) Aber als Ausgabe bekomme ich keine Errors keine Nachricht etc

Alle Class Dateien sind in der Main registriert.

Kann mir jemand helfen?

Mit Freundlichen Grüßen

programmieren, Java, Minecraft, Spigot

Multithreading mit Bukkit?

Hallo liebe Community,

Ich habe ein Plugin geschrieben, womit 2 Methoden gleichzeitig laufen sollen. Beim Laden des Plugins auf meinen Test-Server kommt nach dem Enabeln eine Fehlermeldung:

[11:00:34 WARN]: Exception in thread "Thread-8"
[11:00:34 WARN]: java.lang.IllegalStateException: Asynchronous scoreboard creation!
[11:00:34 WARN]:    at org.spigotmc.AsyncCatcher.catchOp(AsyncCatcher.java:14)
[11:00:34 WARN]:    at org.bukkit.craftbukkit.v1_8_R1.scoreboard.CraftScoreboardManager.getNewScoreboard(CraftScoreboardManager.java:45)
[11:00:34 WARN]:    at org.bukkit.craftbukkit.v1_8_R1.scoreboard.CraftScoreboardManager.getNewScoreboard(CraftScoreboardManager.java:1)
[11:00:34 WARN]:    at de.nurteam.varo.ScoreboardThread.setScore(ScoreboardThread.java:25)
[11:00:34 WARN]:    at de.nurteam.varo.ScoreboardThread.run(ScoreboardThread.java:44)

Kurze Beschreibung des Plugins:

Ich programmiere an einem Varo-Plugin, indem es einen Scoreboard geben soll, wo steht, wie lange man noch Spielen darf. Dieser Scoreboard soll in einer Schleife laufen, um die Spielzeit zu aktualisieren. Gleichzeitig soll noch eine Methode laufen, die reguliert, wie lange man noch spielen darf und wie groß die Border ist usw.

Nun müssen beide Methoden gleichzeitig laufen, da sie voneinander abhängig sind und das Plugin nicht läuft, wenn eine Methode versagt. Hoffentlich habe ich mich verständlich ausgedrückt:).

Hier sind Teile meines Plugins als Code einsehbar:

//Klasse die Scoreboard und Multithreading managed:
import org.bukkit.Bukkit;
import org.bukkit.scoreboard.DisplaySlot;
import org.bukkit.scoreboard.Objective;
import org.bukkit.scoreboard.Scoreboard;

public class ScoreboardThread extends Thread{

String name;

ScoreboardThread(String s){
    
    this.name = s;


}

public static void setScore() {


    Scoreboard board = Bukkit.getScoreboardManager().getNewScoreboard();
    Objective objective = ((org.bukkit.scoreboard.Scoreboard) board).registerNewObjective("abc", "abc");
    objective.setDisplaySlot(DisplaySlot.SIDEBAR);
    objective.setDisplayName("§6§lWillkommen bei Ravo!");
    objective.getScore("§e ").setScore(8);
    objective.getScore("§5 ").setScore(6);
    objective.getScore("§bDu gehörst zum Team: #").setScore(5);
    objective.getScore("§4 ").setScore(4);
    objective.getScore("§cUnser TS3-Server: PlusTube.eu ").setScore(3);
    objective.getScore("§3 ").setScore(2);
    objective.getScore("§2Viel Spaß! ").setScore(1);

}

public void run() {
    if(this.name == "t1") {
        
        setScore();
    }
    if(this.name == "t2") {
        Varo.getPlugin().startChecking();
    }
}

}

Server, programmieren, Java, Minecraft, Plug-in, Bukkit, multithreading, scoreboard, Spigot

cooldown in command?

Hallo ich möchte das mann wenn mann denn command /feed eingibt einen cooldown von z.b. 5 minuten bekommt das heißt das mann nur alle 5 minuten /feed machen kann wie ist das möglich hier meine classe

package de.MysticMC.commands;

import org.bukkit.command.Command;

import org.bukkit.command.CommandExecutor;

import org.bukkit.command.CommandSender;

import org.bukkit.entity.Player;

import de.liquid.core.GameCore;

import de.liquid.core.group.Groups;

import de.liquid.core.profile.PlayerProfile;

public class FeedCommand implements CommandExecutor {

   public boolean onCommand(CommandSender sender, Command cmd, String feed, String[] args) {

       Player p = (Player)sender;

       if(PlayerProfile.hasHigherRank(p.getUniqueId(), Groups.PREMIUM)){

          p.setFoodLevel(20);

           if(cmd.getName().equalsIgnoreCase("feed")) {

               if(p instanceof Player) {

                  if(args.length == 0) {

                     p.sendMessage(GameCore.getCore().getPrefix() + "§7Dein §2Hunger §7wurde Gestillt");

                  }else{

                     p.sendMessage(GameCore.getCore().getPrefix() +"§cNutze: §b/feed");

                  }

               }else{

                  sender.sendMessage(GameCore.getCore().getPrefix() +"§cDu musst ein Spieler sein!");

               }

           }

       }else{   

          p.sendMessage("");

           p.sendMessage(GameCore.getCore().getPrefix() + "§7Du benötigst minimum §6Premium §7Um /feed Nutzen zu können!");

           p.sendMessage("");

           p.sendMessage("§7Hier kommst du zu unserem shop: §ehttp://shop.mysticmc.de");

           p.sendMessage("");

      }

      return false;

 }

}

programmieren, Java, Minecraft, Entwicklung, Commands, Spigot

Meistgelesene Beiträge zum Thema Spigot