Wisderのゲームで脳トレ

ゲーム歴31年目の管理人が、ユーザー視点から余暇に楽しめるおすすめゲームを紹介しています。買うゲームに迷ったときに参考にして下さると幸いです。VAZIAL SAGA制作元StudioGIW最新作★キルツヴァルド★情報は随時更新!
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
1+1+1+1=4

2+2=4

どれも答えが一緒なら…

 
カルネージハート初心者の方へ3

 

 


カルネージハートポータブル(CHP)のCPUは容量が大きくても結果として同じ行動をとるのであれば少ないチップで組めるにこしたことはありません。チップ配置数の節約は処理速度の向上にも繋がるからです。

 

 今回は例をあげて説明します。効率的かどうかは別として、仮に以下の2点の行動を必ず行うプログラムを作るとします。

?接近中の敵弾の存在を原則極座標90゜ごとに判断する。

?接近している弾があれば接近角度と直角の角度に50%の割合で左右(前後)に回避する。

 

プログラム例1

敵弾接近判断【前方90゜】 Y→ 乱数分岐【50%】 Y→ 左方向移動

                        N↓

       N↓            右方向移動

 

敵弾接近判断【右方90゜】 Y→ 乱数分岐【50%】 Y→ 前方向移動

                        N↓

       N↓            後方向移動

 

敵弾接近判断【後方90゜】 Y→ 乱数分岐【50%】 Y→ 左方向移動

                        N↓

       N↓            右方向移動

 

敵弾接近判断【左方90゜】 Y→ 乱数分岐【50%】 Y→ 前方向移動

                        N↓

       N↓            後方向移動

 

他の行動へ

 

このプログラムは時計方向に順番に敵弾接近を調べて、接近している敵弾があれば回避するというプログラムです。各方向に【判断】、【乱数選択】、【回避方向1】、【回避方向2】と4つのチップを使っているので、敵弾索敵回避の行動で16個のチップを使用することになります。

もう少し減らしてみましょう。




 

プログラム例2

敵弾接近判断【前方90゜】Y→ 乱数分岐【50%】 Y→ 左方向移動

                    ↑          N↓

       N↓           ↑      右方向移動

                    ↑

敵弾接近判断【後方90゜】Y↑

                  

       N↓        

 

敵弾接近判断【右方90゜】Y→ 乱数分岐【50%】 Y→ 前方向移動

                    ↑         N↓

       N↓          ↑      後方向移動

                    ↑

敵弾接近判断【左方90゜】Y↑

                  

       N↓         

 

            他の行動へ

 

 

索敵する方向の順番を前後左右にしたことで回避方向が一緒のチップが隣接し、乱数、回避のチップを6個減らし、10個にすることが出来ました。

あと少し減らしてみましょう。




 

プログラム例3

敵弾接近判断【全方向360゜】 N→ 次の行動へ

                

       Y↓        

              

敵弾接近判断【前方90゜】Y→ 乱数分岐【50%】 Y→ 左方向移動

                    ↑    N↓

       N↓          ↑   右方向移動

                    ↑

敵弾接近判断【後方90゜】Y↑

                  

       N↓         

 

乱数分岐【50%】 Y→ 前方向移動

 

    N↓

 

       後方向移動

 

最初に全方向索敵して、接近弾があるときだけ次に進みます。このとき調べるのは前後(、または左右)だけです。前後を調べて敵弾が無ければ左右方向に敵弾があることになるからです。消去方を使ったこの方法を使うと【全方位索敵】、【前方索敵】【後方索敵】、【乱数】【回避1】【回避2】【乱数】【回避3】【回避4】索敵チップが1つ減らせて9個でプログラムを実施できるようになりました

さらに頑張ってみましょう。




 

プログラム例4

敵弾接近判断【全方位360゜】 N→ 次の行動へ

                

       Y↓        

              

敵弾接近判断【直行座標系縦幅伸】Y→ 乱数分岐【50%】 Y→ 左方向移動

                          N↓

       N↓                右方向移動

              

乱数分岐【50%】 Y→ 前方向移動

 

  N↓

 

     後方向移動

 

索敵の範囲を直行座標系に変更して1チップで前後を索敵できるようにします。これで使用チップは全部で8つ。半分にすることができました。(範囲を直行座標系にしたので、幅が狭すぎると全方向索敵で発見した斜め前後の敵弾に対応できない場合があるので注意)

 

 


最初16個のチップで回避プログラムを作りましたが8個に減らすことができ、減らした8個で別の行動が組めるようになりました。

 これは絶対的な答えではありません。プログラムの効率化については自分なりの方法を見つけてみて下さい。 







Carnage Heart PORTABLE(カルネージハート ポータブル) Carnage Heart PORTABLE(カルネージハート ポータブル)
Sony PSP (2006/08/03)
元気

amazonこの商品の詳細を見る


 
コメント
この記事へのコメント
コメントを投稿する
URL:
Comment:
Pass:
秘密: 管理者にだけ表示を許可する
 
トラックバック
この記事のトラックバックURL
http://wisder.blog73.fc2.com/tb.php/47-7421cfc6
この記事にトラックバックする(FC2ブログユーザー)
この記事へのトラックバック
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。