コムサイトの攻略
以下、2CH より
30 :NAME OVER:2006/12/30(土) 12:45:15 ID:PLm2f/LT
COMSIGHT 1987
タンクタイプ シールドの効き方向
CIRC 円状均等
MASH 前後楕円状
SIEVA 前方扇状
AGLEX 前後左右突出
VOA 斜め四方突出
HOGS 前後突出
ZAR 左右突出
WEITZ 後方扇状
44 :NAME OVER:2007/02/05(月) 19:34:27 ID:???
とりあえず簡易ヘルプ
1マス=8座標です フィールド全16×16マス
変数名は1文字かそれに数字をつけたものまで 例 C=0:D2=50
IF (A=1 AND B=2) THEN GOTO 200 もしAが1でBが2なら200行に飛ぶ ORなら又は
FOR I=1 TO 10:PRINT"Hello":NEXT 10回繰り返す
BEAM 1 エネルギー1のビームを打つ
MISSILE 16,32,1 座標(X16,Y32)へエネルギー1のミサイルを打つ
TURN 1 右へ回転 TURN -1 左へ回転
MOVE 4 前へ4マス進む MOVE -1 後ろへ1マスバック
SEARCH 64 半径8マス(掛ける8で64に)をサーチしてレジスタ値をセット 通常こう書く これが最大
A=ABS(-7) 絶対値 符号を取って7を返す
A=SGN(X) Xがマイナスなら-1 0なら0 プラスなら1を返す
RUN シュミレーションモードで実行 LIST リスト表示
RENUM 100 行番号をそろえる
レジスタ SEARCH して圏内なら敵と自分の値を返す
@X @Y 敵座標を示す 左と後ろはマイナス 圏外の時は最寄の壁までの距離
@R 距離を示す 圏外なら0になる(重要)
@D 相手の向き 値=(同じ0 左16 向い32 右48) 上級まで使わず
自分の @ME エネルギー @MS シールド @MD ダメージ 最初は@MEぐらいしか使いません
相手の @EE エネルギー @ES シールド @ED ダメージ それぞれ最大値(30000 100 100)
これだけ あとは使わない
36 :NAME OVER:2006/12/31(日) 07:11:05 ID:???
検索(最大8の平方)圏外で@R(距離)=0の時は
@X@Yは敵の位置でなく近くの外壁までの距離(1マス8)がわかるので
ただ中心に行くだけのプログラムは次のようになる
10 SEARCH 64
20 A=-SGN(@X)
30 MOVE 8*-SGN(@Y)+@Y/8
40 TURN A
50 MOVE 8*-SGN(@X*A)+@X*A/8
60 STOP
@Dは相手の向きが反時計回りに90度=16でわかるので
相手が進む方向の予測に使えるかも
X軸向き -1左か1右か0縦 = (@D/16 MOD 2)*SGN(@D-32)
Y軸向き -1下か1上か0横 = NOT(-@D/16 MOD 2)*SGN(@D-16)
式だけ書くとわかりにくいけど
38 :NAME OVER:2007/01/21(日) 18:59:31 ID:???
動作にクロック消費数がある
代入式 論理演算 = 0
GOTO GOSUB RETURN IF FOR NEXT = 1
SEARCH = 1
MISSAILE = 1
BEAM = 1
MOVE = 8
TURN = 16
論理演算式を多用した方が早く強くなる
関連タグ