動的パラメータバトルシティータンクゲームシリーズ5-学習JAVAの楽しさを発見します

動的パラメータバトルシティータンクゲームシリーズ5-学習JAVAの楽しさを発見します

序文

Benpianは、より複雑な動的パラメータでのRobocodeが含まれている、完全にタンクの動作の変化を理解することができ、おなじみの戦車の重要な指標は、書き込みの良いタンクの固体の理論的基礎を築きます。

ライフパラメータ

人生はポイントではなく、また、我々は戦いを失っ表すときの戦いを通して、命の数で最も重要な点は、我々は、それのためにすべて存在しています。我々は()関数getEnergyで私たちのロボットのヒットポイントを取得することができます。

1.ロス:衝突損失:私たちの戦車が壁にぶつかる、または他の戦車と衝突したが、人生の価値の一部を失うことになる。ヒットの損失を:私たちは弾丸が当たった、当然のことながら、人生の価値の損失となり、放射損失:私たちは、発射弾丸は、健康を失うことになります。

2.取得は:他のタンクを打つだけ弾丸を使用して、人生の値を取得します。

弾丸パラメータ

弾丸の活力に大きな影響は、私たちの弾丸のそれぞれが危害を使用するので、箇条書き、そのエネルギー値の正確な計算が非常に重要になります。

*弾丸のエネルギー:

弾丸エネルギー関数getPower()によって得られます。これは、より大きい又は0.1、3以下です。*弾丸の速度:

各弾丸が火災前にモバイル戦略独自の速度を持っていますが、敵に対処するのに役立ちます。そして、そのエネルギーについての弾丸スピード:スピード= 20から3 *パワー。

11 <=弾丸速度<= 19.7:0.1〜3の間のエネルギー範囲以来、我々は、弾丸の速度範囲を得ます。

パラメータバレル

バレルから発射された弾丸が、銃身方向が弾丸の方向を決定し、バレルは、熱放出弾丸を決定します。バレルは、加熱しますか?多くの人々は、はい、非常に驚​​かれることでしょう。本当の戦争は、それを加熱する私たちの銃でも同じではないでしょうか?Robocodeのが本当の戦場ではない、戦争はRobocodeので適用することができる知識を使用することができます。私たちの戦争静的パラメータの説明の方向から上記のパラメータを見ることができます。私たちは、バレルの他のパラメータを見てみましょう:

*回転速度:各期間におけるバレルの回転速度= 20°/フレーム(フレーム)

*バレル熱:我々は火、決定されたエネルギーを開いたときにするとき、火災の弾丸によって発生する熱のバレル:カロリー= 1(火力/ 5)、我々はときにのみ、一度に熱砲身を取得するには、関数getGunHeat()を使用することができますゼロに等しい同一のgetGunHeatは、我々は再び弾丸を起動することができます。今、あなたは理由と弾丸がまだ発射できないことを私たちの生活の中で、なぜ、時にはゼロ点を理解できますか?過熱バレル!*冷却度:冷却度の熱をそこに持っているもちろん、私たちは解雇されることはありませんバレルの冷却なし。冷却速度の戦闘システムのデフォルト設定は、パラメータ値getGunCoolingRateを得るために0.1 /ダニ(期間)、我々()関数です。また、システムを通じて冷却速度を設定することができます。> Rules->ガン冷却速度 - Battle->新規を選択します。

レーダーパラメータ

レーダーは、戦争中に私たちの目には、それは見て私たちに敵の一挙一動、Zhiyizhibiはできません戦い、李を伝えることができます!*回転速度:時間当たりのレーダー45度の回転速度。すなわち、45度/フレーム*スキャンエリア:

レーダーを走査する扇形であり、終了位置までの長さの開始位置が約1200です。限り、私たちは目を通して画面領域を拡大し、これを推定することができますよう。*スキャン順:ようにスキャンした壁データ、目標と。これらは、オブジェクトをスキャンする最後のレーダーに最も近いオブジェクトから、走査距離に配置されています。

タンクパラメータ

さて、戻って私たちのタンク自体まで。のは、それがパラメーター何をいくつか見てみましょう。*転送速度:我々のロボットの最大速度(速度)8、関数getVelocity()は、我々のロボットの現在の速度を返します。

*加速/減速我々は物理学加速/減速見つけるための方法、および知識を関連するいくつかの式を見てみましょう前。我々は、Sは距離で設定し、Vtが終端速度であり、Voは初期速度であり、tは時間であり、Aは、以下のように得られた加速度である:速度で変位式S = VOT + AT2 / 2速式のVt = Voの+ - 変位製剤Vt2と-Vo2が図2aの平均速度式を= V =(VT +電圧Vo)/ 2 = S / T加速式A =(VT-電圧Vo)/ T

我々は、Robocodeの加速/減速を見:加速度画素(ピクセル)/フレーム枠、減速2ピクセル/フレーム。最大速度に停止から我々ロボットは、8の時間期間の式所要時間(getTime)= 8/1、すなわちによって決定することができれば、非常に興味深い計算は、我々はまた、それに応じてより適切かつ有用な計算しますデータ。*回転速度:ロボットの回転速度と現在の速度に依存し、すなわち、回転速度= 10から0.75 * getVelocity()


さて、ここで自分自身でこの問題は、私はゲームをプレイするが、現在はJAVAを学ぶために一緒に、ゲーム陳を記述する必要はありません!



おすすめ

転載: blog.csdn.net/weixin_34401479/article/details/91397376