求求这里有没有大佬能帮忙解包这款游戏的立绘跟l2d? 网上教学真的看不懂
致歉修改:搞错游戏名字了,星欲少女是下载全的,我看成星神少女了
改了吗,之前解包这游戏资源是游戏内一次性下下来的,我拿的新注册的号下载解包的
抱歉,回答的时候看错游戏名字了,当时标题看成星神少女了
會基礎解包嗎?
皮膚、骨骼、png檔抓下來丟到skeletonViewer就好
去掉.asset后,把没有副档名的档案加上.json
用编辑器开启可以看到spine版本是4.0.64,但4.0.64的Skeleton Viewer有点问题
改为4.1.24版就能开了
有些PNG分辨率和atlas文件不同,需自行调整
对于这个游戏,个人自用脚本如下
#!/bin/bash
find "$1" -type f -name "*.skel" -exec bash -c 'mv "$0" "${0%.skel}.json"' {} \;
批量重命名后缀的。
import os
import re
from PIL import Image
def resize_image_nearest(image_path, new_size, output_path):
image = Image.open(image_path)
resized_image = image.resize(new_size, Image.NEAREST)
resized_image.save(output_path)
spine_folder = "/home/rikka/Downloads/UnpackGames/output"
atlas_files = []
for root, dirs, files in os.walk(spine_folder):
for file in files:
if file.endswith(".atlas"):
atlas_files.append(os.path.join(root, file))
for atlas_file in atlas_files:
with open(atlas_file, "r") as file:
lines = file.readlines()
current_image = None
correct_size = None
image_pattern = re.compile(r'([^#]+)\.png')
size_pattern = re.compile(r'size:\s*(\d+),\s*(\d+)')
for line in lines:
image_match = image_pattern.search(line)
size_match = size_pattern.search(line)
if image_match:
current_image = image_match.group(1) + ".png"
elif size_match:
width, height = map(int, size_match.groups())
correct_size = (width, height)
if current_image and correct_size:
image_path = os.path.join(os.path.dirname(atlas_file), current_image)
if os.path.exists(image_path) and Image.open(image_path).size != correct_size:
print(f"缩放 {image_path} 到 {correct_size} ")
resize_image_nearest(image_path, correct_size, image_path)
current_image = None
correct_size = None
对贴图按照atlas文件里面的分辨率缩放
遊戲的資源都集中在熱更新裡面
APK反而沒什麼東西
點我展開DiskGenius遊戲數據備份詳情
夜神模擬器備份數據後
生成虛擬硬盤文件NPBK
NPBK改後綴為RAR
使用WINRAR解壓縮得到VMDK文件
得到遊戲名稱 : com.pinkcore.starlusts
使用DiskGenius開啟VMDK文件
遊戲熱更新數據
不在 \data\com.pinkcore.starlusts 裡面
在\ media\0\data\com.pinkcore.starlusts 裡面
另存虛擬硬盤數據到本地硬盤
遊戲數據沒有完整的文件名
\hash\hash_data 形式
使用Windows自帶搜索功能
對於重複的文件名_data 選擇保留
Windows 會自動給_data加上編號
這些就是未加密的AB包(Asset Bundle)
使用Raz版Asset Studio開啟抽出資源即可
Asset Studio輸出設定
點我展開Asset Studio設置詳情
Options (選項) ----> Export options (輸出選項) ----> Group exported assets by (分組輸出材質方式) —< container path (內容路徑)
效果 : 輸出的文件會依照原AB內的路徑自動生成分類目錄 , 文件比較美觀 , 不會都擠在同一個目錄內
第1次抽出類別 : Font(字型) , TextAsset(本文) , Texture2D(圖像) 放入Assets-1目錄
第2次抽出類別 : Sprtie(圖像) 放入Assets-2目錄
Spine文件在2個目錄下 (部分圖像需要修正分辨率)
\Assets-1_Main\Prefab
\Assets-1_Main\Spine2D
這2個目錄Spine文件要修改後綴
點我展開Spine文件詳情
\Assets-1_Main\Prefab
.atlas.prefab 去掉後綴.prefab —> .altas
.prefab 更改後綴為.json
bat批次代碼 (bat文件放在\Assets-1_Main\Prefab下運行即可)
批次修改後綴prefab_to_json(含子目錄文件).rar (546 字节)
for /r %%a in (.atlas.prefab) do ren “%%a” “%%~na.”
for /r %%a in (.prefab) do ren “%%a” “%%~na.json”
\Assets-1_Main\Spine2D
.atlas.asset 去掉後綴.asset —> .altas
.asset 更改後綴為.json
bat批次代碼 (bat文件放在\Assets-1_Main\Spine2D下運行即可)
批次修改後綴asset_to_json(含子目錄文件).rar (539 字节)
for /r %%a in (.atlas.asset) do ren “%%a” “%%~na.”
for /r %%a in (.asset) do ren “%%a” “%%~na.json”
json文件內Spine版本為4.0.64
使用下面版本viewer這些開啟即可
skeletonViewer-4.0.64.jar
skeletonViewer-4.1.00.jar
skeletonViewer-4.1.24.jar
skeletonViewer-4.2.00.jar
skeletonViewer-4.2.34.jar
遊戲音頻文件在AB包裡以TextAsset(文檔)的類別封裝(不在AudioClip裡面)
音頻文件名與後綴都需要作修改
點我展開bank音頻詳情
修改步驟如下
(1) 文件名_bank.bytes ----> 文件名_bank (去掉.bytes後綴)
(2) 文件名_bank ----> 文件名 (去掉_bank文件名)
(3) 文件名 ----> 文件名.bank (添加新後綴.bank)
bat批次命令
去除後綴bytes去除字串_bank改後綴為bank.rar (674 字节)
ren *.bytes *.
@Echo Off&SetLocal ENABLEDELAYEDEXPANSION
FOR %%a in (*) do (
set “name=%%a”
set “name=!name:_bank=!”
ren “%%a” “!name!”
)
ren *. *.bank
遊戲音頻文件在\Assets-1_Main\FMODBanks
使用第七史詩音頻解密工具即可
https://www.norbdragon.com/uploads/epic7/epic7_debank_v1_0.zip
將.bank文件放入 \epic7_debank_v1_0\input 目錄內
C:\Windows\System32\cmd.exe 複製一份到 \epic7_debank_v1_0\ 目錄下
cmd 命令 python epic7_debank.py 按下enter後
程序自動開始轉檔輸出wav音頻文件在 \epic7_debank_v1_0\result 目錄下
(這邊你的python要設定好環境變數才能執行)
點我展開python詳情
要運行.py
這邊你要先安裝好python
python在安裝時
自動添加於環境變數的選項要勾選
Add python.ext to PATH
cmd輸入python命令沒反應時
要手動環境變數設定
我的電腦 —> 內容 —> 進階系統設定 → 環境變數
看下面欄位 ----> 系統變數(S) —> 找到Path —> 編輯
新增路徑 C:\Users\你的電腦名稱\AppData\Local\Programs\Python\Python311
新增路徑 C:\Users\你的電腦名稱\AppData\Local\Programs\Python\Python311\Scripts
補上ffmpeg
點我展開ffmpeg詳情
https://www.ffmpeg.org/download.html
https://www.gyan.dev/ffmpeg/builds/
https://www.gyan.dev/ffmpeg/builds/ffmpeg-release-full.7z
將解壓縮後的ffmpeg.exe
放在你要的目錄下
我是放在C:
所以等下設定好環境變數
cmd會自動找到C:\ffmpeg.exe
使用cmd添加ffmpeg需手動設定環境變數
環境變數設定
本機(滑鼠右鍵) —> 環境變數(N) —> 系統變數(S) —> Path —> 編輯(I) —> 新增(N)
新增程序所在路徑 C:\ffmpeg (這邊看你的ffmpeg.exe放在哪個目錄下)
路徑新增確定後
之後cmd命令就可以使用ffmpeg這命令關鍵詞
和運行python代碼樣一樣都需要事先設定好環境變數
cmd命令只要輸入關鍵詞即可運行程序
wav轉mp3
bat批次代碼 (bat文件放在最外圍目錄運行即可)
wav_to_mp3.rar (538 字节)
效果 : 含子目錄下wav文件轉成320kbps mp3
@echo off
for /f “usebackq tokens=*” %%d in (dir /s /b *.wav
) do (
ffmpeg -i “%%d” -vn -ar 44100 -ac 2 -b:a 320k “%%~dpnd.mp3”
)
wav轉aac
bat批次代碼 (bat文件放在最外圍目錄運行即可)
wav_to_aac.rar (510 字节)
效果 : 含子目錄下wav文件轉成aac文件
@echo off
for /f “usebackq tokens=*” %%d in (dir /s /b *.wav
) do (
ffmpeg -i “%%d” -c:a aac -q:a 2 “%%~dpnd.aac”
)
懶人包
原始AB包(APK + 熱更新數據)
com.pinkcore.starlusts_asset_20240830.rar (2.11GB)
點我展開連結
Google Drive載點
Mega.nz載點
百度盤載點
提取码: 1234
Asset Stuido 抽取出並整理過後的遊戲數據
com.pinkcore.starlusts_20240830.rar (5.71GB)
點我展開連結
Google Drive載點
Mega.nz載點
百度盤載點
提取码: 1234
相關工具
點我展開連結
較詳細的教程
Raz版 Asset Studio比較詳細的說明
DiskGenius比較詳細的說明
给你提个建议,你这个太长了观感不好,除非是单开的话题,建议使用markdown的展开与收起,举例:
有办法提出到他的所有音频和文本吗,我查了一天了都没搞明白他的音频在那个文件里的,本来想全提取来慢慢看的我全提的时候告诉我内存不够了,我看一个代码本居然有600M,查的时候里面才几M
找到最後還真的找不到文本在哪 : )
但有找到原始AB包文件名(非hash)
但有找到原始音頻BANK文件名(非hash)
wget + 遊戲資源包清單 (運行wget.bat即可開始下載)
wget_url.rar (1.9 MB)
相關工具已放懶人包裡
\asset-1\Assets_Main\相關工具
Step 01 遊戲熱更新資源包存放路徑
\media\0\android\data\com.pinkcore.starlusts\files\UnityCache\Shared
Step 02 使用夜神擬器+DiskGenius撈取遊戲數據
使用海底撈月法會得到\hash\hash_data
缺點不知道原始AB包文件名
後續處理很麻煩 , 故換方法
Step 03 使用iPad + Fiddler解析遊戲熱更新資源包URL
得到遊戲資源包清單
https://ls-download.pinkcore.net/Erolabs/iOS/prod/1.11.0.0.5/catalog_2024.08.22.04.25.10.json
由於熱更新下載遊戲數據包時已全部將資源包URL全部下載完
故直接等Fiddler最後結果即可
Step 04 Fiddler複製所有URL貼到新的文本文件裡
Step 05 使用Emditor編輯文本文件
尋找https://ls-download.pinkcore.net/
抽出符合的行
另存為20240915_ls-download.pinkcore.net_try.txt
Step 06
使用wget下載 20240915_ls-download.pinkcore.net_try.txt
Step 07 使用Raz版Asset Studio抽出AB包資源
asset -1 Font,TextAsset,Texture2D (字型 , Spine文件 , 音頻 , PNG圖像)
asset-2 Sprite (PNG圖像)
asset-3 MonoBehaviour (疑似有台本的線索)
Step 08
Spine文件需要批次修改後綴
\asset-1\Assets_Main\Spine2D
.atlas.asset ----> .atals (去除多於後綴.asset)
.asset ----> .json (.asset後綴改成.json)
\asset-1\Assets_Main\Prefab
.atlas.prefab ----> .atals (去除多於後綴.prefab)
.prefab ----> .json (.prefab後綴改成.json)
Step 09 修改Spind PNG圖片尺寸與atlas描述相同
修改png_resize.py內圖片路徑(粉紅色的字)
從C:\Windows\System32\cmd.exe 複製一份與py文件放在一起
CMD命令 : python png_resize.py
Step 10 使用skeletonViewer-4.0.64.jar開啟json文件
Step 11 角色語音不在AB包裡面
在額外的目錄內\asset-1\Assets_Main\FMODBanks\
Step 12 批次修改後綴
.bytes ----> .bank
Step 13
批次修改文件名
去掉多餘文件名_bank
運行remove.bytes_string.bat
開始更改後綴 + 去掉多餘文件名
Step 14
使用第七史詩音頻轉換工具
bank文件放入\asset-1\Assets_Main\epic7_debank_v1_0\input
從C:\Windows\System32\cmd.exe 複製一份與py文件放在一起
CDM命令 : python epic7_debank.py
bank自動轉檔為wav
Step 15
使用ffmpeg批次將wav轉成aac
ffmpeg設置好環境變數
運行wav_to_aac.bat開始轉換
Step 16
使用批次命令
自動建立wav目錄
自動抽出wav文件
然後再手動刪除wav目錄
aac音頻文件放入懶人包內
iPad + Fiddler熱更新遊戲數據包懶人包載點詳情
iPad + Fiddler熱更新遊戲數據包懶人包(AB包文件名整齊非hash值)
pinkcore.starlusts_iOS_asset_20240915.rar (1.70GB)
Google Drive載點
Mega.nz載點
百度盤載點
提取码: 1234
使用Asset Studio抽出遊戲資源後懶人包載點詳情
使用Asset Studio抽出遊戲資源後懶人包(音頻 + Spine)
pinkcore.starlusts_iOS_20240915.rar (5.01GB)
Google Drive載點
Mega.nz載點
百度盤載點
提取码: 1234
相關工具
在MonoBehaviour项目中疑似文本的文件,这些估计是加密了,外表看起来是数字这些的,但是提取出来后每个文件的体积还挺大的,CHS光这个提取出来就占了35M,一个由这些3600完字符的文本不可能超过35M的,我有个8000万字符的文本才16M,由于我不知道怎么解密,反正这个东西看起来就很想文本的备注