ジャンルであれば、シューティングかアドベンチャーですね。
アドベンチャーがいちばんブログラムの難易度としては優しいと思いますが、
メッセージやイベントをどう処理するかなど、考えるところは沢山あります。
比較的処理速度を必要としないジャンルというのはありますが、
データ処理をちゃんと考えないとやたらと無駄が多いプログラムになります。
(私であればメッセージやイベント等をコード内に記述する作り方はしません)
シューティングは比較的優しいほうだと思います。ループ処理のお勉強になります。
100発の弾幕があったとして、これをひとつひとつコードで書くことはしません。
配列とループで処理します。
以下のようなシンプルなのから始めるのがおすすめです。
screen 0,480,200,0,(ginfo_dispx-480)/2,(ginfo_dispy-240)/2
title "数当てゲーム"
font "游ゴシック Medium",16: objmode 2
randomize
*start
kotae=rnd(100) // 答え
c=0: kazu=-1: msg=""
*main
buf="": c++
color 255,255,255: boxf // 背景のクリア
color // 文字色(0,0,0)
pos 10,10
mes "0〜99 の数を何回で当てられるか競うゲームです。"
mes ""+c+"回目のチャレンジです。0〜99 の数を入力してください。
clrobj
input buf,100,30,2 // OBJID:0
objsel 0
mes msg // 判定メッセージ
// 当たりの場合
if kazu=kotae {
objsize 100,30
button goto "リプレイ",*start // OBJID:1
objsel 1
stop
}
// 入力待ちループ
repeat
stick p: if p&32 { break } // Enterキーで進む
await 16
loop
goto *go
*go
kazu=int(buf) // 文字列を数値に変換
if kazu=kotae { msg=""+c+"回目で当たり!!": goto *main }
if kazu>kotae { buf="下" } else { buf="上" }
msg="その数より"+buf+"です。"
goto *main