More than 1 year has passed since last update.

Wine上でfirstさくらの全機能をSSP上で動かすやり方になります。

必要なもの

以上3つとWineの動く非Windows環境を用意し、Wineをセットアップしてください。
Macな方はWineBottler (http://winebottler.kronenberg.org/) やら EasyWine ( http://matome.naver.jp/odai/2140238022377155001 ) やらというものがあるとのこと。

こちらではMac環境が無いので、Wine+Ubuntuでの動作検証になります。
機材があれば検証するのです(チラッチラッ

解凍

SSP・伺か(materia)共に自己解凍書庫になっているので、Wineを使い起動してください。
Zドライブ以下が元のOSのディレクトリツリーそのまんまのようなので、とりあえずhomeディレクトリにぶちまけてみました。
"ponapalt"の部分はあなたのユーザー名に変えてください。

伺か側を先に解凍し、SSPをその上からすべて上書きします。
上書きするかを質問されたら「すべて上書き」にします。

Image1.png

WineBottlerでは

同じ場所に上書きでファイルを配置するのがコツなので、materia → SSPの順でどこか同じ場所に解凍した上で、WineBottlerでインストール処理をしてください。

解凍した後の手順はこちら ( http://qiita.com/kinzal/items/2103f423c43d9ea5feb9 ) の中ほど「WineBotterでSSPをMacで起動できるようにする」と同じです。

他の環境でも

コツは上記の通りなので、ssp.exeとmateria.exeが一緒のフォルダに入っている状態で使えば、どんな環境でも同じです。

初期設定

いまいちマウス操作がおかしい方へ

そのまま動けばいいのですが、いまいちマウス操作の際の挙動がおかしいようなので、Wine設定 (Configure Wine) を開いて…

w2.png

ウインドウマネージャがなんたらかんたらいうのを2つともOFFにします。

w3.png

起動方法

とりあえず解凍した場所を開きます。
先の通りhomeディレクトリにそのまま置いた場合は、たぶんすぐ見つかると思います。

Image5.png

Ubuntu(Unity)限定
ssp.exe上で右クリックしてプロパティを開き、「開き方」タブで規定のアプリケーションをWineに切り替えておいてください。
この操作は一度きりで良いです。

Image4.png

SSP.exeをダブルクリックするとエミリが起動します。

Image2x.png

右クリックしてさくらを選ぶと、SSP 2.3.48以降なら何事もなく起動すると思います。

Image3x.png

ところで、なぜmateriaが動かないの?

現行Wine上では PdhVbAddCounter と PdhVbGetDoubleCounterValue がstubなため、materiaやfirst.dllがうまく動かないようです。

内部で一応pdh.dllをLoadLibraryして上の2つのAPIをGetProcAddressしてるみたいですけど、返り値をチェックしておらず問答無用でstubなやつを呼ぼうとして落ちます。

ダミーでも良いので上の2つを実装したらたぶん動くんじゃないかと思います。
Wineいじれる人に 丸投げ するのでよろしくです。

じゃあなぜSSPなら動くの?

いろいろ裏で怪しいことをやってます。
そのままだとDLLが足りないので、なぜかmateria.exeのリソース内に入っているDLLを取り出してきたり、上記を含むいろいろ不安定な部分のAPIをインポートテーブルを直接書き換えてフックしてみたり…

プログラマの健康に害を及ぼす恐れがありますので、真似しないようにしましょう。
(組んでて吐きそうになりました)

Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account log in.