1.8.8 Plugin Development. Where should I start.

Discussion in 'Spigot Plugin Development' started by AlexWarriorPlays, Jul 13, 2021.

  1. Hello!
    I've been wanting to get into development for Minecraft Plugins using Java. (Ive been using skript) I think skript is great for beginners but I've started to think beyond it. Please link resources or information I could use to start.

    I also have a question. Ive seen people use Eclipse and a couple other programs. Is there one in specific thats would be better?

    Thanks!
     
  2. First of all, learn Java. I found this tutorial good.
    Then, you should decide on the IDE - the app that you will be using to code. I prefer IntelliJ IDEA, but there are other options, such as Eclipse or NetBeans.
    Last but not least - a good Spigot API tutorial. If you select IntelliJ, it will be very easy for you to setup your first plugin, and this dude has some great Spigot tutorials. Check his playlists.
    I wish you good luck!
     
    • Like Like x 1
    • Useful Useful x 1
  3. Thank you so much! The last 5 hours ive been learning and got a couple working plugins! I should take a break lol
     
    • Like Like x 1
  4. This can help too
    Also through the Spigot forums there are many resources that can help you :coffee:
     
  5. This may sound counter-intuitive, but you shouldn't learn how to make bukkit plugins, at least not yet. Try out different things, like Android applications, Swing apps, JavaFx desktop apps or discord bots (albeit that last one might not be the best either). The reasoning behind this is the fact that you are not going to get the proper experience and principles you'd naturally would get by trying out more mature ecosystems such as the mentioned ones leading towards an overall narrow perspective of the systems in-place for Java development.

    I know it can be frustrating at most, to start or try something completely unrelated to what your current goal is but if you plan to use your programming experience in any other kind of development area or in fact just wanting to have a seemingly standard approach to your plugins by applying principles understood within the other systems, you will find doing it very valuable. This is nothing but a wise insight anyone that has faulty started with bukkit development as their first programming experience, you can still go ahead with plugin development if you really wish so but if the former statement applies to you in a sense I am sure you'll be stepping over the same stones we all have.
     
    • Optimistic Optimistic x 2
  6. If you really wanna learn how to code Spigot plugins, I‘d suggest you don‘t use an API that‘s outdated since 7/8 years
     
  7. I still consider the original plugin tutorial on the bukkit wiki to be one of the best learning resources out there, but it assumes you already know a fair bit of Java. It's not important that the guide uses Eclipse, it applies to IntelliJ and other IDEs too. The only part that's outdated really is the dependency setup - you should ignore that and use the settings mentioned here on the spigot wiki.
     
  8. When I first started learning I knew nothing about programming and just went straight into my first plugin tutorial. It was a very bad one and didn't teach me anything. Also, I didn't know java so I couldn't;t understand anything I just memorized everything. In order to learn to make plugins, you have to be able to tell which part of the code does what not just look at it as a blob of text that makes magic happen.

    STEP 1 LEARN JAVA
    I would suggest learning a reasonable amount of java so that you understand OOP and basic data structures I had no idea how to use a Map which made using them from the tutorials so much harder. Also if you build a plugin of reasonable size you will have to create custom classes which will require you to have a decent knowledge of constructors, methods, fields... The Spigot API is not a programming language just an API for one, you need to learn it before using the API. To learn java I would recommend this tutorial, the guy also has a playlist for it if you prefer watching it that way. As far as your IDE, I started with eclipse but I believe Intellij is a lot better and it was you should use (Use the community edition since the other one is paid and you will not need these extra capabilities when starting out), the guy in the tutorial uses eclipse but really, it doesn't matter, the language is the same. After you have finished this tutorial series, PRACTICE JAVA. Tutorials teach you the theory but you need to learn to apply that theory to build projects. It is easy to learn what a Map is but it is harder to use it correctly in one of your projects so that it actually benefits you. You should practice java and become confident writing simple console programs before learning to make plugins. Don't look at learning java as a boring thing you have to do before getting to plugin development, that was the case with me at the start, but I enjoyed learning it and continued learning more even after I knew how to make plugins.

    STEP 2 LEARN PLUGIN DEVELOPMENT
    This is easy compared to learning java, even though this post has a "1.8.8" tag, I would suggest looking into modern mc version API since a lot of things have been made to help developers since 1.8. I recommend these tutorials all be CodedRed they are amazing and super high quality.
    Beginner Tutorial Playlist: https://www.youtube.com/playlist?list=PL65-DKRLvp3Yn7iglPfxKoc7bl0N80XgG
    Advanced Tutorials:
    https://www.youtube.com/playlist?list=PL65-DKRLvp3ZO63cYW86Sm920BiDb2gBa
    https://www.youtube.com/playlist?list=PL65-DKRLvp3ZO2i1OK0tfRsZt-glkBpUV
    CodedRed also has a discord server which is a great place to get help with the issues which you will inevitably face in your journey to become a plugin developer.

    STEP 3 PRACTICE PLUGIN DEVELOPMENT
    After learning the basics of plugin development you need to practice. First, make projects of your own. Try and make your code clean thinking someone may read it in the future, it is better to spend more time making your code cleaner. I once made the mistake of making a fairly large plugin and throwing code all over the place to make it work. When the guy who ordered it asked for a small change it was impossible to find anything and it took hours for me to make that change. If you feel like there should be a better solution for something, google it, or ask on the spigot forums, if you find a better solution then try and learn why it works and how it does what it does, DO NOT copy and paste code from people who are trying to help you, as you will have no idea what that piece of code does, a great example is This, it will likely be advanced for you right now but I'm putting as an example. It is a very clean and overall better way to make GUI's in a plugin but you should understand how it works. After you made some projects of your own, I suggest going to the Bukkit Plugin Requests Forum where people post plugin ideas and any developer can code them for them free. This is a great way to learn since it will motivate you not to quit and will push you towards perfecting what you deliver. If you want, you could try doing paid plugin requests to make some money, but I do not encourage you to do that unless you already have good experience making plugins. If you do this, be nice to your clients and help fix and bugs they find a good place for doing paid requests is the CodedRed discord. Spigot also has a forum page for that but I feel the discord will be a better place to start.

    I hope this short guide will help you learn plugin development and if you have questions regarding this guide please reply or PM me. :)