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

搭建私人《我的世界》服务器,使用Cpolar内网穿透更简单

文章目录

      • 1.前言
      • 2.本地服务器搭建
        • 2.1 设置环境变量
        • 2.2 进行《我的世界》服务器端设置
        • 2.3 测试和使用
      • 3.本地MC服务器的内网穿透
        • 3.1.Cpolar云端设置
        • 3.2.Cpolar本地设置
        • 3.3.测试和使用
      • 4.结语

1.前言

要说去年游戏圈的重磅大瓜,想必网易和暴雪的分家必能上榜。虽然两家大型公司的网上互撕固然精彩,但也确实将一众玩家彻底抛弃,留下众多“魔兽难民”哀叹青春易逝(当然,笔者也在其中)。尽管青春逝去徒留十几KB的电子骨灰盒,但生活仍要继续,我们还是需要有个消遣放松的环境,所以游戏仍将继续。现在,我们就来看看,如何摆脱大厂运营商,用自家电脑搭建一个《我的世界》私人服务器,容纳好友们共同探索和放松的私人空间。

2.本地服务器搭建

通常《我的世界》都是单机游戏,但也提供了局域网联机的模式,因此我们可以采用在本地搭建《我的世界》服务器,再通过Cpolar的内网穿透功能,搭建起能够容纳多人同时登录的私人服务器。

2.1 设置环境变量

由于《我的世界》是基于java开发的,因此需要先构建起一个java环境。这里我们下载java17进行java环境的搭建。(下载网址为https://www.oracle.com/java/technologies/downloads/#jdk17-windows)在软件下载完成后,只要选择双击后缀名为.exe的文件,一路点击“下一步”即可进行安装。

20230301135001

20230301135002
安装完成后,我们需要找到上一步安装的java17文件夹,并将这个路径复制下来。在本例中,java安装的位置在本地E盘中,因此路径就为:E:\Program Files\Java\jdk-17。接着在菜单栏的搜索框中输入高级系统设置,并打开系统属性,点击环境变量进行设置。

20230301135003

20230301135004

进入环境变量设置后,新建一个系统变量:

  • 变量名称为java_home
  • 变量值为本地java的安装路径,也就是E:\Program Files\Java\jdk-17

输入完成后,点击确认按钮建立该变量。

20230301135005

20230301135006

建立名为java_home的环境变量后,再在环境变量选项卡的系统变量框内,双击点选名为Path的选项,就会出现编辑环境变量的窗口。

20230301135007

我们在这个窗口右侧点击新建按钮,将我们之间建立的java_home加入环境变量列表中。需要注意的是,在这里添加的环境变量名称前后要加%,并在名称后加入\bin。即最终的变量名称为%java_home%\bin

20230301135008

20230301135009

注:为了验证我们设置的环境变量是否成功,可以在搜索栏中输入cmd,打开命令行操作界面,输入命令:java,只要出现如下显示,就说明新的环境变量设置成功。

20230301135010

2.2 进行《我的世界》服务器端设置

环境变量设置完成后,我们就可以下载一个《我的世界》服务器端,对其进行相应设置,让其成为游戏服务器。而《我的世界》服务器端可以在“https://www.minecraft.net/zh-hans/download/server”这个网址找到。需要注意的是,进入这个网址后,会弹出公服的下载页面,我们点击红框所指位置,就能留在MC服务器端下载页面。

20230301135011

而下载文件按钮,则是minecraft_server.1.19.3.jar处。

20230301135012

在下载完成后,我们先不着急进行安装,而是在下载下载的MC服务器文件夹内,新建一个文本文档。

20230301135013

并在该文件内输入如下内容

java -Xms1G -Xmx2G -jar server.jar nogui
pause

就像这个样子

20230301135014

其中,Xms为给服务器分配的最小内存为1G;Xmx为给服务器分配的最大内存为2G;server.jar为服务端的名称(实际建立的服务端名称一定要与设置的指令一致)。

完成这些设置后,就可以保存退出,并将这个文档文件的后缀名改为.bat

20230301135015

完成这些修改后,双击运行这个新建文本文档.bat,系统会自动打开命令行界面进行操作。接着在这个文件夹内,就会出现一些新文件,我们在其中找到名为eula.txt的文本文档,双击打开。

20230301135016

并在这个文本文档的最后一行找到eula=false,将其修改为eila=true,接着保存并关闭。

20230301135017

接着打开server.properties文件,将online-mode=true更改为online-mode=false,即关闭正版验证(服务器的大多数配置都在此文件内,包括设置允许多少个玩家登入服务器等内容)。

20230301135018

接着我们再次双击运行新建文本文档.bat,就能启用MC私人服务器。如果跳出防火墙设置询问窗口,只要点击允许访问即可。需要注意的是,cmd窗口的进程不能关闭(没有设置程序后台运行,关闭cmd进程会导致MC服务器关闭)。

20230301135019

到这里,我们的《我的世界》私人服务器就完成各项配置,可以在局域网范围内进行多人互联游戏。

2.3 测试和使用

此时我们打开《我的世界》启动器,在主界面选择“多人游戏”,在多人游戏界面下方找到添加服务器选项,点击输入服务器信息,由于我们是在本地电脑上进行测试,因此服务器地址,就是本地地址+《我的世界》输出端口号,即127.0.0.1:25565(25565是MC的固定端口号)

20230301135020
20230301135021

在MC启动器中设置好服务器信息后,就能登录该服务器。
20230301135022
20230301135023

3.本地MC服务器的内网穿透

通过上一步,我们已经将本地电脑成功设置为《我的世界》的服务器,接下来,我们就要让本地MC服务器通过cpolar,获得一个公共互联网地址,让大家都能通过这个地址连接到我们的私人MC服务器。

为了让伙伴们能随时连接到我们的MC服务器,因此我们将cpolar升级到专业版(专业版cpolar能够提供固定TCP连接服务,避免了免费版cpolar每隔24小时重置TCP连接导致私人MC服务器进行重新设置)。

3.1.Cpolar云端设置

首先我们登录Cpolar的官方网站,在官网页面左侧找到预留按钮,并在预留页面找到保留的TCP地址选项
20230301135024

保留的TCP地址选项中,我们需要填入两个基本信息

  • 地区:大家可以选择喜欢的服务器,这里我们选择China VIP
  • 描述:可以看做是这条固定TCP隧道的描述,这里我们输入《我的世界》作为备注

接着点击选项右侧的保留按钮,就能将这条TCP隧道保留下来。

20230301135025
20230301135026

这时“我的世界”的空白TCP隧道就设置完成。接下来,我们回到本地电脑上,将这条空白TCP隧道与本地的《我的世界》服务器端连接起来,让本地电脑的《我的世界》私人服务器能被大家连接到。

3.2.Cpolar本地设置

在本地电脑上,我们先打开cpolar客户端【下载地址为https://www.cpolar.com/download】,在客户端主界面左侧找到隧道管理项下的创建隧道,并点击进入隧道创建页面。

在这个页面,我们可以对打算创建的隧道基本信息进行设置:

  • 隧道名称:这里我们输入“我的世界”
  • 协议:选择TCP协议
  • 本地地址:即本地MC服务器的输出端口,MC默认的输出端口号为25565
  • 端口类型:由于我们已经在cpolar云端设置了空白固定TCP隧道,因此这里选择固定TCP端口
  • 以及预留的TCP地址:这个地址来自于cpolar云端,固定TCP隧道后生成的地址栏位

填入相关信息后,就可以点击页面下方的创建按钮,将cpolar云端与本地MC服务器端口连接起来,即为本地《我的世界》服务器生成一个能为大家访问的地址。

20230301135027
20230301135028

而这个能为大家访问到的地址,就在cpolar客户端主界面左侧状态项下的在线隧道列表

20230301135029

3.3.测试和使用

这时,我们再次打开《我的世界》启动器,选择多人游戏,并在这个页面中选择编辑按钮对之前测试的本地地址进行修改,或是点击添加服务器重建一个MC服务器。

20230301135030
20230301135031

不管选择哪种方式,我们都需要将cpolar客户端生成的固定TCP隧道地址,输入服务器地址栏位中,让《我的世界》启动器自动连接到我们设置的私人服务器上,实现在公共互联网上一起玩《我的世界》。

20230301135032

4.结语

至此,我们将本地电脑转变为私人《我的世界》服务器的操作就全部完成了,可以将cpolar生成的网络地址发送给一众好友,邀请大家一起在私人服务器上畅快游戏,而不必再大厂服务器上各种氪金升级。同时搭建MC私服的思路,也可能应用在其他带有局域网联机功能的单机游戏上,让我们的休闲生活更加丰富多彩。

当然,使用cpolar建立私人游戏服务器,只是cpolar内网穿透功能的应用场景之一,如果大家对cpolar的使用有任何疑问,可以与cpolar官方联系,他们将为大家提供力所能及的协助。也欢迎加入cpolar的VIP官方群,共同探索cpolar的无限潜能。

相关文章:

搭建私人《我的世界》服务器,使用Cpolar内网穿透更简单

文章目录1.前言2.本地服务器搭建2.1 设置环境变量2.2 进行《我的世界》服务器端设置2.3 测试和使用3.本地MC服务器的内网穿透3.1.Cpolar云端设置3.2.Cpolar本地设置3.3.测试和使用4.结语1.前言 要说去年游戏圈的重磅大瓜,想必网易和暴雪的分家必能上榜。虽然两家大…...

map和set的使用

文章目录关联式容器树形结构的关联式容器setinsert增减erase删除multiset修改mappair<key,value>insertoperator[] 的引入insert和operator[]的区别multimap小结map的使用统计最喜欢吃的前几种水果前K个高频单词&#xff0c;返回单词的频率由高到低,频率相同时&#xff0…...

常用正则表达式大全

链接...

注意,摸鱼程序员常用的9个小技巧,早点下班不秃头

9个养生小技巧&#xff0c;祝大家不秃头嗨害大家好鸭&#xff01; 我是小熊猫~毕竟摸鱼一时爽&#xff0c;一直摸一直爽嘛~一、整理字符串输入二、迭代器切片&#xff08;Slice&#xff09;三、跳过可迭代对象的开头四、只包含关键字参数的函数 (kwargs)五、创建支持「with」语…...

【Linux】文件时间-ACM

文章目录文件时间-acmAccessChangeModify文件时间-acm 我们可以使用stat 文件名的方式查看对应的文件的时间信息 Access 表示文件最近一次被访问的时间 文件的访问 实际也就是文件的读取 实际操作中,文件的Access时间可能没有变化,这是因为在新的Linux内核中,Access时间不…...

[架构之路-124]-《软考-系统架构设计师》-操作系统-3-操作系统原理 - IO设备、微内核、嵌入式系统

第11章 操作系统第5节 设备管理/文件管理&#xff1a;IO5.1 文件管理5.2 IO设备管理&#xff08;内存与IO设备之间&#xff09;数据传输控制是指如何在内存和IO硬件设备之间传输数据&#xff0c;即&#xff1a;设备何时空闲&#xff1f;设备何时完成数据的传输&#xff1f;SPOO…...

【竞赛/TPU】算能TPU编程竞赛总结

如果觉得我的分享有一定帮助&#xff0c;欢迎关注我的微信公众号 “码农的科研笔记”&#xff0c;了解更多我的算法和代码学习总结记录。或者点击链接扫码关注【竞赛/TPU】算能TPU编程竞赛总结 1 基础知识 1.1【Ubuntu】 Ubuntu操作系统中有很多不同的文件夹&#xff0c;每个…...

Substrate 基础教程(Tutorials) -- 模拟网络 添加可信节点

三、模拟网络 本教程基本介绍了如何使用一个私有验证器&#xff08;validators&#xff09;的授权集合来启动私有区块链网络。 Substrate节点模板使用授权共识模型(authority consensus model)&#xff0c;该模型将块生产限制为授权帐户的旋转列表(rotating list)。授权帐户(…...

SAP 设置无物料号的费用采购

现在还是以外购电来说一下ERP中费用采购单的使用步骤&#xff1a; (1).Tcode:OMSF定义物料组D1,如下图。 (2).到配置路径IMG Path:物料管理->采购->帐户分配(或直接SE16:V_T163K)定义一科目分配类别,默认的K就是费用采购科目分配类型,如果可能可以复制一个,如下图,注意下…...

k8s ConfigMap 中 subPath 字段和 items 字段

Kubernetes中什么是subPath 有时&#xff0c;在单个 Pod 中共享卷以供多方使用是很有用的。volumeMounts.subPath 属性可用于指定所引用的卷内的子路径&#xff0c;而不是其根路径。 这句话理解了&#xff0c;基本就懂subPath怎么用了&#xff0c;比如我们要替换nginx.cnf, 挂…...

UML建模

主要记录UML中的相关知识&#xff0c;包括类、对象、接口、方法、用例、活动、状态、组件和部署图&#xff0c;详细介绍类之间关系与类图的绘制 文章目录一、UML介绍二、类图类之间的关系依赖关系继承关系实现关系关联关系组合关系聚合关系正文内容&#xff1a; 一、UML介绍 …...

JavaScript常见面试题(更新中)

介绍js的基本数据类型 js一共有五种数据类型 分别是undefined null boolean number string 还有ES6中新增的symbol和ES10的bigInt symbol代表创建后独一无二的不可变的数据类型&#xff0c;他的出现我认为是为了解决可能出现的全局变量冲突的问题 BigInt是一种数字类型的数据 …...

TCP/IP协议

✏️作者&#xff1a;银河罐头 &#x1f4cb;系列专栏&#xff1a;JavaEE &#x1f332;“种一棵树最好的时间是十年前&#xff0c;其次是现在” 目录TCP/IP协议应用层协议自定义应用层协议DNS传输层协议端口号UDP协议UDP协议端格式TCP协议TCP协议段格式TCP工作机制确认应答(安…...

Python使用异步线程池实现异步TCP服务器交互

背景&#xff1a; 实现客户端与服务端交互&#xff0c;由于效率原因&#xff0c;要发送与接收异步&#xff0c;提高效率。 需要多线程&#xff0c;本文用线程池管理。 common代码&#xff1a; import pickle import struct import timedef send_msg(conn, data):time.sleep(…...

matplotlib常用操作

文章目录1 matplotlib绘图1.1 绘图步骤2 matplotlib基本元素2.1 matplotlib 画布2.2 设置坐标轴长度和范围2.3 设置图形的线型和颜色2.4 设置图形刻度范围、刻度标签和坐标轴标签等2.4.1 设置刻度范围2.4.2 设置坐标轴刻度2.5 文本标签图例3 matplotlib的ax对象绘图4 绘制子图5…...

二分算法题

文章目录一、在排序数组中查找数字二、0~n-1中缺失的数字三、旋转数组的最小数字四、二维数组中的查找一、在排序数组中查找数字 题目传送门 法一&#xff1a;暴力解 直接遍历然后计数 法二&#xff1a;二分法求边界 看到关键字排序数组、有序数组&#xff0c;一定要想到二分…...

Vue+ElementUI+SpringBoot项目配合分页插件快速实现分页(简单暴力)

首先需要在项目中引入Element-UI的组件库&#xff0c;使用以下命令&#xff0c;不会引入的请自行百度。 npm i element-ui -S Element官网地址&#xff1a;https://element.eleme.cn/#/zh-CN/component/changelog 去Element-UI官网组件库找到合适的分页插件&#xff0c;并把他引…...

【回眸】牛客网刷刷刷!嵌入式软件中也会遇到的嵌入式硬件,通讯,通讯协议专题(一)

前言 最近继续刷题&#xff0c;看看嵌入式软件还需要了解一些嵌入式硬件中的通讯协议和常用接口协议 比如说SPI CAN I2C 通讯协议专题 1.波特率 波特率 每秒传送的字符数 * 字符位数。串口的工作模式为1个起始位&#xff0c;7个数据位&#xff0c;1个校验位&#xff0c;1个…...

使用Vue展示数据(动态查询)

学习内容来源&#xff1a;视频P4 本篇文章进度接着之前的文章进行续写 精简前后端分离项目搭建 Vue基础容器使用 目录选择组件修改表格组件修改分页组件增加后端接口前端请求数据接口页面初始化请求数据点击页码请求数据选择组件 在官方文档中选择现成的组件&#xff0c;放在页…...

构建数据库测试数据——mysql

建表脚本 -- 建表 CREATE TABLE test_table (id INT(11) NOT NULL AUTO_INCREMENT,varchar_col VARCHAR(50),char_col CHAR(10),text_col TEXT,tinyint_col TINYINT(4),smallint_col SMALLINT(6),mediumint_col MEDIUMINT(9),int_col INT(11),bigint_col BIGINT(20),float_col…...

定时器任务——若依源码分析

分析util包下面的工具类schedule utils&#xff1a; ScheduleUtils 是若依中用于与 Quartz 框架交互的工具类&#xff0c;封装了定时任务的 创建、更新、暂停、删除等核心逻辑。 createScheduleJob createScheduleJob 用于将任务注册到 Quartz&#xff0c;先构建任务的 JobD…...

DBAPI如何优雅的获取单条数据

API如何优雅的获取单条数据 案例一 对于查询类API&#xff0c;查询的是单条数据&#xff0c;比如根据主键ID查询用户信息&#xff0c;sql如下&#xff1a; select id, name, age from user where id #{id}API默认返回的数据格式是多条的&#xff0c;如下&#xff1a; {&qu…...

AI病理诊断七剑下天山,医疗未来触手可及

一、病理诊断困局&#xff1a;刀尖上的医学艺术 1.1 金标准背后的隐痛 病理诊断被誉为"诊断的诊断"&#xff0c;医生需通过显微镜观察组织切片&#xff0c;在细胞迷宫中捕捉癌变信号。某省病理质控报告显示&#xff0c;基层医院误诊率达12%-15%&#xff0c;专家会诊…...

智能AI电话机器人系统的识别能力现状与发展水平

一、引言 随着人工智能技术的飞速发展&#xff0c;AI电话机器人系统已经从简单的自动应答工具演变为具备复杂交互能力的智能助手。这类系统结合了语音识别、自然语言处理、情感计算和机器学习等多项前沿技术&#xff0c;在客户服务、营销推广、信息查询等领域发挥着越来越重要…...

浪潮交换机配置track检测实现高速公路收费网络主备切换NQA

浪潮交换机track配置 项目背景高速网络拓扑网络情况分析通信线路收费网络路由 收费汇聚交换机相应配置收费汇聚track配置 项目背景 在实施省内一条高速公路时遇到的需求&#xff0c;本次涉及的主要是收费汇聚交换机的配置&#xff0c;浪潮网络设备在高速项目很少&#xff0c;通…...

AGain DB和倍数增益的关系

我在设置一款索尼CMOS芯片时&#xff0c;Again增益0db变化为6DB&#xff0c;画面的变化只有2倍DN的增益&#xff0c;比如10变为20。 这与dB和线性增益的关系以及传感器处理流程有关。以下是具体原因分析&#xff1a; 1. dB与线性增益的换算关系 6dB对应的理论线性增益应为&…...

深入浅出深度学习基础:从感知机到全连接神经网络的核心原理与应用

文章目录 前言一、感知机 (Perceptron)1.1 基础介绍1.1.1 感知机是什么&#xff1f;1.1.2 感知机的工作原理 1.2 感知机的简单应用&#xff1a;基本逻辑门1.2.1 逻辑与 (Logic AND)1.2.2 逻辑或 (Logic OR)1.2.3 逻辑与非 (Logic NAND) 1.3 感知机的实现1.3.1 简单实现 (基于阈…...

C#中的CLR属性、依赖属性与附加属性

CLR属性的主要特征 封装性&#xff1a; 隐藏字段的实现细节 提供对字段的受控访问 访问控制&#xff1a; 可单独设置get/set访问器的可见性 可创建只读或只写属性 计算属性&#xff1a; 可以在getter中执行计算逻辑 不需要直接对应一个字段 验证逻辑&#xff1a; 可以…...

Webpack性能优化:构建速度与体积优化策略

一、构建速度优化 1、​​升级Webpack和Node.js​​ ​​优化效果​​&#xff1a;Webpack 4比Webpack 3构建时间降低60%-98%。​​原因​​&#xff1a; V8引擎优化&#xff08;for of替代forEach、Map/Set替代Object&#xff09;。默认使用更快的md4哈希算法。AST直接从Loa…...

提升移动端网页调试效率:WebDebugX 与常见工具组合实践

在日常移动端开发中&#xff0c;网页调试始终是一个高频但又极具挑战的环节。尤其在面对 iOS 与 Android 的混合技术栈、各种设备差异化行为时&#xff0c;开发者迫切需要一套高效、可靠且跨平台的调试方案。过去&#xff0c;我们或多或少使用过 Chrome DevTools、Remote Debug…...