キモブロ

Please spy check please, Fucking retard

SourceEngine

metamod.vdfってゲームに合わせて生成する必要ないよん

っていうのを長らく書き忘れてた。vaacにはなんかの機会のときに言った記憶がある。 Sushi鯖作ってて気づいたんだけど書き方を気をつければ metamod.vdf はいろんなゲームで使い回せる。 metamod.vdf作成時に普通はこのサイトで作るよね。 http://www.source…

SRCDSの任意のファイルのUpload/Downloadが出来てしまう脆弱性とその対策について

どんな脆弱性が有るか SRCDSのクライアントとサーバー間で、ファイルのやり取りをする仕組みに脆弱性がある 任意のファイルをUpload/Download出来てしまうという脆弱性があった このうち、UploadについてはValveが修正した。しかしDownloadについてはまだ穴…

他の人のcfgと比較してcvarの設定の違いをキレイに見れるやつ作った。

概要 これは自分のcfgファイルと誰かのcfgファイルを指定すると、設定が違うcvarだけ表示できるというもの。2つのautoexec.cfgのパスを指定するとそれぞれ内部でexecしてるcfgを自動で探して読み込んで、その上で違いを表示してくれる。TF2向けに作ったけど…

wave file trick

そういえばwaveファイルの先頭N秒間無音にしておけば、N秒後にサウンドを鳴らすというのが出来るよね。waitだとフレーム数で待つことが出来ないのでN秒というのを正確に待てないし。というのを以下のwarsow forum (Leshka HUD)を見ていて思った。> Just do t…

サーバーを再起動しても自動でSRCDSが起動するようにする

CS:GO wikiにあった/etc/init.d/srcdsをTF2向けに編集したバージョンを作った。しかし日本語だといろいろ問題ありそうだし、英語オンリーのバージョンも貼っといたほうがいいんじゃないのかなぁ。 http://wikiwiki.jp/csgo/?%A5%B5%A1%BC%A5%D0%A1%BC%A4%CE%…

SourceEngineのDEMO Fileについて

@thiry_creative あんまり知られてないですけど、CS:Sの時はSourceTVのdemoファイルのバイナリにプレイヤー名が入ってたのでそれ引っこ抜いてくれば検索できますよ。多分変わってないんじゃないかなあと。— ikasamahさん (@ikasamah) 10月 23, 2012DEMファイ…

demoファイルの問題について

demoファイルには録画したプレイヤーが試合中に実行したコマンドが記録されており、そのdemoを再生したプレイヤーは同じようにそのコマンドを実行してしまうという問題がある。たとえば何が問題かというと、設定によってはcl_interpの設定、netgraphの設定な…

SourceEngineにおける当たり判定とラグ補完について #1

いずれちゃんとした文書を書きたいけどとりあえず簡単にブログ記事で書いてみる。死ぬまでにはもっとちゃんとした文書で構造化してまとめておく予定。ちなみに推測も多々含まれてるけど偉そうな口調で書く。 Hitboxについて Hitboxとはなんだろう。これは当…

攻撃におけるProjectileとHitscanの違い

ラグの一切を無視して考えた時に Hitscanがクライアントで射撃ボタンを押した瞬間に直線上に存在する他のオブジェクトとのHitboxとの当たり判定を行う方式で、これは高速。 Projectileがクライアントで射撃ボタンを押した瞬間に、銃弾(あるいはミサイルなど…

Navメッシュのつかいかた

BOTがここ行けるようにしたい! とかそういうときの手順をまとめる 準備 まずチート使わないと出来ないので sv_cheats 1します。次に本来は表示されていないNavメッシュを画面上に表示させます。NavメッシュとはNavigation Meshのことで、BOTの移動経路に利用…

Mapの表面のテクスチャとかオブジェクトの名前、ファイルパスを調べる方法

調べたいMapのテクスチャにAimingした状態で mat_crosshairとすると、そのファイルパスがコンソールに表示される。ちなみに mat_crosshair_explorerってすると、Aimingした状態のテクスチャファイルが存在する場所をExplorerで開ける! L4Dだと便利オブジェク…

MvMマップ作った時に簡単にゲームバランスのテストしたりする方法

なんか普段俺がやってることを文書化しといたら意外とメリット有りそうだなと思ったので書いてみる。 今回はどうやったら簡単に自作のMapとかWaveを検証できるかっていうのを簡単にまとめてみます。sv_cheats 1する前提とします。 マップの読み込み map mvm_…

navファイルの読み込み優先順位

このファイルをbspファイルのなかに埋め込むことも出来るのだが、mapsディレクトリとbspの内部の双方にnavファイルが保持されていた場合どちらが優先されるかといえばmapsのほうみたいで、bspの内部のものよりも優先度が高いようだ。したがってサーバー側の…

Listen鯖を起動できなくなった時の対処法わかった

なんかたとえばtr_rocket_shooring2起動しようとして失敗うまく起動せずにクライアントが終了しちゃう時の対処法 _other.soundcacheを消すsoundのcacheが狂ってるせいでsound再生しようとするタイミングで死んでたんですね。

次にサーバーが空になったときに自動で再起動してくれるsv_shutdownというコマンドがあった。

同じようなことをするコマンドを自分で実装してしまったけど https://github.com/kimoto/sourcemod-server_quit_if_empty/blob/master/scripting/server_quit_if_empty.sp普通にsv_shutdownなるコマンドをたまたま発見してしまった。 "sv_shutdown" - Sets t…

RCONをパーフェクトでpretty cuteにするための設定共有

俺がよく考えた常識的なおすすめの設定を提案する記事です sv_rcon_log "1" // RCONのログを出力するようにする rcon_password "" // RCONのパスワード sv_rcon_banpenalty "60" // rconの認証に複数回失敗した時にペナルティとして何分間BANするか sv_rcon_…

srcds起動時のマップをランダムにする

randommapコマンドを使うと、おそらくmapcycle.txtを元にマップがランダムに変更されるのでこれを利用し、以下のように起動時に指定しておく。 ./srcds_run +randommapなお、このとき+mapの指定はしないでおく。こうしておけばサーバーがクラッシュした時の…

srcdsのcfgファイル読み込み順

起動時 valve.rc この中でautoexec.cfgがexecされてる autoexec.cfg execで指定したcfg 引数でexecを複数指定した場合は一番右側のものしか実行されない マップ読み込み時 sourcemodプラグインの読み込み処理 server.cfg (ただしくはservercfgfileで指定され…

srcds_run コマンド詳細解説

srcds_runとは何か。 srcdsを起動するためのスクリプト。shell scriptで作られている。内部的にはsrcds_linuxが実行されている。srcds_linuxは環境変数とかコマンドライン引数で挙動を制御するのだが、そういったものをさらに扱いやすくするために存在してい…

srcdsでrlwrapが使いたいけど使えなかった

$ rlwrap ./srcds_linux -game left4dead2これだと駄目。rlwrap catだとうまく動いてるんだけどなぁ。実装が特殊なのかな。

sv_benchmark_force_start

sv_benchmark_force_start でBOT大量沸かせてbenchmarkが始まると。SourceMODあり/なし、自作プラグインあり/なしで性能測定してみるとかありだな。あとでやる

motd.txtを外部URLにしつつ最大文字制限を回避するテク (追記)

motd.txtは最大ファイルサイズ制限とか合ったり、サーバーごとにわざわざ更新するのだるいし、みたいな感じでそれを良い感じにする方法。こんなかんじでmeta refreshでリダイレクトするHTMLを記載したmotd.txtにすると良い <html> <head> <meta http-equiv='refresh' content='0; url=http://kymt.me/src/sushi_motd.html'> </head> <body> Redirecting... </body> </html> iframeを使…

SourceEngineのネットコードを学ぶ上でとても参考になる情報源まとめた

http://game.kymt.me/wiki/SourceEngine

pingの偽装方法

cl_cmdrate + cl_cmdrate +50とかなんでも良いので適当にcl_cmdrateの値に+とかつけてやる。そうするとpingが5になる ただし実際のcl_cmdrateは20ぐらいになるので注意。海外のサーバーとかで現地人を装うときに便利、かな。

これ、もしかして kb_act.lst いじればキーボードの設定項目追加できるみたいな感じなのかな

http://www7b.biglobe.ne.jp/~css/css_bind.htm

hearbeatコマンドでMasterサーバーに生存報告

heartbeat // Force heartbeat of master serversこれを利用するとマスターサーバーに俺は生きてるよと通知することが出来るっぽい。鯖立てた後にすぐにリストに反映されて欲しかったら実行するとよさげ。