9
0
mirror of https://github.com/BX-Team/DivineMC.git synced 2025-12-19 14:59:25 +00:00

[ci-skip] update README.md

This commit is contained in:
NONPLAYT
2025-03-02 02:04:30 +03:00
parent 319eb32f70
commit 0b2a1f47f5

View File

@@ -1,46 +1,50 @@
<img src="/public/logo.png" height="240" alt="DivineMC Face" align="right">
<img src="/public/logo.png" height="220" alt="DivineMC Face" align="right">
<div align="center">
<h1>DivineMC</h1>
<h3>Fork of Purpur compatible with Spigot plugins, offering the best performance for your server.</h3>
<br>
# DivineMC
[![Github Releases](https://img.shields.io/badge/Download-Releases-blue?&style=for-the-badge)](https://github.com/BX-Team/DivineMC/releases)
[![GitHub Workflow Status](https://img.shields.io/github/actions/workflow/status/BX-Team/DivineMC/build.yml?logo=GoogleAnalytics&logoColor=ffffff&style=for-the-badge)](https://github.com/BX-Team/DivineMC/actions)
[![Discord](https://img.shields.io/discord/931595732752953375?color=5865F2&label=discord&style=for-the-badge)](https://discord.gg/p7cxhw7E2M)
[![Download](https://img.shields.io/github/downloads/BX-Team/DivineMC/total?style=for-the-badge)](https://github.com/BX-Team/DivineMC/releases/latest)
DivineMC is a high-performance [Purpur](https://github.com/PurpurMC/Purpur) fork focused on maximizing server performance while maintaining plugin compatibility.
</div>
> [!WARNING]
> DivineMC is a performance-oriented fork. Make sure to take backups **before** switching to it. We also welcome a new contributor to help us improve the fork.
## ⚙️ Features
- All worlds **are ticked in parallel**, so the server can take full advantage of multicore processors.
- **Implemented Secure Seed mod** that changes default 64-bit seed to a 1024-bit seed, making it almost impossible to crack the seed.
- **Native math functions** using a new Java 22 feature, calling C functions directly from Java.
- **Optimized chunk generation** that can generate chunks up to 70% faster than vanilla.
- **Async pathfinding and entity tracker**
- **Fully compatible** with Bukkit, Spigot and Paper plugins
- **Fixes** some Minecraft bugs
- and more...
- **Based on [Purpur](https://github.com/PurpurMC/Purpur)** - Purpur is a fork of Paper with new fun and exciting gameplay features, and performance boost.
- **Popular mods implemented** - Patches from mods such as Lithium, VMP, C2ME and others.
- **Async Pathfinding** - Makes pathfinding-related work happen asynchronously (by [Petal](https://github.com/Bloom-host/Petal)).
- **Secure Seed** - A feature that changes default 64-bit seed to a 1024-bit seed, making it almost impossible to crack the seed.
- **Configurable chat reports** - Disallow players from reporting others messages to Mojang.
- **Optimized Default Configuration** - The default configuration files is optimized.
- **Bug fixes** - Fixed Minecraft bugs that reported on Mojira.
- ... and more!
## 📥 Downloading & Installing
If you want to install DivineMC, you can read our [installation documentation](https://bxteam.org/docs/divinemc/getting-started/installation).
## ⬇️ Downloads
In normal case, you can download the latest JAR file from releases tab [here](https://github.com/BX-Team/DivineMC/releases/latest)
**Please note:** Java >= 21 is required.
## ⚖️ License
Patches are licensed under GPL-3.0.
All other files are licensed under MIT.
You can find the latest successful build in [GitHub Action](https://github.com/BX-Team/DivineMC/actions) or [Releases](https://github.com/BX-Team/DivineMC/releases)
## 📈 bStats
[![bStats](https://bstats.org/signatures/server-implementation/DivineMC.svg)](https://bstats.org/plugin/server-implementation/DivineMC)
## API
### [Javadoc](https://repo.bxteam.org/javadoc/snapshots/org/bxteam/divinemc/divinemc-api/1.21.4-R0.1-SNAPSHOT)
## 📦 Building and setting up
Run the following commands in the root directory:
### Dependency Information
```bash
> ./gradlew applyAllPatches # apply all patches
> ./gradlew createMojmapPaperclipJar # build the server jar
```
#### Maven
For anything else you can refer to our [contribution guide](https://bxteam.org/docs/divinemc/development/contributing).
## 🧪 API
### Maven
```xml
<repository>
<id>bx-team</id>
@@ -56,32 +60,39 @@ All other files are licensed under MIT.
</dependency>
```
#### Gradle
```groovy
### Gradle
```kotlin
repositories {
maven("https://repo.bxteam.org/snapshots")
}
```
```groovy
```kotlin
dependencies {
compileOnly("org.bxteam.divinemc:divinemc-api:1.21.4-R0.1-SNAPSHOT")
}
```
## 📦 Building and setting up
### Initial setup
First, clone this repository (do not download it) and the run the following command in the root directory:
```bash
./gradlew applyAllPatches
```
After that, project is ready to use and editing it.
We also have a [Javadoc](https://repo.bxteam.org/javadoc/snapshots/org/bxteam/divinemc/divinemc-api/1.21.4-R0.1-SNAPSHOT/raw/index.html) for the API.
### Creating a patch
Patches are effectively just commits in either `paper-api`, `paper-server`, `purpur-api`, `purpur-server` or `divinemc-server`. If you want to learn how to work with patch system, you can read our [contributing documentation](https://bxteam.org/docs/divinemc/development/contributing).
## ⚖️ License
DivineMC is licensed under the GNU General Public License v3.0. You can find the license [here](LICENSE).
### Compiling
Use the command `./gradlew build` to build the API and server. Compiled JARs will be placed under `divinemc-api/build/libs` and `divinemc-server/build/libs`. **These JARs are not used to start a server**.
## 📜 Credits
DivineMC includes patches from other forks, and without these forks, DivineMC wouldn't exist today. Here are the list of these forks:
To compile a server-ready paperclip jar, run `./gradlew createMojmapPaperclipJar`. The compiled paperclip jar will be put in `divinemc-server/build/libs`.
- [Purpur](https://github.com/PurpurMC/Purpur)
- <details>
<summary>📜 Expand to see forks that DivineMC takes patches from.</summary>
<p>
<a href="https://github.com/Bloom-host/Petal">Petal</a><br>
<a href="https://github.com/fxmorin/carpet-fixes">Carpet Fixes</a><br>
<a href="https://github.com/ProjectEdenGG/Parchment">Parchment</a><br>
<a href="https://github.com/LeavesMC/Leaves">Leaves</a><br>
<a href="https://github.com/KaiijuMC/Kaiiju">Kaiiju</a><br>
<a href="https://github.com/SparklyPower/SparklyPaper">SparklyPaper</a><br>
<a href="https://github.com/plasmoapp/matter">Matter</a><br>
<a href="https://github.com/CraftCanvasMC/Canvas">Canvas</a><br>
</p>
</details>
###### We don't steal logo from YatopiaMC! [List of all forks](https://gist.github.com/NONPLAYT/48742353af8ae36bcef5d1c36de9730a)
If you want to know more about other forks and see other Minecraft projects, you can go to our [list of different Minecraft server Software](https://gist.github.com/NONPLAYT/48742353af8ae36bcef5d1c36de9730a).