MMORPG「ミュー 〜奇蹟の大地〜」は3人の開発者で作ったそうだ。
つまりは実力次第ってことだろうな
mmo!は最初のリリースまでは一人で作ったしな
mmo!ってはじめはゲ製作技術板でやってたんだっけ
907 :
名前は開発中のものです。:04/09/12 20:28:34 ID:cGWoExbh
MMORPGの鯖につかうLinuxってどのディストリがいいですか?
自分が慣れてるディス鳥
909 :
191:04/09/13 00:24:00 ID:6+IaFvxa
鯖とかDBとかの質問するけどさぁ
会社で作るとかじゃ無いならMMOPRGなんて作っても
どうせ2桁接続がイイとこなんだから、どれでもたいして変わらないだろ。
だから自分の慣れたのでやれば良い。
あと、このスレにMMORPG制作及び運用経験者なぞ居るハズもない
商用化を目指してるのでは?
どっちにしろ、まずは慣れたのでヤレと言いたいのは確かだが。
911 :
名前は開発中のものです。:04/09/13 01:16:11 ID:sRXJXOTX
どのディストリを選んでも途中で乗り換えができる(完全なソース互換がある)のですか?
(´Д`;)
913 :
911:04/09/13 01:33:48 ID:sRXJXOTX
ありゃ、質問の仕方が変だったかな
GCCのライブラリはディストリごとに特徴があったりしませんか?
という聞き方のほうがいいのかな
クロスコンパイルする時はそれ用のライブラリを別途使ったりするので
そういうイメージがあります
cygwinやSFU、*BSDも候補にあがってるのでその辺りも含めて
さらっと解説いただけるとありがたいのですが……
>さらっと解説
それGCCじゃなくてlibcの問題
以前MORPG用ライブラリを作ると言っていた者です、
イベントオブジェクト/マルチスレッド化も完了し、嬉しんでいたところ
今回微妙な不具合?が起こり、PG諸氏に御指導を被りたいと思い参りました。
今回行き詰っている箇所は、DLLのエントリポイントDllMainでswitchされる
DLL_PROCESS_DETACHです。この意味をMSDNで調べたところ、
DLL のロードに失敗したこと、プロセスが終了すること、
呼び出し側プロセスの仮想アドレス空間から DLL をアンロードしようとしていること
となっていたので、ここでWSACleanupを呼べばいいのかな。などと安易に考えておりましたところ
何故かconnectが動作しないのです。これは一体どういうことかとWSAGetLastErrorにて
見てみれば、WSANOTINITIALISED (10093)ではありませんか。
最初に言うのを忘れておりましたが、DLL_PROCESS_ATTACH内で初期化を行う関数を呼ぶようには書かれておりまして
では一体どーいうことよ、意図的にクリーン関数なんか呼んでないよ!と思い、
昨夜から今朝まで掛かりやっと原因を突き止めたのです。
原因は、_beginthreadex時にDLL_PROCESS_DETACHが発生している。ということでした。
なぜ?どうして?なんでそんな時にデタッチされちゃうの?
また、私は他のどの部分にwinsockの初期化、解放処理を書くべきなのでしょうか?
どうぞよろしくお願いいたしますゲス野郎諸氏
917 :
887:04/09/13 05:57:49 ID:vD6XaLn8
ID変ってしまいましたが、887です。トリップつけようかなヽ('A`)ノ
本日も残業・・・・ ちなみに私が作ってるのはコンシューマ かつ ローカルな物なので
MMOの管理は専門ではないですが、WIN鯖は、果てしなく効率が悪い
調べればすぐ分かる事で、また一般常識レベルの事なので語るまでもないですが
頻繁に鯖の再起動が必要になります。
1週間ほどすれば、現在のプロジェクトが終わるので、少し時間が出来れば、
サンプルでも作ってUPします。
予定としては、鯖と、移動、MAP切り替え処理、通過判定くらいかな?
少しずつ、是を基盤に追加していってみます。
ではー
はぁぁ・・・ 仕事ほっぽりだして寿司でも食いに行きたいです・・・・・・
店開いてないけど。
>916 さらっとbreak書き忘れと見た。
>>918 ずばりそれでした・・
素晴らしい解答!神!ありがとう!
>>917 WIN鯖は、果てしなく効率が悪い
んなことない、Solarisとか商用は知らないけど、
FreeBSDやLinuxと比べても同期オブジェクトが最も軽いのはWinだし
マルチスレッド鯖のパフォーマンスは悪くないよ。
Win+ソケットを使った鯖でパフォーマンスが出ないとか言ってるのは
大抵マルチスレッド+ブロッキングとか、シングルスレッド+selectしてる
クライアントプログラムのクセが抜けきれてない素人だけじゃないか。
比較対照としてpollとかkqueueは使うのに、
Winのパフォーマンスを持ち出すときにIOCPや非同期ソケットをあえて避ける理由は?
>>920 ちっ。
一般常識レベルとか言ってるから、みんながlinuxでひぃひぃ言ってる間に
Winで作ってパフォーマンスを…とか思ってたのに〜ヽ(`д´)ノ
922 :
名前は開発中のものです。:04/09/13 17:02:22 ID:i4PRyke4
>920
キミに聞きたい。
ネトゲー作るときに、ICMPで自分でヘッダも作るのと、
UDP使ってやるのとでは、どっちのが速くできる?
>ICMPで自分でヘッダも作る
と
>UDP
は等価ではないから比べようも無い。
質問の意図がいまいち理解できないんだけど、何?
ICMPはReplyを待つから遅いとか言いたいの?
それ以前にネトゲのプロトコルとして最適じゃないはずなんだけど。
924 :
191:04/09/13 17:25:58 ID:6+IaFvxa
実際にWin鯖で運用されてる所だってあるわけだろ
だから、アリエナイってほどWin鯖は悪くはないと思うぜ。(鯖運用したことないけど)
Win鯖が果てしなく効率悪いってのはOSに責任転嫁してるだけのように思える。
実際に効率(たまにPC)落としてるのは稼働中の糞アプリケーションじゃないのかナ
開発効率とか考えたら自分が慣れたOSが一番だろ。
不慣れなLinux鯖は慣れてるWin鯖より糞かもヨ
商売でやるなら絶対Linuxだけど
趣味ならWindowsでよさげ。
926 :
名前は開発中のものです。:04/09/13 17:48:02 ID:i4PRyke4
>923
別にキミをためそうとしたんじゃないから。
ICMPは、UDPの上位層になると思うんだけど、
生ソケット使って、自分でヘッダも組むと、
UDPよりも余計なデータが減るから、速くなる?っていう意味。
ICMPがPingの役割をするのは、ヘッダにエコーになるものを記述するからじゃないの?
ほとんどの不安定要素は糞ドライバと糞アプリ。
Win2000でTCP使ってやる予定。(`・ω・´)
Linux派、Windows派、いろいろいても良いんじゃないの?
どっちが鯖として優れているとかって話題は他のスレでやったほうがいいよ。
920を読み返すと、なんかWinが最適って言ってるように見えちゃうな。
そんな事が言いたいんじゃなくて、果てしなくなんて比較対照にもならないほど差があるわけでもないし、
具体例をあげずに一般常識と言い切っていると、ただWin叩きをしたいだけにしか見えなかったわけさ。
新規プロセス生成のコストが非常に多いとか、Winにも欠点はたくさんある。
>>926 IPとICMPを勘違いしてない?
つうか887は脳内さんだと思うのは俺だけだろうか。
Javaなら問題n (略
931 :
名前は開発中のものです。:04/09/13 18:27:39 ID:i4PRyke4
>>928 ごめん。
質問変える。生ソケット使って自分でヘッダも組むと、
UDP使ってデータ送信する場合よりも、
総データ量は減る?
効率云々よりWin鯖は高い。
あはははははは
>>931 そんなの実装によに決まってる。
オーバーヘッドになる冗長データ(ヘッダ)の大きさに依存するし、
UDPよりシンプルなヘッダのパケットに、パケットとして価値があるかは疑問。
ルーターが認知してないイレギュラーなパケットを通してくれる環境ばかりとも限らないし、
当然掛かってくる実装コストを支払う価値があるかも疑問。
XPSP2ではraw socketに制限掛かったりとか面倒な事情もあるし。
それにMMORPGの場合トラフィックがボトルネックになるとはあまり考えられなくない?
>>932 高い上に規模に比べて要求するリソースが大目だな
ただ、だからと言ってすでにWindows導入済みの個人がわざわざ新たにLinux等の
環境を用意するというのも不毛だよ。オナニーならば止める理由はないんだけど。
935 :
名前は開発中のものです。:04/09/13 20:03:45 ID:i4PRyke4
>そんなの実装によに決まってる。
WinSock2.2です。
ぶっちゃけ答えてほスィ。
自分で検証してみるのめんどいから
>>931 UDP使っても結局はTCPもどきを作ることになるから
素直にTCPで大丈夫な設計をしたほうが無難だと思うよ。
あとルーターの問題もある。ネット環境なんていろいろで、
中にはUDPをTCPでくるんで送る環境もあるとかないとか・・・
未確認だがそういう噂を聞いたことがある。
>931
そういったところを工夫するよりプロトコル自体の工夫の方が効果あると思う
無駄な情報はないか、とか最低限の情報のやり取りになっているかとか
IO完了ポート?かな?I/O Completion Portsでヒットしたよ。
というわけで、IOCPはネットワークプロトコルでは無いよ。
というか、IOCPとICMPをどうして同じものだと考えてしまうのだろう?
関係無いけどその本良さそうだね、買っちゃいそう。
ネトゲ作成のバイブルは私の知るところ無かったからね。10月までわくわく。
宣伝乙
943 :
名前は開発中のものです。:04/09/13 23:16:15 ID:i4PRyke4
>937
あらー。UDPってそんな短いヘッダだったのか。
前、WinSock2.2のUDPのパケットをキャプチャしたとき、
もっと余計なデータが16バイトぐらいはあったように見えたので。
もっかい確認します。ありがとう。
>>942 脳内だとか宣伝乙とか君はそういうものの見方しか出来ないのかね
>>944 目次だけ見て糞ネットコード書いて氏ね
ていうかおまえら素直に喜べばいいのに
他人の汚いソースコードを読むのも適所抜き出してのコピペも大変だろうに、
それもようやくおさらばなんだにょ
次スレどうするよ。
>>945 >目次だけ見て糞ネットコード書いて氏ね
なんでそこまで罵倒されなきゃいけないのさ。
他人の汚いソースコードを読むのも適所抜き出してのコピペも大変なのは945だろ
自他の区別がついてないんじゃないか?
俺はMSDNとDirectXのサンプル、それにネット上の情報で間に合ってるよ。
>>946 タイトルは変えたほうがいいんじゃね?
>>946 MMORPGスレなら掃いて捨てるほど有るから、その中から適当に再利用しよう。
スレでなにか作るわけじゃないのなら普通に各質問スレでいいだろ。
>>947 ごめんね。H4wxAKwY、煽ってみるの初めてだったから、ごめんね。
ところでWinsockのリファレンスって日本MSDNには全然無いんだね。
おまえら折角wikiがあるんだからWinsockリファレンス翻訳ページでもつくれっての。
>>951 スレ名頭が全てMMORPGで一致してるんだな。ワロタ
「ネットゲー」でスレ検索してもちらほら