Datapacks are Minecraft's native modding API, created by Mojang. It allows players to customize their Minecraft experience without needing to know how to code in Java, which is required to use other plugin and modding development frameworks. Developers can add custom advancements, loot tables, recipes, structures, biomes, and even dimensions without any code modification. They can also add functions, which essentially run lists of commands in a text file which can be run in-game or through other functions. This surprisingly powerful feature allows developers to code features into the game through Minecraft's command system alone, using the same commands as an admin would use (/gamerule, /effect, /execute, etc.) to create anything they can think of.
All of my creations on this site (for now) are datapacks that can be downloaded and installed into your servers and worlds.
Read more: https://minecraft.fandom.com/wiki/Data_Pack
Once you've installed my datapacks, you can place the .zip file in the datapacks folder of your world (this also works if you unzip the file). This should be present whether or not your world is singleplayer or multiplayer, and you can create it in the world's root folder if it doesn't already exist. Then type /reload as an admin in-game or through the console, and the datapacks should now work!
More in-depth tutorial: https://minecraft.fandom.com/wiki/Tutorials/Installing_a_data_pack
First, check the following:
Did you install the DrakonCore datapack that the rest of my datapacks depend on? Also, if it's been a while since you downloaded it, download it again here—datapacks I created after the version you downloaded might require some new features. I don't currently have a versioning system for my datapacks so it may be difficult to check if it's outdated or not.
Are you on the latest version of Minecraft: Java Edition? I only support the latest version. (see my answer below for why)
If you did that and are still running into errors: and would like to report a bug, please submit a bug report.
TL;DR: It's a personal choice.
It's true that plugins can do a great deal more than datapacks, as it uses an actual modding engine instead of Mojang's limited native modding API. It's also mostly true that plugins perform much better on average than datapacks, since it runs Java code directly instead of processing Minecraft commands. However, I personally dislike developing for the older modding development engines such as Bukkit, Spigot, and Forge because I find their API rather archaic and needlessly difficult. I'd be much more open to the idea of using Fabric or Sponge to develop plugins, as they're much newer and seem to have much more potential, but I haven't gotten around to learning them yet. Like plugins, datapacks are entirely server-side; this means new players don't have to install anything special to join the server, like they would with a modded server. I prefer this ease of access over the additional possibilities of more conventional modding.
I have multiple reasons for using datapacks over plugins. For one, using Minecraft's native modding API means that I basically never have to worry about updating my code to be compatible with newer versions of Minecraft; in fact, I usually don't need to do anything except change the datapack format number when updating my server. This avoids the trouble of needing to wait for the plugin platform to update to the latest version, and further avoids the need to wait for individual datapack developers to update their datapacks, since most of the time they continue to work even if the update introduces drastic change.
In addition, I personally enjoy the challenge of a limited modding API. While Minecraft functions are a far cry from a true programming language, it can still do a surprising amount. Significant problem-solving skills and creativity are required to make certain features work, and I find it extremely satisfying to make it happen anyway. I especially enjoy creating features with datapacks that people think are only possible with plugins—or even better, have never even been done with plugins before.
I'm no SethBling, and I definitely don't think I have the best datapacks ever. However, there are a few pros to using my datapacks:
My datapacks are (mostly) compatible with both singleplayer or multiplayer, excluding certain features that are only useful in multiplayer settings (such as Player Revive).
They're designed with optimization in mind, as I know better than most how badly optimized datapacks are by default. I use a core datapack mainly to manage all of my loops and have a common set of scoreboards, which should decrease overall lag. This core datapack is generally faster than using datapacks by different authors, since each datapack uses a common set of loops. In addition, I am experienced with writing optimized code that further reduces server lag.
My datapacks are completely modular, which means (besides the core datapack) you can pick and choose datapacks to add to your world. This lets you craft the experience you want for your players!
To be honest, they're probably directly inspired off of the one you're thinking of! Personally, I think stealing and improving upon ideas is the heart and soul of game design. I do my best to record which ideas were directly inspired off of other datapacks, so feel free to remind me if you think I missed one. I never want to directly copy another person's work; even if the features appear similar, I likely coded the feature myself. I often try to add my own spin on it and improve it in some way. However, keep in mind that my original datapacks were not modular, instead being an amalgamation of everything I wanted to include in one datapack. Thus, in the case that one of my datapacks is an unequivocal copy of another person's datapack, I am more than willing to take it down (I can be contacted here). In return, I hope other datapack creators will give the same respect to my work by giving credit for the inspiration and also improving upon by idea rather than directly copying it :)
99% of the time, yes.
Naturally, don't expect to combine two features that conflict with each other and expect it to work properly. Servers with plugins should still have a datapack folder, so nothing explicitly disallows server owners from using both plugins and datapacks at once. In addition, I've been careful to use namespaces for datapack and scoreboard ids that shouldn't conflict with other datapacks, though there's always a chance that it does anyway.
I don't have any plans to support Bedrock Edition, as I don't own a copy of it myself and its modding API is drastically different from Java Edition. In short, they don't support Java Edition's datapacks and I don't currently feel I have a Bedrock Edition audience.
Not intentionally, since I prefer using the latest datapack features that usually end up being more optimized. There's a chance that a specific datapack still works with an older version if it doesn't use any new syntax, but I can't guarantee this. I also won't keep any old versions of datapacks.
As this a hobby project, I don't really run any sort of datapack creation team. I don't currently accept donations but if you'd like to support me, play my datapacks and let me know what you think! I'd love to hear from people who enjoyed (or didn't enjoy) my datapacks. You're also free to develop datapacks using my DrakonCore datapack as a library, though I must ask that you appropriately transform & improve any features that would otherwise be too similar to mine before claiming credit.
I like talking about the inner workings of my datapacks, so if there's enough interest you may be seeing more technical details in the future.
I don't use shaders in my screenshots, but I do use a custom collection of Vanilla-like resource packs that I've been running with for a while. These resource packs have almost no impact on gameplay, though I apologize for any confusion caused by different textures. Until further notice none of my datapacks use a custom resource pack, so custom textures that you see in any screenshots or videos are from my personal settings!
In case you wanted to know, the resource packs I use are:
MinimalArmor by Cookeze
BetterDogs by haunt-muskie
Dramatic Skys by thebaum64
Custom Sky HD by Rodrigo Al.
A bunch of packs from VanillaTweaks