-----------更新履歴-----------

[~2018/10/14]
・Near Clipping PlaneをSCOPE時を0.08に、通常時を0.04に
・落ちている武器を特定するためのIDをランダムから固定に変更し、serverから上書きできるように
・自分が撃った銃弾が敵にヒットしたときに、ヒットマーカーを表示するように
・移動速度を武器個別に%単位で設定できるように
・ダッシュ中はスコープを解除するように
・腕と銃モデルの反動をY方向(上下)だけでなくZ方向(奥行)にも実装、見栄えが少しよくなった
ZOOM(ADSもどき)時は上方向の反動なし

[2018/09/28]
・壁に銃弾痕が残るように(貫通した弾は最初の壁のみ)

[2018/09/23]
武器枠が2つ空いた
・ondoriを一つに統合(武器番号25/26の2つから25のひとつに)
・First Aid Kitを武器番号32から36に変更
・武器番号26をショットガンに

[2018/09/21]
・hpbをダメージ受けた際、受けた分のダメージを赤色で表示し、時間をおいて減少するように

[2018/09/19]
・リコイル(画面の跳ね上がり)を可変倍率スコープでもズーム同様設定できるように
・可変倍率スコープを使わずに発砲した際の誤差をスコープの種類に関わらず武器ごとに設定できるように
・等倍スコープにもズームと同様、視点の倍率(3種類)を武器ごとに設定できるように

[2018/09/14]
・坂道でも足音が鳴りやすいように改善
・リコイルが自動で元の場所に戻る有効設定と連射し続けたときのリコイル増幅設定をブレ幅設定と同じ場所を使っていたので分離
その影響でブレ幅の上限が127(2.54°)から255(5.1°)まで拡大

[2018/09/13]
・DANGER時の誤差がない武器をModel700だけじゃなく、武器ごとに設定できるように
・死亡後のカメラやリプレイ再生時に、パンニングが死んだプレイヤーに依存したままだったのを修正

[2018/09/10]
・M1を1発ずつリロードされるように変更(RELOADボタン押しっぱなしでもリロードできるように)
・サウンドの最大数を98まで拡大、同時再生数3→4
・リロード音を武器ごとに設定できるように(音声ファイル用意できないので機能追加しただけ)
・スコープ画像を武器ごとに設定できるように
・スコープの照準線を武器ごとに非表示に設定できるように
・空中時の誤差を接地していない間は増加されていくように変更(坂道の弾のばらけ幅を軽減)
・足音が鳴るようにしてみた

[2018/08/23]
不具合
・死亡後のカメラの←→でのプレイヤーの視点切り替えで、→ボタンで11番から次の人の視点に移ると0番ではなく1番の人に移る
・logのtxt書き込み処理中にチャットの通信が入ると、そのログが割り込んで保存されてしまう(修正予定なし)

[2018/08/12]
公開
[2018/08/11]
完成!!(残り説明書)

・リスポーン時カメラ追尾を停止するように修正

[2018/08/10]
・auto kick用のpingの設定できる対象範囲の上限を9000に(timeout判定以内に)
・試合終了後「gt」「gv」で設定したG18+の弾速・フレーム数を初期化するように

[2018/08/08]
・わざわざ書くほどのことでもないけどコマンド「help」の中身を編集

[2018/08/06]
・D3DFMTのZバッファ精度で対応フォーマットかチェックし、対応しているものを使用するように(D32F→D24S8→D24X8でチェック、どれでもなければ16bit)
CheckDeviceFormat(D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, GADM.Format, D3DUSAGE_DEPTHSTENCIL, D3DRTYPE_SURFACE, D3DFMT_D**)

[2018/08/05]
・ゾンビでも拾える武器を設定できるように(Model700とGRENADEを拾えるように)

[2018/08/04]
・ゾンビだけノックバック量を別設定できるように(通常の2倍)

[2018/08/02]
・そこそこチート対策
これによりEXEを書き換えると面倒くさいことになるので多分クラ側のEXEをいじるのはしない(=新機能追加なし)

[2018/08/01]
・被弾ダメージを%単位で変更するサーバー用コマンド「dmg」実装
0~1000%の範囲で設定可。変わるのは銃弾によるダメージのみ
・試合終了後のデータチェック追加

[2018/07/24]
・装弾数が最大の時はリロードを使ってもリロードしないように
・ランダム武器のオプション+64、+128を別々に設定できるようにし、+128の弾数を変更

[2018/07/22]
・3点バーストの武器のみBURSTかSEMIで切り替えて撃てるように
「FIRE MODE」ボタンを短く押すことでBURST/SEMIを切り替えられる
・それに伴って、スタミナ回復は「FIRE MODE」ボタン長押しで使用に変更
・ローカルIDでフォントの文字セットを判別

[2018/07/10]
・回復中は移動に制限がかかるのではなく、移動すると回復が即座にキャンセルされるように
・ダッシュ中の足モデルをスタミナの有無で足モデルの切り替わり方や切り替わるまでの時間を変更(要するに見た目をそれっぽく)
・pd1のHP変更設定で[9][人情報][HP][未使用]から、[9][人情報][HP][HP(×256)]でHPの設定範囲を-32768~32767まで拡大

[2018/06/29]
・人間タイプがゾンビの時、NONEで発砲すると瞬間的に少しだけ前進するように
・3点バースト後の連射間隔を6固定から武器ごとに設定できるように
・武器切替をマウスホイールでできるように、ただし可変倍率スコープ使用時は武器切替不可(倍率変更になるため)
・ondoriで飛翔時とM700のボルトアクション時の音声が本人以外でも再生されるように

[2018/06/21]
directXの描画設定を変更
・頂点フォグをピクセルフォグに
・Zバッファーの精度をD3DFMT_D16の16bitから32bitに変更し、遠くのポリゴンのちらつきを改善
・アルファチャンネルのうち完全に透明な場合描画しないように
(0.975tは実際にはアルファ値が1以上ではなく1より大きい場合になっているので、完全に透明だけではない)
・temp.txtのマップ設定で広いマップ専用設定ができるように
それを指定すると弾速が少し上昇し、霧がかかる距離が延長される

[2018/06/20]
・バグ修正とそれに関連した対策

[~2018/06/19]
・グレネードをスタミナが一定以上ある状態でダッシュ中に投げると大きく飛ぶように
スタミナ一定というのは投げたときスタミナを1秒分ほど消費するため、飛距離は1.375倍
・config.txtからズームの切り替えをホールド式とトグル式を設定できるように
ホールド式はスコープボタンを押している間ズーム
トグル式はスコープボタンを押す度にズームと通常視点とを切り替える、スコープと同様
・サーバーでAFKのオートキックを無効にするコマンド「afk」実装
・スコープ時の最小誤差をズーム同様設定できるように

[2018/05/30]
・作りかけだったマップ完成
・ノックバックしなくなっていたバグ修正

[2018/05/13]
・マップのポイント4パターン作るの大変なので「switch.txt」でパターンをある程度指定できるように
中身が「0123」で今まで通り4パターン、「0011」だと2パターンで50%ずつの確立、
「0001」だと0が75%、1が25%、txtが存在しなければ0のみ(=「0000」)
・倉庫マップ完成

[2018/05/11]
・ズーム時のみの弾道誤差に上限を設定できるように
・ズーム時の視野角を武器ごとに設定できるように
・武器のパラメータ―迷走中

[~2018/05/09]
・ondoriで壁に接触した際、推力が減少するように
・黒猫さんのところで見つけたので新しい武器のHK416、SCAR-L、他にFAMAS(フルオート)を追加
・それに伴って銃声2種追加、アサルトライフル全体のパラメータ調整
入れ替わる形でM16A4→3点バースト、M4→フルオートで名称をM4A1に変更
・より細かく調整できるように銃の位置などのパラメータを本家の1/5から1/25刻みに変更
・ポイントで指定するランダム武器テーブルのうち[0][1][2][3][4][5][14]を設定

[2018/05/04]
・ondoriで発砲時正面に加速され、空中では速く移動できるように

[2018/04/19]
・発砲時のブレを時間経過である程度戻るように
連射するとあまり戻らないままブレが発生するので照準が上に行きやすい
・サーバーもログを記録できるように
「log」で記録開始/停止
・コマンド「unban」でauto banを、「ub NUM」で手動banを解除する
F12の参加者一覧の下に、banしている場合、規制されている人の名前とIPが表示される
そこの番号を「ub NUM」に入れるとその番号のIPをunban
番号が0~3以外では全員unban
「ub」だけだと直前にbanした人をunbanする
・コマンド「ping NUM」で3連続以上上回った時にペナルティ加算されるPING値を設定する
初期値は900以上でペナルティ加算

[2018/04/17]
・ログを記録できるように(クライアントのみ)
config.txtで設定するかコマンド「log」を使用すると記録開始
HAMPさん作のCXLog2HTMLが使えるようにCx形式
(何度もファイル開く閉じるしてると処理遅くなるので10件ごとに書き込み)

[2018/04/17]
・人物テクスチャ以外のテクスチャを「texture.txt」から読み込むように
・xファイルを「model.txt」から読み込むように
・音声ファイルを「sound.txt」から読み込むように
・サーバーのマップ選択のリストを「maplist.txt」から読み込むように
・ファイルの最大読み込み数をテクスチャ80個、xファイル96個まで拡張

[2018/04/13]
・追加小物を実装
「obj番号.txt」にx-fileとテクスチャのパスとあたり判定の大きさを指定する
ポイントでは「追加小物」でなく、「パソコン ワイド 上」の[5][5]で置くことができる
装飾目的なので破壊不可
・人のテクスチャを好きなテクスチャに変更できるように
「skin番号.txt」に「人の種類番号>ファイルパス」で指定する
人情報ごとではなくpd1で置かれた人に使われるテクスチャごとで、[4][0]の特殊 黒Aと[4][1]の特殊 黒Bは同じテクスチャを使うため、変更後は両方とも同じテクスチャ(後から読み込んだ方)になる

[2018/04/08]
・人間タイプがロボットの時、武器を捨てるボタンで予備弾数が回復するように

[2018/04/07]
・server用コマンド「gt」「gv」追加
・武器パラメーターの距離減衰を全武器調整

[2018/04/01]
・ランダム武器テーブルの補助ツール作成
・ランダム武器でNONEが選ばれた際、一部の初期配置武器がサーバーとクライアントで同期できていない不具合を修正

[~2018/04/01]
・新MAP2つ完成

[2018/03/10]
・マップ製作中なので特に書くことない
・今更チーターなんていないだろうけど、コード修正しようとするとチート対策のせいで面倒なことになるのがつらい
・blockeditorパッチのCtrl+ホイールクリックにミスあってオフィロダから削除。修正版あるけどどうせ需要無いので公開はしなくていいかな
・死亡時のカメラの↑キーを押した際、最後に自分をキルした人の場所に移動すると書いてあるが、実際の挙動はキルした側の人の場所であり、人が死亡する度に更新
・暗闇の視界距離が狭すぎたので調整

[2018/02/20]
・初回起動時の利用上の注意ダイアログ表示するように
・サーバーは起動毎サーバー名にMODの文字を含むように促すダイアログを表示するように
・バージョンが違う時MODであるとメッセージを送信するように
・マップ開始時のランダムでbd1、pd1、tempが4パターンから選ぶのを固定化するコマンド「mp」追加ランダム 「mp」でコマンドする度0~3とランダムを順番に切り替え、「mp NUM」で指定した数字、範囲外でランダム
マップのテストが面倒なので実装
・同じ弾に2回被弾するようになってたので修正
・一人以上入室してH未満表示の時EではなくNと表示→Aに修正(A/最大人数)

[2018/02/18]
・Cz75 .40をMk.23に変更

[2018/02/17]
・マウスホイールで可変倍率スコープの倍率を変えられるように(weapon1、2ボタンでも今まで通り変更可)
・死亡後のカメラのY軸方向(高さ)をマウスホイールで変えられるように(同上)
・チャットとF12など一部でフォントを使うことができるように(日本語入力はできませんが日本語表示やペーストが可能)
F10で従来⇔フォント、切り替え
・チャットの表示数切り替えをF4からF9に
・Ctrl+Vのペーストで、チャットのメモリのバッファオーバーフローする問題を対策

[2018/02/16]
・BLOCK EDITORを使いやすいように改造・機能追加

[2018/02/14]
・マップごとにランダム武器の抽選テーブルを設定できるように
使用する場合は3番目のパラメータを+15にする
「table0~3.dat」が存在しない場合は抽選テーブルは未定義で同じ武器しか出ない

[2018/02/06]
・視界距離と霧の調整
・暗闇追加

[2018/02/04]
・コマンドbot使用時1.9同様に全員に通知するように
・オートキックのdatafileのファイルチェックを強化
・死亡後のカメラでキーボード操作でview、tr(カメラ追跡)が行えるように
←キーで生存している前のプレイヤー番号の人の位置にカメラを移動
→キーで生存している次のプレイヤー番号の人の位置の位置にカメラを移動
↑キーで自分をキルした人の位置にカメラを移動
↓キーで最後に指定した人を追跡(trの引数無しと同じ動作)
・F12の表示で自分のプレイヤー番号を緑色に、追跡してる人の番号は紫色になるように
・サーバーはiplist.txtでIPアドレスで8人まで規制できるように

[2018/02/03]
・スタミナをtemp.txtでマップごとに設定できるように
(ダッシュ時間2,3,4,5秒と回復数0~3、回復速度等倍or2倍)
・スタミナ回復時少しの時間ダッシュ時スタミナ消費速度30%減少するように
効果中スタミナゲージが黄色になるように

[2018/02/01]
・照準を2種類追加

[2018/01/30]
・ゾンビはNONEでも見えない射程の極短い弾が出せるように
・練習用マップのリスポーンの種類に[11][team番号]と同じ場所の他に、その場、[11]の中からランダム、[11][RED or BLUE]の自分のチーム番号のものの中からランダムを追加
・復活後1秒弱はGRENADEと弾丸にあたらないように

[2018/01/28]
・練習用マップではキルメッセージの表示をしない、K、Dのカウントしないように
・練習用マップでは死んだら約5秒後にリスポーンするように
・サーバー用コマンド「hash」追加(クラ改竄判断用)

[~2018/01/25]
・640×480以外の解像度に対応
config.txtで解像度を設定できるようにし、解像度によって初期チャット表示数を変更
・F3で照準の種類を切り替えられるように(種類増やす予定)
・F4でチャットの表示数を切り替えられるように
・回復の回復量を100に変更
回復が使用できるラインが分かるように状態にFINE-(HP80~99)を追加
・GUIにHPバーを表示するように
サーバーがコマンドで「hpb」を使用していないとHPバーは機能しない
・人の種類がロボットの場合STATEを残HPの%表示に、HP50%未満で色が変わるように ・クライアントのSERVERのチェックボックスをリプレイに変更
・./fp30/txt内にconfig.datがある場合そちらを読み込むように
・新しくHUD追加(F2で切り替え)

[2018/01/19]
・音量の距離による減少量が大きいような気がしたので2/3に(メモ:XOPSの音量の1減少=0.3dB減少、音量半減には-20)
・マップ開始時にバックウィンドウだった場合開始音を再生するよう設定できるように
・コマンド「call 音量[%]」で開始音の有効と音量を%単位で調整できるように
引数無しだとOFFなら音量100%でONに、ONならOFFに切り替え
・コマンド「sound」でパンの有効の切り替えられるように
・pd1で人物設定ごとにHPを変更可能に
[9][人物番号][HP][]でその人物番号の人のHPを3番目の値と同じにする
・config.txtから解像度、腕の表示の初期設定、ステレオサウンドの初期設定を読み込むように
・F2の画面表示切り替えにチャット非表示を追加

[2018/01/18]
・練習用マップでのみ使えるクラ専用コマンド「get 武器番号」を追加
・vs多人数戦ルール時の少人数側(チーム番号0)の初期HPを人数ごとに指定可能に
[10][参加人数][設定値][]で参加人数が2番目の値の時、3番目の値を50倍したものが初期HPとしてしようされるように

[2018/01/13]
・せっかくなのでtemp.txtとbd1も4つから選ぶように
・通信上の排他制御の脆弱性を改善
・PINGが900を3連続以上超過している場合、autokickペナルティを加算
・名前偽造発言のチート対策
・コマンド「ms」で3を指定した場合、一度だけテスト用マップが選択されるように

[2018/01/11]
・マップ数を最大256種類まで増加可能に
・pd1を4種類まで増加し、毎回ランダムで選択されるように
・「画面を暗く」をtemp.txtで設定できるように
・コマンド「give」「ms」改良
・SERVERのマップ選択画面にauto設定、ms設定、ダメージ倍率設定などを表示するように
・マップ自動選択で直前と同じマップだった場合、再抽選して同マップになる確率を減少
[2018/01/08]
・フィールド上の弾丸の上限数を38発から64発に
・フィールド上の投げられたGRENADEの上限数を18個から22個に
・フィールド上に落ちている武器の上限数を50個から64個に

[2017/12/28]
・ズーム時でも腕表示するように(変更前変更後

[2017/12/24]
・サウンドを銃声などの位置によってパン(定位)が変わるステレオ再生できるように

[2017/12/18]
・以下のようにpd1の仕様変更しました(デバッグしていないので後日やる)
・1番目の値を1で人を配置した場合、初期武器が3番目の値と4番目の値で指定したものになるように
・1番目の値を6で人を配置した場合、初期武器が3番目の値で指定したものとAMMOになり、AMMOは4番目の値が回復残数になるように
・指定した武器が範囲外の場合、今まで通り人物設定のものを使用する
・人情報のポイントがない場合、0番目の人物設定を使用するように
・人情報を識別番号だけで判別していたので、1番目の値が4のものだけから識別するように
・ランダム武器指定時に4番目の値に0以外を指定するとマップ開始時に武器が決定され、クラ側にも反映するためその武器情報を送信するように
・マップルールなどはサーバーから送信されるようにし、保存するメモリの場所を変更

[2017/12/17]
・武器設定値を書き換えするソフトできた(バグがなければとりあえず完成)

[2017/12/14]
・WM_SYSKEYDOWN(F10やAlt入力)時ウィンドウの動作停止しないように

[~2017/12/13]
・武器を持ち替えたと同時に武器を拾った通信があると武器が上書きされて消滅してしまう不具合の対策
・参照する値が鯖依存のものを増やした
・ランダム武器の弾数をAMMO回復量2倍の設定によって増やすなど選択の幅を広げた
・鯖側も武器、マズルフラッシュ、薬莢の設定の単位移動量を1/5にして微調整できるように
・細かなバグ修正

[2017/12/04]
・ズームが味気なかったのでなにかを表示するように(なんかこれじゃない)
・武器、マズルフラッシュ、薬莢の設定の単位移動量を1/5にして微調整できるように

[2017/12/03]
・ズーム切替時の拡大縮小の移行に補完フレームを入れた

[2017/12/02]
・SG 552→M14に変更

[2017/11/30]
・鯖からプレイヤーに任意の武器を与えるコマンド「give」を追加

[2017/11/29]
・発砲時のマズルフラッシュの大きさに乱数いれた
・マズルフラッシュの大きさを弾の威力とは別にした
・発砲時の表示するエフェクトを武器個別で設定できるように(M700、ColtPythonだけ薬莢表示なしだった)
・ズーム時の弾道誤差の減少量を1固定から武器個別で設定できるように
・HGとSRはAMMOの回復量を2倍に
・M1は薬莢の代わりにショットシェルを表示するように
・UZI+→G18+に変更
・dataparam

[2017/11/28]
・テクスチャ(人物テクスチャを除く)のファイルパスの格納方法をスマートにしました
・AK74とMP5のファイル読み込み追加

[2017/11/26]
・.wavと.xのファイルパスの格納方法をスマートにしました
・UMPとCASEのファイル読み込み追加

[2017/11/25]
・GRENADEのダメージを受けた人のHPを同期するように
クラでダメージを受けてなくても鯖側依存なのでGRENADEから逃げたと思ってもDANGERになったりします(今までは鯖側でDANGERでもクラではFINEだったりすることがあった)
・発砲時の画面のブレの処理変更

[2017/11/24]
・M700の弾数が0になったときボルトアクションしないように
・状態がFINE以外の時ぎりぎりFINEまで回復する処理を追加
・serverから武器を与えるコマンドgiveの一部の処理追加
・細かい処理の最適化

[2017/11/23]
・M700のボルトアクションのSEを変更、硬直時間を1.08s→1.44sに変更
・SCOPE使用時は腕表示しないように

[2017/11/21]
・ダッシュ中のモデルが歩きのままだったのを変更

[2017/11/20]
・拾うと抽選で武器が選ばれるランダム武器を実装
・人間タイプがロボットの場合武器を捨てることができないように
・走っているときにノックバックが機能しなくなったのを修正

[2017/11/19]
・弾丸が持つ威力を減衰させるのではなく被弾時にダメージを算出するように(パラメータは未設定、小物に対しては距離減衰が適当されなくなりました)
・ついでにHS倍率を8種類にした
・被弾時にそのプレイヤーのHPを同期するように

[2017/11/18]
距離減衰やっているところですが疲れたので休憩、適当に撮った動画置いておきますDownload(※6.3MB)

[2017/11/17]
・発砲(M1とGRENADEを除く)時にそのプレイヤーのHPを同期するように
・フィールド上の弾と投げられたGRENADEが上限数を超えていると他のデータを書き換えてしまう問題を対策

[2017/11/16]
・GRENADEを鯖依存するように
・1.9f同様退出した人のGRENADEは消すように

[2017/11/15]
・M1の銃弾を鯖依存するように(server側のM1の弾速変えるとクライアント側もちゃんと反映されます)
・テストプレイでbotに殺されるので攻撃できないようにしてやった

[2017/11/14]
・M1以外の武器の銃弾を鯖依存するように
・フィールド上に武器が50個ある状態で武器が捨てられると強制終了する問題の対策

[2017/11/12]
・START - ***のテキストとマップルールをtemp.txtから読み込むように
・フォグの軽減できた

[2017/11/11]
・キルメッセージ関連を変更
個人戦でのKILL MESSAGEの色を変更
個人戦でのサーバー側のHP表示の色を変更
個人戦でのyou are *** teamとENEMY判定の色を変更
n*100K達成ごとに名前の横に達成キル数表示と色を明るくするように
ついでに総キル数、総デス数、TK数、自殺数を記録するように
自殺時に死因を表示するように
・バックウィンドウの状態でMAP開始時マウスが強制移動させられないように
・F11の文字入力待機状態にして何も入力していなければバックウィンドウ時に描画がとまらないように
・config.datの設定で¥(バックスラッシュではない方)を指定することでマウスホイールボタンを使用できるように(config.exeで変更できることを重視したため¥は使えなくなる)
・サーバーで試合開始直後にESCを押すと強制終了することがある1.8の不具合を対策(1.9f~では修正されています)
・腕のモデルの表示をデフォルトでするように
・CLIENT、SERVERのモードをチェックボックスに関わらずexeごとで固定化
<確認されている不具合>
SCOREが-256に書き換えられてしまう場合がある
個人戦のクライアント側(リプレイ時も)に依存しているSTARTの色、ENEMY判定、チーム番号がそのまま

[2017/10/25~2017/11/06]
・個人戦ルールを追加
試合開始時にルール番号ごとの処理と試合終了条件追加
・武器テクスチャ、モデル(+4)、サウンド(最大24個までらしい)の読込数を増加
それにともない武器の設定数も増加(NONE+22→+32
M92F、MAC10、Parachute、GLOCK18のモデルを追加
Parachute装備時落下速度緩和、落下ダメージ無効に
・M700で発砲直後に硬直と薬莢排出と効果音を追加
・死亡後のカメラ
カメラの上下のみの移動追加
コマンドtr使用中マウスを移動すると見ている方向の追尾のみ停止
カメラの上下移動で視点の高さを追尾したまま変更できるように
WASDキーの移動をすると追尾停止するように
viewはいらない子になりました
・落下ダメージ関連を変更
落下ダメージを受けたことがわかりやすいようにエフェクトを表示するように
落下ダメージを受ける高さを変更(WAREHOUSEのコテンナの高さから落ちると受けない程度のささいなもの)
低い高さでの落下ダメージ量を緩和
・HUDの調整
スタミナ回復残ゲージを追加
もう片方の武器名も右下に表示
位置や色など細かいところを調整
・可変倍率スコープ時倍率によってマウス感度を減少させるように
・ondoriの上昇量や小技、効果音など細かい調整
・ロボは特定武器を装備時、捨てることができないように
・CRC-32(多分)の追加

///2017/11/11記録開始