2017/07/25

PSO2の古いファイルを整理してみる

PSO2はHDDバースト事案以降古いゲームデータの削除を行わないようになりました。
インストールしてから数年もそのままだとゲームデータが肥大化している場合があります。
今回はデータを再ダウンロードしてキレイに構築し直します。

1, C:\Program Files (x86)\SEGA\PHANTASYSTARONLINE2\pso2_bin\data
の[ win32 ]フォルダを適当にリネーム
→ 例: win32_ とか、 win32.old とか

2, C:\Users\Username\Documents\SEGA\PHANTASYSTARONLINE2
(ドキュメントの場所を変更してない場合のアドレスです)
の[ version.ver ]ファイルを適当にリネーム
→ 例: _version.ver とか、 version.ver.old とか

3, PSO2ランチャーを起動するとその時点でPSO2が必要とするファイルだけがダウンロードされます。
(2017.07.25現在でwin32フォルダは57,592個、その他(pso2.exe等)で12個、合計57,604個)

※どうしてもDLに時間がかかり中断したい場合は、後から作成されたファイル類をリーネームして保持しておき、上記1・2で改名したフォルダとファイルを元の名前に戻せば即プレイ可能です。


画像左側が実行前、右が実行後です。
・ファイル数は57,612→57,592で20個の減
・データサイズは47.2GB→46.2GBで約1GBの減
となりました。
私は半年に一度位の頻度で実行してるのでファイル少ないですが、中には50GB超えてる方もいるようです。
もし気になるという方はトライしてみてはいかがでしょう。

2016/01/19

GPUの調子がおかしいと感じたら・・・GPU-ZのPerfCap Reason

GPU-ZでGPUの状態を確認しましょう。
Techpowerup GPU-Zは有名なソフトなので導入済みの方も多いと思いますが、まずはダウンロードから。

https://www.techpowerup.com/downloads/2571/techpowerup-gpu-z-v0-8-6/mirrors


サイトを開くと各国のミラーサーバが表示されるので、Saver Loadのより少ない米国鯖をクリックします。
インストールしたら早速GPU-Zを開きます。




[ Sensors ]タブを開くとこのようにGPUの数値が表示されます。

さて、今回の本題に移ります。
[ PerfCap Reason ]という項目があります。これは、

Reason why GPU Performance is Capped.
 GPUパフォーマンスが制限されている理由

を意味しています。各項目は概ね次のとおりです。

Pwr : Limited by total power limit
 総電力制限による制限
 GPUのvBIOSで規定されている電力量による制限です。
 [ Power Consumption ]という値が現在の電力規定値に対する消費量です。
 この制限を逆手に取って、msi AfterburnerやPalit ThunderMaster等のGPU制御ソフトで故意的にPower Targetを下げることでGPUの消費電力や発熱を抑えることが出来ます。 

Thrm : Limited by Temperature limit
 温度上限による制限
 これもGPU vBIOS規定の温度制限値によるものです。
 NVIDIA製のGPUでは[ GPU Temperature ]80℃が閾値として一般的なようです。
 発熱に弱いPCではGPU制御ソフトでTemp Targetを70℃等に落とすと安定性が改善したりします。
 (まず排熱を改善するのが本来ではありますが。)

LRel : Limited by reliability voltage
 電圧信頼性による制限
 供給される12Vの電圧変動等の信頼性によるものです。
 電源能力・容量が不十分だったり、出力品質が悪化していると規制がかかるようです。
 恥ずかしながら、電源ケーブルが片方しっかり刺さってなかったら表示されたことが・・・
 ケーブル類の点検を行いましょう。
 それでもダメなら、新しく状態の良い電源への交換が必要かもしれません。

VOp : Limited by operating voltage
 動作電圧による制限
 12Vの電圧低下等による制限です。
 PC電源はPC全体で利用する電気量が多くなるほど出力電圧が下がる傾向があります。
 容量的に余裕があり、電圧変動の少ない高品質な電源の利用をオススメします。

Util : Limited by GPU utilization
 GPU使用率による制限
 GPUをあまり利用していない場合にGPUを制限して節電している場合などがこれです。

SLI : Limited by SLI mode
 SLIモードによる制限
 ASIC値に連動するBoost Clock目安値等を参考に、リンクしているGPU間で動作クロック等が自動調整されます。

PSO2をプレイしていてGPUが不安定な時は、ウィンドウモードとGPU-Zを併用してGPUを観察すると何か分かるかもしれませんよ。

私がケーブル差しの甘さに気づいたように・・・

2016/01/18

CPU のコアパーキングを切り替えるの巻

Windowsには電源管理設定とは別に、CPU Parkingの設定がレジストリ上に存在します。
CPU Parking は比較的負荷の少ないCPUコアを"停め置いて"電力効率を上げる仕組みです。
コレを止めるとPSO2がシャキシャキになったりするというお話。

処理優先で電源管理設定をパフォーマンス優先にしているのに、GPU利用率が99%を下回ったりベンチスコアやフレームレートが低い?と感じる方は試してみてください。


http://www.coderbag.com/programming-c/disable-cpu-core-parking-utility
{ coder bag } : Disable CPU Core Parking Utility
このサイトではレジストリ値によるParking設定切り替えを簡単に行ってくれるユーティリティを公開しています。


ずっと下にスクロールしてダウンロードのリンクをクリックします。
zipファイルのダウンロードが完了したら解凍し、[ UnparkCPU.exe ]を実行します。


お次は[ Check Status ]をクリックしてPCの設定を確認します。


確認中・・・


確認した結果が表示されます。
画像の状態では[ Parked ]ですのでParkingが有効になっています。
[ Unpark All ]または[ Park All ]で簡単に切り替えることができます。


ボタンを押すとレジストリの変更が開始されます・・・


変更が完了しました。
[ Unparked ]になり、CPUの処理性能優先にWindowsの仕様が変更されました。
あとはPCのを再起動すれば完了です。
レジストリ値の変更であるため、常駐するソフト等は不要です。

2015/08/26

QoSの優先制御でPSO2の通信を最優先に(ラグ対策)


久々の更新です。
ネットワークQoSは、帯域制限やパケットの優先制御を行うサービスです。
今回はこれを活用してPSO2のLANにおける優先度を高めます。
Windowsのローカルグループポリシーエディターから設定します。

※ローカルグループポリシーエディターはWindows7等ではPro以上のエディションで利用可能なサービスですが、Win7 Home Premiumでもインストールすることで利用可能になります。
インストール方法は後述します。
早速、グループポリシーエディタを起動します。
Windows+Rで表示されたウィンドウに「gpedit.msc」と入力しエディタを起動します。





エディタが起動したら、ツリーからポリシーベースのQoSを右クリックして、
「新規ポリシーの作成(C)」を選択します。




ポリシー名は「PSO2」などの分かりやすい名前にします。
DSCP値を指定するにチェックを入れ、値を「46」にします。
DSCP参考サイト:http://www.infraexpert.com/study/qos7.htm
出力方向のスロットル率を指定するにチェックを入れ、適当な値を入れます。
この項目は帯域制限などに利用しますが、私はspeedtest.netでの概ねの下り計測値を代入しています。
事実上の無制限適用です。一通り入力したら次に進みます。



このQoSのポリシー適用対象;
「次の実行可能ファイル名を持つアプリケーションのみ」をチェックしpso2.exeを指定して次に進みます。



IPアドレス指定の項目です。
発信元は全てのIPアドレスのまま
宛先アドレスを「210.189.208.0/24」を指定します。
これはどちらもすべてのIPにチェックでも構いません。
PSO2のゲームサーバ全シップ[210.189.208.XXX]なので、私はPCからの送信時これらを特別に優先する設定としました。




プロトコルとポート番号の項目です。
特に指定の必要は無いと考えています。
通信はTCP、上下ともに任意のポートのまま完了します。





これで一通りの設定が完了です。
エディタにPSO2のQoS設定が追加されました。
この段階で通信優先度はすでに切り替わりますが、ポリシーの適用まで行います。




再びWindows+Rを押し、今度は「gpupdate」を起動します。
作成したグループポリシーが更新適用されます。
コマンドプロンプト画面に完了表示されたら終わりです。





Windows7 Home Premiumグループポリシーエディタを有効にする手順
参考にしたサイト:ねっとわーくえんじにあとか

1、必要なファイルを準備する。
[ C:\Windows\SysWOW64 ]を開き、そのフォルダから

 [ GroupPolicy ]フォルダ
 [ GroupPolicyUsers ]フォルダ
 [ gpedit.msc ]Microsoft Common Console Document ファイル

 の三つをコピーして、[ C:\Windows\System32 ]にペーストします。

 ※ もし、gpedit.mscがSysWOW64フォルダに無いときは[ C:\Windows\winsxs ]でファイル検索をすると見つかるかもしれません。

2、ADD GPEDIT.msc をインストール
 http://drudger.deviantart.com/art/Add-GPEDIT-msc-215792914
 上記webページ右側のDownload ZIP download,855KB ボタンをクリックしてzipファイルをダウンロード。
 zipファイル内のsetup.exeを実行します。

3、x64.bat バッチファイルの下準備と適用
 インストールが完了すると、[ C:\Windows\Temp\gpedit ]に、
 [ x64.bat ]バッチファイルが作成されているので右クリックして編集を選択します。

 テキストエディタでx64.batが開かたらctrl+Hを押し「置換エディタ」を開きます。
 置換エディタに次のとおりコピペして「すべて置換」をクリックします。
 
 置換前:
    %username%:f
 置換後:
    ”%username%”:f

置換エディタを閉じてx64.batを上書き保存してテキストエディタも終了します。
中身を書き換えて新しくなったx64.batをクリックして実行します。
x64.batが実行されコマンドプロンプトでの作業がなされれば完了です。

Windows+Rから「gpedit.mec」を実行するとグループポリシーエディタが開けるようになります。
※一部の表記が英語になっていますがQoSのウィザードは日本語です。

2015/03/12

PSO2でログイン後のロビーでカクカクしちゃう時などに試してほしいこと。

こんにちわ。ご無沙汰しております。
なんか最近PSO2をプレイしていて、

 ・裏画面に切り替えが何となく遅い
 ・IEを立ち上げてると不具合が出ることがある
 ・時々PSO2が突然終了してしまう
 ・GPUドライバーを再インストールしたらDirectXエラーが表示された

こういう症状に遭遇したことはないでしょうか?
こういう時には次の処理を行うと少し幸せになれるかもしれません。



http://www.microsoft.com/ja-jp/download/details.aspx?id=15805
DirectX End-User Runtimes (November 2008)
DirectXのファイルをインストールし直して綺麗な状態に戻します。
※DirectX webインストーラではインストールが行われません。

http://www.microsoft.com/en-us/download/details.aspx?id=8109
DirectX End-User Runtimes (June 2010)
戻したDirectXに最新の更新を適用します。

最新のGPUドライバを入れ直します。
Nvidiaの場合、カスタムモードでクリーンインストールにチェックを入れて進めます。

GPUとWindowsの電源管理設定をパフォーマンス優先に再設定します。

PSO2ランチャーを起動してファイルチェックを行います。

全て終わったら、PSO2を起動します。



私はフルスクPSO2からwindows画面への切り替えやロビーがちょっと快適になりました。

2014/11/26

PSO2とCPUの関係性を見つめなおす。

ご無沙汰しております。
最近のPSO2はややもっさりしています(大雑把)

そこで、次のソフトを導入しています。
なお、導入については、いわゆる自己責任ってやつです。

Process Lasso
http://www.gigafree.net/security/process/processlasso.html
プログラム起動時にCPUコアとの関係の設定(CPU割り当て、CPU affinity)を登録したとおりに変更してくれます。
I/Oやメモリの優先度変更もできます。
特定のプログラムの負荷が急激に高まった時に自動で優先度を下げる、プロバランス制御という機能もあります。

Application Priority Changer
http://misukou.blog84.fc2.com/blog-entry-2085.html
プログラム起動時にプロセス優先度を変更してくれるソフトです。
64bitプログラムに対応していますが、応答性の点で後述のAutoGearに劣ります。
GameMon64.desなどの64bit版nProtect関連プログラムの優先度変更に使っています。

AutoGear
http://answertaker.com/system/win-speedup/autogear.html
こちらもプロセス優先度を変更してくれるソフト
起動してから僅かな時間しか変更適用できないpso2.exeも確実に変更を完了できます。
pso2の実行ファイルやGameMon.desなどの32bitプログラムの変更に利用しています。


C:\Program Files (x86)へそれぞれのフォルダを配置して、デスクトップとスタートアップにショートカットを置く簡単なお仕事です。
どう影響しているかは検証不足ですが、PSO2の挙動に変化が見られます。
現在、下のような感じに。


PSO2、nProの他にネットワーク通信等を受け持っているsvchost郡、NVIDIA Driver Helper Service(nvvsvc.exe)等のNVIDIA関連もプロセス優先度変更しています。
ロビー突入時等はCPU0とCPU1の利用率が高く、pso2関係のプログラムも主に0と1で動いていると思われます。
pso2.exeやGameMon64.desに対してはCPU振り分けが出来ないので、他の主要プログラムをCPU0とCPU1から外すことによって割り込みを減らし、結果的にこれらが優先的に0と1を利用できるようにしています。



pso2.exeやGameMon64.desをプロバランス制御の例外に指定することも出来ます。
私は現在のところpso2exeのみ例外指定としています。
そのため、nProが時折制御されているようで、ログに制御の履歴が残ります。


改めて述べますが、どう影響しているかは検証不足です。
そして、私の環境下においては、何も設定しない時に比べて動作が軽快になりました。
もっと適切な設定もあろうかと思います。興味のある方は自己責任であれこれ入れ替えてみてください。。。