【GAME】ARMA3 EXILE MODサーバの旅その69
追記:A3XAIサーバアドオン初見
追記:画面効果エフェクトの方法入り口
追記:嗚呼、Battleyeキック
前記事で書いてたやつをテスト(ステータス表示を無効にする)
ほら、全部消えてるでしょ。凄い簡単です(エラー出てますけど・・w)
表示切り替えと思われるExileClient_gui_hud_toggle.sqfで、すべて無効状態になるようにしました。
ミッションのconfig.cppのCfgExileCustomCode{}にて、オーバーロードします。
ExileClient_gui_hud_toggle="ExileClient_gui_hud_toggle.sqf";
これを追記して、ミッション内に@Exileからコピーして、カスタムしたコードを入れておく。
※頭辺りにExileHudIsVisible=true;を書くだけ
したら、全部消えてしまった。。
(;^ω^)
これもアリかな?と思ってプレーしてみたんですが、マガジン残弾が分からなくても何とかなりますが。
ガソリン残量や射撃モード(semi/autoなど)、投擲の種類が分からないのはさすがに厳しいかな・・と。
(;´∀`)
もうちょいコードを追ってみよう。
ExileClient_gui_hud_toggleStatsBar.sqf
あ・・これですね。
TABキーが押される度に、この部分がコールされるっぽい。
HUDの初期化も兼ねてるようなので、こちらのHUDコードの部分をまるっと消せば良いと思う。
追記:嗚呼、Battleyeキック
久々にトレーダーに行ったら、全部微妙に位置がおかしい。
ExileClient_object_trader_create.sqf
を再度確認して、適切な引数を渡さないといけない。・・が、配置データが古いまんまなので。
内部では、ATL座標として配置してる(Z軸が地表からの相対)が、データはASL座標なんです(Z軸が水面からの相対)
トレーダーは何かのオブジェクトにアタッチしなくてはならなくて、第7引数(object)を指定しなくても、内部で空objectが生成されて、それにアタッチされる。
※1.0.3ではそんな事なかったので、こうなったのは何か理由があっての事なんでしょうね。
直すたんびに、Battleyeにキックされる始末で、デバッグが捗らない。
サーバ起動中の待機の間に、アイテムの値段とかを確認しながら。
これ飛行機の分類(Plane)なんですね。オスプレイみたいなやつ。価格設定ミスってた。
Exile_Plane_BlackfishInfantry、Exile_Plane_BlackfishVehicle
んで、左下ステータスの非表示は、ここまでは分かった。
disableSerialization;
_display = uiNamespace getVariable “RscExileHUD";
_a = _display displayCtrl 1300;
_a ctrlShow false;
※変数はprivateを忘れずに
このコードを埋める場所さえ、探せれば良いぞ!という所まで来た。
やっぱ、ExileClient_gui_hud_toggleStatsBar.sqfっぽいと思うんだけど、ゲーム開始時やトレーダー出入り時には呼び出しが無いので違うよう(CAPSキーの時だけ)
トレーダーに出入りする度に、画面の初期化動作が入るので、その辺を調査する予定。
追記:画面効果エフェクトの方法入り口
Exileコードを眺めていたら見つけたので、記録。
トレーダーに入った際やデス時などに、画面効果が入りますが、その方法の”入り口”です(やり方は知りませんので、各自調査で)
公式サイトでの説明(Post process effects)
ppEffectAdjustで簡単に行えるようです。トレーダー中の際の背景がボヤケた感じはこれ(ボヤケた効果は、定義済みなので簡単に呼び出せるみたい)
ExileClientPostProcessingBackgroundBlur ppEffectAdjust [2];
ExileClientPostProcessingBackgroundBlur ppEffectEnable true;
ExileClientPostProcessingBackgroundBlur ppEffectCommit 1;
ExileClient_gui_postProcessing_initialize.sqfという場所で、初期化してる所で沢山定義?されてるようです。
何をやってるのかは未調査ですけども。
ExileClientPostProcessingColorCorrections = ppEffectCreate [“colorCorrections", 1500];
ExileClientPostProcessingColorCorrections ppEffectAdjust [1, 1, 0, [0, 0, 0, 0], [0.39, 0.32, 0.25, 1], [0.5,0.5,0.5,0], [0,0,0,0,0,0,4]];
ExileClientPostProcessingColorCorrections ppEffectCommit 0;
ExileClientPostProcessingColorCorrections ppEffectEnable true;
ExileClientPostProcessingBackgroundBlur = ppEffectCreate [“dynamicBlur", 401];
ExileClientPostProcessingBackgroundBlur ppEffectAdjust [1];
ExileClientPostProcessingBackgroundBlur ppEffectCommit 0;
ExileClientPostProcessingBackgroundBlur ppEffectEnable false;
ExileClientPostProcessingDelirium = ppEffectCreate [“wetDistortion", 301];
ExileClientPostProcessingDelirium ppEffectAdjust [2, 0.1, 0.1, 0.2, 0.2, 2, 2, 0.01, 0.01, 0.01, 0.01, 0.01, 0.1, 2, 2];
ExileClientPostProcessingDelirium ppEffectCommit 0;
ExileClientPostProcessingDelirium ppEffectEnable false;
ExileClientPostProcessingSecurityCameraFilmGrain = ppEffectCreate [“FilmGrain",2000];
ExileClientPostProcessingSecurityCameraFilmGrain ppEffectAdjust [0.4,3.5,5,0.6,0.6,true];
ExileClientPostProcessingSecurityCameraFilmGrain ppEffectCommit 0;
ExileClientPostProcessingSecurityCameraFilmGrain ppEffectEnable false;
あくまで入り口ですので。
追記:A3XAIサーバアドオン初見
AI湧きのサーバアドオンA3XAI、前々から気になっていたけども、触る機会が無かった(というか、そんな場合じゃなかった)
ミッション以外でも、緊張感を持っていただくのに良さそうです。
1.0.4でもちゃんと動作してくれれば良いけども・・。
お布団で設定ファイルを眺めながらの作業ですw
(;^ω^)
追記:
パトロール系が充実してるようです(まだ動作して確かめてない)
ほぼランダム動作で、自動で動作してくれるのは助かるが、スポーン地などの設定ができないみたい。
町湧きもあるようで、どんな動作するのか気になるところ(拙作アドオンでも同様の機能があるので・・)
ディスカッション
コメント一覧
どうもですー
ステータスは自分もステータスバーを使っていたので、空腹、喉の渇きの2つが表示される左下のHUDだけを消しましたw
参考程度ということで私のところで入れてる方法を載せておきます
「disable_hud.sqf」という名前でファイルを作って以下の構文を入力
disableSerialization;
waitUntil {(!isNil {uiNamespace getVariable “RscExileHUD”})};
while {true} do {
uiSleep 1;
_display = uiNamespace getVariable “RscExileHUD”;
_ctrl = _display displayCtrl 1300;
_ctrl ctrlSetPosition [-10,-10,0,0];
_ctrl ctrlCommit 0;
};
そしたらinit.sqfで
[] execVM “disable_hud.sqf”;
と指定して完了という感じです
今は私のサーバーも大規模な修正は終わったのですが、やっぱ1つのサーバーPCで2つのExileサーバー(メインとテスト用)を経てると動作が不安定になり、今後はRAMDiskとかで何かできないかと苦戦していますw
後は海外の動画で見つけた、トレーダーの購入メニューのスクリプト?アドオン?を探すためにさまよっていますw
こちらも参考にどうぞ(こちらの動画の57秒あたりから映っている、トレーダーのメニューです)
https://www.youtube.com/watch?v=mLc0ku13Hsc&index=6&list=LL1vSzab1mOA3f3zZXbET-eg&t=26s
どーもです。
例のコードだとBattleyeに謎キックされてまくっていたので、難儀してました・・。
(;^ω^)
提示頂いたコードを拝見したところ、無限ループで無理矢理画面外に押しやってる感じですね。
1秒おきとはいえ、クライアントにそれなりに負荷が掛かってしまいそう。
そうするしか無いのかな・・。困った(ま、そこまでして非表示にするかという問題もw)
トレーダーの動画見てみました。
確かにこれは便利ですね。
GUI系のコードはあまり触れてこなかったので、どーやってるのか検討もつかないw
もし、見つけたら報告しますね。
Battleyeはほんとに厄介ですねw例によってはウチのサーバーでもBEserver関連で時々大量のエラーが出ていますがもうお手上げですw
やっぱ無限ループでの無理やり押し出しでしたか・・・コードをなかなか理解できなくて予想でありましたが・・・もうちょっとちゃんとした設定にしないと負荷が一番気になりますね・・・
トレーダーのはExileの公式フォーラムでも見つけることはできませんでしたwwとなると、もしかしたら一部の有料アドオンではないかと予想していますが地道に探して私も見つけたら報告しますww