Guide Sourcecode for a monolithic RPG plugin

  • After careful consideration and due to limited usage, we’ve made the decision to discontinue the PaperMC forums. Moving forward, we recommend using Hangar for plugin uploads, and for all other community discussions and support, please join us on Discord.

Blutkrone

New member
Jun 26, 2024
1
2
3
Hello, I am Blutkrone.

I developed RPGCore and ended up cancelling the project. But I feel it would be such a waste to let it die. So I hope to share some of my knowledge (in the form of source code) and hopefully encourage the development of decent free and open source plugins.

I have spent an ungodly number of hours on RPGCore, many thousands of hours over several years. Development, research, iterations - much of the work on rpgcore was done at a time when we didn't have proper tools to deobfuscate Minecraft sources.

Anyway, I am releasing this project as both binaries and sources.

About the binaries

You can find a jar and the configurations on the github page I've linked to, it's under releases.

It is possible to use this to build a server, but I would discourage anyone from doing so. While rpgcore has a ton of features, I will no longer be maintaining it. If you don't have a developer who can find and fix the problems you will encounter, you will be shooting yourself in the foot.

Also, RPGCore is a monolith, it tries to do everything - I cut it short just before it was finished. It lacks a few things like trade, consumables and some social aspects. I probably could've split RPGCore into 40 or so plugins.

Play with it if you want, but don't build around it unless you have a developer to fix issues you encounter.

About the sources

The sources are the real reason I am posting this. Many thousands of hours have gone into this. For research, for development, for testing, and for rewriting.

A lot of the free options on the market were just so incredibly lacking, and the good stuff was just proprietary premium plugins. With these sources as a reference, I hope that we will see great open source alternatives to things. Better yet, I hope the day comes when this post is buried and forgotten because these things are native Minecraft features that no longer require a plugin.

Notable things include:
  • Packets using bytebuffers instead of reflection
  • Blockbench entity models (including animations)
  • Using fonts for HUD elements and Chest-GUIs
  • A pattern on flexible skill systems (And skill systems that are just incredibly flexible in general)
  • In-game editing tools with minimal boilerplate, instead of configuration files
  • A minimap rendering on-screen and updating while moving
  • An implementation of a quest system
  • Generating resourcepacks from a plugin
Just skim thorough it, maybe you'll find something useful.

See here

I am not answering any questions, I just wanted to share this with the hope that it will be helpful.


Why not a resource

I refrained from posting this as a resource because I do not intend to maintain it, and because I know that there are likely many little issues with it. Please refrain from posting a fork of RPGCore unless you intend to maintain it, also note that the sources forbid the fork itself to be monetized.