本帖最后由 蟹黄酱 于 2021-10-25 19:31 编辑
安装Java环境Minecraft服务端需要在Java环境下运行(推荐Java SE8,其他版本未测试),如果你的电脑还没有安装过Java,请前往Oracle官网下载最新的Java安装包[官网链接|直接下载]。下载完成并安装后,还需要配置环境变量。右键"此电脑",选择"属性",在弹出的窗口中找到"高级系统设置-环境变量"。
之后,在系统变量中新建 变量名: JAVA_HOME变量值: C:\Program Files\Java\jdk1.8.0_<你的Java版本> [backcolor=rgba(224, 224, 224, 0.2)][size=0.8em][url=]Copy[/url]
再编辑两个已有的系统变量(如没有则手动新建) 变量名: CLASSPATH变量值: .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar; /* 添加在原有变量值开头 */变量名: PATH变量值: %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin; /* 添加在原有变量值开头 */ [backcolor=rgba(224, 224, 224, 0.2)][size=0.8em][url=]Copy[/url]
全部添加完成后,点 确定-应用 来使其生效。 最后,打开命令提示符(Win键+R,输入cmd回车)来检测配置是否正确。再窗口中依次输入"java","javac","java -version"。正常情况下,前两条命令会返回java以及java编译器的使用方法(会很长),第三条会显示当前java版本。如果系统没有提示"找不到命令",则说明配置成功。 下载minecraft服务端前往Mojang官网下载最新的服务端[官网链接|直接下载],下载完成后进入目录,使用以下命令运行 java -Xmx2048M -Xms2048M -jar server.jar nogui /* -Xmx -Xms用于指定使用内存大小(MB),可根据实际使用情况调整 */ [backcolor=rgba(224, 224, 224, 0.2)][size=0.8em][url=]Copy[/url]
首次运行会需要签署用户协议。先关闭服务端并前往其所在目录,我们会发现目录下已经自动生成了多个文件。寻找一个名为"eula.txt"的文件,打开,在结尾添加一行 eula=true [backcolor=rgba(224, 224, 224, 0.2)][size=0.8em][url=]Copy[/url]
并保存,即成功签署用户协议。同时我们还会看到服务器配置文件"server.properties",可根据使用情况编辑 // 参数介绍翻译自Mojang官方文档,地址https://minecraft.gamepedia.com/Server.properties#Minecraft server properties#Mon Nov 25 22:26:09 EST 2019spawn-protection=16max-tick-time=60000query.port=25565generator-settings=force-gamemode=false /* 是否强制玩家以默认游戏模式游玩 */allow-nether=true /* 是否允许玩家前往下界 */enforce-whitelist=falsegamemode=survival /* 游戏模式,包括survival、creative、adventure、spectator */broadcast-console-to-ops=trueenable-query=false /* 是否启用GameSpy4协议 */player-idle-timeout=0 /* 玩家n分钟无任何操作将被自动踢出,0为关闭自动踢出 */difficulty=easy /* 游戏难度,包括和平(peaceful)、简单(easy)、普通(normal)、困难(hard) */spawn-monsters=true /* 是否生成怪物 */broadcast-rcon-to-ops=trueop-permission-level=4pvp=true /* 允许玩家互相伤害 :D */snooper-enabled=truelevel-type=default /* 地图生成模式,包括default、flat、largebiomes、amplified、buffet */hardcore=false /* 硬核模式(玩家死亡后会进入spectator模式),会覆写设定的游戏难度 */enable-command-block=false /* 是否启用命令方块 */max-players=20 /* 服务器最大支持玩家,可输入0~2147483647 */network-compression-threshold=256resource-pack-sha1=max-world-size=29999984 /* 最大世界范围(半径),比如,1000即为2000x2000棋盘地图 */function-permission-level=2rcon.port=25575server-port=25565 /* 服务器端口 */server-ip= /* 服务器地址,默认留空即可 */spawn-npcs=true /* 是否生成npc */allow-flight=false /* 是否允许玩家飞行 */level-name=world /* 世界的名字(同时也是存放世界文件夹的名字),更改名字会让服务器尝试加载不同文件夹中的地图 */view-distance=10 /* 可视距离,如服务器连接卡顿,可尝试降低 */resource-pack=spawn-animals=true /* 是否生成动物 */white-list=falsercon.password=generate-structures=true /* 是否生成建筑(包括村庄等) */max-build-height=256 /* 最大建筑高度 */online-mode=true /* 服务器是否开启广域网保护(仅允许正版玩家连接),谨慎切换,可能导致玩家数据丢失 */level-seed= /* 世界种子 */use-native-transport=trueprevent-proxy-connections=falseenable-rcon=false /* 是否允许远程访问服务端终端 */motd=A Minecraft Server /* 用户看到的服务器名字 */ [backcolor=rgba(224, 224, 224, 0.2)][size=0.8em][url=]Copy[/url]
目前,你已经拥有一个可以在局域网内运行的minecraft服务器了。 允许广域网连接如果想要让不在同一网络下的玩家也可以连接服务器,我们需要配置相应的防火墙规则。 如果你的宽带拥有公网IP,并且你有路由的管理权限,可以前往路由管理页面添加端口转发(检测方法,查看路由器拨号获得的IP与自家宽带打开百度搜索"IP"返回的结果是否一致,一致则说明分配了公网IP)。假设运行minecraft服务端的电脑本地IP为192.168.1.100,服务端使用默认的25565端口,那我们应该添加一项tcp转发记录192.168.1.100:25565至外网某端口(可以同样填默认的25565端口,或其他端口,但玩家在连接时必须输入正确的端口)。假如你使用的是普通的家庭宽带,为了避免公网IP变动,可以使用动态域名解析DDNS。大多数路由器都内置了DDNS提供商(管理面板里找一下),如果没有可以在电脑上安装阿里云或腾讯云的DDNS客户端。启用DDNS后,无论公网IP怎样变动,只要访问域名就可前往服务器(域名解析可能存在一定延迟)。
如果你没有路由管理权限(校园网,公用网络,企业网络等),或宽带没有公网IP,可以使用内网穿透软件(内网穿透的成本还是比直接租用mc服务器要低的)。内网穿透的配置方法可以参考这篇文章。
同样,添加一个tcp隧道,把运行minecraft服务端电脑的25565端口转发到外网的某端口,玩家们就可以通过内网穿透提供的公网IP来访问minecraft服务器了。
如果想要非正版账号加入服务器,找到叫做server的文件 把onlin-mode 改成false
|