Risk of rain 2 Linux 服务器搭建
首先非常感谢 GaibRua提供的CentOS环境下的服务器搭建教学。本文是对它的部分补充。
Linux环境下Risk of rain 2(雨中冒险2)服务器搭建
搭建环境
腾讯轻量应用服务器云2核4G 6M带宽
Ubuntu 20.04.4 LTS x86_64
搭建步骤
1.安装Wine-7.0
由于ror2没有linux版服务器程序,必须使用wine才能成功运行。
在ubuntu环境下,官方自带的wine版本为5.0,直接安装使用会存在IO 错误,而在wine7.0下能正常使用。
sudo dpkg --add-architecture i386
打开32位架构
wget -O - https://dl.winehq.org/wine-builds/winehq.key | sudo apt-key add -
sudo add-apt-repository 'deb https://dl.winehq.org/wine-builds/ubuntu/ focal main'
sudo apt update
安装并更新winehq官方源
sudo apt install --install-recommends winehq-stable
安装wine稳定版,现在是wine7.0
中间可能会有依赖问题,安装就好了
2.安装、启动ror2服务器
请参考Linux环境下Risk of rain 2(雨中冒险2)服务器搭建
ubuntu下安装xvfb直接这样就好了
sudo apt install xvfb
当然,别忘了给防火墙开UDP端口
3.(重要)补全steam依赖
这样直接启动在多人游戏里是搜索不到你的服务器的,服务器在运行初始化时会提示server init failed
解决办法还是在steam创意工坊下面看评论找到的
需要收到把几个steam的dll拖到ror2 server的根目录下:
steamclient.dll
tier0_s.dll
vstdlib_s.dll
和它们对应的有64后缀的dll
这样启动就应该能在多人游戏界面刷到了
4.日志展示
这个服务器在启动时会报非常多的错,我一开始一直以为启动失败,没想到竟然是正常报错
发一下正常启动的日志,可以验证一下
Mono path[0] = 'Z:/home/ubuntu/Steam/steamapps/common/Risk of Rain 2 Dedicated Server/Risk of Rain 2_Data/Managed'
Mono config path = 'Z:/home/ubuntu/Steam/steamapps/common/Risk of Rain 2 Dedicated Server/MonoBleedingEdge/etc'
0104:fixme:ntdll:NtQuerySystemInformation info_class SYSTEM_PERFORMANCE_INFORMATION
Initialize engine version: 2019.4.26f1 (e0392c6b2363)
[Subsystems] Discovering subsystems at path Z:/home/ubuntu/Steam/steamapps/common/Risk of Rain 2 Dedicated Server/Risk of Rain 2_Data/UnitySubsystems
Forcing GfxDevice: Null
GfxDevice: creating device client; threaded=0
NullGfxDevice:
Version: NULL 1.0 [1.0]
Renderer: Null Device
Vendor: Unity Technologies
Begin MonoManager ReloadAssembly
- Completed reload, in 0.370 seconds
Microsoft Media Foundation video decoding to texture disabled: graphics device is Null, only Direct3D 11 and Direct3D 12 (only on desktop) are supported.
UnloadTime: 0.724200 ms
Network message MsgType.Highest + 22 is unregistered.
(Filename: C:\buildslave\unity\build\Runtime/Export/Debug/Debug.bindings.h Line: 39)
buildId = 1.2.4.1
(Filename: C:\buildslave\unity\build\Runtime/Export/Debug/Debug.bindings.h Line: 39)
Active scene changed from to loadingbasic
(Filename: C:\buildslave\unity\build\Runtime/Export/Debug/Debug.bindings.h Line: 39)
Loaded scene loadingbasic loadSceneMode=2
(Filename: C:\buildslave\unity\build\Runtime/Export/Debug/Debug.bindings.h Line: 39)
Couldn't create a Convex Mesh from source mesh "rock2ModularMesh" within the maximum polygons limit (256). The partial hull will be used. Consider simplifying your mesh.
(Filename: Line: 91)
application data path isZ:/home/ubuntu/Steam/steamapps/common/Risk of Rain 2 Dedicated Server/Risk of Rain 2_Data
(Filename: C:\buildslave\unity\build\Runtime/Export/Debug/Debug.bindings.h Line: 39)
0104:fixme:wbemprox:client_security_SetBlanket 00000000574E2DA0, 000000004C1DF830, 10, 0, (null), 3, 3, 0000000000000000, 0x00000000
0104:fixme:wbemprox:client_security_Release 00000000574E2DA0
0104:fixme:wbemprox:wbem_services_CreateInstanceEnum unsupported flags 0x00000030
0104:fixme:wbemprox:wbem_services_CreateInstanceEnum unsupported flags 0x00000030
0104:fixme:service:I_ScRegisterDeviceNotification Notification filters are not yet implemented.
0104:fixme:bthpropscpl:BluetoothFindFirstDevice (000000000010D070 000000004B16F070): stub!
0104:fixme:setupapi:CM_Get_Parent 000000000010CEA0 0x00000000 0x00000000 stub
0104:fixme:setupapi:CM_Get_Parent 000000000010CEA0 0x00000001 0x00000000 stub
017c:fixme:service:I_ScRegisterDeviceNotification Notification filters are not yet implemented.
PlatformSystems:InitNetworkManagerSystem
(Filename: C:\buildslave\unity\build\Runtime/Export/Debug/Debug.bindings.h Line: 39)
Launch Parameters:
arg[0]="Z:\home\ubuntu\Steam\steamapps\common\Risk of Rain 2 Dedicated Server\Risk of Rain 2.exe"
(Filename: C:\buildslave\unity\build\Runtime/Export/Debug/Debug.bindings.h Line: 39)
"volume_master" = ""
The master volume of the game audio, from 0 to 100.
(Filename: C:\buildslave\unity\build\Runtime/Export/Debug/Debug.bindings.h Line: 39)
"volume_sfx" = ""
The volume of sound effects, from 0 to 100.
(Filename: C:\buildslave\unity\build\Runtime/Export/Debug/Debug.bindings.h Line: 39)
"volume_music" = ""
The music volume, from 0 to 100.
(Filename: C:\buildslave\unity\build\Runtime/Export/Debug/Debug.bindings.h Line: 39)
"user_profile_main" = ""
The current user profile.
(Filename: C:\buildslave\unity\build\Runtime/Export/Debug/Debug.bindings.h Line: 39)
"usesocialiconflag" is not a recognized ConCommand or ConVar.
(Filename: C:\buildslave\unity\build\Runtime/Export/Debug/Debug.bindings.h Line: 39)
Loaded archived convars.
(Filename: C:\buildslave\unity\build\Runtime/Export/Debug/Debug.bindings.h Line: 39)
Could not load config /Config/autoexec.cfg: Could not find file "Z:\home\ubuntu\Steam\steamapps\common\Risk of Rain 2 Dedicated Server\Risk of Rain 2_Data\Config\autoexec.cfg"
(Filename: C:\buildslave\unity\build\Runtime/Export/Debug/Debug.bindings.h Line: 39)
Cannot call LocalUserManager.SetLocalUsers at this time, user login changes are not safe at this time.
(Filename: C:\buildslave\unity\build\Runtime/Export/Debug/Debug.bindings.h Line: 39)
Loading custom server configuration...
(Filename: C:\buildslave\unity\build\Runtime/Export/Debug/Debug.bindings.h Line: 39)
Could not load config /Config/server.cfg: Could not find file "Z:\home\ubuntu\Steam\steamapps\common\Risk of Rain 2 Dedicated Server\Risk of Rain 2_Data\Config\server.cfg"
(Filename: C:\buildslave\unity\build\Runtime/Export/Debug/Debug.bindings.h Line: 39)
Hosting server...
(Filename: C:\buildslave\unity\build\Runtime/Export/Debug/Debug.bindings.h Line: 39)
NetworkManagerSystem.desiredHost={ hostType=Self listen=True maxPlayers=4 }
(Filename: C:\buildslave\unity\build\Runtime/Export/Debug/Debug.bindings.h Line: 39)
LoadContentPacks() start
(Filename: C:\buildslave\unity\build\Runtime/Export/Debug/Debug.bindings.h Line: 39)
0188:fixme:setupapi:CM_Get_Parent 0000000057FEF080 0x00000000 0x00000000 stub
0188:fixme:setupapi:CM_Get_Parent 0000000057FEF080 0x00000001 0x00000000 stub
0188:fixme:bthpropscpl:BluetoothFindFirstDevic