跳到主要內容

發表文章

[重大公告] 往後所有文章將遷移到 Github Page 上

隨著接觸的技術更加廣泛,Blogger 的功能已經不符合我的需求了。最近嘗試用 Github Page建了一個主頁,觀迎大家來逛逛。 https://casidi.github.io/
最近的文章

lneditor - 漢化文本編輯器建置

這幾天找了一個漢化常用的工具來研究。 lneditor 是某個位漢化組大神寫出來的文本編輯工具,原始碼幾乎全部都是使用組合語言寫成,這真的令人佩服。 我這幾天把原始碼拿來compile,雖然最後成功了,不過中途也是遇到各種問題,我這邊就一個一個列出來。 1. WinDDK不存在,這個簡單,把WinDDK裝起來就好 2. Strings.mac不存在,這就麻煩了,這應該是舊版MASM32的東西,新版並沒有,我好不容易才在網路上找到。 3. STRINGA定義問題,直接把STRINGA定義註解掉就好 4. zlib版本過舊,去下載zlib源碼,用VC建置 5. delete(void*, unsigned int)沒有定義,自己定義 6. 找不到 lnedit2.lib,源碼中C++資料夾下有這個lib的專案檔,用VC把它建出來

鬼畜王ランスWin10硬碟版製作方法

主要參考這兩篇文章(其實是同一文章的不同語言版本): 鬼畜王蘭斯Win7安裝流程 (中文) 鬼畜王ランスをwindows7にインストールしてみた(改) (日文) 檔案這裡就不提供了,這裡就不再重複敘述完整流程,只說win10要注意的地方: 1.掛載映像檔時,要在win7的環境下掛載,否則無法安裝。我是先裝在虛擬機裡面 2.安裝完成後,直接把遊戲在win7裡的安裝目錄(C:\AliceSoft\鬼畜王ランス)整個複製到win10裡面,到這裡為止,轉區即可進行遊戲,不過沒有BGM 3.之後按照原文,把System39.exe打上,覆蓋鬼畜王SA.ALD,執行ご都合SP3.exe 4._inmm.dll的部分一樣先去他的官網下載,不過季的要載的是 Zip版 (301KB) 5.解壓_inmm238.zip之後,轉日區執行裡面的_inmmcnf.exe

回想--關於遊戲

最近生活終於有些上軌道了,我想回想一下我接觸galgame的歷程,做個紀錄。 第一次接觸galgame應該是高三的時候吧,那時我正熱衷於某論壇,常常沒有事就上去到處逛,基本上都是玩FPS或是運動競技類的單機遊戲比較多。有一次我偶然發現原來有galgame的板塊,於是就近去載了一部下來玩。我還記的當初下載的是 Rewrite,那時候我連key社是什麼都還不清楚,key社的動畫一步都沒看過,就這樣機緣巧合的開始玩 Rewrite。 玩 Rewrite時,由於我還是初次接觸galgame,總覺得劇情進行太慢,於是不少地方都是用skip看過而已,那時我也沒有看攻略,糊裡糊塗的就進到了小鳥線,結局讓我憂鬱了好 陣子。通完小鳥線後,我其實沒有什麼感動,反而覺得有些厭煩,於是就把遊戲丟著不管了。

SiglusEngine地區檢查分析(二)

這次來分析SiglusEngine的第二種與第三種檢查地區的方式。 在這之前可以先看一下之前的一些結果: SiglusEngine地區限制破解 SiglusEngine地區檢查分析(一) 第二個檢查函式在這個地方: 0045DD10  />  E8 8BFCFFFF   CALL 0045D9A0                       ;檢查 0045DD15  |.  84C0                     TEST AL,AL 0045DD17  \.  E9 EA000000     JMP 0045DE06 0045DD1C      90                          NOP 按F7跟進去,乍看之下沒什麼線索,不過有一個地方讓我比較在意: 0045D9E5  |.  50                         PUSH EAX                                                    ; /Arg1 = 1 0045D9E6  |.  B9 782D7C00   MOV ECX,OFFSET 007C2D78                  ; |UNICODE "0411" 0045D9EB  |.  C64424 50 01   MOV BYTE PTR SS:[ESP+50],1               ; | 0045D9F0  |.  E8 4BA0FBFF   CALL 00417A40                            ; \SiglusEngine.00417A40 "0411"很眼熟不是嗎? 這正是是日文的Language ID,顯然這裡是從某處得到系統語言 的Language ID的字串形式,然後再拿那個字串跟 "0411"比較。

SiglusEngine地區檢查分析(一)

之前為了破解SiglusEngine的地區限制,我有做了一些分析: SiglusEngine地區限制破解 這一次我的目的是還原第一個關鍵跳轉那個地方的檢查算法。 首先回顧一下第一個關鍵跳轉: 0045DC5A  |.  E8 81F9FFFF         CALL 0045D5E0          ;檢查 0045DC5F  |.  84C0                         TEST AL,AL 0045DC61      E9 AA000000         JMP 0045DD10 ;第一個關鍵跳轉 0045DC66      90                              NOP 在 CALL 0045D5E0 這裡按 F7 跟進: 0045D5E0  /$  6A FF                    PUSH -1         ;函式開頭 0045D5E2  |.  68 D1087600        PUSH 007608D1                             0045D5E7  |.  64:A1 0000000    MOV EAX,DWORD PTR FS:[0] 0045D5ED  |.  50                           PUSH EAX 0045D5EE  |.  81EC 7C020000 SUB ESP,27C 0045D5F4  |.  A1 90348000        MOV EAX,DWORD PTR DS:[803490] 0045D5F9  |.  33C4                       XOR EAX,ESP 這個函式有點長,我就不全部列出來了。

SiglusEngine地區限制破解

新版網誌: https://casidi.github.io/2016/07/29/siglusengine-cracking/ 採用這個引擎的比較有名的就是key跟SAGA PLANETS這兩家公司了。 這次以SAGA PLANET做的一個小遊戲為分析對象,遊戲可以免費下載: 【はつゆきパズル☆神経衰弱☆】 下載下來的是一個壓縮檔,檔名為 hatsukipuzzle01.zip,直接解壓縮會得到一個資料夾, 名字為: はつゆきパズル 其實遊戲必要的只有 はつゆきパズル\StartData\GameData 這個資料夾,直接把GameData資料夾搬到隨便一個地方,執行SiglusEngine.exe即可啟動遊戲。