# minecraft.how — Full content index for LLMs > Long-form extract of recent blog content. For a structured route map, see /llms.txt. ## Recent blog posts (full text) ### Building Custom Inventories: The inventory-framework Deep Dive URL: https://minecraft.how/blog/post/inventory-framework-custom-minecraft-inventories Published: 2026-04-28 Author: ice devnatan/inventory-framework Minecraft Inventory API framework Spending hours wrestling with Minecraft's default inventory system just to add a simple menu to your server? inventory-framework is a Java library that strips away the boilerplate and gives you a high-level API for building custom inventory UIs across Bukkit, Paper, and Minestom without reinventing the wheel. What This Project Does inventory-framework is an open-source Inventory API (192 stars on GitHub) designed to solve a real problem: creating custom Minecraft inventory interfaces shouldn't require deep knowledge of Bukkit's event system, click handling, or cross-platform compatibility quirks. And this library abstracts those details away so you can focus on designing your game mechanics instead of debugging inventory click events. It supports three major server platforms out of the box: Bukkit servers (the foundation for Paper), Paper (the high-performance Bukkit fork), and Minestom (a lightweight, from-scratch server implementation). That multi-platform approach is genuinely useful if you're experimenting with different server software or maintaining plugins across multiple ecosystems. Why Customize Inventories at All? Custom inventories are the backbone of modern Minecraft servers. Think about it: game menus, admin panels, shop interfaces, quest logs, equipment managers, cosmetic selectors. If you run any kind of game server (not just vanilla survival), custom GUIs are essential. But writing them from scratch is painful. Each click needs event handling. Different Minecraft versions have different behavior. Some platforms don't support certain features at all. The bugs compound fast, and you're writing defensive code instead of creative code. How to Get Started First, you'll need a Minecraft server project using one of the supported platforms (Bukkit, Paper, or Minestom). If you're already running a plugin environment, you're probably ready to go. For a Maven-based project, add the dependency to your pom.xml: xml me.devnatan inventory-framework-api 3.7.1 For Gradle, add this to your build.gradle: gradledependencies { compileOnly 'me.devnatan:inventory-framework-api:3.7.1' } You'll also need the platform-specific implementation. For Paper servers: xml me.devnatan inventory-framework-paper 3.7.1 runtime Or if you're using Minestom: xml me.devnatan inventory-framework-minestom 3.7.1 runtime The recent v3.7.1 release included a completely rewritten configuration guide with clearer examples, so the documentation is actually solid right now if you hit any setup friction. Core Features That Actually Matter Per-Player Configuration is the headliner here. You can modify inventory behavior on a per-player basis when they open it, which sounds basic until you realize how often you need it. Different players seeing different options? Different player ranks seeing different content? This framework handles that without forcing you to create separate inventory instances. GitHub project card for devnatan/inventory-framework Event Handling follows an intuitive pattern. Register listeners for clicks, configuration changes, and other interactions without wading through Bukkit's verbose event system. The framework passes the right context to your handlers automatically. Cross-Platform Abstraction means you write once and deploy to Bukkit, Paper, or Minestom without conditional code. That's legitimately rare for Minecraft libraries. Navigation Between Views lets you build multi-screen inventory interfaces. Switch between different menus without awkward state tracking. Want a main menu that opens a shop that opens a settings panel? The framework handles the navigation cleanly. Pagination and Dynamic Content handles large collections. Display 100 items across multiple pages without manually calculating slot positions and handling page logic. Scheduled updates mean your inventory can refresh live without the player closing and reopening it. Common Gotchas and Rough Edges The v3.7.1 release fixed a nasty bug where per-player configuration (using modifyConfig() in the onOpen event) wasn't actually working. If you're upgrading from earlier versions and relying on this feature, grab the latest release. Another subtle one: player context cleanup on quit. The framework now handles this internally, but if you're using an older version, make sure you're not leaking player data when they disconnect. Configuration syntax changed between versions. If you're migrating from an earlier release, the rewritten configuration guide in v3.7.1 is worth reading line by line. The changes are sensible, but they're real. What About Alternatives? There's not a massive ecosystem of direct competitors here. ChestUI and InventoryAPI exist, but they're either less actively maintained or cover narrower use cases. If you're looking at inventory frameworks, inventory-framework is the most complete option right now. That said, for very simple cases (a basic shop, single-menu panels), rolling your own might be faster. It's only worth pulling in a dependency if you're building something with multiple menus, complex state, or cross-platform needs. Integration With Your Server Ecosystem If you're building a game server (especially one you might list on the Minecraft Server List), inventory-framework makes it easy to create polished menus that match your server's quality. Players expect good UIs alongside a great server message (like what you'd create with the Minecraft MOTD Creator), and this framework handles the inventory side cleanly. You can integrate it with your permission system, build admin panels, sync menus with custom commands, and connect it to other plugins. For server networks, store menu state in a database and restore it when players hop between servers. The framework handles the UI complexity so you can focus on the mechanics underneath. One practical example: build an inventory-based shop that syncs with your economy plugin. Or create an admin menu tied into your moderation system. The 192-star community is small but engaged, so you'll find examples and get reasonable support if you hit problems. Where to go from here Read the source on GitHub (docs, examples, and the issue tracker) Browse open issues to see what the community is working on Check recent releases for the latest build or changelog --- ### How Craft-Engine Lets You Add Custom Minecraft Content URL: https://minecraft.how/blog/post/craft-engine-minecraft-custom-blocks Published: 2026-04-28 Author: ice "A Paper/Folia plugin that enables dynamic creation of custom blocks, items and recipes through configuration." Xiao-MoMi/craft-engine · github.com .0 Ever wanted to add custom blocks and items to your Minecraft server without diving into Java code? That's what Craft-Engine does - it's a configuration-based plugin for Paper and Folia servers that lets you create entirely custom content through YAML or JSON files. No programming knowledge required. What Craft-Engine Actually Does Craft-Engine is a plugin that essentially extends Minecraft's configuration system in ways Paper alone doesn't. Instead of waiting for Mojang updates or writing custom plugin code, you define custom blocks, items, and recipes right in your server's config files. The plugin handles all the heavy lifting using bytecode manipulation and packet-level protocol tweaks. The core idea is elegant. If you can write a config file, you can add custom content to your server. Items get custom display names, textures, durability values, and special behaviors. Blocks get unique mining properties, light emissions, and animations. Recipes use any combination of items you've created. Version 0.0.67 arrived in early 2026 with full support for Minecraft 1.21.11. The changelog includes a new feature placer system for world generation, expanded block behaviors, new item behaviors for range mining, and more. A plugin stays reasonably current with game updates, which matters if you're running recent versions. The plugin specifically targets Paper and Folia - the high-performance server software millions of players use. If you're already running Paper, Craft-Engine drops right in. Why You'd Actually Use This The appeal is flexibility without complexity. Running a custom progression server? A creative realm with themed architecture materials? A PvP server with balanced custom weapons? Craft-Engine provides tools that would normally require hiring a plugin developer or learning Java yourself. Picture a medieval fantasy server. You want iron pickaxes to work differently. Anyone want rare ores that only spawn in dungeons you've designed. Anyone want craftable furniture that players can place in builds. Configuration handles all of it. No Java. No plugin development. Structured YAML files with examples from the wiki. This matters because plugin development is a technical skill barrier most server admins don't have. Craft-Engine drops that barrier significantly. Getting It Running You'll need a Paper or Folia server running Minecraft 1.20 or newer (1.21.11 gets the latest features). Download the plugin JAR and drop it in your plugins folder: bashcd /path/to/your/server/plugins wget https://repo.momirealms.net/releases/net/momirealms/craft-engine-bukkit/0.0.67/craft-engine-bukkit-0.0.67.jar Restart your server. The plugin generates its configuration folder structure automatically on first run. Config syntax is straightforward YAML: yamlitems: ruby: displayName: "Ruby" material: "PAPER" maxStackSize: 64 customModelData: 1 The official wiki at https://xiao-momi.github.io/craft-engine-wiki/ is genuinely thorough - specific examples, complete syntax breakdowns, feature walkthroughs. It's documentation that actually helps. Before customizing items and blocks, optimize your server baseline. Grab minecraft.how's Server Properties Generator to tune your server.properties without guesswork. You'll want your server running smoothly before piling on plugin features. Features That Stand Out Furniture is genuinely useful. Define decorative objects that aren't full blocks - chairs, tables, lamps, wall hangings. These render client-side but behave like interactive objects. The latest version added hit-times settings, so you customize how long furniture takes to break. GitHub project card for Xiao-MoMi/craft-engine Block behaviors unlock interesting world-building possibilities. The feature placer generates trees, ores, and structures during world generation. Multi-high blocks let you create tall plants or crystal formations. Spreading blocks handle content that propagates like fire or vines. Item behaviors match that flexibility. Range-mining items break blocks in an area instead of one at a time. Combine that with custom durability values and you've got genuinely unique equipment that feels different from vanilla. Mining interruption under high latency got optimized recently - a detail suggesting the developer actually plays on public servers with international players. Glow colors are now fully packet-based, meaning no desync between players and smooth rendering even with severe ping variance. What Trips People Up The biggest gotcha is overthinking the config structure. It demands precision - missing colons, bad indentation, mismatched quotes break silently in tedious ways. Read the wiki examples carefully. Resource pack integration requires parallel work. Custom-modeled items need matching texture files packed in a resource pack that loads on the client side. Missing textures or mismatched custom model data values are the usual culprits. If custom item models aren't showing, check your resource pack first. The condition system is powerful but complex. It's easy to write logically incorrect conditions without realizing it until you test in-game. If you're customizing item text output, the Minecraft Text Generator is useful for testing formatting codes before adding them to config. Saves a lot of in-game trial-and-error. How It Stacks Against Alternatives ItemsAdder is probably the closest rival, more polished if you just want custom items. It's beginner-friendlier with a built-in editor, though premium features require payment. NexoBlocks is newer and designed specifically for blocks. It's arguably cleaner if you're purely focused on custom block content. Craft-Engine sits in the middle. Free, open-source (GPL-3.0), handles items and blocks equally well. 228 stars on GitHub suggests solid development without massive hype. Smaller communities often mean faster, more responsive development. The premium edition ($12 via Polymart) offers official support and early dev builds, but the community version is feature-complete for most servers. Ready to try craft-engine? Grab the source, read the full documentation, or open an issue on GitHub. Star the repo if you find it useful. It helps the maintainers and surfaces the project for other Minecraft players. Visit Xiao-MoMi/craft-engine on GitHub ↗ --- ### Raknetify: Fixing Minecraft Lag on Unreliable Connections URL: https://minecraft.how/blog/post/raknetify-minecraft-lag Published: 2026-04-28 Author: ice GitHub · Minecraft community project raknetify (RelativityMC/raknetify) A Fabric mod / Velocity plugin / BungeeCord plugin that uses RakNet to improve multiplayer experience significantly under unreliable and rate-limited connections. Star on GitHub ↗ Sitting in a Minecraft server with a ping that spikes between 150ms and 2000ms on your residential internet, or stuck on a throttled mobile hotspot? Raknetify tackles exactly this problem by replacing Minecraft's standard TCP connection with RakNet's multi-channel protocol, which prioritizes critical game packets and retries failures intelligently. If you're on a good connection, you won't notice much. If you're not, this can genuinely change whether the game feels playable. What This Project Actually Does Raknetify isn't a magic wand that eliminates lag. What it does is reorganize how Minecraft sends and receives data so that your connection quality problems hurt you less. Minecraft normally sends everything over a single TCP stream. That means one lost packet can cause a cascade of delays as the client and server resync. RakNet, the networking library that powers Minecraft Bedrock and many other games, uses multiple priority channels instead. Critical packets like player position updates get their own lane, while less urgent stuff (like a distant player's animation) can wait. The result is lower perceived latency and fewer frame freezes, especially noticeable when you're on a residential connection that gets throttled, or anywhere with significant packet loss. You can also prefix your server address with `raknet;` (or `raknetl;` for a different MTU setting) and connect directly, which is refreshingly simple. The mod and plugin versions both exist, so whether you're running a vanilla-based proxy like Velocity or BungeeCord, or a Fabric server, you've options. When You'd Actually Want This Honestly, most players on stable home internet with a decent ISP won't see dramatic improvements. You'd install Raknetify if you fall into one of these camps: You play over mobile hotspot. Cellular data is inherently flaky, with packet loss spiking during heavy use. Raknetify's retry logic handles this way better than standard TCP. Your ISP throttles you. Some residential networks have per-connection or per-IP rate limits that make multiplayer stutter. Multi-channel prioritization helps here. You're running a geographically distant server. High absolute ping sucks, but if it's stable, standard Minecraft handles it fine. But if that high-ping connection is also lossy (satellite, undersea cables, intercontinental hops), Raknetify reduces retransmit delays. You run a proxy like Velocity or BungeeCord and want to support players on poor connections. Installing it server-side means your entire playerbase benefits without having to mod their clients (though client-side installation is more effective). And if you're in a region with genuinely bad internet infrastructure, this is worth trying. The overhead is minimal, and since it's a drop-in replacement, worst case you just remove it if it doesn't help. Installation and Setup The install process is straightforward, but there are a few prerequisites you should know about upfront. Before you start: Raknetify requires Minecraft 1.17.1 or newer (so most modern versions, though older 1.16 servers are out of luck). And here's the non-obvious part: your server needs an open UDP port at the same port number as your normal server port. If your server runs on port 25565, you need UDP 25565 open too. Check your firewall and port forwarding rules before installing. For Fabric servers: Grab the latest release from Modrinth or GitHub. Drop it in your mods folder on both the server and client machine. Restart the server and client, then connect by prefixing your server address: `raknet;mc.example.com` instead of just `mc.example.com`. That's it. bash# Example: connecting to a Fabric server with Raknetify # In Minecraft multiplayer menu, add server: # Name: My Server # Address: raknet;mc.example.com # Port: (leave blank, defaults to 25565) For Velocity or BungeeCord proxies: Download the plugin version (available on SpigotMC for BungeeCord, Modrinth for Velocity). Install it in your plugins folder, restart the proxy, and you're done. Clients connecting through your proxy will automatically benefit. Install it client-side too for better results. If you want to try development builds before a stable release, the CodeMC CI server hosts them. That's useful if a bug's been reported and fixed but not officially released yet. How the Multi-Channel System Actually Works The secret sauce is RakNet's prioritized channels. Instead of one TCP connection carrying all traffic, Raknetify creates multiple virtual channels with different priorities. Your player position, rotation, and block interactions get high priority. Particle effects, distant mob animations, and chat messages get lower priority. When packet loss happens on a lossy connection, the low-priority stuff gets dropped, not your movement updates. For example: you're on a spotty mobile hotspot and a chunk starts loading at the exact moment 20 other players teleport near you. Standard Minecraft might queue all those messages and freeze your view for half a second as TCP tries to resend lost packets in order. Raknetify would drop some of the particle effects and distant player animations, but keep your own movement smooth because that traffic is segregated into a higher-priority channel. There's also an MTU (maximum transmission unit) variant. If you're on a network with aggressive packet fragmentation, using `raknetl;` instead of `raknet;` sets a higher MTU, which can reduce overhead in some cases. The README doesn't go deep on when to use which, so it's mostly trial and error if you're having trouble. ViaVersion Support (Cross-Version Connections) Raknetify works alongside ViaVersion if you're running a proxy that supports older or newer client versions. If you're proxying a 1.20.1 server but want 1.21 clients to connect, ViaVersion translates the protocol. Raknetify plays nicely with this setup. Just install both and you're good. One caveat though: if you're running Raknetify on a proxy (Velocity/BungeeCord) and an unsupported client version connects (say, an ancient 1.8 client on a 1.21 server), Raknetify can fail to initialize multi-channel mode. You'd fall back to standard TCP, which defeats the purpose. This is noted in the README but easy to miss. If your proxy serves many legacy versions, test this scenario first. Gotchas and What Trips People Up Most Raknetify issues come from missing prerequisites, not the mod itself. UDP port not open. This is the most common one. If clients can't reach your UDP port, Raknetify falls back to TCP silently, and you won't know anything went wrong. Check your firewall and port forwarding. Use the Minecraft Server Status Checker to verify your server is reachable, then manually test UDP connectivity if possible. Version mismatches. Raknetify requires 1.17.1+. If you're on 1.16, it won't work. And both client and server should be on the same or similar Minecraft versions, or ViaVersion needs to be handling the translation. Proxy version confusion. The BungeeCord version and Velocity version are different builds. Download the right one for your proxy type. False hope on already-stable connections. If your connection is already good (low ping, no packet loss), Raknetify won't make things faster. You might even see a tiny overhead. Only install it if you actually have unreliable connections to test against. Performance-wise, the overhead is minimal. You're trading a tiny bit of CPU for better packet prioritization, which is almost always worth it. Similar Projects and Alternatives A few other projects address related problems, though none do exactly what Raknetify does: Geyser. Bridges Bedrock and Java Edition. It also uses RakNet for Bedrock clients, but it's solving a different problem (cross-platform play) rather than connection reliability per se. Proxy-side optimizations. Some proxy configs like Velocity's compression settings can help, but they don't reorganize how packets are prioritized the way Raknetify does. Custom server software. Some forks of Spigot claim to optimize networking, but most are unmaintained or outdated. Raknetify is actively developed and has a clean, modular approach. If you're running a large public server and want to squeeze every bit of performance out of unreliable connections, you could stack Raknetify with other optimizations. But for most people, Raknetify alone handles the job. So should you install it? If you're on stable internet, probably not. If you're stuck with a flaky connection and want to see if it helps, it takes five minutes and costs nothing. And if you run a proxy server that serves players globally or in areas with poor infrastructure, it's worth having in your toolkit. The code is clean, it's actively maintained, and the community around it seems responsive to issues. Where to go from here Read the source on GitHub (docs, examples, and the issue tracker) Browse open issues to see what the community is working on Check recent releases for the latest build or changelog --- ### DivineMC: Building Parallel-Threaded Minecraft Servers That Scale URL: https://minecraft.how/blog/post/divinemc-minecraft-server-parallel-ticking Published: 2026-04-28 Author: ice BX-Team/DivineMC DivineMC is a multi-functional fork of Purpur, which focuses on the flexibility of your server and its optimization. .0 Alright, so you're running a Minecraft server and you've hit that wall. Vanilla server jar can't use your extra CPU cores, chunk ticking happens on a single thread, and TPS drops the moment player count climbs. You've tried Paper. You've tuned configs. Now what? DivineMC is a fork of Purpur that takes Purpur's legendary flexibility and bolts on parallel chunk ticking, async operations, and a bunch of thoughtful optimizations. It's got 240 GitHub stars, active development, and it approaches scaling differently than the big names like Folia. What DivineMC Actually Does This isn't a complete threading rewrite. DivineMC keeps Purpur's architecture - you've got granular control over mob spawning rates, entity tracking, and miscellaneous behavior tweaks. But it adds regionalized chunk ticking, which means chunks process in parallel using your available CPU cores instead of sequentially on a single thread. The project also includes async pathfinding, entity tracking, mob spawning, and chunk sending. All the operations that usually block the main tick thread happen off-thread. That means when 50 zombies pathfind toward a player at once, it doesn't tank your TPS. You also get enhanced security (1024-bit seeds instead of 64-bit), support for client mods like Syncmatica and Xaero's Map without server-side mod infrastructure, and somewhere around 10 bug fixes that address various Minecraft quirks. Why You'd Actually Want This Picture this: you're running a 20-30 player survival server. Growth is happening. TPS starts tanking during peak hours. You check profiling and half your tick time is chunk loading and pathfinding calculations. You've already done the standard Paper config optimizations. At that point, parallel chunk ticking shifts from nice-to-have to actually useful. DivineMC lets chunks tick simultaneously, kind of like Folia does, but without requiring a total migration or heavy plugin compatibility testing. It's also solid if you've got multiple worlds, a dense plugin ecosystem, or player builders uploading massive schematics. The async operations and improved region file formats mean better stability when pushing the server hard. And this matters: DivineMC plugins are 100% compatible with Bukkit, Spigot, and Paper. You're not locked in. If you want to switch tomorrow, your entire plugin ecosystem moves with you. How to Get It Running First, grab a build from the BX-Team downloads page or MCJars. Pick the jar that matches your Minecraft version. Basic startup: bashjava -Xmx4G -Xms2G -jar DivineMC-[version].jar nogui Adjust the `-Xmx` (max RAM) and `-Xms` (initial RAM) numbers based on your hardware. Four gigs is reasonable for small-to-medium servers. First launch generates your world and config files. The server will ask you to accept the EULA. Edit `eula.txt` and change `false` to `true`, then restart. Here's the key part: DivineMC is all about configuration. The defaults are solid, but you'll want to tune `paper.yml` and DivineMC-specific configs for your setup. This documentation site walks you through what's actually configurable. If you're setting up for specific players, the Minecraft whitelist creator tool saves time. Paste your player names and it generates the whitelist format instantly. Features That Actually Matter Parallel Chunk Ticking processes chunks simultaneously instead of one after another. More blocks updating at once without the main tick thread freezing. Not magic, but noticeable when you're under load. GitHub project card for BX-Team/DivineMC Async Operations move pathfinding, entity tracking, mob spawning, and chunk sending off the main thread. This prevents the classic lag spike when a horde of mobs pathfinds toward your player. Linear Region File Format is for world storage - old V1/V2 format or the new Buffered approach. Niche optimization for massive world migrations or schematic-heavy builds. Most servers won't notice, but it's there if you need it. Sentry Integration sends error reports to a Sentry instance if you set it up. Useful for public servers where structured error tracking beats digging through logs. Mod Protocol Support means Syncmatica, Xaero's Map, Jade, and Apple Skin clients work fine without getting kicked. Helpful if your community uses client-side mods. What'll Actually Trip You Up Parallel chunk ticking isn't a magic button. You enable it, but you still monitor performance and tune it. There's no setting that just makes everything faster. If you want to build from source (the README includes gradle commands), you need a development environment set up. For just running a server, use the pre-built jars. Source builds are for contributors patching the codebase. Regional ticking means chunks in different regions process in parallel, but chunks within a region still tick sequentially. Dense redstone contraptions in a single chunk will still cap that chunk's TPS. The optimization helps when build activity spreads across the world, not concentrated in one spot. One quick thing: plugin compatibility is with Bukkit, Spigot, and Paper plugins. Not with Forge or Fabric server-side mods. You can run client-side mods all day, but vanilla-derived servers don't support server-side modding environments. (That's just how vanilla-derived server software works.) How It Stacks Up Folia (also Paper-based) throws full multithreading at the problem - each region gets its own thread and game loop. More aggressive parallelization but requires heavier plugin testing. DivineMC is less radical and keeps Purpur's flexibility intact. Pufferfish pioneered some of the async features DivineMC included, but maintenance has slowed. DivineMC feels like the natural evolution of that approach. Pure Paper is simpler and way more widely used. Small server with a few plugins? Paper probably gives you 90% of the benefit with zero config overhead. For server admins comfortable with tuning configs and wanting performance gains without ecosystem disruption, DivineMC slots in nicely between simplicity and raw ambition. Getting Help When You Need It The project lives on GitHub. There's a Discord server (discord.gg/qNyybSSPm5) where the community answers questions quickly. Docs are at bxteam.org/docs/divinemc. If you want to contribute, there's a contribution guide. Java, standard server software patterns, Gradle build system. The maintainers are responsive and the community is small enough that you'll get help fast. Ready to try DivineMC? Grab the source, read the full documentation, or open an issue on GitHub. Star the repo if you find it useful. It helps the maintainers and surfaces the project for other Minecraft players. Visit BX-Team/DivineMC on GitHub ↗ --- ### Setting Up BedWars on Your Minecraft Server URL: https://minecraft.how/blog/post/bedwars-minecraft-plugin-setup Published: 2026-04-28 Author: ice ScreamingSandals/BedWars Simple BedWars minigame plugin for Paper/Spigot version 1.8.8 - 26.1.2 .0 Want to run competitive team-based gameplay without the headache of building the game mode from scratch? BedWars is the plugin that handles it for you. Supports Minecraft 1.8.8 through 26.1.2, runs on Paper and Spigot, and it's genuinely flexible enough to customize for just about any server. What Exactly Is BedWars? If you've played Hypixel or any other major server in the last decade, you know the format already. Two or more teams spawn in separate islands with a bed at the center. Destroy the other team's bed and kill all their players to win. Sounds simple. It gets strategic fast. The plugin implements all the core mechanics: team spawning, bed destruction tracking, death messaging, and victory conditions. But here's where it gets interesting - it also handles variants like CakeWars (destroy a cake instead), EggWars (protect eggs), and AnchorWars. Everything runs inside a single arena system, which means you can host multiple arenas on one server and let players queue up. The codebase is Java (317 stars on GitHub) and licensed under LGPL-3.0, so it's genuinely open source. That matters if you want to fork it or understand what's happening under the hood. Why Run BedWars Instead of Building It Yourself Building a functional team-based minigame from scratch involves inventory management, state tracking, arena rebuilding, respawn timing, shop interfaces, and about a dozen other systems. This plugin handles all of it. The real wins are: spectator mode (players can watch instead of sitting in limbo), instant arena rebuilding after each match, built-in team selection GUI, and multi-shop support. You can also hook it into BungeeCord for network-wide gameplay, which is essential if you're running multiple servers. And it's genuinely stable. People have been running this for years on production servers. It's not latest experimental code. Getting It Running Grab the latest JAR from Spigot or build it yourself if you want. The project uses Gradle - if you want the bleeding-edge version: bashgit clone https://github.com/ScreamingSandals/BedWars.git cd BedWars./gradlew clean build Your compiled JAR lands in `plugin/bukkit/build/libs/`. Drop it in your `plugins/` folder and restart the server. After that, you'll get a config folder at `plugins/BedWars/`. The defaults are actually reasonable, but you'll need to create arenas. One plugin gives you commands to spawn areas, set team spawns, set the bed location, set shop locations. It's all in-game configuration, no hand-editing XML files. Start by creating a flat arena world if you don't have one already. A simple creative-mode build works fine - islands separated by void, each with a bed and resource spawners. Then use the arena setup commands to register everything. The wiki covers this, but honestly, most people figure it out by trial and error. Shops, Spawners, and Special Items Each arena can have multiple shops. Players earn currency from killing players and breaking blocks, then spend it at shops to buy tools, armor, building blocks. You customize the entire shop inventory and pricing. GitHub project card for ScreamingSandals/BedWars Resource spawners are configurable - you can have as many as you want, set spawn rates, and choose what they drop. Iron spawner in the base, diamond spawner in the middle, emeralds for late-game trades. You control the economy. Special items are a fun bit - RescuePlatform (spawns a bridge if you're falling into void), TNTSheep (launches explosives at enemies). These are configurable in the shop too. Here's a practical tip: when you're tuning shop prices, test it locally first. Run a game solo, feel the economy flow. If iron costs too much early, your team will fall behind. If diamonds cost too little, the game ends in three minutes. Performance and Common Gotchas This plugin is light on resources. I ran it on a 2k-block arena without issues on modest hardware. Arena rebuilding is incredibly fast - the plugin resets blocks instantly after each match instead of wiping and reloading the whole area. One thing that trips people up: permissions. Make sure your permission plugin is actually granting `/bw` commands to admins. If arena setup commands don't work, it's almost always a permission issue. Also, version compatibility matters. The plugin supports 1.8.8 through 26.1.2, but some specific features might not work on very old versions. Actually, on 1.8.8 you might have item display issues - newer Minecraft versions handle item metadata better. Unless you've a really specific reason to run 1.8.8, stick with 1.17+. If you want to advertise your server, you might want a custom MOTD. Check out the Minecraft MOTD Creator to make something eye-catching. And if you're tweaking server performance for the minigame load, the Server Properties Generator helps you find the right settings without guessing. What About Alternatives BedWarsRel is the spiritual ancestor of this plugin. Still maintained, simpler, but less feature-rich. If you want something more arcade-oriented, check out Dream BedWars or other variants on Spigot. Most of them are heavier on features, lighter on customization. My take: if you want a proven, lightweight plugin that runs on everything from 1.8.8 to 26.1.2 and lets you actually customize things, this one does the job. If you want bleeding-edge visual effects and complex progression systems, you might want to look elsewhere. But for a solid minigame foundation, this is it. Ready to try BedWars? Grab the source, read the full documentation, or open an issue on GitHub. Star the repo if you find it useful. It helps the maintainers and surfaces the project for other Minecraft players. Visit ScreamingSandals/BedWars on GitHub ↗ --- ### How to Build a Minecraft Castle: Medieval Building Guide URL: https://minecraft.how/blog/post/how-build-minecraft-castle Published: 2026-04-28 Author: ice Medieval castles are probably the most satisfying builds in vanilla Minecraft. You'll need patience, stone variants, and a solid plan, but the result is genuinely impressive. This guide walks you through foundation design, wall construction, tower placement, and roofing strategies to get your castle from concept to completion. Choosing Your Foundation and Block Palette Before you place a single block, grab a pencil and paper (or just stare at your screen for 20 minutes like the rest of us). What stone type matches your vision? Stone brick, deepslate, andesite, diorite, and regular stone all have different feels. Mix them together. That's the secret nobody talks about. Your castle needs space. Not just for the main structure, but for surrounding terrain that makes sense. A moat looks great but takes forever to dig. Terracing the ground around the base is faster and honestly looks better on most builds. You can still add water features later if you're not tired of moving blocks. Think about height and scale before you commit to a direction. Are you building a compact stronghold or a sprawling fortress that eats up half your render distance? For first-timers, a three-to-four-level castle keeps things manageable without looking wimpy. Tall doesn't always mean impressive. Location matters way more than most guides admit. Hilltops look dramatic. Valleys feel secure. Coastal castles can have water features that honestly save hours of detail work because you don't have to create them from scratch. Pick somewhere that speaks to you, because you're about to spend a lot of time there. Constructing Medieval Walls That Actually Look Ancient Here's where walls need thickness. Make them at least three blocks wide at the base, tapering to two blocks at the top. Thin walls look flimsy and, while nobody's actually attacking your castle, they just feel wrong visually. The real skill is texture variation. Stick with three main blocks and one accent block. Stone brick as primary? Add some cracked stone brick, mossy stone brick, and regular stone sprinkled throughout. Vary the pattern every few blocks rather than going rigid and geometric. Mismatched stonework looks ancient and weathered. Perfection looks brand new, which isn't the vibe. Height-wise, twelve to fifteen blocks feels right for standard palace walls. Too short and it looks like a fancy fence. Too tall and you lose visual proportions. There's a sweet spot where castles look monumental without becoming absurd. Crenellations (those toothy bits on top of the walls) are essential. Space them two blocks apart, one block tall. They look incredible from a distance and give archers places to hide in your imagination. Adding little arrow slits actually works mechanically too if you're thinking about defense, not that you'll ever need it in survival. Corners are where castles earn their personality. Make corner towers jut out three to four blocks from the walls. This isn't just cosmetic. Medieval builders understood that defenders on corner towers could cover the walls on both sides. Your castle doesn't need functional defense, but it should look like it could work. Building Towers That Command Attention Towers are what transform a wall into a castle. Without them, you're just building a very elaborate fence. Corner towers should be the tallest structures you build. Make them four to five blocks in diameter, rising three to four blocks above the main walls. Entry towers can be slightly smaller and are usually the only major break in the wall perimeter. This creates visual contrast and gives visitors a clear sense of where the castle opens. Battlements on tower tops look fantastic, and they're dead simple to build. Run a crenellated line around the top edge using stairs and slabs. Done. Instant authority. Windows matter more than you'd think. Tiny openings for arrow slits along lower levels, larger windows at mid-levels. This creates a visual rhythm while maintaining that medieval fortress vibe. Scatter your windows irregularly though, not in perfect grids. Real castles weren't built by contractors with clipboards and spreadsheets. Spiral staircases inside towers are the ultimate detail. Wind stone block stairs with a center pillar, slowly rotating as they climb. It's tedious to build but worth every second when someone climbs up to the rooftop and actually notices what you created. Those small moments matter. Roofing That Doesn't Look Flat Flat roofs are the enemy of medieval buildings. You need slopes, angles, personality. Steep roofs use stairs and slabs to create that classic pitched profile. Start at the outer wall with full blocks, then stairs pointing inward, then slabs. Repeat this pattern along the entire perimeter. It's block-intensive but looks substantially better than anything else you could do. The effort returns itself in every screenshot. Roof material choices matter. Dark oak, spruce, and warped wood work great for traditional vibes. Blackstone and deepslate create darker, more ominous roofs. Try mixing wood and stone roofs across different sections. A tower might have wood while the main hall goes dark stone. Your castle, your rules. Consider adding small wooden overhangs at roof edges, supported by scaffolding or thin wooden pillars. Medieval builders knew about rain gutters and practical architecture. Your castle should hint at that knowledge, even if you're surrounded by desert and it never rains. Interiors and the Spaces Between Walls This is where most castle guides drop off and you're left wondering what goes inside all this stone. The reality is that interiors matter just as much as the shell. Start with a courtyard as your centerpiece. Pave the center with a different stone type than your walls, maybe with a circular well in the middle. A well gives you a focal point and honestly looks phenomenal. Surround the courtyard with single-story structures: barracks, storage, workshops, stables. Keep these lower than the main walls so the castle's profile stays impressive from the outside. The great hall needs a massive roof and enough ceiling height to feel special. Nothing kills the vibe like a normal-height room for your main gathering space. Build it at least twelve blocks tall with a soaring roof structure. Add a long table running down the center, a massive fireplace (stacked campfires with chimneys made from stairs work fire), torches, and banners hanging from the walls. This becomes your showpiece interior, the reason people stay longer than just admiring the exterior. Secret rooms are traditional medieval nonsense, but they're genuinely fun to build. Hide a small room behind a bookshelf or painting frame. Stock it with treasure, stolen goods, or just vibes. Nobody expects them. That's the entire point. Dungeons make thematic sense and give your castle actual purpose beyond looking impressive. A few dark stone rooms with chains, cages, and creepy lighting below ground level. Build them even if friends ignore them entirely. You're building for yourself first. Landscaping and Final Details That Bring Everything Together Landscaping transforms a castle from "neat structure" into "wow, that's genuinely incredible." Create elevated terrain around the castle using gravel, coarse dirt, and grass blocks. Slopes leading up to gates look more imposing than flat approaches. Add some guard stations at ground level with little lean-tos for torches and signage. These details make the space feel lived-in. Moats are optional but visually stunning. Dig out a perimeter of water several blocks wide. Add some lily pads, kelp, and the occasional stone path crossing it. A moat immediately reads as "medieval fortification" to anyone visiting. But it also gives you places to hide mobs if you're playing survival with friends. Gardens surrounding the castle give it context and life. Flower gardens in designated areas, some plots of crops, maybe a small orchard with oak logs and leaves scattered naturally. Living spaces support life, so surround your castle with evidence of it. Villagers wandering around adds atmosphere too. Lighting is criminally overlooked in castle builds. Place torches along the walls, lanterns hanging from chains between towers, soul lanterns in tower windows for an eerie glow. Light defines mood. A well-lit castle feels alive and active. A dark castle feels abandoned and haunted, which might be exactly what you want. If you're building on a server, verify your setup is stable before hosting visits. The Minecraft Server Status Checker helps ensure your server stays online when friends want to tour your creation. Crashes during grand tours are the worst. For servers with voting systems, the Votifier Tester ensures your voting mechanics work smoothly, letting your community easily support the server while you build. Working infrastructure means you can focus on creation instead of troubleshooting. --- ### Building Custom Minecraft Server HUDs with BetterHud URL: https://minecraft.how/blog/post/betterhud-minecraft-server-plugin Published: 2026-04-28 Author: ice "A multiplatform server-side implementation of HUD in Minecraft, supporting Bukkit(with Folia), Velocity, and Fabric." toxicity188/BetterHud · github.com Ever tried adding a professional HUD to your Minecraft server without forcing players to install client mods? BetterHud does exactly that - it's a server-side plugin that auto-generates the resource pack and handles all the rendering. Works on Bukkit, Velocity, and Fabric, with animation and custom layouts built in from the start. What separates BetterHud from chat spam and action bar hacks is that it renders actual HUD elements directly onto the player's screen. No clutter. No mods required. The server generates the resource pack automatically, pushes it to joining players, and manages everything server-side. Text, images, player heads, animations - all defined in config files you control. Want to show a boss's health bar above the hotbar? Overlay a compass for your RPG server's custom locations? Display ability cooldowns with animated shrinking rings? BetterHud is built for exactly this. What This Project Actually Solves The core problem: vanilla Minecraft's visual feedback is primitive. HUD space is limited. You either spam chat, waste the action bar, or resort to janky workarounds that feel unpolished. Custom HUDs fix that, but only if they're invisible to players (no installation friction) and work across multiple server platforms. BetterHud checks both boxes. Server admins get clean visual layering. Players get a polished experience. Developers get an API to hook into HUD events and display custom data. It's the rare tool that works for all three groups. Why Servers Actually Use This Run a PvP network? Kill streaks, damage taken, remaining players - all visible at a glance without cluttering chat. RPG server? Mana bars, buff icons, cooldown rings, quest progress overlays. This stuff makes the game feel intentional instead of spreadsheet-driven. Parkour or game modes? Real-time leaderboards, checkpoint countdowns, stat overlays. The list goes on. The advantage over alternatives is enormous. Client mods require player installation. Custom clients need hosting and maintenance. Datapacks and custom resource packs are DIY nightmares for anything beyond trivial HUDs. BetterHud removes installation friction while providing a structured framework instead of pure chaos. Most server owners don't bother with custom HUDs at all, actually. They stick with vanilla feedback because the alternatives feel like too much work. BetterHud changes that calculation. Getting BetterHud Running Installation is straightforward, though the steps vary by platform. The one requirement across all platforms is Java 21 (Eclipse Adoptium) if you're building from source - pre-built jars are available, so most people skip that step entirely. Bukkit and Paper servers: Grab the latest release from the GitHub releases page. As of the 1.14.1 update, download the Bukkit jar and drop it into your plugins folder: bashcd /path/to/server wget https://github.com/toxicity188/BetterHud/releases/download/1.14.1/BetterHud-bukkit-1.14.1.jar mv BetterHud-bukkit-1.14.1.jar plugins/./start.sh (Or restart if the server's already running.) BetterHud auto-generates config files and the resource pack on first load. Velocity proxies: Same process, different jar: bashcd /path/to/velocity wget https://github.com/toxicity188/BetterHud/releases/download/1.14.1/BetterHud-velocity-1.14.1.jar mv BetterHud-velocity-1.14.1.jar plugins/ Restart Velocity. Now your entire proxy network has access to the same HUD system. Fabric servers: This one has a dependency: Fabric API. Install that first, then add BetterHud to your mods folder: bashcd /path/to/server/mods wget https://github.com/toxicity188/BetterHud/releases/download/1.14.1/BetterHud-fabric%2B1.21.11-1.14.1.jar Fabric will load both on next start. Config time is where the actual work begins. BetterHud generates template YAML files - these define your HUD layouts, which elements display when, and how they animate. Core Features Worth Understanding Mathematical expressions in text: BetterHud isn't limited to static text. You can embed expressions that evaluate at runtime: armor durability percentages, health bars that scale with max HP, formulas tied to custom plugin data. If your server has a leveling system that affects stats, you can display those dynamically without hard-coding values. GitHub project card for toxicity188/BetterHud Animated PNG sequences: Static images are fine, but animated PNGs let you add subtle motion - spinning cooldown indicators, pulsing health warnings, visual feedback for status effects. BetterHud handles the frame timing server-side, so the animation stays smooth even under server lag (within reason). Resource pack generation: Here's where BetterHud genuinely saves time. Instead of manually crafting pack.mcmeta files, creating texture atlases, and hand-writing json models, the plugin generates the pack from your config. Describe what you want; BetterHud builds the pack. This single feature is worth the installation. Multi-platform support: Bukkit, Velocity, and Fabric in one codebase. Most HUD solutions pick a lane and stay there. This flexibility is huge if you're running a hybrid setup or planning to scale infrastructure later. What Usually Trips People Up Server-side rendering means HUD updates are tied to server ticks. If your server is laggy, the HUD stutters. It's not BetterHud's fault - it's inherent to the architecture. Keep your server healthy, and the HUD will be smooth. Resource pack size matters more than you'd think. If you add hundreds of custom textures, the generated pack grows large, and players with poor bandwidth complain about download time. Start minimal. Add assets gradually as needed. The config format has a learning curve, actually. YAML is simple enough, but BetterHud's specific syntax for keyframes, expressions, and layer ordering takes reading the wiki and doing hands-on testing. Expect iteration. Testing HUDs on live servers can be risky if you misconfigure something. You might want to use a staging server first. If you don't have one, our Minecraft Server Status Checker is useful for quickly verifying that your server responds to connections correctly before deploying a new HUD to players. For infrastructure-heavy setups (multiple servers, load balancing), you might also want proper DNS management. Our Free Minecraft DNS tool can help simplify server addresses across multiple instances, so players connect to the right backend regardless of which proxy they hit first. Projects That Do Similar Things VisualsAPI is probably the closest alternative. Same server-side rendering philosophy, similar platform support. Less actively maintained than BetterHud, and smaller community, but the core concept is identical. Worth evaluating if you need something simpler or prefer a different licensing approach. Custom resource packs plus datapacks is the DIY route. You manually craft packs, write datapacks to drive behavior, and accept absolute control at the cost of enormous complexity. Fine for one-off projects. Painful for anything you want to iterate on. Client-side mods work if you control the joining clients (private server, whitelisted, etc.). Mod-based HUDs offer more freedom, but players must install them, and you're supporting multiple versions. BetterHud avoids all that friction. BetterHud sits comfortably in the middle: more accessible than pure datapacks, more flexible than most alternatives, and zero client burden. Final Thoughts If you're running a server beyond vanilla survival - a PvP network, an RPG, anything with custom mechanics - custom HUDs are the difference between "feeling like a real game" and "feeling like a spreadsheet with mobs." BetterHud makes adding them practical instead of a multi-week project. It's not perfect. Config syntax has a learning curve. Performance depends on server health. Resource pack size can be an issue if you get wild with custom textures. But for most server owners looking to polish the experience, it's the single best tool available. Try it on a staging server first. Read the wiki. Join the Discord if you get stuck. The community's helpful, and the maintainer actively develops new features. Ready to try BetterHud? Grab the source, read the full documentation, or open an issue on GitHub. Star the repo if you find it useful. It helps the maintainers and surfaces the project for other Minecraft players. Visit toxicity188/BetterHud on GitHub ↗ --- ### ConfigLib: Handling Plugin Config Files the Right Way URL: https://minecraft.how/blog/post/configlib-minecraft-plugin-config Published: 2026-04-28 Author: ice "A Minecraft library for saving, loading, updating, and commenting YAML configuration files" Exlll/ConfigLib · github.com Managing configuration files for Minecraft plugins is tedious. You create a YAML file, manually parse it, reload it when it changes, update it when you add new options. ConfigLib automates all of this. Your config classes become your single source of truth. What ConfigLib Actually Does ConfigLib is a Java library that bridges a gap plugin developers face constantly: how do you actually manage YAML configuration files without writing boilerplate code? The traditional approach involves creating a YAML parser, handling updates manually, tracking which fields changed, and hoping you didn't miss any edge cases. Instead, ConfigLib lets you write a Java class (with fields and default values), annotate it, and the library handles everything else. Save? Done. Load? Done. Update when the file changes? Done. Add comments explaining each option? Also done. It's surprisingly elegant for something that sounds simple. The library supports Java records, POJOs, enums, and inheritance. You can nest configuration classes inside each other, which is huge if you're building anything with multiple configuration sections (and honestly, what plugin doesn't have those?). Why You'd Actually Use This Look, you could manually parse YAML files. Lots of plugins do exactly that. And it works fine until it doesn't - someone upgrades their server, a field gets out of sync, or you need to add a new option and wonder if you broke existing configs. ConfigLib eliminates that friction. Type safety means you catch configuration errors at load time, not when a player tries to use a feature. Automatic comments mean your config file is self-documenting. Someone can read the YAML file and understand what each option does without digging through your source code. The update mechanism is the real win. If you add a new field to your config class, ConfigLib automatically adds it to existing config files with your specified default value. If you rename something, the old key stays in the YAML but the new one gets created. You're not breaking existing setups. Getting Started: Installation and Setup You'll need to add ConfigLib as a dependency. If you're using Maven, drop this in your pom.xml: xml de.exlll configlib-paper 4.8.1 If Gradle's your thing: gradledependencies { implementation 'de.exlll:configlib-paper:4.8.1' } ConfigLib also has variants for Velocity and Waterfall if you're running a network proxy. Just swap out "paper" for "velocity" or "waterfall" in the artifact ID. The basic workflow: create a class, annotate it with @Configuration, add fields with default values, and call ConfigLib to load or save it. That's genuinely all you need to start. Key Features That Matter in Practice ConfigLib handles way more than basic strings and numbers. So it supports collections (lists, sets, maps), Java time types (LocalDateTime, Instant), big numbers (BigInteger, BigDecimal), file paths, UUIDs, and even Bukkit-specific types like ItemStack. So if your config needs to store complex data structures, you're covered. Comments are first-class citizens here. Use the @Comment annotation and your configuration file gets human-readable documentation right there in the YAML. Want to add headers or footers to your generated config file? ConfigLib has that. Want to exclude certain fields or customize how they're named? Yep. Records are fully supported without needing the @Configuration annotation - just drop your record in and it works. Inheritance works too, so you can extend a base configuration class and add specialized options in subclasses. One clever feature: environment variable overrides. You can configure ConfigLib to let environment variables override values in your YAML file. Useful if you're running in containerized environments or want to keep secrets out of your config file. Gotchas and Common Pitfalls The biggest surprise for new users is that fields must have default values. ConfigLib uses reflection to instantiate your class, so if a field doesn't have a default, it'll fail. Make sense once you understand it, but catches people off guard. Static, final, and transient fields are ignored automatically. If you don't want a field in your config, make it one of those instead of adding an @Ignore annotation (though @Ignore works fine too). Watch out with null handling. ConfigLib has customizable null behavior, but the defaults are sensible - fields that are null won't be written to YAML, and when loading, missing fields keep their default values. The documentation on the GitHub wiki is solid, so start there if something behaves unexpectedly. Other Config Solutions Worth Mentioning ConfigLib isn't the only config library out there, though it's genuinely one of the better ones. Some plugins use Bukkit's native ConfigurationSection API, which is built-in but requires more manual work. OkaeriOka is another option if you need YAML with a slightly different approach. For most plugins, though, ConfigLib strikes the right balance between ease of use and powerful features. If you're managing server configs more broadly (and not just plugin configs), minecraft.how has useful tools like the Minecraft MOTD Creator for customizing your server's appearance in the client list. That's a different use case, but part of the bigger picture of server customization. Worth Your Time? If you're writing a Minecraft plugin that needs configuration, ConfigLib saves you time and eliminates whole categories of bugs. The type safety and automatic update handling alone justify pulling it in. A last release (v4.8.1) just landed with improvements to locale handling, and the library's well-maintained with a solid community behind it. Start with the wiki tutorial if you want a step-by-step walkthrough. The learning curve is gentle, and you'll probably find yourself wondering why you didn't use this sooner. Support the project ConfigLib is maintained by the open-source community. If it saved you time or powered something cool, leave a ⭐ on the repo, report bugs, or contribute back. Small actions keep tools like this alive. --- ### Minecraft Music and Soundtrack: A Deep Look at the Audio URL: https://minecraft.how/blog/post/minecraft-soundtrack-music-guide Published: 2026-04-28 Author: ice Minecraft's music is one of the most underrated parts of the game. You might not think about it consciously while you're building, mining, or just wandering around. But the moment you disable the audio, the entire experience feels hollow and incomplete. The soundtrack doesn't just fill silence - it defines mood, shapes exploration, and turns a blocky sandbox into something genuinely atmospheric. Why Minecraft's Music Matters Most games throw music at you to avoid awkward quiet moments. Minecraft does something different. Its soundtrack is sparse, minimal, and intentional. Ambient piano melodies drift in and out. Forest biomes hum with gentle strings. Caves feel eerie and vulnerable. It's not trying to pump you up or make you feel powerful. Instead, it creates space for your own thoughts while still keeping you anchored in the world. That restraint is the entire point. When you're deep underground mining for diamonds, that creeping minor-key track makes every sound more ominous. A creeper could be around the next corner. The music doesn't tell you what to feel - it just gently suggests you might want to watch your back. Then you reach a lava lake, and the music drops away entirely, leaving just the crackling ambience. That moment hits different when you've been listening to the underscore the whole time. The music also preserves something essential about Minecraft that other games have lost: the permission to feel bored. Boring isn't bad in Minecraft. Staring at your build for five minutes while a simple piano motif loops is fine. The soundtrack enables that without making it feel empty. It's meditative. The Composers Behind the Game C418 - real name Daniel Rosenfeld - composed almost the entire Minecraft soundtrack over years of development. His work became so foundational to the game that it's impossible to separate his vision from Minecraft's identity. If you've ever heard that iconic piano motif that plays on the main menu, that's C418. If you've felt that unsettling unease creeping around in a deep dark cave, that's C418 too. What makes his work remarkable is its accessibility. These aren't complex orchestral pieces or technically showy compositions. Most tracks use simple piano, basic strings, and minimal percussion. A kid can hum them. But they're not simplistic. There's real emotional architecture underneath. C418 understood that Minecraft isn't about spectacle - it's about creating a mood that lets players feel like the landscape matters. Since the full release, Lena Raine has taken over as the primary composer for new Minecraft content. She brought a different flavor while respecting C418's foundation. Her work tends to be slightly more energetic, with bigger orchestration and more rhythmic drive. Caves and Cliffs introduced some of her best work, and her tracks have become just as iconic as the classics. Both composers understand something crucial: in Minecraft, music is a tool for world-building, not an ego display. Exploring the Soundtrack Albums The Minecraft soundtrack has been formally released across several albums, and if you've never actually sat down and listened to them start to finish, you're missing out. "Minecraft: Volume Alpha" and "Minecraft: Volume Beta" are the main collections, available on Spotify, Apple Music, and pretty much everywhere else. Volume Alpha is the C418 era - all the classics. "Sweden," "Far," "Floating Trees," "Aria Math." If you know these names, they probably hit different now. If you don't, play them while you're building something. You'll understand why Minecraft felt the way it did for so many people. Volume Beta leans a bit more experimental. C418 ventured into some weirder territory here - dissonant piano pieces, tracks that feel deliberately unsettling. It works perfectly for the Nether and End dimension music. Newer albums have added Lena Raine's contributions, and honestly, the shift in composition style is noticeable but not jarring. It feels like the game naturally evolved its soundtrack alongside its gameplay updates. You can listen to the evolution of Minecraft's audio by just chronologically going through the albums. Music Across Different Biomes One of the best parts of Minecraft is how the music changes depending on where you are. Plains biomes get gentle, almost lonely piano. There's nothing threatening about being out in the open grassland. The music reflects that calm openness. Forests are warmer, with softer string arrangements. Oceans have this floating, slightly disorienting feeling that makes water travel feel like genuine exploration rather than just moving to a new chunk. Underground is where things get interesting. Deep underground (which technically includes any cave), the music shifts to something more anxious and minor-key. It's still beautiful, but it has teeth. The Nether absolutely leans into the discomfort. Those tracks sound like something's watching you, and the game becomes tense in a way the overworld never quite is. The End is pure unease - sparse, echo-y, minimal. It's genuinely unsettling in the best way. If you've never really paid attention to how the music shifts as you explore different biomes, try this: go underground with your sound on and full attention for five minutes. Then go back to the surface. The contrast is jarring. That's intentional design. Building in different biomes hits different too. Creating a house in a dark forest where the music is just slightly ominous creates a totally different vibe than building a desert temple where the audio is sparse and open. Customizing Your Audio Experience If you want to completely change your Minecraft audio, resource packs let you swap the soundtrack entirely. Some packs create a dark fantasy atmosphere. Others add more energetic, modern music. You can even find packs that replicate music from other games or add entirely new compositions. The cool thing is that you don't have to commit to just one. If you're working on a project that needs specific energy, swap your music pack for a few hours. Building a spooky castle? There are packs for that. Making a peaceful farmstead? Those exist too. You can also customize individual sound files if you're comfortable with that level of modding. Some players replace specific tracks or add music to areas that didn't have any before. It's one of those quiet features that Minecraft's flexibility enables - you can shape almost every aspect of your experience, including the audio landscape. Just remember that the default soundtrack is there for a reason. If you're new to the game, stick with C418 and Lena Raine for a bit. Let the game teach you what its music is doing. You can always customize later, and you'll appreciate both the originals and your custom tracks more once you understand what made them work in the first place. If you're building elaborate structures and want to match your soundtrack to your build style, you might also want to organize your world using our Minecraft Block Search to find the right materials for your aesthetic. And if you're creating custom signage or decorative elements with text, the Minecraft Text Generator can help you maintain consistency across your builds while your custom soundtrack plays. How Music Shapes Your Minecraft Experience Here's the thing about Minecraft's soundtrack that separates it from basically every other game: it's not trying to manipulate your emotions or push you toward specific actions. It's not a score that emphasizes danger or achievement. It's ambient. It's atmospheric. It gets out of the way while still being present. That's why players who've been into Minecraft for years still feel something when they hear those piano melodies. The music didn't try to make the moment bigger than it was. It just acknowledged it. Now, years later, those tracks have become anchored to specific memories. Your first night in a survival world. That one build you spent weeks on. The friend group multiplayer server that you think about nostalgically even though you haven't played in a year. Good game music does that. It doesn't demand attention. The result earns emotional resonance through restraint and respect for the player's space. Minecraft's soundtrack understood that before most games even considered it. Whether you're playing version 26.1.2 (the latest Java release) or jumping between the latest snapshot and older versions, the music remains consistent in its philosophy. It evolves with new content, but the core principle stays the same: your experience matters more than the audio trying to be impressive. --- ### How to Build a Raid Farm in Minecraft 2026 URL: https://minecraft.how/blog/post/raid-farm-guide-minecraft Published: 2026-04-27 Author: ice Raid farms are one of the most efficient ways to get ominous bottles, totems of undying, and all those precious Raid drops without endlessly hunting Pillager Outposts. Building one right is where most people stumble. Let me walk you through the whole process, from scouting to spawning mechanics. What You'll Actually Get From a Raid Farm Here's the thing: raid farms aren't just for the flex. These things pump out totems of undying on demand, which is genuinely life-saving in deep caves or during late-game PvP. You'll also get emeralds by the stack, enchanted books, iron, diamonds, and those ominous bottles everyone's been collecting for potions. If you're running a server with friends, having a communal raid farm changes the whole economy. Suddenly everyone's swimming in resources that would take months to gather normally. The problem is they're finicky to set up right. Finding and Preparing Your Location Scouting for the Right Outpost You need a Pillager Outpost, obviously. But not just any outpost. You want one in an area with plenty of flat ground nearby and ideally away from your main base (raids can get loud, literally and figuratively). Use a seed mapper or just fly around in creative mode first to get a feel for your world. Check our server list if you're playing multiplayer and need suggestions on where communities have been building. The outpost itself sits at a specific Y-coordinate. In Java Edition 26.1.2, make sure you're working with terrain that doesn't have massive height variations nearby, because water will be involved. Clearing and Leveling Clear everything in a massive radius around the outpost. I'm talking 200+ blocks. Remove trees, water, random blocks. Make it flat. Pillagers are picky about where they spawn, and having random terrain will mess with your farm's efficiency. You'll want a completely clear, flat plane for the spawning platform. Understanding Raid Spawn Mechanics This is where people go wrong. Raids don't spawn like regular Pillager patrols. When you trigger a raid with a Bad Omen effect, the game spawns raid waves in specific waves with specific mob types. The waves come in a set order: Pillagers and Vindicators first, then Witches, then ranged units, then melee units again, then some mixed waves. Entities can only spawn on solid blocks, not in water, not in air. This matters because your farm design needs to funnel mobs into a specific area while preventing natural spawning everywhere else. But actually, that's not quite right for what we're building here - you want mobs to spawn on a platform, then fall into a collection system. The key insight: mobs spawn in waves at increasing distances from the Raid Center (usually the Bad Omen player). Building your farm means creating a platform where they naturally want to spawn, then controlling the flow. Building the Farm Structure The Spawning Platform You'll need a flat platform made of spawning blocks (dirt, grass, stone, etc.) roughly 20-30 blocks away from your farm center. This platform should be about 50x50 blocks, but not too close to other surfaces where mobs might spawn instead. The player holding Bad Omen should be positioned so that mobs spawn on the platform and nowhere else. Cover the ground in slabs or glass beyond your spawning area. This prevents strays from spawning during nighttime raids, which they actually do. The Collection System Once mobs spawn on your platform, you need them to fall down into a funnel. A simple system is a 1x1 hole that drops straight down to a killing area. Use water streams to push mobs toward the hole. Flowing water moves entities, so a simple 2x2 channel with water running toward the hole works beautifully. Pro tip: the hole doesn't need to be deep. Witches are the problem mobs because they heal themselves. You want damage to be instant, so suffocation is your friend here. A 2-block suffocation box under the collection point kills everything except witches. For those, use fall damage or lava combined with suffocation. The Killing Chamber Below the collection hole, create a chamber that's roughly 3x3 blocks. This is where mobs land. Add suffocation blocks (use pistons or pushing water to crush mobs against the blocks above). Most mobs die to suffocation after a few seconds. Witches need special handling - use fall damage or lava, though lava burns their drops. For a cleaner system, use drowning with a 1x1 vertical water column. Mobs can't escape, and their drops float to the top where you collect them. Getting the Farm Running Triggering the First Raid Find a Pillager Outpost and kill the Pillagers until one drops a Bad Omen effect (they drop it when killed by a player). Then drink a bucket of milk to get the Bad Omen, head to your farm, and enter a village. Bad Omen + Village = Raid trigger. The first raid spawns 5 waves of increasingly dangerous mobs. Waves 3-5 are where the totems and ominous bottles really show up. Optimizing Spawn Rates Mobs spawn in waves only while you're within a certain distance of the Bad Omen player. If you run too far away, the raid pauses. Stay close, but also get to a safe spot where you can observe or AFK. Many people build an observation tower or afk platform at exactly the right distance. Wave timing matters too. Each wave takes about 20-40 seconds to spawn completely. You don't want to trigger the next raid before the first one finishes, or the waves merge and break your farm. Common Problems and Fixes Mobs spawning in random places? You've got other solid blocks or elevated terrain nearby. Flatten everything within 200 blocks. Witches healing faster than they're dying? Switch to drowning or fall damage only. Lava plus suffocation sometimes doesn't work fast enough. The raid not triggering? Make sure you've the Bad Omen effect (not a status effect potion, but the actual Bad Omen from a Pillager captain). And you need to enter a village with it - an actual village, not just a few houses. Drops disappearing? They despawn after 5 minutes in Java Edition. Make sure your collection system actually pushes items to a hopper or collection point. If you're running a server, use our server properties generator to adjust entity-tracking-range if you need more visibility. Performance Considerations Raid farms can tank server performance if you're not careful. Hundreds of mobs dying simultaneously = lots of particles, sounds, and entity updates. Build your killing chamber away from your main base. Most people put these farms at least 500 blocks away from spawn, sometimes in another dimension entirely if they're really paranoid. If you're playing single-player, just monitor your FPS. If you're on a server, talk to your admins. Some servers disable raids entirely or limit how many can run simultaneously. One more thing - make sure you're actually afk-able during raids. The last thing you need is aggressive mobs chasing you while you're trying to position yourself. Build defensive walls or stay in a 1-block-high tower where Endermen can't reach you. Advanced Optimizations Once you've got a working farm, you can optimize it for speed. Some builders use multiple spawning platforms to get waves starting before previous waves finish. Others use multiple killing chambers to distribute the load. The absolute best farms run multiple raids simultaneously by having several Bad Omen players spaced out, each triggering their own raid. Obviously this requires cooperation and setup, but it's the difference between hundreds of totems per hour versus dozens. --- ### Minecraft Modding Scene: Top Releases of 2026 URL: https://minecraft.how/blog/post/minecraft-mods-2026-biggest-releases Published: 2026-04-27 Author: ice 2026 is shaping up to be one of the strongest years for Minecraft modding in ages. We're talking about quality-of-life overhauls that actually let you play the game instead of fighting menus, entirely new progression systems that make late-game actually mean something, and visual upgrades that make vanilla Minecraft look like it's from 2012 (which, let's be honest, it kind of is). The modding community is firing on all cylinders. The Big Category Shifts: What's Changed This Year Performance mods used to be niche. Now they're essential. With Minecraft 26.1.2 pushing more particles, more entities, and more everything onto older hardware, the optimization scene exploded. Mods that used to be "nice to have" are becoming "absolutely required if you want 60fps on a three-year-old GPU." What's interesting is how modders have stopped fighting against Mojang's design decisions and started building around them instead. The 1.20-1.21 era saw a shift toward quality-of-life mods that enhance gameplay rather than replace it. Early 2026 is doubling down on that approach. Quality-of-Life Mods: Actually Playable Now Look, vanilla Minecraft is still great, but the tedium is real. You spend half your time managing inventory, navigating menus, or clicking the same rock fifty times. The best QoL mods in 2026 finally address this without breaking immersion. Building infrastructure got the attention it deserved this year. Mods that streamline chest sorting, tool durability tracking, and crafting recipes are now handling the day-to-day repetitive tasks that bog down survival mode. Some actually integrate with custom Minecraft servers for shared storage systems across multiplayer worlds. Storage and Organization Inventory management mods used to feel clunky. The new wave feels integrated into the UI naturally (most of the time). Better chest searching, auto-sorting systems, and refined storage interfaces are standard fare now. Not flashy, but genuinely useful when you're six hours into a survival world and your storage room looks like a tornado hit it. Navigation and Waypoints Minimap mods have evolved beyond just showing where you're. They're mapping your entire world, marking waypoints, tracking mobs, and integrating waypoint data with other mods. The quality jump between 2024 and 2026 is noticeable, especially on servers with dozens of players building simultaneously. Gameplay Overhauls: When Mods Become Core Experiences This is where things get genuinely interesting. The line between "mod" and "total conversion" has blurred significantly. New progression systems launched in early 2026 that completely reimagine how you advance through the game. We're talking about tiered equipment unlocks, boss fights that actually have mechanics, and loot tables that make exploration feel rewarding instead of random. Some of these feel like they should have been in vanilla since day one. Magic systems finally matured. Previous iterations felt tacked on, but this generation integrates spellcasting, mana systems, and magical progression into the core gameplay loop in ways that don't feel forced. Balance between magic and traditional combat isn't perfect yet (it never is), but it's close. Dungeon exploration got serious. Complex procedural dungeons with actual loot progression, environmental hazards, and boss encounters turned what was usually just "find a stronghold" into a genuine adventure. Visual Mods: Looking Good on Every GPU Here's something that surprises people: high-end visual mods actually got lighter this year. Shader packs optimized for modern rendering techniques look stunning without tanking frame rates on mid-range hardware. You've got options now. Ultra-detailed texture packs at 256x or 512x resolution that don't require you to turn off mob AI. Particle effect improvements that are visible but not laggy. The real win? Modders finally stopped making it an all-or-nothing choice. You don't need to go full cinematic mode or accept vanilla graphics anymore. There's a sweet spot where things look genuinely better without requiring a $2000 GPU. Multiplayer Mods: Servers Finally Have Better Tools Server owners have been asking for better admin tools and player management features for years. 2026 brought modular solutions that actually work. Claim systems that don't feel like bureaucracy. Economy mods that let servers run functioning markets without turning into an arcade game. Custom events and seasonal mechanics that keep players engaged across months, not just weeks. If you're running a survival server, the tooling available now is leagues ahead of what existed even twelve months ago. Check out our votifier tester to verify your server's voting is set up properly for plugins that reward votes. Teleportation and Fast Travel Multiplayer servers used to have a problem: the world gets huge, travel becomes a chore, and new players get stuck in spawn. Smart teleportation mods with waypoint systems, train networks, and portal systems solved this without turning servers into theme parks. You're still exploring, it's just not taking forty minutes to reach your friend's base anymore. The Modding Ecosystem Problem (That's Still Being Solved) Real talk: modding Minecraft is still fragmented. You've got Forge, Fabric, Quilt, and various other loaders that don't play nicely together. Q1 2026 saw some attempts to bridge these divides through compatibility layers and shared mod repositories, but we're not there yet. If you're building a modpack, you're still doing detective work to figure out which mods work with which loaders. Progress is happening, just slower than the community wants. That said, the Fabric ecosystem particularly exploded this year. Lightweight, fast, and with a growing library of quality mods, it's become the default choice for people who don't need the heavy Forge feature set. And honestly? Most people don't. What's Next: The Roadmap Looking ahead into mid and late 2026, there's serious work happening on mod compatibility tools, better documentation for modders, and standardized ways to distribute complex modpacks. The meta-game of modding is improving, not just the mods themselves. The biggest releases so far haven't just been about adding features. They've been about making modding less friction-filled, more accessible to casual players, and genuinely fun instead of feeling like you're juggling incompatible systems. If you've been out of Minecraft modding for a year or two, 2026 is absolutely worth jumping back in. The polish level is noticeably higher, the quality-of-life improvements are real, and the creative projects coming out of the community are genuinely ambitious. --- ### Minecraft Map Making Community: Best New Tools in 2026 URL: https://minecraft.how/blog/post/minecraft-map-tools-community Published: 2026-04-27 Author: ice Minecraft map making in 2026 is backed by a powerful set of tools that didn't exist a few years ago. Structure blocks, world editors, text generators, and community collaboration platforms have made custom map creation faster and more accessible than ever. Whether you're building a small adventure map or a massive survival world, there's a tool for nearly every part of the process.The Community Has Never Been More ResourcefulThe shift happened gradually. Map makers started sharing techniques on Reddit, Discord servers popped up dedicated to specific building styles, and suddenly people realized they weren't alone in wanting better tools. This collaborative energy pushed developers, both independent and official, to fill gaps. Over on Reddit, there's this beautiful example of the community coming together when a father posted asking for help finding his daughter's lost animal sanctuary map. Hundreds of players showed up with suggestions, techniques, and encouragement. That kind of energy is what drives the tools we've today.What's wild is how much momentum has built since 2025.Structure Blocks Got Serious UpgradesIf you haven't messed with structure blocks much, Minecraft 26.1.2 actually made them worth your time. The interface got cleaned up. They're no longer this cryptic menu that feels like you're piloting a submarine. Now they handle larger areas more smoothly, and the save/load system is less janky overall. But here's the real big deal for map makers: the undo system actually works. Before, if you loaded a structure and it placed wrong, you'd manually dismantle blocks. Now you can just hit undo and try again. Sounds small, but it saves hours when you're iterating on a design.Combining structure blocks with something like the Minecraft Text Generator opens up possibilities that used to require command block wizardry. You can generate custom text, place it as a structure, and use it to label sections of your map, create signage, or build visual narratives. The tool generates the exact coordinates and commands you need, so you're not guessing in-game.World Editors Have Matured FastThird-party world editors have evolved from clunky, crash-prone programs into surprisingly stable tools. WorldEdit (if you're working on a server) and MCEdit-style tools now handle massive terraforming operations without melting your CPU. Some can batch-process terrain, copy entire biomes, and apply filters that would take weeks to sculpt manually. MCEdit variants still dominate for pure map creation. They let you load a world, edit sections, and export cleanly.WorldEdit plugins are essential if you're building on a multiplayer server. The command syntax is intimidating at first, but once you learn brush commands and selection tools, you're unstoppable.Terrain generation tools now use noise algorithms that feel almost as good as Minecraft's native generation. Some builders use these to pre-sculpt terrain, then load it into Minecraft for finishing touches.The real shift is that these tools no longer feel hacky. They're stable. They're documented. Developers actually maintain them.Custom Skins and Visual IdentityIf your map has NPCs or custom characters, you probably care about how they look. This is where the Minecraft Skin Creator comes in handy. You can build custom character designs without needing to be an artist. The tool gives you templates and intuitive controls so you're not wrestling with sprite sheets. For map makers, this means you can quickly create distinct-looking characters for quests, bosses, or story sequences. Consistency matters, and having a straightforward way to generate skins that fit your map's visual style keeps everything cohesive.Building diverse NPCs takes seconds instead of hours.Collaboration Platforms Flipped the ScriptMap making used to be solitary. You'd spend weeks building, then dump your world file hoping people played it. Now there are platforms where map makers share works-in-progress, get feedback, and collaborate on massive projects in real time. Servers dedicated to building communities let multiple creators work on the same world. Git-style version control for Minecraft worlds exists (yes, really), so you can revert mistakes, branch off ideas, and merge contributions. A few community platforms have popped up that handle the technical side, so you don't have to manually manage file swaps on Discord.The collaborative aspect has genuinely changed how maps get made. What used to be one person's solo vision now often becomes a team effort.What's Actually Worth Your Time Right NowIf you're just starting with map making, you don't need all of these. Start with structure blocks in vanilla Minecraft and the text generator to experiment with layouts. Learn how commands work. Build something small.If you're running a multiplayer server, WorldEdit is non-negotiable. It cuts build time by months. If you're making a narrative map with custom characters, the skin creator saves you from art tutorials and sprite editing.The best tool is the one you'll actually use. Pick something, dive in, and skip the analysis paralysis. --- ### Build Realistic Flying Machines with Create Aeronautics URL: https://minecraft.how/blog/post/create-aeronautics-minecraft Published: 2026-04-27 Author: ice furukola/Create-Aeronautics-Minecraft-Mod-ALL-Versions Create Aeronautics is an advanced aviation expansion for the Create Mod. It introduces real-world physics and aerodynamics to Minecraft. Build functional airships and planes with realistic lift and mechanical integration. Experience the ultimate engineering challenge in the skies of 2026. Want to actually fly in Minecraft? Not with elytra or creative mode, but by engineering a proper aircraft with real physics underneath? Create Aeronautics lets you build functional airships and planes where lift, drag, and thrust actually matter. It's the mod you didn't know you needed if you've ever stared at the sky and thought, "I bet I could make that work." What Create Aeronautics Actually Does This mod adds a physics engine on top of the Create Mod that handles real-world aerodynamics. Your planes don't magically hover (or they do, but only if you engineer them right). You're building vessels with actual weight, balance points, and lift calculations. Wings generate lift based on airspeed and angle of attack. Propellers create thrust. The center of mass matters because it actually affects whether your creation crashes immediately or soars gracefully. It's not just flying though. You're still working within Create's mechanical systems. You need to power your aircraft, route mechanical energy to your propellers, balance thrust across multiple engines. Your first successful flight will feel earned because, honestly, it's. When You'd Actually Use This Mod Picture this: you've spent three months building a massive floating city. Now what? Teleport between platforms? Boring. With Create Aeronautics, you build an airship to navigate between districts. Real exploration. Real engineering problems to solve. Or maybe you want to create a functional airline system across your server. Different aircraft for cargo versus passengers. Designated flight lanes. Actual transportation instead of instant travel. One server I've seen built an airport with hangars, fuel stations, and a control tower (which... doesn't do anything mechanically, but looks incredible). You could also just go completely freeform and build things because they're cool. A biplane that actually flies. A massive cargo zeppelin. A fighter jet that turns faster than it should, technically, but who's checking? Installing Create Aeronautics First, you need the Create Mod itself. If you're running Minecraft 26.1.2 (the latest stable release), grab Create from CurseForge or Modrinth. You'll also need Architectury API and Flywheel - both are listed as dependencies. Download CreateAeronautics.zip from the releases page. Extract it into your mods folder. bash~/.minecraft/mods/CreateAeronautics.zip Launch the game and check your mods list to confirm it loaded. If your ship won't fly, the README's troubleshooting table points out the usual suspects: missing Create updates, center of mass issues, or insufficient thrust-to-weight ratio. That last one trips people up - your engines need to generate enough force to lift your design, which sounds obvious until you're standing on a 500-block airship with three tiny propellers wondering why nothing happens. One thing I'd add: if you see visual glitches with flying parts, check whether you've got conflicting shader packs. Iris and Oculus shaders work fine, but mixing certain mods can cause rendering issues. Key Features Worth Understanding Thrust and Propulsion - Create Aeronautics uses mechanical power to spin propellers. Your power source (rotational force from Create's systems) gets transmitted through bearings and shafts to propeller blocks. More speed equals more thrust, but there's diminishing returns. You're balancing fuel efficiency against climb rate. GitHub project card for furukola/Create-Aeronautics-Minecraft-Mod-ALL-Versions Aerodynamic Lift - Wings actually work. The faster your aircraft moves horizontally, the more upward force wings generate. This is why stubby, heavily-loaded aircraft need long runways, and sleek ones can climb steeply. It takes practice to internalize the relationship between wing size, speed, and how much weight you can carry. Control Systems - You steer using mechanical controls connected to control surfaces. Ailerons for roll, elevators for pitch, rudders for yaw. It's absolutely not intuitive if you've only flown with elytra (where you just... aim). You need to think like a pilot. Dive too steep and you can't pull up because you don't have enough speed for the wings to generate lift. Weight and Balance - Every single block has mass. Your cargo, your engines, your fuel tank - it all matters for whether this thing stays in the air. The center of mass needs to be roughly under your center of lift, or you'll spin uncontrollably. Yes, I learned this the hard way. Twice. Realistic Wind - If the mod has wind mechanics (some versions do, some don't depending on your installation), crosswinds will push your aircraft sideways. Fun if you're prepared for it. Disastrous if you're not. Common Gotchas and What Actually Fixes Them Your ship crashes immediately. Check two things: is the center of mass actually below the center of lift? Most common failure. Second, do you've enough thrust? A 50-ton airship with 200 newtons of propulsive force isn't going anywhere. The mod won't load at all. Dependency issue. You're missing Architectury API, or you've Create version 0.5.0 when you need 0.5.1+. Version compatibility is the boring answer to 90% of mod problems. Everything renders as purple and black. Shader conflict. Disable resource packs or shader packs until you find which one breaks it. Flight controls feel sluggish. This is usually because you need to bind flight-specific controls in the Keybinds menu. Default controls might not be comfortable for flying. Similar Projects Worth Considering If Create Aeronautics feels too demanding or you want something more arcade-like, Immersive Aircraft is simpler - no physics simulation, just straightforward plane building. It's fun but less rewarding once you understand real aerodynamics. Alternatively, if you want to focus purely on aesthetic flying contraptions without worrying about whether they're aerodynamically plausible, Create's basic contraptions work fine. You can use Create alone to build moving structures that fly by pure mechanical creativity. For servers, you might also want to pair this with a custom spawn system or a server properties customization tool. If you're setting up a public server with flight zones, you'll need clear rules about where people can and can't fly. Check out the Server Properties Generator to set spawn points and flight restrictions, or use the Minecraft MOTD Creator to announce your flight server's rules to joining players. Is It Worth Your Time? If you enjoy solving engineering problems and don't mind a learning curve, absolutely. If you want instant gratification and pure flying freedom, maybe not. This mod rewards patience and experimentation. Your twentieth aircraft will fly beautifully because you finally understand the balance between weight, wing surface area, and thrust. The community around Create Aeronautics is small but active. You'll find people sharing designs, troubleshooting weird physics bugs, and sometimes just showing off absurdly over-engineered aircraft. That's where the real fun starts. Where to go from here Read the source on GitHub (docs, examples, and the issue tracker) Browse open issues to see what the community is working on Check recent releases for the latest build or changelog --- ### Endstone: Paper Server Power Now for Bedrock URL: https://minecraft.how/blog/post/endstone-bedrock-server-setup Published: 2026-04-27 Author: ice GitHub · Minecraft community project endstone (EndstoneMC/endstone) High-performance Minecraft Bedrock server software with native C++ and Python plugin API Star on GitHub ↗ pache-2.0 Ever wanted to run a Bedrock server with the customization power of Java Edition's Paper? Endstone fills that gap, giving you plugin support and deep server control while keeping vanilla compatibility intact. What Endstone Actually Does Let's be honest: vanilla Bedrock servers are limited. You can't cancel events, control packets, or modify core gameplay the way you can with Paper or Spigot. Endstone changes that by sitting between you and Bedrock itself, intercept events, and offering a full plugin API. It's not an addon system or a script engine. It's a proper server wrapper with the architectural power Java players have had for years. The cool part? It's genuinely a drop-in replacement. Your world files, your configs, your existing Bedrock setup - they all work. You don't need to migrate anything. Just install Endstone, point it at your world, and start loading plugins. The underlying Bedrock server runs unchanged underneath, so vanilla features stay intact and reliable. Under the hood, this is C++ doing the heavy lifting. The project's got 623 GitHub stars and active development (latest version supports Bedrock 1.26.12). That plugin API itself leans on design patterns familiar to Bukkit developers - if you've written Paper plugins before, the mental model will click immediately. Why You'd Actually Use This The obvious case: you're running a Bedrock server and want to add custom commands, permissions systems, or gameplay mechanics without coding your own addon from scratch. Endstone handles the infrastructure - events, scoreboards, forms, inventory access, player data - so you can focus on logic. Concrete examples. Say you want a leveling system where players gain XP and unlock commands. In vanilla Bedrock, you're fighting against addon limitations. In Endstone, you write an event handler that listens for player damage, calculates XP, updates a scoreboard, and grants permissions dynamically. A few dozen lines of Python and you're done. You could implement a full economy system, custom combat mechanics, dungeon events, or ranked PvP matchmaking. Another angle: cross-server connectivity. You're running Bedrock but you want players to join from Java Edition servers via proxy tools. Endstone's packet control lets you intercept and modify join sequences, cosmetics, and other cross-version friction. It's not smooth out of the box, but it's possible in ways pure vanilla Bedrock isn't. Windows or Linux. Docker support exists. Python 3.10+ on Windows 10+ or Ubuntu 22.04+ / Debian 12+. That's flexible enough for most hosting setups. And if you need C++ performance for a critical plugin, the API supports that too. Getting Started Installation is three commands: bashpip install endstone endstone That's it. Python package manager pulls the release binary (Windows or Linux depending on your platform), and running `endstone` starts the server in your current directory. It'll generate a server config and a `plugins` folder. For your first plugin, create a Python file in that folder. Here's the bare minimum: pythonfrom endstone.plugin import Plugin from endstone.event import event_handler, PlayerJoinEvent class MyPlugin(Plugin): api_version = "0.10" def on_enable(self): self.logger.info("MyPlugin enabled!") self.register_events(self) @event_handler def on_player_join(self, event: PlayerJoinEvent): event.player.send_message(f"Welcome, {event.player.name}!") Drop it in `plugins/`, restart the server, and you'll see "MyPlugin enabled!" in the logs. Players joining get a welcome message. That's the entire feedback loop. The project provides templates for both Python and C++ if you want a scaffolded structure. But honestly, the bare plugin example above is small enough that you can copy it and start experimenting. What Makes It Powerful The API surface is substantial. We're talking 60+ events covering players joining, breaking blocks, taking damage, opening inventories, chatting, and more. Commands work with Bedrock's built-in command parsing (no custom string parsing required). You get scoreboards, forms (the interactive UI system), permissions, inventories, and access to player metadata and world data. Packet control is where Endstone breaks away from other solutions. You can listen to low-level network packets before the server processes them. That opens doors to anti-cheat, cross-version compatibility hacks, and fine-grained event cancellation. Modify a packet mid-flight and the change propagates through normally. Stay compatible with the latest Bedrock automatically? Design philosophy favors keeping up with Minecraft's monthly releases instead of playing catch-up. The v0.11.3 release added BlockType registry support and fixed several packet serialization bugs that were causing disconnects. That's the pace you're looking at - quick iterations keeping the API current. Things That Catch People Python plugins are convenient but slower than C++. If you're building something that runs on every tick for thousands of players, C++ is your answer. But for events that fire occasionally (player join, chat, custom commands), Python is fast enough. Worlds created in pure Bedrock will work, but if you have existing realm backups or world-specific data outside the level folder (like realm backup metadata), you may need to migrate manually. Endstone handles the world format natively - it's just the surrounding infrastructure that sometimes needs adjustment. Also, know that you're running a Bedrock server, not Java. That matters for plugin availability. Many popular Java plugins (Essentials, Vault, fancy chat formatting libraries) have no Bedrock equivalents. You'll write more from scratch. The community is smaller but growing, and the official template repos give you starting points. How It Stacks Against Alternatives PocketMine and Nukkit are older Bedrock server implementations. They don't run vanilla Bedrock underneath - they reimplement the server from scratch. That's more control but more maintenance, slower updates, and sometimes subtle differences in behavior. Endstone wraps real Bedrock, so vanilla features are guaranteed. Addon scripting is official and limited on purpose. It's great for cosmetics and simple logic, but can't hook into server-level events or permissions. Endstone is the play if you need control. If you're on Java Edition, Paper (or Spigot/Bukkit) is still the gold standard and always will be. Endstone is specifically for Bedrock communities that need plugin infrastructure. Real-World Setup Notes Run it in Docker for cleaner isolation and easier updates. Run it behind a reverse proxy if you're exposing it publicly (Bedrock uses UDP, so your firewall config matters). And before deploying anything to production, test your plugins locally. Endstone's development setup is straightforward enough that you can iterate on a laptop. For hosting a public server, consider using the Free DNS tools we offer at Minecraft.How's free DNS service to manage your server domain reliably and cheaply. And if you're maintaining a whitelist, the Minecraft Whitelist Creator streamlines generating and managing your player list. Check the Discord community (linked on the GitHub repo) before you get stuck. The maintainers respond quickly, and you'll find plugin examples and deployment advice from people running live servers. Support the project endstone is maintained by the open-source community. If it saved you time or powered something cool, leave a ⭐ on the repo, report bugs, or contribute back. Small actions keep tools like this alive. --- ### OPanel: Minecraft Server Management in 2026 URL: https://minecraft.how/blog/post/opanel-minecraft-server-management Published: 2026-04-27 Author: ice opanel-mc/opanel A Minecraft server management panel for Bukkit / Spigot / Paper / Folia / Leaves / Fabric / Forge / NeoForge servers .0 If you've ever tried managing a Minecraft server from the console alone, you know the pain. Commands get buried in chat spam, player actions take forever to process, and a quick backup becomes a 10-minute console hunt. OPanel fixes that. It's a web-based admin panel that turns server management into something you can actually do from a browser, with real-time dashboards, one-click player management, and terminal access all in one place. What This Project Does OPanel is a lightweight Java plugin that sits on your Minecraft server and exposes a clean web interface for everything an admin needs to do. Run it on Bukkit, Spigot, Paper, Folia, Leaves, Fabric, Forge, or NeoForge servers, and you get instant access to a control panel right from any browser. No config wizards or overwhelming dashboards - just straightforward tools that do what you'd expect them to do. The plugin handles the backend heavy lifting while the web UI (built with React, if you're curious) stays lean and responsive. You can manage worlds, players, plugins, and logs without touching the server console ever again. Why You'd Use It There are a few different reasons this matters depending on what kind of server you're running. If you're running a vanilla or modded survival server with friends, OPanel saves you from constant server restarts just to tweak a gamerule or kick someone AFK. The gamerules editor alone is worth it - toggle difficulty, PvP, mob spawning, whatever, without a single slash command. And the saves manager means you can upload new world downloads or manage backups without FTP access or command-line file editing. For server networks or public servers, the player management suite becomes crucial. Ban someone, whitelist new players, change permissions, send kick messages - all from the browser. The built-in terminal lets you execute commands without giving people direct console access, which is a genuine security win. You can also view inventory contents for suspected rule-breakers, which is genuinely useful for catching contraband or stolen items in survival. And if you run a server farm or want to show real-time status on a website, there's an Open API feature that broadcasts your server's current player count, online status, and other stats. Small detail, but it's the difference between a professional server presence and a static webpage that hasn't been updated in three years. How to Install Installing OPanel is straightforward if you know where to drop a plugin jar. Head to the releases page and download the build that matches your server version. Recent versions support anything from 1.16.1 up to 1.21.9, with separate builds for each major release. Drop the jar into your server's plugins folder: bashcp opanel-bukkit-1.21-build-1.2.1.jar /path/to/server/plugins/ Restart the server, and OPanel will generate its config files and set up a default user. The default port is usually 8080, so you'd access it at http://your-server-ip:8080. Change the port or enable HTTPS in the config if you're exposing this to the internet (you should be). If you're on an older version like 1.19.4 or 1.20, there's a separate build for that too. Just match the jar filename to your server's version number and you're done. Key Features and How They Work Dashboard and Real-Time MonitoringThe first thing you see is a dashboard that pulls together your server's vital signs: TPS, player count, RAM usage, chunk loading, all live. It's genuinely useful for spotting when something's tanking performance before players start complaining about lag. The layout is clean enough that you're not squinting at a wall of numbers. Player Management SuiteThis is where OPanel shines for multiplayer. You get a full player list with the ability to kick, ban, or change permissions without typing. There's also a separate banned players list and whitelist manager, so you can control access without needing external plugins. The NBT viewer for inventories is particularly handy - catch someone with enchanted netherite they shouldn't have, and you can see exactly what they're carrying. Plugin and Mod ManagementEnable or disable plugins and mods without restarting. Well, some mods don't reload cleanly, so YMMV on the mod side, but the plugin system is solid. You get detailed info about each plugin too - version, author, description - all pulled from the jar metadata. Beats clicking through your mods folder wondering what everything does. Server TerminalExecute commands directly from the web panel. There's a reason this matters: you can give people dashboard access without giving them console access. A trusted moderator can kick players or restart the server without being able to type random commands into the console. The command history is logged too, which helps with accountability. Saves and BackupsUpload, download, or delete world saves through the browser. Useful for rotating between seasonal worlds or making manual backups before major updates. You can also enable/disable individual saves without moving files around, which is a small thing that saves actual time. Practical Setup Tips A couple things to know before you go live with this. Secure your panel. If you're accessing it from the internet, use a reverse proxy with SSL (Nginx, Cloudflare, whatever). The default setup is fine for local networks, but leaving an admin panel exposed over HTTP is asking for trouble. Also, change the default password in the config immediately after first startup. Be aware that OPanel runs on the same JVM as your server, so it uses some of your server's RAM. Nothing dramatic, but if you're on a tight memory budget, check your server startup logs to see what the impact is. The plugin system for command execution is solid, but understand that you're still limited by what the server actually supports. Some admins expect to do things through the panel that only work with specific third-party plugins or mods. OPanel itself won't add those capabilities - it just makes them easier to access. If you're running a network with multiple servers, you'd need to install OPanel on each one separately right now. There's no built-in multi-server dashboard, so keep that in mind when planning your setup. Alternatives and How OPanel Compares There are other server management panels out there. Pterodactyl is popular for hosting providers and large networks, but it's overkill for a single server and requires a separate host running the panel daemon. Crafty Controller is lighter and self-hosted, which is closer to OPanel's philosophy, but OPanel installs as a plugin, meaning zero extra infrastructure. For vanilla-only servers, some admins just use Fabric server-side mods or Bukkit plugins that handle specific tasks. You'll spend less time on setup, but you'll also spend more time at the console. OPanel's value proposition is that it pulls everything together in one place. If you need to check your server settings and build a custom server.properties file, the Server Properties Generator pairs well with OPanel's gamerules editor - one tool for static properties, OPanel for runtime changes. Similarly, if you're managing a Nether farm or planning cross-dimensional builds, having the Nether Portal Calculator open in a separate tab beats trying to do the math in your head while the server's running. Worth Your Time? OPanel is genuinely solid for anyone running a small to medium Minecraft server. The 243 GitHub stars suggest a stable project with actual adoption, and the recent 1.2.1 release shows active maintenance. MPL-2.0 licensed, so it's open-source and you can audit the code if you want. It's not flashy, and it won't solve every admin headache, but it takes the most repetitive parts of server management and makes them genuinely frictionless. If you're tired of typing commands into console, it's worth 10 minutes to set up. Where to go from here Read the source on GitHub (docs, examples, and the issue tracker) Browse open issues to see what the community is working on Check recent releases for the latest build or changelog --- ### Making Mobs Matter: How LevelledMobs Transforms Your Minecraft Server URL: https://minecraft.how/blog/post/levelledmobs-minecraft-plugin-guide Published: 2026-04-27 Author: ice "Level-up mobs on your Spigot/Paper server, RPG-style!" ArcanePlugins/LevelledMobs · github.com .0 Want mobs that actually pose a real threat at any point in your server's lifecycle? LevelledMobs scales mob difficulty based on location, time played, or custom rules, so your server never feels too easy or impossibly hard. It's the plugin that makes progression matter. What This Plugin Actually Does LevelledMobs lets you scale mob difficulty across your Spigot or Paper server. Mobs gain levels, health, damage, and loot based on whatever rules you set. A zombie near a player with full diamond gear plays entirely different from one near a fresh spawn. The plugin isn't just slapping bigger numbers on mobs and calling it a day. It's genuinely configurable. You can tie mob levels to the player's progression, server playtime, world regions, custom tags, or even nearby structure types. Want skeletons harder in dungeons and easier on grasslands? Done. Need zombie difficulty to scale per-player based on their best armor? Also done. What makes LevelledMobs stand out is how much it respects server custom. Rather than forcing one difficulty curve, it lets you define the rules. Some servers want pure progression-based scaling. Others prefer location-based difficulty zones. A few want combination systems that blend multiple factors. Why Your Server Needs Mob Leveling Vanilla Minecraft has exactly one difficulty setting. It's global, binary, and doesn't care whether your player base is day-one fresh or built up with enchanted gear. This creates a weird progression arc. Early-game survival feels right - you're scared of creepers, caves are dangerous, night is genuinely threatening. But by week two, zombies are mosquitoes. By month two, you're speedrunning dungeons in full netherite with enchantments. Some servers just accept this and adjust via gameplay loops (farther out means harder terrain, more dangerous caves, custom mobs). Other servers crumble because new players can't survive and veteran players are bored. LevelledMobs fixes the fundamental problem: combat difficulty that matches your player base's actual power level. New players get reasonable early challenges. Veteran players get enemies worth their time. Everyone stays engaged longer. You'll notice players actually use armor and potions again instead of running at every mob with naked fists and no shield. Installation and Setup Setting up LevelledMobs is straightforward if you've worked with Spigot plugins before. Grab the latest JAR from the HangarMC repository or SpigotMC. Drop it into your plugins/ folder and restart your server. bash# Stop your server first./stop.sh # Copy the JAR to plugins folder cp LevelledMobs-4.5.2.b146.jar plugins/ # Start the server./start.sh On first launch, LevelledMobs generates its config folder at plugins/LevelledMobs/. The default settings are safe - mobs scale based on average player level, which works for most servers. If you want to customize (and you probably do), edit config.yml in that folder. YAML syntax matters, so indentation is critical. After making changes, reload without restarting: bash/lm reload The official wiki documentation is detailed. You'll want it handy for setting up custom rules beyond defaults. Key Features That Stand Out Per-Mob Customization Every mob type gets its own rules. Creepers can scale differently than endermen, which scale differently than custom variants. Define health scaling, damage multipliers, and loot tables per species. Location-Based Difficulty Zones Want a dangerous mining depth? Set harder scaling below Y-level 0. Custom dungeons? Tag chunks and apply different rules. Forest biome easier than a nether fortress? Absolutely. Custom Attribute Modifiers Version 4.5.2 and later add attribute modifiers beyond basic damage and health. Scale mob speed, knockback resistance, and attack cooldown. A boss-level creeper actually feels dangerous when scaled properly. Mob Groups for Complex Rules Group mobs by tag, biome, or custom criteria. Apply rules to "all flying mobs" or "all undead mobs" as a single set. Changes to the group apply instantly without restarting. Equipment and Loot Progression Scaled mobs wear progressively better gear as their level increases. A level-20 zombie shows up in iron armor with an iron sword. Loot scales too, so players get rewarded for fighting harder mobs. Common Mistakes and How to Avoid Them Scaling mob difficulty too aggressively kills new player retention. Jumping from level 1 to level 50 over two weeks feels unfair, not earned. Test with fresh players before going live on your public server. Some mobs need special treatment. A creeper's damage scaled 5x creates real problems - one explosion can destroy your storage room. Cap damage on certain mobs or use alternative scaling rules. Read the wiki recommendations before randomizing. Loot progression matters. A level-50 mob dropping level-1 items feels completely broken. Actually configure scaling loot tables so rewards match difficulty. Players notice immediately when this is wrong. Configuration conflicts happen when multiple rules trigger on the same mob in the same location. The last rule applied wins, creating confusing behavior. Document your rule order and test overlapping scenarios. Make backups before big config changes. One syntax error or typo can turn all mobs into level 1 (or level 999) on reload. Keep copies of working configs. Finding Your Server's Balance The Minecraft Server Status Checker helps you monitor how many players are online when testing difficulty spikes. You can also use the Minecraft MOTD Creator to advertise your progression-based difficulty in your server's MOTD. Your actual balance point depends on whether you're running PvP, survival, RPG, or creative-focused gameplay. Raid servers need harsher scaling. Casual survival benefits from gentler progression. Experiment and ask players for feedback - they'll tell you if mobs feel fair. Alternatives Worth Considering CustomBosses is simpler if you only need to customize specific mobs or boss encounters. It's less flexible but easier to learn for basic use cases. Mythic Mobs is more powerful overall with custom AI, animations, and skills. But it's overkill if you just want level scaling and heavier on server performance. MobStacker solves a different problem entirely (combining mobs into stacks for performance optimization), not really the same category - but worth knowing if you're optimizing mob spawning. Most servers using multiple systems combine LevelledMobs with one of those others, not one alone. LevelledMobs handles the difficulty scaling while the others handle specialized encounters or performance. Ready to try LevelledMobs? Grab the source, read the full documentation, or open an issue on GitHub. Star the repo if you find it useful. It helps the maintainers and surfaces the project for other Minecraft players. Visit ArcanePlugins/LevelledMobs on GitHub ↗ --- ### bStats: Understanding Minecraft Plugin Data URL: https://minecraft.how/blog/post/bstats-minecraft-plugin-analytics Published: 2026-04-27 Author: ice Bastian/bStats bStats collects data for plugin authors. It's free and easy to use! Ever wondered what Minecraft plugins are most popular? Or what Minecraft versions most servers actually run? bStats answers these questions automatically by collecting anonymized data from plugin installations across the entire Minecraft server ecosystem. It's free, open source, and already gathering statistics from millions of servers worldwide. What bStats Actually Does At its core, bStats is a data collection platform designed specifically for Minecraft plugin developers. When you integrate a simple library into your plugin, it automatically starts reporting statistics back to bStats servers. And that data gets aggregated, visualized, and made available on public dashboards where anyone can see trends in the plugin ecosystem. The bStats project itself is open source (MIT licensed) and maintained on GitHub as a parent repository containing several submodules: the backend infrastructure that receives and stores data, the web frontend where you view charts and statistics, a data processor that transforms raw data into metrics, and libraries for both Java-based plugins and PocketMine-MP. The entire stack runs in Docker, making self-hosting possible if you need complete infrastructure control. Most plugin authors don't need to self-host anything. You simply integrate the bStats metrics library into your plugin, and your statistics automatically flow to bstats.org, where dashboards are free to view for anyone interested in ecosystem trends. What makes this interesting is that all the data is completely public. No private dashboards, no paywalls, no account gates. Why Plugin Developers Actually Use This Plugin developers are flying blind without data. You release a plugin, people download it, and then what? Are servers actually installing it? Are they upgrading to new versions? What Minecraft versions do your actual users run? bStats answers these questions with hard numbers. You get metrics like total server count (how many servers have your plugin installed), player count (how many players interact with it), Minecraft version distribution, and server software breakdown. Over time, these metrics show growth patterns, adoption curves, and whether your user base is growing or declining. The version distribution data is particularly valuable. If you see that 85 percent of your user base runs Minecraft 1.20 or newer, you can confidently deprecate support for older versions. And that frees up development time for features your actual users care about. Custom metrics let you track data specific to your plugin's functionality. An economy plugin might track total currency in circulation. A dungeon plugin might track which dungeons are most visited. A minigames plugin might track which games are most popular. You control the metrics that matter to your plugin. And here's what many developers miss: bStats tracks plugin dependencies. You can see which libraries are genuinely critical to the Minecraft ecosystem and which are niche. This data informs decisions about which dependencies to take on. Privacy, Security, and Opting Out All data is aggregated and completely anonymous. You cannot identify individual servers. A plugin installed on just three servers shows aggregate trends, not raw server data. Server owners can disable bStats by setting a single config option in the plugin's configuration file. Collection stops immediately with no other impact on plugin functionality. Data transmission happens asynchronously in the background roughly once every 30 minutes using minimal bandwidth. Technically, bStats is open source with publicly visible source code on GitHub. You can inspect exactly what gets collected and how it's processed. No black boxes. Getting Started with bStats The experience depends entirely on what you're doing. If you're a server owner running plugins, you probably don't need to do anything. Modern plugins that support bStats handle integration automatically in the background. Zero configuration required. If you ever want to disable it, you can usually just add one line to a plugin's config file. You can browse public bStats dashboards right now without any account. Visit bstats.org, search for any popular plugin, and you'll see real-time statistics about adoption, Minecraft versions, and custom metrics. If you're a plugin developer, adding bStats is intentionally simple. For Java plugins, you add a Maven or Gradle dependency to your build configuration, then add a few lines of code to your plugin's startup method. bStats maintains separate libraries for different server platforms (Paper, Spigot, Bukkit, Bungeecord), so you pick the right one for your target. Here's what basic Java integration looks like: javapublic void onEnable() { //... other plugin initialization code... int pluginId = 12345; // Replace with your actual bStats ID new Metrics(this, pluginId); } Once deployed, bStats automatically starts collecting and reporting metrics. Advanced setups let you register custom charts, but the basic integration requires almost no code. PocketMine-MP developers have a separate PHP-based metrics library that works the same way. What Data Does bStats Actually Track? Server count is the most basic metric: how many active servers have your plugin. Paired over time, you see whether your plugin is growing or declining. Players count tracks how many players across all servers interact with your plugin. A popular plugin on a 1,000-player server counts as 1,000 players, while the same plugin on a 10-player server counts as 10. Together with server count, this tells the full adoption story. Minecraft version tracking shows exactly which versions your user base runs. Over a few weeks you see distribution patterns: maybe 60 percent run 1.20.4, 30 percent run 1.21, and 10 percent run older versions. And this directly informs compatibility decisions. Server software tracking shows adoption of different platforms. Is your ecosystem mostly Paper, Spigot, or a mix? bStats shows you exactly what your user base uses. Custom metrics are completely up to the plugin author. A PvP plugin might track player kills and deaths. A survival game might track games played and average duration. You only report metrics relevant to your plugin's functionality. All of this data is aggregated and displayed publicly. Anyone curious about Minecraft plugin trends can browse and explore. Common Questions and Gotchas Does this slow down my server? No. bStats operates asynchronously on a separate thread. Data transmission happens roughly every 30 minutes and is just a few kilobytes. Completely unnoticeable on modern connections. Can server owners disable it? Yes, through the plugin's config file. So it stops immediately with zero other impact. What if the bStats service goes down? Your plugin continues running normally. bStats is optional infrastructure, not critical to functionality. One important caveat: bStats data represents a sample of the ecosystem, not the entire picture. Not every plugin integrates bStats, so version distribution data shows servers running bStats-enabled plugins, which might not be identical to all Minecraft servers. That said, for popular plugins the sample is pretty representative. There's usually a few hours lag between when servers report data and when it appears on dashboards. Alternatives and Where bStats Fits bStats has no real competitor in the Minecraft plugin analytics space. Some plugins maintain proprietary telemetry, but that requires significant infrastructure work. Other Minecraft tools track different data entirely (block changes, player actions, economy transactions). If you're trying to understand your server's performance generally, tools like the Minecraft Server Status Checker and the Minecraft Server List help you benchmark against other servers. But for genuine insights into plugin adoption and ecosystem-wide trends, bStats is the only real option. Could you run your own analytics? Sure. bStats is open source and can be self-hosted. But self-hosting adds complexity, and most developers find the public service meets their needs perfectly. bStats exists in that perfect sweet spot of being genuinely useful, completely free, and low-friction. Plugin developers get actionable data without maintaining infrastructure. The entire plugin ecosystem moves smarter and faster because developers make data-driven decisions. Server owners benefit from better-maintained plugins. It's infrastructure that's so well-designed it becomes invisible. Support the project bStats is maintained by the open-source community. If it saved you time or powered something cool, leave a ⭐ on the repo, report bugs, or contribute back. Small actions keep tools like this alive. --- ### Building Your Own Minecraft Adventure Map: A Complete Guide URL: https://minecraft.how/blog/post/minecraft-adventure-map-complete-guide Published: 2026-04-27 Author: ice Adventure maps are custom Minecraft worlds designed to guide players through a curated experience, complete with quests, puzzles, and storytelling. Unlike survival mode where players make their own fun, adventure maps are your chance to craft a specific journey with challenges, rewards, and narrative structure. Making one requires planning, building skill, and understanding game mechanics - but the result is genuinely worth the effort. Understanding Adventure Map Basics An adventure map isn't just a pretty build. It's a complete experience you're designing for other players to enjoy. Think of it like directing a video game: you're setting up scenarios, managing pacing, and controlling what players encounter and when. The key difference between a good adventure map and a forgettable one? Intention. Every block placement, every redstone circuit, every item you place should serve the experience. Decorative buildings are fine, but they work best when they tell the story or hint at what comes next. Most adventure maps fall into these categories: parkour challenges, puzzle dungeons, quest narratives, survival challenges, or hybrid mixes of all four. Your first map doesn't need to be huge or overly complex. A small, well-executed puzzle dungeon beats a massive world with 50% empty space. What You'll Actually Need Surprisingly little. Minecraft 26.1.2 (the current Java Edition release) has everything built in. You don't need mods, plugins, or external tools unless you want advanced features like custom NPCs or complex economy systems. But that said, a few things make the process smoother: WorldEdit for copy-pasting structures and clearing large areas A schematic tool like MCEdit or Litematica for saving and importing pre-built sections NBTExplorer if you need to edit map item data or hidden values Your own patience and a working understanding of redstone basics Honestly? You can build a solid adventure map with just vanilla creative mode and knowledge of command blocks. The extra tools just speed things up. Planning Your Adventure Map This step separates the "wow, that's cool" maps from the "wait, what am I supposed to do here?" maps. Spend actual time planning before you place a single block. How to Make a Portal in Minecraft: A Comprehensive Guide Start by defining the core experience. Is this a 15-minute puzzle, or a two-hour story-driven quest? Who's the intended player? (Speedrunners optimizing for time, families playing together, experienced builders looking for a challenge?) The answers shape every decision you make. Write down the progression flow. Level 1 teaches mechanics. Level 2 builds on them. Level 3 combines everything into a climactic challenge. This sounds basic, but you'd be surprised how many maps jump between difficulty levels randomly. Sketching Your World Layout Grab paper or a simple digital mockup tool and sketch the layout. Where does the player spawn? Where's the first puzzle? The final boss room? Mark safe zones, dangerous sections, treasure rooms, and spawn points. This doesn't need to be artistic - it's just a map for you. Think about pacing and visuals. If someone travels through the same dark corridor for five minutes, they'll get bored. Mix environments: dark underground, bright outdoor areas, cramped spaces, open vistas. Contrast keeps players engaged. Consider using a central hub area where players can rest, access hints, or choose between different challenge paths. This gives players agency (which they love) and lets you control difficulty progression. Building the World and Structures Now the fun part: actual construction. This is where most of the time goes, but it's also where the magic happens. how to make a chickney farm in minecraft Start with terrain. Flat maps are boring. Use World Painter or terrain generation tools to create interesting landscapes, or manually sculpt terrain using commands like WorldEdit's brush tools. Varied elevation makes exploration feel less linear. Build landmark structures that guide players without obvious signs. A distant tower hints at the next area. A broken bridge suggests the player needs to find an alternate route. These environmental clues are better than floating text. Decoration That Tells a Story Every structure should feel intentional. A ruined castle implies danger or a past civilization. A cozy village suggests safety, at least initially. Scattered bones hint at previous adventurers who didn't make it. If you're not confident in building aesthetically, study builds on the Minecraft Block Search tool to understand which blocks work well together. Mixing texture types (smooth, rough, wood, stone) creates visual interest. Avoid using only one block type - that's the quickest way to make something look amateurish. You can also use custom textures and resource packs (which players can download separately) to completely change the visual feel of your map. A moody adventure plays differently with dark, muted colors than bright, vibrant ones. Designing Quests and Gameplay Mechanics This is where adventure maps stop being just pretty builds and become actual games. Command blocks are your tool here. They're honestly not as scary as they look. A simple setup: player enters an area, pressure plate triggers, command block runs `/say "You need a key to open this door"`. More complex setups can track inventory, teleport players, spawn mobs, or modify the world dynamically. If writing command syntax feels daunting, there are generators online that create the commands for you. You describe what you want in plain language, and the tool spits out the command block setup. Quest Types That Work Well Fetch quests ("bring me three diamonds") are simple but feel boring fast. Combat challenges ("defeat the mobs in this arena") are straightforward to design. Puzzle rooms ("arrange the colored blocks in the correct pattern") let players feel clever. The best adventure maps mix all three. A player solves a puzzle to unlock a treasure room, fights a mini-boss to earn a key, then uses that key to progress. Each challenge type breaks up the pacing. Item-based progression is powerful. If players need a wrench to open a door, and that wrench only appears after defeating the engineer mob, suddenly the map has a clear story. Use custom items (same block, renamed and modified) to create keys, weapons, or story props. Consider how you'll handle respawns and checkpoints. Should players restart from the beginning if they die, or respawn at the latest checkpoint? Casual players prefer checkpoints. Speedrunners love the extra challenge of a single-life run. Adding Polish and Testing The difference between an okay map and a great one is polish. This is where patience pays off. Test relentlessly. Play through your own map multiple times. Invite friends to test it (without spoiling the solutions). Watch how they interact with it. Do they miss obvious paths? Do puzzles take way longer than you expected? Do command blocks occasionally fail mysteriously? Fix the little things. If a jump is one block too wide, most players will rage quit. If a mob spawner isn't damaging players fast enough, the difficulty feels off. If text is hard to read, players will get frustrated. These details matter more than you think. Create a clear spawn point with instructions. Even veteran players benefit from knowing roughly what the map is about. A sign saying "Solve five puzzles to unlock the final chamber" sets expectations. An elaborate tutorial level teaches controls without feeling like a tutorial. Optimization and File Management Adventure maps get large. Optimize performance so the game doesn't lag. Use structure blocks to save complete buildings, making it easier to regenerate sections if you mess up. Keep backup copies - I've lost hours of work to accidental deletions. Before publishing, run Minecraft in single-player on a decent computer to make sure performance holds. Test on lower-end hardware if possible. A map that's unplayable due to lag is worse than a map that's less visually impressive. Export your map as a properly formatted file that other players can load. This usually means creating a resource pack and data pack (if you used custom commands), then bundling everything into a downloadable ZIP. If you want to track player progress or have multiple players on a server, check the Minecraft Server Status Checker to confirm your server environment is stable before hosting. Nothing kills an adventure map faster than servers crashing mid-experience. Community and Iteration Share your map on communities like Reddit's r/Minecraft or map-specific forums. Get feedback and iterate. The first version probably won't be perfect (honestly, mine weren't). Version 1.1 with bug fixes and balance tweaks is totally normal. Pay attention to what players say. If multiple people got stuck in the same spot, that's a design problem worth fixing. If everyone loved a specific puzzle, that's your design strength - lean into it for future maps. Common Mistakes to Avoid Scope creep is real. You start wanting a 30-minute adventure map and end up spending three months building a 400-block-wide castle. Set a finish line and stick to it. Don't rely on obscure redstone tricks that only experts understand. Your map should be beatable by players with average Minecraft knowledge. Complexity is fine; obtuse isn't. Avoid invisible command block spam that players can't see. If something magical happens, give players a visual or audio cue so they understand the game reacted to their actions. Test on multiplayer if you're designing for servers. Command blocks behave differently with multiple players, and lag becomes a real issue. Final Thoughts Building an adventure map is genuinely satisfying. You're creating something that other players will spend hours in, remember fondly, and potentially share with their friends. That's powerful. Start small. Build one good puzzle room instead of trying to create the next massive adventure. Share it, get feedback, then build on that success. Your second map will be significantly better than your first, and your tenth will be incredible. The best adventure maps come from creators who actually cared about the player experience, not from whoever had the biggest budget or most free time. Put thought into pacing, progression, and storytelling. Make something you'd actually want to play. --- ### Valence: Building Minecraft Servers with Rust URL: https://minecraft.how/blog/post/valence-rust-minecraft-servers Published: 2026-04-26 Author: ice GitHub · Minecraft community project valence (valence-rs/valence) A Rust framework for building Minecraft servers. Star on GitHub ↗ ⭐ 3,206 stars If you've ever wondered what it'd be like to build a Minecraft server from the ground up instead of modifying existing software, Valence gives you that chance. It's a Rust framework that treats a Minecraft server like a blank canvas, letting you write custom game logic without carrying around a ton of legacy code. What This Project Actually Does Valence is a framework for creating Minecraft: Java Edition servers entirely in Rust. Instead of extending Bukkit, Spigot, or Fabric (the usual paths), you're working with a from-scratch implementation powered by Bevy ECS, an entity-component system game engine. Think of it like this: most Minecraft server software started by copying the original game and patching plugins on top. Valence starts with nothing and you add only what you need. The project handles the Minecraft protocol layer for you - networking, authentication, encryption, compression. It doesn't dictate gameplay. You could build a parkour minigame server, a creative-building sandbox, a role-playing world, or something that barely resembles vanilla Minecraft. The framework gets out of your way and lets you define the rules. Why You'd Actually Want This Most Minecraft server creators reach for Spigot or Paper because they're familiar and have ten thousand plugins. That makes sense if you want vanilla gameplay with some tweaks. But if you're building something custom - especially minigame servers or highly unusual game modes - you're fighting an uphill battle. You're disabling vanilla mechanics, fighting with plugin conflicts, and dealing with performance compromises from features you'll never use. GitHub project card for valence-rs/valence With Valence, you skip all that friction. Since you're writing Rust directly, you get: Explicit control over what runs on your server (no bloat) Strong type safety that catches bugs at compile time instead of runtime Access to Bevy's plugin ecosystem for extending functionality Potential for extremely efficient resource usage - Valence is designed to support thousands of players simultaneously on reasonable hardware This is also a smart choice if you're experimenting with novel server architectures or want to understand the Minecraft protocol deeply. You're not learning how to work around someone else's decisions; you're learning how the protocol actually works. Getting Started with Valence You'll need Rust installed. If you don't have it, grab it from rustup.rs. Valence Rust framework logo with Minecraft server interface in background bashcurl - proto '=https' - tlsv1.2 -sSf https://sh.rustup.rs | sh Next, create a new Cargo project: bashcargo new my_minecraft_server cd my_minecraft_server Add Valence to your Cargo.toml: toml[dependencies] valence = "0.1" bevy = { version = "0.14", default-features = false } The Valence GitHub repository includes examples that show off basic server setup. One learning curve is real though - you're not clicking toggles in a GUI. You're reading Rust and understanding how entities, chunks, and players interact in the ECS model. Plan on spending time with the documentation and examples before your first working server. Features That Actually Matter Authentication and security are built in. Valence handles the Minecraft login sequence (including Mojang's session servers if you want online mode) and encryption automatically. You don't get to accidentally skip TLS or accept invalid logins. The framework makes it hard to do the wrong thing. Valence Rust framework logo with Minecraft server interface in background The protocol abstraction is full. Chunk rendering? Handled. Block states? Covered. Entity metadata, particles, inventories, dimensions, biomes - it's all there. The project includes a Fabric mod that extracts Minecraft's data (block properties, item types, etc.) and generates Rust code from it. You're not hardcoding Minecraft's rules; you're letting the framework generate them. There's built-in support for spatial queries. Want to find all entities within a 50-block radius? The framework uses a bounding volume hierarchy to do that efficiently, not a naive search. For servers with lots of entities this matters. Player skins render correctly. Whitelistings work. Multiple worlds and dimensions are supported. If you've ever run a server, you know these aren't small features - they're foundational pain points on every platform. What You Should Know Before Diving In Valence is early in development (version 0.1.0). Breaking changes happen. Features are incomplete. You might hit gaps where the framework doesn't quite do what you need yet, forcing you to work around something or contribute back. That's the tradeoff with fresh projects - less polish, but more flexibility to shape where it goes. Valence Rust framework logo with Minecraft server interface in background The Rust learning curve matters. If you've never written Rust, Valence is a steep entry point. The compiler is strict in ways that feel annoying until you realize it's catching entire classes of bugs. But the initial friction is real. Deployment is different from traditional Minecraft hosting. You're building a binary, not running a Java JAR on existing infrastructure. That actually simplifies things in some ways (no JVM tuning, lower memory overhead) but complicates things in others (you need to compile for your target architecture, manage Rust dependencies). Actually, here's something worth noting: if you're building a server for thousands of players, Valence's efficiency is a huge advantage. You won't necessarily need the same beefy hardware a Paper server would need. But if you're hosting 20 friends, this advantage doesn't matter. Pick the right tool for your scale. Integrating with Your Server Ecosystem If you're running a production Minecraft server, you probably use tools like server status checkers to monitor uptime and player counts. Valence can expose these metrics through standard monitoring APIs. There's also proxy support - you can sit Valence behind Velocity or Bungeecord, letting players connect through a proxy layer for smooth server-hopping. For administrative tasks like managing whitelists, you can integrate with standard tools. Many communities use whitelist creation utilities to streamline onboarding. Valence's modular design means you can build these admin features as plugins. How Valence Compares If you're debating between Valence and something like Paper, you're asking different questions. Paper is "how do I add features to vanilla Minecraft?" Valence is "what if I built a server from scratch?" They're not competitors; they're different choices for different goals. Against Velocity (a proxy), Valence isn't a replacement - it's a backend. Velocity handles routing players between servers; Valence handles individual servers. There are other Minecraft server frameworks in Rust (like Feather), but Valence's use of Bevy ECS and its focus on being a proper game engine framework (rather than just a protocol implementation) sets it apart. You're not just getting server code; you're getting a foundation for building complex game systems. Is This Worth Your Time? Valence makes sense if: You're building a custom minigame or novel game mode that fights vanilla server software You want to understand how Minecraft servers actually work You're comfortable with Rust and want to use its safety guarantees You need extreme efficiency for high player counts It doesn't make sense if you just want to run vanilla with a few plugin tweaks. Reach for Paper for that. The community around Valence is small but active. That maintainers are responsive. If you're considering this, join the Discord and see what others are building. Real projects are happening - people are shipping minigame servers on top of Valence and sharing what they learn.valence-rs/valence - MIT, ★3206 Where to go from here Read the source on GitHub (docs, examples, and the issue tracker) Browse open issues to see what the community is working on Check recent releases for the latest build or changelog --- ### Testing Minecraft Plugins Gets Easy With run-task URL: https://minecraft.how/blog/post/run-task-minecraft-plugin-testing Published: 2026-04-26 Author: ice jpenilla/run-task Gradle plugins adding tasks to run Minecraft server and proxy software pache-2.0 If you've built a Minecraft plugin and tested it locally, you know the dance: download the server jar, set up directories, place your plugin in plugins/, hit start, wait for initialization. Every single time. run-task eliminates that repetitive setup with a single Gradle command that handles everything automatically. What run-task Actually Does run-task is a suite of Gradle plugins that automate one of the most tedious parts of Minecraft plugin development: integration testing. Instead of manually downloading server software, configuring it, and placing your compiled plugin in the right folder, you define what version you want and run a command. The plugin handles the download, setup, and launch automatically. There are three main variants. run-paper handles Paper servers (the go-to choice for most devs), run-velocity covers Velocity proxy software, and run-waterfall covers Waterfall proxies. Each operates on the same principle: configure once in your build.gradle.kts, then use a simple task to spin up your testing environment. This might sound like a small convenience. When you're iterating on a plugin and testing dozens of times a day, the time savings compound fast. Why Plugin Developers Actually Need This Testing a Minecraft plugin is fundamentally different from testing a regular Java library. You can't just run unit tests and move on. Your code runs inside the Minecraft server, interacts with game state, manages player events, and relies on APIs that change between versions. That's integration testing territory, and there's no way around it. Without run-task? The workflow is painful. Download Paper 1.21.8, extract it, create plugins folder, build your jar, copy it over, run the server script, wait for startup, connect with a client, test your feature, shut down, change code, repeat. Do this fifty times while developing a feature and you've lost hours to pure boilerplate. Speed matters here. run-task removes that friction completely. Modify your code, run gradle runServer, and your plugin is already loaded within seconds. This is especially valuable when testing multiple Minecraft versions - switch versions in your config and re-run without manual setup. Getting Started with run-task Installation is straightforward. Add the plugin to your build.gradle.kts and specify the version you want to run: kotlinplugins { id("xyz.jpenilla.run-paper") version "3.0.2" } tasks { runServer { minecraftVersion("1.21.8") } } That's all you need. run-task automatically detects your plugin's compiled jar and includes it. If you're using shadowJar to bundle dependencies, it'll use that instead - no manual configuration. To launch: bashgradle runServer Your Paper server starts with your plugin already loaded and ready for testing. The first run takes longer while downloading everything, but subsequent runs are much faster with cached server files. For Velocity proxy testing, setup is almost identical: kotlinplugins { id("xyz.jpenilla.run-velocity") version "3.0.2" } tasks { runVelocity { velocityVersion("3.4.0") } } The plugin handles version compatibility automatically, so you can test against snapshot releases or stable versions without worrying about compatibility layers. What Makes run-task Worth Using The best feature is brutal simplicity. run-task doesn't try to be clever - it downloads the specified server software, detects your plugin jar, and runs it. Fewer moving parts means fewer things break. GitHub project card for jpenilla/run-task Automatic shadowJar detection is genuinely useful if you're bundling dependencies. Many plugins need to shade libraries for custom data formats or newer APIs. run-task respects that without extra configuration. Version switching is dead simple. Want to test on 1.20.4, 1.21.1, and the latest snapshot? Change one line and re-run. Regression testing becomes way less painful. And if you're building tools for server admins (like testing Votifier voting systems or experimenting with custom server MOTDs), having quick access to a running server is invaluable. One detail worth noting: run-task respects Gradle subproject structure. If you're organizing plugin code across multiple modules, it figures out the correct jar automatically. That's less trivial than it sounds. Common Gotchas and Things to Know First gotcha: run-task downloads server software to your.gradle cache - usually ~/.gradle on Linux/Mac, %USERPROFILE%\.gradle on Windows. If you're short on disk space or dealing with a slow connection, the first run takes a minute or two. It's worth it, but expect that initial wait. Java version matters. Paper and Waterfall generally need Java 21 or higher, while older Velocity versions might work with Java 17. If you're using a version manager like sdkman, make sure the correct version is active before running. There's also a learning curve with Gradle syntax if you're new to it. run-task uses Kotlin DSL (build.gradle.kts), which is more type-safe than Groovy but steeper for beginners. If you're still on build.gradle syntax, converting is usually straightforward. Actually, here's something that trips people up: run-task assumes you're testing a single plugin in isolation. If you're building something that requires multiple servers running simultaneously (like a proxy setup with multiple backends), you'll need to orchestrate that separately. It's not a limitation of the tool, just its design philosophy. When run-task Isn't the Right Choice run-task is excellent for plugin development. It's not a one-size-fits-all solution. If you're building a full server distribution with custom configs, startup scripts, and multiple plugins, you probably want Docker or a manual setup instead. run-task assumes you're testing a single plugin in isolation. For integration testing across multiple server software types simultaneously, you'd want more sophisticated orchestration - maybe Docker Compose or a custom test harness built into your CI/CD pipeline. Heavy testing of server administration workflows (monitoring, backups, cluster management) might be better served by a full server environment with proper persistence rather than run-task's temporary setups. Most plugin developers will find run-task covers 90% of their testing needs.jpenilla/run-task - Apache-2.0, ★341 Support the project run-task is maintained by the open-source community. If it saved you time or powered something cool, leave a ⭐ on the repo, report bugs, or contribute back. Small actions keep tools like this alive. --- ### ChestShop-3: Build Minecraft Server Shops in Minutes URL: https://minecraft.how/blog/post/chestshop-3-server-shops-minecraft Published: 2026-04-26 Author: ice GitHub · Minecraft community project ChestShop-3 (ChestShop-authors/ChestShop-3) ChestShop - the chest & sign shop plugin for Minecraft Servers running Bukkit/Spigot/Paper Star on GitHub ↗ .1 Sick of managing server economy by hand? ChestShop-3 lets players create shops from chests and signs, turning your server into a real marketplace. Install it once, configure Vault or Reserve, hook it to an economy plugin, and you've got a fully functional trading system that runs itself. What This Project Does At its core, ChestShop-3 is elegantly simple. A player places a chest, puts a sign above it with shop details (price, quantity, seller), and boom - instant transaction point. Other players click the sign and the trade happens automatically. The chest contents move to the buyer, the money goes to the seller. No NPCs, no command spam, no admin micromanagement. The plugin handles the boring stuff. It protects shops from theft, prevents lag explosions when shops get busy, enforces permissions, and logs transactions. It's been battle-tested across thousands of servers for years, so the architecture is genuinely solid. Version 3.12.2 (the latest release) runs on Minecraft 1.13 through recent versions, with development builds available for latest releases. The codebase is written in Java and maintained actively on GitHub by the ChestShop author community. Why You'd Actually Use This Player-run economies are what separate vanilla servers from real communities. When players trade with each other instead of relying on admin shops, they get invested. They build farm bases to supply crops, establish price wars over diamonds, form merchant guilds. So this plugin is the scaffolding that makes that social layer possible. Small survival servers especially benefit. You want players to interact without plugins becoming overhead. ChestShop does one thing and does it right. If you're running a creative or competitive server where economy matters, this is how you let players own the marketplace. And if you're setting up a new server, you might want to use our Minecraft Whitelist Creator while you're building out your server config and Minecraft MOTD Creator to make your server discoverable. Getting It Running Installation is genuinely straightforward. You'll need three things: ChestShop itself, Vault or Reserve (a permission bridge plugin), and an economy plugin that provides the currency system. Grab the.jar from the GitHub releases page: bashcd ~/minecraft-server/plugins wget https://github.com/ChestShop-authors/ChestShop-3/releases/download/3.12.2/ChestShop.jar Then install Vault from SpigotMC if you don't already have it (most servers do). Then pick an economy plugin - the project maintains a list of compatible options on their SpigotMC wiki. Restart the server. ChestShop generates its config file automatically on first load. You'll want to tweak a few settings - transaction tax rate, whether to allow shops in protected areas, which blocks count as valid shop signs - but the defaults work fine for most servers. And that's it. Players can start building shops immediately. No admin setup beyond that. Features Worth Knowing About Shop Protection. Players own their shops. Someone else can't waltz up and crack open a shop chest or modify the sign. The system respects who created the shop and prevents griefing. This matters because on public servers, trust is fragile. Partial Transaction Support. If a player wants to buy 32 diamonds but the shop only has 20, they can still complete the trade for 20 at the proportional price. Recent versions fixed some quirks with this - the 3.12.2 release patched edge cases where transactions would fail. Real quality-of-life stuff. Admin Shop Control. You can create server-run shops that never run out of stock, selling items at fixed prices. Use this to seed the economy with basic materials or create currency sinks. It's how most servers bootstrap their trading system. Translation Support. The project has crowdsourced translations in a dozen languages, including Ukrainian, Italian, German, Spanish. If your international community needs localization, it's there. Multi-Plugin Compatibility. It integrates with land claim plugins, region protection systems, and other popular server tools. It's not trying to reinvent the wheel on everything - it plays nice with existing ecosystems. What'll Probably Trip You Up First thing: you absolutely need Vault or Reserve configured properly. I've seen servers install ChestShop, forget the permission bridge, and wonder why shops don't work. No Vault, no economy connection, no transactions. Check that dependency before you blame the plugin. Second, make sure your economy plugin actually works before you introduce shops. If money is broken, shops cascade that brokenness. Test your economy in isolation first. Third, shop sign placement is specific. The sign has to be directly above a chest (or double chest). Some players try to place signs next to chests and get frustrated when nothing happens. You might want to document this when you onboard new players. Also, item names matter. Minecraft updates occasionally change internal item IDs and data values. When you update the server, ChestShop tries to auto-convert items to the new format, but going backwards (downgrading server or plugin versions) can cause issues. Always back up before major updates. What Else Is Out There ShopGUIs and similar projects exist if you want a more menu-driven experience instead of chest-and-sign shops. Some admins prefer the aesthetics and simplicity of click-to-open GUIs. QuickShop is another player-shop plugin that's actively maintained and popular on modern 1.18+ servers. It's lighter weight than ChestShop and has a different feature set. But if you want the classic chest-shop experience that just works, ChestShop-3 is still the standard. 296 stars on GitHub, thousands of servers running it, years of real-world testing behind it. That's not nothing.ChestShop-authors/ChestShop-3 - LGPL-2.1, ★296 Ready to try ChestShop-3? Grab the source, read the full documentation, or open an issue on GitHub. Star the repo if you find it useful. It helps the maintainers and surfaces the project for other Minecraft players. Visit ChestShop-authors/ChestShop-3 on GitHub ↗ --- ### Mcman: Manage Your Minecraft Server Like Code in 2026 URL: https://minecraft.how/blog/post/mcman-minecraft-server-manager Published: 2026-04-26 Author: ice " Powerful Minecraft Server Manager CLI. Easily install jars (server, plugins & mods) and write config files. Docker and git support included." deniz-blue/mcman · github.com .0 Tired of manually downloading plugins, hunting for the right server version, and crossing your fingers that your mod list doesn't break? Mcman treats your Minecraft server like a code repository - everything in one config file, automatic downloads, git-friendly, and surprisingly efficient. What This Project Actually Does Mcman is a command-line tool written in Rust that handles the tedious parts of running a Minecraft server. Instead of hunting links, copy-pasting JAR files, and manually editing config files, you describe what you want in a single server.toml file - your server version, plugins, mods, configurations - and mcman handles the rest. It downloads everything, verifies file integrity, and keeps things organized. The magic part? You can version control this entire setup with git. Add a plugin, update your TOML, commit it, push it. Your teammates can pull the changes and mcman will fetch everything they need. No more "wait, what version of X are we using?" confusion. (Actually, this works for managing whole networks too with a network.toml if you're running multiple servers.) Why You'd Actually Use This First, there's the obvious case: if you're running a custom server network, Mcman saves ridiculous amounts of time. I've seen server admins spend hours managing plugin versions across 5+ servers. Mcman cuts that down to a few commands. Update once, deploy everywhere. But there's a subtler reason. If you're testing different plugin combinations or experimenting with new modpack setups, Mcman lets you branch, experiment, and roll back cleanly - just like code development. Your main branch stays stable while you test features on a development branch before merging. You'll also appreciate this if you've ever wanted to share a server setup with a friend or colleague. Send them the repo, they run mcman run, and they've got your exact configuration. No more "wait, did you use CraftBukkit or Spigot?" arguments. Getting Started with Installation Getting mcman running is straightforward. On Linux and macOS, just grab the latest binary from releases: bashcurl -L https://github.com/deniz-blue/mcman/releases/download/0.4.5/mcman -o mcman chmod +x mcman./mcman - version Windows users can either grab the .exe from the releases page, or use Scoop if you've got it set up: powershellscoop bucket add minecraft https://github.com/The-Simples/scoop-minecraft scoop install mcman Linux users on Arch can install from AUR with yay -S mcman-bin or paru -S mcman-bin. Once installed, you initialize a new server: bashmcman init This walks you through creating your server.toml - pick your Minecraft version, server type (Paper, Spigot, Purpur, etc.), and you're rolling. Then mcman run starts your server, and mcman dev is the interesting one - it watches for changes and hot-reloads your server without full restarts. What Makes This Stand Out Actual config file support. Most server managers download the JAR and hope you figure out the rest. Mcman lets you manage server.properties, plugins' YAML files, and custom configs all in one place, with variable substitution. Change one setting across 10 files? You're not copy-pasting into each one. GitHub project card for deniz-blue/mcman Works with nearly every source. Modrinth, CurseForge, Hangar, Spigot, GitHub releases, Jenkins, Maven repositories - if a plugin or mod lives there, mcman can pull it. Need something custom? Just throw in a direct URL. Docker ready. Building a containerized Minecraft setup? Mcman plays nice with Docker containers. Generate a Dockerfile, use mcman inside it, ship it out. Git integration that actually works. This isn't just "oh you can version control your configs" - it's properly thought through. Worlds stay as zips in worlds/, plugins are locked to specific versions in the manifest, everything is reproducible. And if you need to fine-tune your server settings, our Server Properties Generator makes that process faster. The project sits at 304 stars on GitHub and is actively maintained. Rust performance means it's actually fast, which matters when you're managing multiple servers. Things to Watch Out For One thing that catches people: the rewrite happening on the v2 branch is substantial. If you're deploying something for a community, stick with the stable 0.4.5 release. Check the Discord (linked on the repo) for updates on v2 progress before committing to it. Config variables are powerful but require you to actually write them correctly. Typos won't always fail loudly - you'll just get weird behavior at runtime. Read the docs on variable syntax before you get frustrated. Also, if you're setting up shared servers, remember that Mcman's strength is in reproducibility - but that means everyone on the team needs to understand TOML syntax and git basics. It's not a GUI tool. One more caveat: I'd recommend using this for server management workflow, not as a complete hosting solution. Mcman handles the setup and deployment bits beautifully, but you still need your own server hardware, hosting, or custom Docker orchestration. For calculating how to properly organize your world coordinates (especially if you're working across dimensions), check our Nether Portal Calculator. Other Tools and Approaches There are other paths if Mcman doesn't fit your needs. Paper's plugin ecosystem handles some of these problems, but it's more limited in scope - no git workflow. Docker has its own learning curve but works well for container-first teams. Hosting platforms handle deployment for you, though you lose flexibility. Mcman sits in a nice middle ground: powerful enough for serious server operations, simple enough that one admin can handle it, and flexible enough to scale up. The Bottom Line Mcman isn't flashy. It's a command-line tool that makes running Minecraft servers boring in the best way possible - you spend your time building worlds and running your community, not wrestling with configuration files. If you're currently managing Minecraft servers and copying files around manually, this is worth thirty minutes of your time to evaluate. The project's on GitHub, the documentation is solid, and the Discord is active if you get stuck. Where to go from here Read the source on GitHub (docs, examples, and the issue tracker) Browse open issues to see what the community is working on Check recent releases for the latest build or changelog --- ### CobolCraft: Running a Minecraft Server in COBOL URL: https://minecraft.how/blog/post/cobolcraft-minecraft-cobol-server Published: 2026-04-26 Author: ice GitHub · Minecraft community project CobolCraft (meyfa/CobolCraft) A Minecraft server written in COBOL Star on GitHub ↗ Ever wondered what it would take to build a Minecraft server from scratch in a 60-year-old programming language? CobolCraft does exactly that. It's a fully functional Minecraft server written in COBOL that supports Minecraft 1.21.4, and somehow, it actually works. What's CobolCraft Anyway? CobolCraft is what happens when someone decides to implement a Minecraft server not in Go, Rust, or Java, but in COBOL (Common Business Oriented Language). If that sounds absurd, it kind of is. But it's also genuinely impressive. This isn't a joke project either. CobolCraft implements real Minecraft server features: infinite terrain generation, multiplayer support with configurable player limits, persistent world and player data, crafting (both 2x2 and 3x3), item entities, chat, commands, fall damage, and respawning. You can connect with a standard Minecraft client and play legitimately. The project has 690 GitHub stars and is licensed under MIT, meaning you can fork it, study it, or contribute. The maintainer clearly put serious work into this, and the fact that it runs at all speaks to both their skill and COBOL's surprising capability for complex systems. Why Would Anyone Do This? This is the question everyone asks. The honest answer: because they could. But there's more to it. COBOL is often dismissed as a dinosaur language, but it's still running critical banking and government systems. It's verbose, yes, and its syntax feels alien to modern developers, but it's also incredibly stable and battle-tested. CobolCraft is a proof of concept that COBOL can handle non-trivial software challenges, even in 2026. It's a middle finger to the "COBOL is dead" crowd. For most players? This isn't a replacement for your go-to multiplayer server. It's a educational curiosity, a technical achievement, and a fascinating exploration of what's possible when you ignore conventional wisdom and just build something weird. Getting CobolCraft Running If you want to try it, you've got two paths: native Linux or Docker. Linux Setup CobolCraft targets Linux on x86_64 or arm64 architectures. You'll need: GnuCOBOL 3.1.2 or later (3.2+ is recommended for performance) make, gcc, g++, and zlib development headers curl (to download the official Minecraft server jar) Java 21 or later (to extract game data from the jar) On Debian or Ubuntu, most of this is straightforward: bashsudo apt-get install gnucobol make gcc g++ zlib1g-dev curl default-jre-headless Then clone the repository and build it: bashgit clone https://github.com/meyfa/CobolCraft.git cd CobolCraft make - jobs=$(nproc) make run The build process downloads the official Minecraft server jar, extracts block and recipe data, and compiles everything. First run creates a `server.properties` file with defaults. The server listens on localhost:25565 by default, which means you can only connect from your own machine. To make it accessible from outside (on your network, via VPN, or from a rented server), you'll need to edit the properties or adjust your network setup. Docker Route Prefer containers? Pull the pre-built image: bashdocker pull meyfa/cobolcraft:latest docker run - rm - interactive - tty \ - publish 25565:25565 \ - volume "$(pwd)/server.properties:/app/server.properties" \ - volume "$(pwd)/whitelist.json:/app/whitelist.json" \ - volume "$(pwd)/world:/app/world" \ meyfa/cobolcraft This is cleaner if you don't want to install GnuCOBOL and all its dependencies locally. The volumes let you persist configuration and world data between container runs. Configuration and Features That Work CobolCraft's `server.properties` file handles the basics. You can set the server port, world name, max players (up to 100), message of the day, and enable a whitelist if you want to restrict who joins. On the gameplay side, here's what's solid: terrain generation and chunk loading actually work. You can mine blocks, place blocks, break blocks, and they all use Minecraft's real loot tables. Crafting works in both the 2x2 inventory grid and the 3x3 crafting table. You can chat, run commands, pick up items, store them in your inventory, and interact with certain blocks like doors and trapdoors. Some blocks are fully implemented: torches, slabs, stairs, rotated logs and pillars, buttons, doors, trapdoors, beds, and signs. More complex blocks with multiple states or special interactions aren't there yet. Redstone? Nope. Pistons? Not really. Some orientation-dependent blocks partially work, but don't expect full parity with vanilla Minecraft. Physics is extremely basic. Falling damage and void damage work, and you'll respawn properly. But collision detection is simplistic, and you won't experience the kind of smooth movement mechanics you get from Java Edition. It's enough to play, but you'll notice the difference. If you want to build something interesting, you can. If you're expecting to run a survival server for 50 people mining Netherite, you'll be disappointed. But for a small group building with basic blocks and exploring a generated world? Absolutely feasible. Real Talk: The Limitations CobolCraft works, but it's not Spigot or Paper. Blocks with complex behavior require mountains of specialized COBOL code. Many interactive features are missing. Performance on massive builds hasn't been tested at scale. The project is clear about what it supports and what it doesn't, which is refreshing honesty. Also worth noting: this is built with GnuCOBOL, which compiles to C. That means it's dependent on GnuCOBOL's maturity and the underlying C compiler's performance. Version 3.2+ is recommended because earlier versions had performance issues. If you're running on an underpowered machine or planning to host 100 concurrent players, your mileage may vary. The whitelist is persistent (stored in JSON), which is nice. Configuration is straightforward. But if you find a bug in the server logic, you're reading COBOL to fix it. That's not ideal unless you actually know COBOL, which most modern developers don't. When You Might Actually Use This Genuinely? Probably not for serious gameplay. It's a novelty, but a well-executed one. Where it shines: education. If you're teaching systems programming, language design, or distributed systems, CobolCraft is a perfect case study. It shows what's possible with unusual tool choices and demonstrates that language age doesn't equal inability. It's also great for anyone learning COBOL who wants a real-world project to study. It's also just fun to say you've run a Minecraft server in COBOL. That's a conversation starter at any tech meetup. If you're building a Minecraft hub or creative world with a small group and want something unusual to host, it could work. Just manage expectations. Stick to basic building blocks, keep player counts low, and avoid trying to recreate complex redstone contraptions. And before you invest time, maybe read through the project's GitHub Issues to see what's currently broken or planned. For everything else, there's Paper, Spigot, or a cloud hosting provider running vanilla Java Edition. Getting More Out of Your Server Once you've got a CobolCraft server running and you're exploring your generated world, you might want to enhance your Minecraft experience elsewhere. The Minecraft Skin Creator on Minecraft.How lets you design custom player skins before you jump in. And if you're curious about specific blocks you're mining or placing, the Minecraft Block Search tool is a quick way to look up properties and crafting recipes. These aren't CobolCraft-specific, but they're useful tools for any Minecraft player. Bottom line: CobolCraft is a genuinely impressive technical achievement that proves COBOL isn't just a relic. It's not going to replace your favorite multiplayer server, but it's worth understanding as a proof of concept. And if you're bored with conventional Minecraft hosting options, it's a wild experiment to try. Ready to try CobolCraft? Grab the source, read the full documentation, or open an issue on GitHub. Star the repo if you find it useful. It helps the maintainers and surfaces the project for other Minecraft players. Visit meyfa/CobolCraft on GitHub ↗ --- ### How to Use the Minecraft Smithing Table URL: https://minecraft.how/blog/post/smithing-table-netherite-upgrade Published: 2026-04-26 Author: ice The smithing table is how you upgrade diamond gear to netherite, the game's most durable material. It's a simple but essential crafting station that transforms your best diamond tools into something even tougher. Here's exactly what you need to know. What Does the Smithing Table Actually Do? There are two types of smithing tables in Minecraft 26.1.2: the regular smithing table (for upgrades and tool repairs) and the netherite smithing table in the Nether. The regular one sits in your base and handles diamond-to-netherite conversions. It takes a diamond item and a netherite scrap, combines them, and spits out a netherite version with all the same enchantments you had. Why does this matter? Netherite doesn't burn in lava. It won't despawn when you die. It's also harder to break than diamond, which is the real reason you're here. The biggest detail people miss: enchantments transfer over. Your flame bow, your mending boots, your silk touch pickaxe - they all keep their magic when upgraded. How to Find or Craft Your Smithing Table You can't craft a smithing table from scratch in survival mode. Instead, you loot them from villages. Every village has a toolsmith's workplace, which contains a smithing table you can break and grab. It takes a pickaxe (any tier) and drops itself as an item. If you're playing on a server with limited villages nearby, that old crafting recipe doesn't work anymore. Actually, let me correct that: in modern versions, you find them in villages or use creative mode. The crafting recipe was removed years ago. Easiest move? Find a village. Break it from the toolsmith's area. Done. The Actual Upgrade Process: Diamond to Netherite Now for the core mechanic. Place your smithing table in your base (or keep one portable in the Nether). Open it. You'll see two input slots and one output slot. Put your diamond tool or armor in the left slot Put a netherite scrap in the right slot The upgraded netherite item appears on the right Take it and repeat That's literally it. One diamond item plus one netherite scrap equals one netherite item. The process is instant, no XP cost, no fuel needed. One caveat: the smithing table doesn't combine partial stacks or multiple items at once. You're upgrading one piece of gear at a time. If you've a full diamond set (helmet, chestplate, leggings, boots, sword, pickaxe, axe, shovel), that's eight separate upgrade operations. Where to Find Ancient Debris and Netherite Scrap This is the bottleneck. Netherite doesn't exist as an ore block. Instead, you hunt ancient debris in the Nether, smelt it into netherite scrap, then combine four scraps with four gold ingots in a crafting table to get one netherite ingot. Two ingots craft into netherite blocks, or you can use them directly in the smithing table. Ancient debris spawns between Y-level 8 and 119 in the Nether, but it's rarest around Y-level 15. The best strategy is branch mining at Y-level 15, clearing 2x1 tunnels in a grid pattern. You'll find clusters of 1-3 blocks scattered around. Expect to mine for 20-30 minutes to collect enough for a full diamond set upgrade (8 ingots needed, so 32 ancient debris blocks minimum). Take a Fortune III pickaxe if you've one - it doesn't increase ancient debris drops, but it helps with efficiency. Here's a tip: bring a water bucket and wear fire resistance gear. The Nether has lava everywhere, and ancient debris often sits next to it. Pro Tips for Efficient Upgrades Save your ancient debris runs for when you have a full diamond kit ready. Mining for single scraps is tedious. Gather enough for 8-10 ingots before heading back to your smithing table. You'll feel the progress better that way. Stock multiple smithing tables if you're in a multiplayer server. One table can only do so much, and upgrades are instantaneous, so there's no performance cost to having extras lying around. If you're hunting for ancient debris locations, use the Minecraft Block Search tool to track spawns if you're playing on a server with it available. For vanilla survival, just branch mine like normal. Netherite is permanent. Once you upgrade, you're not going back. So don't rush upgrades for PvP gear or stuff you're still testing. Prioritize your main tools: pickaxe, sword, and armor set first. Common Mistakes That Cost You Time Don't smelt ancient debris without a clear plan. If you're grinding for upgrades, stockpile the raw blocks first, then smelt in batches. Some players waste focus by smelting one at a time and forgetting what they're upgrading. Ancient debris smelting requires a furnace or blast furnace (blast furnace is faster). It yields one netherite scrap per block. You then combine four scraps with four gold ingots to make one netherite ingot. This two-step process trips people up. And here's the real one: don't lose your gear before upgrading it. A lot of players die in the Nether carrying ancient debris because they're impatient. Get home, process it, upgrade it safely, then take the netherite back out if you need it for mining more. Server Admin Quick Note If you're running a server and need to manage DNS records for your Minecraft server, check out the Free Minecraft DNS tool. It's handy for keeping your server accessible without paying extra hosting fees. Netherite upgrades are a late-game achievement. Getting a full set means you've already survived the Nether multiple times, gathered tons of ancient debris, and earned it. That's the point. There's no shortcut to netherite (except creative mode), and that's by design. --- ### Epic Fight Mod: How to Add Soulslike Combat to Minecraft URL: https://minecraft.how/blog/post/epicfight-soulslike-minecraft-mod Published: 2026-04-26 Author: ice GitHub · Minecraft community project epicfight (Antikythera-Studios/epicfight) Epic Fight - A soulslike minecraft mod, adding lots of game mechanics, features, and game changing things for you to discover in your adventures ! Star on GitHub ↗ .0 Tired of vanilla Minecraft combat feeling too simple? Epic Fight transforms every encounter into a skill-based duel with dodges, special attacks, and fluid animations that'll make you rethink how to play survival mode. What This Project Does Epic Fight is a Java mod that rewrites how Minecraft's combat system works. Instead of the vanilla click-and-wait pattern, you get dynamic fighting styles, timing-based attacks, and enemy mechanics that actually react to what you're doing. Enemies don't just stand there soaking damage anymore. They dodge. Most counter. The adapt. The mod draws inspiration from soulslike games - think Dark Souls dodge rolls and attack recovery windows - but keeps the core Minecraft experience intact. You can toggle Epic Fight's mechanics on or off if you want to fall back to vanilla combat for specific situations (mining, casual building). It's a major overhaul, but one that gives you control. Why You'd Use It If vanilla survival feels stale, this is the fix. Combat becomes the centerpiece of gameplay again instead of just an interrupt between mining sessions. Mobs become genuinely dangerous, which means resource gathering matters more, planning routes around hostile spawns becomes tactical, and defeating even basic skeletons requires actual attention. For servers, it creates natural difficulty progression without turning up a simple difficulty slider. New players get challenged, veterans get entertained. And if you're someone who loves Minecraft's combat balance but wanted just a little more depth, Epic Fight adds that without turning things into a rhythm game. Server owners often pair this with listing on a Minecraft server list to attract players looking for a more engaging experience. The added combat depth becomes a selling point. How to Install Epic Fight requires Forge (the mod loader) and works with recent Java editions. Here's the basic process: Step 1: Install ForgeHead to forgemc.net and download the Forge installer for your Minecraft version. Run it and select "Install client." This sets up the mod loading infrastructure. Step 2: Get the Mod FileDownload Epic Fight from CurseForge or Modrinth - both host the latest versions. Grab the version matching your Minecraft edition. Step 3: Place It in Your Mods FolderDrop the downloaded.jar file into your .minecraft/mods/ folder. On Windows, that's usually %appdata%\.minecraft\mods\. On Mac, ~/Library/Application Support/minecraft/mods/. On Linux, ~/.minecraft/mods/. Step 4: Launch and Check DependenciesStart the game through the Forge launcher profile. Epic Fight might ask for additional mods (dependencies) on first load. Follow the prompts and restart. This usually just means grabbing a library mod that Epic Fight needs to function. That's it. If you're not sure whether it's working, press R in-game (the default toggle key) and you'll see an indicator showing whether Epic Fight mode is active. Key Features in Action Dynamic Attack AnimationsThis is what makes Epic Fight feel different. Attacks aren't instant. When you swing, there's a wind-up, a strike, and recovery. You can't just spam-click your way to victory. Timing matters. Stamina matters. You'll notice mobs don't just ragdoll either - skeletons actually recoil from hits, creepers shuffle closer, and armored mobs block effectively. Dodging and MobilityHold Left Alt (configurable) and a direction to dodge out of harm's way. Unlike vanilla Minecraft, this actually consumes a resource (stamina) and has a cooldown, so you can't just spam invulnerability. Combat becomes about reading attack patterns and choosing when to dodge. Weapon-Based Fighting StylesDifferent weapons handle differently. Swords are fast and precise. Axes are slow but heavy-hitting. Spears have longer reach. This gives you reason to actually think about what to carry, not just grab whatever has the best damage number. Some weapons get special abilities too - charged attacks, ground pounds - depending on what you're holding. Enemy AI OverhaulVanilla mobs get new brains. Zombies don't just shuffle straight at you anymore; they dodge your attacks. Skeletons back away when you close in. Wither skeletons are legitimately threatening because they'll block and counter. This sounds simple, but it changes how you approach every fight. Health and Armor RebalancingThe mod adjusts health pools and armor effectiveness to match the new combat pacing. Fights take longer, but feel more dynamic. You're not one-shotting things anymore. That means every engagement needs strategy. Tips and Common Gotchas The biggest learning curve is just understanding the pacing. If you jump in expecting vanilla combat, you'll die to the first skeleton and think something's broken. It's not - you're just playing differently now. Take fights slow. Learn enemy patterns. Use your dodges. Stamina management trips people up. You've a stamina bar that depletes when attacking, dodging, or sprinting. If it empties mid-combat, you're slow and vulnerable for a moment. Don't go all-in every fight. Some players find the animations feel clunky at first. That's normal. Give it a dozen fights and it'll click. The animations exist because timing is now part of the system, not just visual fluff. If you're running on a lower-end machine, Epic Fight can impact performance because all those animations and AI improvements have overhead. You might need to adjust render distance or chunk loading distance if you notice frame drops. One common mistake: forgetting that Epic Fight mode can be toggled. If you want vanilla combat temporarily (maybe for mining or building), press R. Some players disable it entirely for creative mode or casual building sessions, then turn it back on for survival. Similar Mods Worth Knowing About Spartan Weaponry adds a ton of new weapon types with their own animation sets. Pairs well with Epic Fight - more weapons means more fighting variety. You can use them together or stick with vanilla weapons alongside Epic Fight's system. Mekanism doesn't change combat directly, but its tools and armor progression give you more targets to work toward, which makes the harder combat feel more purposeful. Axles and Create add mechanical depth to mining and building, which pairs nicely with a more challenging combat environment. If combat is harder, automation becomes more valuable. Some players combine Epic Fight with difficulty modifiers like Scaling Health (ramps mob stats as you progress) for a complete overhaul. Just be aware that stacking too many combat overhauls can make things brutally hard if you're not careful. For multiplayer servers, check your server's votifier settings if you're running mods - some server vote systems interact oddly with mod-heavy setups, so verify it's working after you install. Support the project epicfight is maintained by the open-source community. If it saved you time or powered something cool, leave a ⭐ on the repo, report bugs, or contribute back. Small actions keep tools like this alive. --- ### JSPrismarine: The Modern Way to Host Minecraft Bedrock URL: https://minecraft.how/blog/post/jsprismarine-minecraft-bedrock Published: 2026-04-26 Author: ice GitHub · Minecraft community project JSPrismarine (JSPrismarine/JSPrismarine) Dedicated Minecraft Bedrock Edition server written in TypeScript. Star on GitHub ↗ .0 Ever wanted to host your own Minecraft Bedrock server without renting from a third party? JSPrismarine gives you exactly that, and it's built with modern tools. No Java. No mods. Just TypeScript, plugins, and full control over your server. What JSPrismarine Actually Does JSPrismarine is an open-source server implementation for Minecraft Bedrock Edition, written in TypeScript. It's a complete Bedrock server you can run on your own hardware instead of paying for a hosted server somewhere. The project has 308 stars on GitHub and is actively maintained, which matters because Bedrock updates constantly and the protocol changes frequently. Here's the thing that makes it different from just renting a server: you own the whole thing. You decide what plugins run, what rules apply, who gets in, and how you want players to interact with your world. It's also built for extensibility, so if you know JavaScript or TypeScript (or something that compiles to it), you can build custom plugins instead of waiting for someone else to build what you need. The project is licensed under MPL-2.0, which is permissive. You can use it commercially, modify it, redistribute it. No weird restrictions. Why You'd Actually Want to Run Your Own Bedrock Server First, there's the cost angle. Paid Bedrock servers aren't cheap if you have a lot of players. You pay per month, and it adds up. If you've got decent hardware sitting around, running JSPrismarine yourself could actually be free after the initial setup. Then there's control. Want to run a private server for you and friends? Want to build a specific game mode that no one else offers? Want to restrict crossplay or lock down specific features? With JSPrismarine, you just do it. No waiting for feature requests or server provider approvals. Community hosting is another use case entirely. If you're running a Minecraft community or guild, having your own dedicated Bedrock server with custom plugins means you can create unique experiences that keep players coming back. You could build custom minigames, create progression systems, or implement economy plugins that work exactly how you want them. Plus, you control the backups and data. Getting JSPrismarine Running The installation isn't as simple as clicking a button, but it's straightforward if you're comfortable with a terminal. You need Node.js v21 or newer and pnpm installed (which comes with modern Node setups). Start here: bashgit clone - recursive-submodules https://github.com/JSPrismarine/JSPrismarine.git cd JSPrismarine corepack enable pnpm install pnpm run build pnpm run start The key thing: don't forget the ` - recursive-submodules` flag when cloning. This project has submodules, and without that flag you'll end up with incomplete code and a frustrating debugging session. Building takes a bit of time on first run since it's compiling TypeScript. Once it's running, your server will be accessible on localhost by default. To make it visible to other players, you'll want to configure networking and probably punch through your firewall, which gets into port forwarding territory. The documentation at jsprismarine.org/docs covers this, but fair warning: firewall configuration varies wildly depending on your setup. Development mode is also an option with `pnpm run dev` if you're planning to write plugins or contribute to the project itself. What Sets JSPrismarine Apart The plugin system is TypeScript-first, which is genuinely interesting. Most Minecraft servers are Java-based, so you write plugins in Java. JSPrismarine lets you write plugins in TypeScript directly, which means better tooling, clearer syntax, and the ability to use npm packages in your plugins. You can also write plugins in Kotlin, CoffeeScript, or anything that compiles to JavaScript. Actually, that last part only works if someone maintains bindings for it, so in practice you're looking at TypeScript or vanilla JavaScript. Performance is another angle. Since it's not running on the JVM, memory footprint is different, and you get JavaScript's event-driven architecture. For smaller communities, this can be noticeably snappier than Java servers. The project is under active development. Consider using the Minecraft Text Generator if you want to create formatted messages for your server's MOTD (message of the day) or broadcast system. Many JSPrismarine setups use custom formatted text to make server announcements stand out. Configuration and Customization JSPrismarine stores its configuration in YAML files, which is readable and editable without special tools. You can tweak difficulty, enable/disable features, configure spawn points, and set up basic rules. It's not as granular as some Java servers, but it covers the essentials. The real power comes from plugins. Since you're writing in TypeScript against documented APIs, you can build custom behavior. Someone running a creative server might write a plugin that limits building to certain zones. Someone running a survival server might build an economy plugin using a database backend. The possibilities depend on how much time you want to invest. If you're planning to list your server publicly, you'll probably want to integrate with server listing sites. Tools like the Minecraft Votifier Tester can help you verify that your server's voting integration is working properly if you decide to set that up. Common Pitfalls and Tips First gotcha: the protocol changes with each Minecraft Bedrock update, sometimes in breaking ways. JSPrismarine has to update to match. If you don't update JSPrismarine itself, your server will eventually fall out of sync with the latest Bedrock clients and players won't be able to join. This is different from Java servers, where a 1.20 client can often still join a 1.20.1 server. Bedrock is stricter. Second thing: this is pre-1.0 software. Version 0.13.1 is the latest release. That means the API could change between versions. If you write plugins, expect to maintain them as JSPrismarine evolves. It's not necessarily unstable, but it's not locked down yet. Crossplay complications matter too. Bedrock runs on Windows, Android, iOS, and console versions (with some workarounds). Making sure your server works smoothly across all those platforms requires testing on multiple devices, which takes time. Performance tuning isn't always obvious. If you're unfamiliar with Node.js ecosystems, the npm/pnpm dependency management can feel like a lot. JSPrismarine has quite a few dependencies, which is normal for TypeScript projects but worth being aware of for security updates and maintenance. How JSPrismarine Compares PocketMine-MP is the most popular alternative for Bedrock servers. It's PHP-based, been around longer, and has a larger plugin ecosystem. The downside? PHP is slower than JavaScript for game logic, and you're locked into PHP for plugin development. NukkitX is another option, written in Java. If you already know Java and the Java Minecraft ecosystem, it might feel more familiar. JSPrismarine's advantage is the TypeScript approach and the JavaScript ecosystem. If you already work in JavaScript, or you want something that's less established than PocketMine, JSPrismarine is worth looking at. But if you just want something that works with a large plugin library, PocketMine-MP is probably the safer choice. Support the project JSPrismarine is maintained by the open-source community. If it saved you time or powered something cool, leave a ⭐ on the repo, report bugs, or contribute back. Small actions keep tools like this alive. --- ### Beginner's Guide to Minecraft Survival Mode 2026 URL: https://minecraft.how/blog/post/minecraft-survival-beginners-guide Published: 2026-04-26 Author: ice What You're Actually Getting Into Survival mode is Minecraft with the training wheels off. You spawn in a world with nothing but your fists and a whole lot of decisions to make within the next hour. Unlike Creative mode where blocks fall from the sky, here you gather, craft, mine, build, and fight mobs that spawn in darkness specifically to ruin your day. But here's the thing: survival mode is actually less intimidating once you know the first 10 hours matter infinitely more than the next 100. The First Five Minutes: The Wood Rush Punch trees. I know it sounds absurd, but this is it. Walk up to any tree, hold down left-click on a wooden log, and wait. Your fist is hilariously ineffective, taking about 10 seconds per log, but after you've collected 12-15 logs you'll open your inventory (E key) and convert them into planks. Each log becomes four planks. This is the most important moment in your survival experience, so don't skip it. With your planks, craft a crafting table. Place it on the ground in front of you. Now interact with it. Inside, craft wooden tools: a pickaxe first (three planks in a T-shape), then an axe, shovel, and sword. The pickaxe is everything. Without it, you cannot access stone ore. Without stone ore, you'll never reach iron. The progression is locked. Still holding nothing but stone age tools? Good. You're actually ahead of most beginners. Minutes 5 to 30: Build or Die Find flat ground, preferably near water. Using your wooden pickaxe, mine stone blocks (the gray speckled ones). Your goal is a minimum 4x4 room with a door, interior torches, and a roof. This isn't a masterpiece. It's a panic box. It's ugly. It's functional. That's all that matters when the sun is setting. While mining stone, look for coal ore (black speckles on stone). If you find any, grab it. If you don't find coal before dark, you have a backup: craft a furnace from stone, throw some wood planks in it as fuel, and burn a wooden pickaxe to get charcoal. Charcoal works identically to coal for crafting torches, though it sounds deeply wrong. Place your crafting table and furnace inside your box. Make torches from coal (or charcoal) plus sticks. Place torches everywhere inside - on walls, on the floor, above the door. Mobs spawn in darkness, not in lit areas. An interior bristling with torches is safe. Find or craft a bed. Wool comes from sheep (break it by hand), combine it with planks in a crafting table, and boom: bed. Place the bed somewhere inside. When it's night, right-click the bed and you'll skip the entire dark phase. You wake up to daylight and about 6 hours of safety. This single item removes approximately 90% of first-night panic. If you don't find sheep before nightfall, you're sleeping on the ground like an animal, listening to zombies and skeletons clack around outside. Not ideal, but survivable. Your First Night: When Everything Tries to Kill You Night lasts roughly 7 in-game minutes. Stay inside. Seriously. Creepers (green explosive things) are silent and will end you. Skeletons shoot arrows through walls sometimes. Zombies are weak but come in groups. Spiders are fast and terrifying the first time you see one. None of this matters if you've four walls, a door, and torches inside. The worst part about night isn't the danger - it's the boredom. You're trapped inside listening to ambient cave sounds and mob groans. This is when most beginners either panic-mine straight down (fatal mistake), build weird holes in their walls, or make desperate runs outside. Don't. You're safe. The mobs vanish at sunrise. Just wait. Day Two: Mining Starts Here You now have stone tools. Stone pickaxes can mine iron ore. Here's the target: get 12-15 iron ore, smelt it, craft iron tools. Iron tools open the mid-game. Mining strategy: dig down in a staircase pattern at a 45-degree angle. Every 10 blocks you descend, place a torch on your right-hand side. This creates a light-breadcrumb trail back to the surface. When you need to escape fast (lava, unexpected creeper), just look for torches on your right and follow them up. Ignore ore below you. Ever. Straight-down mining leads to lava pools underneath that fall on your head. Angle-mining (digging ahead and below) lets you see the danger before it kills you. Once you've smelted iron ore (charcoal in furnace, ore on top, wait ~10 seconds), craft an iron pickaxe. Now you can mine diamonds. Diamond Mining: The Right Way Diamonds are the gateway to serious endgame progression. PCGamesN's ore research confirms that in Minecraft 26.1.2, diamonds spawn increasingly commonly the deeper you go below Y-level 16, with the sweet spot around Y-level -53. But this keeps you away from the worst lava pools that form specifically at Y-level -54. To check your Y-level in-game, open your debug screen (F3 on Java, or check your coordinates in the top-left). Dig down to Y-level around -30 to -50, then mine horizontally, checking stone for blue diamond ore. Bring supplies: wood (to craft emergency items), a crafting table, a furnace, charcoal, and food. Do not bring everything - your inventory will fill instantly. Mine, collect diamonds, and return to the surface. Smelting and crafting happen later in your base, not underground in a panic. A single diamond pickaxe opens gates to obsidian, the Nether, and everything beyond. Most new players view diamonds as the "win" point. They're not. They're just the beginning. Food Before You Starve Hunger depletes as you move, sprint, and take damage. Three visual options exist early-game: Kill animals. Cows and pigs drop raw meat. Cook the meat in a furnace (charcoal as fuel) and eat it. Each cooked meat restores 4 hunger points. Break tall grass in grassland biomes. Grass drops seeds. Plant seeds on farmland (dirt block with a hoe, next to water) and wait. Mature wheat crops drop seeds and wheat. Seeds fill hunger minimally, but wheat is renewable. Find chickens and breed them. Two chickens fed seeds will produce baby chickens. Adults drop raw chicken and feathers. Cooked chicken restores 6 hunger points. Farming sounds tedious, but renewable food means never starving again. Set up a small farm near your base with a water channel running through planted rows. It's not glamorous, but it works. Building Beyond the Panic Box Once you've got food, water, a bed, and basic tools, you've breathing room. Your panic box served its purpose. Now rebuild something you actually want to log into. Think cottage. Central room for crafting/smelting, side rooms for storage and sleeping, a loft for additional storage. Use varied blocks: stone, wood, dirt, gravel. Add windows. A roof that's not flat. Something with a tiny bit of personality. New players often skip this because they're worried about the next threat, but your base becomes your anchor - the place you're excited to return to after mining. After you've got a solid base, the path splits completely. Some players hunt multiplayer survival servers to experience community gameplay. Others go deep into mining for Netherite (the true endgame ore, found in the Nether dimension). Some focus on building massive projects - castles, farms, entire cities. Survival mode doesn't have a goal; it has directions. First 10 Hours: Quick Checklist Hours 0-0.5: Collect 12-15 logs, craft table, wooden tools, find coal. Hours 0.5-1: Build basic shelter, craft torches, secure interior, locate sheep for bed. Hour 1-2: Sleep through first night, wake to daylight, begin stone mining. Hours 2-4: Gather stone, craft stone tools, begin mining down for iron ore, establish basic farm. Hours 4-6: Smelt iron, craft iron tools and armor, begin safer deeper mining. Hours 6-10: Locate diamonds at proper Y-levels, gather resources for mid-game progression. Common Early Mistakes (Don't Do These) Mining straight down: Lava pools lurk beneath. Angle-mine instead. Ignoring darkness: Mobs spawn in unlit areas. Torches are free sanity. Playing on Hard mode: You're new. Play Normal. Hard mode is for people who want to experience despair. Hoarding useless items: Your inventory fills fast. Keep tools, food, torches. Drop dirt and gravel later. Building near water at night: Mobs swim. Build on elevated ground or surround with walls. Exploring caves unprepared: Caves are dark, confusing, and full of mobs. Wait until you've iron armor and a clear head. Next Steps: Server Experimentation Once you're comfortable with solo survival, multiplayer completely changes the game. Playing on a server with other people brings cooperation, competition, trading, and usually someone doing something hilarious that becomes server legend within hours. Check out the Minecraft Server List to find communities ranging from vanilla purist servers (no mods, pure Minecraft) to heavily modded survival experiences. If you're curious about eventually hosting your own server, the Server Properties Generator makes configuration painless. Survival mode sounds overwhelming in abstract, but broken into the first 10 hours, it's a series of simple tasks: get wood, build shelter, get food, get tools, mine carefully, repeat. Your first base will be hideous. Your second will be better. By your tenth, you'll wonder why you spent 50 hours building dirt paths to nowhere. That's survival mode. Get started. --- ### InvUI: Building Custom Minecraft Server GUIs Like a Pro URL: https://minecraft.how/blog/post/invui-custom-minecraft-guis Published: 2026-04-26 Author: ice NichtStudioCode/InvUI A paper library for creating custom inventory-based GUIs. If you're running a Paper server and want your plugins to feel polished instead of janky, custom inventory-based GUIs are non-negotiable. InvUI is a Java library that lets you build them without drowning in boilerplate or wrestling with Minecraft's raw inventory API. You get clean, reusable components, event handling that actually makes sense, and support for animations and complex layouts. What This Project Does InvUI is a Paper server library designed to handle one specific problem: inventory-based GUIs for plugins. Instead of registering raw inventory listeners and doing half your logic inside click handlers, InvUI gives you a structure. You define a GUI window, add items and buttons with callbacks, and the library handles the repetitive stuff underneath. It supports a wide range of inventory types beyond the basic chest. You're looking at chests, anvils, brewers, cartography tables, crafters, furnaces, grindstones, merchants, smithing tables, and stonecutters. Different games need different tools, and InvUI lets you pick the right container for what you're building. What sets this apart from writing GUIs manually is the abstraction layer. Instead of thinking about slot numbers and click events, you think about components: buttons, inventories with special behavior, multi-page layouts. The library handles mapping that to Minecraft's constraints. Why Server Developers Actually Use This Building a GUI the hard way means manually tracking item positions, writing click listeners, managing your own state, and dealing with all the edge cases Minecraft throws at you. You end up with spaghetti code that's hard to extend. InvUI trades that mess for a declarative approach. The event system is where things get genuinely useful. You can define what happens on item clicks, set constraints on which items can go into specific slots (only allow certain item types), customize stack sizes per slot, and handle pre-update events. But this unlocks GUIs that feel responsive and intuitive instead of fighting the player. Animation support is another win. You can create visual polish without writing frame-by-frame update logic. For anything from a simple loading spinner to animated menu transitions, InvUI handles the timing. Plus, the library supports paged layouts for long lists, tabbed interfaces for organizing content, and scrollable areas. If you've tried building any of these manually in Minecraft plugins, you know it's tedious. Here it's built in. Getting InvUI Into Your Project Setup assumes you've got a Maven-based plugin project. First, add the XenonDevs repository to your `pom.xml`: xml xenondevs https://repo.xenondevs.xyz/releases Then add the dependency. Version 2.0.x supports Paper 26.1.2, and that's what you'll want if you're starting fresh. If you're stuck on older Minecraft versions (back to 1.14), version 1.49 has you covered. xml xyz.xenondevs.invui invui 2.0.0 If you're using Gradle instead (fair choice), the equivalent is obvious. Once you've got the dependency building, you're ready to start defining windows and items. Core Features That Matter GUI Types. InvUI ships with several layout patterns built in. A normal GUI is just a fixed grid. Paged GUIs let you chunk content across multiple screens with navigation buttons handled automatically. Scroll GUIs work like a vertical scrollbar for large lists. Tab GUIs organize content into separate views. Pick the one that matches what you're trying to build instead of reinventing pagination logic every time. MiniMessage Support. Color codes in Minecraft plugins are a pain. InvUI has first-class support for MiniMessage, which means you can use clean syntax like `Hello` instead of Minecraft's legacy ampersand codes. Your item names and lore stay readable in code. ItemBuilder for Localization. If your server runs in multiple languages (or you're planning to eventually), InvUI's ItemBuilder handles language swaps cleanly. Instead of hardcoding item names, you define them once and let the library handle translations. Thinking ahead on this stuff saves refactoring pain later. Powerful Event System. You can attach click handlers to specific items, validate input before it lands in a slot, customize stack size limits per slot, and respond to pre-update events. This means your GUI can actually enforce rules instead of just looking pretty and letting players break everything. Embeddable Inventories. This is one of those features that sounds boring until you actually need it. You can embed an inventory inside a GUI window and use it like a normal container. Want a crafting bench inside a larger menu? A player storage area? Now it works naturally. Common Gotchas and How to Dodge Them Version 2.0 is a breaking change from 1.49. It's a complete rewrite optimized for modern Paper, which means your old code won't compile. If you've got an existing plugin on 1.49, upgrading isn't trivial. But if you're starting fresh, just use 2.0. The biggest surprise people run into: slot indexing. InvUI abstracts most of this, but you still need to understand how Minecraft maps inventory slots to a 9-column grid. The documentation covers it, but getting this wrong means buttons and items end up in weird places. Event ordering matters. Item pre-update events fire before clicks are processed, and that distinction changes how you validate input. Read the docs carefully before you assume your event handler will always see the final state. Animation performance can get weird if you're animating too many items at once or running update logic that's expensive. Keep animation callbacks lightweight and test on lower-end machines (or at least simulate it mentally). Alternatives Worth Knowing About There are other options out there. Some developers hand-roll GUIs using Minecraft's raw inventory listeners and skip the library entirely. That works if you want minimal dependencies, but you'll write a lot more code. Conversely, there are other GUI libraries for Paper, though InvUI's documentation and active maintenance make it a solid pick for new projects. If you're building something super simple (a single chest menu with 5 buttons), the overhead of InvUI might feel overkill. For anything more complex, it pays for itself. One note: if you're building GUIs for a network of servers with a custom protocol, you might want to look elsewhere. InvUI is firmly focused on single-server Paper plugins. It doesn't handle cross-server communication or proxy integration. Beyond Basic Menus Once you've got simple menus working, InvUI lets you build surprisingly sophisticated interfaces. Combine paged layouts with animations. Use tab GUIs to organize different sections of your plugin's configuration. Leverage the event system to build interactive tools (search menus, crafting benches, equipment managers). The Minecraft Text Generator can help you craft fancy item names and lore formatting to use inside your GUIs. If you're serving multiple regions or languages, combine it with InvUI's ItemBuilder to localize everything consistently. And if you're running a public server with multiple sites and game modes, you might also be managing DNS. The Free Minecraft DNS tool handles that side of things, so your players can connect to your server with a custom domain instead of an IP address. The library is genuinely well-documented. That team maintains a full guide at xenondevs.xyz with examples, and the GitHub discussions channel is active. If you get stuck, you're not staring at skeleton code - you've got reference material. Ready to try InvUI? Grab the source, read the full documentation, or open an issue on GitHub. Star the repo if you find it useful. It helps the maintainers and surfaces the project for other Minecraft players. Visit NichtStudioCode/InvUI on GitHub ↗ --- ### Vane: Immersive Minecraft Without Abandoning Vanilla URL: https://minecraft.how/blog/post/vane-vanilla-enhancement Published: 2026-04-26 Author: ice GitHub · Minecraft community project vane (oddlama/vane) Immersive and lore friendly enhancements for vanilla Minecraft Star on GitHub ↗ If you're running a PaperMC server and want to enrich vanilla without replacing it, Vane is worth your attention. It's a modular plugin suite that layers lore-friendly additions on top of the game you already know, from quality-of-life improvements to custom items and grief protection. What Vane Actually Does Vane is a plugin suite for PaperMC servers that adds thoughtful enhancements designed to feel like they belong in vanilla Minecraft. The philosophy here's important: instead of introducing radical new mechanics or replacing core systems, Vane augments what's already there. You're getting custom items, new enchantments, better portals, and grief protection - but players shouldn't feel like they're running a modded server. The project has 380 stars on GitHub and is built in Java. This distinction matters. Most server plugins either go vanilla-lite (barely adding anything) or swing hard into total conversion territory. Vane sits in the middle, which is the sweet spot for communities that want something more without losing that vanilla magic. Each feature is configurable, so you're not forced to enable anything that doesn't fit your server's vibe. Why You'd Actually Want This Let's say you're managing a survival server for friends. Players want longer-distance travel options beyond just walking or boats. They want some basic grief protection without running a massive region system. They're interested in custom tools that don't feel like they're from a totally different game. This is Vane's lane - filling practical gaps in vanilla. The portal system is the most impressive feature here. Actually, I'll come back to that. Beyond portals, you get a region system for grief protection (it's simple, not overcomplicated), custom items carefully designed to fit vanilla aesthetics, enchantments for tools you actually use, and integration with map mods like BlueMap and Dynmap. Each of these solves a real problem server owners face without making the world feel foreign to new players. Quality-of-life improvements that don't break vanilla balance Custom items and enchantments that fit the Minecraft art style Long-distance travel via Vane's portal system (expensive to create, expensive to use) Grief protection without the learning curve of complex systems Full configurability to disable anything you don't want Getting Vane Running Installation is straightforward if you're already familiar with PaperMC. The latest version (1.21.1) removed the ProtocolLib dependency, which simplified setup significantly. Grab the JAR files and drop them into your plugins folder. Here's the basic process: bash# Download the latest release from GitHub # https://github.com/oddlama/vane/releases # Extract the plugin JARs into your plugins directory cd your-server-directory/plugins wget https://github.com/oddlama/vane/releases/download/v1.21.1/vane-core-1.21.1.jar wget https://github.com/oddlama/vane/releases/download/v1.21.1/vane-admin-1.21.1.jar # Restart your server # The plugins will generate config files on first run Vane is modular, so you can download individual feature JAR files instead of grabbing everything. If you only want custom items and not portals, you don't have to install the portal module. So this keeps your plugin folder clean and only loads what you're actually using. One thing to note: Vane requires PaperMC. It won't work on vanilla servers or most other server software. After restarting, check your logs for any warnings. Config files appear in the plugins/Vane folder. You'll want to read through these to understand which features are enabled and how they're tuned. The defaults are reasonable, but every server's different. The Standout Features Portals for Real Travel Vane's portal system is actually impressive. Creating a portal is expensive (requires significant resources), using it's expensive (consumes items per trip), and they're beautiful. These aren't cheap teleportation gimmicks. They feel like something you'd genuinely invest in on a long-term server, and they support all entities including minecarts. I wasn't expecting the minecart support - that's the kind of detail that shows someone thought about how the feature actually works in survival gameplay. GitHub project card for oddlama/vane Custom Enchantments Beyond the vanilla enchantments, Vane adds new ones for tools you actually use regularly. These are properly balanced and don't trivialize the game. You're not getting god-tier enchantments that make everything instant; you're getting tweaks that make specific tasks less tedious in ways that fit the vanilla progression. The Region System Grief protection gets complicated fast. Most systems require players to memorize commands and understand complex claim hierarchies. Vane's approach is simpler. You define regions and set who can build in them. It's powerful enough for survival multiplayer without making someone spend an hour reading docs. Custom Items Done Right Several carefully designed custom items fit Minecraft's visual language. These aren't neon weapons or anime swords; they're things like a golden sickle for harvesting crops faster. They look like they belong. Map Integration If you're running BlueMap, Dynmap, or Pl3xMap, Vane integrates with them. Your map viewer stays updated with the latest changes, and features like regions can display on the map. It's a nice quality-of-life touch if you're already maintaining a map for your players. What You Should Know Before Starting Vane is fully configurable, which is great - but it also means you need to actually read the config files. Don't just drop the plugin and assume the defaults are perfect for your server. Also, this is a plugin. That means it runs on PaperMC servers. If you want the features on a vanilla client, that's not happening. Your players connect to your server and experience the features there - but they don't need to install anything on their client. If you're running other plugins, check for conflicts. Most survival plugins play nice with each other, but it's worth testing. The Discord community can help if something breaks. Actually, one more thing - custom items and enchantments require players to interact with them through normal Minecraft progression. If you're playing pure survival, you'll actually have to find and craft them. That's intentional and good, but I wanted to mention it in case you expected instant access. Where to Find Vane Skins and Server Status If you're running a Vane server, you might want to check out the Browse Minecraft Skins page to find custom skins that match your server's theme. And if you're testing your server's stability, the Minecraft Server Status Checker is helpful for monitoring uptime. Similar Projects Worth Knowing About If Vane doesn't quite fit your needs, there are alternatives. Fabric server mods offer similar vanilla-plus experiences but require client-side installation. For pure plugin solutions, some communities use combinations of smaller plugins (like WorldGuard for grief protection) stacked together. The difference is that Vane is cohesive - everything works together by design rather than being bolted on. Some servers run both Vane and other plugins. It's modular enough that you can mix and match if needed, though most people find the suite does what they want out of the box. Support the project vane is maintained by the open-source community. If it saved you time or powered something cool, leave a ⭐ on the repo, report bugs, or contribute back. Small actions keep tools like this alive. --- ### Lazymc: How to Auto-Wake Your Minecraft Server URL: https://minecraft.how/blog/post/lazymc-minecraft-server-idle Published: 2026-04-26 Author: ice timvisee/lazymc 💤 Put your Minecraft server to rest when idle. .0 If you run a Minecraft server that sits empty most of the day, lazymc might be the solution you didn't know you needed. It automatically puts your server to sleep when no one's playing and wakes it the moment a player shows up - all without them noticing a thing. What Lazymc Does (and Who It's For) Lazymc is a proxy that sits between your players and your actual Minecraft server. Think of it as a bouncer at the door. When the real server is running, lazymc just gets out of the way and lets traffic through. But when you tell it to, lazymc can respond to connection attempts on its own, holding or kicking players with a custom message while it spins up the actual server in the background. The genius part? Once the real server is ready, lazymc transparently relays everything. Players don't know they were talking to a proxy the whole time. This is built in Rust and weighs about 3KB of RAM. For a self-hosted server running on limited hardware - a Raspberry Pi, an old laptop, a VPS with tight resource limits - this changes the economics completely. You're looking at lazymc if you run a modded server (which devour resources), a semi-public server where friends drop in unpredictably, or anything where "always on" costs more than you'd like to pay. Why Your Server Needs This Most Minecraft servers, especially modded ones, burn resources even when empty. A heavily modded setup can sit at 2-4GB of RAM usage just waiting. If you're paying per hour or month on a host, that's wasted money. If you're running it at home, that's your electricity bill and hardware wear. Lazymc solves this by actually stopping the server process when it's idle. Not suspending it - actually stopping it. Your RAM drops to nearly nothing. Your CPU load vanishes. Then the second someone tries to join, lazymc wakes the server back up and gets out of the way. The catch? There's a startup delay. If your server takes 30 seconds to boot, players will wait 30 seconds before they can join. Lazymc can tell them what's happening (with a custom MOTD showing "Server is starting..."), or it can kick them with a friendly message. For casual servers or friend groups, that's fine. Getting Started: Installation and Setup On Linux or macOS, grab the binary from the latest release. Download the right build for your system - aarch64 for ARM, x64 for standard Intel/AMD. On Windows, there's a pre-built.exe. bash# Download for Linux x64 wget https://github.com/timvisee/lazymc/releases/download/v0.2.11/lazymc-v0.2.11-linux-x64 # Make it executable chmod a+x lazymc-v0.2.11-linux-x64 # Rename for convenience (optional) mv lazymc-v0.2.11-linux-x64 lazymc Put the binary in your server directory. Test it works: bash./lazymc - help Now generate the config file: bash./lazymc config generate This creates a `lazymc.toml` file. You'll need to edit it - mainly pointing lazymc at your actual server's address and telling it how to start the server. If your server starts with `java -jar server.jar nogui`, you'll put that in the config. Then start lazymc: bash./lazymc start Update your server's DNS or your launcher's server IP to point to the lazymc proxy instead of the real server. From now on, lazymc is the front door. How the Join Methods Work Lazymc gives you choices for how to handle players joining while the server starts. Each has trade-offs. GitHub project card for timvisee/lazymc Hold is transparent but requires patience. Players connect to lazymc, and lazymc holds them in a queue. Once the real server boots, lazymc relays them in without them losing connection. They don't see a disconnect. Best for players who don't mind a delay. Kick is simpler but less elegant. When a player tries to join and the server's booting, lazymc kicks them with a custom message like "Server is starting, try again in 30 seconds!" Players have to manually rejoin. Works fine for small groups. Forward is clever if you run a lobby. It redirects players to a different IP (like a lobby server) while the main server boots. They play mini-games or hang out until it's ready, then you teleport them over. Lobby mode (still experimental) creates an emulated Minecraft server world while the real one starts. Players can move around in a small sandbox. When the real server's ready, they teleport over automatically. Features That Actually Matter Beyond the core sleep-and-wake idea, lazymc handles the admin stuff you'd do manually. It automatically manages your `server.properties` file - keeping the right host and port settings, configuring RCON if you need it. You don't have to fiddle with those by hand. If your server crashes, lazymc can restart it automatically. And it respects ban lists from your server, blocking banned IPs before they even reach the server process. One useful feature: you can send a `SIGTERM` to lazymc or hit it with RCON to gracefully shut down the server. Useful for updates or maintenance without yanking the power cord. There's also a proxy header option if you want the real server to know the actual player IP instead of seeing lazymc's IP as the client. That's essential if you use IP-based authentication or logging. Tips, Gotchas, and What to Watch For First: lazymc requires you to have direct system access. If you're on a shared hosting provider with a control panel dashboard, you probably can't run it. You need SSH or shell access to start the binary. Second: startup times matter. If your server takes two minutes to boot (looking at you, heavily modded setups with 200+ mods), players will wait. Plan accordingly and make sure your MOTD is clear. Nobody likes silent loading screens. Version support goes back to Java Edition 1.6, which is ancient. Recent versions like 26.1.2 work fine. But it's worth double-checking the GitHub if you're running something truly latest. One surprising thing: lazymc config can be finicky if you're on Windows because of how RCON works. The project has separate Windows docs covering this. Read them. If you're running a voting system (maybe you want people testing your server on sites like that), just make sure your lazymc MOTD is accurate. If you've used the Minecraft Votifier Tester to verify voting, be aware that lazymc's proxy response might differ from your live server's. When Lazymc Isn't the Right Fit Lazymc works great for modded servers or low-traffic setups. But if you're running a bustling community server that's online 12 hours a day, the boot delays become annoying. And if you need real-time uptime guarantees, the sleep/wake cycle isn't reliable enough - someone will join, wait for startup, and get frustrated. Also: plugins that hook into server lifecycle events (startup, shutdown) might behave oddly if you're constantly cycling the server on and off. Test thoroughly before running this on a production server with delicate plugin chains. If you're just trying to reduce your server cost a little and don't want to manage a proxy, consider asking your host if they offer auto-shutdown features. Some do. But most hosts don't, and that's where lazymc shines. Support the project lazymc is maintained by the open-source community. If it saved you time or powered something cool, leave a ⭐ on the repo, report bugs, or contribute back. Small actions keep tools like this alive. ---