【ゲーム制作】勉強始めて約3週間の初心者がEカードゲーム作ってみた #1

ユクサス

こんにちは、ユクサスです!

今回からいよいよゲームについての記事を書いていこうと思います!

↓【ゲーム制作】勉強始めて約3週間の初心者がEカードゲーム作ってみた のまとめページはこちら

あわせて読みたい
【ゲーム制作】勉強始めて約3週間の初心者がEカードゲーム作ってみた まとめ こんにちは、ユクサスです!  このページは、【ゲーム制作】勉強始めて約3週間の初心者がEカードゲーム作ってみた のまとめページです。  このシリーズもそこそこの回...

今回作ったゲームは、「Eカードゲーム」です!

 初心者ブロガーの初級プログラミング #3では、Progateのpythonコース・レッスン3について、書きました。そこでは、最後にジャンケンゲームを作成しました!そこで、ジャンケンゲームを応用して「Eカードゲーム」を作れるんじゃないかと思い作ってみました!

ユクサス

 正直、クオリティやコードの綺麗さ・見やすさは最低レベル…
 グラフィックもないから、プレイ画面も地味です…

 それでも、「初心者でもこういうことができる!」・「大変だけど自分でコーディングするのは楽しい!」っていうのを伝えることができたらいいなって思います!

 使用言語は『Python』で、『Google Colaboratory』でコードの作成・実行しました。それぞれに関する記事も書いてるのでよろしければどうぞ!

↓初心者ブロガーの初級プログラミング #3の記事はこちら

あわせて読みたい
【めざせ脱初心者!】初心者ブロガーの初級プログラミング #3 こんにちは、ユクサスです!  今回も「初心者ブロガーの初級プログラミング」シリーズとして記事を書いていこうと思います!今回で、#3になります!  実は、最近ブ...

↓使用したプログラミング言語「Python」についてはこちら

あわせて読みたい
Pythonって何?初心者目線でPythonでできることを紹介! こんにちは、ユクサスです! いざ、「プログラミングを始めよう!」、と思っても一体何から始めればいいか悩んでいませんか? プログラミングを始めるのに、最初に決め...

↓コードを書くのに使用した環境「Google Colaboratory」の説明はこちら

あわせて読みたい
【初心者必見!】グーグルコラボラトリーのメリットと使い方まで紹介しちゃいます! こんにちは、ユクサスです!  前々回の記事、初心者ブロガーの初級プログラミング#3では、Progateレッスン3で習った内容について書きました。そしてレッスン3の最後で...
目次

Eカードゲームとは

 知っている方も多いと思いますが、まずはどのようなゲームを作ったかを説明しようと思います!どのようなゲームを作ったか分からないと…

ユクサス

どうしてそういう風にコードしたの?」ってなっちゃいますからね笑

 Eカードゲームは「賭博黙示録カイジ」で出てきたゲームです。ルールは簡単で、プレイヤー2人で、じゃんけんと同じ3すくみで勝敗を決定します!

 ただ、じゃんけんと違って使うものが『皇帝』・『市民』・『奴隷』です。

 上のイラストのように、『皇帝』は『市民』に、『市民』は『奴隷』に、『奴隷』は『皇帝』に強いという関係です。

ユクサス

ここまではじゃんけんと同じ!
でも、じゃんけんにはない特殊なルールもあるよ!

 それは、各プレイヤーが使えるカードが制限されていることです。プレイヤーは5枚1組のデッキを使用します。この記事では、皇帝が入ってる方を『皇帝デッキ』、奴隷が入ってる方を『奴隷デッキ』とします。

 イラストの通り上が『皇帝デッキ』で『市民』が4枚と『皇帝』が1枚、下が『奴隷デッキ』で『市民』が4枚と『奴隷』が1枚でできています。

ユクサス

プレイヤーはデッキを選んで対戦を始めます!

 じゃんけんと同じ要領で互いに一枚ずつカードを出していき、先ほどの3すくみで勝敗を決めます。

 両者が『市民』を出したときは、じゃんけんで言うところの「あいこ」となり、残ったカードから次のものを選びます。これを決着がつくまで続けます。

 このゲームの面白いところは、使うデッキによって勝ちやすさが全く違うところです。勝ち負けの判定は、じゃんけんと同じ3すくみですが、使えるカードがデッキによって違うので、デッキごとに勝ち方が異なります

 『皇帝デッキ』の場合は、相手が『市民』だったときに自分が『皇帝』、または相手が『奴隷』だった時に自分が『市民』である。この二種類の勝利条件があります。

それに対して、『奴隷デッキ』の場合は、相手が『皇帝』をだった時に自分が『奴隷』である。このたった一つだけです。しかも、皇帝と奴隷は各デッキに1枚ずつしかないので勝つ可能性はかなり低いことがわかります。

なぜEカードゲームを作ろうと思ったか

 まず、Progateを勉強していて実際に自分で考えてコードを書きたいと思ったからです。

ユクサス

正直Progateで勉強していて、ちゃんと力がついてるか不安だったから…

 自分のスキルを確かめるため・覚えたことの復習のためにも、このゲームを作ってみました。

 あと、基本のルールはじゃんけんと同じだったので簡単に作れるかなって思って…

ユクサス

(でも、勉強を始めたてのひよっこの私にはなかなか大変で、完成までかなりの時間がかかってしまいました笑)

実際に作ったゲーム・コードの概要

ユクサス

最後にゲームコードの概要を簡単に紹介します!

 まず、「実際にカードを使っている感じ」を出したかったので、それぞれのデッキを『emperor』という辞書と、『slave』という辞書を生成しました。

  • キー(1〜4)

 『emperor』・『slave』 →  どちらも『値』は 市民

キー(5)

 『emperor』 → 『値』は 皇帝

 『salve』   → 『値』は 奴隷

 そして、勝敗を決定する関数を作ります。

 この関数では、「引数」に『皇帝デッキ』から出されたカードと、『奴隷デッキ』から出されたカードを受け取るようにしています。また、与えられた「引数」から、勝敗を「戻り値」として返すようにしています。

ユクサス

あとは、ゲームの流れをコードして完成!
文字にしてみると、意外とやっていることが少ないですね…

最後に

ユクサス

今回はここまで!

 先述した通り、やることの量でいったら大したことなそうに見えますが、完成せるのはホントに大変でした。思った通りに動かなかったり、そもそもちゃんと理解できていなかったり…

ユクサス

調べても出てこない、あるいは分からないってこともありました…

 でも、だからこそ、理解できたこと気づいたこともありました。そして、完成した時の達成感はとっても気持ちよかったです!最初にも言いましたが、このシリーズでそれを伝えたいと思ってます!

 次回からは、実際に書いたコードをお見せしながら紹介していけたらと思います!全3、4回くらいで紹介できればいいなと思ってます!

 では、また次の記事で!

ユクサス

Twitterもユクサス @Yuxas_beginner でやってます。フォロー大歓迎です!

 ユクサスのアカウントで BlogMap も登録してます!記事を読んで、気に入っていただけたら「購読通知」と「いいね」をポチってもらえると、嬉しいです!ぜひ、お気軽にどうぞ!

BlogMapのページはこちらから⇨https://blogmap.jp/details/4997

 

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

CAPTCHA


目次
閉じる