
Full Guide to Set up a 1.21 Minecraft Server with Plugins
If you're running a Vanilla Minecraft server, you aren't getting the best performance possible! Maybe you just started up a Minecraft server on your PC and using "Open to Lan" or maybe you've followed a guide on starting up a quick Minecraft server.
Do you want better performance? Do you want more control over your server with plugins that allow you to customize the world, allow commands like /home to allow players to quickly teleport home? Then you need a plugin server like Paper!
In this video we're going to walk through the entire process of setting up a Minecraft 1.21 Paper Server, actually using Purpur, from installation, running the server, connecting to it, and customization with a few plugins.
Stick around!
This guide will walk you through the entire process of setting up a Minecraft 1.21 Paper server, from installation to customization with plugins, and maintenance.
If you want a video guide to just the server setup with plugin installation, that's here.
Why would you want to run a Minecraft server?
If you're reading this, you probably already have your own reasons, but just in case...
Running your own server opens up a world of possibilities. It allows you to create a customized and controlled environment where you and your friends can play together. You can set your own rules, install mods and plugins to enhance gameplay, and build a community. Whether you want to create a mini-game server, a survival world with custom features, or a role-playing server with complex mechanics, hosting your own server gives you the freedom to tailor the experience exactly to your liking.
What is a Paper server, and why would you want to use it?
Paper is a high-performance fork of the popular Spigot server, designed to offer better performance and more features. It provides numerous optimizations and improvements over a standard Minecraft server, making it a great choice for both small and large communities.
And while Paper is incredibly popular and widely used, there's another server software called Purpur that's even better. In fact, I'll refer to Paper generically to mean a server running Purpur.
Purpur is a fork of Paper, which means it builds on Paper's foundation while adding even more features and customization options. Purpur aims to provide a seamless and highly customizable server experience, with extra settings and tweaks that aren't available in Paper. So we're going to use Purpur. You can certainly use an actual Paper server if that's your choice.
By the end of this guide, you'll have a fully operational Purpur server with plugins that enhance gameplay, improve server performance, and provide countless customization options.
Why Choose a Paper/Purpur Server over other options?
When it comes to hosting a Minecraft server, you have several options. So why choose a Paper server over other types of servers? Here are some reasons:
Performance Enhancements
Paper servers are designed with performance in mind. Compared to vanilla servers, which are the unmodified versions of Minecraft, Paper offers significant performance improvements. These enhancements include better handling of large numbers of players, reduced lag, and increased server stability. Paper optimizes how the server processes tasks, allowing for smoother gameplay and a more enjoyable experience for everyone.
Plugin Ecosystem
One of the biggest advantages of using a Paper server is its compatibility with a wide range of plugins. Plugins are add-ons that can modify and enhance your server's gameplay. From administrative tools to game-changing features, the plugin ecosystem for Paper servers is huge. This allows you to customize your server to fit your vision perfectly, whether you're looking to add mini-games, improve security, or introduce new gameplay mechanics.
Customizing your server with both the essential plugins that have become the norm on Minecraft servers as well as a curated collection of plugins and customizations to make your server unique is one of the pillars to running a Minecraft server that people want to come back to.
Community and Support
Paper has an active community, offering plenty of resources and support. Whether you're troubleshooting an issue or looking for advice on which plugins to use, you'll find a wealth of information through forums, Discord servers, and documentation. This community support can be invaluable, especially if you're new to server hosting or encountering problems for the first time.
Comparison with Vanilla Servers
Vanilla servers offer the pure Minecraft experience but come with limitations in terms of customization and performance. Vanilla servers can't easily support the wide array of plugins available to Paper servers, making it harder to tailor your server to your specific needs. Additionally, the performance optimizations in Paper mean that you can host more players and run more complex worlds without experiencing the same levels of lag and instability that might plague a vanilla server.
Even if you want a pure vanilla Minecraft experience, you can still benefit from running a Paper server only for the administration, management, and performance benefits. That's even if you don't make any changes visible to the players.
Comparison with Modded Servers (Forge/Fabric)
While modded servers using platforms like Forge or Fabric offer extensive customization through mods, they can also be more complex to set up and maintain. Mods often require all players to install the same modifications, which can be a barrier for some users.
In contrast, plugins on a Paper server typically don't require any client-side modifications, making it easier for players to join and enjoy your server without extra hassle. Further, there are plugins that allow players to join a Paper server from any version of Minecraft and even from Bedrock!
Additionally, Paper's performance optimizations can make it a more stable and efficient choice compared to heavily modded servers.
Prepare for Setup
Let's get things set up for a local installation. If you're running on an external server, the setup will be similar and I assume you know what you're doing if you're on Linux!
System Requirements
To run a Paper server effectively, you'll need a machine that meets specific hardware and software requirements. Here are the recommended specifications:
- Hardware Requirements:
- CPU: A modern multi-core processor (Intel i5/i7 or AMD Ryzen).
- RAM: At least 4GB of RAM allocated to Minecraft for small servers. More RAM may be required for larger servers or if you're using many plugins.
- Storage: SSDs are highly recommended for faster read/write speeds. At least 10GB of free space.
- Network: A stable internet connection with a good upload speed for a smooth multiplayer experience.
- Software Requirements:
- Operating System: Windows, macOS, or Linux.
- Java: The latest version of Java 21 (Minecraft 1.21 requires Java 21, and recent older versions can run on Java 21 as well).
I've got a much more in depth guide on hardware requirements for Minecraft here.
Downloading and Installing Java
To run a Minecraft server, you'll need to have Java installed on your machine. Here’s how to download and install the correct version of Java:
- Visit a Java download website
- There are several Java runtime distributions. My favorite is Adoptium Temurin. Be sure to choose the correct version for your operating system.
- Download Java 21:
- Select the appropriate installer for your operating system (Windows, macOS, or Linux). The easiest to install for Windows is the .msi file, which is a Window set up wizard.
- Follow the on-screen instructions to download the Java Development Kit (JDK).
- Install Java 21:
- Run the downloaded installer and follow the prompts to complete the installation.
- Once installed, verify the installation by opening a command prompt or terminal and typing
java -version
. You should see the version of Java 21 listed.
Setting Up a Dedicated Folder
To keep your server files organized, it’s a good idea to create a dedicated folder where all server-related files will be stored. Simply choose a location on your computer where you want to store your server files. Create a new folder and give it a descriptive name, such as "MinecraftServer" or "PaperServer".
It's generally a good idea to choose a location in your file system that's not sync'ed to a cloud server. Best case, this can cause performance issues. Worst case, this can cause file corruption.
Setting Up the Paper (Purpur) Server
Now that you’ve prepared your system, it’s time to set up your Paper server. Follow these steps to get your Minecraft 1.21 Paper server up and running:
Downloading Paper
- Visit the PaperMC Website:
- Go to the Purpur download page. Or PaperMC if you prefer that. The process is the same.
- Locate the latest build for Minecraft 1.21 and click on the download link to get the Paper server jar file.
- Save the Paper Jar File:
- Save the downloaded jar file into the dedicated folder you created earlier.
Initial Configuration
- Running the Server for the First Time:
- In the same folder as the Purpur or Paper .jar file, rename it to paper.jar.
- Add a file named start.bat and paste the following into it:
java -Xms4G -Xmx4G -jar paper.jar --nogui
pause - Run the Paper server jar file by double clicking on
start.bat
- The server will start and generate the necessary files and folders. It will also create an
eula.txt
file.
- Agreeing to the EULA:
- Open the
eula.txt
file in a text editor. - Change
eula=false
toeula=true
to indicate your agreement with the Minecraft End User License Agreement. - Save and close the file.
- Open the
- Configuring Server Properties:
- Open the
server.properties
file in a text editor. - This file contains various settings for your server. Here are a few key settings you might want to adjust:
- server-name: The name of your server.
- max-players: The maximum number of players who can join your server.
- white-list: Set to
true
if you want to enable a whitelist. - spawn-protection: The radius of spawn protection.
- Save any changes you make to the file.
- Open the
Running the Server
- Start the Server:
- Run the Paper server jar file again by double clicking start.bat
- The server will now start with the configurations you set.
- Verify the Setup:
- Once the server is running, you should see various messages indicating that the server is starting up and loading world data.
- When you see "Done!" in the console, your server is up and running.
Installing Plugins
Plugins are a great way to enhance your Minecraft server, adding new features, improving gameplay, and allowing you to customize your server to your liking. Here’s how to find, install, and configure plugins for your Paper or Purpur server.
Finding Plugins
- Popular Plugin Repositories:
- SpigotMC: Visit SpigotMC for a wide variety of plugins. It’s one of the largest and most popular plugin repositories.
- Bukkit: Check out Bukkit for plugins compatible with Bukkit and its forks, including Paper and Purpur.
- PaperMC: Paper itself has a list of recommended plugins on its website, which you can explore for high-quality options.
- Essential Plugins:
- EssentialsX: Provides commands and features that are essential for any server, such as teleportation, spawn setting, and economy.
- WorldEdit: A powerful tool for building and editing large structures quickly.
- LuckPerms: A flexible and powerful permissions management plugin.
- Vault: Provides a common API for various economy, chat, and permissions plugins to work seamlessly together.
Installing Plugins
- Downloading Plugins:
- Visit the plugin page on SpigotMC, Bukkit, or another repository.
- Download the plugin jar file to your computer.
- Adding Plugins to Your Server:
- Navigate to your server’s root directory (the dedicated folder you created).
- Locate the
plugins
folder. If it doesn’t exist, create it. - Move the downloaded plugin jar files into the
plugins
folder.
- Restarting the Server:
- Stop your server if it is running by typing
stop
in the server console and then pressing Enter. - Start the server again by running the command:
start.bat
- The server will load the new plugins, and you should see messages in the console indicating that the plugins have been enabled.
- Stop your server if it is running by typing
Configuring Plugins
- Accessing Plugin Configuration Files:
- Once the server is running with the new plugins, each plugin will typically create its own folder inside the
plugins
directory. - Inside each plugin’s folder, you’ll find configuration files, usually in YAML format (with the
.yml
extension).
- Once the server is running with the new plugins, each plugin will typically create its own folder inside the
- Editing Configuration Files:
- Open the configuration files with a text editor (e.g., Notepad++ or VSCode).
- Most plugins come with detailed comments in the config files, explaining what each setting does.
- Make the necessary changes to suit your server’s needs. For example, setting permissions, changing messages, or adjusting plugin-specific settings.
- Applying Changes:
- After editing the configuration files, save your changes.
- Reload the plugin settings by either restarting the server or using specific commands provided by the plugins (e.g.,
/essentials reload
for EssentialsX).
Example: Installing and Configuring EssentialsX
- Download EssentialsX:
- Go to the EssentialsX download page.
- Download the EssentialsX jar file and any additional modules you need (like EssentialsXChat or EssentialsXSpawn).
- Add to Plugins Folder:
- Move the EssentialsX jar files into the
plugins
folder.
- Move the EssentialsX jar files into the
- Restart Server:
- Restart your server to load EssentialsX.
- Configure EssentialsX:
- Navigate to
plugins/Essentials
and openconfig.yml
. - Edit settings such as spawn points, teleportation options, and economy settings.
- Save your changes and reload the plugin with
/essentials reload
.
- Navigate to
Managing and Updating Plugins
- Regular Backups:
- Before making any significant changes or updates, backup your server files, including the
plugins
folder and configuration files.
- Before making any significant changes or updates, backup your server files, including the
- Updating Plugins:
- Periodically check for plugin updates on their respective download pages.
- Download the latest versions and replace the old jar files in the
plugins
folder. - Follow any specific update instructions provided by the plugin authors.
- Troubleshooting:
- If a plugin isn’t working correctly, check the server console for error messages.
- Refer to the plugin documentation or community forums for troubleshooting tips.
- Ensure that all plugins are compatible with your server version and with each other.
By following these steps, you can easily find, install, and configure plugins to enhance your Minecraft server. Plugins offer a powerful way to customize your server, creating a unique and enjoyable experience for your players. Next, we’ll discuss managing and maintaining your server to ensure it runs smoothly and efficiently.
Managing and Maintaining Your Server
Once your Minecraft server is up and running with plugins, it’s crucial to manage and maintain it to ensure a smooth and enjoyable experience for your players. This section will cover essential tasks such as regular backups, updates, and performance optimization.
Regular Backups
- Why Backups Are Important:
- Backups protect your server data from corruption, crashes, or accidental loss. Regular backups ensure you can quickly restore your server to a previous state if something goes wrong.
- Automating Backups:
- Use plugins like AutoSaveWorld or Backup to automate the backup process.
- Configure these plugins to save backups at regular intervals (e.g., daily or weekly).
- Manual Backups:
- Periodically create manual backups by copying your entire server directory to a separate location.
- Include the
world
folder,plugins
folder, and any configuration files.
Updates and Maintenance
- Keeping the Server Software Updated:
- Regularly check for updates to the Paper or Purpur server software.
- Download the latest jar file from the official website and replace the old jar file in your server directory.
- Restart your server to apply the updates.
- Updating Plugins:
- Periodically check for plugin updates on their respective download pages (e.g., SpigotMC or Bukkit).
- Download the latest versions and replace the old jar files in the
plugins
folder. - Follow any specific update instructions provided by the plugin authors.
- Restart your server to load the updated plugins.
- Troubleshooting Issues:
- Monitor the server console for error messages or warnings.
- If a plugin is causing issues, check the plugin’s documentation or support forums for troubleshooting tips.
- Ensure all plugins are compatible with your server version and with each other.
Optimizing Performance
- Server Configuration Tweaks:
- Adjust settings in the
server.properties
file to optimize performance. For example:- Lower the
view-distance
to reduce the number of chunks loaded around players. - Adjust
entity-activation-range
to control how far away entities are active.
- Lower the
- Modify settings in the Paper or Purpur configuration files (
paper.yml
orpurpur.yml
) for further optimizations.
- Adjust settings in the
- Using Performance Plugins:
- Install performance-enhancing plugins like ClearLag to reduce lag by removing unnecessary entities.
- Use Spark for monitoring and profiling your server’s performance, helping you identify and resolve lag issues.
- Hardware and Hosting Considerations:
- Ensure your server hardware meets the recommended specifications, including sufficient RAM and a fast CPU.
- Consider using a dedicated server hosting service if your server experiences heavy traffic or lag issues.
- Regularly monitor server resource usage (CPU, RAM, network) to ensure it stays within acceptable limits.
Monitoring and Security
- Player Management:
- Use plugins like LuckPerms to manage player permissions and groups effectively.
- Regularly review player activity logs to ensure compliance with server rules.
- Server Security:
- Implement security plugins such as CoreProtect to log and roll back any malicious actions.
- Use IPWhitelist or AuthMe to protect your server from unauthorized access.
- Regularly update your server software and plugins to patch any security vulnerabilities.
- Community Engagement:
- Foster a positive community by actively engaging with your players through Discord or forums.
- Encourage feedback and suggestions to improve the server experience.
- Host events and activities to keep players engaged and invested in your server.
By following these steps, you can effectively manage and maintain your Minecraft server. Regular backups, updates, and performance optimizations are key to a successful server.