msman.sh/README.md

112 lines
2.8 KiB
Markdown
Raw Normal View History

2023-02-23 01:15:42 +01:00
# start_papermc.sh
2023-02-23 01:44:42 +01:00
2023-02-23 05:23:14 +01:00
The best way to quickly spin up a PaperMC server.
Includes 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
<!-- TOC start -->
- [Dependencies](#dependencies)
- [Basic setup](#basic-setup)
- [Updating](#updating)
- [Builds](#builds)
- [Versions](#versions)
- [Default JVM flags used](#default-jvm-flags-used)
<!-- TOC end -->
<!-- TOC --><a name="start_papermcsh"></a>
<!-- TOC --><a name="dependencies"></a>
## Dependencies
- `jq`
- `awk`
- `curl`
2023-02-23 02:07:23 +01:00
Most, if not all, of these should be already available on your system if you're running something like Ubuntu.
<!-- TOC --><a name="basic-setup"></a>
2023-02-23 01:44:42 +01:00
## Basic setup
2023-02-23 01:44:42 +01:00
> **Note**
>
> Everything mentioned below is modified at the top of the `start.sh` file
1. Clone this repository and enter the directory:
```bash
git clone https://github.com/jiriks74/start_papermc.sh minecraft_server && cd minecraft_server
```
2023-02-23 01:49:01 +01:00
> **Note**
>
> If you want to have the server under some specific directory name, just change
`minecraft_server` to something else
2. Open `start.sh` in your favorite editor *(eg. `nano start.sh`)*
2023-02-23 01:49:01 +01:00
3. Change the `select_version` variable to the version you want
2023-02-23 01:49:01 +01:00
```bash
select_version="1.12.2"
2023-02-23 01:44:42 +01:00
```
2023-02-23 01:49:01 +01:00
4. If you want a specific build, set the `select_build` variable. Othervise the sript will download the latest build:
```bash
2023-02-23 01:44:42 +01:00
select_build="1620"
```
2023-02-23 01:49:01 +01:00
5. Select how much memory you want your server to use ***(in megabytes)***:
```bash
2023-02-23 02:54:06 +01:00
mem="8000M"
2023-02-23 01:44:42 +01:00
```
6. Add execute flag to the script:
```bash
chmod +x start.sh
```
7. Start the script
```bash
./start.sh
```
<!-- TOC --><a name="updating"></a>
## Updating
<!-- TOC --><a name="builds"></a>
### 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.
<!-- TOC --><a name="versions"></a>
### 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.
2023-02-23 01:44:42 +01:00
<!-- TOC --><a name="default-jvm-flags-used"></a>
2023-02-23 02:54:06 +01:00
## 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
12GB of memory is set for the server so you shouldn't need to change them unless you want to swap them out for something else.