アカウント名:
パスワード:
unix系だとこのミスでこーなるな
まあこれはWindowsのインストーラですから。普通にアップデートするとゴミファイルが残りまくるんで、それを削除するように設定されてるらしいんです。それがインストールフォルダの直下→インストールドライブルートの直下になってしまったと。南無。
違います。Windowsのインストーラ、アンインストーラは全く関係ないです。
PSO2では、パッチ適用の為の配信負荷を軽減するため分割アップデートという仕組みがあります。 [pso2.jp]デフォルトインストールではC:\Program Files (x86)\SEGA\PHANTASYSTARONLINE2\pso2_bin\_precedeに予め適用予定のパッチを置く挙動をするアップデータが用意されています。ここに配信当日まで保存しておき、ネットでなくローカルファイル経由でパッチを適用する事で配信負荷を減らす訳ですね。パスで解ると思いますが、パッチャーがUAC経由で管理者権限を要求しますので、例え制限ユーザーであっても起動時には管理者権限を持ちます。# 他にもWindows8のストアアプリやSkypeを異常終了させるバグバグなnProtectが動く都合上ゲーム起動時にも必要なのでしょうが。
そして、9/4に該当のパッチが適用されました。 [pso2.jp]その際前述分割アップデートの説明 [pso2.jp]に
※なお、事前分割アップデートデータは全てのアップデートが完了した後、自動的に削除されます。 削除対象は以下の分割アップデートデータ保存フォルダー内の全ファイルとなります。インストール先のフォルダー>「pso2_bin」>「_precede」お客様が上記フォルダに保存されたファイルも削除されますので、ご注意ください。
とあるように削除されますが、この挙動がおかしかったのでしょう。考えられるものとしては、Cドライブでしかテストしていなかった。相対パスでしか想定してなかった。(そして何らかの弾みで簡単にカレントディレクトリが変更される可能性に気づいてない。)そもそも_precedeフォルダが有るものとして勝手に仮定していた。等まぁ、色々ありそうですが。
まぁ、ヤバい仕様だなーとか思ってましたがやっぱりやったかって気はします。# 実装は楽だろうけどさー
>自分で置いたファイルは分かってるんだから、それ指定して削除すればいいだけなのに。
分かってないし、保証もないだろ。お前みたいなのがミスするんだよw
>自分で置いたファイルは分かってるんだから、それ指定して削除すればいいだけなのに。分かってないし、保証もないだろ。お前みたいなのがミスするんだよw
いいえ。分割アップデートで64bit版のデフォルトインストールパスの場合ですが、"C:\Program Files (x86)\SEGA\PHANTASYSTARONLINE2\pso2_bin\_precede\patchlist0.txt"といったファイルが保存されます。その中にはdata/win32/0076c20f5d5c5a80a37fca1f56228580.pat 1240 4C82DBA81B71688D98857C6BA4099052といった、ファイルパス、ファイルサイズ(バイト)、MD5ハッシュ値のタブ区切りテキストファイルが有ります。故にパッチャーや親コメント [srad.jp]の自分こと、PSO2運営側やパッチャーは意図して置いたファイルで有るかも高い確率で判別可能なはずです。# 実際には.patって拡張子はついてないとか、MD5のコリジョンとかいった話もあるでしょうけど。まぁ、余計なゴミが残る可能性もあるでしょうが、知らぬ物を消すより残す方がベターな解決策かと。
お客のシステムに存在するファイルは自分で置いた物だとしても消すというのは怖い事です。正直、ディスク空きが許すなら追記だけで済ませたい物です。# 現実的には無理だけど。
AppData配下にデータを保存せず、Program Files配下に平然とぶち撒ける。nProGGのために、アップデートの有無に関らずランチャー・ゲームクライアント含めて全てUAC昇格を要求する。
Windowsの作法知らずのゲーム屋プログラマ・アーキテクトにも問題は山積みですね。
ネトゲに関してはサイズがでかい(最近は10GB越えも当たり前になってきた)なのもあってAppData(CSIDL_APPDATA)ってのは止めてほしいかも。せめて、ローミング対象外のCSIDL_LOCAL_APPDATAかCSIDL_COMMON_APPDATAにしてほしいな~# マルチユーザーの事考えると前者2つはどっちも止めてほしいが。ただ、前述の通り本当にサイズが大きい(最近のだとArcheAge [archeage.jp]が21GB越え、パッチャーもP2P仕様 [pmang.jp])ので、基本的にシステムドライブ固定になってしまう*APPDATAってのはやっぱりダメってなってしまうのでしょうけど。SSDだとパーツ単位では512GBも安くなったとはいえやはり高いですし、標準128GB/256GB前後な物も多いですから。という訳である程度Program Files以下にぶちまけるのは仕方ないかなという気はします。
# が、やり方という物が有るだろうとか無駄に権限要求しすぎだろうという点はかなり思う。
AppDataもDocuments and Settings全部も別ドライブに移動できるぞ。
基本的にシステムドライブ固定
と書いたのは移動出来るが容易ではないという事です。OSインストール時に設定するにしても [microsoft.com]、インストール後に無理矢理移動して新規/既存アプリに問題ないか、ジャンクション等で別ドライブに逃がすにしてもバグを踏まないか等考え出すと簡単にホイホイ変更出来る物ではないです。自己責任でやらせるのは良いでしょうけど、そんなスキルをエンドユーザーに求めるのはどうなのといった感じ。
例えば保存先の空き容量を確認しようとしてGetDiskFreeSpaceExに保存先の"C:\foo\bar\"でなく、"C:\"とか指定しちゃうような奴はその時点で潜在バグ持ちです。後は異常処理がどの程度作りこまれてるかのギャンブルに。# まぁ、空き取得から実際の書き込むまでの間に空きが無くなるケースもあるので作りこんであるはずなのがフツーなハズですが。
良く解らないナニカが起きる可能性を納得出来て自己責任で手を出すべきでエンドユーザーに求めるのは誤りかと。
↑キーとかC-rとかでコマンド履歴を呼び出して実行するのに慣れていると起きやすい。
#頻繁に、とは言わないものの、一度はこういった絶望を経験すべき。皆が皆賢者でないのだから。#そして、だからこそLinuxをデスクトップ用途で使えるよう環境を整備すべき。触れる機会が多ければ多いほど愚者の経験は積まれる。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
人生の大半の問題はスルー力で解決する -- スルー力研究専門家
rm -r tmp / (スコア:0)
unix系だとこのミスでこーなるな
Re: (スコア:0)
まあこれはWindowsのインストーラですから。
普通にアップデートするとゴミファイルが残りまくるんで、それを削除するように設定されてるらしいんです。
それがインストールフォルダの直下→インストールドライブルートの直下になってしまったと。
南無。
Re:rm -r tmp / (スコア:3, 参考になる)
違います。
Windowsのインストーラ、アンインストーラは全く関係ないです。
PSO2では、パッチ適用の為の配信負荷を軽減するため分割アップデートという仕組みがあります。 [pso2.jp]
デフォルトインストールではC:\Program Files (x86)\SEGA\PHANTASYSTARONLINE2\pso2_bin\_precede
に予め適用予定のパッチを置く挙動をするアップデータが用意されています。
ここに配信当日まで保存しておき、ネットでなくローカルファイル経由でパッチを適用する事で配信負荷を減らす訳ですね。
パスで解ると思いますが、パッチャーがUAC経由で管理者権限を要求しますので、例え制限ユーザーであっても起動時には管理者権限を持ちます。
# 他にもWindows8のストアアプリやSkypeを異常終了させるバグバグなnProtectが動く都合上ゲーム起動時にも必要なのでしょうが。
そして、9/4に該当のパッチが適用されました。 [pso2.jp]
その際前述分割アップデートの説明 [pso2.jp]に
とあるように削除されますが、この挙動がおかしかったのでしょう。
考えられるものとしては、Cドライブでしかテストしていなかった。
相対パスでしか想定してなかった。(そして何らかの弾みで簡単にカレントディレクトリが変更される可能性に気づいてない。)
そもそも_precedeフォルダが有るものとして勝手に仮定していた。等まぁ、色々ありそうですが。
まぁ、ヤバい仕様だなーとか思ってましたがやっぱりやったかって気はします。
# 実装は楽だろうけどさー
Re: (スコア:0)
この仕様決めた時点でおかしいと思わなかったんかね。
自分で置いたファイルは分かってるんだから、それ指定して削除すればいいだけなのに。
Re: (スコア:0)
>自分で置いたファイルは分かってるんだから、それ指定して削除すればいいだけなのに。
分かってないし、保証もないだろ。お前みたいなのがミスするんだよw
Re:rm -r tmp / (スコア:2)
いいえ。
分割アップデートで64bit版のデフォルトインストールパスの場合ですが、
"C:\Program Files (x86)\SEGA\PHANTASYSTARONLINE2\pso2_bin\_precede\patchlist0.txt"
といったファイルが保存されます。
その中には
data/win32/0076c20f5d5c5a80a37fca1f56228580.pat 1240 4C82DBA81B71688D98857C6BA4099052
といった、ファイルパス、ファイルサイズ(バイト)、MD5ハッシュ値のタブ区切りテキストファイルが有ります。
故にパッチャーや親コメント [srad.jp]の自分こと、PSO2運営側やパッチャーは意図して置いたファイルで有るかも高い確率で判別可能なはずです。
# 実際には.patって拡張子はついてないとか、MD5のコリジョンとかいった話もあるでしょうけど。
まぁ、余計なゴミが残る可能性もあるでしょうが、知らぬ物を消すより残す方がベターな解決策かと。
お客のシステムに存在するファイルは自分で置いた物だとしても消すというのは怖い事です。
正直、ディスク空きが許すなら追記だけで済ませたい物です。
# 現実的には無理だけど。
Re: (スコア:0)
AppData配下にデータを保存せず、Program Files配下に平然とぶち撒ける。
nProGGのために、アップデートの有無に関らずランチャー・ゲームクライアント含めて全てUAC昇格を要求する。
Windowsの作法知らずのゲーム屋プログラマ・アーキテクトにも問題は山積みですね。
Re:rm -r tmp / (スコア:1)
ネトゲに関してはサイズがでかい(最近は10GB越えも当たり前になってきた)なのもあってAppData(CSIDL_APPDATA)ってのは止めてほしいかも。
せめて、ローミング対象外のCSIDL_LOCAL_APPDATAかCSIDL_COMMON_APPDATAにしてほしいな~
# マルチユーザーの事考えると前者2つはどっちも止めてほしいが。
ただ、前述の通り本当にサイズが大きい(最近のだとArcheAge [archeage.jp]が21GB越え、パッチャーもP2P仕様 [pmang.jp])ので、基本的にシステムドライブ固定になってしまう*APPDATAってのはやっぱりダメってなってしまうのでしょうけど。
SSDだとパーツ単位では512GBも安くなったとはいえやはり高いですし、標準128GB/256GB前後な物も多いですから。
という訳である程度Program Files以下にぶちまけるのは仕方ないかなという気はします。
# が、やり方という物が有るだろうとか無駄に権限要求しすぎだろうという点はかなり思う。
Re: (スコア:0)
AppDataもDocuments and Settings全部も別ドライブに移動できるぞ。
Re:rm -r tmp / (スコア:1)
と書いたのは移動出来るが容易ではないという事です。
OSインストール時に設定するにしても [microsoft.com]、インストール後に無理矢理移動して新規/既存アプリに問題ないか、ジャンクション等で別ドライブに逃がすにしてもバグを踏まないか等考え出すと簡単にホイホイ変更出来る物ではないです。
自己責任でやらせるのは良いでしょうけど、そんなスキルをエンドユーザーに求めるのはどうなのといった感じ。
例えば保存先の空き容量を確認しようとしてGetDiskFreeSpaceExに保存先の"C:\foo\bar\"でなく、"C:\"とか指定しちゃうような奴はその時点で潜在バグ持ちです。
後は異常処理がどの程度作りこまれてるかのギャンブルに。
# まぁ、空き取得から実際の書き込むまでの間に空きが無くなるケースもあるので作りこんであるはずなのがフツーなハズですが。
良く解らないナニカが起きる可能性を納得出来て自己責任で手を出すべきでエンドユーザーに求めるのは誤りかと。
Re: (スコア:0)
↑キーとかC-rとかでコマンド履歴を呼び出して実行するのに慣れていると起きやすい。
#頻繁に、とは言わないものの、一度はこういった絶望を経験すべき。皆が皆賢者でないのだから。
#そして、だからこそLinuxをデスクトップ用途で使えるよう環境を整備すべき。触れる機会が多ければ多いほど愚者の経験は積まれる。