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

1.https://scratch.mit.edu/projects/631157206/ (WagamamaBoy様作)
最初に使いたいキャラを自由に選べて、レアキャラを当てたりする必要が無いので、お手軽に楽しめます。
相手も強いので、頑張って勝ってみてください!
2.https://scratch.mit.edu/projects/600917064 (makora0123様作)
最初のプロローグから作りこまれており、にゃんこ大戦争を彷彿させますね!
背景・キャラクターともにクオリティが高く、プレイしてて楽しいです!
3.https://scratch.mit.edu/projects/635857711 (tktooruyh11様作)
1のわんこ大戦争をリミックスしたチートありわんこ大戦争のようです。
キャラを出してもお金が減らず、いくらでも最強キャラを出撃させられますw
わんこ大戦争とは?
わんこ大戦争とは、「にゃんこ大戦争」という別ゲームから派生して出てきたゲームです。
「にゃんこ大戦争」の公式HPに「わんこ大戦争」が載っているわけではないので、非公式のゲームのようですね。
ルールは基本的に「にゃんこ大戦争」と同じです。
自動的に金額が貯まっていき、貯まった金額を使ってわんこ軍団を出撃させることができるんですね。
出撃させたわんこ達は、自動的に敵の城へ攻めていき、途中で敵と遭遇すれば自動的に攻撃を開始します。
最終的には敵のお城まで攻め入り、HPを0にしたら勝ち、というゲームです。

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

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

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

ここまでで、背景・建物・キャラクターは揃いました。
自分でキャラクターを作りたいときは、「コスチューム」で自分の好きなキャラクターを描いても問題ありません!
お金を自動で貯める
次にお金が自動的に貯まるプログラムを作ります。
このお金が貯まらないと、キャラクターを出撃させることができません。
お金が自動的に貯まるプログラミングは、ステージのプログラミングする場所で行います。

これで自動的にお金が貯まるはずです。
緑の旗ボタンを押して確かめてみましょう!
ボタンを押したら自分の城からキャラクターを出撃させる
まず、お城を良い感じの場所(画面の両端)に移動し、良い感じの大きさに変更します。
以下のようにブロックを重ねると、適切な位置・大きさで城が出現するようにできますね。
※手動でビルの位置を移動させて大きさを変えてもOK!


次に、以下のようにキャラクターを出撃させるボタンを作ります!


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

次に、それぞれのボタンを好きな場所と大きさにして置いてみてください。
※今回は右上においてみました

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

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

ここまでで、キャラクターをクローンしてくれるプログラムを書けました。
次は、クローンしたキャラクターが自動で出撃してほしいですよね。
そこでキャラクターのプログラミングへ移動します。(ここでは「いぬA」ですね)
ブロックを以下のように積み重ねると、キャラクターがクローンされたときに、自分の城から相手の城に向かって3歩ずつ向かってくれます。

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

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

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

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

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

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

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

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

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

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

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

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