6分で読めます
| iOS
アングリーバードは、150のメインレベルを持つ、悪魔のようにシンプルなゲームです。各レベルでの目標は共通で、様々な漫画のブタを倒すことです。スリングショットで飛ばした鳥でブタを倒すことで目標を達成します。ブタを倒すだけでなく、最高スコアを獲得するには、ブタを囲んで守っている様々なブロックも破壊する必要があります。しかも、できるだけ多くの鳥を使わないようにする必要があります。恥ずかしいほど長い時間プレイした後、私は全レベルで見事なハイスコアを連発しました。それでも、過去のスコアを破ろうとするのは今でも楽しいです。
問題
すべて順調に進んでいたのですが、ある日iPhoneを持って外の世界へ出て、暇を持て余していました。何をするか?もちろん、アングリーバードをプレイすることにしました。ところが、iPhoneでプレイするのはこれが初めてでした。iPad(今は自宅のデスクでくつろいでいます)で苦労して獲得したスコアやレベルクリアが、iPhoneに引き継がれないことがすぐに分かりました。これは驚きではありませんでした。むしろ、これまでのiPhoneゲームの経験からすると予想通りでした。しかし、それでもがっかりしました。iPadからの引き継ぎがなかったため、最低レベル以外のゲームをプレイできなくなってしまったのです。
当初、この障害を回避する簡単な方法があるのではないかと期待していました。アプリが複数のiOSデバイス間でデータを同期できるような方法があれば、と。理論上は可能でした。他のアプリも同期アカウントにログインすれば同じことができるからです。実際、Angry BirdsはCrystalアカウントサービス経由でスコアや実績を限定的に共有できる機能をサポートしていました。しかし残念ながら、iOSデバイス間でレベルクリア情報を共有することはできませんでした。
解決策
何かできることはないでしょうか?はい!iPhoneとiPadは両方ともジェイルブレイクされていたので、両方のドライブにルートアクセスできました。つまり、iPadでAngry Birdsのゲームデータを含むファイルを見つけて、iPhoneのAngry Birdsアプリに転送できるはずでした。アプリ自体は両方のデバイスで同じなので、問題なく動作するだろうと思いました。試してみたところ、うまくいきました!
iOS デバイスで Angry Birds を使ってこれを行うには、次の手順を実行します。
1. iOSデバイスがジェイルブレイク済みであれば、これらのデバイスのドライブへのルートアクセスを提供するMac OS Xユーティリティを起動します。私のおすすめはDiskAidです(以前の記事で紹介しました)。
2. 転送したいゲームデータが含まれているデバイス (私の場合は iPad) を Mac に接続し、DiskAid に表示されるまで待ちます。
3. 左側の列にある「フォルダー」セクションから「ルート」項目をクリックします。「何をしているのか理解していますか?」と尋ねられたら、「OK」をクリックします。自分が何をしているのか完全に理解していない場合でも、同意する必要があります。
4. var > mobile > アプリケーションに移動します。
5. 次は、おそらく面倒なステップです。デバイス上でゲームアプリを探すのです。どれくらい面倒かは、インストールしているアプリの数によって異なります。DiskAidには検索機能がないため、面倒な作業になります。
デバイス上の各アプリ(プリインストールされているものを除く)は、このアプリケーションフォルダ内に対応するフォルダを持っています。各フォルダの名前は、長い16進コードで構成されています。この16進コードだけでは、アプリの種類を特定できません。私が知らない裏技がない限り、AngryBirds.appを含むフォルダが見つかるまで、各フォルダをクリックする必要があります。
ヒント: 目的のフォルダーを見つけたら、今後の参照用にその 16 進コード名を記録します (ただし、アプリを新しいバージョンに更新すると名前が変更される可能性があることに注意してください)。
6. DiskAidで表示されるAngry Birdsフォルダ内にある「書類」フォルダをMacのデスクトップにドラッグします。これで「書類」フォルダがMacにコピーされます。
7. iOS デバイスを Mac から取り外します。
8. ゲームデータを受け取りたいiOSデバイス(私の場合はiPhone)をMacに接続します。DiskAidを再度使用し、手順5と同じ手順でAngry Birdsアプリを見つけます(以前のデバイスとは16進コード名が異なります)。すると、Documentsフォルダが再び表示されます。
9. Macのデスクトップに戻り、iPadからコピーした「書類」フォルダを開きます。そのフォルダにあるすべての項目(「crystal_themes」フォルダを除く)を、DiskAidに現在表示されているデバイスの「書類」フォルダにドラッグします。既に存在する同名のファイルを置き換えますか?と尋ねられたら、「OK」をクリックします。
注: Documents フォルダ全体をコピーすることもできます。ただし、crystal_themes フォルダはスコアの管理には関係ないため、省略できます。
10. デバイスの接続を解除します。これで作業は完了です。2台目のデバイス(私の場合はiPhone)でAngry Birdsを起動します。1台目のデバイスから取得したスコアはすべて正常に転送されているはずです。
ヒント:Macの「書類」フォルダをバックアップとして保存しておきましょう。これは、アプリのアンインストールやiOSデバイスの復元などにより、iOSデバイス上のゲームデータが失われた場合に役立ちます。

アングリーバードを超えて
この解決策はAngry Birds以外のゲームでも使えるでしょうか?はい。ハイスコアを保存するゲームならほぼすべて使えるはずです。ただし、コピーする必要がある具体的な内容はゲームによって多少異なる場合があります。例えば、私のお気に入りのゲームの一つであるPeggleでも同じ手順を試してみました。すべて全く同じように動作しましたが、小さな違いが一つありました。それは、Documentsフォルダ内のuserdataフォルダをコピーするだけで済んだことです。
不具合ですか?
iPadからゲームデータを転送した後、iPhoneで数週間アングリーバードをプレイしました。全く問題なく動作し、わずかな問題もありませんでした。問題が発生したのは、ゲームを新しいバージョン(1.3.3)にアップデートした後だけでした。
• アップデート直後、iPhoneでゲームが起動しなくなりました。結局、MacとiPhoneの両方からゲームを完全に削除し、新しいコピーをダウンロードして再インストールする必要がありました。その後は問題なく動作しました。いずれにせよ、これがデータ転送の必然的な結果であるとは考えにくいです。別のiOSデバイスで同様の状況になった際、全く問題はありませんでした。
• iPhone版のAngry Birdsが「Golden Eggs」画面でフリーズしてしまいました。アプリを終了して再起動したら、その後は問題は起こりませんでした。
全体的に、これらの不具合は、デバイス間でスコアを転送できるという利点を考えると、小さな代償であるように思えました。
脱獄問題
この時点で、多くの方がまだステップ1、つまりiPhoneとiPadの脱獄が必要な部分について躊躇されているのではないでしょうか。これは必須のステップです。脱獄を行わないと、DiskAidは関連するドキュメントフォルダへの必要なアクセスを提供できません。
デバイスの脱獄は安全でしょうか?そのリスクを負う価値はあるでしょうか?iOS 4.0とiTunes 9.2がリリースされる前までは、私は明確に「はい」と答えていました。Spiritのようなツールを使えば、脱獄は信じられないほど速く、簡単、そして安全です。さらに、一度脱獄してしまえば、ここで紹介した解決策を実行するために、難解な脱獄ソフトウェアをダウンロードするなど、他に何もする必要はありません。DiskAidを起動するだけで、準備完了です。
残念ながら、iTunes 9.2、iOS 4、そしてiPhone 4のリリースにより、ルールが変更されました。AppleがiOS関連の新しいソフトウェアやハードウェアを発表するたびに常に行われてきたように、Appleは既存の脱獄方法を使えなくする変更を加えました。つまり、現時点ではiOS 4搭載デバイスを脱獄する簡単かつ確実な方法は存在しないということです。私の知る限り、iPhone 4を脱獄する方法はまだありません。iOS 3.x搭載デバイスであっても、MacでiTunes 9.2を使用している場合は脱獄に問題が発生する可能性があります。
状況はすぐに変わる可能性が高いようです(開発チームのブログで最新の開発状況を確認するのが良いでしょう)。それまでは、残念ながら、最新のiOSおよびiTunesソフトウェアをご利用の方は、ここで紹介するテクニックの使用は控えさせていただく必要があります。
だからこそ、Appleには脱獄に対してもう少し穏便な対応をしてほしいと思う。一部のライターは、Appleは脱獄者とその支持者たちが自分たちの小さなサンドボックスでほとんど妨害されることなく自由に遊べるように、善意の無視の姿勢を保っていると指摘している。私はただそうであってほしいと願うだけだ。Appleはこれまでも、そしてこれからも、あらゆる脱獄を阻止しようと積極的に行動し続ける。脱獄が依然として存在する唯一の理由は、今のところ脱獄者がAppleの最大限の努力をすり抜ける方法を見つけ続けているからだ。私の見解では、Appleはこのいたちごっこから手を引くべきだ。しかし、正直なところ、そうなるとは思えない。
ここで説明した方法がすべての人に当てはまるわけではないことは承知しています。少しでも問題が発生するリスクを負いたくないという方もいるでしょう。どんな状況でもiOSデバイスのルートレベルに踏み込むことに抵抗がある方もいるでしょう。また、ジェイルブレイクに原則的に反対する方もいるかもしれません。しかし、これらのいずれにも当てはまらない人にとって、ジェイルブレイクはiOSデバイスでできることを大幅に拡張する機会となります。ゲームデータの転送はその一例に過ぎません。