atcのヘルプ・マニュアル
日本語 英語
atc --help
man atc
ATC(6) ATC(6)
名称
atc - 空港管制官ゲーム
書式
atc -[u?lstp] [-[gf] game_name] [-r random seed]
解説
atc は 1 年あたり何百万人という旅行者の命を危険にさらすことなく飛行機の
交通を制御するという神経をすり減らす任務における技量を試します。責任 者
で あるあなたは管制空域と滑走路の内や外へジェット機やプロペラ機を指示し
て飛ばさなければなりません。飛行機のスピード (画面更新の間隔) と登場 頻
度は選んだ空域の難しさによって決まります。
オプション
-u 使用方法を表示して終了します。
-? -u と同じです。
-l 使用可能なゲームのリストを表示して終了します。最初に表示される
ゲームの名前は default ゲームです。
-s 得点リストを表示します (以前は上位 10 人のリストでした)。
-t -s と同じです。
-p atc は、自分だけが使うファイルがあると思っている専用のディレ ク
ト リのパスを表示します。このパスはプログラムを再インストールす
るまで使われ続けます。
-g game 指定されたゲームを実行します。名前を挙げたゲームが -l オプシ ョ
ン で表示されるものの中にない場合には、default ゲームが実行され
ます。
-f game -g と同じです。
-r seed 乱数のシードを設定します。このフラグを用いるのはいかがなもの か
と思います。
ゴール
atc におけるあなたのゴールは可能な限りゲームを長く続けることです。他の
プレイヤの時間を破ること以外には、勝利の状態はありません。あなたがし な
け ればならないのは、滑走路から飛行機を (高度を上げるように指示すること
によって) 離陸させること、滑走路に飛行機を (滑走路のちょうど真上で高 度
が 0 となるように指示することによって) 着陸させること、そして出口 (exit
point) の外へ飛行機を送り出すことです。
いろいろなことがゲームの終わりを引き起こします。それぞれの飛行機は目 的
地 (「情報領域」参照) を持っており、飛行機を違う目的地へ送るとエラーに
なります。飛行機は燃料切れになることもありえますし、衝突することもあ り
え ます。衝突は、3 次元のどれかの方向で隣り合った場合であると定義されて
います。目的地以外の出口から飛行機が空域を離れるのも同じようにエラー で
す。
得 点は無事だった飛行機の数の順番に並べられます。その他の統計は単に楽し
みのために提供されているだけです。他のプレイヤよりも時間をかけたこと に
対するペナルティは (同点の場合を除き) ありません。
ゲームの中断は許されません。talk メッセージを受けたとしても、です。空港
管制官が電話に呼び出されるなんて、そんなことがいつありましたっけ?
表示
あなたが atc を走らせている端末に依存しますが、画面は 4 つの部分に分 割
さ れます。ゲームの端末ドライバの部分は変更可能なように設計されているの
で、あなたが遊んでいる版によっては表示形式に違いがあるかもしれないこ と
を強調しておいたほうがよいでしょう。このマニュアルの記述は ASCII 版のゲ
ームに基づいています。しかしながら、ゲームのルールや入力形式には変更 は
ないはずです。 Control-L は混乱しているかもしれない画面を描き直します。
レーダ
1 番目の部分はレーダ画面で、飛行機の相対位置や滑走路、標準の出入
口、レーダビーコン、あなたが飛行機を誘導するための単なる目安でし
かない「線」が表示されています。
飛行機は英字 1 文字と高度で表されます。高度の数字が 1 桁の数字で
あれば、それは数千フィートを表しています。プロペラ機とジェット機
との間には多少の区別がなされます。ASCII 端末では、プロペラ機は大
文字で、ジェット機は小文字で表されます。
滑走路は数字と飛行機が滑走路へ着陸する際に侵入しなければならない
方向を示す印とで表されます。ASCII 端末では、この印は、’^’, ’>’,
’<’, ’v’ のどれか 1 つで、それぞれ北 (0 度)、東 (90)、西 (270)、
南 (180) を表しています。飛行機はこの方向に離陸もします。
ビーコンは丸またはアスタリスクと数字で表されます。これらの目的は
飛行機のパイロットが簡単に場所を参照できるようにすることです。こ
のマニュアルの「入力」の項にある「delay コマンド」を参照してくだ
さい。
入/ 出口はレーダ画面の枠の上に数字として表示されます。飛行機はこ
れらの地点から予告なしに入ってきます。これらの地点はそれらから連
想される方向を持っており、飛行機は常にその方向から領域に入ってき
ます。ASCII 版の atc では、この方向は表示されません。ゲームが 進
むにつれてこの方向が明白になります。
やってくる飛行機は常に同じ高度 7000 フィートで入ってきます。飛行
機はうまく入/出口を通って去っていくには、9000 フィートで飛んでい
なければなりません。 (現在のところ) 飛行機が領域から飛び去る時に
は、どの方向へ飛んでいっても構いません。
情報領域
2 番目の表示領域は情報領域で、時間 (開始からの更新回数) と領域の
外から無事に誘導した飛行機の数が表示されています。その下にあるの
は今飛行中の飛行機のリストと、 1 行開けて、地面 (滑走路) にい る
飛行機のリストです。それぞれの行は飛行機の名前と現在の高度、アス
タリスクがついている場合燃料が少ないことを、飛行機の目的地、そし
て飛行機の現在のコマンドが書かれています。高度の変更はコマンドと
はみなされないために表示されません。以下に示すのは情報表示行のあ
りうる例です:
B4*A0: Circle @ b1
g7 E4: 225
1 番目の例は 4000 フィートを飛行中の ’B’ と名付けられたプロペラ
機を表しています。この飛行機は燃料が不足しています (’*’ に注 目)
。この飛行機の目的地は 0 番滑走路です。次のコマンドは 1 番ビーコ
ンに着いたら旋回することを要求しています。 2 番目の例は、 4 番出
口 を目指す、高度 7000 フィートで ’g’ という名のジェット機です。
この飛行機はちょうど今 225 度方向 (南西) へ回転を実行している と
ころです。
入力領域
3 番目の表示領域は入力領域です。あなたの入力は、ここに表示されま
す。詳しくはこのマニュアルの「入力」の項を参照してください。
作者領域
この領域は、称賛に値するのは誰かを示すクレジットを知らせるためだ
けに使われています :-)。
入力
こ のゲームにはコマンド補完インタフェースが組み込まれています。いつでも
、’?’ を入力すれば可能な入力文字が表示されます。バックスペース (あな た
が 使用している消去文字) を入力すると前に戻り、コマンドの最後の部分を消
します。コマンドが完成したら、リターンを押せば入力されます。意味上の チ
ェックはすべてこの時に行なわれます。もし 1 つもエラーが見つからなかった
ら、コマンドは適切な飛行機に送られます。チェックの段階でエラーが見つ か
った場合、間違った文に下線が引かれ、(うまくいけば) 説明のメッセージがそ
の下に表示されます。
コマンド構文は 2 つの部分に分けられます: 即時のみと 延期可能コマンド で
す 。 即時のみコマンドは次の更新で実施されます。 延期可能コマンドも次の
更新で実施することができますが、付加的な Delay コマンドと呼ばれる述語が
後ろについている場合は例外です。
下 の 表において、構文 [0-9] はいずれかの 1 つの数字を意味し、
は
’s’ キーの周りのキー、つまり ‘‘wedcxzaq’’ にあてはまります。絶対参照 に
お いては、’q’ は北西すなわち 315 度にあてはまり、’w’ は北すなわち 0 度
にあてはまります。相対参照においては、’q’ は -45 度すなわち「左折 45 度
」にあてはまり、’w’ は 0 度すなわち「方向に変更なし」に当てはまります。
すべてのコマンドは飛行機を表す文字で始まります。これはコマンドの受け 取
り手を示します。大文字小文字は無視されます。
即時のみコマンド
- a Altitude:
飛行機の高度 (と離陸) に作用します。
- [0-9] Number:
与えられた高度 (千フィート単位) に行きます。
- c/+ Climb:
相対高度を変更 (上昇) します。
- [0-9] Number:
千フィート単位での高度差です。
- d/- Descend:
相対高度を変更 (下降) します。
- [0-9] Number:
千フィート単位での高度差です。
- m Mark:
強調モードで表示します。コマンドは普通に表示されます。
- i Ignore:
強 調表示をとりやめます。もしコマンドがない時にはコマンド
はダッシュの線で表示されます。
- u Unmark:
ignore と同じですが、延期されたコマンドが処理されると飛行
機 はマークされます。飛行機の行程のすべてでなく一部の間忘
れたい時に便利です。
延期可能コマンド
- c Circle:
飛行機に旋回させます。
- t Turn:
回転します。
- l Left:
反時計回りに回転します (デフォルトでは 45 度です)
。
- Direction:
反 時 計回りに与えられた角度回転します。 0
度は回転無しを表します。-45 度反時計回り回
転は 45 度時計回り回転です。
- r Right:
時 計回りに与えられた角度回転します (デフォルトで
は 45 度です)。
- Direction:
turn left と同じです。
- L Left 90:
90 度反時計回りに回転します。
- R Right 90:
90 度時計回りに回転します。
- Direction:
与えられた絶対羅針盤方向へ回転します。最も近い 回
転が選ばれます。
- t Towards:
ビ ーコン、滑走路または出口へ向かいます。回転は推
測だけで行われます。
- b/* Beacon:
ビーコンへ向かって回転します。
- [0-9] Number:
ビーコンの番号を指定します。
- e Exit:
出口へ向かって回転します。
- [0-9] Number:
出口の番号を指定します。
- a Airport:
滑走路へ向かって回転します。
- [0-9] Number:
滑走路の番号を指定します。
延期コマンド
延期 (a/@) コマンドはどの 延期可能コマンドに対しても付けることができ ま
す 。延期コマンドは飛行機が特定のビーコンに着いた時 (将来のバージョンで
は他の物体に着いた時も) に行動を起こすような指示を管制官が出せるよう に
します。
- a/@ At:
与 えられたビーコンに飛行機が着いた時に与えられた延期可能
なコマンドを実行します。
- b/* Beacon:
これは拡張できるようにするための余分です。
- [0-9] Number:
ビーコンの番号
マーク、マーク取り消し、そして無視
飛行機は空域に入ると マークされます。このことは飛行機はレーダ画面では強
調 表示されることを意味しています。飛行機は マーク消去または 無視される
こともあります。 マーク消去された飛行機は強調なしモードで表示され、ダッ
シ ュの行が情報領域のコマンドフィールドに表示されます。飛行機は mark コ
マンドが発行されるまでこの状態でい続けます。何か他のコマンドが発行さ れ
ても、コマンドが完了するとコマンド行はダッシュの行に戻ります。
無視された飛行機は延期可能なコマンドが処理された際に、自動的に マークさ
れた状態に切り替えられる点を除き、マーク消去された飛行機と同じように 扱
わ れます。この機能はまだ完全には飛行道程が設定できていない飛行機を、少
しの間忘れていたい時に便利です。
コマンド、マーク付け、マーク消去、そして無視のすべては次の更新の始め か
ら 効果が現れます。飛行機がすぐに強調なしモードに移らないからといって驚
かないでください。
使用例
atlab1 a: turn left at beacon #1
a へ: ビーコン #1 で左に旋回せよ
cc C: circle
C へ: 旋回せよ
gtte4ab2 g: turn towards exit #4 at beacon #2
g へ: ビーコン #2 で出口 #4 に向けて回転せよ
ma+2 m: altitude: climb 2000 feet
mへ: 高度変更: 2000 フィート上昇せよ
stq S: turn to 315
Sへ: 315°方向へ旋回せよ
xi x: ignore
xへ: 強調表示を取り止めよ
その他の情報
ジェット機は更新の度に移動し、プロペラ機は 1 度おきの更新毎に移動します
。
すべての飛行機は 1 回の移動で最高 90 度曲がれます。
飛行機は 7000 フィートで入ってきて、9000 フィートで出ていきます。
滑走路の上以外の場所で飛行機が高度 0 で飛ぶと墜落します。
滑走路の上で待っている飛行機ができるのは離陸 (高度を上げる) のみです。
新しいゲーム
Game_List ファイルには現在利用可能な競技場が記録されています。競技場を
記述した新しいファイルを「利用可能」にするためには、このファイルに、 新
し いファイルの名前を書く必要があります。プレイヤがこのファイルに書かれ
ていないファイルを指定した場合、彼の得点は記録されません。
競技場記述ファイルは 2 つの部分に分けられます。1 番目の部分は定義部です
。 ここでは、4 つの調節可能なゲーム・パラメータが設定されなければなりま
せん。これらの変数は以下の文法で設定されます:
変数 = 数;
変数は以下のうちの 1 つです: update, 強制更新の間隔の秒数を指定します。
newplane, 新しい飛行機が入ってくる間隔の (だいたいの) 更新回数を指定し
ます。 width, 競技場の幅を指定します。そして height, 競技場の高さを指定
します。
競技場記述ファイルの 2 番目の部分は出口やビーコン、滑走路、線の場所を記
述します。文法は以下の通りです:
beacon: (x y) ... ;
airport: (x y 方向) ... ;
exit: (x y 方向) ... ;
line: [ (x1 y1) (x2 y2) ] ... ;
ビーコンに対しては、(括弧でくくられた) 単純な x, y 座標組が用いられます
。 滑走路と出口には 3 番目の値、方向を示す wedcxzaq のうちの 1 つが必要
です。滑走路に対しては、これは飛行機が離陸または着陸しなければならな い
方向で、出口に対しては、これは飛行機が競技場に 入る時の方向です。これは
直観的ではないように見えるかもしれませんが、出口の方向には何の制限も な
いので、これで適切なのです。線は終端を指定するのに 2 つの座標組を必要と
するため、少し違います。これらの終端は角括弧で囲まれなければなりませ ん
。
すべての文はセミコロン (;) で終わります。複数項目文は並べて書きます。そ
れぞれの定義はどの項目の文よりも前に、1 度だけ行なわれなければなりま せ
ん 。コメントはハッシュ (#) 記号より始まり改行で終了します。座標は 0 か
ら始まり、 width-1 と height-1 で終わります。出口のすべての座標は枠上に
置 く必要があり、すべてのビーコンと滑走路は枠よりも内側に置く必要があり
ます。線の終端は競技場内のどこでもかまいませんが、線が横か縦か ちょうど
斜めになる必要があります。
競技場ファイル例
# これは default ゲームです。
update = 5;
newplane = 5;
width = 30;
height = 21;
exit: ( 12 0 x ) ( 29 0 z ) ( 29 7 a ) ( 29 17 a )
( 9 20 e ) ( 0 13 d ) ( 0 7 d ) ( 0 0 c ) ;
beacon: ( 12 7 ) ( 12 17 ) ;
airport: ( 20 15 w ) ( 20 18 d ) ;
line: [ ( 1 1 ) ( 6 6 ) ]
[ ( 12 1 ) ( 12 6 ) ]
[ ( 13 7 ) ( 28 7 ) ]
[ ( 28 1 ) ( 13 16 ) ]
[ ( 1 13 ) ( 11 13 ) ]
[ ( 12 8 ) ( 12 16 ) ]
[ ( 11 18 ) ( 10 19 ) ]
[ ( 13 17 ) ( 28 17 ) ]
[ ( 1 7 ) ( 11 7 ) ] ;
関連ファイル
フ ァイルは特別なディレクトリに保存されています。このパスを表示させるに
は「オプション」を見てください。
/var/games/atc_score得点が保持されます。
/usr/share/games/atc/Game_List利用可能なゲームのリストです。
作者
Ed James, UC Berkeley: edjames@ucbvax.berkeley.edu, ucbvax!edjames
数年前に何か見知らぬ PC のために書かれたゲームについて誰かが記述した 全
体的な特色を、このゲームは元にしています、たぶん。
バグ
あなたがやめてから画面が描き直されることがときどきあります。
こ のゲームを開発している間に更なる curses のバグが見つかりました。もし
あなたの curses ライブラリの clrtobot.o のバージョンが 5.1 またはそれ以
前であれば、入力ウィンドウでの後退動作による消去に問題があるでしょう。
3rd Berkeley Distribution May 31, 1993 ATC(6)