お子さんはにゃんこ大戦争をやってみたいと言うものの、「にゃんこ大戦争がそもそも何?」「作り方もよく分からない…」って思いますよね。
この記事を読めば、にゃんこ大戦争がどんなゲームかが分かり、この記事内ですぐに遊べます。
また作り方も解説しているので、お子さん自身で、にゃんこ大戦争を再現することもできるでしょう!
にゃんこ大戦争とは、自分の城からにゃんこ達を出撃させて敵の城を攻略するタワーディフェンスゲームです。実際に自分もやってみて、面白かったゲームに厳選しています。
またにゃんこ大戦争の作り方も、小学生低学年の子が分かるように簡単にしました。
にゃんこ大戦争をプレイしながら、プログラミングもついでに学んでしまいましょう!
目次
スクラッチでにゃんこ大戦争を遊ぶ
にゃんこ大戦争を真似た作品がスクラッチにはたくさんあります。
そのため、既に完成されたにゃんこ大戦争で遊ぶことも可能!
そこから派生で作られた「チート版」もあったりするので、「難しくて勝てない…」という場合にはチート版で勝ってみても良いでしょう。
以下のリンクから、それぞれのにゃんこ大戦争を遊ぶ画面まで飛べますし、緑の旗ボタンを押すことでこの記事内でも遊べます。
早速遊んでみましょう!
ルールが分からない。。。という方は、次の章「にゃんこ大戦争とは?」を読んでみてください。
遊ぶ画面の「ルール」の部分にも書いてあることが多いと思います。(以下の画像の赤枠)

1.https://scratch.mit.edu/projects/533847318/ (onigirikun_2009様作)
まずはスクラッチのにゃんこ大戦争で本家の再現性が高いものから。(チートはありません)
ガチャができたり、ステージが複数あったりと非常に再現度が高く、やっていて楽しいです!
2.https://scratch.mit.edu/projects/643229747 (chirokoto様作)
1のゲームをリミックスしたチート版ゲームです。
最初から最強キャラが出現している状態なので、ほぼ何もしなくても勝てますw
3.https://scratch.mit.edu/projects/1036009290 (w_scrath_w様作)
こちらのチート版も、別に原作のゲームがあります。
こちらのチートはキャラを出してもお金が減らないので、いくらでも最強キャラを出撃させられますw
にゃんこ大戦争とは?
にゃんこ大戦争とは、日本の「ポノス」という会社が開発したアプリゲームです。
自動的に金額が貯まっていき、貯まった金額を使ってにゃんこ軍団を出撃させることができるんですね。
出撃させたにゃんこ達は、自動的に敵の城へ攻めていき、途中で敵と遭遇すれば自動的に攻撃を開始します。
最終的には敵のお城まで攻め入り、HPを0にしたら勝ち、というゲームです。
700種類を超えるキャラクターがいて、さらにステージ数も大量にあるため、やりこみ要素も満載。
1億ダウンロードも突破し、日本・世界で人気のゲームです。

スクラッチでのにゃんこ大戦争の作り方
原作のゲームを忠実に再現したい、最初に挙げたゲームと似たクオリティを0から作りたい、というのは正直、結構難しいです。
スクラッチの「中を見る」ボタンで分かりますが、大量のブロックが重ねられています。
そこで、にゃんこ大戦争を作るには、以下の二種類の作り方で作るのが良いでしょう。
- リミックスさせてもらって作る
- 簡易バージョンを作る
リミックスさせてもらって作る
リミックスとは、他人の作品を参考にして自分の作品として公開できる機能のこと。
まず他人の作品をコピーさせてもらって、その中のプログラミングの一部を変えることができるんですね。
リミックスは以下の手順で行います。
- リミックスしたい作品が見つかったら「リミックス」をクリック
※スクラッチにサインインしていることが必要です出典:https://scratch.mit.edu/projects/533847318/
- 通常の作る画面になるため、変更したい場所を変更
- 「共有する」で、リミックスした作品をみんなに共有できます!
※共有のときは「メモとクレジット」に、「~さんの作品をリミックスさせて頂きました!」と一言加えてから公開しましょう。
背景を変えたり、オリジナルのキャラクターを作ってみたりするだけでも、プログラミング学習になります。
なぜなら、以下の手順が必要になるためです。
- 組まれているブロックが、どんな動作をしているのか考える
(すべてのブロックを理解せずとも、必要な部分のブロックを見つけて理解することが重要) - 変更したい部分のブロックを見つける
- 変更したいようにブロックを積み重ねる、変える
この手順はプログラミングをする仕事でも必要なことが多いです。
「0から作らないと意味がないのかな…」なんて思わず、どんどんリミックスしましょう!
簡易バージョンを作る
簡単なにゃんこ大戦争を作ってみるだけでも、十分プログラミング学習になります。
また真似をしてプログラミングをするだけでも、「どんな風に動くのかな?」と想像することで、より理解を深めることができるでしょう。
ということで、にゃんこ大戦争に必要な要素と作り方を解説します。
必要な要素は以下の通り。
- 背景とキャラクター、城を選ぶ(自分で描くもOK!)
- お金を自動で貯める
- ボタンを押したら自分の城からキャラクターを出撃させる
- 敵の城からキャラクターをランダムに出撃させる
- 自分と敵のキャラクターを戦わせる
- どちらかの城のHPが0になったら勝ち・負けを判断する
背景とキャラクター、城を選ぶ(自分で描くもOK!)
まず、背景とキャラクターを選びましょう。
背景は以下のように、灰色の四角を下に配置するだけでOKです。

キャラクターは敵と味方合わせて以下の四体を使うことにします。

次に城を選んでいきますね。
今回は、以下のようなビルを二つ使います。
どちらも「Buildings」スプライトの中にあるので注意してください。

ここまでで、今回必要なキャラクターは揃いました。
もちろん「自分でキャラクターを作りたい!」という場合は、「コスチューム」で自分の好きなキャラクターを描いても問題ありません!
お金を自動で貯める
次にお金が自動的に貯まっていくプログラムを作ります。
このお金が、キャラクターを出撃させる金額まで貯まったときに、キャラクターを攻撃に使えるんですね。
お金が貯まるプログラミングは、ステージのプログラミングで行います。

これで自動的にお金が貯まるはずです。
ボタンを押したら自分の城からキャラクターを出撃させる
まず、お城を適切な位置(画面の両端)に移動し、適度な大きさに変更します。
そこで以下のようにブロックを重ねて、適切な位置・大きさで城が出現するようにしましょう。
※手動でビルの位置を移動させて大きさを変えても問題ありません。


では、キャラクターを出撃させるボタンを作ります!
今回はキャラクターを四角で囲って、ボタンに見立てますね。


このとき、以下のようにキャラクターを出撃させられない時のボタンも作っておきます。
※全体的に色を暗い感じにするのがコツ!

次に、それぞれのボタンを好きな場所と大きさにして置いてみてください。
好きな大きさと場所に置けたら、お金が10円・20円と貯まった後にボタンを押せるようにして、キャラクターを出撃させられるようにします。
なのでまずは、ボタンのコスチュームプログラムでボタンを押せない状態のコスチュームにしておく必要がありますね。

そして、お金が貯まればボタンを押せる状態のコスチュームに変えて、キャラクターを出撃させ、お金を消費します!
こちらもボタンのコスチュームでプログラムしてくださいね。

上記のプログラミングでは、キャラクターをクローンしただけで、動いてくれません。
そこでキャラクターのプログラミングへ移動します。(ここでは「スプライト1(ねこ)」ですね)
そして以下のようにブロックを積み重ねると、キャラクターがクローンされたときに、自分の城から相手の城に向かって3歩ずつ向かってくれます。

ここまでで以下のことができるようになっているはずです。
- お金が貯まったらボタンが押せるようになる
- ボタンを押したら、キャラクターが出撃してくれる
敵の城からキャラクターをランダムに出撃させる
次は敵のキャラクターの動きをプログラミングしていきます!
適当な秒数待ったら敵を出現させる、というシンプルなものですね。

これを「ひよこ」と「ドラゴン」それぞれに作ります。
※「ひよこ」と「ドラゴン」で緑のブロックの数字は変えるのがコツ!
ここで、次のステップで使う「体力(HP)」を作っておきましょう。
「変数」というオレンジのブロックにある「変数を作る」をクリックします。
すると以下のような画面になるので、画面の通りに入力してみてください。

これで「ひよこHP」という変数が追加されたはずです。
なのでダメージを受けるプログラミングを作ってみましょう!

これを「ねこ」「Pico」「ドラゴン」それぞれで同じように作ります。
「ひよこHPを -2 ずつ変える」の数字を小さくすればねこが強くなり、大きくすればひよこが強くなりますね。
自分と敵のキャラクターを戦わせる
そして自分のキャラクターと敵のキャラクターがぶつかったら戦わせますよね。
まずキャラクター同士がぶつかったら、それ以上進めなくなるプログラムを書いておきます。

上のような、それぞれのキャラクターに書いていたブロックを以下の赤枠のように変更!

敵のキャラクターなら以下三つのブロックを変更します。
- 「x座標 < -200まで繰り返す」→「x座標 > 200まで繰り返す」に変える
- 「x座標を 3 ずつ変える」→「x座標を -3 ずつ変える」に変える
- 「ひよこ・ドラゴンに触れた時」→「ねこ・Picoに触れた時」に変える
これで敵にぶつかったらそれ以上進まず、戦っている動きも加えられました。
さらに、それぞれの城よりもキャラクターが先に進めないようにもなっています。
どちらかの城のHPが0になったら勝ち・負けを判断する
まず、それぞれの城のHPを「変数」というオレンジのブロックにある「変数を作る」で作ります。
そして変数を作ると、動きを確認する画面にも変数が出てくるので、その上で右クリックしてみてください。

すると上の写真のように「大きな表示」と出てくるので選ぶと、数字だけの表示に変わりますね。

この数字だけになった表示を、それぞれの城の下に置きましょう。
※敵と自分のHPが逆にならないように注意!

さらに、「勝ち!」「負け…」とだけ書いてあるコスチュームを作っておきます。

そして自分の城のコスチュームで、以下のようにブロックを積み重ねましょう。

逆に敵の城のコスチュームでは、以下のように変更します。
- 「自分の城のHP」→「敵の城のHP」に変える
- 「ひよこ・ドラゴンに触れた時」→「ねこ・Picoに触れた時」に変える
- 「負けを送る」→「勝ちを送る」に変える
最後に「勝ち!」「負け…」とだけ書いてあるコスチュームで、以下のようにプログラミングします。

ここまで来たら、実際にゲームができるかプレイしてみましょう!
まとめ
今回はスクラッチでの、にゃんこ大戦争の作り方を解説しました。
プログラミングは学ぶことも重要ですが、楽しいことも大切です。
話題のゲームを真似して作ろうとすることで、「このゲームはどうやってプログラミングされているんだろう?」と考えられるようになります。
これが、プログラミング的思考の第一歩!
楽しみながら、どんどん上達してしまいましょう。
他にもスクラッチには、たくさんのゲームがあるので探してみてくださいね。
もしスクラッチの独学は無理があれば、スクラッチを扱っているプログラミング教室へ通うことも検討しましょう。
無料体験・資料請求ができるので、まずは無料の資料請求だけでもしてみてください。
その行動が、お子さんの将来をきっと変えるはず!
※本記事は、アイキャッチをAIを用いて作成しています