2008/12/22(月)大丈夫か

EA のプログラマに不安がいっぱいです。
以下、愚痴を不愉快に思う人は読まないでね。


KR
KR で見た地図なんですが、拡大、縮小すると表示がバグります。
DeviceContext や DIB の扱い方として、ゲームプログラマならさくっと書けないとおかしくね?っていうコードなはず。

生産ウィンドウの「もう既にパスタになってしょうがないので状態遷移ぶち切っちゃいます」的な動きが気になる。あと、クリックされた座標の扱いもおかしい。

非矩形オブジェクトのイベント受信がおかしい。表示に使うのとイベント受信に使うマスクデータに同じもの使ってないの?

2D クライアントで家建築の時に建設予定のスケルトンが表示される位置がずれるのって、フィールド画面じゃなくゲーム全体のウィンドウの座標を使っちゃってるから、というのが動きから推測できるんだけど修正されてない。原因がわからないということはありえないので、修正できない程パスタなのか。

同じものが原因と考えられるものとして、KR でクラシックコンテナ表示した時に、アイテムがドロップした場所に落ちないっていうのもある。座標変換が2回かかってるとか、ユーザーインタフェースサイズの変更を考慮せずにマジックナンバーで突っ込んでるとかしてないか?

上記の点はまぁ、ブリ王に惹かれて UO を作っていた人がいなくなったり、OSI 解散したりで人材不足なんだろう。(いつからの話だ、っていうか頭数の問題じゃねぇし)

問題は今日の Five on Friday ですよ。
「4. 2Dクライアントでプレイしているのですが、設定ファイルはどこにいってしまったのでしょうか?
<略>
セーブデータが、Microsoft準拠の場所に保存されるようになったのです。」

ダウトです。

MSDN の 「Windows ロゴプログラム "Designed for Microsoft Windows XP" アプリケーション仕様」 のセクション1:ロゴの要件
の 3項に、
  • 3.1 ユーザーが作成したデータの保存先は、デフォルトで「マイ ドキュメント」に設定すること
  • 3.2 アプリケーション データを正しく分類し、保存すること
とあり、3.2項にはユーザーが直接作成、操作することを意図しない、アプリケーションが生成するデータは以下の場所に置くように、とある。
  • 共通アプリケーションフォルダ (CSIDL_COMMON_APPDATA で識別) のサブフォルダ、または
  • ユーザー プロファイル フォルダには、アプリケーション データ (CSIDL_APPDATA) またはローカル アプリケーション データ (CSIDL_LOCAL_APPDATA) を保存する。
えーと、要するにマイクロソフトは今回のような、"プログラム自身の動作のために生成した設定ファイルをマイドキュメント以下に置く" という実装を推奨するようなガイドラインは示してない。
何に準拠したんだ。夢の中の神のお告げにでも準拠したか。

プログラミング云々の話じゃねぇ。技術分野では一次情報を追わないヤツは業界に居続ける資格はない。お前に食わせるタンメンはねぇ。



なんでこの点が気になったかっていうと、数日前にマイドキュメントをファイルサーバ上に移動させたんです。
  • ユーザープロファイルが置かれたディレクトリはローカルにあるからマイドキュメントは移動しても大丈夫。
  • 実際、マイドキュメントの場所を変えることは Windows の機能として用意されている。
  • 俺が意図しない操作でマイドキュメント以下のファイルが操作されることはない
という前提でいて問題ないはずなのに、その前提を崩されると困る。
ネットワークがおかしくなったり、裏で Samba をアップデートしてリスタートをすると困ったことが起きちゃう可能性がある。

ていうか、うちのファイルサーバ時々止まるんでマジ困る...。