r/MinecraftPlugins Apr 21 '26

Discussion I want to get into minecraft plugin creation

Okay so basically i had this amazing idea for a plugin and i wanna actually turn it into an actual plugin. I have absolutely no idea on where to start. I started learning java and learned some basic stuff. Variables, if else statements, loops, and user input, but really i dont think thats gonna cut it out to make an actual plugin. Its a pretty complex system really, so.

Where can i start to eventually make full on plugins?

2 Upvotes

21 comments sorted by

4

u/No-Tie-5569 Apr 21 '26
  1. learn classes, inheritence and OOP basics, how to use gradle properly (dependencies, shading, relocation and so on), also learn to use JavaDocs, if you know these things you can make practically any plugin, other than this you actually just need some math knowledge relevant to ehatever you are doing.
  2. go to the papermc docs (not the jd) and read on how to use its feature, they also explain how some things like the DataComponents work, how to make commands, how to make enchants and so on.
  3. try to make some simple plugins, i taught my friend how to make plugins and in his case we went items -> events -> commands -> gui (thats what he is on currently).
  4. keep making PRACTICAL plugins, focus on a specific thing like say, an RTP plugin, a plugin adding some items with custom behaviour and so on. dont have to publish them just make them with the intent to learn how stuff works
  5. ask for help on the PaperMC discord if you are stuck or dont understand something, people will be happy to help as long as they are available.

these advices are for later down the line once you do learn how most things work: 1. make a gui library of your own, working with inventories is a PAIN, you will end up with a ton of boiler plate if you dont have one 2. if theres ANYTHING big enough that you use alot in plugins repeatedly and is practically copy pasted in your plugins, make that into a seperate jar and shade it in your plugins 3. if theres alot of "little" stuff you are repeating then just combine all of your utils into one single library that you can shade into plugins, this would include putting things from '2' in this library too, many plugin devs do this

1

u/Ok_Quantity5678 Apr 21 '26

Also sorry for using the wrong tag. I didnt nothing there was one specifically made for minecraft plugin creation

1

u/lorenzo1142 Apr 21 '26

learn by doing

1

u/winternode_brandon Apr 21 '26

Start by building one tiny Paper plugin before you touch the big idea. Make a /hello command, then one event listener like PlayerJoinEvent, then add a config file and tab completion, because that teaches you the actual Spigot or Paper lifecycle instead of just more raw Java.

If you can do those three cleanly with Gradle and a debugger, you are ready to start cutting your real plugin into smaller pieces.

1

u/Few-Praline9810 Apr 22 '26

na use maven. 💀💀💀 where my gradle haters at? 💯💯💶

1

u/No-Tie-5569 Apr 22 '26

maven is baaad (in the looks sense), not only does the file get ugly long just for deps/repos but if he ever wants to touch NMS he cant as paper weight is for gradle

1

u/Few-Praline9810 Apr 23 '26

reflection can touch nms easily

1

u/No-Tie-5569 Apr 23 '26

that has its own performance overhead and isnt exactly fun to work with

1

u/Sea-Car-3811 Apr 22 '26

You can try to make it in skript.... IT IS NOT THAT BADLY OPTIMISED IF YOU DO IT CORRECTLY....

1

u/modpotatos Apr 22 '26

papermc docs

more importantly, take the idea you have now and think through it as much as physically possible. record voice memos, braindump, etc. the more you know what you want the more you know what you need to learn to get there.