C++で簡単な対戦ゲームを制作!初心者向けのコードを解説!

このQ&Aのポイント
  • C++で簡単な対戦ゲームの制作方法を解説します。初心者でも理解しやすいように、コードの詳細な解説を行います。
  • プレイヤーとモンスターが戦う対戦ゲームのコード例を紹介します。プレイヤーとモンスターのHPが0になった時にゲームを終了させる方法や、攻撃の選択肢を増やす方法などを解説します。
  • 対戦ゲームに「急所に当たった」という表現を追加する方法を解説します。急所に当たった場合のダメージ倍率や、急所に当たる確率を設定する方法を紹介します。
回答を見る
  • ベストアンサー

C++で簡単な対戦ゲーム(?)を制作しています;

http://codepad.org/MlYD8zXy 上記は製作途中のゲームのソースコードです、作りが雑なのは全くの初心者なのでご了承くださいm(_ _)m 要望が3つあります ・プレイヤーかモンスターのどちらかのHPが0になった時に、このゲームを終了させたい。 ・攻撃の選択肢を増やしたい。(魔法や必殺技など) ・「急所に当たった」という表現を追加したい。 これらを実現させるにはどう書けば良いでしょうか? 上記3つのうちのいずれかでもコードを作成できる方で、 お時間がよろしければ下記サイトに例としてコードを書いていただけないでしょうか。 http://codepad.org/ (一からでも、コピーして改変、少し手を加えて頂けるだけでも嬉しいです) よろしく願い致します><

質問者が選んだベストアンサー

  • ベストアンサー
  • Wr5
  • ベストアンサー率53% (2177/4070)
回答No.1

ここは質問するところなんですけど、そこのところはご理解いただいているという認識でよろしいでしょうか? >要望が3つあります 要望以前にちゃんと動作するコードにする必要がありそうですが。 >int x = 0, a = 11, b = 17, c = 50; >printf("あなたの運勢を二桁以内の半角英数字で入力してください:"); >scanf("%d",x); 数字の入力は出来ませんね。 少なくとも入力文字の先頭に数字を入力してはいけないコードです。 「先に進ませる」ためには。 # 理由はご丁寧にコンパイル時の警告メッセージとして出力されています。 数字を入力するとプレイヤーとモンスターの戦闘は神により禁止されます。 # SegmentationFaultかアクセス違反という神罰により平和な世界が訪れる。 で、数字に入力できないので…ここでのxは常に0になり以降の計算式も毎回同じ値を返すことが確定します。 # ゲーム的要素ないですね…。 >printf("(Ctrl+cで終了します。先頭を続けるにはEnterキーを押してください)\n"); Ctrl+cでやはり神を召喚します。 結果として「先頭は無かった」ことにされ、プレイヤーもモンスターも死なない平和が実現されます。 # プロセスの強制終了。 環境によっては世界の裏側でプレイヤーとモンスターが神からの時間停止呪文の解放を待ち続けます。 # フォアグランドにならないとgetchar()から先進めないでしょうしね。 >・プレイヤーかモンスターのどちらかのHPが0になった時に、このゲームを終了させたい。 >while(1){ のループの継続条件を整理してみてください。 ちなみに、「0」になる確率にも注意が必要です。 # 25-30は0ではありませんから。 まぁ、ループの継続条件だけでなく中断判定も入れないとアンデットになったプレイヤーがモンスターに攻撃可能だったりします。 さすが勇者!死んでもただでは死にません! # そして、最初のループ継続条件をミスするとアンデットになったプレイヤーとモンスターがえいえんの戦闘を繰り広げます。 えいえんの戦闘の果て、アンデットから体力バカに転生します。 # えいえんはあるよ。ここにあるよ。 とりあえず、疑似乱数ってものがあることは勉強しましょう。 # あと、種が必要であることも。 >・攻撃の選択肢を増やしたい。(魔法や必殺技など) getchar()での入力内容によって分岐する処理でも追加すればよいでしょう。 「想定外の入力」についても考慮は必要でしょうが。 # MPやら必殺技の使用条件とか考える必要もあるでしょうねぇ。 >・「急所に当たった」という表現を追加したい。 乱数で判定でしょうかねぇ。 行動選択できるなら判定処理ちゃんと考えないとアホな結果になるのでご注意を。 プレイヤーは回復の呪文を唱えた! プレイヤーのHPが34回復。 モンスターの急所に当たった!! モンスターに74のダメージ!! みたいな。 # いつ攻撃したよ? ちなみに何度か指摘しているループ継続条件をミスると、回復呪文でプレイヤーの負けになる場合もあります。 # アンデットから生者になれるわずかな隙間で。 >お時間がよろしければ下記サイトに例としてコードを書いていただけないでしょうか。 謹んでお断りいたします。 「こういうコードにして、こういう結果を望んだけど違う結果になる。どこが悪いの?」みたいな質問でしたら回答してくれる人はそれなりに居るでしょうが。

関連するQ&A

  • ゲームの名前を教えて!古いよ!

    ゲームの名前が思い出せない。PSで10年位前、3人が旅をする。少年+僧侶+女かな?(いまいち覚えてない) RPG風だが、バトルは十字キーの組み合わせでコンボ発動、必殺技が出来る。打撃中心のバトルシステム。例えば、上上下左で必殺技みたいな。魔法みたいのはあまり使わず。軽快なBGM。う~ん、わかる人いますか?たしか、暴走という必殺技もあった気がする。よろしく願います。

  • PS1の三つの魔法を駆使して戦う3D格闘ゲーム

    PS1で三つの魔法を駆使して戦う3D格闘ゲームがあったんですが 名前が思い出せません あまり売れてなかったと思いますが面白かったです。 MPゲージがあり スピードを重視した魔法 威力を重視した魔法 拡散を重視した魔法 がありそれを組み合わせて戦うゲームです スピード、スピード、拡散で かなりスピードがあり、かつ拡散させる魔法が出せたり… 三つ使うとそれぞれのキャラクターの必殺技が出せました。 覚えてる方いませんか?

  • 格闘ゲームのコツを教えてください!!

    格闘ゲームのコツを教えてください!! 最近格闘ゲームをやっているのですが、敵が結構強くて梃摺っています 今やっているゲームは、パンチ、キック、掴みと投げ、ガード、ステップ、必殺技があります 基本パンチ、キックで敵にダメージを与えていくのですが、強くなっていくとガードばかりされ攻撃が利かなくなります そういうときには掴んで投げてダメージを与えているのですが、レベルが上がっていくにつれて、攻撃のコンボが終わった直後に隙が出来るのでのそときに攻撃されたり、掴もうとすると、ステップでよけられます なので、なかなか敵にダメージが与えられません 敵は巧にガード、攻撃、掴みを使い分け、着実とダメージを与えてきます ガード中に攻撃を仕掛け続けるとガードを崩せるのですが、スタミナが足りず崩せません 上記のようなことがあり、段々ストレスが溜まってきます どんな感じに操作すれば勝てるでしょうか? 教えてください!

  • スターオーシャン3の疑問

    スターオーシャン3でいくつか疑問があるのでおしえてください MPが敵の攻撃によっても減りますが コレを回復するのは基本的にブラックベリーのようなアイテムで 回復するしかないのでしょうか? MPの存在が正直よくわかりません 一応魔法で消費するものだがアイテムでしか回復できないHPというイメージでよいのでしょうか? また基本的にMPは少しでもへったら回復するべきなのでしょうか? なんか攻撃を連続で食らうとあっさり死ぬことがおおいので ある程度ほっといていいのかHPみたいにすぐ回復するべきなのか わかりません(アイテム使用中うごけないのでなんか爽快じゃないし・・) so2にあった早口、強打、めくり、フロートなどの スキルはないのでしょうか? 攻撃魔法は詠唱が長い上に範囲があってエクスプロージョンなど 役に立たないイメージがあるのですがうまく使う方法みたいのは あるのでしょうか? ガッツが0になったら攻撃できなくなりますが 基本的に0になったら敵の届かない位置にいって動かなくして ガッツを100にもどしてたたかうのでしょうか? それとも0にならないように必殺技をつかったらその場にとまり ガッツをためるのでしょうか? なんかすごくテンポが悪く感じます cpのせいでクリフが S○とS×にフラッシュチャリオットを セットしただけで他の必殺技を覚えても使えないのですが そういうものなのでしょうか? 必殺技は基本的にCP4~6もつかうのに15しかないので 必殺技はS○ S×で覚えた必殺技をほとんど使えないのですが 使う方法はないのでしょうか?(装備、イベント、裏技などで 使えたりしないのでしょうか?) SO2のリンクコンボみたいな戦闘が楽しくなるアイテムはないのでしょうか? 通常攻撃、同じ必殺技、ガッツが0になったら不動でためる、連続攻撃でHPかMPが一瞬にして0になり死ぬこともおおい などすごくストレスがたまるのですが 戦闘のレビューが良いみたいなので自分の戦い方が間違ってるのかと思い質問しました。

  • アーケードゲーム『メルブラAA』のネコアルク操作法を教えてください!

     私は最近アーケードゲームで『メルブラAA』をやり始めた者です。  今、ネコアルクを使って全面クリアしようと格闘中なんですが、私のところのゲーセンではネコアルクの出し方は書かれてあっても、必殺技が書かれていません。また、システムについての詳しい説明も書かれていません。かろうじて対戦時に表示される3つの技だけは使えますが、ほかの技はどのコマンドで出せるのでしょうか? ネットの攻略を見ても、コマンドが『矢印→』ではなく『数字』で表されているのであまりよく分かりません。誰か教えてもらえないでしょうか?(特に超必殺技は全く出せなくて困っています)  あと、『黄泉帰りR』の自キャラの出現位置調整はどうやって行うのかと、分身3体が出ている間に何か相手に攻撃を仕掛けられる方法があったら教えてください。  加えて、ネコアルクでやる場合、何か対人戦において極めて有効なコンボや有効な戦略(少々卑怯な戦法でも可)がありましたら、それも教えていただけると幸いです。

  • PS2 3Dアクション

    僕は最近持っているゲームに飽きたので新しいカセットを買おうと思います、どうせ買うなら今まで持っていなかったようなものがいいので3Dアクション要素が入っているカセットを買おうと思います、ドラクエのようなターン制でわなくモンスターハンターのような自由に動いて自由に攻撃するようなもので、できれば魔法のようなものが入っているしうれしいです、こんなゲームありませんか?

  • 昔やったゲームが思い出せない

    昔やったゲームが思い出せません。 多分プレステ1 ジャンルは対戦格闘(1VS1) で、出てくるのは全部超能力者だったと思います。 空に一定の広さのバトルフィールドが結界みたいので囲まれてて、皆空飛んで戦います。 全員ショットとか遠距離攻撃普通に持ってた気がする。 ストーリーとしては確か、超能力者が怖い普通の人類が、超能力者収容施設作ったんだけど、なんか超能力者のすごい奴があんな旧人類に従うことないってテレパシーで呼びかけて人類をやっつけようとするようなそんな話しだった気がする… なんかエミリオってキャラがいたようないなかったような… 超必殺技があったような… 情報あんまないですが、もし分かったら教えて下さい。 お願いします。

  • タツノコVSカプコンのコンボについて

    アーケードのゲームを今頃やってるものですが 先日対戦したら10連コンボみたいな連続技で コテンパンにされました(^^; 相手が使用していたキャラはリュウで 必殺技を使わず攻撃を当てられ続け 途中からレインボーみたいな色に体が変化していました。 自分もそんな技を使いたいのですが どこか参考になるサイトとかありませんか? 私もリュウを使ってコンボを決めたいのですが どういった手順で技がつながるかわかりません。 また、他のキャラにも同じようなコンボはあるのでしょうか? 教えてください!

  • 攻撃魔法が豊富のオススメゲーム教えてください

    こんばんは 私は魔法使いが大好きでよくゲームをします。 パソコンでオンラインゲームをしたり、家庭用ゲーム機ではPS3を持っています。 最近ではスカイリムというゲームをずっとやっています。 しかし、スカイリムというゲームには火、氷、雷の三種類しか属性がなく、攻撃モーションなどが少なく 魔法に関してはあまり面白くありません。 そこで、質問といいますか、オススメしてもらいたいゲームがあるのですが、 回答者さんが今までやったゲームの中で魔法使いが面白かったゲームを教えて欲しいです。 要望としましては、最近の綺麗な3Dのグラフィックなゲームがいいです。 教えてください。よろしくお願いします。

  • RPGを選ぶ時

    みなさんはRPGをどの様な基準で買われますか?FFやDQ・テイルズ系の様な定番(っていっちゃぁ失礼かもしれませんが)で選びますか?それともキャラクターとかストーリーを重視しますか?または魔法とか必殺技などのグラフィックなどで選びますか?他にも好きな声優さんがでているゲームとかで選ぶ方もいるかもしれませんよね。私は「RPGは魔法が格好いいかきれいな物が好き」って感じの奴なので、FF系は召喚魔法などがとてもきれいで凄く好きです。DQやテイルズ系も結構好きになりました。 凄く前置きが長くなって申し訳ないのですが、FFやDQ・テイルズ系以外で魔法や召喚魔法が凄くきれいなでお勧めなRPGを御存知の方が居ましたら教えてください。

専門家に質問してみよう