ぼくは航空管制官2

不具合情報

不具合状況

マシンを買い換えたらデータを読み込んでプレイがスタートするところでハングアップしたように固まり、数秒たってから一瞬音楽が早送りで流れ、また固まるという不具合が全シリーズ共通で出るようになってしまい、最新パッチを当てても直りませんでした。(ただし、設定画面でポリゴン描画にDirect3D(HAL)を使わない設定にすると動きました。)

サポートに問い合わせる前に、もしかしてと思ってあることを試したら問題なく動くようになりました。同じ現象で困っている人がいそうですので以下に対処法と私の推測する原因を書いておきます。

対処法

プログラムの処理優先度を標準より下げることで解決しました。やり方は、一時的で良ければゲームを起動して、オープニングが流れている状態でタスクマネージャを起動し、プロセスタブのatc2.exeというプロセスを右クリックして「優先度の設定」で「標準以下」にします。(WiindowsXPの場合です)

しかし、これではゲームを起動するたびに作業が必要になります。上記方法で解決したのなら、起動に使っているショートカットを書き換えることで毎回優先度を変えた状態で起動できます。ただ、これをやるには多少知識が必要です。細かく説明するのも面倒なので簡単に書いておきます。これでわからない場合はgoogle等で「優先度 指定 起動」などというキーワードで検索すると細かい説明や、優先度を変えて起動してくれるユーティリティソフトが見つかりますのでそちらを参考にしてください。

起動に使っているショートカットのプロパティをみると、リンク先が

"C:\Program Files\Game\atc2\atc2.exe"

のようになっていると思います(これは私の環境の場合で、普通は別のフォルダ名になっています)。これを

C:\WINDOWS\system32\cmd.exe /c start /belownormal C:\Progra~1\Game\atc2\atc2.exe

のように書き換えます。最後のパラメータは元のファイル名のフルパスをショートファイル名に書き換えて指定します。

原因

私はマザーボード内蔵のサウンドを使っているのですが、このサウンドは音を鳴らすのにCPUパワーを必要とします。しかし、このぼくは航空管制官2というゲームは画面描画にすべてのCPUパワーを使ってしまいます。(CPUのスピードは関係ありません。CPUが早ければフレームレートが早くなるだけです。)そのためサウンドを鳴らすためのCPUパワーがなくなり、サウンドがならないまま止まってしまうようです。

これが原因なら、AC97方式の内蔵サウンドを使っている人で、ハイパースレッディングやデュアルCPUではない場合はすべてこの現象が出てしまうのではないかと思いますが、それほど困っている人はいないようなのでサウンドドライバの作りにもよるのでしょうか。サウンドカードに「サウンドブラスター16互換ボードを使え」とマニュアルに書いてあるのはこのためなんでしょうかね。

この対策を施した場合の副作用

この対策を施すとプログラムの優先度が低くなるため、ほかのプログラムを動かしているとゲームに支障が出ることがあります。私の環境でもゲームが一瞬止まることがあります。