• Es freut uns dass du in unser Minecraft Forum gefunden hast. Hier kannst du mit über 130.000 Minecraft Fans über Minecraft diskutieren, Fragen stellen und anderen helfen. In diesem Minecraft Forum kannst du auch nach Teammitgliedern, Administratoren, Moderatoren , Supporter oder Sponsoren suchen. Gerne kannst du im Offtopic Bereich unseres Minecraft Forums auch über nicht Minecraft spezifische Themen reden. Wir hoffen dir gefällt es in unserem Minecraft Forum!

Spigot Ich komme in der Plugin Programmierung nicht weiter... Ratschläge und Tipps gerne gesehen!

Steiniiii

Minecrafter
Registriert
4 Januar 2018
Beiträge
20
Diamanten
0
Guten Mittag miteinander, :)

ich muss mich erneut mit einem Anliegen an euch wenden und zwar geht es um folgendes.:rolleyes: Wie ich die letzten Tage wieder feststellen musste, ist mein Wissensstand im Bezug auf Minecraft Plugins Programmieren nicht so hoch wie erwartet. o_O:rolleyes:

Wie hat das sich das gezeigt? Ich habe mir verschiedene Source Codes (kleinere Minigames, ein Item Auktionsplugin, ChatsystemPlugins,Crate Plugin,...) angesehen und versucht, diese in meiner Art erneut umzusetzen und zu verstehen, welche Techniken angewandt wurden.

"Ich sah den Wald vor lauter Bäumen nicht".
Ich nehme an dass meine Ansprüche definitiv zu hoch waren. :oops: Mein finales Ziel ist es (wahrscheinlich von jedem anderen auch), komplexere Plugins zu entwerfen, Ideen habe ich ohne Ende xD:eek::p Ich weis, dass das nur mit Übung geht und dass das sehr schwierig wird.
Aber im Moment komme ich einfach nicht weiter und weis auch nicht weiter...

Daraufhin machte ich mir eine Liste, mit dem was ich eigentlich kann wie;

- Java Basics (For / While / if / do-while - schleifen, Variablen / Zahlen und Daten - typen, ein wenig mit getter und setter, usw...)
- klassische Befehle wie /heal oder /heal [Other] usw...,
- Events, ...
- hantieren mit config.yml Dateien, Arraylists und HashMaps,
- spielen mit ItemStacks,

Plugins die ich die letzten Tage nun ohne Hilfe zusammenbauen konnte sind solche wie, Mute Plugin, Private Nachrichten Plugin, ein mobiler Mülleimer, ChatClear Plugin, Warn Plugin bei dem der verwarnte Spieler in einer Config gespeichert werden.

Nun, würde ich gerne wissen, welche Plugins bereits am Anfang mit ein wenig Übung zu schaffen sein müssten. :eek: Desweiteren ist mir eines noch nicht ganz klar, gibt es eine Art Reihenfolge, in der ich die Bukkit API kennenlernen sollte oder einfach gesund durchmischen? Mein Problem ist halt, dass ich mir ein Ziel ins Auge fasse, damit beginne aber relativ schnell merke, dass ich nicht weiterkomme, ob mit Internet Recherche o.ä. :(:confused:

Ich bedanke mich schon für alle konstruktiven Kommentare.:cool:

Gruß Steini
 
Zuletzt bearbeitet:

Avankziar

Schafhirte
Registriert
12 Februar 2018
Beiträge
135
Alter
33
Diamanten
324
Minecraft
Avankziar
welche Plugins bereits am Anfang mit ein wenig Übung zu schaffen sein müssten.
Naja, ein ChatPlugin mit einfach optionen wäre ein Ansatz aka, mit Chatformat oder eventuellen Channels. Auch wäre nen Tablisten oder Scoreboard nicht verkehrt oder ein einfach Töte Mob kassiere Geld/Coins etc. Da kann man schon vieles finden.

eine Art Reihenfolge, in der ich die Bukkit API kennenlernen sollte oder einfach gesund durchmischen?
Nee, also zumindest bei mir. Ich habe frei schnautze das umgesetzt, was ich mir vorgenommen habe. Manchmal hängt man ein bissle, aber das geht vorbei.

Mein Problem ist halt, dass ich mir ein Ziel ins Auge fasse, damit beginne aber relativ schnell merke, dass ich nicht weiterkomme, ob mit Internet Recherche o.ä.
In dem Falle biete ich gerne etwas Unterstützung an, bzw. man kann mich zu jedem Druss da fragen :D. (Naja, solange ich es weiß xD)
Discord => Avankziar#7545
Sonst, naja es wundert mich dass du mit Internet Recherche nicht weiterkommst, ich finde immer alles und sonst schaue ich hier => https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/event/block/BlockPlaceEvent.html beispielsweise nach...

Avan
 

JOO200

Braumeister
Registriert
18 Dezember 2016
Beiträge
442
Diamanten
228
In den meisten Fällen ist nicht das fehlende Wissen über irgendwelche APIs das Problem, sondern das Problem hängt mit den Java Grundlagen zusammen. Java ist eine objektorientierte Sprache, daher ist es sinnvoll/notwendig, objektorientiert zu denken:
Man kann so gut wie alles in ein Objekt zerlegen:
Ein Spieler ist ein Objekt, mit verschiedenen Attributen (Name, UUID, Verbindung(IP-Adresse, Ping, etc.), Position in MC, etc.)
Die meisten Attribute sind selbst wieder Objekte, so zum Beispiel die Verbindung (Connection), UUID, Position (Location), selbst ein String.

Solltest du nun dein eigenes komplexeres Plugin schreiben, solltest du dein Plugin sinnvoll in Klassen zerlegen.
Nehmen wir mal ein Chatplugin an:
Bei einem Chatplugin, könnte jeder Channel eine entsprechende Instanz einer Klasse sein. Oder von einem Interface erben, sollte es sowas wie Lokalchat, zeitbegrenzte Channel o.ä. geben. Die Channel sind in einer Liste registriert, durch welche bei einer neuen Chatnachricht iteriert wird. Durch entsprechende Filter ist es möglich, die Chatnachricht wird dann schlussendlich von den entsprechenden Channel-Instanzen behandelt.

Listener:
Java:
public class MyListener implements Listener {
    private List<Channel> channelList;
   
    public MyListener(List<Channel> channelList) {
        this.channelList = channelList;
    }
   
    public onChatEvent(AsyncChatEvent event) {
        channelList.stream()
            .filter(channel -> channel.messageAllowed(event.getPlayer(), event.getMessage())
            .forEach(channel -> channel.sendMessage(event.getPlayer(), event.getMessage()));
                    // Also iteriere über die vorhandenen Channel
                    // Filtere die Channel, die die Nachricht senden sollen
                    // und sende schlussendlich in den Channeln die Nachricht.
    }
}

Channelinterface:
java:
public interface Channel {
    boolean messageAllowed(Player player, String message);
    void sendMessage(Player player, String message);
}
TODO: Klassen, die das Interface "Channel" implementieren und die Methoden messageAllowed und sendMessage überschreiben.
So könnte eine Klasse als PrefixChannel die Klasse implementieren und schauen, ob die Nachricht mit einer bestimmten Zeichenfolge startet.
Oder ein LocaleChannel auf den Prefix schauen und die Nachricht nur in einer gewissen Reichweite senden.

So oder so ähnlich kann man das aufbauen. Ich denke, dass das eine nette Übung wäre, vor allem um die Java Grundlagen zu verstehen ;)
 

PixelEmpires

Kuhfänger
Registriert
21 März 2018
Beiträge
66
Alter
25
Diamanten
300
Minecraft
_Supreme_Hero_
Schade das, dass Buch so teuer ist.... viele würden sich das direkt holen, wenn das so 20 € kosten würde.... bei 50€ denken sich viele Anfänger bestimmt das Tutorials besser sind... viele wollen halt nicht direkt 50€ ausgeben und 50€ für nen Buch finde ich auch etwas viel, aber das Buch ist wirklich gut..... aber etwas billiger wäre halt schon besser xD
 

Baba43

Ehem. Teammitglied
Ehem. Teammitglied
Registriert
5 November 2012
Beiträge
869
Diamanten
60
Minecraft
baba43
Schade das, dass Buch so teuer ist
Die Online-Ausgabe ist umsonst. Ich kann das Buch jedoch gerade für Neulinge nicht wirklich empfehlen, weil es so zäh, langatmig und somit langweilig ist, dass man als Einsteiger schnell die Lust verliert. Zudem hat wahrscheinlich niemand, der das Buch empfiehlt, auch nur 50% davon gelesen. Alternativ würde ich es mit Kursen versuchen (z. B. von Udemy), bei denen man eher am Ball bleibt. Das Interesse für tieferes Verständnis kommt mit der Zeit und zu jedem Thema finden sich mehr als genug Infos im Internet.

bei 50€ denken sich viele Anfänger bestimmt das Tutorials besser sind
Du investierst mit so einem Buch in Fähigkeiten, die dir tausendmal mehr bringen, als diese 50€. Wenn man nicht bereit ist, Geld zu investieren, um Zeit zu sparen, dann hat man es eigentlich auch nicht verdient, alles vorgekaut zu bekommen. Wer Kurse/Bücher von echten Programmierern mit Tutorials von Hobby-Entwicklern vergleichen möchte, bei denen die Hälfte nicht mal stimmt, sollte es vielleicht einfach ganz lassen bzw. damit leben, dass es ein steiniger Weg ist, alle Erfahrungen selbst zu machen.

Mein Problem ist halt, dass ich mir ein Ziel ins Auge fasse, damit beginne aber relativ schnell merke, dass ich nicht weiterkomme, ob mit Internet Recherche o.ä.
Dafür kannst du dieses Forum nutzen. Sofern du hier wirklich Fragen aus Interesse stellst und nicht nur, um deine Aufgaben von jemand anderem erledigen zu lassen, bekommst du hier durchaus hochwertige Hilfe. Im Bukkit-Bereich ist es jedoch noch einfacher: die meisten Sachen, die du machen willst, wurden schon mal gemacht. Suche also ein Plugin, was deine Funktionalität bereits beinhaltet und schaue, wie dein Problem dort gelöst wurde.
 
Zuletzt bearbeitet:

Kroseida

Schafhirte
Registriert
28 September 2015
Beiträge
110
Alter
28
Diamanten
307
Minecraft
Kroseida
Guten Mittag miteinander, :)

ich muss mich erneut mit einem Anliegen an euch wenden und zwar geht es um folgendes.:rolleyes: Wie ich die letzten Tage wieder feststellen musste, ist mein Wissensstand im Bezug auf Minecraft Plugins Programmieren nicht so hoch wie erwartet. o_O:rolleyes:

Wie hat das sich das gezeigt? Ich habe mir verschiedene Source Codes (kleinere Minigames, ein Item Auktionsplugin, ChatsystemPlugins,Crate Plugin,...) angesehen und versucht, diese in meiner Art erneut umzusetzen und zu verstehen, welche Techniken angewandt wurden.

"Ich sah den Wald vor lauter Bäumen nicht".
Ich nehme an dass meine Ansprüche definitiv zu hoch waren. :oops: Mein finales Ziel ist es (wahrscheinlich von jedem anderen auch), komplexere Plugins zu entwerfen, Ideen habe ich ohne Ende xD:eek::p Ich weis, dass das nur mit Übung geht und dass das sehr schwierig wird.
Aber im Moment komme ich einfach nicht weiter und weis auch nicht weiter...

Daraufhin machte ich mir eine Liste, mit dem was ich eigentlich kann wie;

- Java Basics (For / While / if / do-while - schleifen, Variablen / Zahlen und Daten - typen, ein wenig mit getter und setter, usw...)
- klassische Befehle wie /heal oder /heal [Other] usw...,
- Events, ...
- hantieren mit config.yml Dateien, Arraylists und HashMaps,
- spielen mit ItemStacks,

Plugins die ich die letzten Tage nun ohne Hilfe zusammenbauen konnte sind solche wie, Mute Plugin, Private Nachrichten Plugin, ein mobiler Mülleimer, ChatClear Plugin, Warn Plugin bei dem der verwarnte Spieler in einer Config gespeichert werden.

Nun, würde ich gerne wissen, welche Plugins bereits am Anfang mit ein wenig Übung zu schaffen sein müssten. :eek: Desweiteren ist mir eines noch nicht ganz klar, gibt es eine Art Reihenfolge, in der ich die Bukkit API kennenlernen sollte oder einfach gesund durchmischen? Mein Problem ist halt, dass ich mir ein Ziel ins Auge fasse, damit beginne aber relativ schnell merke, dass ich nicht weiterkomme, ob mit Internet Recherche o.ä. :(:confused:

Ich bedanke mich schon für alle konstruktiven Kommentare.:cool:

Gruß Steini

Du solltest bevor du mit Bukkit anfängst Java lernen.
Dazu kann ich dir KEINE Bücher empfehlen.

Du musst es selber wollen, googlen, lesen, youtube video gucken(ja auch youtube), probieren, verzweifeln kurz vor dem Aufgeben stehen und wenn du weinend in deinem Bett liegst... dann.. ja dann hast du die Basic's gelernt.
Um zu programmieren musst du anders denken, du musst wie eine Machine denken können, aber auch in Objekten Denken können, du musst simpel aber trozdem kompliziert denken.


In der IT Welt gilt - Wer aufgibt hat verloren.

Und dazu solltest du villeicht als "Junior Entwickler" in Entwickler Teams mitwirken.
Schreib mir einfach mal privat. :p
 
Oben