我昨天(2024-1-25)發了一個教程幻獸帕魯1-32人專業服務器開服教程(大學生專屬),教大家如何白嫖阿里雲的300元大學生無門檻捲來開服務器。然後很多人有不同的疑問,這個教程我幫大家解決一下問題,
這裡講一下,就算不是用我上篇文章開服的,如果是使用Docker開服,那麼我下面的方法都有借鑑的意義。並且,騰訊推出了66元幻獸帕魯的套餐,說實話,非常划算。我本人比較喜歡鑽研服務器,對國內服務器的價格其實還算是體驗深刻,所以我敢說,騰訊這次的活動絕對良心。
https://curl.qcloud.com/qk1wWvTD
騰訊雲幻獸帕魯專題活動服務器購買頁面
使用上面鏈接進入騰訊雲活動界面。
4C16G新人66一個月,別說開遊戲,我都想買來自用了,可惜不開放一年的。這就是騰訊雲的套路之處,他賣你最多三個月,我可以肯定告訴你,這三個月他真的不賺你錢,但是3個月以後,這些配置的續費非常非常的貴。
不過這都是後話了,3個月真的夠把這個遊戲玩膩了,騰訊雲提高自己的知名度,我們使用這些配置開服,誰用誰知道,如果購買騰訊雲開服,那麼不需要你選擇配置,你直接購買以後就可以連接使用,騰訊雲也貼心的給你寫了攻略,肯定比我強,並且有很強大的售後技術支持。
不過如果大家鐵了心白嫖,那麼可以點我頭像去看我上一個帖子,只要是大學生就可以白嫖300元的立減卷。
廢話不多說,開始正題。
1、如何遷移存檔
在我的經驗中,我曾經面臨過遷移遊戲存檔的需求,並採取了一種自己想出的方法。然而,我發現這個方法存在一個問題:對於單機檔玩家而言,遷移後房主的存檔會丟失。當你遷移完成並進入遊戲時,雖然你以前玩的所有東西都在,但由於是單機檔,你將重新創建一個新的角色。此外,由於沒有其他玩家在你的公會中,沒有人能夠重新邀請你進入工會。因此,單機檔這種方式不用嘗試了,沒有任何意義。
對於聯機檔的玩家,房主的個人存檔會丟失,進入服務器後會重新創建角色。其他玩家的存檔則保持不變,他們仍然保留著在聯機時遊玩的進度。,所有人的地圖探索會丟失,具體來說是黑霧探索。雖然傳送點仍然存在,但由於黑霧的阻擋,你無法使用傳送點。因此,你需要先探索黑霧,然後才能使用傳送點。雖然傳送點不需要重新激活,但你必須解除黑霧才能使用它們。
我把利弊已經說完了,那麼開始教程。
首先聯機圖的房主找到自己的存檔,存檔位置如下
C:\User\自己的電腦用戶名\AppData(這個文件夾大概率是隱藏的,取消隱藏即可)\Local\Pal\Saved\SaveGames\你的steam號\一(個)堆大寫英文數字組合文件夾名
如果這個steam號文件夾內裡面有多個大寫英文和數組組合文件夾,這是因為你加的聯機服務器或者專業服務器的數據都在這些文件夾裡面儲存,一個文件夾就是一個世界。
如何篩選出自己創建的世界,而不是加入別人的世界的存檔數據,首先保證你只有一個創建的世界,把其他多餘的自己創建的世界刪除掉,然後一個一個文件點進去查看存檔數據。
下圖就是一個聯機存檔的樣式,不保證完全一樣,我只能保證我的是這樣的。
下圖是加入別人世界的存檔樣式
還有一個輔助手段,你的聯機存檔進過多少人,也就是多少人在你的聯機存檔裡創建過角色(必須是創建完進入遊戲才算),可以通過存檔文件下的Player文件夾來比對,文件裡的玩家數據文件和人數對的上,基本上就沒什麼問題。
下圖是我的聯機存檔,只有三個人創建過存檔,所以有三個文件。
找到存檔文件以後,接下來就是把這個文件夾上傳到服務器,這一步又涉及到操作服務器,還是比較麻煩的。
首先,我嘗試過阿里雲的web版本的ssh終端工具,對上傳文件夾支持好像有點問題,所以我們只能通過下載其他軟件來上傳文件夾到我們的雲服務器。
https://www.xshell.com/zh/free-for-home-school/
進入這個網址,選擇xshell和xftp。這兩個都要下載!
下載以後安裝,安裝完,先打開xshell。xshell需要登錄,任意郵箱即可。
隨後我們就進入到軟件內部,新建會話。這裡的會話就是連接雲服務器。
填寫公網IP,然後點擊確定。
然後點擊連接
然後填寫用戶名,用戶名為:root
然後導入密鑰,選擇導入的密鑰以後點擊確定。
下面的圖片就是代表我們進入了服務器。
我們進入到了服務器內部,這時候我們的遊戲服務器依舊在運行。我們先把遊戲服務器停止了,按照我上一個教程的方法搭建的教程,那麼我們使用下面的命令即可停止服務器。
docker rm -f palworld-server
然後點擊xftp工具。
xftp也要我們登錄,隨便填個郵箱即可。我們就進入到了文件上傳的管理頁面。
首先找到我們本地電腦要遷移到雲服務器的存檔,然後看我圖片裡面服務器存檔所在位置。
下面就是最重要的遷移存檔環節,這個環節其實原理很簡單,理解五個字:狸貓換太子
原理是什麼呢?
經過我觀察,如果你把你自己的存檔複製過去,重啟Docker以後服務器依舊會生成新的存檔。然後服務器使用的依舊是新的存檔,可能是這個Docker鏡像的問題,也可能是官方服務器的問題,不過這都無所謂,反正在我的教程裡,狸貓換太子這個方法是有效的。
到此我們就成功了,然後重新運行Docker,因為我們之前是直接刪除了之前的docker容器,因此我們需要重新運行Docker命令
docker run -d \
--name palworld-server \
-p 8211:8211/udp \
-p 27015:27015/udp \
-v /root/palworld/:/palworld/ \
-e PLAYERS=16 \
-e PORT=8211 \
-e COMMUNITY=false \
--restart unless-stopped \
thijsvanloef/palworld-server-docker
至此,服務器運行成功。
寫在最後的話:上面的方法是因為我自己有這方面的需求,所以我研究了一下, 最終成功遷移了存檔,如果你遇到其他問題,問我是沒有任何意義的,因為我也只能解決我這個問題,所以如果你通過這種方式遷移存檔沒有成功,那麼只能自己研究研究了。如果沒有這方面的技術儲備,那就放棄你的舊檔,看我下面的修改服務器配置,稍微修改一下,新檔一天頂你前面幾天的努力(別改的太離譜,會喪失遊戲樂趣)
2、如何修改服務器配置
修改服務器配置和上面遷移存檔未必存在同一需求,並且不涉及上傳文件,所以我依舊使用阿里雲的web版ssh終端工具來演示,省去大家下載xshell的步驟。
為了以防萬一,我們修改配置文件前先停止服務器,命令如下:
docker rm -f palworld-server
首先,大家明確一下服務器的配置文件地址,如果按照我的教程來構建服務器,那麼你的服務器配置文件如下:
/root/palworld/Pal/Saved/Config/PalWorldSettings.ini
雙擊打開這個文件
具體的配置對對應的關係如下
遊戲難度和時間設置:
- Difficulty: 遊戲難度,1(簡單)、2(普通)、3(困難)。
- DayTimeSpeedRate: 白天流逝速度,範圍在0.1~5之間。
- NightTimeSpeedRate: 夜晚流逝速度,範圍在0.1~5之間。
經驗、帕魯和玩家設置:
- ExpRate: 經驗倍率,範圍在0.1~3之間。
- PalCaptureRate: 帕魯捕捉概率倍率,範圍在0.5~2之間。
- PalSpawnNumRate: 帕魯出現數量倍率,範圍在0.5~3之間。
- PalDamageRateAttack: 帕魯攻擊傷害倍率,範圍在0.1~5之間。
- PalDamageRateDefense: 帕魯承受傷害倍率,範圍在0.1~5之間。
- PlayerDamageRateAttack: 玩家攻擊傷害倍率,範圍在0.1~5之間。
- PlayerDamageRateDefense: 玩家承受傷害倍率,範圍在0.1~5之間。
玩家屬性設置:
- PlayerStomachDecreaseRate: 玩家飽食度降低倍率,範圍在0.1~5之間。
- PlayerStaminaDecreaseRate: 玩家耐力降低倍率,範圍在0.1~5之間。
- PlayerAutoHPRegeneRate: 玩家生命值恢復倍率,範圍在0.1~5之間。
- PlayerAutoHpRegeneRateInSleep: 玩家睡眠生命值恢復倍率,範圍在0.1~5之間。
帕魯屬性設置:
- PalStomachDecreaseRate: 帕魯飽食度降低倍率,範圍在0.1~5之間。
- PalStaminaDecreaseRate: 帕魯耐力降低倍率,範圍在0.1~5之間。
- PalAutoHPRegeneRate: 帕魯生命值恢復倍率,範圍在0.1~5之間。
- PalAutoHpRegeneRateInSleep: 帕魯睡眠時生命值恢復倍率,範圍在0.1~5之間。
建築和採集設置:
- BuildObjectDamageRate: 對建築物傷害倍率,建議調低。
- BuildObjectDeteriorationDamageRate: 建築物劣化速度倍率,建議調0。
- CollectionDropRate: 可採集物品掉落倍率,範圍在0.5~3之間。
- CollectionObjectHpRate: 可採集物品生命值倍率,範圍在0.5~3之間。
- CollectionObjectRespawnSpeedRate: 可採集物品刷新間隔倍率,範圍在0.5~3之間。
其他設置:
- EnemyDropItemRate: 道具掉落量倍率,範圍在0.5~3之間。
- DeathPenalty: 死亡懲罰設置,包括None(不掉落)、Item(只掉物品不掉裝備)、ItemAndEquipment(掉物品和裝備)、All(全部掉)。
- bEnablePlayerToPlayerDamage: 啟用玩家對玩家傷害功能。
- bEnableFriendlyFire: 啟用友方火焰傷害。
- bEnableInvaderEnemy: 啟用襲擊事件(野怪入侵基地)。
- bActiveUNKO: 啟用UNKO(帕魯糞便),建議False。
- bEnableAimAssistPad: 啟用平板輔助瞄準。
- bEnableAimAssistKeyboard: 啟用鍵盤輔助瞄準。
- DropItemMaxNum: 世界內掉落物品數量上限。
- DropItemMaxNum_UNKO: 帕魯屎掉落上限,不確定。
- BaseCampMaxNum: 據點最大數。
- BaseCampWorkerMaxNum: 可分派至據點工作的帕魯數量上限。
- DropItemAliveMaxHours: 掉落物品存在最大時長。
- bAutoResetGuildNoOnlinePlayers: 自動重置沒有在線玩家的公會。
- AutoResetGuildTimeNoOnlinePlayers: 無在線玩家時自動重置生成時間。
- GuildPlayerMaxNum: 公會成員最大數量。
- PalEggDefaultHatchingTime: 帕魯蛋默認孵化時間。(大家最關心的一個功能)
- WorkSpeedRate: 工作速率,影響流水線物品生產速度。
- bIsMultiplay: 多人遊戲。
- bIsPvP: PVP是否開啟。
- bCanPickupOtherGuildDeathPenaltyDrop: 可拾取其他公會的死亡掉落物。
- bEnableNonLoginPenalty: 啟用不登錄懲罰。
- bEnableFastTravel: 啟用快速旅行。
- bIsStartLocationSelectByMap: 通過地圖選擇起始位置。
- bExistPlayerAfterLogout: 註銷後玩家仍然存在。
- bEnableDefenseOtherGuildPlayer: 啟用防禦其他公會玩家功能。
- CoopPlayerMaxNum: 邀請碼服務器玩家最大人數。
- ServerPlayerMaxNum: 服務器玩家最大人數。
- ServerName: 服務器名稱。
- ServerDescription: 服務器簡介。
- AdminPassword: 管理員密碼。
- ServerPassword: 服務器密碼。
- PublicPort: 服務器對外端口。
- PublicIP: 服務器IP。
- RCONEnabled: 啟用RCON。
- RCONPort: RCON端口。
- Region: 地區。
- bUseAuth: 使用授權。
- BanListURL: 封禁玩家名單URL(需外網)。
根據上面的配置修改完以後,保存文件。快捷鍵:ctrl+s保存
然後重啟服務器,命令如下:
docker run -d \
--name palworld-server \
-p 8211:8211/udp \
-p 27015:27015/udp \
-v /root/palworld/:/palworld/ \
-e PLAYERS=16 \
-e PORT=8211 \
-e COMMUNITY=false \
--restart unless-stopped \
thijsvanloef/palworld-server-docker
剩下和之前的教程沒啥區別,啟動完畢進遊戲測試即可。
ps:根據我親身經歷,遷移的多人聯機的存檔可能不能修改服務器的配置文件,我通過上面這種方式多次修改都沒有任何效果。這個只是我個人的經歷,如果你遷移的聯機存檔也能修改,那麼恭喜你,如果不行,我建議放棄聯機存檔,修改服務器配置文件可以很快追上你之前的進度。不過不建議大家改的太過於離譜,極大縮短大家遊戲的體驗。
3、如何更新最新版的服務端
我之前發的搭建專業服務器的教程是1.25日中午發的,下午遊戲官方就推出了1.3版本。如果服務端的docker鏡像不更新,那麼你steam更新以後很有可能進入不了服務器,因為服務器版本過低。可能存在這種情況,並且因為這遊戲非常火,頻繁更新絕對是常態,所以下面我教大家如何更新最新版的服務端Docker鏡像。
但是請注意,Docker鏡像不是官方提供的,我用的是國外大佬提供的docker鏡像,如果大佬本人鴿了,那麼鏡像永遠不會更新。這種情況只能更換其他的Docker鏡像,不過這都是後話,據我觀察,我使用的這個鏡像的作者很勤快。短時間內不會出現鴿的情況,大家放心使用。
其實更新鏡像非常簡單
首先,停止服務器的容器
docker rm -f palworld-server
然後,刪除docker鏡像
docker rmi thijsvanloef/palworld-server-docker:latest
然後pull最新的鏡像
docker pull thijsvanloef/palworld-server-docker:latest
然後運行鏡像即可
docker run -d \
--name palworld-server \
-p 8211:8211/udp \
-p 27015:27015/udp \
-v /root/palworld/:/palworld/ \
-e PLAYERS=16 \
-e PORT=8211 \
-e COMMUNITY=false \
--restart unless-stopped \
thijsvanloef/palworld-server-docker
如果這種方式依舊存在版本過低的情況,那麼應該是鏡像沒有更新,只能等或者更換其他已經更新的鏡像。
4、自動重啟容器
這個找時間寫一下吧,其實很簡單,寫一個shell腳本定時執行,然後重啟docker即可。
寫這個教程還是挺累人的,基本上手把手教學,希望大家點贊收藏一下,順便充個電。大家越支持,我越努力完善教程的內容。