【初心者】課題をクリアしていくスレ【講習会】
■ このスレッドは過去ログ倉庫に格納されています
ゲームに必要な要素を先生が出してくれます
その課題をクリアしていく講習会です HSPで完全オリのSLGを作るスレ
http://pc5.2ch.net/test/read.cgi/gamedev/1047478458
上記のスレから誘導されてきたのですが、HSPでHexマップのSLGを
作っている(作ったことある)人はこのスレを見ているのでしょうか? なんとなくシューティングゲームを作ってみたくなって自分に課した課題
1 480*480ピクセルのクライアント領域で同じ大きさの背景をスクロールさせる
2 32*32ピクセルの自機を表示し、カーソルキーで移動させる
3 スペースキーで4*4ピクセルの弾を発射(連射可)できるようにする。
4 64*64ピクセルの敵機を出し、適当に動かす
5 敵機が3方向に弾を撃ってくるようにする
6 敵機が自機に向けて適当にw近寄ってくる誘導弾を撃ってくるようにする
7 当たり判定をつける
8 自機・敵機とも耐久力を持たせ、弾が当たると耐久力が減るようにする
9 画面上のほうに自機・敵機の耐久力をグラフ表示する
とりあえず、今日はここまでできた。
あとは
10 敵機の動きをプログラムするスクリプトシステムをつける
といったあたりか。ここまでできれば、一通りシューティングゲーム
の要素がそろうんで、「シューティングゲーム開発に向けた基礎実験」
は終了。もっとも、実際にシューティングゲームを作るのがいつになる
かは…。
敵の動きをそのまんまコードで書くのは無しなの?
自由度上がって楽しいと思うが・・・ プログラマとゲームデザインするやつがいっしょならそれでいいんでないの?
あと、スクリプト形式にするメリットは大きいと思うが、初めて作るんなら
ハードコーディングでも全然桶だと思う。 >>464,465
いやそれだとシステムで敵の扱いを統一できないから、かえって不便
(敵の種類を増やすごとに移動処理をソースに追加していくよりは
スクリプトのバイナリデータで記述していく形のほうがずっと楽)だし、
今回はある程度汎用的なシステムを作ってみたい、というのがあるから
スクリプトにしてみようかと。
スクリプトといっても、敵の座標などをデータに沿って操作するだけだ
から、ハードコーティングと難易度的には大差ないと思う。以前作った
RPG用スクリプトシステムよりは楽に…できると良いんだがw
成る程…
しかし、敵の動きを直接読み出すようなスクリプトの場合
逆に、後ろから追尾弾を撃つなど、問題が多い上に一度覚えられると無力と化してしまう気が…
判定文が併用できるようなスクリプトがベストですかねw
最近は弾幕系シューティングが人気ですし、弾幕にもこだわってみたら如何でしょうか。 if Enemy01.Y > Player.Y : Shoot(ミサイル)
みたいに記述が出来れば、行動ルーチンも自由度上がるかな・・・というかコレくらいできないとダメか 名前欄のケツにでも使用言語を入れてはどうだろうか。
ソースだけ書かれても混乱しない? >>467,468
スクリプトシステムは、簡単な仮想マシン的なものだね。
ごく基本的なコード(レジスタ操作、メモリの読み書き、ジャンプなど)
を実行するCPU・メモリと自機の位置や時間などを保持するレジスタを
作っておいて、簡単なスクリプト(というかバイナリコード)で敵の行動
などを記述する。
次の課題まだ?
インベーダーいらないから物理ネタくれ 初めて仮想マシンと制御言語を組むのなら、Forth系言語の実装もお勧め。
字句解析だけで、構文解析がいらないのと、
仮想マシンがスタックマシンなので比較的簡単。 課題:
HEXマップで、間接攻撃は障害物を超えて攻撃できない。
を全10回ぐらいで。 さまよってたらこのスレを見つけてふとまたプログラムやりたいなとか思ってやってみました。
課題1〜7入り
ttp://gamdev.org/up/img/1565.zip
ソース汚いと思いますがぜひ添削やらお願いします。
って漏れこんなことしてる場合じゃない(;´д`) もしかしてここはxorとnorの区別がつかない人の集会場ですか? xor ビット反転
nor ???
ior ではないのけ? nor =>Negative OR operation
>>487
xor をビット反転と考えるのはどうかと。 数当てをC#でやってみました
Randomってrandomizeしなくていいので便利でつ
http://www.uploda.org/file/uporg26822.zip >>490
入力された値が数字か、範囲外かぐらいはチェック汁 何かいつの間にかgamdev.orgがアクセスできなくなってるな
一体何があったんだ‥ >>492
今日いったらアクセスできたよ。個人でやってるみたいだし正月休みじゃないかな。 VS.NETのテンプレートにdirectXアプリケーションのアイコンが表示されません。
ナゼでしょう?
directXは読み込まれてはいるようなんですが・・・ >>496
DirectX 9.0 SDK Update (Summer 2004) DXreadme 日本語版
http://www.microsoft.com/japan/msdn/directx/japan/dxreadme_U04_jp.asp
AppWizard は廃止されました。AppWizaed は複雑で維持に多大な労力を必要としました。
その代替として、サンプル ブラウザの機能を拡張して、新しいプロジェクト用の開始点として
サンプルを選択できるようにしました。単に使いたいサンプルをプロジェクトとして使えるように
するには、「Install Project」リンクをクリックしてください。これにより、ダイアログが開き、
サンプルの名前を変更しソースファイルを配置するパスを選択できます。このプロセスは、
ファイルの名前を変更すると共に、メディアと共通フレームワークをコピーします。そのとき、
真にプロジェクトの名前を変更するため、ファイル内の探索と置き換えも行います。 あ〜なるほど、ありがとです。
たしかにサンプルの使用が変わってるな〜とは思いました。
・・・・直接サンプルから持ってくるようになっていたとは・・・・いつのまに。 >>486
xor
a b | Y
1 1 | 0
1 0 | 1
0 1 | 1
0 0 | 0
nor
a b | Y
1 1 | 0
1 0 | 0
0 1 | 0
0 0 | 1
ってことじゃなくて? ゲーム以外に作るものがあって・・・。
課題もないし。 やる気はあってやりたいんだけど
もうこのスレ終わりだよな・・・ >>504
スレが終わるのは、dat落ちした時だけですよぅ
新たな挑戦者が現れる限り、スレは続くよどこまでも 俺育成ゲーム(参加者求む)
http://pc8.2ch.net/test/read.cgi/gamedev/1097684655/l50
//====================================================================//
ゲームを作りたい…!
しかし、この歳にになっていまさら何からすればいいのかわからない。
C++?
と解説ページに行ってもイマイチよくわからない。
(coutとか書いているとウィンドウがつくれるの?)
こんな俺に課題を出して育成してくれ!
目標・2Dでよいのでゲームが作りたい。
ツクール系は試したが、イマイチ思ったとおりに出来ないので。
まずはシューティング。
以下、絶対守る俺ルール。
1・課題を出してくれ、解説してくれる人は師匠とあがめる。
2・わからなければ質問しまくるが、週に1度は最低1つの課題に対する成果を提出。
3・課題と回答、師匠の解説をまとめたページを作成する。
やる気と健康度だけは100(技術と知力は0)な俺を育成してくれ、師匠!
//====================================================================//
ここを再利用age 再利用賛成。
というわけで、Javaの基本的な事は学んで、
他のOOPL(Delphi、JavaScriptなど)は経験済みで、
Javaのコアパッケージの中身については全く知らず、
デザインパターンは勉強中(結城本のJavaで学ぶ〜のMediatorの途中)で、
ツール作りは多少経験があるけど、ゲーム作りはほとんどない
こんな人(⊃自分)の次のステップを教えてください。
特に、何か面白そうなゲーム希望。 >>510
ありがとうございます。
でも、残念ですが他の言語で既に作った事があるのです…
どうせなら! どうせなら違うゲームが作りたい!(というわがまま)
>>511
ありがとうございます。そのページは知っていますです。
Javaに慣れてきたら挑戦してみたいと思います。
というか、皆様すいませんでした。結局、自分で決めてしまいました。悪い子です。
GUIで倉○番を作りたいと思います。全裸で。
あと、このスレでの報告の為にブログ作りました。
http://prog.seesaa.net/
随時開発状況とか経過とかをうpするつもりです。 け ぉ ハ
ぇ っ と う う
し ハ w kw っw
はw ぇ ww
え るの ァ ァ お ww ぇう
作るのが簡単そうなやつでいうと・・・「叩いてかぶってジャンケンポン」なんかどう?
あんまりこの板で作った人見かけないし あー、ごめん。>>514を全部読まないで書き込んじゃった。忘れてくれ >>517
面白そうですねw
AIは簡単に作れそうですが、難易度の調整が難しそう。
弱すぎるのと強すぎるの両極端になりそうですね。
あと、あの「あ、あれ? オレ叩く方だっけ? 守る方?」っていう
おろおろ感を、プレイヤーにどう感じさせるかがキーになるっぽいかも。
>>514のブログに倉○番のクラス設計を書いてみますた。
UML勉強中なので、平文です… (´・ω・`)
今日の結論:Javaのリフレクションヤヴァイ。便利すぎる。
他の生徒さんは、お元気なんでしょうか… HSPやりたいんですけど
なにやればいいかまったくわかりません。
先生がた課題をください 倉○番、とりあえずコンソール版で作りますた。
Javaソース付き。実行には JRE 5.0 必要。
http://prog.seesaa.net/product/Storekeeper.zip
あと、結城先生が来たのですが、本人なのかしらん。
>>520
HSP(2.5系なら)一通りできるんで、教えますよ。片手間だけど。
じゃ、最初のお題。
「Hit&Blow」 を作りなさい。
・ゲームには親と子が必要。プレイヤーが子、プログラムが親になる。
・親は、子が分からないように、ランダムに3桁の数字を決める。
ただし、その3桁の数字の生成は以下のルールに従う。
・0〜9 の数字を組み合わせる
・同じ数字は一度しか使ってはいけない
・子は、親の数字を推測する為に3桁の数字を入力できる。
・子の3桁の数字のどれかが
・親の3桁の数字の中に、同じ数字で同じ桁だったら Hit
・親の3桁の数字の中に、同じ数字で違う桁だったら Blow
(例1) 親:362 子:692 → Hit1 Blow1
(例2) 親:362 子:236 → Hit0 Blow3
(例3) 親:362 子:362 → Hit3 Blow0
として、Hit数とBlow数を結果として表示する。
・子は推測できるまで数字の入力を繰り返す。
・親の数字と、子の入力した数字が完全に一致(Hit3)したらクリアとする。
がんがって! わからない事があったら、ビシバシ聞いてください。 http://gamdev2.hp.infoseek.co.jp/cgi-bin/up/No_0106zip.html
ソースとEXE両方入ってます
課題1,2,3,4,5,6,8,10をやってみた
開発環境はBasic4GL
ソース中のコメントは日本語で入れたから日本語フォントを設定してないと文字化けする
Basic4GL使ったのは初めてだけど好感触
速度も結構速いし実数も使える
ポインタや構造体もある
あとはクラスがあれば・・・・せめて関数が欲しかった これ1から読んでるだけでも結構勉強になりますね^^
数学の勉強とかも答えを見ながらするタイプなんで
良問最高!! 今日から俺漏れも参加します。
まあ参加とはいっても勝手にwiki内の課題をこなすだけですが。
言語はC/Win32APIで。ウィンドウの表示すらよくわかっていませんが、
殺られる前に殺れをモットーにがんがります。 誰もいないくさいので俺がこのスレ乗っ取ります。
課題3〜5まで終わりました。
ひとつの課題から思った以上に多くのことを学べますな。イカス。
この調子でどんどん進めていこうかと。 ふと見てみたら参加してるヤツが。
がんばれ、蝶がんばれ。 >>528
がんばる、蝶がんばる。
現在課題6をやっている最中です。
課題自体は満たしてはいるんですが、
フレームレートの調整をしたいので現在も続行中。 課題6終わりました。
俺マジこのスレ独り占め。まあ、わざわざ新スレ立てて
一人で盛り上がっているよりはマシだと思ってください・・・。
最近、この板のレスの内容がわかることが多くなってきました。
この板に初めて来たときは知らない単語の嵐で解読不能だった覚えが。
少しは成長しているのだろうか。そうだといいのだが。 課題7終わりました。終わりはしたんですが・・・
>画面を横を640kmと仮定し、初速、角度を入力させ、弾の軌道を描いてくれ。
>ちなみに、初速は29000m/s以下で
>重力加速度は10m/(s^2)でお願いします。
この設定どおりに作ると、
初速を小さくする
→画面の横が640[km]というスケールのでかさのせいで、
画面上でほとんど弾が動いて見えない。
初速を大きくする
→上に加えていつまで経っても着地しない。
(例えば真上に200[m/s]で打ち上げたら戻ってくるまで40秒かかる。
しかし初速の上限はこの100倍以上・・・。
っていうか俺計算間違ってないよね?間違ってたら指摘щ(゚Д゚щ)カモーン)
ってな感じで物理シミュレーションっぽく見えないので、
横を640[m]として初速を80[m/s]以下にするくらいが
ちょうどいいのではないかって案を一応出しておきます。
俺のソースがいつもより汚いのもあるので、
この課題は後日改めてやり直すことにして次に進みたいと思います。 ソースまたはバイナリを出してくれないと
プログラミングの観点からはアドバイスのしようが無いな
まあ、チラシの裏がわりに日記書いてるなら別にいいんだけど >>532
全然人がいないので、ソース挙げて放置されるのが恐かったw
これからは、ソースに対してコメント貰えたらラッキー程度に考えることにします。
というわけで課題3〜6までのソースをうpしました。
改善点・アドバイスなどありましたら指摘お願いします。
http://gamdev.org/up/img/3050.zip
個人的には、C++を使った課題6が激しく不安です。
C++ではこれ以外にはHello,worldしか作ったことが無いので・・・。 面白そうだったのでLGP弄ってみた。
面倒そうな課題外伝と課題1、2を後回しにし、
課題3〜10と来てちょっと疲れたので気分転換に課題11をやってみた。
ソースはかなり自分勝手に書いてるので注意。
ttp://gamdev.org/up/img/3084.zip
あれだな、HSPでも作った事あるんだが、
ライフゲーム作るとその言語に大分慣れた気分になるのが不思議だなw 俺もやってみようかな言語はHSPだけど
講師の方はいないの?とりあえずage >>535
ノシ
とりあえずどのぐらいのレベルなのか・言語遍歴ドゾー >>536
ほとんど初心者です。ここで勉強ようと思ってます
もちろん他にやったことある言語はないです。
課題1と課題3はできたけど課題2の素数がまったくわからない・・・ とりあえず検索ワードおいときますね
エラトステネスのふるい >>538
あーだめだ。わからない
エラトステネスのふるいの計算の仕方はわかったけど
どうやってHSPでやればいいのかがわからない
と言うかまだ基本的なことがわかってないみたいだから
講座とか読んで勉強してきます なんとなく漏れもHSP3で参加してみます。
…課題1〜3まで出来たけど課題4が出来ないや。sin波形ワケワカラナス http://gamdev.org/up/img/3435.phps
課題11 ライフゲーム製作
VC++で作りました
BCCでも少しの修正で動くと思います ほほぅなかなかやりおる。でもあんまり飛ばすと後で急にやる気なくなるから注意だ。 ここで、問題を出してみる。
当たり判定を、四角形ではなく円形で行ってください。 http://gamdev.org/up/img/3539.phps
課題8 弾を撃って貰います
当たったら画面外へ移動
画面外で重なってしまわないように座標に注意 >>555
先生が現れればある程度復活するだろう。 他人にソース見せて悪い箇所を指摘してもらうのが上達の秘訣って聞いたんだけど
先生なってくれる人居ないのかな? こっそり開始
数当てゲーム作るぜ
チラシの裏状態になるんだろうけどな ソース(VB2005)
http://gamdev.org/up/img/5982.phps
まとめ
一行入力はConsole.ReadLine
一行出力はConsole.WriteLine
乱数つくるのにNew Randomしないといけない
Console.ReadLineで何も入力しなければ例外がでるのでtry〜catchで処理
採点とまでいかなくてもおかしいところがあったら教えてくれよな ■ このスレッドは過去ログ倉庫に格納されています