# AstraDeploy Usage Guide Quick practical examples for each supported core. ## Common rules - For interactive mode use: ```bash sudo bash install.sh --easy --core ``` - For automation/bot mode always add: ```bash --yes --accept-license yes ``` - For Java cores also add: ```bash --accept-eula yes ``` - Always choose service mode explicitly for repeatable behaviour: - `tmux-systemd` (recommended UX) - `systemd` - `screen` - `none` (prepare only) ## Java cores ### Paper (`--core paper`) - Beginner: ```bash sudo bash install.sh --easy --core paper --service tmux-systemd ``` - Non-interactive: ```bash sudo bash install.sh \ --yes \ --core paper \ --dir /opt/minecraft/paper \ --service systemd \ --ram 4G \ --port 25565 \ --accept-eula yes \ --accept-license yes \ --firewall yes \ --locale en ``` ### Purpur (`--core purpur`) - Beginner: ```bash sudo bash install.sh --easy --core purpur --service tmux-systemd ``` - Non-interactive: ```bash sudo bash install.sh \ --yes \ --core purpur \ --dir /opt/minecraft/purpur \ --service tmux-systemd \ --ram 4G \ --port 25565 \ --accept-eula yes \ --accept-license yes \ --firewall yes \ --locale en ``` ### Velocity (`--core velocity`) - Beginner: ```bash sudo bash install.sh --easy --core velocity --service tmux-systemd ``` - Non-interactive: ```bash sudo bash install.sh \ --yes \ --core velocity \ --dir /opt/minecraft/velocity \ --service tmux-systemd \ --ram 2G \ --port 25577 \ --accept-eula yes \ --accept-license yes \ --firewall yes \ --locale en ``` ### PowerNukkitX (`--core powernukkitx`) - Beginner: ```bash sudo bash install.sh --easy --core powernukkitx --service tmux-systemd ``` - Non-interactive: ```bash sudo bash install.sh \ --yes \ --core powernukkitx \ --dir /opt/minecraft/powernukkitx \ --service systemd \ --ram 2G \ --port 19132 \ --accept-eula yes \ --accept-license yes \ --firewall yes \ --locale en ``` ## Bedrock PHP cores ### PMMP (`--core pmmp`) - Beginner: ```bash sudo bash install.sh --easy --core pmmp --service tmux-systemd ``` - Non-interactive: ```bash sudo bash install.sh \ --yes \ --core pmmp \ --dir /opt/minecraft/pmmp \ --service tmux-systemd \ --port 19132 \ --accept-license yes \ --firewall yes \ --locale en ``` ### NetherGamesMC (`--core nethergamesmc`) Supports additional options: - `--build` — PHP build tag (`latest` or concrete tag). - `--mc-version` — PocketMine-MCPE tag (`latest` or specific). - Beginner: ```bash sudo bash install.sh --easy --core nethergamesmc --service tmux-systemd ``` - Non-interactive: ```bash sudo bash install.sh \ --yes \ --core nethergamesmc \ --dir /opt/minecraft/nethergamesmc \ --service screen \ --build latest \ --mc-version latest \ --accept-license yes \ --firewall yes \ --locale en ``` ### Recommended bot-facing step stream When reporting progress to users in a bot, send these checkpoints: 1. "preflight" 2. "package install" 3. "core download/build" 4. "service configured" 5. "finished" You can use script output or report callback events: - `started` - `step` - `success` - `failed` ### BDS (`--core bds`) - Beginner: ```bash sudo bash install.sh --easy --core bds --service tmux-systemd ``` - Non-interactive: ```bash sudo bash install.sh \ --yes \ --core bds \ --dir /opt/minecraft/bds \ --service systemd \ --mc-version latest \ --accept-license yes \ --firewall yes \ --locale en ``` Notes: - `--mc-version` for BDS means Bedrock server version (example: `1.21.3.01`) or `latest`. ## Update mode Use for replacing files on an existing server directory: ```bash sudo bash install.sh \ --update \ --core \ --dir /opt/minecraft/ \ --yes \ --accept-license yes ``` For Java cores add `--accept-eula yes`.