PayToPlay
Running a Minecraft server is a labor of love, but the monthly hosting bills are very real. When you split costs among friends, it is easy for some players to fall behind on their share. PayToPlay is a lightweight server plugin that solves this problem by automatically tracking playtime and calculating what each player owes. It does not process payments; instead, it gives you a transparent, file-based system to manage contributions and enforce fair play.
How PayToPlay Works
PayToPlay operates on a simple principle: every hour a player spends on your server counts toward a charge. You define the rate—for example, 15 hours equals one unit of currency—and the amount per unit. The plugin then accumulates each player's debt based on their online time. If a player's debt exceeds a configurable threshold, they are automatically kicked from the server until they settle up. All data is stored in a plain CSV file, making it easy to update even when the server is offline or you are away from your computer.
Key Features
- Automatic debt tracking: No need to manually log hours or send reminders. PayToPlay does the math for you.
- Configurable rates and limits: Set hours per charge, amount per charge, and the debt limit that triggers a kick.
- In-game commands: Players can check their own balance with
/oweor view another player's debt using/owe <player>. - CSV-based accounting: The
accounting.csvfile is human-readable and editable from any device, even without the server running. - Lightweight and server-friendly: Minimal performance impact, with a configurable worker tick rate to balance accuracy and load.
Supported Minecraft Versions and Loaders
PayToPlay is built as a standard Bukkit plugin, making it compatible with Spigot, Paper, and most forks derived from the Bukkit API. It supports Minecraft Java Edition versions from 1.8 through the latest 1.20.x releases. Whether you run a small vanilla-style survival world or a heavily modded Paper server, PayToPlay integrates smoothly without requiring client-side mods.
Installation and Setup
Getting started with PayToPlay is straightforward. First, download PayToPlay from your preferred plugin repository. Place the JAR file into your server's plugins folder and restart the server. On first launch, the plugin generates two essential files: config.yml and accounting.csv. The configuration file lets you customize the billing cycle, currency symbol, and kick threshold, while the CSV file stores each player's total paid amount.
If you manage your server through the foxygame.net launcher, adding PayToPlay is even simpler. The launcher's built-in add-on catalog offers a one-click install that automatically places the plugin in the correct directory and ensures version compatibility with your server jar. After installation, the launcher can also keep PayToPlay updated automatically, so you never miss a critical patch or new feature.
How to Install PayToPlay Manually
- Stop your Minecraft server.
- Download the latest PayToPlay JAR file.
- Copy the JAR into your server's
/pluginsfolder. - Start the server. The plugin will create
config.ymlandaccounting.csvautomatically. - Edit
config.ymlto set your desired rates and currency symbol. - Reload the plugin or restart the server to apply changes.
Configuration Deep Dive
The config.yml file gives you full control over how debt is calculated. Here are the key settings:
- HoursPerCharge: The number of hours a player must be online to incur one charge unit. Default is 15.
- AmountPerCharge: The monetary value of one charge unit. Default is 1 (dollar/euro/etc.).
- DebtToKick: The accumulated debt limit before a player is kicked. Default is 3.
- CurrencyChar: The symbol displayed in-game and in the CSV file. Default is €.
- WorkerTicks: How often the plugin checks and updates debt (20 ticks = 1 second). Default is 1200 (once per minute).
The accounting.csv file uses a simple two-column format: player name and total amount paid. Because it is a plain text file, you can update it with any text editor, even from a mobile device while on vacation. If a player sends you money via a third-party service, just add their payment to the CSV, and the plugin will immediately reduce their debt on the next check cycle. No database locks, no server restarts required.
Commands and Permissions
PayToPlay keeps player interaction minimal but effective. The /owe command lets any player check their own current debt. Adding a player name—/owe PlayerName—allows staff or curious players to view another player's balance. There are no complex permission nodes to manage; the plugin works out of the box with sensible defaults.
Why CSV Instead of a Database?
The developer chose CSV over SQLite or other databases for maximum admin flexibility. Server owners often need to update payment records when the server is offline or when they only have access to the file system via FTP or a hosting panel. A CSV file can be edited with any text editor, spreadsheet program, or even a simple command-line tool. This design philosophy keeps PayToPlay lean and avoids dependency on database drivers or active server processes.
Keeping Your Community Fair and Fun
PayToPlay is not a payment processor—it does not handle money. Instead, it acts as a transparent ledger that holds everyone accountable. By automatically kicking players who exceed the debt limit, it encourages timely contributions without requiring constant admin intervention. The plugin is ideal for small to medium servers where friends split hosting costs, but it scales well for larger communities that want a clear, automated system.
Whether you run a tight-knit SMP or a public network with donor ranks, PayToPlay removes the awkwardness of chasing payments. Download PayToPlay today and turn server cost sharing into a seamless, automated part of your Minecraft experience.