アパートハックとは?
アパートプレイ中、「このオブがアパート用のオブだったらなー」という経験は全プレイヤー共通なのではないかと思います。
そんなプレイヤーのために、Simlogical様には「アパートハックパッチ」が用意されています。
このパッチは、オブジェクトのiffファイルにインポートすることで、オブジェクトをアパート用オブにすることができるものです。
パッチの入ったzipファイルには詳しい画像付きチュートリアルが同梱されているのですが、やっぱり英語です。
せっかくなので、日本語で説明してみようと思います。
……と自信を持って言えるほど詳しいわけではないんですけどね!ほとんど同梱チュートリアルに沿ったものになりますが、「ないよりマシ」の精神でやっていきます。
1. 心構えとソフトの準備
★注意★
これから説明するのは、「パッチを使ったハック方法」です。
少しややこしいので、ハックに慣れていない方にはオススメできません。ゲームの不具合に繋がるかもしれません。
まず以下のチュートリアルを読んで、できそうかどうか考えてみて下さい。
他のチュートリアルと同様、自己責任でお願いします。
また、ツールやBHAV、TTABなどの説明はだいぶ大雑把ですので、他のサイトさんのチュートリアルで勉強した方がいいと思います。わかりやすい解説をされている国内サイトさんがたくさんあります!
わざわざパッチを使ってハックしなくても、配布されているクローン可のアパートオブをクローン→画像を置き換える、という方法もあります。
また、このハックにはふたつのソフトが必要です。
もし持っていない場合はダウンロードしてきてください。
トラモグは「シムパーソンデータ倶楽部」様にダウンロード元へのリンクとチュートリアルがあります。
IFF Pencil 2の方は、TSRからダウンロードできます。登録は必要ですが無料です。
頻繁にハックをするわけではないという方でも、これらのソフトを持っていると何かと便利です。
いつリンクが切れてしまうかもわからないので、ダウンロード&保存しておくことをオススメします。
2. パッチをダウンロードする
apartments.farをダウンロードしたページからできます。
下の方に、パッチが2種類あります。
今回説明するのはオブジェクト用パッチですので、「Patch and tutorial for hacking your own other objects to work with this system」と書いてある方をダウンロードしてください。ピンクの○をクリック!緑じゃなくてピンクです。
ダウンロードできたらzipファイルを解凍しましょう。
解凍すると出てくる「apt_patchobject」というファイルの中にはたくさん画像が入っているので戸惑うかもしれませんが、個別に見ていく必要はありません。気にしないでください。
これから扱うパッチファイルは、「BHAV5000.iff」になります。
ちなみに、「Makenewaptobject.htm」というファイルをダブルクリックすると、パッチのチュートリアルを見ることができます。この説明ページはほぼこのチュートリアルの内容になります。
3. アパート用にするオブを用意する
パッチは入手したので、今度はアパート用にするオブを調達しましょう。
★注意★
ドアにはドア用のパッチがあります。このパッチでは、ドア以外のオブを選んでください。
また、冷蔵庫にアパート用ハックを施す際は、食事ファイルまで修正しなければなりません。
クローンしてGUIDを探して書き換えて……とかなり面倒です。少なくとも私の根気では無理です。
「冷蔵庫から出てくる食事ファイルを変更する」等パッチ以外のハックも必要になってきますので、冷蔵庫はやめておいた方がいいと思います。
Simlogical様で2種類配布されていますで、そちらを使ってみてください。
私はこれをハックしてみることにしました。
「ソーマ プラズマテレビ」です。
アパート用テレビの配布はいくつかされていますが、意外にもこれのハック品はなかったようなので。……もしかしたらあるかもしれません。とりあえずこれを元にアパートオブを作ってみます。プラーズマー
ハックするオブを決めたら、トラモグでクローンしましょう。
クローンのやり方がわからない方は、チュートリアルで勉強してみてください。
テレビを探して、クローンします。ファイル名は「tvs_plasma_apartment.iff」にしました。わかりやすいのが一番です。
このファイルをいじっていくことになります。
★注意★
ハックするファイルは、必ずクローンするようにしましょう。不具合が起きても対処できます。
さて、クローンしただけではゲーム内の購入欄での区別がつかず、どっちがハックオブ?と大変紛らわしいので、オブの名前・説明を書き替えておきましょう。
「ファイルの編集」をクリックすると、こんな画面が出てきます。
直接書き換えてしまってください。ただ区別をつけるだけなら、名前に「アパート用」と付け加えるだけでもいいと思います。
こんな感じで。
このチュートリアル後に配布予定なので、サイト名付きです。
(……と思ってたんですが、Simlogical様にパッチを使ったファイルを配布していいのかどうかの記述が見つからず現在調査中です。規約が見つからぬ!)
ちなみに「商品説明」の欄なのですが、改行しようとEnterキーを押すと編集完了だと勘違いされ編集ページを閉じられてしまいます。
Enterキーが使えないので、「Ctrl+J」を使いましょう。改行されます。
価格もここで変更することができます。限りなく安くすることもできますが、みなさん御存じの通りシムは「安い物<<<高い物」という価値観を持っているので、娯楽オブ等はを安くしすぎるとオブが複数ある状態では使ってくれないかもしれません。
ここまで終わったら、トラモグの出番はおしまいです。トラモグは開いたままだとiffファイルをいじることのできない仕様なので、閉じてしまいましょう。
4. パッチをインポートする
先ほど作成したクローンをiffpencilsで開いてください。
こんな画面が出ます。
(クリックで大きくなります)
今回は、左のメニューの「BHAV」「TTAB」を扱っていきます。
それぞれ何をする項目なの?という疑問は、チュートリアルサイトさんを見ながらいじっていくうちになんとなくわかってくると思います。簡単なハックを練習していけばだいぶ理解が進みます。理解できてしまうと色々できて楽しいです。
まずはBHAVから見ていきます。左のメニューをクリックしてみてください。BHAVはシムの行動のひとつひとつを管理しているところです。
たくさんのBHAVが並んでいます。これに、先ほどダウンロードしたパッチ「BHAV5000.iff」をインポートしましょう。
では、上のメニューから、「Edit」→「Import」を選んでください。
下のラジオボタンを選択して、「OK」をクリック。
すると、インポートするファイルを選択する画面になります。
先ほど解凍した「apt_patchobject」ファイル内の、「BHAV5000.iff」を選んでください。確認画面が出てきますが、構わず「OK」をクリックしておきましょう。
すると……
BHAVに「#5000:"Allowed to use?"」がインポートされました!
ちなみにこのBHAVは、名前からなんとなくわかるように、シムが鍵を持っているか持っていないかチェックする項目になります。
5. BHAVをいじる
さて、インポートが終わったので、今度は細かい作業になります。
左メニューから「TTAB」を選んでください。右に出てきた項目をクリック。
このテレビの場合は、こんな感じになりました。
(クリックで大きくなります)
まず、「Interaction items」の一番上、「#0:Turn On」を選択してみます。
ちなみに、この画面からわかることは何かというと……
「Turn On(テレビをつける)」は、
……とだいたいこんな感じになります。TTABの見方を覚えておくと結構便利です。色んなサイトさんで解説されています。
で、今回注目するのは「Properties」欄の「Check tree」の番号です。
「Action tree」じゃなくて「Check tree」になります。
このテレビをつける動作は、BHAV#4099のチェックに合格したシムにしかできません。
「鍵を持っているかいないか」のチェックに相当する「BHAV#5000」は先ほどインポートしました。
ただ、チェック項目があってもチェックする担当者がいなければ意味がありません。
今度は、チェック担当である#4099に「#5000のチェック項目もチェックしてね」という命令を書き込む必要があるわけです。
とりあえずやってみましょう。
「Cancel」を押しTTABを閉じ、再びBHAVを見て下さい。
先ほどTTABでチェックした、「#4099」を探します。
はいありました。クリックして開きましょう。こうなります。
(クリックすると大きくなります)
いきなりとっつきにくい画面が出てきました。
まず、白地部分のテキトーなところで右クリックしてみてください。出てきたメニューの、「Rewrite」を選択。並び順が変わります。
数字の意味、「True」「False」の説明ですが……簡単に言えば、「Instruction」の要求にYesなら「TrueLine」に書かれている番号のLineへ、Noならば「FalseLine」に書かれている番号のLineへ、という単純に繋がっていく仕組みになっています。チャートのようなものです。
例えば一番最初の設問であるLine0は、「ここはダウンタウン?」とチェックを入れてきています。「いいえ、ダウンタウンじゃありません」ならば、「1」と書いてある通り、次の設問であるLine1に進むことができますが、「はい、ダウンタウンです」と答えた場合は「False」となり、そこでチェック終了です。そういえば、テレビってダウンタウンだとつけることができませんよね。そういうことです。こうやって、チェックが進んでいくわけです。大雑把かつ強引ですみません。
さて、先ほども書きましたが、ここに「#5000」のチェック項目を加えなければなりません。
まず、一番上(Line0)をクリックして選択してください。
★注意★
必ず一番上を選択してください。
青く反転したら右クリック。こんな感じになります。
この中の「Duplicate」を選んでください。Duplicateは複製のことです。文字通り、反転させていた項目が一番下に複製されます。
さて、もう一度「Line0」をクリックして反転させてください。今度は右側のパラメーターを見ていきます。
まず、「Date」の囲いの中にある「Function」の数字を、「5000」にしてみてください。
はい、Line0のInstructionが、「(priv:)」Allowed to use?」に変わりました!
これで、BHAV#5000を#4099に組み込むことができました。
次に、処理の順番を変えていきます。
再びLine0のDateを見て下さい。
「Function」の下に、「True line」「False line」という項目があります。
まず、「True line」の数字を、先ほど複製したLineの番号に変更してください。
このテレビだと、複製したLineは「Line9」になっています。よって、9を入れます。
次に「False line」ですが、これはどのオブでも共通です。「255」を入れて下さい。
変更箇所をまとめると、こんな感じです。
ではまたRewriteしてみましょう。
こんなふうに、「Allowed to use?」の下に、先ほど複製した(元々一番上にあった)命令が並びましたか?
並んでいれば成功です!OKを押してください!
このあたりでセーブしておきましょう。左上のメニューからどうぞ。
5. 繰り返す
お気づきの方もいらっしゃるかと思いますが、上記の書き換えはTTAB内「Turn On」の項目にのみ有効になっている状態です。
同じ作業を、TTAB「Interaction items」に並んだ項目すべてに施せば、アパート用オブジェクトの完成です!
……ところでこのTTABを見てくれ、こいつをどう思う?
すごく……多いです……。
しまった!テレビには15個もあるのか!めんどくせえ!
と非常に後悔したのですが……どうしてアパート専用オブを使うかって、「鍵を持っていないシムが、鍵のかかった部屋の中にあるオブを使いたくてウロウロしてしまう状態を防ぐために、鍵を持っているシム以外はオブを見えなくしてしまうため」なんですよね。
つまり、問題はフリーウィルなわけです。
テレビの「Interaction items」は15個もありますが、例えば#2の「Switch to Action」は、右の「Advertisment」の項目をチェックする限り、フリーウィルの設定がない=シムが自分から使うことのない項目です。あ、すべての項目が「N/A」になっているとフリーウィルで使えなくなるんです。確かにシムが自分からテレビのチャンネルを変えることってないですよね。
……ということは、元々プレイヤーが指示しないとやらないアクションなのだから、「鍵は持っていますか?」のチェックもいらないんじゃないか?と。
少し作業が減りますね!やったね!
というかこの作業で初めて知ったのですが、猫ってテレビ見るんですね……!知らなかった!見てるのなんて見たことない!どうでもいいつぶやきでした。
6. テストしてみる
なんだかんだで書き換えを終えました。それではゲーム内でテストしてみましょう。
おお、あったあった。
再びバーブさん宅へ。ブラッドさんの部屋に置いてみました。
ブラッドさんはテレビをオンすることができますが……
ティファニーさんには選択肢が出てきません!やったー!成功です!
OBJfを見てみる
さて、テレビのハックはこれで終了なのですが、オブの中にはもう少しいじらないといけないものもあります。
それが「OBJf」です。
TTABと同じくBHAVを参照している項目になりますが、オブによってはOBJfがないものもあります。ない場合はアパートハック終了です、お疲れ様でした。
とりあえず、今パッチをあてたテレビのOBJfを見てみましょう。
こんな感じです。
「このFunctionではTreeの参照先はこのBHVでCheckTreeではこのBHAVを参照してるんですよ」とずらずら書いてあるのがわかると思います。
そのオブができるアクションのみがリストアップされているTTABと違って、このリストは全オブ共通です。BHAVのナンバーの記入がある項目のみ適用されているわけです。
では、OBJfを見ていきましょう。
まず初めに、下記項目の中に、「CheckTree」が空欄のものがあるかどうか確認してください。
ありましたか?ちなみにテレビにはありませんでした。
それでは説明にならないので、デフォオブクローン品に上記のアパートパッチを当てたシャワーを例にしてみます。
シャワーのOBJfはこんな感じです。
ありました。「clean(掃除)」と「repair(修理)」のCheckTreeが空欄です。
この後の処理は簡単です。空欄のCheckTreeに、「5000」を書き込むだけ。
これで本当におしまいです!お疲れさまでした!
……テレビのように「repair」が既に書き込まれている項目もコントロールしたい場合は、TTABのときと同じく参照先にBHAV5000を組み込む作業をするといい……とのことなんですが、手をつけなくても正常に作動するんですよね。それどころか元々空欄のオブはそのままでも問題なかった気がします。repairをアパートコントロールっていうのもちょっとよくわからぬ。
参考にしているチュートリアルにも「コントロールしたければ」くらいの記述だったので↑でハックしたテレビではいじらなかったのですが、もし間違っていたら教えてやってください。