NitWikit/docs/正式开服/开启服务端.md
lilingfengdev 57c863cbe9 md
2024-05-11 20:16:59 +08:00

206 lines
5.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
sidebar_position: 1
---
# 开启服务端
你已经做好了准备工作,开始启动你的服务器了
## 笨蛋脚本
下载此[脚本](https://github.com/lilingfengdev/NitWiki-Script/releases/download/latest/generate-script.exe),回答几个问题就可以为你自动生成启动脚本!!
<details>
<summary>直接在终端里敲命令来启动?</summary>
如果你第一次开服,或者你看不懂这个折叠里的内容,那就跳过,直接去看底下的编写启动脚本
## 终端路径
就像你的文件资源管理器
![](_images/文件资源管理器.jpg)
(估计有人不知道文件资源管理器是什么,所以放张图)
有路径一样你的cmd也是有路径的(红框中为此cmd所在的路径)
[cmd是什么](https://cn.bing.com/search?q=cmd%E6%98%AF%E4%BB%80%E4%B9%88)
[怎么打开cmd](https://cn.bing.com/search?form=MOZLBR&pc=MOZI&q=%E6%80%8E%E4%B9%88%E6%89%93%E5%BC%80cmd)
## 启动命令
~~最简单的启动命令当然是java -jar~~
现在你把下载好的服务端核心放到一个空文件夹里
![](_images/1.png)
点击地址栏输入cmd然后回车就会在这个路径下打开cmd
![](_images/2.png)
或者用别的办法打开cmd然后用cd命令切换路径
[怎么用cd命令切换到另一个目录](https://cn.bing.com/search?q=%E6%80%8E%E4%B9%88%E7%94%A8cd%E5%91%BD%E4%BB%A4%E5%88%87%E6%8D%A2%E5%88%B0%E5%8F%A6%E4%B8%80%E4%B8%AA%E7%9B%AE%E5%BD%95)
![](_images/3.png)
</details>
## 编写启动脚本
~~最简单的启动命令当然是java -jar~~
现在你把下载好的服务端核心放到一个空文件夹里
![](_images/1.png)
在这个文件夹里创建一个txt文件重命名为bat后缀的文件 如 `run.bat`
[文件看不到后缀怎么办](https://cn.bing.com/search?q=%E6%96%87%E4%BB%B6%E7%9C%8B%E4%B8%8D%E5%88%B0%E5%90%8E%E7%BC%80)
用你前面下的文本编辑器编辑这个文件,写入以下信息
```
java -Xms1G -Xmx2G -jar 核心名.jar --nogui
```
### 解释
| 单词 | 解释 |
| --- | ----------- |
| java | 启动java虚拟机 |
| -Xms1G | 设置初始内存大小为 1GB 可自行调整 |
| -Xmx2G | 设置最大堆内存大小为 2GB 可自行调整 |
| -jar 核心名.jar | 这部分告诉 Java 程序去运行一个叫做 核心名.jar 的 JAR 文件 |
| --nogui | 不显示GUI |
保存,然后双击它
[卡在Downloading mojang_x.x.x.jar怎么办](/docs/扩展阅读/常见问题.md)
他会提示你
> You need to agree to the EULA in order to run the server. Go to eula.txt for more info.
用文本编辑器打开此目录下生成的 `eula.txt`
将里面的 `eula=false` 改为 `eula=true`
eula就像是用户协议一样的东西,你想知道讲了啥,点 [这里](https://zhuanlan.zhihu.com/p/463084883)
改好之后重新开启服务器
当出现
> Done (6.554s)! For help, type "help"
的字样说明服务器已经开启
:::tip
你可以点击目录中的连接服务器进入下一节内容了!
:::
## 更复杂的bat
你可以用 http://flags.sh/ 或 https://startmc.jakaco.xyz/ 来做优化的启动命令
```
rem 注释
rem 关闭回显
@echo off
rem 设置编码为UTF-8
chcp 65001
title 此处设置窗口标题
:start
echo 开始启动MC服务器
java -Xms1G -Xmx2G --add-modules=jdk.incubator.vector -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=4 -XX:InitiatingHeapOccupancyPercent=15 -XX:G1MixedGCLiveThresholdPercent=90 -XX:G1RSetUpdatingPauseTimePercent=5 -XX:SurvivorRatio=32 -XX:+PerfDisableSharedMem -XX:MaxTenuringThreshold=1 -Dusing.aikars.flags=https://mcflags.emc.gs -Daikars.new.flags=true -XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 -XX:G1HeapRegionSize=8M -XX:G1ReservePercent=20 -jar server.jar --nogui
echo MC服务器已关闭
echo 服务器正在重新启动..。
echo 按 CTRL + C 停止。
goto :start
```
## 笨蛋脚本
开启后,你可能需要进行一些简单配置,比如修改服务器端口,正版验证等
[下载](https://github.com/lilingfengdev/NitWiki-Script/releases/download/latest/config-eazy.py),我们会询问一些问题,帮你**自动配置**
目前可以配置的
* 服务器端口
* 正版验证
* 服务器种子
* 最大玩家数
## 正版验证
正版验证默认被开启,如果你没有用正版启动游戏,那么加入服务器会出现
![](_images/无效会话.png)
是的,不关闭正版验证的话盗版玩家是不能加入游戏的
**server.properties** 中找到此项
```
online-mode=true
```
将true改为false,保存,重启服务端
:::danger
不要开服开到一半去改正版验证!!!
那样会造成UUID混乱,玩家数据丢失
:::
## 最大玩家数
**server.properties** 中找到此项
```
max-players=20
```
后面的数字就是你希望这个服务器最大能进入的玩家数
## 服务器种子
**server.properties** 中找到此项
```
level-seed=
```
这里面就可以填上你想要的种子
:::note
你可能会发现一些结构,比如村庄的生成,并不会遵循种子,是由于spigot及其下游服务端加入了随机种子,地形的生成也会出现一些偏差
当然,你仍然可以利用种子定位群系,比如找史莱姆区块
:::
## 服务器端口
**server.properties** 中找到此项
```
server-port=25565
```
后面就可以改成你想要的服务器端口,当然,玩家连接的也需要更改(或者使用srv转发)