![](https://images.gutefrage.net/media/user/Support56/1505821607698_nmmslarge__69_64_577_577_fc7dfd0e9b0bdf8c32547c39855b4bd4.jpg?v=1505821608000)
![](https://images.gutefrage.net/media/default/user/9_nmmslarge.png?v=1551279448000)
Ich höre das was ich gerade lese.
Das ist echt interessant :D
Ich höre das was ich gerade lese.
Das ist echt interessant :D
Hello again :D
Ne, 12gb reichen nicht.
Jeder Spieler zieht mindestens 100mb + 500mb pro server. Kann echt knapp werden.
Schreib da nochmal hin apt-get <-(Du hast das -get vergessen)
Also: apt-get install .....
Wenn du kein Java kannst ist das ein viel zu großes Ziel. Selbst wenn du im Internet eine Vorlage findest, verstehen wirst du dann nichts. Ich würde mit viel simplerem Anfangen. (Oder meinst du das Ganze in 2D?)
Das sollte grundsätzlich das sein was du wolltest. Ich habe alles auskommentiert, damit du weißt was da genau abgeht. Ich hoffe ich konnte dir helfen
//Die Liste in der die Arenaspieler gespeichert werden
private ArrayList<Player> players = new ArrayList<Player>();
//Der Radius von der Arenamitte in der die Spieler spawnen
private int radius = 30;
//Die Location Arenamitte kannst du dann zb aus einer Config laden
Location arenamitte = new Location(Bukkit.getWorld("world"), 0, 60, 0);
@EventHandler
public void onPlayerJoinEvent(PlayerJoinEvent e) {
//wird gecalled wenn ein Spieler den Server betritt
Player player = e.getPlayer();
/*Wenn schon zwei Spieler in der Arena sind,
sollen keine neuen mehr joinen können.
Du kannst die zahl natürlich erhöhen (z.b für ein ffa mit 16 spielern oder so)
*/
if(players.size() > 1) {
player.kickPlayer("§cDie Arena ist voll!");
return;
}else {
//Wenn es noch Platz gibt fügen wir den Spieler in die Liste
players.add(player);
}
if(players.size() == 2) {
//Das Match beginnt. Hier kannst du dann deine Methoden reinschreiben (Z.b items geben etc)
for (Player p : players) {
//alle spieler in der liste werden zu einer zufälligen location teleportiert (in dem radius)
p.teleport(getRandomLocation(arenamitte));
}
}
}
public Location getRandomLocation(Location loc) {
Random r = new Random();
//soll der wert von r positiv oder negativ zur location berrechnet werden?
boolean positiv = r.nextBoolean();
//gibt einen x und z wert von 0 bis 30 (radius)
int x = r.nextInt(radius);
int z = r.nextInt(radius);
Location ret = (positiv) ? new Location(loc.getWorld(), loc.getX() + x, loc.getY(),loc.getZ() + z):new Location(loc.getWorld(), loc.getX() - x, loc.getY(), loc.getZ() - z);
return ret;
}
Machs mit Bukkit.getOnlinePlayers().size(). Du bekommst damit eine ArrayList aller Spieler auf dem Server, da es eine Liste ist kannst du dessen Länge mit size() holen. Das ist jetzt aus dem Kopf, so sollte es aber gehen.
Aktiviere Vsync, dann berechnet rainbow nur soviele FPS wie dein Monitor anzeigen kann. Ein Spiel versucht wird immer deine Grafikkarte sehr stark beanspruchen, da es natürlich versucht soviele Frames wie möglich zu generieren. Es bringt aber nichts wenn du zb. nur einen 60hz Monitor hast und dir 200fps generiert werden. Deshalb kannst du die Frames limitieren. Habe ich auch so gemacht.
Ja eigentlich schon, hängt davon ab aus welcher Richtung sich die Grafikkarte mit Luft versorgt.
Physik:
100Sekundenphysik
DrWhatson
BreakinLab
Astronomie:
Norio • Science & mehr (Kleinerer Youtuber, trotzdem gute Qualität, man findet ihn aber sehr oft in den Kommentaren xD)
Chemie:
MaiLab
Eher informatives Entertainment:
Ultralativ
offen un' ehrlich
Programmierung Devlogs (Eher Entertainment anstatt Tutorial):
Dani
Randall
Dokus u. sonstiges:
Quarks
MrWissen2Go
Ich habe noch ein bisschen breitflächiger Ytkanäle aufgelistet, ich schaue alle von denen ziemlich gern. Hoffentlich kannst du etwas mit dieser Auflistung anfangen
LG
Wenn du von der Konsole redest sollte es nicht gehen, einmal ausgegeben bleibt es auch dort (zu mindest ist es so in java, Programmiersprachen sind sich aber in diesem Bereich sehr ähnlich)
Lösung: Minecraft empfängt nur ipv4 anfragen, da wir auf ds-lite waren hatten wir keine ipv4 adresse (sondern ipv6). Das Problem habe ich gelöst indem ich den Anbieter angerufen habe und nach einer reinen ipv4 gefragt habe