「server」タグアーカイブ

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

sc20170530141931追記:お肉

こんな記事、ニッチすぎて価値ねぇーなw

(;^ω^)

備忘録なので。

スポーン地はどないして決める?と思ってたので、コードを追ってました。

EXILE MODのメイン実装コード部分は、Client側が、@Exile/addons/exile_client/code/ExileClient/codeに、Server側が、@ExileServer/addon/exile_server/codeに入ってます。

ゴチャゴチャしてそうですが、名前付けをしっかりしてるので結構見易い。

スポーン地などは、やっぱエディタ上でのMapMarkで間違い無かったようだ(ExileClient_system_map_initialize.spf)

種類(MarkerType)は、ExileSpawnZone/ExileNonConstructionZone/ExileTraderZone/ExileContaminatedZone/ExileConcreteMixerZoneの5種類。

Contaminatedは直訳すると汚染なので、放射線エリアって事かな。

sc20170530143412@exile_serverのbootstrap/fn_preInit.sqfには、サーバー側全メソッドを、名前空間に登録する部分があります(ExileServer_*)

サーバ側が、どの様な構造になってるか追う際に、このリストは便利です。

ほとんどの実装部分は、Client MODにあるので、イジれませんけども。

sc20170530145259トレーダーとの取引部分

トレーダーとの取引に、若干ながらオリジナリティを持たせる予定なので・・、吟味しておきます。

(;^ω^)
sc20170530150304ロッカー部分

こちらも同様にカスタムする予定です。

φ(゚Д゚ )フムフム…
sc20170530172035プレーヤーがスポーンする部分

前記事にも書いた、EXILE MOD開発者の自動チートがこれ。

50万ポップタブと、10万リスペクトからスタートになってますね。

(;^ω^)

sc20170530172256スポーン時のパラメータです。

所持品なんかは、Configに記述します。

スポーン時から、腹が減ってる・・なんて事も可能ですなぁ・・w

それ、ええかも・・。

常時、デス数もプレーヤーデータとして格納してるようなので、デス数に応じた難易度調整もできそうです。

スポーン時、お小遣いもランダムで持たせてあげるとか。

sc20170530174742ExileServer_object_player_event_onMpKilled.sqf

プレーヤーが死んだ時の部分。

UnknownReasons(死因不明)の時のメッセージは、意味深なものが表示されますが、これだけ用意されてたようです。

「because… Arma.」がいい味出してます。

sc20170530182419今回このEXILE MODを調査するために、推奨とされていた、Notepad++というフリーソフトを利用していますが。

今まで知らなかったソフトでしたが、これ、何気に便利。

細か過ぎる、おもてなしレベルの機能が随所に大量にあります。

VS CodeStudioや、Atomなどオープン系テキストエディタが流行ってきてますが、ゼロカスタムでここまで高機能なエディタは、今まで見てきた中でも、これがトップです。おぬぬめ

追記:

20170531155645_1AIはまだ配置してないので、動くものがあり驚く・・。

ニワトリさんではないか。

そういえば、まだ捌いた事がないので、試してみる事に。

20170531155650_1神モードなので、自由にアイテムが出せます。

ナイフを所持してると、数秒程度で捌けます。

地べた”に、鶏肉が2つ、3秒ルールがEXILEに適用されるか分かりませんが、これをゲットします。

20170531155705_1EXILEに新鮮な食料が登場した訳ですが、MIJ鯖缶が言っていた通り。

調理しないと、これは食えたもんではありません。

(;´∀`)

20170531160313_1マークはほぼ設置完了。こんなモンかなぁ・・w

んで、ここで衝撃の事実を突きつけられます。

ヽ(;゚д゚)ノ

EXILEは長い事プレーしてますが、未だ分からないアイコンがあったのです。

この、カタツムリっぽいやつ・・・( ^ω^)

その場所に行っても、NPCとか居ないし、ベッドにも見えるので、回復できるのかなぁ・・?とか、ずっと訳分からずでしたが・・。

これ、「コンクリートミキサー」だったんですねw

そう言われりゃ、見えるわ(;^ω^)

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

20170525171410_1暇な時間を見つけては、サーバ構築してます。

ここで、重大な問題が発生です。

ヽ(;゚д゚)ノ

3D酔いしまくりで、エディタと向き合えない・・w

(;^ω^)

オブジェクト置いては、リアリティがあるか確認して・・のず~と繰り返し。これは、しばらく掛かるぞ・・・

MAPマーカーで自動でスポーン地と紐づくのかと考えてたが、違っていたようだ。コードの書換が必要らしい。

sc20170525193047編集するファイルがあっちゃこっちゃで混乱します。

まとめながら作業しないと、後々収集つかなくなります。

色々同時にやってるのがマズイんでしょう。分かってます。

(;^ω^)

sc20170525193528MIJの鯖缶さんに教えてもらった、AdminToolkit for Arma3というMODを入れてみました。

そういや、Taunusでプレー中に、MAPでハマった時にリアルタイムで救出してくれたんですが、このツールを利用したんですね。

なるほど。

イマイチ、何ができるのか分かってませんが、まったりと理解していきましょう。

・・・と、イザ、試してみようと思ったものの、ウンともスンとも言わず。調べまくったんですが、一向に分からず。

(´;ω;`)

プレーヤーが表示されてないし、サーバ側が応答してないように見える。手順通りにしてるはずなんだけども。

20170525234715_1なんか分からんけど、出来た・・・。

。゚(゚´Д`゚)゚。

なんで、突然、動いたんですかぁー。

これでサーバ構築が捗る。

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

sc20170523050002いやぁ・・来ちゃいましたねぇ・・。1.0.3

(;^ω^)

さて、このバージョンをターゲットに、サーバ構築開始です。

まだ、1.0.3要素をプレーして確認してないんですけどもね。

・・というか、サーバ構築の過程で、ARMA3自体の設定を破壊したらしく、どこのサーバにもアクセスできなくなった・・w

(;´Д`)なんでやねん

ARMA3プロファイルを作ったり削除したりが悪かったんかも。

もっとバグが出るかな・・とも思ってましたが、LOOT関連の不具合程度で落ち着いたらしいです。

まずは、1.0.3bバニラ状態で立ち上げる所を目指します。

sc20170523050839ふらっと、ボヘミアさんのDAYZ公式サイトを見てたら。

永遠のアーリー版」w

と噂されておりますが。

ちゃんと、BETAに向かって進んでるんじゃないですか。

(;^ω^)

アップデート予定リストはこれ。

https://www.dayz.com/development-board

プレー人口が減りつつある中、開発者さんのモチベーションは維持できてるんだろうか。ちょっと心配。

過去2日間で世界5千人に満たない。ARMA3は3万人超え。

sc20170523170355新しいEXILE1.0.3 Serverを見ています。

LOOTテーブルが丸っと変更されてます。

数千行にも及んだテーブルが数十行になりましたねぇ。

はて、これは、どういった設定方法なんだろう。

(;´Д`)

sc20170523171600LootTableCompiler-1.0.3bというツールが別に配布されているのですが。

こちらを見て分かりました。

アイテムをカテゴライズした定義群(LootItemGroups.h)から、建物カテゴリ(LootTables.h)で、グループの湧き率を設定という形です(ツールは確立計算の上コードを吐き出す)※ただのリストにしか見えないんだが、ウマイことなってるに違いないw

確かに、前よりもシンプルで設定し易いですね。MOD独自オブジェクトなんかも、追加しやすいでしょう。

sc20170523190315(只今絶賛設定中・・)

※設定内容は、ネタバレになるので一切記事にしません

途中でこんなものを見つけました。

チート自動適用のプレーヤー達です。

1.0.2よりも増えてますがな。

(;´Д`)

sc20170523220821ふぅ~・・。

基本的な設定はほぼ完了・・。

かなりキツめにしました。

m9っ`Д´) !これで拠点など、作らせん!w

もちろん調整は必要なので、ここから自分でプレーしてみて、緩めていきます。

クラフトもかなり追加しましたが、リアリティの無いものや難易度が高いもの等、後から削除していきます。

後残ってるのは、MAPオブジェクトやNPCの配置でしょうか・・。楽しみでもあり、人的リソースを消費しそうな部分です。

それが終わっても、まだ、イベント関連のコードの埋め込みや調整の大きな壁がある・・。

最後には、Linux本番機への引越しもある(;´Д`) あぅ・・セキュリティどないしよ。

最後の最後には、鯖缶用の管理ツール(RCON?ZEUS?)、データバックアップ、運用機能を入れ込まないといけない。

本日は、Spotifyで、MihimaruGTを聞きながらの作業でした。久し振りに聞くとええですなぁ。

20170523230215_1追記:

とりあえず、この状態でサーバに接続してみます。

1.0.3では初めてです。

一度成功したので、特に問題なく接続できた。

20170523230926_1ま、まさか、自分のEXILEサーバで動物に会えるとは・・。

(;^ω^)

ちゃんと逃げるんですね。遅いけど。
20170523231053_1おお、バニラのNPCがちゃんと居るんだ・・。

前回はトレーダーに行かなかったんで。
20170523231319_1設定した内容が生きてるか確認します。

しっかし、高けーなこの店。

(;´∀`)
20170523233518_1ニワトリを見つけた。

ちゃんと鳴いてますよ。
20170523234503_1ほぼ、タノア本島を縦断してしまった。

車を全然見掛けなかったぞ。

絞り過ぎたか・・。

バニラのAIRのトレーダーは、こんな所で商売しとるとですw

ローカルPCの中のサーバに接続してるので当然ですが、FPSは平均80-100程度出てました(114hzモニター)ここから、ネットワークのボトルネック分が、どれだけ足を引っ張るか気になる所です。