diff --git a/LICENSE.md b/LICENSE.md index fb78c0f..72a928b 100644 --- a/LICENSE.md +++ b/LICENSE.md @@ -2,7 +2,7 @@ Lophine inherits its licensing from the included upstream projects. Lophine从上游继承了许可证。 -As such, Lophine is licensed under the +As such, Lophine is licensed under the [GNU General Public License version 3](licenses/GPL.md); as it inherits it from Luminol, who in turn inherits it from the original Folia, Paper, Spigot, Bukkit and CraftBukkit projects. diff --git a/README.md b/README.md index d65a80e..1e7b52f 100644 --- a/README.md +++ b/README.md @@ -13,21 +13,27 @@ [English](./README_EN.md) | **中文** ## 特性 - - 支持部分Bukkit插件 - - 可配置的原版特性 - - Tpsbar 支持 - - 对单线程区域性能的优化 - - 更多有用的功能 + +- 支持部分Bukkit插件 +- 可配置的原版特性 +- Tpsbar 支持 +- 对单线程区域性能的优化 +- 更多有用的功能 ## 下载 + 任何版本都可以在 [Release](https://github.com/LuminolMC/Lophine/releases), 中找到,你也可以通过[以下步骤](./README.md#构建)自己构建。 ## 构建 + 要构建一个paperclip jar,你需要运行以下命令。你可以在lophine-server/build/libs中找到jar(注意:需要`JDK21`) + ```shell ./gradlew applyAllPatches && ./gradlew createMojmapPaperclipJar ``` + ## 使用API + 使用 Gradle: ```kotlin @@ -62,26 +68,32 @@ dependencies { ``` ## 联系方式 + > 如果您对这个项目感兴趣或有任何问题,请随时向我们提问。 **QQ群: [1015048616](http://qm.qq.com/cgi-bin/qm/qr?_wv=1027&k=QML5kIVsniPi1PlZvnjHQT_02EHsZ5Jc&authKey=%2FTCJsZC7JFQ9sxAroPCKuYnlV57Z5fyqp36ewXZk3Sn4iJ9p4MB1JKdc%2FFcX3HOM&noverify=0&group_code=1015048616)** | QQ频道: [点击加入](https://pd.qq.com/s/eq9krf9j) | Telegram: [点击加入](https://t.me/LuminolMinecraft) | Discord: [点击加入](https://discord.gg/Qd7m3V6eDx) ## 关于 Issue + 当您遇到任何问题时,请向我们提问,我们将尽力解决,但请记得清楚地描述您的问题并提供足够的日志等信息。 ## 贡献代码 + 可查看 [Contributing](./docs/CONTRIBUTING.md) ## BStats + ![bStats](https://bstats.org/signatures/server-implementation/Lophine.svg "bStats") ## 特别感谢 + 感谢[LegacyLands](https://github.com/LegacyLands)对本项目的赞助,如果你想开发一些跨folia/非folia平台的插件,[legacy-lands-library](https://github.com/LegacyLands/legacy-lands-library/)将会是个不错的lib ![legacy-lands-logo](public/image/legacy-lands-logo.png) ## 请给我们一个 ⭐Star! + > 你的每一个免费的 ⭐Star 就是我们每一个前进的动力。 diff --git a/README_EN.md b/README_EN.md index 9ba0e14..1606b34 100644 --- a/README_EN.md +++ b/README_EN.md @@ -2,7 +2,8 @@ # Lophine -

LightingLuminol is a Luminol fork with many useful optimizations and configurable vanilla features, aims to provide more function for survival-usable circuit on folia

+

LightingLuminol is a Luminol fork with many useful optimizations and configurable vanilla features, aims to provide +more function for survival-usable circuit on folia

[![License](https://img.shields.io/github/license/LuminolMC/Lophine?style=flat-square)](LICENSE.md) [![Issues](https://img.shields.io/github/issues/LuminolMC/Lophine?style=flat-square)](https://github.com/LuminolMC/Lophine/issues) @@ -13,21 +14,27 @@ **English** | [中文](./README.md) ## Features - - Supported some Bukkit plugin - - Configurable vanilla features - - Tpsbar support - - Useful optimizations to improve the performance of single threaded region - - More functions + +- Supported some Bukkit plugin +- Configurable vanilla features +- Tpsbar support +- Useful optimizations to improve the performance of single threaded region +- More functions ## Download + Any versions are available in the [release](https://github.com/LuminolMC/Lophine/releases), also you can build it by yourself through [the following steps](./README_EN.md#Build). ## Build + To build a paperclip jar, you need to run the following command. You can find the jar in lophine-server/build/libs(Note: `JDK21` is needed) + ```shell ./gradlew applyAllPatches && ./gradlew createMojmapPaperclipJar ``` + ## Using API + For gradle: ```kotlin @@ -62,25 +69,31 @@ For maven ``` ## Contact + > If you are interested in this project or have any issue, feel free to ask us. **QQ Group: [1015048616](http://qm.qq.com/cgi-bin/qm/qr?_wv=1027&k=hTPlI5j6XB8pgk4sdx6RkjhBPGG1r4IR&authKey=pnu6uCKQP7Sja2CJWC15Qi3BeI%2FAsh8tU4m5muufMBjbB3zz%2BwHBZCTRRdSNKhld&noverify=0&group_code=1015048616)** | QQ Channel: [Click To Join](https://pd.qq.com/s/eq9krf9j) | Telegram: [Click To Join](https://t.me/LuminolMinecraft) | Discord: [Click To Join](https://discord.gg/Qd7m3V6eDx) ## About Issue + When you meet any problems, just ask us, we will do our best to solve it, but remember to state your problem clear and provide enough logs etc.
## Pull Requests + See [Contributing](./docs/CONTRIBUTING_EN.md) ## BStats + ![bStats](https://bstats.org/signatures/server-implementation/Lophine.svg "bStats") ## Special Thanks + Thanks [LegacyLands](https://github.com/LegacyLands) for sponsoring this project.If you want to develop some crossing folia/non-folia platform plugins, [legacy-lands-library](https://github.com/LegacyLands/legacy-lands-library/) will be a nice choice for you ![legacy-lands-logo](public/image/legacy-lands-logo.png) ## Please ⭐star us! +
diff --git a/docs/CONTRIBUTING.md b/docs/CONTRIBUTING.md index c67797b..bdcb3fd 100644 --- a/docs/CONTRIBUTING.md +++ b/docs/CONTRIBUTING.md @@ -1,5 +1,5 @@ 为Lophine贡献代码 -=========== +=============== [English](./CONTRIBUTING_EN.md) | **中文** @@ -45,17 +45,20 @@ Lophine 使用和 Folia 一样的补丁系统,并为了针对不同部分的 4. 进入 仓库根目录下的 `*-api` 和 `*-server` 文件夹进行修改。 以下为对上述各个文件夹的简单描述,详细描述可以参考[这里](https://github.com/Toffikk/paperweight-examples/blob/18241979c88068d5b061d95ad69c98ecb201c246/README.md): + 1. API部分 - - `lophine-api` :对新增API的修改 - - `luminol-api` :对luminol-API的修改应当在此文件夹下进行 - - `folia-api` :对folia-API的修改应当在此文件夹下进行 - - `paper-api` :对paper-API/spigot-API/bukkit-API的修改应该在此文件夹下进行 + +- `lophine-api` :对新增API的修改 +- `luminol-api` :对luminol-API的修改应当在此文件夹下进行 +- `folia-api` :对folia-API的修改应当在此文件夹下进行 +- `paper-api` :对paper-API/spigot-API/bukkit-API的修改应该在此文件夹下进行 2. Server部分 - - `lophine-server` :对Minecraft原版服务器的修改和新增文件应当在此文件夹下进行 - - `luminol-server` :对luminol-server的修改应当在此文件夹下进行 - - `folia-server` :对folia-Server的修改应当在此文件夹下进行 - - `paper-server` :对于paper对服务器逻辑的修改应当在此文件夹下进行 + +- `lophine-server` :对Minecraft原版服务器的修改和新增文件应当在此文件夹下进行 +- `luminol-server` :对luminol-server的修改应当在此文件夹下进行 +- `folia-server` :对folia-Server的修改应当在此文件夹下进行 +- `paper-server` :对于paper对服务器逻辑的修改应当在此文件夹下进行 顺便一提,仓库根目录下的 `*-api` 和 `*-server` 并不是正常的 git 仓库: @@ -82,7 +85,7 @@ Lophine 使用和 Folia 一样的补丁系统,并为了针对不同部分的 1. 在 HEAD 上直接进行修改; 2. 使用 `git commit -a --fixup ` 来进行一个更正提交;(不要提交对在lophine新建文件的修改) - - 如果你想要更改提交信息,你也可以用 `--squash` 来代替 `--fixup`。 + - 如果你想要更改提交信息,你也可以用 `--squash` 来代替 `--fixup`。 3. 使用 `git rebase -i --autosquash base` 来进行自动变基,你只需要输入 `:q` 来关闭确认页面即可; 4. 运行 Gradle 任务 `fixupPaperApiFilePatches` 来修改已被修改的在lophine新建文件的补丁(注意不要提交); 5. 运行 Gradle 任务 `rebuildAllServerPatches` 来修改已被修改的补丁; diff --git a/docs/CONTRIBUTING_EN.md b/docs/CONTRIBUTING_EN.md index a0fea10..e31b2e0 100644 --- a/docs/CONTRIBUTING_EN.md +++ b/docs/CONTRIBUTING_EN.md @@ -1,5 +1,5 @@ Contributing to Lophine -=========== +======================= **English** | [中文](./CONTRIBUTING.md) @@ -50,16 +50,18 @@ If you have forked the main repository, then you should follow the steps below: The following is the simple description of the aforementioned folders, detailed description can be referred to [here](https://github.com/Toffikk/paperweight-examples/blob/18241979c88068d5b061d95ad69c98ecb201c246/README.md): 1. API part - - `lophine-api` : Modifications to the new API - - `luminol-api` : Modifications to Luminol API should be carried out in this folder - - `folia-api` : Modifications to Folia API should be carried out in this folder - - `paper-api` : Modifications to Paper API/Spigot API/Bukkit API should be carried out in this folder + +- `lophine-api` : Modifications to the new API +- `luminol-api` : Modifications to Luminol API should be carried out in this folder +- `folia-api` : Modifications to Folia API should be carried out in this folder +- `paper-api` : Modifications to Paper API/Spigot API/Bukkit API should be carried out in this folder 2. Server part - - `lophine-server` : Changes and new files to the Minecraft vanilla server should be made in this folder - - `luminol-server` : Changes to luminol-server should be made in this folder - - `folia-server` : Changes to folia-server should be made in this folder - - `paper-server` : Modifications to the server logic for paper should be made in this folder + +- `lophine-server` : Changes and new files to the Minecraft vanilla server should be made in this folder +- `luminol-server` : Changes to luminol-server should be made in this folder +- `folia-server` : Changes to folia-server should be made in this folder +- `paper-server` : Modifications to the server logic for paper should be made in this folder BTW, `*-api` and `*-server` and are not normal git repositories. diff --git a/licenses/GPL.md b/licenses/GPL.md index 2fb2e74..5fb847d 100644 --- a/licenses/GPL.md +++ b/licenses/GPL.md @@ -1,4 +1,5 @@ ### GNU GENERAL PUBLIC LICENSE +============================== Version 3, 29 June 2007 @@ -217,23 +218,23 @@ produce it from the Program, in the form of source code under the terms of section 4, provided that you also meet all of these conditions: -- a) The work must carry prominent notices stating that you modified - it, and giving a relevant date. -- b) The work must carry prominent notices stating that it is - released under this License and any conditions added under - section 7. This requirement modifies the requirement in section 4 - to "keep intact all notices". -- c) You must license the entire work, as a whole, under this - License to anyone who comes into possession of a copy. This - License will therefore apply, along with any applicable section 7 - additional terms, to the whole of the work, and all its parts, - regardless of how they are packaged. This License gives no - permission to license the work in any other way, but it does not - invalidate such permission if you have separately received it. -- d) If the work has interactive user interfaces, each must display - Appropriate Legal Notices; however, if the Program has interactive - interfaces that do not display Appropriate Legal Notices, your - work need not make them do so. +- a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. +- b) The work must carry prominent notices stating that it is + released under this License and any conditions added under + section 7. This requirement modifies the requirement in section 4 + to "keep intact all notices". +- c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. +- d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. A compilation of a covered work with other separate and independent works, which are not by their nature extensions of the covered work, @@ -252,42 +253,42 @@ sections 4 and 5, provided that you also convey the machine-readable Corresponding Source under the terms of this License, in one of these ways: -- a) Convey the object code in, or embodied in, a physical product - (including a physical distribution medium), accompanied by the - Corresponding Source fixed on a durable physical medium - customarily used for software interchange. -- b) Convey the object code in, or embodied in, a physical product - (including a physical distribution medium), accompanied by a - written offer, valid for at least three years and valid for as - long as you offer spare parts or customer support for that product - model, to give anyone who possesses the object code either (1) a - copy of the Corresponding Source for all the software in the - product that is covered by this License, on a durable physical - medium customarily used for software interchange, for a price no - more than your reasonable cost of physically performing this - conveying of source, or (2) access to copy the Corresponding - Source from a network server at no charge. -- c) Convey individual copies of the object code with a copy of the - written offer to provide the Corresponding Source. This - alternative is allowed only occasionally and noncommercially, and - only if you received the object code with such an offer, in accord - with subsection 6b. -- d) Convey the object code by offering access from a designated - place (gratis or for a charge), and offer equivalent access to the - Corresponding Source in the same way through the same place at no - further charge. You need not require recipients to copy the - Corresponding Source along with the object code. If the place to - copy the object code is a network server, the Corresponding Source - may be on a different server (operated by you or a third party) - that supports equivalent copying facilities, provided you maintain - clear directions next to the object code saying where to find the - Corresponding Source. Regardless of what server hosts the - Corresponding Source, you remain obligated to ensure that it is - available for as long as needed to satisfy these requirements. -- e) Convey the object code using peer-to-peer transmission, - provided you inform other peers where the object code and - Corresponding Source of the work are being offered to the general - public at no charge under subsection 6d. +- a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. +- b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the Corresponding + Source from a network server at no charge. +- c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. +- d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. +- e) Convey the object code using peer-to-peer transmission, + provided you inform other peers where the object code and + Corresponding Source of the work are being offered to the + public at no charge under subsection 6d. A separable portion of the object code, whose source code is excluded from the Corresponding Source as a System Library, need not be @@ -363,23 +364,23 @@ Notwithstanding any other provision of this License, for material you add to a covered work, you may (if authorized by the copyright holders of that material) supplement the terms of this License with terms: -- a) Disclaiming warranty or limiting liability differently from the - terms of sections 15 and 16 of this License; or -- b) Requiring preservation of specified reasonable legal notices or - author attributions in that material or in the Appropriate Legal - Notices displayed by works containing it; or -- c) Prohibiting misrepresentation of the origin of that material, - or requiring that modified versions of such material be marked in - reasonable ways as different from the original version; or -- d) Limiting the use for publicity purposes of names of licensors - or authors of the material; or -- e) Declining to grant rights under trademark law for use of some - trade names, trademarks, or service marks; or -- f) Requiring indemnification of licensors and authors of that - material by anyone who conveys the material (or modified versions - of it) with contractual assumptions of liability to the recipient, - for any liability that these contractual assumptions directly - impose on those licensors and authors. +- a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or +- b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or +- c) Prohibiting misrepresentation of the origin of that material, + or requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or +- d) Limiting the use for publicity purposes of names of licensors + or authors of the material; or +- e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or +- f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions + of it) with contractual assumptions of liability to the recipient, + for any liability that these contractual assumptions directly + impose on those licensors and authors. All other non-permissive additional terms are considered "further restrictions" within the meaning of section 10. If the Program as you diff --git a/licenses/MIT.md b/licenses/MIT.md index 6c40a95..7f40f16 100644 --- a/licenses/MIT.md +++ b/licenses/MIT.md @@ -1,5 +1,5 @@ -The MIT License (MIT) -===================== +### The MIT License (MIT) +========================= Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation