当前位置: 首页 > news >正文

我的世界服务端搭建

文章目录

  • 我的世界服务端搭建
    • 使用forge搭建服务端
    • 确保服务器的 Java 环境
    • 安装1.20.1服务端
    • 配置文件修改
    • 启动游戏服务器
  • Minecraft `server.properties` 文件解析
    • **基础设置**
    • **世界设置**
    • **网络与安全**
    • **性能优化**
    • **高级功能**
    • **配置文件示例**
    • **注意事项**
    • Minecraft 白名单系统详解:`white-list` 与 `whitelist.json`
      • 一、启用白名单的步骤
      • 二、管理白名单的 3 种方式
        • ▶ 方式 1:游戏内命令(推荐)
        • ▶ 方式 2:直接编辑 `whitelist.json`
        • ▶ 方式 3:服务器控制台
      • 三、获取玩家 UUID 的方法
      • 四、`whitelist.json` 文件规范
      • 五、白名单系统注意事项
      • 六、常见问题解决
      • 七、高级管理技巧

我的世界服务端搭建

使用forge搭建服务端

访问forge官网,下载forge安装包,已Forge 1.20.1为例
Minecraft Forge 下载:https://files.minecraftforge.net/net/minecraftforge/forge/
在这里插入图片描述

确保服务器的 Java 环境

Java 版本:Forge 1.20.1 需要 JDK 17(建议使用 OpenJDK 17)。
验证 Java:在命令行输入以下命令,确认 Java 是否已正确安装

java -version

安装1.20.1服务端

# 创建服务端核心
java -jar forge-1.20.1-47.4.0-installer.jar --installServer# 生成配置文件
bash run.sh
  • --installServer 参数表示安装服务端。
    • 安装完成后,命令行会生成以下文件和文件夹:
    • server.jar(核心服务端文件)
    • mods/(存放模组的文件夹)
    • config/(配置文件)
    • eula.txt(用户协议文件)

配置文件修改

接受用户协议

  • 打开 eula.txt 文件,将其中的 eula=false 修改为 eula=true。
  • 保存文件并关闭编辑器。
  1. 生成的文件

    • server.properties(服务器主配置文件)
    • level-name/(世界存档文件夹)
    • users.json(玩家白名单和权限文件)
  2. 编辑 server.properties 文件

    # 服务器端口
    server-port=25565
    # 最大玩家数
    max-players=20
    # 游戏模式(survival, creative, adventure, spectator)
    gamemode=survival
    # 是否允许作弊
    allow-cheats=true
    # 是否启用正版验证
    online-mode=true
    

    修改完成后保存文件。

启动游戏服务器

bash run.sh

Minecraft server.properties 文件解析

server.properties 是 Minecraft 服务器的核心配置文件,位于服务器根目录。它定义了服务器的运行参数(如端口、难度、玩家上限等)。以下是常见配置项的详细解析:


基础设置

配置项默认值说明
server-port25565服务器监听的端口(需确保端口未被占用且防火墙放行)。
server-ip绑定服务器的 IP 地址(留空则使用所有可用 IP)。
motdA Minecraft Server服务器描述(显示在玩家列表中的第二行)。
max-players20最大玩家数量(受服务器性能限制)。

世界设置

配置项默认值说明
level-nameworld世界文件夹名称(对应 ./world/ 目录)。
gamemodesurvival默认游戏模式:survival(生存)、creative(创造)、adventure(冒险)、spectator(旁观)。
difficultyeasy游戏难度:peaceful(和平)、easy(简单)、normal(普通)、hard(困难)。
hardcorefalse是否启用极限模式(死亡后无法复活)。
pvptrue是否允许玩家互相攻击。
generate-structurestrue是否生成自然结构(村庄、地牢等)。
level-typedefault世界类型:default(标准)、flat(超平坦)、largebiomes(巨型生物群系)。

网络与安全

配置项默认值说明
online-modetrue是否开启正版验证(false允许盗版玩家加入)。
white-listfalse是否启用白名单(需在 whitelist.json 添加玩家)。
enforce-whitelistfalse是否强制检查白名单(开启后需重启生效)。
enable-rconfalse是否启用远程控制(RCON)。
rcon.passwordRCON 远程管理的密码(需 enable-rcon=true)。

性能优化

配置项默认值说明
view-distance10玩家可视区块范围(值越大越吃性能,建议 6-12)。
simulation-distance10服务器模拟实体/红石的范围(1.18+ 版本关键设置)。
network-compression-threshold256网络压缩阈值:-1(禁用压缩)、0(压缩所有数据包)。

高级功能

配置项默认值说明
allow-flightfalse是否允许飞行(需为 true 才能使用鞘翅或飞行模组)。
enable-command-blockfalse是否启用命令方块。
spawn-protection16出生点保护半径(设为 0 可禁用保护)。
resource-pack强制客户端加载的资源包 URL(需配合 SHA-1 校验)。
max-tick-time60000单次 tick 最大耗时(毫秒),超时则服务器强制关闭。

配置文件示例

# 基础设置
server-port=25565
motd=My Awesome Server
max-players=50# 世界设置
level-name=survival_world
gamemode=survival
difficulty=hard
pvp=true# 网络与安全
online-mode=true
white-list=true
enable-rcon=true
rcon.password=StrongPassword123# 性能优化
view-distance=8
simulation-distance=6

注意事项

  1. 修改后重启:大部分配置需重启服务器才能生效。
  2. 备份文件:修改前建议备份 server.properties
  3. 参数格式:布尔值用 true/false,字符串无需引号。
  4. 版本差异:部分参数随 Minecraft 版本更新而变化(如 simulation-distance 替代了旧版的 max-tick-time)。

Minecraft 白名单系统详解:white-listwhitelist.json

白名单系统是 Minecraft 服务器的重要安全功能,用于控制哪些玩家可以进入服务器。以下是完整的使用指南:


一、启用白名单的步骤

  1. 修改 server.properties
    开启白名单功能:

    white-list=true
    enforce-whitelist=true  # 设为 true 时,服务器会主动强制执行白名单
    
  2. 重启服务器
    修改后必须重启服务器才能生效。


二、管理白名单的 3 种方式

▶ 方式 1:游戏内命令(推荐)

在服务器控制台或由 OP 玩家在游戏内执行:

# 添加玩家
/whitelist add <玩家名># 移除玩家
/whitelist remove <玩家名># 查看当前白名单
/whitelist list# 重新加载白名单(修改文件后使用)
/whitelist reload
▶ 方式 2:直接编辑 whitelist.json

文件位置:服务器根目录/whitelist.json
正确格式

[{"uuid": "e9b9d8e7a6f5c4d3b2a1f0e1d2c3b4a5", "name": "Steve"},{"uuid": "d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8a9", "name": "Alex"}
]
▶ 方式 3:服务器控制台

在服务器终端输入(不需要 / 前缀):

whitelist add Notch

三、获取玩家 UUID 的方法

UUID 是玩家的唯一标识符(即使改名也不会变)

  1. 官网查询(需要正版账号)
    访问:https://mcuuid.net/

  2. 服务器日志获取
    当玩家尝试加入服务器时,日志会显示其 UUID:

    [12:34:56] [User Authenticator/INFO]: UUID of player Notch is 069a79f444e94726a5befca90e38aaf5
    
  3. 游戏内命令
    OP 玩家对目标玩家执行:

    /data get entity <玩家名> UUID
    

四、whitelist.json 文件规范

字段必填说明
uuid玩家的唯一标识符(32位十六进制,带连字符)
name玩家当前用户名(区分大小写)
ignoresPlayerLimit是否绕过人数限制(默认 false)

完整示例

[{"uuid": "069a79f444e94726a5befca90e38aaf5","name": "Notch","ignoresPlayerLimit": true  // 此人可绕过人数上限},{"uuid": "853c80ef3c3749fdaa49938b674adae6","name": "Jeb_"}
]

五、白名单系统注意事项

  1. 用户名更改处理
    当玩家改名时:

    • 白名单 仍然有效(通过 UUID 识别)
    • 建议更新 name 字段保持可读性:/whitelist reload
  2. 文件编辑规则

    • 修改时必须 停止服务器 或使用 whitelist reload
    • JSON 文件必须使用 UTF-8 无 BOM 编码
    • 最后一个玩家数据后 不能有逗号
  3. 权限优先级

    graph LR
    A[尝试加入服务器] --> B{白名单开启?}
    B -->|是| C{UUID在whitelist.json中?}
    C -->|是| D[允许加入]
    C -->|否| E[拒绝加入]
    B -->|否| D
    

六、常见问题解决

问题现象解决方案
玩家在白名单中仍被拒绝1. 检查 UUID 是否正确 2. 执行 /whitelist reload
修改文件后无效1. 确认 JSON 格式正确 2. 检查文件权限 3. 重启服务器
OP 玩家是否需要白名单需要!OP 权限和白名单是独立系统
白名单与正版验证关系白名单开启时,盗版服务器(online-mode=false)仍需 UUID

⚠️ 重要提示:当 enforce-whitelist=true 时,任何不在白名单的玩家(包括 OP)都无法加入服务器!


七、高级管理技巧

  1. 批量导入玩家
    使用脚本转换 CSV 到 JSON:

    import csv, json, uuid
    with open('players.csv') as f:data = [{"uuid": row[0], "name": row[1]} for row in csv.reader(f)]
    with open('whitelist.json', 'w') as f:json.dump(data, f, indent=2)
    
  2. 自动同步白名单
    通过 Discord 机器人管理(使用 bot 如 DiscordSRV):

    !whitelist add Notch
    
  3. 白名单备份
    定期备份 whitelist.json 文件,防止数据丢失。

通过合理使用白名单系统,您可以打造安全的私密服务器环境!

http://www.xdnf.cn/news/735391.html

相关文章:

  • 将图片存为二进制流到数据库并展示到前端的实现
  • 深入理解数组索引:原理、应用与优化
  • Centos7系统下脚本一键部署LAMP环境
  • 响应式原理
  • Java异常与错误:核心区别深度解析
  • Kafka多线程Consumer
  • harmonyos实战关于静态图片存放以及image图片引入
  • VSCode Trae Cursor 显示多tab界面
  • intra-mart执行java方法笔记
  • spring openfeign
  • AWS云创建安全审计用户组
  • TIDB创建索引失败 mkdir /tmp/tidb/tmp_ddl-4000/1370: no such file or directory.
  • NHANES指标推荐:CQI
  • ESP32对接巴法云实现配网
  • 线路板厂家遇到的PCB元件放置的常见问题有哪些?
  • 内核进程基础
  • 界面控件DevExpress WinForms中文教程:Banded Grid View - 如何固定Bands?
  • 《 PyTorch 2.3革新:torch.compile自动生成CUDA优化内核全解》
  • 鸿蒙OSUniApp页面切换动效实战:打造流畅精致的转场体验#三方框架 #Uniapp
  • Go语言结构体:数据组织的艺术
  • 网络犯罪分子利用虚假ChatGPT安装程序实施攻击
  • 【Go语言】Fyne GUI 库使用指南 (面向有经验开发者)
  • XUANYING炫影-移动版-智能轻云盒SY900Pro和SY910_RK3528芯片_免拆机通刷固件包
  • PHP中文网文章内容提取免费API接口教程
  • JavaScript中的命名导出(暴露)
  • yolov8添加注意力机制
  • 避免空值判断
  • Fluence (FLT) 2026愿景:RWA代币化加速布局AI算力市场
  • 一、Python 常用内置工具(函数、模块、特性)的汇总介绍和完整示例
  • Go 中 `json.NewEncoder/Decoder` 与 `json.Marshal/Unmarshal` 的区别与实践