Frage von LudwigSchindler, 118

Minecraft 1.9 Ping per Plugin abfragen?

Hallo, seit der Version 1.9 funktioniert das Abfragen des Pings mit der alten Methode nicht mehr. Ich habe bisher auch keine Videos etc. zu dem Thema gefunden. PS: In BungeeCord weiß ich wie es geht ;D und ich meine in Spigot/Bukkit :D

Hilfreichste Antwort - ausgezeichnet vom Fragesteller
von MCelements, 72

Versuch es mal mit dieser Methode

public static int getPlayerPing(Player player){

try{
Class<?> craftPlayer = Class.forName("org.bukkit.craftbukkit." + getServerVersion() + ".entity.CraftPlayer");
Object converted = craftPlayer.cast(player);
Method handle = converted.getClass().getMethod("getHandle", new Class[0]);
Object entityPlayer = handle.invoke(converted, new Object[0]);
Field pingField = entityPlayer.getClass().getField("ping");
return pingField.getInt(entityPlayer);
}catch (Exception ex){
ex.printStackTrace();
}
return 0;
}
public static String getServerVersion(){

Pattern brand = Pattern.compile("(v|)[0-9][_.][0-9][_.][R0-9]*");
String pkg = Bukkit.getServer().getClass().getPackage().getName();
String version = pkg.substring(pkg.lastIndexOf('.') + 1);
if (!brand.matcher(version).matches()) {
version = "";
}
return version;
}
Antwort
von RLEXBuilding, 35

1. Socket aufstellen

2. Mit dem Socket ein Packet senden wie Damage und die Zeit messen bis ein return zurückkommt

Antwort
von Raph1404, 62

Ich wüsste leider auch nicht wie das IG geht, aber wenn du einfach nur den Ping zum Server brauchst:

1) kopier den Servernamen (mit STRG + C [ohne den Port])

2) öffne CMD ( suche dafür einfach in der suchzeile deines Betriebssystems nach CMD)

3) schreibe nun: ping (füge hier den Servernamen ein mit STRG + V, z. B. eu.mineplex.com)

4) Dann bekommst du den durchschnittlichen ping gesagt

5) fertig !

Antwort
von seppli03, 63

Geht noch nicht (soviel ich weiss) :/

Kommentar von LudwigSchindler ,

Das wäre echt... "blöd" xD Aber danke für die Info :D

Kommentar von seppli03 ,

Aber in der 1.9 ist doch der Ping nicht mehr so wichtig?

Kommentar von LudwigSchindler ,

Ja, beim PvP. Aber ich hätte halt schon gerne den /ping Befehl :D

Keine passende Antwort gefunden?

Fragen Sie die Community