トップページ⇒tech
1001コメント289KB

C/C++言語でRPGを作ってみるスレ

■ このスレッドは過去ログ倉庫に格納されています
0001武家諸法度@co.jp2005/04/30(土) 13:07:56
作りたい人がきて。
0002デフォルトの名無しさん2005/04/30(土) 13:10:02
続きはこちらでどうぞ。
http://pc8.2ch.net/test/read.cgi/gamedev/1101161690/
0003武家諸法度@co.jp2005/04/30(土) 13:13:55
 こっちでもやろうぜ。
0004デフォルトの名無しさん2005/04/30(土) 13:14:52
やろうぜ
0005デフォルトの名無しさん2005/04/30(土) 13:17:03
int lv; lv += 1;

これでも立派な RPG です。
0006デフォルトの名無しさん2005/04/30(土) 14:56:36
RPGよりプログラミングのほうが面白いよな。
レベルだのレアアイテムだの、どこぞのPGが書いた単なる変数の値に
一喜一憂して何が楽しいんだろ。
0007デフォルトの名無しさん2005/04/30(土) 15:11:03
>>6
それは言いすぎじゃないか?
自分だってどこの誰が書いたコンパイラで一喜一憂しているくせに
0008デフォルトの名無しさん2005/04/30(土) 18:15:49
みんな何か勘違いしてないか?
RPGは言語だぞ!
0009デフォルトの名無しさん2005/04/30(土) 20:36:14
ロケットランチャーだろ
0010デフォルトの名無しさん2005/04/30(土) 21:36:46
よくある RPGゲーム という言い方が
ある意味皮肉として正しい気がする件
0011デフォルトの名無しさん2005/04/30(土) 23:36:18
AS400のことですか?
0012デフォルトの名無しさん2005/05/01(日) 00:21:52
>>5
初期化せぇ
0013デフォルトの名無しさん2005/05/01(日) 00:46:16
>>12
Javaしか知らないんですか?
0014122005/05/01(日) 01:01:56
>>13
スレタイ嫁
0015デフォルトの名無しさん2005/05/01(日) 01:03:50
>>14
Cではあの位置では初期化不要です
だから、>>12のようなこと言うのは
Javaやってるやつかなと・・・
0016デフォルトの名無しさん2005/05/01(日) 01:08:23
>>15
>Cではあの位置では初期化不要です

おいおい
0017デフォルトの名無しさん2005/05/01(日) 01:20:01
いつのまにか初期化不要になってたんだ。
全然知らなかった。もうプログラマ引退だな…
0018デフォルトの名無しさん2005/05/01(日) 15:17:11
グローバルなら初期化わざわざ書く必要はないが、ローカルならちゃんと書かなきゃだめだろ
0019武家諸法度@co.jp2005/05/01(日) 18:57:51
みんなCとC++のどっちやってる?
0020デフォルトの名無しさん2005/05/01(日) 19:04:44
>>19
武家諸法度ってどんなのがある?
0021武家諸法度@co.jp2005/05/01(日) 19:12:00
>>20
一、文武弓馬の道をもっぱらたしなむこと。・・など
ほかは自分で調べろ。そのほうが勉強になる。

それより、「厨房」ってどうゆう意味?
0022武家諸法度@co.jp2005/05/01(日) 19:14:11
つけたしでCとかをプログラミングするやつって
どこでダウンロードするの?
0023デフォルトの名無しさん2005/05/01(日) 19:16:31
Eclipseのプラグインの話をしているのか?
0024武家諸法度@co.jp2005/05/01(日) 19:22:02
>>19
マジでどっちやってるか教えて
0025デフォルトの名無しさん2005/05/01(日) 19:24:39
おれはC言語やっている
C++をなぜやらないかと言われても答えを出すのは難しいんだけど・・・
C言語でこと足りるので・・・


0026武家諸法度@co.jp2005/05/01(日) 19:28:36
へぇ〜。じゃ、みんなそうなの?
0027デフォルトの名無しさん2005/05/01(日) 19:31:14
ただし、俺はC言語の他に
Java,Perl,PHPができる(shもいれとくか)
1つだけって言うのはさみしいと思うけど・・・
0028デフォルトの名無しさん2005/05/01(日) 19:49:17
>Java,Perl,PHPができる(shもいれとくか)
無料だったら何でもいいってことですか?
0029デフォルトの名無しさん2005/05/01(日) 20:12:14
C++を使っている。
iostreamとかstd::stringとかがあるからってもの理由に入るだけど、単純にベターCとして使うのも美味い。
0030デフォルトの名無しさん2005/05/01(日) 20:16:35
無料の意味がわかんないけど
逆に有料の言語なんてあるのかな?
例えばLinuxいれたらコンパイラ必要な奴も全部無料だよね
0031デフォルトの名無しさん2005/05/01(日) 20:39:30
でだ、誰か小規模の設計してくれないか?
ついでにOOも教えてくれると・・・
たより過ぎか
0032デフォルトの名無しさん2005/05/01(日) 20:42:02
RPG作ったこと無いし、あまりやったこと無いのでどんな要求があるのかわからない
0033デフォルトの名無しさん2005/05/01(日) 21:50:18
つうかC++使った方が楽じゃん
ゲームタスク組む時とか
0034デフォルトの名無しさん2005/05/02(月) 00:52:52
わざわざC++で組む意味がわからん。
速度の要求されない部分はもっと楽な言語でいいじゃん。
0035デフォルトの名無しさん2005/05/02(月) 04:04:13
無料の RPG ってあるの?
IBMの汎用機とか買わないと使えないものだと思ってた。
0036デフォルトの名無しさん2005/05/02(月) 05:25:28
C++使えるのにCだけでやる意味が分からん
0037武家諸法度@co.jp2005/05/02(月) 05:53:04
>>22の続きで、本当にC++とかダウンロードするとこ教えて。
あと厨房の意味も。
0038デフォルトの名無しさん2005/05/02(月) 07:43:29
C++そのものはダウンロードできない。逆にいうと、紙と鉛筆やメモ帳さえあればC++は記述できる。

厨房ってのは…
厨房【ちゅうぼう】
食物を調理する所。くりや。台所。調理場。・・など
ほかは自分で調べろ。そのほうが勉強になる。
…といったような、文脈にそぐわないレスを繰り返す人がその一例。
他にも多義に渡るが、総じて肯定的な意味では使われない。
http://www.google.co.jp/ で軽く検索をかければすぐに分かるような簡単な疑問について
恥じることもなく質問する人を含む。
0039デフォルトの名無しさん2005/05/02(月) 09:05:00





















>>38
文章的に破綻しています。

0040武家諸法度@co.jp2005/05/02(月) 16:33:07
>>38
ふーん。じゃ、どーやってC++をプログラミングするの?
0041デフォルトの名無しさん2005/05/02(月) 16:46:22
キーボードを叩いて。
0042デフォルトの名無しさん2005/05/02(月) 16:54:40
何この、厨臭漂う糞スレは
0043デフォルトの名無しさん2005/05/02(月) 16:55:40
何って言われても、みたまんまのスレだよ。
0044デフォルトの名無しさん2005/05/02(月) 17:07:45
確かに見たままの糞スレとしか言いようがないスレなのは確かなようだが
0045武家諸法度@co.jp2005/05/02(月) 21:00:49
しかたないな・・・

俺的には、1000いきたいな・・ 
ま、かいてればそのうちいくし

しかも、これはCでRPG作る技術をつけるためのすれだしな
0046武家諸法度@co.jp2005/05/02(月) 21:02:51
>>42に相手するな
0047デフォルトの名無しさん2005/05/02(月) 22:25:59
>>1
やっぱ気になる?
0048デフォルトの名無しさん2005/05/02(月) 22:40:47
C++コンパイラは無料でDL可能だよ
0049デフォルトの名無しさん2005/05/02(月) 22:54:06
>>36
>C++使えるのにCだけでやる意味が分からん

オープンソースにしていろんな環境で使ってもらおうとするときに、
C++で書くと、「どこまで規格準拠したC++なのか」がバラバラで、
結局使えないから。
0050デフォルトの名無しさん2005/05/02(月) 23:07:27
ちなみにC言語はC++より 何かが速い
0051デフォルトの名無しさん2005/05/02(月) 23:10:06
>>49
>オープンソースにしていろんな環境で使ってもらおうとするときに
そんなRPG聞いた事ないぞ
0052デフォルトの名無しさん2005/05/02(月) 23:14:42
>>51
しぃ〜黙ってて
いま、49が作ってるから
0053デフォルトの名無しさん2005/05/02(月) 23:24:21
>>18 も認識間違ってると思うのだが、
初期化が必要ないのは static 変数の場合でしょ? Cの場合。
Javaならコンパイル時にエラー。C/C++未経験者もいるみたいなので一応突っ込んでおく。
0054デフォルトの名無しさん2005/05/02(月) 23:44:04
(゚д゚)・・・・
0055デフォルトの名無しさん2005/05/02(月) 23:45:27
>>53
本気なのか?
0056デフォルトの名無しさん2005/05/02(月) 23:59:13
(≧∀≦)
0057デフォルトの名無しさん2005/05/03(火) 00:26:46
>int lv; lv += 1;
のように、続けて書いてある時点で、何処に書いてあろうがダウト
まぁ、
#define int Hero
とかしてあって、+=をオーバーロードしてあれば大丈夫かもしれんが
予約語をプリプロセッサに掛けた事はないので、どうなるかは知らないが…
0058312005/05/03(火) 00:32:23
お客的要望
キーボードかマウスで(そのシーンで止まっても可)の入力、出力(内部の受け取り)方法
文章表示や戦闘などのイベント処理への移行方法と復帰
表示文字(文章)の追加削除の影響がプログラムに与える影響の縮小(プログラム内に平書きしてた)
入力⇒:画像表示(後キャラ表示)⇔イベントシーン:通知の流れ?ん?

[All ゲ制作技術]
みんなでオリジナルRPG作るぞ!INゲ制作 Part4
ttp://pc8.2ch.net/test/read.cgi/gamedev/1114439070/
中身の議論の例

C++でRPGゲームを作成する
ttp://pc8.2ch.net/test/read.cgi/gamedev/1101161690/
>107 >108

無料で俺がRPGを作れるようにするスレ
ttp://pc8.2ch.net/test/read.cgi/gamedev/1059218326/
98氏 >107 >190 >211 245氏

wiki
ttp://gamdev.gozaru.jp/w/00398_00000.html
うpろだ
ttp://gamdev.org/up/upload.php

Delphi,HSP,ツクール ,OO,マルチスレッド,まだまだ先は遠い
ROMはたくさんいる,google,段階的
0059デフォルトの名無しさん2005/05/03(火) 06:39:57
俺、武家諸法度からフォルトの名無しさんになった
0060デフォルトの名無しさん2005/05/03(火) 06:41:01
 つーかだれかRPGつくれよ
0061デフォルトの名無しさん2005/05/03(火) 07:46:21
つーか全員ゲ作成技術板行けよ
0062(・∀・)作ってミターヨ2005/05/03(火) 10:48:48
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
void pause(void){printf("ENTER> ");fflush(stdout);fgetc(stdin);}int d100(void){return rand()%100;}
int main(void){int hp=20,lv=1,exp=0,hour=0,day=1,mode=1,d,e_hp,e_lv;char s[256],*e_name;srand
(time(NULL));printf("You're a Sword Master wannabee.\nFight and get experienced!\n");pause();
while(lv<6&&hp>0&&!feof(stdin)){printf("\nStatus: HP=%d, Lv=%d, Exp=%d\n",hp,lv,exp,day);
printf("Command? ");fflush(stdout);fgets(s,256,stdin);switch(mode){case 0:/*FIGHTING*/
if(!strncmp(s,"attack",6)){d=d100();if(d<lv*2+50){if(d<5+lv){printf("CRITICAL HIT!!\n");
d=lv*10+d100()%10;}else{printf("Hit!!\n");d=lv+d100()%5;}printf("You gave %d point%s of damage to the %s!!\n",
d,d>1?"s":"",e_name);e_hp-=d;if(e_hp<=0){pause();printf("You defeated the %s!\n",e_name);pause();
d=d100()%e_lv+5;printf("You got %d point%s of experience!!\n",d,d>1?"s":"");exp+=d;if(lv==exp/20){pause();
printf("LEVEL UP!!\n");pause();lv++;if(lv<6)printf("You're now Sword Master wannabee Level %d!! (max HP=%d)\n",
lv,lv*20);}mode=1;break;}}else{printf("Missed!!\n");}enemy:pause();if(e_hp>0){printf("The %s's attack!!\n",
e_name);pause();d=d100();if(d<e_lv*3+28){printf("Hit!!\n");pause();d=d100()%(e_hp/2+1)+e_lv;
0063(・∀・)作ってミターヨ2005/05/03(火) 10:50:12
printf("You got %d point%s of damage!!\n",d,d>1?"s":"");hp-=d;}else{printf("Missed!!\n");}}}else
if(!strncmp(s,"escape",6)){d=d100();if(d<33){printf("Miss!!\n");goto enemy;}else{printf("You escaped!!\n");
mode=1;}}else{printf("Help:\n attack\n escape\n");}if(hp<=0){printf("\nYou died.\n");}break;case 1:/*FIELD*/
if(!strncmp(s,"walk",4)){d=d100();if(d<25){char *enemies[]={"Slime","Draky","Ghost","Skelton","Scorpion",
"Knight","Golem","Dragon"};printf("You encoundered an enemy!!\n");pause();e_lv=d100()%4+lv;e_hp=e_lv*3+d100()%3;
e_name=enemies[e_lv-1];printf("It's a %s!! (HP=%d)\n",e_name,e_hp);mode=0;}else{printf("You walked.\n");hour++;
}if(hp<lv*20)hp++;}else if(!strncmp(s,"rest",4)){printf("You rested.\n");hp+=d100()%5+1;if(hp>lv*20)hp=lv*20;
hour+=3;}else{ printf("Help:\n walk\n rest\n");}if (hour>=12){day++;hour-=12;printf("\n*** Day %d ***\n", day);
pause();}break;}}if(lv==6)printf("\nYou're now *real* Sword Master!! (%d days)\nConglaturations!!\n", day);
printf("\n*** Game Over ***\n");}
0064(・∀・)作ってミターヨ2005/05/03(火) 10:59:47
《取扱説明書》
藻前様は見習い剣士だよ。戦って経験値をうp汁!
歩くとモンスターに遭うよ。戦うか逃げるか汁!
歩くとHPが回復するよ。休むとHPが多めに回復するよ。
ただし時間も多めに過ぎる諸刃の剣。玄人にはお勧めできない。
EXPが100までたまると剣士に認定だよ。
一緒にレベルもうpするよ。敵も強くなるよ。
できるだけ少ない日数でクリア汁!
0065デフォルトの名無しさん2005/05/03(火) 11:09:07
キタネェナ
0066(・∀・)作ってミターヨ2005/05/03(火) 11:14:07
cbコマンドかGNU indentで展開汁!(笑
0067デフォルトの名無しさん2005/05/05(木) 18:29:55
>>62 >>63 >>64
それはCかい?
0068デフォルトの名無しさん2005/05/05(木) 18:34:17
?C以外のなんだというのか
0069デフォルトの名無しさん2005/05/05(木) 20:07:55
C++とWin32APIで作ってみたいんだけど…
「右クリックを押す」でもタイトル画面の時、フィールド画面の時、戦闘画面の時、
それぞれ挙動がちがうけど、みんなどうやって制御してる?
状態を表す変数をドコで保存すればいいのやら…。
グローバル変数で制御するなんてもってのほかだし。
メッセージを受け取ってイベントを制御するクラスを作って、
そのクラスに状態を表す変数を保存すればいいのでしょうか?
0070デフォルトの名無しさん2005/05/05(木) 20:14:09
それがわからんようじゃ無理
0071デフォルトの名無しさん2005/05/05(木) 20:23:01
>>69
MFCやWTLみたいなクラスライブラリを使っていれば、
当然ウィンドウを示すクラスがあるだろうからそのメンバ変数で状態を管理すればよい。

そういうのを使っていなければSetWindowLongPtr()やSetProp()で自前のクラスを保持すればいい。
(WM_CREATEなどでnew、WM_DESTROYなどでdelete)
0072デフォルトの名無しさん2005/05/05(木) 20:25:57
>>69
ルーチン毎に、コールバックの種類を変えるか、
コールバックを呼び出す位置を変えるかかな。
0073デフォルトの名無しさん2005/05/06(金) 07:59:59
突然でわるいんだが、Cはどこでプログラミングすんの?
0074デフォルトの名無しさん2005/05/06(金) 08:05:24
windows2000のコンソールだとエスケープシーケンスで文字消せないんだけど何か方法ない?
0075デフォルトの名無しさん2005/05/06(金) 08:29:06
http://ntgnma039180.gnma.nt.adsl.ppp.infoweb.ne.jp/
うぇwwwっうぇw
うはっwwwおkwwwおkwww
おkwwwwwwっおkwww
っうぇwwwうはっwww
wwwwwwwwwwwwっうぇおkwww
0076デフォルトの名無しさん2005/05/06(金) 09:31:09
>>74
カーソルが行頭に戻るだけでいいなら'\r'
0077デフォルトの名無しさん2005/05/06(金) 09:41:45
>>76
ありがとう
一次元RPG作れそうな気がしてきた
0078デフォルトの名無しさん2005/05/06(金) 12:36:51
>>73
やっぱ、通は花のパリ
0079デフォルトの名無しさん2005/05/06(金) 12:38:45
>>73
好きな所でしろ。
こたつの中でも便所の中でも、
お好みでどうぞ。
0080デフォルトの名無しさん2005/05/06(金) 13:11:05
>>78
「花」ではなく「華」
0081デフォルトの名無しさん2005/05/06(金) 16:00:35
>>79おまえはあの世でしな
ほんとCはどこでプログラミングすんのかおしえて
0082デフォルトの名無しさん2005/05/06(金) 16:14:11
ところでC言語でRPGって作れるの?
0083デフォルトの名無しさん2005/05/06(金) 16:40:55
の
0084デフォルトの名無しさん2005/05/06(金) 16:45:22
作れますが何か
0085デフォルトの名無しさん2005/05/06(金) 17:18:26
とりあえずサンプルを作ったからこれから改造してみれば?
int main(void){
printf("勇者は3ポイント経験値を得た"};
}
0086デフォルトの名無しさん2005/05/06(金) 17:20:52
int main(void){
printf("勇者は3ポイント経験値を得た\n"};
printf("レベルがあがった!\n"};
}
0087デフォルトの名無しさん2005/05/06(金) 17:34:56
かっこ悪い。
0088デフォルトの名無しさん2005/05/06(金) 18:01:33
>>81の続き
まじでCはどこでプログラミングすんのかおしえろ
しかとすんな
0089デフォルトの名無しさん2005/05/06(金) 18:02:25
頭の中
0090デフォルトの名無しさん2005/05/06(金) 18:03:49
>>88
コンピュータの中

テキストエディタでコードを書きコンパイラでコンパイルし実行する。
この作業の無限ループがプログラミング。
0091デフォルトの名無しさん2005/05/06(金) 18:18:27
http://ZD218022.ppp.dion.ne.jp/

うぇwwwwwwwwwwwwおkwww
っうぇwwwwwwwwwwww
wっおkwwwうぇwwwwwwwwwwwwwww
うはっwwwwwwうぇwww
0092デフォルトの名無しさん2005/05/06(金) 18:30:12
まあ、パリでなくてもローマでもいいんじゃない?
0093デフォルトの名無しさん2005/05/06(金) 18:33:02
とりあえず日本はやめたほうがいいな。
0094デフォルトの名無しさん2005/05/06(金) 18:34:36
ローマは一日にして成らず、だからなあ
0095デフォルトの名無しさん2005/05/06(金) 18:58:32
全ての道はローマに通じるから、日本でも大丈夫。やったね!
0096デフォルトの名無しさん2005/05/06(金) 19:14:41
>>64
すごいです。
アルゴリズムも感動。
一週間でクリアしました(面白かった)
0097(・∀・)作ってミターヨ2005/05/07(土) 14:00:53
作った甲斐があった。レスありが�d
0098デフォルトの名無しさん2005/05/07(土) 14:35:43
>>97
8日でクリアしました。面白かったっす。
というか、このゲームをやるためにBCCを入れました。
ゲームより何より、某ランドの登録が一番面倒くさかった…。
0099デフォルトの名無しさん2005/05/07(土) 16:24:34
>>97
ごめん、俺もすごくやりたいんだが、
どこでじっこうするかわかんねー。
0100(・∀・)作ってミターヨ2005/05/07(土) 16:41:55
>>98
意外に好評でビクーリ。ありが�d

>>99
1.DOS窓を開く。
2.notepad rpg.c と入力してメモ帳を開く(ファイル名はテキトー)。
3.>>62-63のソースをコピペして保存する。
4.bcc rpg.c と入力してコンパイルする(rpg.exe ができる)。
5.rpg と入力して実行する。

Borland のCコンパイラじゃなく VC++ なら bcc の代わりに cl を使う。
0101デフォルトの名無しさん2005/05/07(土) 19:31:55
>>100
4・5の作業が不明だけど・・
あと、コンパイルってなに

すいまそん・・わからないことだらけで・・
■ このスレッドは過去ログ倉庫に格納されています