MMORPG

このエントリーをはてなブックマークに追加
31名前は開発中のものです。:2005/10/05(水) 18:44:52 ID:81Ajv+Fy
おいおい
このままだと>>10の野郎進まねーぞ!!
オレは無理だが、誰かアドバイスでもサンプルでもいいから教えてやれ!!!
32名前は開発中のものです。:2005/10/06(木) 05:45:55 ID:B/FQ+W/o
1VS1のチャットはソケットの同期で簡単なんだけど
1VSnになると非同期が必要になるからね
あと、作成プログラムが2つ必要(サーバ&クライアント)
ってのが、以外にめんどい
2つ揃わないとテスト出来ないってのが敷居を高くしてる
3310 ◆pF5cbfQoT2 :2005/10/06(木) 07:03:35 ID:zNNEtLhT
>>32
そうなんだよな
でもこれが作れないとオンラインゲームなんて100%つくれないからな
34名前は開発中のものです。:2005/10/06(木) 07:08:52 ID:cRcXPgR2
アドバイスっつってもなぁ・・・
何故>>10がUDPに拘ってるのかがわからんと何とも言いようが無い。
UDPでMMOってのが如何に難しいかってのは、解っていてのことなんだろうか…。
35名前は開発中のものです。:2005/10/06(木) 07:10:26 ID:cRcXPgR2
Σ( ゚д゚)
ってお前さんも朝早いな
3610 ◆pF5cbfQoT2 :2005/10/06(木) 16:16:28 ID:EoIY9AKc
いや、別にUDPじゃなくてもいいんですよ。
ただ単に高速だからです。
でも、アカウント登録やログイン処理はTCPじゃないとダメだし。
UDPはキャラの座標とか少しくらい消えてもいいような部分にしか使いません。
37名前は開発中のものです。:2005/10/06(木) 16:17:10 ID:B/FQ+W/o
UDPってルータ越えが難しいんじゃない?
38名前は開発中のものです。:2005/10/06(木) 17:20:03 ID:ZL+hX5KE
TCPに限定して、その分高速化は送受信データの切り詰めで補った方が簡単確実ってこと?
39名前は開発中のものです。:2005/10/06(木) 17:30:16 ID:O+9CjehL
>>38
普通はそうだなぁ。
UDPとTCPを混在させると
UDP<>TCP間の同期の取り方とか
UDPの部分は、どうしてもクライアント主導の
通信にならざるを得ないから、イレギュラーや不正の
対処方法とかプログラミング的にも難度が高くなるしな。
40名前は開発中のものです。:2005/10/06(木) 17:33:18 ID:EeRPt6Ud
まずは確実に動くものをTCPで作ってからUDPに対応させりゃいいじゃん。
4110 ◆pF5cbfQoT2 :2005/10/07(金) 07:30:12 ID:NvWZ9rBj
じゃあTCPでいくかな
ってかチャット作りTCPでやってたw
42名前は開発中のものです。:2005/10/07(金) 19:54:42 ID:BQzEcK2V
オレVBで作ろうと思ってるんだけどさー
VBって速度的にどうなん?
問題無いなら勉強しようと思うんだけど
43名前は開発中のものです。:2005/10/07(金) 19:58:48 ID:aJRkgDa2
ここがVBでMMO作ってるゾ
ttp://eternal.s19.xrea.com/
4410 ◆pF5cbfQoT2 :2005/10/10(月) 00:05:49 ID:7RGrKLIz
ログインなどの処理が一応実装できた
まだ暗号化とかしてないけど・・・
サーバーしか作ってないから、そろそろクライアント作らないとな
45名前は開発中のものです。:2005/10/19(水) 19:40:46 ID:ifZ8caQI
MMO作ろうかと思ってますが、
ピアツーピアのMMOって無謀でしょうか?
46名前は開発中のものです。:2005/10/19(水) 19:55:44 ID:ovh0Jg+H
無謀かも知れん。
が、どういう実装形態があるか考えるのは悪いことではない。
47名前は開発中のものです。:2005/10/19(水) 19:56:30 ID:5zXty7Ea
同時接続人数少なくなると思うけどできるんじゃない?
48名前は開発中のものです。:2005/10/28(金) 06:47:56 ID:pyIjKpZE
>>18-21
1VS1の通信しか出来なくない?
複数クライアントの接続は宿題カナorz
49名前は開発中のものです。:2005/11/03(木) 17:10:06 ID:cIr991LE
ここはまだ生きてるのかな?
50名前は開発中のものです。:2005/11/21(月) 11:50:42 ID:08eNFaZz
漏れの作り方
1. とりあえず1対1でもいいからエコーサーバーを作る。
2. エコーサーバーをテストに使い、クライアント側の通信部分を作る。
3. 2で作った通信部分をテストに使い、サーバー側の通信部分を作る。
51名前は開発中のものです。:2006/01/22(日) 19:53:14 ID:QU3Ld80h
誰も見てないだろうから初歩的な質問してみる。

複数クライアントのチャットサーバにおいて
サーバがあるクライアントとの接続を確立したあとどうすべきか悩んでいます。

1、forkしてクライアントとの通信は子プロセスに任せる
 親プロセスはそのソケットディスクリプタをcloseして新たにacceptする
 送受信データの同期はプロセス間通信で親プロセスがなんとかする?
 >>19のscを受け取った時点でfork、親プロセスはscをcloseしたあとにbindのところに戻る

2、ひとつのプロセスで通信と同期を全てまかなう
 最初から接続上限数のソケットディスクリプタをつくっておいて
 サーバの中で送受信を接続上限数分ループさせる
 >>19のscを配列にして>>20のdo-whileをforにしてsc[i]を各々受信する感じ

1を使うとひとつのクライアントとの接続に不具合が発生しても
サーバがこけることはなさそうというのがメリットで
(他人の発言のような)送信すべきデータの取得がややこしそうになるというのがデメリット。
2の場合、親亀こけたら皆こけたの要領でひとつのクライアントとの通信不具合が
サーバ全体におよびそうというのがデメリットで
ループのおかげで受信の順番が決まってるのでそのときに送信をそれぞれ探ればいいから
送信データの取得はチャットだけを考えるなら簡単そうというのがメリット。
という風に考えています。

どっちをMMORPGサーバまで発展させると考えるなら採用すべきでしょうか?
間違った考え方をしている点や気づいていないメリットやデメリット、他の手段
などありましたらご指摘のほうお願いします。
52名前は開発中のものです。:2006/01/23(月) 12:16:06 ID:78YZ2Dnq
>>51
つ thread

Linuxでやるなら最終的には1でやるしかないと思う。
FreeBSDは試したこと無いから知らん。SolarisならThreadで行ける。
53名前は開発中のものです。:2006/01/24(火) 11:00:46 ID:KzBEIj3y
>>52
どもども。
あのあと調べてみたんですが2のやりかたはselect()/poll()ってのを使うんですね。
でも大規模なものには向かない感じ?

スレッドが現在主流なんでしょうか。いくつかの資料にあたってみると
select()やfork()のやりかたも書いてあるけど大抵の場合、
最終的にこれからはマルチスレッドだ!って意見に落ち着いてるような。
Linuxの場合NPTL/LinuxThreadsという形でPthreadsを実装してるみたいですね。
ただまだ新しい機能のせいか今でもちょこちょこ仕様変更してるのが気になるところ…

あと気になったのがシステム的な限界。手持ちのLinuxの標準的な設定だと
開けるディスクリプタの上限:1024
同時起動できるプロセスの上限:なし
プロセスあたりのスレッドの上限:64
システム全体のスレッドの上限:16384(64スレッド*256プロセス?)
らしいのですが、1ユーザとの通信は1スレッド+1ソケットディスクリプタで
という考え方だとacceptを複数プロセスでやらない限りは、
1システムあたり64人しか同時接続できなくなるという解釈でいいのでしょうか。

各々協調作業するマルチスレッド+マルチプロセス+マルチシステムな知識が必須?
54名前は開発中のものです。:2007/04/04(水) 23:58:35 ID:QQY5EYRe
ほう
55名前は開発中のものです。:2007/04/10(火) 22:34:17 ID:DFToSQZr
ここって板の一番下だよな・・・・?このスレのっとるか日記で
56名前は開発中のものです。:2007/04/10(火) 22:36:07 ID:/BIIixjg
ageとくね
57名前は開発中のものです。:2007/04/10(火) 22:41:43 ID:w90qBFR1
乗っ取りおめー
58名前は開発中のものです。:2007/04/10(火) 22:42:33 ID:DFToSQZr
おまえら、いろいろとありえねーだろwwwwwwwwwwwwwwww何だよそのレス速度
59名前は開発中のものです。:2007/04/10(火) 22:43:52 ID:/BIIixjg
ごめんね、この板の全スレでレスが
あったらすぐわかるようにしてるから…ごめんね。
60名前は開発中のものです。:2007/04/10(火) 22:51:45 ID:w90qBFR1
専ブラでスレタイ検索してお気に入りに登録して、
新着レスに緊急出動態勢整えてるのは俺だけじゃない筈だ。
61名前は開発中のものです。:2007/04/10(火) 23:18:37 ID:+7AxyvvI
イヤッホオオオオオオオオオオオオ!!!!1111
62名前は開発中のものです。:2007/04/11(水) 16:12:28 ID:6TT42fR3
期待あげ。
63名前は開発中のものです。:2007/05/25(金) 15:12:16 ID:s1jJ8pe0
個人製作のオンラインゲーム
http://www002.upp.so-net.ne.jp/tbbt/rpg_info.html (Ancient Saga Online)
http://www.platon.co.jp/~akake/outlive/ (OUTLIVE ONLINE)
http://www.abars.net/ruina/ RUINATERRA
http://dragon.warcry.biz/ DRAGON WARCRY
http://www.smokymonkeys.com/triglav/ TRIGLAV
http://homepage1.nifty.com/TMS/ エクソシズムブリーズ
http://www.aa.alpha-net.ne.jp/kataho/roa/ Revelation of ALTERMIA
http://www5e.biglobe.ne.jp/~thewar/ キリーク
64名前は開発中のものです。:2007/05/25(金) 15:18:34 ID:N7du3zg1
なぜ宣伝?ここ製作なんだがネトゲは別なとこにあるが
65名前は開発中のものです。:2007/11/15(木) 19:18:09 ID:KUufpguC
MMORPGってどういうシステムで作るの?
C/C++?DirectX?他になんかライブラリとかあんの?
66名前は開発中のものです。:2007/11/15(木) 19:43:17 ID:34wKrQCn
あとWinAPIとかWinSock。
67名前は開発中のものです。:2007/11/15(木) 21:52:26 ID:KUufpguC
言語はC/C++として、
システムはWinAPI&DirectX、通信はWinSockって感じ?
68名前は開発中のものです。:2007/11/15(木) 22:21:10 ID:34wKrQCn
(仮に)ウィンドウ関連は最低限だけ触ってDirextXでガリガリ書くとしても、
DirectPlayはMS自身が見捨ててるので通信にはWinSockが必要。
そのWinSockを使うにはウィンドーメッセージ関連の処理が必要。
他に日本語入力(IME)の取得や、
全角文字のの表示にはWinAPIを使うのが現実的。

C++&DirectX+αだとこんな感じかな。
69名前は開発中のものです。:2008/01/07(月) 15:09:38 ID:hwCbBhi8
VIPからき☆すた
70名前は開発中のものです。:2008/01/08(火) 11:43:42 ID:6gzjxlz2
チャットにタバターつけておしまいの方向で
71名前は開発中のものです。:2009/01/25(日) 00:47:06 ID:piilkok4
72名前は開発中のものです。:2009/10/28(水) 16:23:51 ID:Q3MsUvxA
【画像あり】「同級生の女の子に頼んでみた」中学生ハメ撮りAVが流出 ★14
http://yutori7.2ch.net/test/read.cgi/news4vip/1256707678/



456909179687499
73 忍法帖【Lv=40,xxxPT】(1+0:5) 【51.4m】 電脳プリオン:2012/11/03(土) 21:50:29.43 ID:EzHQ5IPN BE:152028735-PLT(12079)

なかったら作れてないはず
74:2014/07/23(水) 06:17:21.73 ID:w8Mju97e
75名前は開発中のものです。:2014/10/13(月) 23:06:31.05 ID:IptKTXYi
ここからは、元のスレの趣旨関係なしに再利用の予定です。

MMORPGのシステム周りに興味ある方、作ってみたい思惑をもってらっしゃる方、
興味ある方は一言メッセージを残していただければお付き合いいたしますので
よろしくお願いします。

今の時代やっぱり、HTML5 と WebSocket ですかね
76名前は開発中のものです。:2014/10/14(火) 00:24:38.46 ID:CIjn+E47
そう思いますね。
レスポンシブに作れば、PCでもスマホでも動く。
77名前は開発中のものです。:2014/10/14(火) 00:38:11.25 ID:/4vyLYhS
レスポンシブか・・・、質問スレで少し前に縦横サイズの話あったけど、
ズームをかけるか、フィールドなんかのみえる範囲が解像度によって
バラバラになるのか。 この辺も作りこみとユーザターゲッティングの
思惑によって変わってきますね。
78名前は開発中のものです。:2014/10/14(火) 14:17:19.56 ID:/4vyLYhS
WebSocketでサーバ側制御できる仕組みを無料で提供したら、
プログラミングやってみたい人って結構いそうだけど準備しようかな
79名前は開発中のものです。:2014/10/14(火) 19:58:08.92 ID:CIjn+E47
WebSocketでサーバーにプログラムを送り込むって事?
どんな仕組みになりますか?
80名前は開発中のものです。
クライアントの効率の良い作り方悩む。
enchantJS使ってみたけど、UI作るのしんどい。
EdgeAnimate触ってみてるけど、これはかなり良さそうに思う。