Skip to content

Commit 5109261

Browse files

File tree

27 files changed

+2442
-114
lines changed

27 files changed

+2442
-114
lines changed

docs-bedrock/bds/process/levilamina/levilamina-plugins.md renamed to docs-bedrock/bds/process/levilamina/levilamina-plugins.mdx

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,19 +3,16 @@ title: 插件安装教程
33
sidebar_position: 1
44
---
55

6+
import StructureExplorer from "@site/src/components/StructureExplorer";
7+
import { levilamnaPluginStructure } from "@site/src/data/structures";
8+
69
# 插件安装教程
710

811
## 插件的结构
912

1013
LeviLamina 的插件是以文件夹的格式存在的。通常插件文件夹中包含以下内容:
1114

12-
<!-- Use c to highlight comments -->
13-
```c
14-
插件文件夹
15-
├─manifest.json // 插件元数据文件,该文件必须存在并格式正确才能被 LeviLamina 识别
16-
├─(插件配置文件和数据库)... // 插件生成的配置文件和数据库等,大多数插件的配置文件名叫 config.json,并以一个文件夹或一个 .db 或 .json 后缀文件作为数据库
17-
├─(插件代码或二进制文件)... // 插件源代码,通常是 .js、.lua、.dll 后缀的文件。不要删除,修改或重命名文件,否则可能导致插件无法运行!
18-
```
15+
<StructureExplorer data={levilamnaPluginStructure} />
1916

2017
通常情况下,你不需要手动修改 `manifest.json` 这个文件,因为插件作者会将它事先配置好。如果有特殊插件需要手动配置这个文件,该插件文档应该会给出相应教程。
2118

docs-bedrock/bds/start/basic/server-dir-structure.md renamed to docs-bedrock/bds/start/basic/server-dir-structure.mdx

Lines changed: 7 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -3,42 +3,20 @@ title: 服务端结构
33
sidebar_position: 1
44
---
55

6+
import StructureExplorer from "@site/src/components/StructureExplorer";
7+
import { bdsServerStructure } from "@site/src/data/structures";
8+
69
# 服务端结构
710

811
我们先来简单看一眼 BDS **开服后** 的文件夹结构:
912

10-
<!-- Use c to highlight comments -->
11-
```c
12-
BDS服务端文件夹
13-
├─behavior_packs // 安装新行为包的文件夹
14-
├─config // 没啥用
15-
├─definitions // 貌似是生成群系的内容
16-
├─development_behavior_packs // 为开发者提供安装新行为包的文件夹
17-
├─development_resource_packs // 为开发者提供安装新资源包的文件夹
18-
├─development_skin_packs // 为开发者提供安装新皮肤包的文件夹
19-
├─resource_packs // 安装新资源包的文件夹
20-
├─world-templates // 世界模板
21-
├─worlds // 主世界文件夹
22-
│ └─Bedrock level // 世界存档
23-
│ ├─db // 存档数据文件夹
24-
│ ├─level_dat // 存档设定
25-
│ ├─level.dat_old // 存档设定 (旧)
26-
│ └─level_name.txt // 存档名称
27-
├─allowlist.json // 白名单文件
28-
├─bedrock_server.exe // 服务端启动程序
29-
├─bedrock_server.pdb // 程序数据库文件
30-
├─bedrock_server_how_to.html // 如何使用 BDS 服务器的官方指南 (没多大用处,看看就行)
31-
├─permissions.json // 管理员 (OP) 玩家相关数据
32-
├─release-notes.txt // 服务端发行版本详情
33-
├─server.properties // 配置文件
34-
└─valid_known_packs.json // 已知的附加包
35-
```
36-
37-
<!-- :::info
13+
<StructureExplorer data={bdsServerStructure} />
14+
15+
{/* :::info
3816
3917
对于世界文件夹的详细说明,请前往 **[世界文件架构](what-is-world.md)**
4018
41-
::: -->
19+
::: */}
4220

4321
## 根目录下的一些文件
4422

Lines changed: 89 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,89 @@
1+
---
2+
title: 服务端结构
3+
sidebar_position: 1
4+
---
5+
6+
import StructureExplorer from "@site/src/components/StructureExplorer";
7+
import { nukitServerStructure } from "@site/src/data/structures";
8+
9+
# 服务端结构
10+
11+
我们先来简单看一眼 Nukkit **开服后** 的文件夹结构(大致结构是这样,部分分支会因为加了不同的功能结构会不一样):
12+
13+
<StructureExplorer data={nukitServerStructure} />
14+
15+
{/* :::info
16+
17+
对于世界文件夹的详细说明,请前往 **[世界文件架构](what-is-world.md)**
18+
19+
::: */}
20+
21+
## 根目录下的一些文件
22+
23+
---
24+
25+
- `nukkit-1.0-SNAPSHOT.jar`
26+
- 这是 Nukkit 的核心程序文件,用于启动和运行服务端。
27+
28+
---
29+
30+
- `start.bat / start.sh / start.command`
31+
32+
- 启动服务器的脚本文件,分别对应 Windows、Linux 和 macOS 系统,用于启动和运行《我的世界》基岩版服务器。
33+
34+
- 你可以改名叫任何名字 (只要以 `.bat / .sh / .command` 结尾就行),但不建议你这么做,可能会导致成为后续操作报错的因素。例如:
35+
1. 若你使用 **面板** 开服,需要在对应的 **启动路径** 中修改服务端启动程序的文件名
36+
2. 若你使用 **启用脚本** 开服,需要在脚本对应位置的 **启动命令** 中修改 **启动程序的文件名****该服务端启动程序的文件名**
37+
38+
---
39+
40+
- `server.properties`
41+
- 这是服务器的主要配置文件,用于设置服务器的各种参数,如服务器名称、端口号、最大玩家数、游戏模式等。
42+
43+
---
44+
45+
- `permissions.yml`
46+
- 用于设置玩家权限的文件,可以定义不同用户组的权限。
47+
48+
---
49+
50+
- `banned-players.txt 和 banned-ips.txt`
51+
- 分别用于存储被封禁的玩家名单和 IP 地址。
52+
53+
---
54+
55+
- `worlds`
56+
- 这是存储主世界文件夹的地方。每个世界都有自己的子文件夹,其中包含该世界的所有数据,如地形、建筑、玩家进度等。
57+
- `world`
58+
- 包含特定世界的存档数据。
59+
- `level_dat`
60+
- 世界的基本信息文件。
61+
- `region 文件夹`
62+
- 存储世界区块数据。
63+
- `entities 文件夹`
64+
- 存储世界中的实体数据。
65+
66+
---
67+
68+
- `plugins 文件夹`
69+
- 用于存放所有插件的 .jar 文件。插件可以扩展服务器的功能,例如添加新的命令、游戏规则或事件处理。
70+
71+
---
72+
73+
- `whitelist.txt`
74+
- 白名单文件,列出了允许进入服务器的玩家列表。
75+
- (如果你在 `server.properties` 中开启了白名单,你就可以在该文件中添加和管理谁被允许或不被允许进入服务器)。
76+
77+
---
78+
79+
- `logs 文件夹`
80+
- 存储服务器运行时生成的日志文件,用于记录服务器的运行状态和玩家行为。
81+
82+
---
83+
84+
- `rcon_password.txt`
85+
- 用于存储 RCON(远程控制)功能的密码。
86+
87+
---
88+
89+
至此,大部分的以 Nukkit 为基础的服务器核心服务端的结构已经大致呈现在你眼前。

docs-java/process/mobile-player/geyser/upgrade/extended/fix.md renamed to docs-java/process/mobile-player/geyser/upgrade/extended/fix.mdx

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,9 @@ title: 游戏机制
33
sidebar_position: 2
44
---
55

6+
import StructureExplorer from "@site/src/components/StructureExplorer";
7+
import { geyserExtensionStructure } from "@site/src/data/structures";
8+
69
# 游戏机制
710

811
目前,你服务器的基岩版玩家可能会遇到一些问题
@@ -158,13 +161,7 @@ Broadcaster 通过模拟 Xbox Live 客户端,将你的 Geyser/基岩版服务
158161

159162
2. **安装扩展**
160163

161-
```text
162-
服务器根目录/
163-
├── plugins/
164-
│ └── Geyser-Spigot/
165-
│ └── extensions/
166-
│ └── MCXboxBroadcastExtension.jar
167-
```
164+
<StructureExplorer data={geyserExtensionStructure} />
168165

169166
3. **重启服务器**
170167
- 重启服务器以加载扩展
Lines changed: 130 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,130 @@
1+
---
2+
title: 概述
3+
sidebar_position: 2
4+
---
5+
6+
import StructureExplorer from "@site/src/components/StructureExplorer";
7+
import { mavenProjectStructure, gradleProjectStructure } from "@site/src/data/structures";
8+
9+
# 概述
10+
11+
## 什么是构建?
12+
13+
构建就是将源代码转换成可以运行的插件(jar 文件)的过程。就像把散落的零件组装成一个完整的机器一样。
14+
15+
## 选择合适的构建方式
16+
17+
根据你的情况,可以选择以下三种方式之一:
18+
19+
1. **使用 IDEA(推荐)**
20+
- 适合:新手,不熟悉命令行的用户
21+
- 优点:图形界面,操作直观
22+
- 缺点:需要安装 IDEA
23+
24+
2. **使用终端**
25+
- 适合:熟悉命令行的用户,服务器环境
26+
- 优点:轻量级,适合自动化
27+
- 缺点:需要记忆命令
28+
29+
3. **使用 GitHub Actions**
30+
- 适合:需要自动化发布的项目
31+
- 优点:全自动化,不需要本地构建
32+
- 缺点:需要了解 GitHub 相关知识
33+
34+
## 选择构建工具
35+
36+
项目可能使用以下两种构建工具之一:
37+
38+
1. **Maven**
39+
- 特点:配置简单,学习曲线平缓
40+
- 适合:新手,小型项目
41+
- 配置文件:`pom.xml`
42+
43+
2. **Gradle**
44+
- 特点:功能强大,配置灵活
45+
- 适合:大型项目,需要复杂构建逻辑
46+
- 配置文件:`build.gradle``build.gradle.kts`
47+
48+
## 识别项目类型
49+
50+
### 如何识别?
51+
52+
在项目根目录下查看:
53+
54+
1. **如果看到 `pom.xml`**
55+
- 这是 Maven 项目
56+
- 构建产物在 `target` 目录
57+
- 使用 `mvn` 命令构建
58+
59+
2. **如果看到 `build.gradle``build.gradle.kts`**
60+
- 这是 Gradle 项目
61+
- 构建产物在 `build/libs` 目录
62+
- 使用 `gradle` 命令构建
63+
64+
3. **如果看到 `gradlew``gradlew.bat`**
65+
- 这是带有 Gradle Wrapper 的 Gradle 项目
66+
- 特点:
67+
- 不需要安装 Gradle
68+
- 自动下载正确版本
69+
- 所有人使用相同版本
70+
71+
### 项目结构说明
72+
73+
#### Maven 项目结构
74+
75+
<StructureExplorer data={mavenProjectStructure} />
76+
77+
#### Gradle 项目结构
78+
79+
<StructureExplorer data={gradleProjectStructure} />
80+
81+
### 重要文件说明
82+
83+
#### 1. 配置文件
84+
85+
- **plugin.yml**:插件的核心配置文件
86+
87+
```yaml
88+
name: MyPlugin # 插件名称
89+
version: 1.0.0 # 插件版本
90+
main: com.example.plugin.Main # 主类路径
91+
api-version: "1.19" # API 版本
92+
commands: # 命令配置
93+
mycmd:
94+
description: 示例命令
95+
usage: /mycmd <参数>
96+
```
97+
98+
- **config.yml**:插件的默认配置文件
99+
100+
```yaml
101+
settings:
102+
debug: false
103+
language: zh_CN
104+
features:
105+
feature1: true
106+
feature2: false
107+
```
108+
109+
#### 2. 构建配置文件
110+
111+
- **Maven (pom.xml)**:
112+
113+
```xml
114+
<dependencies>
115+
<dependency>
116+
<groupId>io.papermc.paper</groupId>
117+
<artifactId>paper-api</artifactId>
118+
<version>1.19.4-R0.1-SNAPSHOT</version>
119+
<scope>provided</scope>
120+
</dependency>
121+
</dependencies>
122+
```
123+
124+
- **Gradle (build.gradle)**
125+
126+
```groovy
127+
dependencies {
128+
compileOnly 'io.papermc.paper:paper-api:1.19.4-R0.1-SNAPSHOT'
129+
}
130+
```

0 commit comments

Comments
 (0)