CheatEngine による実装

CheatEngine を新規にインストールされる方への注意、インストール時に色々とアドオンがインストールされてしまうのでチェックを外してインストールされた方が無難です。

スクリプトここから
<?xml version="1.0" encoding="utf-8"?>
<CheatTable CheatEngineTableVersion="18">
  <CheatEntries>
    <CheatEntry>
      <ID>45</ID>
      <Description>"english voice"</Description>
      <LastState Activated="0"/>
      <Color>FF0000</Color>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>[ENABLE]
aobscanmodule(voice_lng,ChildofLight.exe,00 08 08 08 08 01 02 03 04 08 05 08 08 08 06 08 07)
voice_lng+8:
  db 08
registersymbol(voice_lng)

[DISABLE]
voice_lng+8:
  db 04
unregistersymbol(voice_lng)
</AssemblerScript>
    </CheatEntry>
  </CheatEntries>
  <Comments>===============================
 Game Title    : Child of Light
 Game Version  : 1.0.31711
 Proces Name   : ChildofLight.exe
 Script Version: 1.0
 CE Version    : 6.4
 Release date  : 2015/12/07
 Author        : 雑用担当
 ------------------------------------------
 History:
 2015/12/07: Release for version 1.0.31711
 Features:
 - change the language of movie voice
===========================================
[NOTE]
===========================================
- brazilian = 0
- english = 8
- french = 1
- german = 2
- italian = 3
- japanese = 4
- latamspanish = 5
- russian = 6
- spanish = 7
===========================================
</Comments>
</CheatTable>
ここまで
を ゲーム名.ct で保存、文字コードは UTF-8N
ゲーム名で無くても可、拡張子をCTにすれば良い。

CheatEngine を起動する
CoL_CE00
左上の緑枠で囲まれたアイコンをクリック
CoL_CE01
プロセスリストが表示されるのでゲームの実行ファイル名を選択して Open
CoL_CE02
フォルダアイコンをクリックして先ほどセーブしておいたスクリプトファイル(ゲーム名.ct)を読み込む
CoL_CE03
このように下の欄に english voice という項目が表示されるはず
この状態では左端のチェックボックスがオフになっているので現在は japanese voice
CoL_CE04
オンにすると以降のムービーは english voice となる。

ここから余談
スクリプトは長々書いていますが重要なのは

aobscanmodule(voice_lng,ChildofLight.exe,00 08 08 08 08 01 02 03 04 08 05 08 08 08 06 08 07)
voice_lng+8:
  db 08

この部分でチェックボックスがチェックされたら 00 08 ..... と jmp_tbl のアドレスを検索して、そのアドレス+8 が japanese のアドレスになる。そのアドレスの値は 04 なのでそこを 08 に置き換える
チェックボックスのチェックが外されたら元の値 04 に戻す。
ということをやっているだけ。

つまり応用として french 音声 japanese 字幕や japanese 音声 italian 字幕など色々な組み合わせが可能である。各 language の値はスクリプトの [NOTE] 部分を参照してください。