terraria吧 关注:720,601贴子:9,526,955
  • 21回复贴,共1

[教程] 如何用闲置的手机开PC端服务器

只看楼主收藏回复

1楼自己的,这里的手机指的是安卓手机。
为什么要用手机开服呢?起因是楼主买了个国外的服务器作为tr的服务器,但是发现延迟和配置(1核CPU 1G内存)都无法满足联机需求,导致瞬移严重。 后来想到手机的配置似乎比这些贵的要死的服务器高多了,而公网IP的问题可以用内网穿透来解决。至于为什么不用自己电脑呢?因为楼主的笔记本要每天带去公司工作,没法一直开着。
目前已经成功实现用手机开服,内网穿透的细节还在研究


IP属地:广东1楼2023-01-15 22:09回复


    IP属地:河北来自Android客户端2楼2023-01-15 22:15
    回复
      有人找楼主玩了,先咕咕咕一会


      IP属地:广东3楼2023-01-15 22:15
      回复
        有点晚了,先放一下大致思路
        1. 手机安装termux
        2. termux安装linux系统(这里用的debian)
        3. 下载linux arm64架构的TShock
        4. 下载linu arm64架构的.net运行库
        5. 配置环境变量,然后就可以运行tshock了


        IP属地:广东4楼2023-01-16 01:12
        回复
          首先是安装termux, 这一步没什么好说的,去github或者F-DROID下一个安装包即可
          f-droid.org/en/packages/com.termux
          楼主下的是0.118.0版本,这些网址如果国内访问不了,就去各大应用商店找找吧

          打开后长这样,是一个标准的linux终端

          打开终端后第一件事建议是换源,这里用的是清华大学的源,可以参考这篇文章
          mirrors.tuna.tsinghua.edu.cn/help/termux
          如果你不会用nano或者vi命令,那就用图形界面的方式来换源(如图,用箭头控制方向,空格选中,回车确认)


          IP属地:广东5楼2023-01-16 21:30
          回复
            注意:继续读下去之前,确保你对linux有一定的基本了解,知道怎么敲命令。如果没有接触过linux系统,可以网上找个教程试着学一下,不同学习太深,知道命令行的一些基本操作,如回车执行,Ctrl+C终止,Tab键补全等等。由于楼主不可能在本贴里面写这方面的教程,所以这部分朋友你自能靠自己摸索了。
            二、安装linux
            为什么要装个linux呢?主要是我之前试过直接在termux上跑tshock报的错莫名其妙,没有解决办法,只好搞一个完整的Linux环境出来。
            换源之后,执行apt update更新一下,然后安装proot-distro(执行pkg install proot-distro)
            用proot-distro list命令可以列出能安装的linux系统,建议用ubuntu或者debian。楼主对Debian比较偏爱,所以用了这个。

            这里执行proot-distro install debian来安装
            经过一段时间的等待后,安装完成,输入proot-distro login debian来进入系统.

            自此,手机上的linux安装依然完成
            这里插入一段题外话给懂相关知识的吧友一个提示:手机输命令很麻烦,可以外接一个蓝牙键盘,或者在termux安装openssh,然后通过ssh连接到手机上(注意:默认端口不是22,而是8022,确保在同一个路由器下。用户名通过whoami来查询,密码直接在手机上通过passwd来设置)


            IP属地:广东6楼2023-01-16 21:49
            回复
              三、安装TShock
              这里用的开服软件不是官方的那个,而是用TShock,可以去github下载当前版本的(写这篇文章时,tr的版本为1449)
              github.com/Pryaxis/TShock
              手机一般都是arm架构的处理器,所以要选arm64或者arm,至于到底选哪个,取决于你的手机的CPU

              参考下图,如果是近几年的手机一般都是arm64,如果是老的手机一般是armv7(对应的是上图第一个)

              可以先下到电脑,再用USB复制到手机,也可以在手机用wget命令直接下下来。
              下载下来需要解压两次:先解压zip,出来是个.tar压缩包,然后用tar xf 解压那个文件

              这时候用ls命令应该能看到TShock.Server文件,尝试用./TShock.Server运行
              这时候会报错提示你需要安装.NET才能运行


              IP属地:广东7楼2023-01-16 22:13
              回复
                四、下载.NET运行环境
                去微软下载.net运行库 dotnet.microsoft.com/zh-cn/download/dotnet/6.0

                这里点击arm64, 进入后复制连接,然后在linux那边直接wget 下载

                注意这里下的是.tar.gz后缀的文件,解压需要用tar zxf来解压。解压后可以用
                export DOTNET_ROOT=`pwd` 来临时设置环境变量,然后尝试运行TShock,此时已经能够运行

                最后只需要编辑~/.bashrc或者/etc/profile文件,添加相应的环境变量即可
                假设你把这个文件解压在/opt/net目录下,那么编辑/etc/profile,在末尾添加两行即可
                export DOTNET_ROOT=/opt/net
                export PATH=$PATH:$HOME/.dotnet:$HOME/.dotnet/tools

                添加完成后,可以执行一下source /etc/profile来更新环境变量。
                到这为止,已经能够正常运行tshock了,玩过这个的应该都会用,不会的可以上官网找教程


                IP属地:广东8楼2023-01-16 22:40
                收起回复
                  支持,有点东西


                  IP属地:陕西来自Android客户端9楼2023-01-20 00:46
                  回复
                    补充1:
                    如果提示没有找到ICU包,则需要安装libicu

                    首先搜索一下libicu

                    安装libicu或者libicu-dev,这里执行apt install libicu67来安装


                    IP属地:广东10楼2023-01-26 20:22
                    回复
                      参考b站一位up主搭建的,内网穿透用的是樱花,设备上还下载了一个frp用来(反穿透)?对这些不懂,但是这个方法确实是可行的,我也用其他设备在线连接过服务器了,不过用的是安卓,请问楼主在同一版本下steam的pc端能否与安卓端共用服务器


                      IP属地:云南来自Android客户端11楼2023-02-13 02:49
                      回复
                        我想知道,对于处理器要求高吗我这有个魅族845的6+64不知道能不能带动15人左右


                        IP属地:山东来自Android客户端12楼2023-03-14 13:45
                        收起回复
                          支持


                          IP属地:广东来自Android客户端13楼2023-03-29 18:26
                          回复