X



ARMAシリーズ エディット専用スレ Vol.10
■ このスレッドは過去ログ倉庫に格納されています
0001ハートマン先任軍曹垢版2013/12/08(日) 12:18:15.13ID:b28xZHtr
             _____________________
   /ノ 0ヽ     /
 _|___|_  │  わたしが本スレッド教官のハートマン先任軍曹である!
 ヽ( # ゚Д゚)ノ <  質問に対する回答には必ず礼を言え!
   | 个 |    │  分かったか、野郎ども!!
  ノ| ̄ ̄ヽ   . \_____________________ 
   ∪⌒∪    

前スレ: ARMA2/ArmA/OFP エディット専用スレ Vol.9
http://kohada.2ch.net/test/read.cgi/gamef/1286990596/

過去ログ
OFPエディティング専用スレ
http://game2.2ch.net/test/read.cgi/game/1020696767/
OFPエディティング専用スレ Vol.2
http://game2.2ch.net/test/read.cgi/game/1033891509/
OFPエディティング専用スレ Vol.3
http://game2.2ch.net/test/read.cgi/game/1049278118/
OFPエディティング専用スレ Vol.4
http://game5.2ch.net/test/read.cgi/game/1061719523/
OFPエディティング専用スレ Vol.5
http://game10.2ch.net/test/read.cgi/game/1076324789/
OFPエディティング専用スレ Vol.6
http://game10.2ch.net/test/read.cgi/game/1109485444/
OFPエディティング専用スレ Vol.7
http://schiphol.2ch.net/test/read.cgi/gamef/1140604437/
ARMA2/ArmA/OFP エディット専用スレ Vol.8
http://yuzuru.2ch.net/test/read.cgi/gamef/1247616232/

■ まとめサイト
Armed Assault Wiki
http://wikiwiki.jp/arma/
ArmA2 Wiki
http://wikiwiki.jp/arma2/
ArmA3 Wiki
http://www51.atwiki.jp/arma3/
ArmAシリーズ総合フォーラム
http://armajapan.forums-free.com/

本スレ過去ログとかFAQとか(初心者は5度見てみよう )
http://f29.aaa.livedoor.jp/~ofpch/(リンク切れ)

質問の時は、ARMA3かARMA2かArmAかあるいはArmA:CWA(旧OFP)なのか、ちゃんと記述しよう。
0304UnnamedPlayer垢版2015/03/29(日) 01:45:10.89ID:o0cy8c5e
>>301
そんなのARMAやってたら日常茶飯事だから
MOD全部外せば直る
0305UnnamedPlayer垢版2015/03/29(日) 13:30:11.90ID:1BmnrW2X
最近Arma3を購入したArma2既プレイ者(シングルのみ)なんですが
2に比べて3の敵兵の防御硬すぎませんか。銃弾4発くらい耐えるじゃないですか
キャンペーンでも硬いしエディットでも硬くて、ユニットのHealth/Armor欄のメーターを減らすと最初から出血した状態になってしまうし
皆さんはどうしてますか?
0307UnnamedPlayer垢版2015/03/29(日) 17:03:29.84ID:d1pvklQW
>>305
エディタで弄るなら相手のボディーアーマーを無くして代わりにチェストリグとかベルトなどを装備させるとかいいかもね
CSATは服の防御が硬いからあまり効果が無いかもしれないが
あとは死ぬまで撃ち続けるしかない
0308305垢版2015/03/29(日) 18:06:04.24ID:1BmnrW2X
なるほどチェストリグですかありがとうございます
0309UnnamedPlayer垢版2015/04/08(水) 22:02:13.18ID:2RHQFmnu
>>303
OFPの頃からある現象じゃね

WP近くにトリガ置いてヘリと結んでヘリがトリガに入ったらスイッチ起動させてそのwp飛ばす、でやれると思う
0312UnnamedPlayer垢版2015/08/21(金) 01:35:25.62ID:PbenVmz/
>>308
相当な遅レスだけど現代のぼでーあーまーでも
7.62x51を50mで耐える位の性能出せるらしいから
そういうもんだと割り切ってしまうのも。
0314UnnamedPlayer垢版2015/11/11(水) 14:19:23.00ID:3BvL3i4A
地面に穴を作るmodってないのぉ??
0315UnnamedPlayer垢版2015/11/13(金) 01:03:37.34ID:dd7Nh1G4
タンカーとか商船(動かないオブジェクト)って需要ある?
0317UnnamedPlayer垢版2015/11/13(金) 15:33:37.14ID:VyectthB
>>315
動かなくても十分使い道はあるのでは?
0318UnnamedPlayer垢版2015/11/16(月) 19:49:21.80ID:RYuIKG12
UH-1のローター折り畳めるバージョンのMODってなかった?
0320UnnamedPlayer垢版2015/11/30(月) 16:29:57.62ID:Bu9tz+9d
塹壕modってできないのかなぁ
0321UnnamedPlayer垢版2015/11/30(月) 23:59:01.19ID:cvvYw1wP
擬似塹壕はモデルでできる
地形編集でやるならMESHを細かくしないとそれっぽくならんよ。
そしてAI兵士が塹壕戦を理解するか怪しい。
0322UnnamedPlayer垢版2015/12/01(火) 01:16:58.65ID:Z7YM3r0o
地形編集は分かるけどモデルでできるってどういうこと?
0323UnnamedPlayer垢版2015/12/01(火) 01:20:07.26ID:Z7YM3r0o
あーあれか
Arma2にそんなモデルあったな確か
あれを隙間なく配置してけば疑似塹壕が作れるのか
自己解決してしまってすまん
0324UnnamedPlayer垢版2015/12/01(火) 12:52:22.19ID:R+3SKft+
>>321
ありがとう。
AIについては、銃座につかせたいので問題なし。

植生をそのままで地形を大規模に盛り上げるオブジェクトがあれば不自然な塹壕もある程度隠せるんだけどな〜
AIがその上を普通に通過できるのかわからんけど。
0326UnnamedPlayer垢版2015/12/13(日) 00:44:37.41ID:yIoDhQvZ
車両の車内視点だと爆発音が全くきこえなくなってしまう
IEDとか待ち伏せとか、音がきこえないと戦闘開始しても淡白な感じ

トリガーで音を鳴らす以外になにか解決策はないものか…
0327UnnamedPlayer垢版2015/12/15(火) 18:27:50.01ID:ZsobcEYk
AIがRPG等のAT武器を対人に積極的に使うようにするにはどうすればええんや…
0328UnnamedPlayer垢版2015/12/18(金) 02:54:20.44ID:bDarn1Wj
>>327
AIに対人RPG使わせるMODがどこかにあったと思う
スクリプトで実行させるんだったらselectWeaponとdoFire使えば出来るかも
0329UnnamedPlayer垢版2015/12/21(月) 13:44:16.45ID:fwltSq6A
>>328
modの方は本編のRPG42だかなんだか限定だった気がするなぁ

スクリプトの方試してみる。ありがとうございました
0330UnnamedPlayer垢版2015/12/22(火) 21:26:35.24ID:GUvVuFpm
https://youtu.be/CxgUwsjHCyU
この動画みたいに兵士を密集させたいので、attachToを試しに使ってみました。一応くっついてはくれるのですが、移動時の違和感がすごいのです。

フォーメーションを新たに定義することは可能でしょうか?
0331UnnamedPlayer垢版2015/12/23(水) 13:34:24.09ID:/0bFIMZo
Dta\bin.pbo\config.binの中に設定があったからできるんじゃない
0332UnnamedPlayer垢版2015/12/25(金) 22:17:20.10ID:zOmfv8Lu
>>331
みつかりました!ありがとうございました!
0333UnnamedPlayer垢版2016/01/17(日) 22:23:10.28ID:KBBbKPgX
ユニットがダメージを受けた時、武器を捨てて投降するスプリクトを作りたいのですが上手くいきません

_surrenderon = false;
_Target1 = _this select 0;

_EHDammaged = _Target1 addEventHandler ["Hit", {
  removeAllWeapons _Target1;
  _Target1 action ["Surrender", _Target1];
  hint "damaged";
  _surrenderon = true;
}];

と組んでみたのですがヒントは出てもターゲットが降伏してくれない状態になってしまいます
どこが間違っているのかエラー文すら出ないのでさっぱりなのですが、どうすればいいでしょうか?
0334UnnamedPlayer垢版2016/01/18(月) 18:05:34.88ID:YLFDb+sn
自己解決
イベントハンドラー内でスクリプトを書くときはもう一回オブジェクトとかを定義しなおさなきゃいけなかったのか
0335UnnamedPlayer垢版2016/01/18(月) 20:53:52.66ID:zDdQlywd
こんな感じ?最後投げやりですまんけど

Target fnc_release_weapon_onhit={
private[
0336UnnamedPlayer垢版2016/01/18(月) 20:56:08.97ID:zDdQlywd
ミス

Target fnc_release_weapon_onhit={
private["_surrenderon", "_EHDammaged"];
params["_Target1"];

_surrenderon = false;

_EHDammaged = _Target1 addEventHandler [
"Hit",
{
params["_Target1", "_causedby", "_damage"];

if( _damage > 0.7 && {_causedby != _Target1}) then{//70%以上のダメージを受けてかつ落下ダメージでないなら
removeAllWeapons _Target1;
_Target1 action ["Surrender", _Target1];
_surrenderon = true;
};
}
];

//
//_surrenderonの値を監視してtrueになったらremoveEventHandler["Hit", EHDammaged]となるようなスクリプトを書く
//トリガー使えば多分できる
//
};
0337UnnamedPlayer垢版2016/01/18(月) 21:23:41.90ID:YLFDb+sn
>>335
>>336
ありがとうございます!
paramコマンドがあればイベントハンドラー内でもそのまま変数が使えるんですね
いろいろ試してみます
0340UnnamedPlayer垢版2016/07/10(日) 20:11:00.81ID:PA0nSgcz
arma3で今見ている人の肩に手を乗せて一緒に歩くのってどうやったら綺麗に作れますか?

今のところaddActionで手を前に突き出すアニメーションを再生させてattachToでくっつけています
でも肩に手が乗らないし、相手の動きに合わせて足も動かないです
どうすれば綺麗に追従してくれるようになるんでしょうか?
0341UnnamedPlayer垢版2016/09/08(木) 17:19:15.26ID:9EgstQOJ
>>340
もう解決しているor諦めた かもしれないけど、
そもそもそんなアニメの定義があるのでしょうか。、
何かのミッションで、実現されてるなら、解凍して分析すればいいと思います。
youtube等にそのシーンがあったとかなら、、、手段を聞くしかないのかな。
0342UnnamedPlayer垢版2016/09/20(火) 21:44:23.29ID:qE63WImJ
RHSのユニットにIRレーザーを強制的に使わせたいんだけど、enableIRLasers が作動しなくて困った
何かいい方法あるかな?
0343UnnamedPlayer垢版2016/09/25(日) 21:19:53.20ID:FPM2fm2v
解決しないかもしれないけど、onEachFrameとかで毎フレームごとにenableIRLasersを実行してみる
RHS側がスクリプトで無効にしている場合はこれで直せるかもしれない

駄目だったらRHSのpboを全て展開して(関係ありそうなのが分かるならそれだけ)、何かのエディタで全部IRレーザー関連のキーワードで検索を掛ける
原因が運よく見つかればラッキーだけどかなり大変
この場合RHSを書き換える以外に解決法がなければ署名には注意する必要がある
0344UnnamedPlayer垢版2016/10/03(月) 01:02:01.19ID:lFfwFuRS
>>343
ありがとうございます
バニラ環境で試してみた所、バニラでもenableIRLasersが作動しなかったのでどうやらArma本体での問題のようです
とりあえず常に警戒状態にすることで対処します、ありがとうございました
0345UnnamedPlayer垢版2016/10/05(水) 22:36:30.81ID:kAM+rd/l
enableIRLasersをtrueにしても、AIがCOMBATモードじゃなければ付けてくれないんですね
フラッシュライトのほうは強制的に付けられるのに不便ですね
Feedback Trackerでも上がってたりしそうですね
0346UnnamedPlayer垢版2016/10/23(日) 01:57:09.37ID:JaxrVbPS
3つ以上のウェイポイントの
0347UnnamedPlayer垢版2016/10/23(日) 01:58:15.52ID:JaxrVbPS
3つ以上のウェイポイントのWaypoint Activationの動きがよくわからないんだけど、○-○-○ってやると2つくらい達成されたら次のウェイポイントに向かう奴が出ちゃう
3つ以上の部隊を同期させて動かすのは不可能ですか?
0348UnnamedPlayer垢版2016/10/27(木) 22:23:30.54ID:HhyUuVwx
それぞれ全部をシンクロで繋がないとだめなんじゃないかな
○-○-○じゃなくて

  ..○
 / \
○---○

みたいな
トリガーで管理しちゃったほうが手っ取り早そうだけど
0349UnnamedPlayer垢版2016/10/28(金) 01:56:16.38ID:/B8ECSC8
>>348
なるほど、全部を繋ぐわけですか
ちなみにトリガでのウェイポイント管理ってどうやるのがセオリーですか?
ウェイポイントのon activationに「flg1=true」とかやっといてトリガのconditionに「flg1 && flg2 && flg3」ってやるくらいしか思いつかない
0350UnnamedPlayer垢版2016/10/29(土) 20:08:09.33ID:njkaWGbH
>>349
それでいいんじゃないかな
自分もそのやり方でよくやってる

on activationでflg1に1を足していってconditionに「flg1>=3」とかやると変数の数が減って管理しやすいかも?
0351UnnamedPlayer垢版2016/11/03(木) 17:17:48.65ID:1UXpC489
海上のAAV7にJSDFMODの自衛隊員クルーと隊員を搭乗させるにはどうすればいいでしょうか?
隊員は泳いで乗せる手もあるのですがクルーを最初から運転/砲手/指揮席に乗せる方法はないでしょうか?
0352UnnamedPlayer垢版2016/11/03(木) 20:12:54.47ID:1UXpC489
すみません
this MoveInDriver "hitohito";
とエディタで入力すると
Missing ;
とエラーが出ます
なぜでしょうか?
0353UnnamedPlayer垢版2016/11/04(金) 09:28:13.15ID:pYIZ+T+V
>>352
" が付いているからでは?

this MoveInDriver hitohito;

でできると思うけど
0354UnnamedPlayer垢版2016/11/05(土) 11:46:10.36ID:+ZvDZUEL
>>353
ありがとうございます
0355UnnamedPlayer垢版2016/11/05(土) 11:46:56.97ID:+ZvDZUEL
特定のユニット(Gerdmanと名付けた警官)をBLUEFORに陣営変更することは可能でしょうか?
0356UnnamedPlayer垢版2016/11/05(土) 20:48:11.41ID:rBuhdxSu
BLUEFORのユニットを置きます
GerdmanからgrouptoでBLUEFORのユニットとグループを組ませます
BLUEFORのユニットのProbability of Presence (存在確率)を0%にします
そうするとGerdmanがBLUEFORとして扱われます
0358UnnamedPlayer垢版2016/11/06(日) 00:36:42.44ID:w7wmBE8d
>>356
ありがとうございます
施設警備などで警官が欲しかったので
>>357
まったくその通りです
恥ずかしい
0359UnnamedPlayer垢版2016/11/07(月) 02:33:23.79ID:jCGJNM00
通じるかどうかはべつとして
guard man
だと思うが。。。
0360UnnamedPlayer垢版2016/11/14(月) 05:41:58.60ID:E96xb8h/
ジャードマンっていう名前なんだろ
0361UnnamedPlayer垢版2016/11/19(土) 22:38:28.15ID:Y2uwMN33
moduleのspawn aiで沸いたaiにwaypointを与えるにはどうすればいいですか
0362UnnamedPlayer垢版2016/11/20(日) 01:14:11.23ID:obgQNXIC
moduleのexpressionの欄で沸かせたgroupを引数にできるから
そこにaddWaypointでwaypoint作っていく
0363UnnamedPlayer垢版2016/11/23(水) 14:35:53.53ID:UibFCNja
ブートキャンプみたいに
左右に移動する的を設置するにはどのようにすればいいのでしょうかが?
0364UnnamedPlayer垢版2016/12/31(土) 23:55:31.62ID:vy2AIPvp
Arma3で降伏させるにはどうすればいいでしょうか?
ミッション開始時点で頭の後ろで手を組んでいる状態にしたいです
2では降伏アンビエントモジュールがありましたが3では見当たりません
0365UnnamedPlayer垢版2017/01/01(日) 01:12:13.90ID:lQWhzCKY
捕虜ユニットのinit欄に
removeallweapons this; this playmove
0366UnnamedPlayer垢版2017/01/01(日) 01:12:52.77ID:lQWhzCKY
欠けた
捕虜ユニットのinit欄に
removeallweapons this; this playmove "AmovPercMstpSsurWnonDnon" ; this disableAI "anim"
0367UnnamedPlayer垢版2017/01/01(日) 11:17:19.70ID:/wzBWbMl
ありがとうございます
SetCaptiveではだめだったんですがなぜでしょうか
0368UnnamedPlayer垢版2017/01/01(日) 21:10:01.89ID:u86A4ZZO
setcaptiveはAIに感知されないように設定するためのものだったはず
これを入力しないとAIが捕虜に容赦なく弾をブチ込む
0369UnnamedPlayer垢版2017/01/03(火) 16:03:30.62ID:tsRynNGd
eden enhanced入れればチェック項目があって一発よ
0370UnnamedPlayer垢版2017/01/20(金) 22:32:10.83ID:dZPUyr0Y
ものすごく初歩的な質問でごめんなさい

arma2のころにあったトリガーのタイプにあるスイッチ?
っていうのがarma3でなくなってしまったのですが代わりに何か使うのでしょうか?

それとアーセナルを開けるようにするコマンドってなんでしたっけ・・・
0371UnnamedPlayer垢版2017/01/27(金) 00:20:02.19ID:qSg+g1cU
>>363
亀レスですまんが、移動する的は用意されていないのでスクリプトを書く必要がある

private _vel=(vectorNormalized (AGLToASL (的の名前 modelToWorld[1, 0, 0])) ) vectorMultiply 0.02;
的の名前 setVariable[
0372UnnamedPlayer垢版2017/01/27(金) 00:21:41.51ID:qSg+g1cU
private _vel=(vectorNormalized (AGLToASL (的の名前 modelToWorld[1, 0, 0])) ) vectorMultiply 0.1;
的の名前 setVariable["velocity", _vel];
["適当なID", "onEachFrame", {
    的の名前 setPosASL ((getPosASL 的の名前) vectorAdd (的の名前 getVariable "velocity"));
}] call BIS_fnc_addStackedEventHandler;
0373UnnamedPlayer垢版2017/01/27(金) 00:25:52.61ID:qSg+g1cU
>>371のスクリプトはミスってるので無視してくれ

こう書けば毎フレームごとに的が右に0.1m動いてくれる(ちょっと速いかも)
あとは弾が当たった時に的を後ろに傾けるようにすればそれっぽくなるはず

連投スマソ
0375UnnamedPlayer垢版2017/01/28(土) 23:01:47.84ID:Y268cDR4
>>372の1行目、オブジェクトの位置が[0,0,0]の時以外でおかしくなるよ

こう書けばどこでも右に動くようになる
private _vel=private _vel=(vectorNormalized( (AGLToASL (的の名前 modelToWorld[1, 0, 0])) vectorDiff (getPosASL 的の名前) )) vectorMultiply 0.1;
0376UnnamedPlayer垢版2017/01/28(土) 23:34:50.98ID:O8et5BpS
>>374
名前変更されてたんですか・・・ありがとうございます
0377UnnamedPlayer垢版2017/05/14(日) 18:36:18.49ID:nhm2N1RV
エディタに配置した四角形や楕円のシェイプ内に限定したランダム座標を取得するにはどうしたらいいのでしょう?
四角形はgetMarkerPosやgetMarkerSizeで書けた(回転にも対応できた)。
でもEllipse(楕円)がよくわからないorz
円なら簡単だけど。

もしかしてそういうコマンドがありますか?
0379UnnamedPlayer垢版2017/05/15(月) 00:26:55.37ID:qM3eLMjO
案1
1. getMarkerPosでマーカーの位置を取得
2. getMarkerSizeでマーカーの横幅と縦幅を取得(多分楕円の長辺の長さと短辺の長さが取得できるはず)
3. マーカーの位置にcreateTriggerでトリガーを作る
4. そのトリガーに対してsetTriggerAreaでマーカーの横幅縦幅を使って楕円のエリアを作る(isRectangle=falseにする)
5. 楕円を囲む矩形の座標値の範囲内で乱数を2つ(x座標とy座標の値)生成
6. 生成した乱数と作成したトリガーをinAreaに渡して、trueが返ってきたら楕円の中に入ってる→7へ/falseが返ってくるなら楕円の外→5に戻る
7. 生成した乱数をgetTerrainHeightASLに渡してz座標の値を取得

案2
1. getMarkerPosでマーカーの位置を取得
2. getMarkerSizeでマーカーの横幅と縦幅を取得(多分楕円の長辺の長さと短辺の長さが取得できるはず)
3. 楕円を囲む矩形の座標値の範囲内で乱数を2つ(x座標とy座標の値)生成
4. >>378の方法で楕円内にあるか判定、楕円内なら5へ/そうじゃないなら4へ
5. 生成した乱数をgetTerrainHeightASLに渡してz座標の値を取得

案3
1. この面倒なことを簡単にやってくれるコマンドを探す
0380UnnamedPlayer垢版2017/05/15(月) 01:53:39.82ID:7UH/S8p6
>>379
マジサンクスです。
なるほど、楕円入るまで繰り返すのは割りと楽そうですね!
案3が一番魅力的だけどw
0381UnnamedPlayer垢版2017/05/16(火) 23:11:37.50ID:G6XO/8mJ
ttp://2sen.dip.jp/cgi-bin/upgun/up1/source/up3450.zip
トリガーのテストをしてるのですが、どうもうまくいかないです。
プレイヤーの目の前のトリガーに入ったらhintが出るようにしたいです。

飛行機が飛んでますが、これはウェイポイントのテストためです。
目的地まで行くとちゃんと反応してるのがわかります。

添付してますのでよろしくお願いいたします。
0382381垢版2017/05/17(水) 23:17:22.40ID:XlXRlu6f
トリガーの「アクティブ化」の項目を設定したらちゃんとできました。
昨日はこの「アクティブ化」の欄が全然反応しなかったんだけどな。たまたまかな?
スレ汚しすみませんm(_ _)m
0383UnnamedPlayer垢版2017/06/03(土) 04:42:54.16ID:lEuR/HgJ
失礼します。
Operation Flash Point(ARMA CWA)のヘリ輸送についての質問です。

現在ミッションを作成しており、その内容が「敵基地を攻撃しに行った味方部隊が反撃にあい全滅したため、基地に待機していたプレイヤー小隊が敵基地に報復へむかう」というもので、プレイヤー小隊は敵基地までヘリで移動します。
このとき基地に待機しているEmpty常態のヘリ客室にプレイヤー小隊が、ヘリの乗員として他グループのPilot 2名が乗り込み、離陸させたいのですが、異なる2つのグループを1つのヘリに乗せることができません。
そこでヘリの乗員は前もって搭乗させておき、そこにプレイヤー小隊をGet inさせたのですが、今度は離陸してくれません。

Get inとLoadをシンクロさせて空中待機しているヘリに搭乗させる方法は知っているのですが、ミッションの雰囲気を高めるためにどうしても地上待機状態のもに搭乗、離陸させたいです。。。
拙い質問で申し訳ありません。。。どうかご教示ください。。。
0384UnnamedPlayer垢版2017/06/04(日) 19:18:08.09ID:VFg2h6am
>>383
着陸のさせ方が分からんかったが ひとまず違うグループを搭乗させて離陸させる所までできた
1. まず適当なNameを付けたヘリをEmptyから設置
2. ヘリのパイロットのInitにこれを書く
this assignAsDriver ヘリのName; [this] orderGetIn true;
3. 搭乗するグループのどれか1人のInitにこれを書く
{_x assignAsCargo ヘリの名前;} forEach (units group this); (units group this) allowGetIn true;
4. 搭乗するグループに対してGET INのウェイポイントをヘリ付近に置く
5. ヘリのパイロットに対して(なんでもいいが)TALKのウェイポイントをヘリ付近に置く
6. 置いたウェイポイントをシンクロする
7. ヘリのパイロットに対してMOVEのウェイポイントを行きたい場所に置く
0385UnnamedPlayer垢版2017/06/04(日) 22:54:47.89ID:nSm/u2Gm
いまBohemiaInteractiveのコマンド一覧(https://community.bistudio.com/wiki/Category:ArmA:_Scripting_Commands)を見ながらMissionEditを試行錯誤しているのですが
"crew"(https://community.bistudio.com/wiki/crew)のDescriptionに”Returns the crew (both dead and alive) of the given vehicle.”とありますが、この場合のreturnとはどういう意味でしょうか?

>>384さん
ありがとうございます!
いまの作業が終わり次第試作してみますね!!
0386UnnamedPlayer垢版2017/06/05(月) 00:28:52.13ID:gmEMHt0A
>>385
crewコマンドで取得できるものがthe crew (both dead and alive) of the given vehicle.という意味
運転手に1人と後部座席に2人が乗っているtank1というトラックにcrewコマンドを使うと
_crews_of_track1 = crew track1;
この_crews_of_track1が配列になってるってこと
中身は具体的にはこんな感じ
[運転手のオブジェクト, 1人目の乗組員のオブジェクト, 2人目の乗組員のオブジェクト,]
0387UnnamedPlayer垢版2017/06/05(月) 00:41:42.75ID:xY0AYPLT
>>386さん

なるほど、そうすると例えば
「兵員輸送中、市街地上空で乗員が死亡してしまった(乗客は無事)」
という状況を作りたい時には、市街地上空のMoveのinitialisation欄に

(乗員を表す任意の文字列) = crew (ヘリを表す任意の文字列);
(乗員を表す任意の文字列) setDamage 1;

を記入、となるのでしょうか?
0388UnnamedPlayer垢版2017/06/05(月) 02:35:38.27ID:xY0AYPLT
>>387
すいません、WayPointにInitialisation欄はないですね。。。

市街地上空を覆うようにしてトリガーを
Activation:Anybody/present
Condition:(ヘリを表す任意の文字列) in thislist
On activation:(乗員を表す任意の文字列) = crew (ヘリを表す任意の文字列); (乗員を表す任意の文字列) setDamage 1;

としてみたのですが”Invalid number in expression”と表示されてしまい上手くいきませんでした。
0389UnnamedPlayer垢版2017/06/05(月) 03:52:03.06ID:xY0AYPLT
>>384さん、ありがとうございます。乗員とパイロットがそれぞれ搭乗出来ました。

自分なりにスクリプトを解釈してみたのですが

this assignAsDriver ヘリのName; [this] orderGetIn true;
⇒この人はヘリの操縦士として指定されますよ; この人は搭乗指示を出しますよ;

{_x assignAsCargo ヘリの名前;} forEach (units group this); (units group this) allowGetIn true;
⇒_xはヘリの乗客として指定されますよ、ただし_xとはこのグループの各員のことですよ; このグループの各員は搭乗を許可されますよ;

という感じでしょうか。

試しにグループのGetInとパイロットのTalkのSynchronizeを解除したところ、パイロットのみが搭乗しました。
ですから"(units group this) allowGetIn true"は
「このグループの各員は(パイロットがGetInしたら)搭乗を許可されますよ;」という条件付きの文だとわかりました。

それならGetInをTalkとではなく、なにか他のトリガーとSynchronizeさせれば、条件を変えられるのではないかと考えました
そこで試しに「特定のユニットが破壊されたら起動する」というトリガーとSynchronizeさせてみましたが、ユニットが破壊されてもグループは搭乗しませんでした。
0390UnnamedPlayer垢版2017/06/05(月) 13:30:49.69ID:xY0AYPLT
>>386さん、スレVol.2の173さんを参照しながら試行錯誤してみたところ解決しました。

市街地にトリガーを配置、HeliAに上空を通過させる。
Activation: anybody/present
Condition: HeliA in thislist
On Condition: "_x setdamage 0" forEach crew HeliA

でいけました。どうもありがとうございます。
0391UnnamedPlayer垢版2017/06/05(月) 13:43:02.15ID:xY0AYPLT
>>386さん
crewは乗員だけでなく乗客も含むのですね、勘違いしてました。すいません。
0392UnnamedPlayer垢版2017/06/06(火) 19:56:09.09ID:Ew26ZO69
>>389
おおよそその解釈で合っています

Synchronizeだけ解釈が間違っているので説明します

OFPの動作がよく分かっていないので私も間違っているかもしれないですが
・離陸しようとしているヘリに味方グループは乗り込む指示を出せません
・逆に離陸しようとしていなければ指示を出せます
・パイロットはMOVEのウェイポイントが設定されると離陸しようとする
つまり味方グループのGET INが完了するまでパイロットにMOVEのウェイポイントを設定しなければいいということです

そこで登場するのがSynchronizeです
GET INとTALKをシンクロしているのは
・ヘリに乗り込むことを完了する
・TALKを完了する(無意味ですぐ完了するがorderGetInでヘリには乗り込む)
これらの完了を同期するためです
同期するのでパイロットは味方グループがヘリに乗り込むのを待機することができます
0393UnnamedPlayer垢版2017/06/07(水) 19:47:45.55ID:CwohDGpB
>>392さん、なるほど、搭乗部隊がGetIn指示を出してからパイロットが乗り込むようにしてあるのですか、逆ですね。

パイロットと増援部隊がヘリに乗り込んで来てくれるようにしてみました。
http://ux.getuploader.com/OFP_edit/download/1/Reinforce-test.zip 👀
Rock54: Caution(BBR-MD5:669e095291445c5e5f700f06dfd84fd2)
0394UnnamedPlayer垢版2017/06/07(水) 20:39:56.15ID:BIz2ZG4l
ウェイポイントで質問です。
エディタ上のウェイポイント設定で「アクティブ時」のところにコードを書くことによって、任意の処理を実行できますよね。
これを同じことをスクリプトでやりたいのですが、よくわかりませんでした。

https://community.bistudio.com/wiki/Category:Command_Group:_Waypoints
↑を見ても「アクティブ時にどうこうする」というコマンドが無い感じです。
エディタでできることはスクリプトでもできるはずだと思ってたのですが。

なおsetWaypointScriptコマンドは実行したいスクリプトファイルを指定するだけなので、エディタの「アクティブ時」とはちょっと違うと思います。
どなたか分かる方がおられたらヘルプミー
0396UnnamedPlayer垢版2017/06/07(水) 23:34:53.18ID:BIz2ZG4l
Statementでしたか!
声明とか発言って意味なんですね。英語力0の私には難しい
このコマンドでチャレンジしてみます。
ありがとうでした!
0397UnnamedPlayer垢版2017/06/08(木) 20:00:17.22ID:EwY8795i
すいません、Vol.5 172さんによる「他グループユニット同士を縦列行進させる」スクリプトで

_ldr = _this select 0
_chsm1 = _this select 1

#Status
?(not(alive _ldr)) : goto "EndScript"
?(not(alive _chsm1)) : goto "EndScript"
_dis1 = _ldr distance _chsm1
?(_dis1 >= 2) : goto "Return"
?(_dis1 < 2) : goto "Wait"

#Return
_lpos = getPos _ldr
_lposx = _lpos select 0
_lposy = _lpos select 1
_chsm1 move _lpos
~1
goto "Status"

#Wait
~1
goto "Status"

#EndScript
Exit

というものがあるのですが
_ldr = _this select 0
_chsm1 = _this select 1
とはそれぞれどういう意味でしょうか?
自作ミッションに組み込ませていただこうと思うのですが、_this部分に何を代入すれば良いのかわかりません。
0398UnnamedPlayer垢版2017/06/10(土) 01:21:48.93ID:D+WZ2pnw
>>397
_thisはスクリプトや関数に渡された引数が入っている配列(ただの変数にもできる)
https://community.bistudio.com/wiki/this

例えばそのスクリプトをfollow_leader.sqsというファイルに書いておく
それをこんな感じで呼び出す
{[group_leader, _x] exec "follow_leader.sqs";} forEach (units group group_leader);

そうするとfollow_leader.sqs側では_thisの配列の中身はこうなる
[group_leader, group_leaderのグループのユニットのオブジェクト]


ここで聞くのも良いけど
Wikiのほうが色々と説明は詳しいからそっちで調べたほうが良いかも
特にコマンドの説明とかはまずWikiを見たほうが良い
コマンドならここに全部載ってる
https://community.bistudio.com/wiki/Category:Scripting_Commands
0399UnnamedPlayer垢版2017/06/10(土) 18:12:13.38ID:l9JCifjo
>>398
なるほど!!execで実行するsqsファイル内のスクリプトだったんですね!!
[] exec で[]内が引数になるのは知りませんでした。_thisでwiki内を検索するべきでしたね。すいません。
0400UnnamedPlayer垢版2017/06/10(土) 20:18:11.87ID:l9JCifjo
>>392さん
Editを初めて一週間、なんとかsqsファイルを使えるようになりました。
以前UPしたのはEditor内のTrigger複数を使ったものだったのですが、外部スクリプト?を使って実行してみました。

攻撃部隊(GroupAttackA)が全滅したため、パイロット2名(PilotA,PilotB,GroupPilotA)と増援部隊(GroupReinforcementA,9名)がEmptyのヘリ(HeliA)に乗り込み、敵基地に報復を仕掛ける。
HelipadA ⇒ 増援部隊搭乗場所 HelipadB ⇒増援部隊降機場所 ObjectReinforcementA ⇒降機後に増援部隊が向かう場所。目印としてObjectを置いた。


"Reinforcement.sqs"
#CheckNumber
?((count (units GroupAttackA)) > 0): goto "CheckNumber"
?((count (units GroupAttackA)) < 0): goto "Reinforce"

#Reinforce
PilotA assignasdriver HeliA
PilotB assignasgunner HeliA
(units GroupPilot) ordergetin true
{_x assignascargo HeliA} foreach (units GroupReinforcementA)
(units GroupReinforcementA) ordergetin true

#CheckNumber1
?((count (crew HeliA)) - 2 < (count (units GroupReinforcementA))): goto "CheckNumber1"
?((count (crew HeliA)) - 2 >= (count (units GroupReinforcementA))): goto "Move"

#Move
(driver HeliA) move [getpos HelipadB select 0, getpos HelipadB select 1]

#CheckPos
_dis = HeliA distance HelipadB
?(_dis > 100): goto "CheckPos"
?(_dis <= 100): goto "Getout"

#Getout
(units GroupReinforcementA) allowgetin false
(units GroupReinforcementA) ordergetin false
HeliA land "Get Out"

#CheckNumber2
?(((count (crew HeliA)) - 2) > 2): goto "CheckNumber2"
?(((count (crew HeliA)) - 2) < 2): goto "Move1"

#Move1
(driver HeliA) move [getpos HelipadA select 0, getpos HelipadA select 1]
GroupReinforcement move [getpos ObjectReinforcement select 0, getpos ObjectReinforcement select 1]

#CheckPos
_dis = HeliA distance HelipadA
?(_dis > 100): goto "CheckPos"
?(_dis < 100): HeliA land "Land"
Exit

が、#Move1が実行されたところで、PilotAとGroupReinforcementAのリーダーがそれぞれ無限に移動指示を出し、しかもその場にとどまるようになってしまいました。
0401UnnamedPlayer垢版2017/06/10(土) 20:39:55.21ID:l9JCifjo
>>400
自己解決しました。

#Move1
(driver HeliA) move [getpos HelipadA select 0, getpos HelipadA select 1]
GroupReinforcementA move [getpos ObjectReinforcementA select 0, getpos ObjectReinforcementA select 1]

#CheckPos1
_dis = HeliA distance HelipadA
?(_dis > 100): goto "CheckPos1"
?(_dis <= 100): HeliA land "LAND"
Exit

#Move ⇒ #Move1
最初の攻撃部隊人数確認のフェーズまで戻っていたため無限に移動支持が出されていた。

GroupReinforcement ⇒GroupReinforcementA
記入ミス

?(_dis < 100): HeliA land "LAND"⇒?(_dis <= 100): HeliA land "LAND"
イコールがないとヘリパットの周りをぐるぐる回るおもしろ動作をする。

....っが!最後の最後でヘリが着陸してくれない!
なぜか地面ギリギリでホバリングしてしまう
整地のいいところにヘリパット移しても変化なし
0402UnnamedPlayer垢版2017/06/11(日) 11:20:16.98ID:rWumQ04v
AAFとFIAはどちらもIndependentサイドになっているようですが、このファクション同士を敵対関係にするにはどうしたらいいのでしょう?
AAF setFriend [FIA, 0]ではだめっぽいし。
0403UnnamedPlayer垢版2017/06/11(日) 14:56:11.63ID:HquaURGf
単純なのは、陣営がgroupのトップになるの利用する方法。
OPFORのユニットでも、BULFORのgroupに入れれば陣営はBULFORに変わる。
0404UnnamedPlayer垢版2017/06/11(日) 18:14:54.63ID:rWumQ04v
ありがとう。やってみる!
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況