【GAME】ARMA3 EXILE MODサーバの旅その62

2018年8月4日プライベートarma3,dayz,exile,mod,sever

20180804134305_1追記:やっぱ何かがおかしい

追記:3den.pboこれかな?

追記:戻し作業

前記事に書いた通りに、Battleyeスクリプトに、ログ分を入れておくと、確かに蹴られなくなります。

うん・・

(;^ω^)

なんでバニラなのに、蹴られるのかという重大な疑問が残りますが、一応、これでLinuxでのサーバ運用に光が射したといえます。

(;´∀`)ははは、もう、何も起こらないでくれ・・

sc20180804135141ただ・・ゴールが見えない作業が控えてるんですけどもね・・。

(´;ω;`)

Battleyeを無効にすりゃ、こんな事しなくてもええんですが・・。

チーターを暗躍させないためにも、これだけは譲れません。

一応、試してみたのは、以下の3つ。

多分、通常のArma3サーバ鯖管でも、イジらない要素ですよ。これ

scripts.txt(33行追記)クラフト時

!="ion) <= _range}) then\n{\n_players pushBack _x;\n};\n}\nforEach allPlayers;\n_players"

scripts.txt(9行追記)地面アイテム取得時

!="hen \n{\nif (isNull _groundHolder) then \n{\n_groundHolder = createVehicle [\"GroundWeaponHolder\", getPosATL player, [], 0, “CAN_COLL"

scripts.txt(23行追記)Disconnect時

!="(_this select 0)] + _this, \"RscDisplayDebugPublic\", 0] call compile preprocessFileLineNumbers \"\A3\Ui_f\scripts\GUI\RscDebugCons"

あと・・いくつあるんだろ・・。

(;´Д`)

追加:

scripts.txt(42行追記)Disconnect時

!="lay displayCtrl     13484 ctrlAddEventHandler [\"ButtonClick", {[\"executeButton\", [ctrlParent (_this select 0)] + _this, \"RscDisplay"

sc20180804150731チートはどないして、やるのか分かりませんが。

このArma3に関していえば、サーバからロードした、ミッションファイルをそのままカスタムすれば、チート行為が可能に見えます。

・・が、Battleyeがそれを監視してるので、それが不可能です。

・・が、Battleyeとの通信をジャックすれば、回避可能なのかもしれない。

(素人が思いつく位なので)対策はしてるでしょうけども。

Battleyeの仕組みを利用してるタイトルは沢山ありますが(PUPBとかH1Z1、DAYZ、ARK等)、これらのタイトルってチート行為をよく耳にするんですけども。Battleyeって弱いんかな?

Blizzard社のStarCraft2では、一度も聞いた事無い。オリジナルの対策のお陰か、頻繁に更新が掛かってる性かもしれない(前作のStarCraft1では、チートだらけだったのを記憶してるけんども)

20180804151728_1一応、対策が分かっただけでも、良しとしよう。

あぁ・・なんて眩しい、こちらの世界も灼熱らしい。

(;^ω^)

20180804151846_1ふぅ・・

今回の原因追求のために、ほぼバニラ状態にまで設定を戻していったので、これから、徐々に元に戻していかないといけない。

AIが居ないのが分かってるので、自由に町中を移動できる。

(;´∀`)

20180804153333_1ついでなので、アイテム湧きの具合も、再確認しておく。

うむ、当初の予定通り(厳しめ)

追記:戻し作業

sc20180808215329弄りまくったお陰で、一発での戻し作業ができなかった。

エラーが出まくります・・。

(;´Д`)

一個づつ戻してる。

そこで気づいたのが、SimpleObjectの綺麗な配置で、以前コードを書いたんですが、今今見ると、おかしい事に気づく。。。

private _simpleObject = createSimpleObject [_x select 0, _x select 1];

private _classname = getModelInfo _simpleObject select 0;

まず、オブジェクトを生成してから、クラス名を取得して・・の手順なのですが、よーく見ると、クラス名を取得してねぇーという。

だが・・しかし、これでちゃんと動作してたんですよね・・。

(;´Д`)なぞ・・

sc20180808222452exile_assets\model\exile_item_toolbox.p3d: No geometry and no visual shape

・・というエラーが沢山出ておりました。

前からあったんかな・・。忘れてもた。

オブジェクトを指定する際に、「そんなモン、ありませんがな」というエラーなのですが。

Exileアセットのpboを解凍して、中身を見てみると・・。

Exile_Item_Toolbox.p3d

・・というファイルが御座いました。

そう・・、Windowsなら問題無いんですが、Linuxだとダメなのです。

(;´Д`)

全てファイル名に合わせて書き換えないといけません。

なんで、いまさらこんなエラーが出てきたんだ?(前からあったんかも)

追記:3den.pboこれかな?

sc20180809165813

No geometry and no visual shape

エラーに関する部分で、実在するファイル名と大文字小文字が合致しない部分なのですが。

3den.pboが出力するモノがほぼ全てダメっぽいので、コードを追ってみた。

fn_sanitizeFilePath.sqfの中で、こんな部分を見つけた。

_path = toLower _path;

ご丁寧に、ファイルパスを小文字変換してる。

多分、これをコメントアウトすればいいんじゃないかと。テスト予定

思いっきりExileとは無関係ですが、こんな曲を聞きながら作業しております。

(;^ω^)

追記:やっぱ何かがおかしい

sc20180811153959Battleyeへの追記をしていくと、確かに前に進んでる気はするんですが、どうにも腑に落ちない。

起動する度に、エラー発生箇所が変わっていく・・。

相当な数をBattleyeに追加した。

なにか、”根本的”なトラブルを抱えてる状況じゃないんかと思い始めてる。

正常な時(1.0.3)は、OSのバージョンも違ってたし(Ubuntu16.04)、この環境のままアップグレードして、と同時にExile1.0.4に上げたんです。

やっぱ、OSから入れ直しか。。

めんどい・・(;´Д`)

2018年8月4日プライベートarma3,dayz,exile,mod,sever

Posted by nabe