diff --git a/README.md b/README.md index c0c6294..31d6a6c 100644 --- a/README.md +++ b/README.md @@ -1,42 +1,107 @@ # start_papermc.sh -A better script for running Paper Minecraft server with features such as automatic build updates, automatic downlading, interactive eula accepting, interactive updating, etc. -> **Warning** -> -> - This script is not made for migrating versions. If you're migrating versions, delete your old server's `.jar` file and change the version in the script's settings -> - I am not responsible for any lost data -> - If enough people request it (or someone creates a PR) I'll add this functionality +A better script for running Paper Minecraft server with features such as +version downlading, automatic build update, interactive eula accepting, protection +against accidental version update, Aikar's flags out of the box, etc. +## Table of contents + + +- [Dependencies](#dependencies) +- [Basic setup](#basic-setup) +- [Updating](#updating) + - [Builds](#builds) + - [Versions](#versions) +- [Default JVM flags used](#default-jvm-flags-used) + + + + + +## Dependencies + +- `jq` +- `awk` +- `curl` + +Most, if not all, of these should be already available on your system if you're running something like Ubuntu. + + ## Basic setup + > **Note** > > Everything mentioned below is modified at the top of the `start.sh` file -1. Clone this repository and enter the directory: `git clone https://github.com/jiriks74/start_papermc.sh minecraft_server && cd minecraft_server` +1. Clone this repository and enter the directory: + +```bash +git clone https://github.com/jiriks74/start_papermc.sh minecraft_server && cd minecraft_server +``` + > **Note** > -> If you want to have the server under some specific directory name, just change `minecraft_server` to something else +> If you want to have the server under some specific directory name, just change +`minecraft_server` to something else -2. Open `star.sh` in your favorite editor *(eg. `nano start.sh)* +2. Open `start.sh` in your favorite editor *(eg. `nano start.sh`)* -3. Change the `version` variable to the version you want - ```bash -version="1.12.2" +3. Change the `select_version` variable to the version you want + +```bash +select_version="1.12.2" ``` 4. If you want a specific build, set the `select_build` variable. Othervise the sript will download the latest build: - ```bash + +```bash select_build="1620" ``` 5. Select how much memory you want your server to use ***(in megabytes)***: - ```bash + +```bash mem="8000M" ``` -6. Allow executing ov the script with `chmod +x start.sh` -7. Run the script with `./start.sh` +6. Add execute flag to the script: +```bash +chmod +x start.sh +``` + +7. Start the script + +```bash +./start.sh +``` + + +## Updating + + +### Builds + +This script can automatically update to the latest papermc build available for the +Minecraft version you selected. If you want this behaviour, leave the `select_build` +veriable empty. +Otherwise select the build you want and the script will download it for you. + + +### Versions + +> **Warning** +> +> - This script is not made for migrating versions. It won't make sure your plugins +are working or that your worlds won't get corrupted. It only downloads a new server +file, nothing else. +> - **I am not responsible for any lost data** + +This script is able to update/downgrade versions as you please. Just change the +`select_version` variable to the version you want and the script will download +it for you. + + ## Default JVM flags used By default this script uses [Aikar's Flags](https://docs.papermc.io/paper/aikars-flags). It's set up so that it automatically modifies them if over