2024年9月30日月曜日

[手遊]Love Live School Idol Festival All Stars 私服安裝步驟紀錄

這遊戲的前身:Love Live School Idol Festival 有玩過一陣子,不過在換手機的時候因為沒注意到引繼碼的有效期間只有一年,結果引繼失敗,就直接停玩了。
 

基本上結束營運的網路遊戲,有人做私服就會想要試看看。可以體驗轉蛋轉到爽或是直接衝到最高等級碾壓...於是就有了這篇。
試過之後發現其實使用的難度不低... 感謝破解傳輸資料並實作出伺服器端運作機制的高手們的努力。
本筆記主要目的是紀錄安裝步驟,能夠降低使用門檻。


整個開發計劃的資料源:

https://carette.codeberg.page/ll-hax-docs/sifas/easy-install/

包含基本的運作方式解說跟遊戲端的取得方式。建議遊戲端儘早下載,有被移除的可能。
本文件是以伺服器端安裝在跟遊戲端同一個作業系統(android)內為前提。
伺服器與作業系統分開的話,難度會大幅增加。因為會需要對遊戲端進行解包,修改連線目標,跟重新打包的動作。本文不討論這個部分。


https://github.com/arina999999997/elichika/

伺服器軟體本身。裡面的解說文件是最重要的。請務必詳讀。

 

前置準備

  • 被修改過連線目標為localhost(127.0.0.1)的遊戲端(apk)
    檔案位置:https://github.com/arina999999997/elichika/releases/tag/clients
    本文以android+bluestacks模擬器做為遊戲端的使用環境
  • 使用bluestacks模擬器的話,必須是64位元環境
    bs模擬器預設建立的是32位元環境,需自行建立64位元環境
  • 具備60GB以上的伺服器環境,或是遊戲端的安裝環境具備60GB以上的空間

 

在android作業系統安裝伺服器端

會需要使用「termux」這個軟體。本軟體目的是建立一個可以執行linux軟體的作業環境。
因為android本身就是基於linux的作業系統,讓這種做法成為可能。
檔案位置:https://github.com/termux/termux-app/releases/tag/v0.118.0
下載「termux-app_v0.118.0+github-debug_universal.apk」
雖然有根據不同CPU架構的編譯版,使用universal這個包含所有架構的版本比較省事。
也方便使用bluestack這類android模擬器的使用者。

安裝之後直接執行termux。會得到以下畫面:

接著執行以下指令:
curl -L https://raw.githubusercontent.com/arina999999997/elichika/master/bin/install.sh | bash

這個指令會做幾件事情:安裝git / go語言,安裝elichika。

執行完畢之後,了解linux環境的人可以自行ls -al查看多了什麼東西。

接著執行「./update_elichika」。這個指令會更新目前的伺服器環境,並對遊戲的資料庫重新整理。

執行完之後會是這樣的畫面:

接著執行「./run_elichika」啟動伺服器。看到以下的畫面就是執行成功。

此時可以開啟遊戲端進行遊玩。基本的安裝到此結束。

 


以下是進一步的自己架遊戲下載檔的伺服環境。


眼尖的您可能會發現「webUI address: 0.0.0.0:8080/webui」這行。
是的。這個伺服器具有瀏覽器介面方便設定。可以在android系統之下執行瀏覽器,網址列輸入
「http://127.0.0.1:8080/webui/admin」進行連線。
首先會看到這個畫面,請直接點「login」


接著會看到這個畫面。目前cdn(遊戲下載檔的伺服環境)的位置是 https://llsifas.catfolk.party/static/
這是好心人提供的伺服器位置。因為大量的使用會造成費用等等負擔,因此建議還是自己架一台下載檔的伺服環境。
之後處理完遊戲下載檔的設定之後,會需要回來對這裡進行修改。


架構遊戲下載檔伺服環境

有兩種方法。一是把遊戲下載檔放在elichika裡面。elichika本身具有遊戲下載檔的提供能力。
此法適合只靠手機做所有事情的使用者。
不過光是下載遊戲檔就需要使用bittorrent,只用手機的話這前提就有一定門檻。
使用模擬器的使用者也一定會有windows作業環境,
因此本文只介紹第二條路:另外準備一台伺服器,也就是架在windows上面的方法。此法適合有其他作業機器,跟使用模擬器的使用者。ios遊戲端的使用者,因為連elichika都要裝在其他機器,或許用一台macbook使用docker image會是更簡單的方法。

前置作業:

步驟:

  • 在任意磁碟的根目錄建立一個任意名稱目錄。在此命名為「llsifas」。
  • 在「llsifas」目錄裡面,建立兩個目錄:「2d61e7b4e89961c7」 「b66ec2295e9a00aa」
    目錄名不可變動。因為遊戲端會指定這兩個相對目錄名。
  • 把下載得到的「sifas-gl-cdn-assets-2d61e7b4e89961c7.tar」以「無相對路徑」的方式,解開檔案放到「2d61e7b4e89961c7」裡面。因為tar包裝裡面含有檔案的相對路徑「meta0」「meta1」等等,但是遊戲端進行下載的時候卻不會指定相對路徑。
    無相對路徑的處理方式,以winrar來說,可以使用這個選項:


  •  把下載得到的「sifas-gl-cdn-assets-b66ec2295e9a00aa.tar」以「無相對路徑」的方式,解開檔案放到「b66ec2295e9a00aa」裡面。因為tar包裝裡面含有檔案的相對路徑「meta0」「meta1」等等,但是遊戲端進行下載的時候卻不會指定相對路徑。
  • 以上做完後的路徑與檔案結構如下圖


 

  • 在windows環境下,以命令提示字元,在下載simple-http-server的目錄之下執行指令「 x86_64-pc-windows-msvc-simple-http-server.exe -i -p 8080 d:/llsifas」
    看到以下的畫面就是正常運作

  • 進行上面提到的webui:在android系統之下執行瀏覽器,網址列輸入
    「http://127.0.0.1:8080/webui/admin」進行連線。
    修改cdn's address為「http://(windows環境的ip):8080」,並按下「update config」。
    以下的例圖假設windows的ip為192.168.101.3。


  • 執行遊戲端,看看下載資料的時候,windows的命令提示字元會不會有大量log印出來。
    有的話就代表成功了。

P.S:試著轉了一下蛋...這伺服器有改過機率嗎?怎麼可能這麼歐...





0 件のコメント:

コメントを投稿