0からRPGを作る
まずは何から学んで行けば良いのでしょうか
ご助言お願いします 図書館に行って「13歳からはじめるゼロからのC言語ゲームプログラミング教室 入門編」がなかったのでこの本を買ってきました
http://www.sbcr.jp/products/4797306718.html
2・3週間以内に一通り学べるよう頑張ります
>>29
そんなシステムがあったのですね
お高い本は図書館で頼んでみます
>>30
ゼロからRPGを作る
が正しかったのですね、日本語って難しいです C言語勉強始めてRPGが完成するの
恐らく最低でも1年〜2年以上かかると思うが
諦めず頑張れ そうだよなぁ。
俺も経験から言わせてもらうけど、中学の時から一生懸命プログラムして
大学でやっとRPGのシステムは完成したんだけど、そこで力尽きた。
出来上がったシステムは時代遅れだし。
考えてみればRPGを作りたいと思ったけど、いつの間にか
RPGのシステムを作ることに目的が変わって、シナリオとか全然考えてなかったのがダメだった。
今はもう昔ほどの創作意欲というかエネルギーは無い。
情熱があるうちにツールでも何でも使って形にしてから、それを移植したほうがいい気がする。 書き忘れた。
だから諦めない自信があるなら今のまま突っ走るといい。 シナリオは自動生成?なら
『RPGシナリオライター君』
ttp://pbgreen.moo.jp/download/sonota/index.htm
ただ、要管理者で実行 >>33
高校卒業までに一つのRPGを作れるよう頑張ります
>>34
最初から勉強してゲームを作るってことは僕の思った以上に時間が必要なのですね・・・
ツクールソフトはできる限り使いたくないので
簡単なゲームから挑戦しながら徐々に難易度を上げていきながら最終的にRPGが作れればな、と思っています
>>36
シナリオを作ってくれるソフトがあるとは驚きです
本を読むのは好きでも書くのは大の苦手なので有難く使わせていただきます 昨日学校の図書室に、今日市の図書館に行ったのですが
どうみてもC++の本のほうが多いというかCの本が1、2冊しかないので
やはり参考書が多いC++を勉強していこうと思います
難しいと聞いたのですが気長に頑張ります ツクールは嫌だという気持ちはよく分かる、しかしRPGを一から作るというのは想像以上に困難
そこでツクール以外のツールの出番なわけですよ >>2
を見て一瞬おおっ!と思ったが、手取り足取りには程遠いな
ツクールなりウディタなりで小さいものを「一通り完成させてみる」のをウススメ
プログラムを勉強しても仕組みとかデータ構造とかは
作るモノごとにそれぞれ理解しなきゃならん なんか適当に開いたスレが意外と参考になった
ありがとうございました プログラミングを組みたいのかrpgかどちらかに決めたほうがいい。
どっちも大変だから。
プログラミングなら、じゃんけんとかミニゲームをまずは作ってみるとか。 >>39,40
ベテランさんの貴重なアドバイスに素人があれこれ言うのもおかしな話ですよね
ウディタをダウンロードしてみました
一連の流れのRPGを作ってみます
>>42
プログラムを組めるようになりたいです
まずはじゃんけんゲームを作ってみます
アドバイス有難うございます まずjavascriptで作ればいいじゃん
javascriptの実行のしかたと書き方くらいは、わかるよね? >>44
JavaScriptでRPGは処理が重そうじゃね?
マップマスが20×20でも400個の地面画像を表示して
更に建物とかの表示を30FPSとかで行ったら
性能の良いパソコンじゃないと処理落ちしそうな気がするんだが C++とDXライブラリにてRPG作製中
インスタンス間のデータのやり取りってどうすりゃいいんだ? >>47
俺はオブジェクトは基本グローバル変数で定義して
インスタンスは全てのクラスから自由にアクセスできるようにしてるよ 俺はツクールで作る
何年か前にツクール買ったけど
まったく触っていないので
まさに0からのスタートです >>44
JavaはC++を一通りできるようになってから挑戦してみたいです
ホームページビルダーでJavascriptを埋め込めるようになってみたいです JavaとJavaScriptは別物と考えたほうがいい。どっちも簡単。
最初に覚えるとしたらJavaがいいかC++がいいのか・・・
悩みどころw
JavaとJavaScriptはゲーム作る上では無視していい
JavaScriptに関してはゴリ押ししてくるキチガイもいるがそれもガン無視でおk >>36だけど
Javaでゲーム作りますが何か?
ttp://d.hatena.ne.jp/aidiary/20040918/1251373370
プロトタイプRPG 05
ttp://www.sm.rim.or.jp/~shishido/rpgp.html
Console RPG at sourceforge (written in C++)
ttp://sourceforge.net/projects/console-rpg/
Professionalゲームプログラミング 2ndEditionのソースコード
ttp://www.sbcr.jp/products/4797332611.html#supportDl
くらいか? あ、>>2のリンクにもRPGのC++のソースあるな
ttp://wiki.game-develop.com/index.php?%A5%D7%A5%ED%A5%B0%A5%E9%A5%DF%A5%F3%A5%B0%2F%BD%E9%BF%B4%BC%D4%B8%FE%A4%B1%2F%A5%C1%A5%E5%A1%BC%A5%C8%A5%EA%A5%A2%A5%EB%2F%C3%CA%B3%AC%C5%AA%B3%D8%BD%AC%2F%A5%DE%A5%C3%A5%D7%A5%A8%A5%C7%A5%A3%A5%BF コレも
JavaでRPGを作ろう!
ttp://www.harukitchen.com/rpg_programming/ C++とDXライブラリで開発されたRPGのソースコード
ゲーム製作チーム「TEAM NAVA」
ttp://rpg.nengu.jp/game/dl/ >>57
ソースの中身みたけど
C++じゃなくてC言語で書いてあるな 見た中ではコレが一番か(しかしこれもCとDXライブラリ)
〜mixC++〜内のRPG講座
ttp://wiki.game-develop.com/index.php?%A5%D7%A5%ED%A5%B0%A5%E9%A5%DF%A5%F3%A5%B0%2F%BD%E9%BF%B4%BC%D4%B8%FE%A4%B1%2F%A5%C1%A5%E5%A1%BC%A5%C8%A5%EA%A5%A2%A5%EB%2F%C3%CA%B3%AC%C5%AA%B3%D8%BD%AC%2FDQ%C9%F7RPG%A4%F2%BA%EE%A4%EC#s449ea13 JavaScriptでもドラクエタイプのRPGなら、それなりに動くみたいだね
ttp://www.programmingmat.jp/soft_lib/m11rpg/m11rpgwj.html
見つけた中で一番簡単なのはコンソールのRPGだけど、コンソールのRPGではコレもあるよね
CUIRPG 1.0(ダウンロードにある)
ttp://victreal.com/ >>59
それどこにRPG講座あるの・
サイト見ても見つからない ブログからトップに行ったらあったよ
下記はRPGのサンプルらしい。ダウンロードして無いから詳細不明
ttp://dixq.net/sm/d10.html >>63
サンキュ
でも、講座って言うから説明とかしてるのかと思ったら
それは無いのか
それならRPG講座って説明はまぎらわしい気がする >>62
いや、そっちじゃなくってこっち
ttp://dixq.net/forum/blog.php?u=114&sd=a 後は、ローグのソース(ttp://sourceforge.jp/projects/sfnet_roguelike/ または ttp://sourceforge.net/projects/roguelike/)とか すいませんリアルが忙しくPCに触る機会が少なくなってしまってまったく勉強ができてない状態です。
来週の土曜日にはまたいつも通りの生活に戻れると思います。
その際にはまたご教授願います オンラインRPGのソースgoogleで公開してたわ
名称がDQMO⇒SBO(ttp://uraran.jp/sbo/develop.shtml)になったやつの
ttp://scrapbookonline.googlecode.com/svn/
ないよりはましだが
ソースがあったところでゲームが出来上がるわけではないしな
絵だけ変えた完全なパクリなら別だがw
>>65を読んでるんだけど序盤で詰まってる
// ゲーム全体の状態遷移
enum GameState_t {
GAME_STATE_TITLE, //タイトル画面
GAME_STATE_NAME, //名前入力
GAME_STATE_MAIN, //ゲーム本編
GAME_STATE_GAMEOVER, //ゲームオーバー
GAME_STATE_ENDING, //エンディング
};
enumって「列挙型」っていうみたいだけど、
こういうのって一般的に使われてるの?
構造体とは違うの? 構造体とは違う。
説明省いて簡単な具体例の一つを示すと、
enum GameState_t {
GAME_STATE_TITLE = 0;
GAME_STATE_NAME = 1;
:
}
となるので、
switch( state )
{
case GAME_STATE_TITLE: (何かの処理)
case GAME_STATE_NAME: (何かの処理)
}
みたいな場合、
switch( state )
{
case 0: (何かの処理)
case 1: (何かの処理)
}
こう書くより見やすくなる。OK?
詳しくはコンパイル時に決まるとかSTLのときどうとかとかあるけど、今は考えなくていい。 >>70
そのレベルだと、ほとんど、
#define GAME_STATE_TITLE 0 //タイトル画面
#define GAME_STATE_NAME 1 //名前入力
...以下略
と書いてあるのと同じだと考えてほとんど差し支えない。
C++はちゃんと基底型だけど、Cならさらに上記と同じようなもの。
クラスの中に入れたり、ネームスペースの中に入れたりして使うのが普通だから
そうなってくると違いが出てくる。
ホントだ、どのケースを表しているのかが判り易いですね
コード中でも
state = 0
じゃなくて
state=GAME_STATE_TITLE
と書けるから、どの状態へ移るのかも一目瞭然ですね
ありがとうございます こんなのにも使う。
enum { are, kore, end };
// 本体とする
int param[end];
for ( int i = 0; i < end; i++ ) param[i] = 0;
param[kore] = 14;
で、たとえばsoreを追加したいとする。
enum { are, sore, kore, end };
これでも本体のコードは変更無しで動く。
もし数字で固体を管理してると、初期かも書き直さないといけないし、
全部のparam[1]をparam[2]に書き換えが必要。
バグの原因。 >>74
そんな構造になる時点で設計を間違ってる気がするんだが…
具体的にどういうときに使うの?
煽りじゃないよ。純粋な疑問。
>>75
想定しているのは構造体を使えないプログラム初心者が、
ちょっと複雑なプログラムをして、ベタで定数を扱おうとしたとき。
自分が実際にこういう構造にするときは簡単にスクリプトっぽい処理をさせる場合など。
命令の入れ替えや追加が容易だから。
モチベーション低下を防ぐ方法ってありますかね
私はこのスレとかみて、他の人ががんばってるのを見ることで
自分もやるぞーって感じでテンション上げてますが >>77
一番良いのは崇拝者を作るか、金を稼ぐか、好きな人に貢ぐのどれか。
火曜日から金曜日まで修学旅行ですが
今日明日PCに触れるので頑張ります。
今の目標
じゃんけんゲームを作る
最終目標
RPGを作る
久しぶりなので hellowworld から勉強し直します >>78
貢ぐのだけはやめとけ。
好きな子に一生懸命つくったRPGをプレゼントしたら、キモがられた。
しかも最悪なのは横から来た嫌な女が勝手に持っていってプレイした挙句
散々キモイだの幼稚だの言いふらされてクラスどころか隣のクラスからも笑いものに。
恥ずかしいやら何やらで精神的に凹んでヒキになって一ヶ月。
ふてぶてしく謝りに来たもんだからグーパンで殴り倒したら泣いてやんの。
一生懸命作ったものが笑いものになったときの苦痛はハンパじゃあないぞ。
悪いことは言わないからやめとけ。
まぁ、その嫌な女が今は俺の嫁なんだけど。 Queekが出てきたときには驚いたもんだが、これで作られた完成品のゲームあるのかね >>77
「モチベーション」って
そういう意味の言葉じゃないよ。 >>82
所詮はは道具だから作りたいものによって優劣は違う
先進的という部分では「Queek II」は他と違うクォータービューマップを採用していて
いまだ類似するフリーのRPGオーサリングツールはない
また変り種としては「3DダンジョンRPG制作ツール」はWizardryタイプの3D迷路を使った
RPGに特化していてこのタイプのRPGを作るなら作り易さは他の追随を許さない
>>83
ツクールは作り易い部分と其れ故のユーザーの多さ以外はあまり特化した部分はない
未だにビデオチップを気にした互換性重視のソフトウェア描画のため内容の割に
ゲームが重くなり易い言う致命的な病気を抱えてるのが痛い wiz風のダンジョンRPGのソースコードってどこかに落ちてないかな?
参考にしたい jClassicRPG
ttp://javacrpg.sourceforge.net/
3DダンジョンRPG「DarkHall」
ttp://wiz.morphball.net/darkhall/ Wizardry Legacy
ttp://www.allegro.cc/depot/WizardryLegacy 0からRPGを作ってみます。
3Dは手間がかかると思うので2DのRPGにするとして・・・
ロマサガ1みたいなの作ってみたいですが、いかがでしょうか。
プログラム経験はありませんw すみません、あげてしまった・・・。
とはいえ、ロマサガ作るくらいならロマサガやれよっていう話なので、
なにか独自性を追加したいところ。
ロマサガをやりつつ思うのは、体験できないイベントが出てくるのと、
強くてニューゲームがないので全部やりこみつつ1周するのが疲れるので
同時体験できないイベントはたくさんあるけど、
何回でもプレイできますよーというスタイル。
しかし、それだとゲーム性がシナリオに依存してしまいますね。うーん。 ロマサガ1みたいなっていう企画意図である時点でゼロからではないよな
後自分で全部やらず人の手を借りる企画発起人ならば
既存のゲームの名前を上げて○○みたいなゲームではなく
その内容を○○を知らない人に内容をちゃんと伝えられる企画者、仕様書をかけないとだめだぞ ロマサガならツクールでいいじゃん
プログラム組んだ事もないのなら尚更 >ロマサガ1みたいなっていう企画意図である時点でゼロからではないよな
プログラムを0からだと思ってました・・
企画も含まれるとは考えてなかったです。
>ロマサガならツクールでいいじゃん
こ、これでもプログラマを目指しているので
きちんとプログラムでやりたいなと思ってまして・・! @開発環境をインストールする(visualstudioの無料版でもなんでもいい)…2時間
A新規プロジェクト作る…1時間
Bウィンドウを表示させる…10分
Cウィンドウ(フォーム)にイメージボックスを貼り付ける…1時間
Dイメージボックスに緑色の四角形を描く(大きすぎないように)…2時間
E四角形を縦横10個ずつ並べる…2時間
これでマップの完成。
ね、簡単でしょ?
96です。
実はRPG作りたいなと思っていたので
途中まで組んであったものを再利用しつつ作ってみました!
http://gmdev.xrea.jp/st/up/604.zip
…といっても、マップチップが表示できて
キャラが表示できて、カーソルキーでキャラが動くだけですが・・・
RPGのネタもらいつつ作りたいです・・・!
DXライブラリというライブラリ使ってます。
exeのファイルが何でこんなに大きくなるのん・・・ 二次元配列を使ってマップの描画はできましたが、
この配列をマップの数だけ書くのか・・・ >>101
お主に教えられることはもう何もない。
卒業おめでとう! 俺も言語できない人が○○みたいなのつくりたいって言うなら
ウディタかツクールの方がいいと思う
だいたいまだ言語がさっぱりなのにいきなりRPGは無理がある >>102
マップは外部ファイルにしる
できれば既存のマップエディタと同じ形式にして編集できるように
まあ最初はウディタかツクールで一つ完成させるってのは同意 96です。
>>104
わーい卒業だー
>>105
すみません、プログラム勉強中かつプログラマを目指し中なのでできればプログラムでいきたいです・・!
ゲームの作成方法を限定していくと板違い・・・でしょうか?
>>106
ふむ。。画像みたいな感じで読み込めばいいということですね、やってみます!
そして105さんのほうでも書きましたが、プログラムで進めたいのです・・!すみません。 マップエディター?を探したら以下のが出てきたので
組み込んでみました!(といってもサンプルがあってほとんどコピペだったんですが・・)
http://www.hyperdevice.net/
マップも出ましたー!
スクロールしないといけないですよねぇ・・
http://gmdev.xrea.jp/st/up/605.zip まずはツクールかウディタに1票
過去にでも1本完成させたことがあって
それでも面倒な作業とは思いつつも作りたいと思うのなら
プログラミングでってのはアリだと思う。
だが、経験のない者が言うのはただの無知
既存のツールを使っても完成させられないなら
プログラミング言語での製作はもっと無理。
強制されるべきではないし、それなり?に動けてるので
今は良いかもしれないけど作る面倒さを知る必要はあるかと。 基本的なデータ構造を知る上でも近道
無駄にはならんよ 俺もDXライブラリを色々いじってるわ
「作品」としてRPGを作りたいのならそりゃツールを使った方が早いかつ高品質に作れる
だろうけど
プログラミングを学ぶ上でってのならそれで良いじゃないか
なんだか完成させるのが目的だと考えている人が意外と多いことに驚いた。
96です。
みなさんありがとうございます。
ツクールは完成には至りませんでしたが過去にさわったことがあります。
いまプログラマを目指しているのもそこからですが・・・。
RPGについては若干大きめなものを考えていてしまったので、
ちょっと頭を切り替えて小さめにして完成を目指してみます。 さいしょの一作はまず完成させること
完成は次の作品のはじまり 中身の大小はどっちでもいいと思う
見込みを含めて身の丈にあった企画・計画を立てれるかが問題
小さすぎると物足りないだろうし、大きすぎると頓挫する。
最終的に決めるのは>>114だ。
出来ると思うのなら好きに進めればいい。
だが、時間はどれだけかかってもいいから
可能な限り完成させて欲しいと思う。
>>113
理想・妄想を形にする = ゲームを完成させる
と思ってるのだけど間違ってる?
技術共有が目的のスレなら完成させる必要もないけど、
作る・作りましょうってスレなら完成させるのが目的の一つだと思う。 96です。おひさしぶりです。
バージョン0.04
http://gmdev.xrea.jp/st/up/612.zip
◆できたこと
・タイトル画面(操作方法とかもここに!)
・ランダムマップ生成、マップスクロール
・敵の出現
・キャラの歩行アニメ、向き
・複数キャラ画像の表示
・HP表示
・敵との当たり判定
・マップとの当たり判定
・敵と当たると敵と自分のHPが減る処理
・敵のHPが0になると消える
・敵に当たると敵が吹っ飛ぶ
◆作りたいもの
・体当たりアクションなハクスラRPG!(さがしても見つからなかったので…!)
◆所感
スクロールが意味がわからなさすぎて時間がかかりました・・・
ランダムマップの生成も難しかった・・・
HPの表示もバーの計算が難しかったです・・・
>>116さん
プログラムでやりたいというのが最初のコンセプトでもあるので
これで、完成までがんばらせていただきます!!
96です。
◆残りやること
・ダメージの表示、ヒットエフェクト
・ダメージ計算式の実装
・経験値の蓄積、レベルアップ
・キャラクターのパラメーター
・宝箱の出現、開封、アイテムゲット
・アイテム画面(アイテムの一覧、所持数、収集率)
・装備画面(ステータス表示とか?)
・階段のランダム配置、階層移動
・階層ごとの敵の出現と敵のレベルアップ
・BGMの実装
・効果音の実装 すんません・・またあげてしまった・・・
これなんとかならないのか・・・ よく出来ているなぁ。ちょこっとだけしか触ってないけど
今の段階で気になって且やることリストに載ってないのは
斜め移動の移動量矯正
敵が移動不可地域に出現しないようにする
ぐらいかな、がんばれー ランダムマップ生成だと・・・? いきなりすごいことやりおる
あとは効果音を最優先でやるべき(バグバグになるはずw)
その他バグ
・1ブロック幅空いている隙間を通りぬけられない
・敵キャラの中に1体だけ画像のおかしいのがいた(背景とかゴミ画像とか)
>>123
>・1ブロック幅空いている隙間を通りぬけられない
多分1ブロック分の通路は生成しないようにやったんだろうけど
マップ端との調整不足で出来ちゃってる
だから右と下にしか1ブロック分の通路は出来てない
で、何で通れないかは自分の右側下側を判定する時にい1ブロック分のサイズを足しちゃってるんじゃね?
チップサイズ-1じゃないと隣のチップと判定しちゃう
開始時にブロックが右に有ると縦に下にあると横に動けないの見ても分かる >だから右と下にしか1ブロック分の通路は出来てない
あ、他でもできてたw 96です。
>>121
・・・こんなものがあったんですね・・!
デフォルトでsageというのができるようになりました!ありがとうございますー。
>>122
ありがとうございます!
斜め移動全然気になってませんでしたが、確かに移動量が多くなってますね、
修正してみます。
そういえばプレイヤーは壁に入らないように配置してましたが、
敵の配置は適当でしたので、こちらも修正します!
>>123
最初のマップを読み込んだときに、二次元配列があり、それを適当に触ればいけるという
情報があったのでがんばってみました!w
効果音了解です、やってみます。
バグもありがとうございますー!確認してみます。
>で、何で通れないかは自分の右側下側を判定する時にい1ブロック分のサイズを足しちゃってるんじゃね?
あー・・・確かに。すごいですね、おそらくビンゴだと思います・・・!!
>多分1ブロック分の通路は生成しないようにやったんだろうけど
そのはずなんですけど、たしかにできてますねぇ・・・はて・・。
これ名前に「96」って入れておいてもいいんでしょうか・・・。 これからもうpする予定あるならトリップ付きで名前付けた方が良いと思う
>>127
とりあえず名前に96と入れてみました!
トリップ聞いたことあるけど、使ったことないのでしらべてみます・・!
汚いソースですけど、ランダムマップ作るところをあげてみましたー。
http://gmdev.xrea.jp/st/up/613.txt
10個点を作って、そこからランダムで適当に周りに道を拡げて、
その後道同士をつなぐ・・・って感じです。
道を広げるときと、道をつなぐときに3x3マスの道を使ったので
1マスのエリアはできないかと思いましたが、
よく考えると、道同士に挟まれたりすると、1マスエリアできますねwww バージョン0.05になってみました。
http://gmdev.xrea.jp/st/up/614.zip
*1ブロック幅空いている隙間を通りぬけられない
*敵が移動不可地域に出現しないようにする
*ダメージの表示
*レベルアップ演出
*敵キャラの中に1体だけ画像のおかしいのがいた(背景とかゴミ画像とか)
*マップの立体化?をしてみたが変なところが盛りだくさん・・・
マップ外に行ける以外は動作的に可笑しいのは無くなったかな