Featured image of post Minecraft服务器

Minecraft服务器

开服经历回顾

我从2025年2月初开始学习搭建MC服务器,到现在也学到了不少知识。以下是我的开服历程,若能对各位有所帮助,实在是我的荣幸。

服务端搭建

常见的服务端

目前MC服务端主要包括:原版、插件端、模组端和混合端四类。

类别 特点
原版 就和MC原版一样,没有特殊功能
插件端 能加插件,不能加模组
模组端 能加模组,不能加插件
混合端 既能加模组,也能加插件

似乎混合端功能更强大,但实际上它的兼容性更差,所以如果想开整合包服务器的话最好还是用模组端。 由于我目前没找到合适的模组代替插件,因此只能用混合端了。

以下是常见的服务端:

服务端 类别 支持
Spigot 插件端 全版本
Paper 插件端 全版本
Forge/Fabric/NeoForge 模组端 全版本
Catserver (猫端) 混合端 1.12.2/1.16.5/1.18.2
Mohist (墨端) 混合端 全版本

安装 Java 环境

Java环境是MC服务器必备的运行环境。Java有多个发行版,不同的MC服务端对应不同的Java。

MC版本 支持
1.12 - 1.16 Java 8
1.17 - 1.20 Java 17
1.21 以上 Java 21

Java可从Oracle官网 下载(最新版需要注册账号才可下载)。如果不在意,也可从镜像站例如Adoptium 下载。

使用.exe.msi文件安装的Java一般自动配置好了环境变量,如果使用.zip安装Java则需手动配置。

服务端启动流程

首先在网络上下载对应的服务端,通常是一个.jar文件。然后新建一个文件夹,将服务端核心放在文件夹内。

然后新建一个文本文档,在文档内输入java -jar 你的服务端核心名.jar,保存后将文件扩展名改为.bat。之后双击.bat文件,服务端将会运行并且在终端实时输出。这时通常会出现是否同意eula协议,此时须在文件夹内找到eula开头的文件,将其中的false改为true。最后再次启动.bat文件,服务端开启成功。

网络配置

搭建服务器最重要的是配置好网络,核心是确定服务器的IP地址和端口号。

局域网联机

局域网联机最简单,只需知道服务器运行的主机的IP地址即可。

Windows平台:win+r打开cmd,输入ipconfig,查看Wifi(无线连接)或以太网(有线连接)下的IP地址。

Linux平台:命令行输入 ip a

什么是局域网?

通俗来说,通过同一个Wifi相连的设备都处于同一个局域网下。连接在同一个局域网下的设备,它们的设备IP地址仅最后一位不同。在同一个局域网下的设备可通过IP地址互相连接。

内网穿透

请在网络上自行查找相关内容。

什么是内网穿透?

内网穿透是通过特定技术,将你的内网(如局域网)地址经服务器映射到公网上的过程。此时一个公网IP地址,如:frp-xxx.com:xxxxx就等同于你的局域网地址192.168.x.x

IPv6连接

这是目前成本最低,效果最好的连接方式。

首先必须确保你和你的伙伴都有IPv6访问,然后win+r打开cmd,输入ipconfig,这时应该可以看到一串240e:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx(必须为240e开头,这样才是公网IPv6),这时[IPV6地址]:端口号的形式就是服务器的IP地址。

什么是IPv6?

目前IP技术分为IPv4和IPv6两种。IPv4地址为12个十进制数,每3个数字用“ : ”隔开;IPv6地址为28个16进制数,每4个数字用“ : ”隔开。由此可见,IPv6地址比IPv4多得多,所以每个IPv6地址都可以作为公网使用。

服务器进阶

修改服务器配置

依据服务端核心的不同,修改方法也有所区别。

启动文件.bat

java -jar 你的服务端核心名.jar中,可在-jar之后加上-XmsAG -XmxBG表示给服务器至少分配A个G的内存,至多分配B个G的内存。

特别的,java可以替换为具体的Java/bin路径。若未指明,默认为最新版的Java。

server.properties

这是所有服务器都具备的配置文件。

 1allow-flight=true   #是否启用飞行
 2allow-nether=true   #是否生成下界
 3broadcast-console-to-ops=true   #是否向管理员发送控制台消息
 4broadcast-rcon-to-ops=true
 5debug=false     #是否开启调试模式
 6difficulty=normal       #难度设置
 7enable-command-block=true       #是否启用命令方块
 8enable-jmx-monitoring=false
 9enable-query=false
10enable-rcon=false
11enable-status=true
12enforce-secure-profile=true
13enforce-whitelist=false
14entity-broadcast-range-percentage=100
15force-gamemode=false        #是否强制设置玩家的游戏模式
16function-permission-level=4     #命令等级设置,最高为4,最低为0 
17gamemode=survival       #游戏模式设置
18generate-structures=true
19generator-settings={}
20hardcore=false
21hide-online-players=false
22initial-disabled-packs=
23initial-enabled-packs=vanilla
24level-name=play     #游戏主世界存档名称
25level-seed=
26level-type=minecraft\:normal
27max-chained-neighbor-updates=1000000
28max-players=40      #服务器允许的最多人数
29max-tick-time=60000
30max-world-size=29999984
31motd=智算11班公益养老服(1.4)
32network-compression-threshold=256
33online-mode=false       #是否启用在线模式
34op-permission-level=4
35player-idle-timeout=0
36prevent-proxy-connections=false
37pvp=true        #是否允许玩家互相攻击
38query.port=25565    
39rate-limit=0
40rcon.password=
41rcon.port=25575
42require-resource-pack=false
43resource-pack=
44resource-pack-prompt=
45resource-pack-sha1=
46server-ip=     #服务器运行的IP地址,默认留空
47server-port=30067       #服务器运行的端口
48simulation-distance=10      #服务器模拟距离,建议设置为4~6
49spawn-animals=true
50spawn-monsters=true
51spawn-npcs=true
52spawn-protection=0      #出生点保护范围
53sync-chunk-writes=true
54text-filtering-config=
55use-native-transport=true
56view-distance=10        #服务器视野距离,建议设置为4~6
57white-list=false

bukkit.yml

spiogt.yml

安装插件和模组

使用SSH远程连接服务器主机

参见:SSH配置简介

使用MySQL管理玩家数据

对于多个服务器,如果想不同服务器之间共享玩家数据(如权限、经验等),可以使用MySQL数据库。

下面以服务端插件PowerRanks为例进行说明。

  1. 打开PowerRanks的配置文件,找到关于数据来源的配置。
 1...
 2storage:
 3  type: mysql
 4  mysql:
 5    host: 127.0.0.1
 6    port: 3306
 7    database: powerranks
 8    username: root
 9    password: *******
10    ssl: false
11    verbose: false
12...

type改为mysql,并配置好端口、用户名和密码。这样在启动时,插件会自动从127.0.0.1:3306端口的root用户读入数据。

  1. 在MySQL的表中创建新表,命名为powerranks,此处名称应与配置文件中的database后的名称相同。

  2. 启动MC服务器,这样Powerranks插件就会自动在MySQL中创建数据表,可以对其进行相关操作。

注意:使用MySQL的数据时,每次启动服务器前应当先启动MySQL客户端,否则插件会报错。

开发者选项

制作自己的服务端插件

Licensed under CC BY-NC-SA 4.0
网站总访客数:Loading

使用 Hugo 构建
主题 StackJimmy 设计