トップページgamedev
1001コメント413KB

みんなでMMORPGを作りましょう

■ このスレッドは過去ログ倉庫に格納されています
0001喪装中04/08/13 20:08ID:la60fqKo
俺が監督をやります

随時スタッフ募集
0680名前は開発中のものです。04/08/29 14:33ID:uVKQmkvz
何が大事かは他人が決めることじゃない
0681名前は開発中のものです。04/08/29 14:34ID:aPYcshfX
>>680
0682名前は開発中のものです。04/08/29 14:36ID:uVKQmkvz
おおごとって読ませたかったのか?
0683名前は開発中のものです。04/08/29 15:03ID:zhyfUvr0
いいか君たち。完成できるかどうかは、技術うんぬんより、
まずヤル気。とにかくヤル気。最後までのヤル気だ。

技術のあるつもりのやつは、調子に乗ってるので、ちょっとやるが、
 「先が見えた」とか「オナニーしてくる」とか言い出して、すぐやめる。
技術のないやつは、常に「技術が無いから勉強勉強」と思っていて、
 時間をかけながらも、シコシコシコシコシコシコシコシコと積み上げて、ついには完成させる。

ちょうど、ウサギとカメみたいなもんだ。

「ヤル気」 これだけあれば、必ず完成できる。
プロのおれがいうんだから、間〜違いないっ。
ガンバレ!タチアガレ!オレノカメ!サァイマボッキダ!
0684名前は開発中のものです。04/08/29 15:07ID:uVKQmkvz
完成が大事なんて言ってる間は完成しないもんだ
0685名前は開発中のものです。04/08/29 15:22ID:xqDBaC7p
いや、感性が大事だ。
0686名前は開発中のものです。04/08/29 15:25ID:Yr1ObYcQ
いや、時間が大事だ。
0687名前は開発中のものです。04/08/29 15:26ID:uVKQmkvz
完成が大事というのは裏を返せば目標を設定できていない
0688名前は開発中のものです。04/08/29 15:33ID:RVXvDyrN
そんなに必死に言い訳しなくても"( ´,,_ゝ`)
完成させるのが大事とは言ったが、おまえらにやれとは言ってませんよ。
0689名前は開発中のものです。04/08/29 15:42ID:xqDBaC7p
金が大事だ。金が目的だ。金クレ。
0690名前は開発中のものです。04/08/29 20:52ID:DGL19yfC
>>678
俺は>>666>>667あたりの流れを受けて
「山に登る努力自体を求めてるならさぁ登れ。
頂上に到達することが目当てならやめとけ。」って言ってるだけ。

>これは677の憶測ということでいいですね?
お前はつまり「MMOの開発に関わった事が無いなら無理とか言うな」
とか言ってるわけか。そりゃ実際に関わったことのあるやつなんていないだろ
0691名前は開発中のものです。04/08/29 23:26ID:6JhXyywR
>>690
>MMOのデバッグと調整はオフラインRPGのそれこそ数百倍の労力がかかる。

「らしい。」「ようだ。」「と聞く。」あたりを付けたらよろしいかと。
0692名前は開発中のものです。04/08/29 23:46ID:i6jcMaVJ
なぜ数百倍なのかと問いたいな。
オフラインと基本的に変わらないはずだけどな。
増えてもせいぜい2倍になるくらいだろ。
ソフトウェアというものを知らないヤツが騒ぎすぎ
・・ってまぁ騒ぐのは勝手だけど、
プログラマは素人にあんまりふりまわされんなー
0693名前は開発中のものです。04/08/29 23:55ID:brZ4qVGW
オフラインはぶっちゃけどんなバランスでもok
MMO(と言うかMassiveでなくても多人数)は
人と人の間のバランスで公平不公平だけじゃなくて
それこそ製品寿命に直結するデリケートな問題でないか?

何年も運用しながらゴールを見せたゲームが存在しない以上、
調整には数百倍程度の労力はかかるのかもな。
あと、これはプログラマ関係なさげ。

デバッグはしらね。
0694名前は開発中のものです。04/08/30 00:07ID:646WBQQS
・・それってゲームバランスの話だよな。
ここで製品作るんだっけ?

むしろここなら、ゲームバランス悪いほうが食いつきイイんじゃねーの?w

しかも世の中には、数学とかね、統計学とかね、便利なものがあるんであって、
数百倍労力かけないとバランス取れないようなアホは、
ゲーム製作の要人になんかなれないから、安心してね。
0695名前は開発中のものです。04/08/30 00:34ID:WEuNCWvO
数学でも統計学でもいいけど、それって言ってみただけってやつ?
バランス取れないのがアホみたいな言い方してるけど、
うまくバランス取れてる例のひとつすら上げてないようにみえるんだけど。
0696名前は開発中のものです。04/08/30 00:43ID:YIrztEA+
なあ、完成させるだけが目的で、
MMORPGを「作る意味」あるの?
現状に不満があったり、素晴らしいアイデアを実現したり、
好評価を得るために作るんでしょ
本末転倒もいいところなんじゃないの?
0697名前は開発中のものです。04/08/30 00:44ID:ERs1bP5f
MMORPGに関する技術的な会話は し な い の か ?
0698名前は開発中のものです。04/08/30 00:46ID:646WBQQS
市場原理ってのをわかってないね。
君のようなかたに、小学一年生の算数から、手に手をとって、
ひとつひとつ教えて差し上げるほど、おれひまじゃないんで。
本屋で経済学の本買って勉強しろよ!
0699名前は開発中のものです。04/08/30 00:48ID:xoQgjUs0
ちょっと前までいい感じだったのに・・・(´・ω・`)
070019104/08/30 01:01ID:E5/Oo7Jb
MMOの一般論について語り合うスレじゃーネー気がするがナァ
>>693はどちらかというと対人ゲームに対する理想って気がするな。
ぶっちゃけ、オンラインでもMMOでもどんなバランスでもokだと俺は思うよ。
面白いかどうかは別の問題だし、妄想企画よりは喰える。

>>696
今まで出来なかったことができるようになるのはイイぞ

>>697
ハイレベルな技術的話がしたいなら「MMORPGを作ってみたい」の方がイイかも
まぁ、ネタがあんなら書いてくれよ。
0701名前は開発中のものです。04/08/30 01:05ID:nCGUtJ18
>>696
>現状に不満があったり、素晴らしいアイデアを実現したり、
>好評価を得るために作るんでしょ

それは完成してからの話なんだよ、ボーヤ。
0702名前は開発中のものです。04/08/30 01:09ID:E/PuslaV
こうなってしまったらこのスレも終わり。
喪装中がいた頃が楽しかったよ。
0703名前は開発中のものです。04/08/30 01:13ID:QwkEnVgV
まぁ確かに作るだけなら糞バランスバグだらけでもいいわけだし
それなら数百倍にはならんな。ただオフラインの延長だとは思わないし
(・∀・)mmo!とか見る限りマトモに運営するためには数倍は必要だと思うが。

いい加減スレ違いだし肯定派も否定派も
「ここは低レベルな板だから仕方が無い」とでも思って
議論を中止してくれ。俺がここまで引っ張っちまったわけだけどな
0704名前は開発中のものです。04/08/30 01:25ID:nCGUtJ18
え、ここ何スレ?
0705名前は開発中のものです。04/08/30 01:35ID:bwCwbHHl
このスレではバランスやデザイン、それに時間や金銭的コストに関する話は無しで、
MMOらしきものの完成に挑戦するスレってことでいかないか?
あくまで挑戦だから、駄目、無理、という煽りは放置の方向で。
0706名前は開発中のものです。04/08/30 01:40ID:sFKshRVA
まぁ
素人にMMOが簡単に作れてしまったら
困る人たちがいるってことで・・・
0707名前は開発中のものです。04/08/30 01:44ID:LEXTpMn1
>>696
上のほうのレスの(5)が多かったしな。
勉強目的であって面白いゲームとしての完成は必ずしも目的とならない。
cgi、プロトコルなんかのネットワークの知識がずいぶんつくと思った。
なにより建設的な流れであればこのスレにとってはそれで良くないか?
0708名前は開発中のものです。04/08/30 01:45ID:WEuNCWvO
>>698
オレが小学生並みの知能でも別にかまわないけど、
じゃんけんのような完璧なバランスを達成したゲームが
存在しない以上、解を導き出す事は専門家ですら
実現していないってことになるわけだけど、
646WBQQSは完璧なバランスを達成できるんだよね?
0709名前は開発中のものです。04/08/30 02:03ID:646WBQQS
>>708
放置対象なのでお答えできません。
そんなあなたに素敵な言葉をひとつプレゼントしましょう。
「完璧にこだわってると、何もできないですよ」


ついでなので解決方法も書きますと、まず経済学の本をよく読んで、
そのあと、あなたの言う「完璧なバランス」とはなんなのか、
その厳密な定義を行ってください。そのあとその実現方法を
論理的に数学的に検証してください。

この話はもう終りね。他スレでやって。
0710名前は開発中のものです。04/08/30 02:06ID:sFKshRVA
>>709
そろそろ化けの皮が剥がれてきたなw

オマエゲーム作れないだろw
0711名前は開発中のものです。04/08/30 02:08ID:YIrztEA+
ゲームとしての成立を目指しもしないなら
機能サンプル以上の何者でもない
段階的に学習しながら進めるにしろ、
「完成」だけを目指すのは意味がない
デザインはバランスとは違うんだぜ、ボーヤ。
0712名前は開発中のものです。04/08/30 02:15ID:bwCwbHHl
>>711
まずは機能サンプルでいいじゃないか。
0713名前は開発中のものです。04/08/30 02:19ID:LEXTpMn1
>>709
何で経済学の話なんか出してるんだ?ゲーム理論のこといいたいのか?
0714名前は開発中のものです。04/08/30 02:29ID:YIrztEA+
では目標は「ゲームの完成」ではないよな
基底モジュール作成だろう
だとしても
プロトコル設計もしないでなんとなくチャット作るのは
後々苦労するぞ
0715名前は開発中のものです。04/08/30 02:37ID:646WBQQS
>>714
問題意識が一番大きな、君が設計するのが一番いいよ。
0716名前は開発中のものです。04/08/30 05:26ID:vxLJl/mb
もうそろそろ夏休みも終わりか
0717名前は開発中のものです。04/08/30 11:39ID:QwkEnVgV
何が問題かって超初心者しか鍛えてやる事ができないってことだよな
0718名前は開発中のものです。04/08/30 13:29ID:Dt5WQPYM
うはwwwwwおkwwwwwww
0719名前は開発中のものです。04/08/30 16:33ID:3B3VdziH

MMORPGを作ってみたい
03/08/26(19:07)〜04/08/28(13:54)で676

みんなでMMORPGを作りましょう
04/08/13(20:08)〜04/08/29(06:05)で676

このスレ早いな。
0720名前は開発中のものです。04/08/30 17:04ID:J9w2Y0n4
マジレスするとネタスレの進行は早いんだよ
0721名前は開発中のものです。04/08/30 17:16ID:lRBMB8Db
ネタスレか
実際に作ってるのは居ないのか
072266304/08/30 17:26ID:XVFqp4fH
作ってるよ。何時できるか知らないけど。
そして誰もこんなヘタレに期待してないだろうけど。
0723名前は開発中のものです。04/08/30 17:28ID:lRBMB8Db
>>722
お ちゃんと居たのか
実際に作ってるだけ偉いと思うので、頑張って下され
0724名前は開発中のものです。04/08/30 17:41ID:ya+0eROQ
本気で作るなら2chなんかでやらないね
0725名前は開発中のものです。04/08/30 17:49ID:Dlo0x8eQ
>>724
んなこたない。
0726名前は開発中のものです。04/08/30 18:01ID:EUFjVpQY
191せんせー、MORPG用のDLL形式の通信ライブラリを作ろうと思うのですが
ライブラリ側からアプリケーションへのイベントの通知は
どういった方法を使うのが良いのでしょうか?
対象は今のところ、C言語でのwindowsアプリケーションを考えています。

今までに考えたものでは、
(イベントが起こった時に)
・ウィンドウメッセージをアプリ側から指定されたウィンドウに飛ばす
・アプリ側から指定されたコールバック関数へ引数に色々くっ付けて呼びだす
または
・毎回アプリ側から、ライブラリ内にあるイベントをチェックする関数を呼び出させて、
返り値でイベント状態を返す

があります。
私この度初めて一般向けのライブラリというものを作ろうとしているので、
全くとんちんかんで他人に理解されないものになってしまうのではとひやひやしております。
なので、こんな仕様はおかしいよ、とか、一般的にはこういう方法が使われるよ、といった指導を希望します。
最後になりましたが、私はCしか使えずまともなプログラムは仕上げたことがないレベルです。
0727名前は開発中のものです。04/08/30 19:01ID:nCGUtJ18
>>711
なんでそうねじれた解釈したがるのかね。
アプリとして完成させるのが重要っていってるんでしょ。
動かなきゃゲームとしての成立もクソもないよ。
0728名前は開発中のものです。04/08/30 19:47ID:QwkEnVgV
>>726
俺は191じゃないが、
・ウィンドウメッセージ→応答遅すぎじゃないか?
アプリケーション側の実装もややこしくなりそう
・コールバック→これが一般的かな
・チェック関数→他の処理で重たくなってる時は応答が遅くなってしまいそう
072919104/08/30 20:28ID:E5/Oo7Jb
オブジェクト指向ってのが非常に便利なんで、特に制限がなければC言語で作ってるヤツは
少し勉強してC++でクラスを使いこなせるようになるとイイと思うぞ。

>>726
>ウィンドウメッセージ
この案だとウィンドウプロシージャーをライブラリ利用者が書かないといけないから駄目ぽ
>コールバック
>>728の指摘通りコレが使いやすいだろう。
リスナークラスつくって渡すって方法を俺はやったな。
Cでやるなら各イベントごとの関数ポインタを構造体にまとめて
その構造体をライブラリ関数で登録してやると良いな。
>チェック関数
定期的にチェックするアプリケーション構造をライブラリ使用者に
押しつける事になるからやめた方がよろしいかなぁ

>MORPG用のDLL形式の通信ライブラリ
ってことだけど、これが前提ならライブラリの通信部分は
マルチスレッド+イベントオブジェクトを使った方が良いな。

>一般向けライブラリ
MORPG特化ライブラリを作りたいのか?
それとも、MORPG特化通信ライブラリを作りたいのか?
まぁ、需要があるのはMORPGツクールなわけだが…
0730名前は開発中のものです。04/08/30 21:28ID:EUFjVpQY
お二方とも、返答ありがとうございます。
ウィンドウメッセージはやっぱりいくないんですね。
コールバックが推されているようなので、191せんせいのアドバイスを生かして作っていきたいと思います。
因みに、イベントオブジェクトというのは、WSAWaitForMultipleEvents系APIを使うもの、ということで良いのでしょうか。
これはシンプルそうで良いですね。今の今までselectを使おうと思っていたので良い助言になりました。

それから、「一般向けライブラリ」についてですが、これは私が今まで内輪で使うライブラリを作ってきたため、
それとは違う、という意味で使った言葉ではあるのですが。
実は191せんせいの言われるようなMORPG特化ライブラリを目標に作っていきたいと思っています。
通信以外の機能に、キャラクタ移動時の座標補間と障害物回避運動パスの生成を盛り込みたいんです。

そういえばネットワークRPGメーカー2000なんていうのが昔あったみたいですね。
残念ながらもう終わってしまったようで何も言えないけれど・・。
これだけゲムデブ板でネトゲスレが立ってるんだからほんとに需要ありそうですよね。
073119104/08/30 22:17ID:E5/Oo7Jb
>>730
>イベントオブジェクトというのは、WSAWaitForMultipleEvents系APIを使うもの
そういうことです。
俺はWaitForMultipleObjects使って通信イベントと通信スレッド終了イベントの両方を待機させてるな。

良い目標を持って頑張っているようだな。そのまま最後までガンバレや。
あと俺は先生じゃなくてチーターだから
0732名前は開発中のものです。04/08/31 00:28ID:6+TORdEW
では水前寺先生と呼ばせていただこうと思います。
0733名前は開発中のものです。04/08/31 01:17ID:2iIaRDnI
マルチスレッドなプログラム書くなら実際に複数CPU載った
マシンで実行/デバグしてみたほうがいいぞ。
単一CPU機ではめったに出ないバグがぼろぼろ出て楽しいし。
0734名前は開発中のものです。04/08/31 01:37ID:wCdLoFkM
>>733
それって本来OSレベルの問題なんじゃ
0735名前は開発中のものです。04/08/31 01:43ID:6+TORdEW
acceptしようとするとWSAENOTSOCKってエラーが出るんだけど、
これってどっちの問題なんでしょう?
送信側のソケットがおかしいのかなんなのかさっぱりわからんです。
うpしたら誰か見てくれます?
0736名前は開発中のものです。04/08/31 01:46ID:TdIjd0h5
>>733-734
int hoge;
thread1(){hoge++;}
thread2(){hoge++;}

を同時に動かすと1しか増えて無いかもって事でしょ。
実際はオブジェクトの同期とかで、こんな分かりやすいミスじゃ無いだろうけど。
073719104/08/31 01:54ID:pIiGswtF
>>733
複数CPUのマシンなんてさわったことないので
どんなバグがでるのか詳しく教えて欲しいな

>>735
うpしたら見るよ
073819104/08/31 02:15ID:pIiGswtF
>>735
良く見たらうpするまでもなく
テディベアかなんかに状況説明すれば解決しそうだな。
たぶん、不正なソケットを引数として渡しちまったってことだろ。
acceptに渡すのはlistenしたソケットだぜ。
073973504/08/31 02:23ID:6+TORdEW
>>737
すいません、うpしましたので見てみてください。お願いします。
VC6のプロジェクト丸ごとはいってますけど、
リンクとか切れてたら「wsock32.lib」追加するだけです。
ttp://gamdev.org/up/img/1132.zip

とりあえず622氏のやつコピペって少し改造して作ってます。
勝手に使ってすいません。ほとんど同じはずなんですけど、
何処が悪いのかわかんないです。
とりあえずAcceptまで行きたいのでsendとかrecvとかはまだまともに作ってないです。
鯖はポート入れないでそのまま起動してください。
見づらいと思うので申し訳ないですがおねがいします。
074073504/08/31 02:26ID:6+TORdEW
>>738
あれ、準備してる間にレスもらってました。
一応リスンソケット渡してるつもりです。
で、リスンソケット作って待ち受けるところまではエラーは出てない臭いです。
なので、何がおかしいのかな、、、と分からなくなってしまいました。
074119104/08/31 03:01ID:pIiGswtF
>>735
まー良くあるバグってやつだな。
DialogProc()ん中で
 TCPServer server(hDlg);
ってやってるだろ、コレが原因だな。
ローカル変数になっちゃってるから、毎回DialogProc()に実行が移ると
serverクラスが生成されて、returnと同時に破棄されとる。
よって、server.Init()の時のlistenしたソケットも捨てられてるな。
 static TCPServer server(hDlg);
 ↑のようにstaticつけて静的変数にしとけばok
074273504/08/31 03:43ID:6+TORdEW
>>741
どうもこんな遅くすいませんです。
できました。なんともお恥ずかしい限りです。
言われて見ればなるほど納得しました。
先はおそろしく長い…
074362204/08/31 12:58ID:1W6zrceB
BCCDevで開発(win)
>>642
3がどうにもこうにも出来ませんでした。
メッセージがちゃんと来ているはずのところで
CallWindowProcして、直接呼んでしまう処理になってしまいました。
助言お願いします。

>>643
見やすい!

時間と視力とコードの結晶
ttp://gamdev.org/up/img/1138.zip
質問
1.サブクラス化はしてあると思うのですが、メッセージが思うように
switchにひっかかってくれません。何が原因なのか、または注意点などお願いします。
(サブクラスでmsg処理しているサンプルが見つからなすぎ)
2.次のステップでは何をしたほうがいいでしょうか?

下のウィンドウでタブ押すと送信
受信は上のウィンドウで、8kぐらいまで保持化(古いのから消えていく、発言事には消えない!)
0744名前は開発中のものです。04/08/31 17:07ID:T35fpLCq
WSAAsyncSelectへ渡っているのはhwndですが、
実際にサブクラス化されてるのはhWndSendMsgではないのですか?
読み間違ってても許してね
074519104/08/31 20:09ID:pIiGswtF
>>743
>>744が言うとおりに渡してるウィンドウハンドルが違うな。
というか、>>642で書いた真意は2、3はクラス内部で処理ってことだ。
Init(HWND)の中でコッソリサブクラス化。そのサブクラス化したプロシージャーで通信処理をやらせれば、
呼び出し元のウィンドウにワザワザ通信処理を書く必要がなくなるからな。
通信担当プロシージャーがprivateなメンバ関数ってのがポイント

まぁ、少々レベルが高かったかもな
クラス内部でサブクラス化するときはプロシージャーを静的なメンバ関数として定義しなきゃいけない。
静的なメンバ関数から、本来のインスタンスを特定するのにSetProp()とかGetProp()を使う。
とか、イロイロめんどくさいな。でも便利

>次のステップでは何をしたほうがいいでしょうか?
とりあえず、受信の所の改造だ。現状だと一度の受信でメッセージが全部受信出来たと仮定してるだろ。
場合によっては分割して届いたりするからな。送信時に何バイト送ったかの情報も送信するようにして、
送信バイトと同じバイト数を受信したら、本来の受信後の処理をさせる。ってのが基本だな。
文字列素送りじゃー駄目だ。
0746名前は開発中のものです。04/08/31 22:24ID:XlUxaRqa
いつのまにか俺に聞けスレになってるんだな。
わざわざこんなスレでやらんでも・・・
0747名前は開発中のものです。04/08/31 23:13ID:T35fpLCq
良スレ
0748名前は開発中のものです。04/08/31 23:29ID:hg/ygmOZ
ていうか191以外にも答えられるやつはたくさんいそうなのに
191が答えないと満足してくれないふいんきになってるのがな
0749名前は開発中のものです。04/08/31 23:46ID:XlUxaRqa
きまったモジュール作ってるときはいいんだけど、ゲームとして組み立てていく時って
自分が作りたいイメージがないと、なにやっていいかわかんなくなるんだよな。で>>1に戻る。
煽ってるわけじゃないぞ、まぁガンガレ。
0750名前は開発中のものです。04/08/31 23:55ID:seKFT3kU
なんだ、こういう開発ゴッコがやりたかったのね
最初に言えよ
0751名前は開発中のものです。04/09/01 01:49ID:TBA+Y3JP
>>748
俺も191と同じぐらいのスキルはあるんだが、人のソースみるのめんどくさ。なのよ。
スキルアップには人のソースみたほうがいいのだがやる気になれん。
ほんと191は面倒見がよいし(少なくとも俺より)説明もよろしいんで出番なしですな。
0752名前は開発中のものです。04/09/01 10:35ID:A8Zc28Vq
まだログインやチャットで苦しんでるのですがちょっと質問させてください。

通信するときにソケットを使って接続するところまではできたのですが
たくさん接続したときにどの接続が誰なのか区別するのはどうすればいいですか?

これができずに履歴の保存で苦労してます。よろしくお願いします。
0753名前は開発中のものです。04/09/01 10:59ID:37G7q50O
まぁガンガレ
0754名前は開発中のものです。04/09/01 11:14ID:BdF6D2vC
>>752
接続中のクライアント数と同じ数だけacceptでソケットハンドルを得てるわけで、
クライアントのソケットハンドルを持つ通信用クラスとプレイヤーキャラのクラスを
関連付けすればいい。

誰かというのがプレイヤーキャラのことならば、
ソケットハンドルを得たときに、クライアントに対しログインIDの送信を要求し、
ログインIDと一致するプレイヤーキャラをロードすればいいんじゃないか?
0755名前は開発中のものです。04/09/01 11:54ID:A8Zc28Vq
>>753
>>754
ありがとうございます。
>関連付けすればいい
これができてなかったみたいです。
キャラクターのクラスを作ってそのメンバ変数にソケットハンドルを持たせてみます。
0756名前は開発中のものです。04/09/01 12:17ID:2IXtq3X7
この板みてたら1が激怒したよ
0757名前は開発中のものです。04/09/01 16:13ID:HRpmmagl
1さんのお知り合いでつか
0758名前は開発中のものです。04/09/02 02:56ID:cMQJct2Z
よーし、パパもサーバー書いちゃうぞ〜




ところで、
>>448 ってどうなったん?
0759名前は開発中のものです。04/09/02 02:57ID:cMQJct2Z
>>488 ですた
0760名前は開発中のものです。04/09/02 06:24ID:P8nJQ5G5
いつみてもやる気なさそうなページだなぁ
みんなで作ろうぜ!作ってるぜ!なんて意気込みが微塵も感じられない。
076119104/09/02 06:48ID:7f5AinZL
>>488はこのスレの前半戦(1-616)のネタをまとめたサイトだな。
>>617以降はスレの趣旨が微妙に変わったので>>488のサイトに期待するのは可哀想だろ。
>>756自称チーターによって乗っ取られたようなもんだから>1も怒るかもな。

>>758
サーバーに期待する。
プロトコルも決めちゃって、他のヤツにクライアント書かせてみたら面白そうだな。
0762名前は開発中のものです。04/09/02 07:08ID:iIL4jgPK
ここで先にアプリケーションプロトコル決めてみたら?
0763名前は開発中のものです。04/09/02 10:56ID:huDvHtkT
おまいら何本ぐらい接続してる?
今まで1本でやってたけどチャットとゲーム用ぐらいは別にしたほうがいい気がしてきた
076466304/09/02 11:10ID:HhOdq8th
とりあえず最低限、サーバと複数クライアント間で会話をすることは
できるようになった気がする。
しかしプログラムは楽しいな。一個ずつできる事が実感をもって増えていく。
もちろん一言でできると言っても次元の高い低いの違いはあるけど。

今までグラフィックばかりやってたけど凄く時間がかかる作業で
キャラなりオブジェクトなり作って一つ一つ完成していくのはそれはそれで楽しいが、
振り返ってみると延々頂点を一センチ二センチ動かす作業を繰り返してただけで
新しく得るものなんてほとんどなくて「この期間俺は何をやってたんだろう…」と
虚しい気分になるだけだったからな。
0765名前は開発中のものです。04/09/02 11:12ID:9FsdpOIU
これ使えばwin機でもUNIX向けの開発できるんじゃね?
今は鯖もwin向けに書く流れだから関係ないかもしれんが

http://www.forest.impress.co.jp/article/2004/01/16/servicesforunix35.html
http://www.microsoft.com/japan/windows/sfu/
076666304/09/02 12:10ID:HhOdq8th
今回のチャットはVCのダイアログエディタつかってダイアログベースで作ったけど、
ゲーム内で表示するウィンドウのためのウィンドウシステムみたいのをつくりたい。
ウィンドウオブジェクトの下にボタンとかタブとかテキストフィールドとか自由に配置して
そのテキストフィールドの下にはさらにスクロールバーを配置してとか
そういうのを柔軟にデザインできる仕組みを作りたい。
けど激しくむずそう。なので
とりあえず最初の手がかりとしてなんか課題をくれるとうれしいのであります。
0767名前は開発中のものです。04/09/02 12:27ID:GL/7SFvs
>>762
とりあえずちょっと妄想してみた
このまま拡張していっていいのか評価が欲しい
191氏もヨロシク

・目標
勉強用ということでデバッグの簡単さを優先させたい
マップを歩き回ってチャットするのがとりあえずの目標
ある程度の拡張性は欲しい
特定の開発環境にあまり依存しない

・仕様
通信はテキストによっておこなう
n*4バイトで構成される命令の送受信をおこなう

・・命令の仕様
1語は4byteとする
先頭に1語の命令部とそれに続く0語以上のデータ部で構成される。
****++++++++
*命令部
+データ部
例)
mvtorigt
attk7743
quit
076876704/09/02 12:28ID:GL/7SFvs
・・命令表
カッコ内はバイト数

戻り値
retn[コード(1)]
なんらかの命令に対する返事である
成功もしくは失敗を示すコードが含まれる

ログイン
lgin[id(8):password(8)]
この命令に成功するとキャラクター操作系の
命令が使用可能になる
戻り値
成功 okok
IDが存在しない noid
パスワードが違う nopw

終了
quit
ログイン以前の状態になる
切断やログインが可能な状態になる
戻り値
成功 okok
076976704/09/02 12:29ID:GL/7SFvs
mvto[方向(1)]
方向=upup,rigt,down,left
[方向(1)]で指定した方向へ移動する
戻り値
成功 okok
失敗 ngng

chat[チャンネル(1):メッセージ(10)]
戻り値
チャット
成功 okok
そのチャンネルでの発言は許されていない chng
失敗 ngng
0770名前は開発中のものです。04/09/02 12:48ID:iIL4jgPK
チャットはもうちょっと文字数欲しいな…
0771名前は開発中のものです。04/09/02 12:49ID:iIL4jgPK
4bytes*10=40bytesなのかorz
0772名前は開発中のものです。04/09/02 13:07ID:GL/7SFvs
スマソ、カッコの中の数字が1語なのか1byteなのか自分が一番混乱してたorz
1語(=4byte)に統一した修正版

retn[コード(1)] (合計8byte)
lgin[id(2):password(2)] (合計20byte)
mvto[方向(1)] (合計8byte)
chat[チャンネル(1):メッセージ(10)] (合計48byte)
077376704/09/02 13:22ID:GL/7SFvs
>>772に名前入れ忘れてたスマヌ

ゲームによって移動方法が変わるから目的地を指定して後は鯖まかせで道が選ばれるタイプか
上下左右をダイレクトに指定するタイプなのかで修正が必要な予感
個人的には後者タイプでアクション性が強いものが好みだけど通信量が増えそう

mmoゼルダやりたい(;´Д`)ハァハァ
0774名前は開発中のものです。04/09/02 14:56ID:ucIC7S/S
コインでお絵かきしたいよ
077519104/09/02 15:14ID:7f5AinZL
>>767
チャットの部分がちょっと気になるよな。
一文字発言でも48byteってやな感じ。
発言文字列のサイズも送ったほうが良いだろう。
あと、通信料気にするなら文字列で送っちゃ駄目だよな。

で、俺の場合
[送信サイズ(2byte)] [メッセージの種類(1byte)] [データ(可変サイズ)]
受信時に2bye読み込んで受信サイズ取得
受信サイズ全部受信し終わったら、メッセージの種類に応じた処理
チャット文字列送信ならデータ部分が発言文字列って感じだな。

>mmoゼルダやりたい(;´Д`)ハァハァ
隣接キャラのPC強制シャットダウンコマンドを実装するだけで御手軽に殺伐としたチャットが出来ると思うゼ
0776名前は開発中のものです。04/09/02 15:23ID:ucIC7S/S
>>775
文字列で動くようになったらバイナリ化する予定なんじゃないか?
文字列バージョンならターミナルソフトでも確認できるし。
しかし可変長ぐらいは扱ってほしいな。
077748804/09/02 17:17ID:2JFS4kJQ
>>761
ちゃんと、見に来てるよ^^;;
でも、なんか話が変わってるからついていけてないだけです^^;;
なんか、問題あったらスマソ
0778名前は開発中のものです。04/09/02 21:05ID:3MdDkgVc
MMORPGに向いてるライブラリってどれ?

■参考
各種ライブラリ紹介スレ
http://pc5.2ch.net/test/read.cgi/gamedev/1008220559/
http://gamdev.org/w/?%5B%5B%A5%E9%A5%A4%A5%D6%A5%E9%A5%EA%5D%5D
077948804/09/02 21:15ID:R5EF3Y1l
質問!!

C++って奴は、ゲーム作るのにむいてますか?
078019104/09/02 21:20ID:7f5AinZL
>766
某ROみたいにウィンドウをユーザーが自由に配置するやつってことかな。
だとしたら、メメインウィンドウを親にしていしてCreateWindowして
タイトルバードラッグでウィンドウ移動とかしてやればできそうだな。

そうじゃなくて、プログラムでその場に応じたボタンとか出したいなら
CreateWindowしまくるか、ダイアログなら適当に貼り付けておいてGetDlgItem()で
ハンドル取得すれば、たいていのことはできる。

なんか良い課題が思い浮かばないが、
ウィンドウの中にウィンドウを表示するクラスでも作ってみたら?
ウィンドウプロシージャはクラスのメンバ関数で

>>777
監督はもういない。
シナリオも協力者もいなくなった。
自分でプログラム書いて壁にぶつかったらこのスレにこい。
きっと誰かが助言をくれるだろう。
■ このスレッドは過去ログ倉庫に格納されています