A minecraft paper survival plugin for private servers
List of features
-
Custom enchantments
Flight -> Entities you hit fly up and receive fall damage as they fall down
Furnace -> Ore are smelted directly when you break them
Telepathy -> Items you break go directly to your inventory -
Support for multiple languages
Currently, German and English are supported. Use /language to change your language -
Quality of life improvements
- /ping -> Get your current ping
- /voterestart -> Vote for a serverrestart - if the majority of online players vote for a restart the server will be restartet
- /sit -> Allows you to sit
- /afk -> Show in the tablist that you are afk
- Custom tab list
- Custom join/quit messages
- Support for MiniMessage in chat messages -
Bow combo
Deal more damage with your bow when you hit a combo -
DeathMinigame
A Jump 'n' Run minigame that triggers upon player death:
How it works:
- Upon death, players get a chance to recover their items by completing a parkour challenge
- the experience will still be dropped to balance the plugin
- Successfully completing the challenge returns all items to the player
- Failing the challenge drops items at the death location
Difficulty System:
- Difficulty increases with each successful completion
- Players can spend diamonds to lower their difficulty
- Maximum difficulty: default is
10
- Diamond cost: default is
6
Commands:
- Settings menu:
/game settings
Configuration:
- Use
/game settings
to configure parkour parameters - See "In game settings menu" section for details
- Upon death, players get a chance to recover their items by completing a parkour challenge
-
In game settings menu
This plugin features an in game settings menu to every operator of the server. It can be reached through the command
/game settings
. In the settings many important values can be changed to fix problems or set up the plugin.- Menus inside the settings:
- setUp: hosts all settings to set up the plugin before a playthrough
- parkourStartHeight: Starting height for parkour generation (Default:
100
) - parkourLength: Length of the parkour course (Default:
10
) - costToLowerTheDifficulty: Diamond cost to reduce difficulty (Default:
6
) - timeToDecideWhenRespawning: Time limit for minigame decision in seconds (Default:
10
)
- parkourStartHeight: Starting height for parkour generation (Default:
- introduction: Manage player introduction status
- Players start with 'false' and receive a brief introduction on first death
- Players start with 'false' and receive a brief introduction on first death
- difficulty: Manage individual player parkour difficulty
- difficultyPlayerSettings: Configure difficulty level per player
- difficultyPlayerSettings: Configure difficulty level per player
- usesPlugin: Toggle whether players can access the parkour minigame
- setUp: hosts all settings to set up the plugin before a playthrough
- Menus inside the settings:
-
Database Connection
- Usage of the plugin is possible with or without a PostgreSQL database, without a database all stats and info created by the plugin are only saved until the next server restart.
- Connecting a database
- Start the server and plugin once
- Enter your database-parameters into the
config.yml
file from this plugin - finished
Support and Project Discussion:
First download the latest version and move it to your server's plugins folder.
Make sure to have a server based on the paper software
First make sure that the jar is in the correct directory, then start the server.
If everything works there should be a config.yml
file in the StationOfDoom
directory.
Go to your Discord channel where you want to receive the messages and create a new webhook. Copy the url, paste it into the config.yml
and set enabled to true
.
Download the plugin from the releases tab and copy the plugin to your plugins folder.
To compile the plugin, you need JDK 21 and an internet connection.
Clone this repo and run gradle jar
from your terminal. You can find the compiled jar in the project root's build/libs
directory.
Add the plugin as a dependency to your plugin
Gradle (Groovy dsl)
maven {
name "reposiliteRepositoryReleases"
url "https://repo.jonasfranke.xyz/releases"
}
dependencies {
implementation "com.github.atompilz-devteam:TAG"
}
Gradle (Kotlin dsl)
maven {
name = "reposiliteRepositoryReleases"
url = uri("https://repo.jonasfranke.xyz/releases")
}
dependencies {
implementation("com.github.atompilz-devteam:TAG")
}
Maven
<repository>
<id>reposilite-repository</id>
<name>Jonas Franke Repository</name>
<url>https://repo.jonasfranke.xyz/<repository></url>
</repository>
<dependency>
<groupId>com.github.atompilz-devteam</groupId>
<artifactId>stationofdoom</artifactId>
<version>TAG</version>
</dependency>
Contributions, issues, and feature requests are welcome! Give a ⭐️ if you like this project!