劍靈省空間雙開辦法,附帶批處理腳本 -开发者知识库

劍靈省空間雙開辦法,附帶批處理腳本 -开发者知识库,第1张

經過測試,32位的劍靈用這個腳本只能雙開,三開會報錯
64位的經過測試能三開,四開沒試過


2017/12/27 更新
對 bin64 文件夾生成鏈接

2017/12/2 更新
修復路徑名中有空格會出錯的問題


劍靈不能雙開原因在於

劍靈根目錄\contents\Local\TENCENT\data 目錄下的 *.dat 文件
劍靈根目錄bns\contents\Local\TENCENT\CHINESES\data 目錄下的 *.dat 文件

是單一劍靈程序在獨占使用
只要同一份的劍靈文件 的不同進程讀取不同的上述文件即可雙開劍靈

我的辦法是使用 windows 的 目錄聯接,使劍靈的大部分文件都鏈接一份出來,只有上述文件是復制的
這樣每個新劍靈只有那堆復制文件的大小,大概200m,左右

批處理代碼 劍靈雙開.bat 在下面

使用辦法:
1.
下載 劍靈多開.bat 文件
用記事本打開此文件
2.
找到這行 set SrcDir=C:\game\bns
把 C:\game\bns 改成你的劍靈根目錄
3.
找到這行 set DstDir=E:\bns
把 E:\bns 改成放置新劍靈的目錄
4.
保存
5.
雙擊運行
6.
按照提示操作
7.
成功會顯示操作完成
失敗會顯示操作失敗

注意1

不要刪除原始那份劍靈文件,不然其他的統統失效

注意2

如果劍靈有更新,請務必先打開原始那份劍靈來更新,等更新完成后,然后在運行批處理腳本來同步更新,才能打開其他的劍靈

注意3

如果你修改了 xml.dat 文件,需要直接運行批處理腳本來同步修改


劍靈雙開.bat 的代碼內容,如果你不想下載的話

@echo off
echo 本程序可創建一份新的劍靈游戲文件,但將會基本不占用空間
echo ver0.02
echo ------------------------------------------------------

rem 本程序使用目錄聯接(一種快捷方式)的方式來節省硬盤空間
rem 劍靈不能同程序多開的原因是因為劍靈在讀取部分文件時使用獨占,
rem 然后再開第二個劍靈時,那個被第一個劍靈獨占的文件無法打開,所以
rem 第二個劍靈就會加載失敗
rem 解決辦法是:把劍靈獨占的文件復制一份,讓第二個劍靈讀取另外一份文件即可避免此問題

rem SrcDir 是原始劍靈目錄
rem DstDir 是新的劍靈目錄
set SrcDir=C:\game\bns
set DstDir=E:\bns

echo 原始劍靈游戲目錄 : %SrcDir%
echo 新的劍靈游戲目錄 : %DstDir%
echo ------------------------------------------------------
echo 請確認游戲目錄有沒有設置錯誤
echo ------------------------------------------------------
choice /c yn /m "確定請按 y,否則請按 n 或者直接關掉本窗口"

if errorlevel 2 goto goodbye
if errorlevel 1 goto do_it
:do_it
echo 正在檢查文件
if not exist "%SrcDir%" set errorDir="%SrcDir%" & goto findNotExistError
mkdir "%DstDir%"
mklink /j "%DstDir%\bin" "%SrcDir%\bin"
mklink /j "%DstDir%\bin64" "%SrcDir%\bin64"
mklink /j "%DstDir%\TAO" "%SrcDir%\TAO"
mklink /j "%DstDir%\TCLS" "%SrcDir%\TCLS"
mkdir "%DstDir%\contents"
mklink /j "%DstDir%\contents\bns" "%SrcDir%\contents\bns"
mkdir "%DstDir%\contents\Local\TENCENT"
mkdir "%DstDir%\contents\Local\TENCENT\CHINESES"
mklink /j "%DstDir%\contents\Local\TENCENT\CHINESES\CookedPC" "%SrcDir%\contents\Local\TENCENT\CHINESES\CookedPC"
mklink /j "%DstDir%\contents\Local\TENCENT\CHINESES\Splash" "%SrcDir%\contents\Local\TENCENT\CHINESES\Splash"
mklink /j "%DstDir%\contents\Local\TENCENT\CHINESES\web" "%SrcDir%\contents\Local\TENCENT\CHINESES\web"
xcopy /I /Y "%SrcDir%\contents\Local\TENCENT\CHINESES\data" "%DstDir%\contents\Local\TENCENT\CHINESES\data"
xcopy /I /Y "%SrcDir%\contents\Local\TENCENT\data" "%DstDir%\contents\Local\TENCENT\data"

goto good_end

:goodbye
echo 請使用記事本打開此文件
echo 找到 set SrcDir=XXX (XXX是任意字符) 這一行,請把XXX改成你的原始劍靈目錄
echo 找到 set DstDir=YYY (YYY是任意字符) 這一行,請把YYY改成你的新的劍靈目錄

goto good_end

:good_end
echo 操作完成
pause
exit

:bad_end
echo 操作失敗
pause
exit

:findNotExistError
echo 目錄 %errorDir% 不存在,請檢查原始劍靈文件是否完整
goto bad_end

最佳答案:

本文经用户投稿或网站收集转载,如有侵权请联系本站。

发表评论

0条回复