- 1 名前:名前は開発中のものです。 [01/12/20 06:48 ID:WLADMjH3]
- ネットワーク対戦型(対話型)ゲームだよ!
おそまきながらネットワークの時代だとおもうんだ! やっぱ相手がいるから熱くなると思う。 1player型だって良く考えれば作者と対戦しているといえる。 それと人が相手だと飽きない。 2チャンネルだってゲーム性の弱いゲームだけど、 人が集まるとこれほどに面白くなるという好例だよ。
- 46 名前:名前は開発中のものです。 mailto:sage [01/12/21 07:32 ID:???]
- オナニースレの見本のようなもんだ。
何かをつくろうとする奴らがみんな1のような奴だったら クソスレ氾濫して大変だろうな。 だが唯一の救いは、1がsage進行を守っているということだ。
- 47 名前:1 mailto:sage [01/12/21 20:16 ID:???]
- >>45
アクション系はスピードが命だす。 ネットラグで待たされるようならアクション系はだめでしょ? それともアクション的なところはクライアントに実装するということかな? うーんこのスレの主旨はネットゲームだすし、 純粋なネットゲームを目指すならクライアント の比重を上げ過ぎないようにしようと思う。 といっても45の言うことを完全否定しているわけではなくて アクション的な要素をどのように取り入れるかは課題としまする。 。 >>46 板の番人ですか?それとも否定的なのは性格ですか? なんてことはどうでもいいけど、 >>44 に答えて さあてC/S間のプロトコルだが、まだ hiとcuしか決まっていない。あとto,bc,dt,eosくらいで足りるかなな? hi::wait::clientTime::lagsiv 生きてまする。 cu::interval::serverTime::late じゃあまた ent::group 仲間に入れてくれ! ok::id 仲間に入れてやるからこのidを使いな。 to::destination どいつへ送る? bc::destgroup どいらへ送る? dt::...... データだす。 eos ソケットの終わりだす。 このくらいで順次追加するか・・・
- 48 名前:名前は開発中のものです。 mailto:sage [01/12/21 20:53 ID:???]
- 俺、リアル工房なんだけど
部活でFPS系のヘボい通信ゲーム組んで学園祭の出し物にしたよ。 ついでに、通信部分を担当した後輩は寡黙っつーか謙虚だよ。 うまく言えないけど、ここの>>1がイイ歳こいた大人だったら嫌だな。って思った。
- 49 名前:1 mailto:sage [01/12/21 20:53 ID:???]
- プログラミングと並行してゲーム内容も考えるだす。
(独り言が多くなるとオナニーぽくなるな、オナニースレかあ) つうかエロゲーにも興味ありまする。 だがサーバー屋の都合もあるから18禁はやめとく。 まずはRPGの対戦画面しかない奴を考えるだす。 HP,MPは必要として、 その他のパラメータはどうしよう。 あまり複雑なのは初心者受けしないだろう。 パターン攻撃を作ろう。 それがコマンド簡略化機能となると思う。 AI搭載なんかよりずっといいと思う。 (パターン攻撃:複数の攻撃をあらかじめ登録しておく。 メリット:攻撃力は倍増、コマンド簡略化 デメリット:無駄な攻撃が含まれる、初心者は使いこなせない)
- 50 名前:1 mailto:sage [01/12/21 21:01 ID:???]
- >>48
まあ人間的には劣っているかもな。 たしかに口が先に走る奴(俺)は嫌われる。 好き嫌いはその人の自由だから何も言えないけど、 嫌いの一言で済ましてほしくないな。
- 51 名前:48 mailto:sage [01/12/21 21:08 ID:???]
- 思うに、ブツが伴えば人は耳を傾けると思うよ。
頑張って。
- 52 名前:1 mailto:sage [01/12/21 21:18 ID:???]
- 頑張るよ。ありがと。
嫌なものを嫌うのは自然なことだし俺は許容する。 どんどん攻撃していいよ、煽りもスレのうちということ。
- 53 名前:1 mailto:sage [01/12/21 21:45 ID:???]
- キャラは全部女キャラにすっか。
アニヲタ向けになるけど受けると思う。 で基本キャラ意外にユーザーが描いたものを登録できるようにしよう。 というのは俺はアニメ画描けるけど、 時間掛かるし第一趣味に合わないかもしれない。
- 54 名前:名前は開発中のものです。 mailto:sage [01/12/21 21:58 ID:???]
- >>53
おい。キャラデータをいちいち転送させるのか?
- 55 名前:1 mailto:sage [01/12/21 22:09 ID:???]
- >>54
そうか俺が馬鹿だった。 それはまずいな。サーバー負荷どころではないな。 クライアントの転送負荷は膨大になる。 基本キャラを選び、強制はしないが、 別途キャラデータのダウンロード可能という 感じにすればどうだろう? それでも負荷がかかるか、
- 56 名前:1 mailto:sage [01/12/21 22:13 ID:???]
- 少なくともゲーム立ち上げる度に転送するのはダメだ。
別途ダウンロードしてもらい、 もししてない場合は基本キャラが表示されるようにするという具合。
- 57 名前:1 mailto:sage [01/12/21 22:33 ID:???]
- そして何日かおきにクライアントソフトをアップデートして
ユーザーの描いた優秀なキャラを基本キャラに加えるという具合、 でなんとかなると思う。
- 58 名前:1 mailto:sage [01/12/21 22:37 ID:???]
- そうするとキャラランキングの様相も呈してきて
面白くなると思う。
- 59 名前:1 mailto:sage [01/12/21 22:38 ID:???]
- じゃあ気に入ったキャラへの投票機能もつけよう。
- 60 名前:46 mailto:sage [01/12/22 08:37 ID:???]
- >>47
>>46 みたいのはいちいち返さんでよろしい。 頑張っているお前のスレが以後煽られないようにするための 俺のささやかな優しさだったんだがな。 まあお前にはわからんだろうが。 それでは口先番長にならないように頑張ってくれ。 応援してるぞ
- 61 名前:1 mailto:sage [01/12/22 16:11 ID:???]
- 地道にシコシコやりまする。
idサブコマンド追加だ。 hi::wait::clientTime::lagsiv 生きてまする。 cu::interval::serverTime::late じゃあまた 以下はhi,cuに続くサブコマンドとする。 id::number おれだよおれ! ent::group 仲間に入れてくれ! ok::id 仲間に入れてやるからこのidを使いな。 to::destination どいつへ送る? bc::destgroup どいつらへ送る? dt::data データだす。 eos ソケットの終わりだす。
- 62 名前:1 mailto:sage [01/12/22 16:15 ID:???]
- >>60
応援してくれてありがとー。 ところでスレの番人ってひろゆきにやとわれてんの? まあその辺はつっこまないほうがいいか・・・
- 63 名前:1 mailto:sage [01/12/22 16:57 ID:???]
- いまhiとcuだけ作ってローカルテストしてるけど
なにかが変だ、サーバー側の1レスポンスに 140msもかかっている。
- 64 名前:1 mailto:sage [01/12/22 17:23 ID:???]
- どうしても1レスポンスに110ms-220msかかっている。
これでは使い物にならない。(゚Д゚)マズ- なにか(゚Д゚)マズ-いことがあるはず、 レスポンス毎にソケットを閉じているのが(゚Д゚)マズ-なのか? 人に聞く前にプログラムの至るところで時間を調べよう。
- 65 名前:1 mailto:sage [01/12/22 17:40 ID:???]
- たかだかたかはなだ270行程度のプログラムだけど
俺の間違いのはず。絶対俺が間違っている。俺は絶対馬鹿なはず。 俺が間違っているだけで正道があるはず。
- 66 名前:名前は開発中のものです。 mailto:sage [01/12/22 17:54 ID:???]
- なんか凄いスレだ…
- 67 名前:1 mailto:sage [01/12/22 18:01 ID:???]
- >>66
凄い?今は凄い独り言スレになってるけど、
- 68 名前:1 mailto:sage [01/12/22 21:04 ID:???]
- ソケットをいちいち閉じないようにして
1ソケット1スレッドにしたら1レスポンス約40msくらいになった。 しかしこれではまだ足りない。 仮に1秒ごとにデータを通信するゲームだとしたら25クライアントしか扱えない。
- 69 名前:1 mailto:sage [01/12/22 21:16 ID:???]
- でしかも4クライアント以上にしたら
ローカルテストなのに数秒のネットラグが発生してる! 亀の歩みだがちゃんとやっとかないと通信ボトルネックが今後の発展を妨げるからな・・・
- 70 名前:1(独り言が楽しい=オナニー) mailto:sage [01/12/22 22:01 ID:???]
- クライアントに送信インターバル100msを設けたら
1レスポンスタイムは 1クライアント 1ms以下 2クライアント 1ms 3クライアント 2ms 4クライアント 48ms 5クライアント 84ms 6クライアント 129ms だった、この増え方はパケットが衝突していることを匂わす。 ということはパケトーを整列してやればもっと速度改善ができそうだ。
- 71 名前:名前は開発中のものです。 mailto:sage [01/12/22 22:03 ID:???]
- >>68
>仮に1秒ごとにデータを通信するゲームだとしたら25クライアントしか扱えない。 そんなわけないダロ! と、言っといてあげる。
- 72 名前:1 mailto:sage [01/12/22 22:07 ID:???]
- >>71
そだね、普通に考えればおかしいよね、俺のプログラムがおかしいんだ。 だけど計算は間違ってないよ。1000ms=1秒
- 73 名前:1 mailto:sage [01/12/22 22:12 ID:???]
- 送信インターバルなしでは
1クライアント 44ms 2クライアント 74ms 3クライアント 112ms 4クライアント 128-144ms 5クライアント 163-180ms だからだいたい直線的に増加しているから 25クライアントくらいしか扱えないと考えたんだ。
- 74 名前:名前は開発中のものです。 mailto:sage [01/12/22 22:54 ID:???]
- apache みたいにプロセスを複数常駐させておけば?
- 75 名前:1 (独り言ってオナニー) mailto:sage [01/12/22 23:03 ID:???]
- なんたるこったスリジャワルダナプラコッテ
printlnで時間計測していたけどそれがネックになってた。 というわけで 1クライアント 1ms 2クライアント 1ms 3クライアント 2ms 4クライアント 1ms 5クライアント 1ms 6クライアント 4ms 7クライアント 4ms パケート整列はとりあえず考えなくてよくなった。 やっと次逝けるよ。
- 76 名前:1 mailto:sage [01/12/22 23:08 ID:???]
- >>74
そういう手もあるけど。 スレッドという複数のプロセス使ってるから。
- 77 名前:名前は開発中のものです。 mailto:sage [01/12/22 23:25 ID:???]
- 計算は間違ってない。
プログラムも間違ってない。 ということは、設計が間違ってるってことだYO!
- 78 名前:名前は開発中のものです。 mailto:sage [01/12/22 23:26 ID:???]
- Javaでやってるのか?
それもまたびっくり。 健闘を祈る!
- 79 名前:1(今日は終わり) mailto:sage [01/12/22 23:33 ID:???]
- >>77
自分しか読めない設計書があるけど・・・まあ趣味でやってるから。 >>78 printlnでばれるとは・・・・・。 つうか必要ならC++に置きかえるつもりだけど。
- 80 名前:1(出すって気持ちイイね) mailto:sage [01/12/23 01:12 ID:???]
- いないと思うけど俺の独り言を参考にしてる奴のために
俺が参考にしたソースを晒しておきまする。 www.njk.co.jp/otg/Study/horb/src/multi_src.html
- 81 名前:1(独り言ってオナニー) mailto:sage [01/12/23 01:21 ID:???]
- hi,cuはできたけど
他のコマンドもあるわけでサーバは完成してない。 3、4日中にはサーバーを完成させるのをもきゅひょうにして 頑張ってしまおうかな。
- 82 名前:名前は開発中のものです。 mailto:sage [01/12/23 09:23 ID:???]
- horbでやってる…わけじゃないのね。
いくらhorbが早くて軽量だといってもさらに性能の要るMMORPGには採用できないか…。 どれくらいオーバーヘッドがあるか計ってよ>1
- 83 名前:名前は開発中のものです。 mailto:sage [01/12/23 09:25 ID:???]
- 納豆ゲームだったのか!!!
- 84 名前:1(シコシコ手を動かすのみ!) mailto:sage [01/12/23 12:03 ID:???]
- >>82
クライアント1000個くらいで耐えられるかテストしてみるよ。 いまの7個程度の応答テストじゃあ正直自信ないしね。 ところで8個くらいで開発環境がハングッてしまった。蛾蝶ー >>83 納豆食しないでくれ。(オヤジギャグさぶー) ネットって漢字変換できねえだけだす。 サーバーのほうはなんとかなりそうだから クライアントのほうも考えるだす! 対戦画面は1対1だよな。 RPGのようなマップはなし。 3Dは面倒だし第一できーん。 魔法、アイテムはどうしよう? まあ基本的なものを取り揃えておくか。
- 85 名前:名前は開発中のものです。 mailto:sage [01/12/23 12:19 ID:???]
- ん?horb使ってる?
リアルタイムじゃないなら、horbもいいかもNE!
- 86 名前:1(独り言は(・∀・)イイ!) mailto:sage [01/12/23 12:19 ID:???]
- つうかそれだけじゃ面白くねえから
なんかアイディア出さなくては・・・
- 87 名前:1(独り言は(・∀・)イイ!) mailto:sage [01/12/23 12:21 ID:???]
- >>85
使ってないYO! もし今の方針でダメなら考えるYO!
- 88 名前:1(独り言は(・∀・)イイ!) mailto:sage [01/12/23 12:34 ID:???]
- アイディアかあ。
戦闘シーンを脱衣で・・・ いかんいかん下ネタに頼ろうというのは邪道だす。
- 89 名前:1(人でもやるぞ) mailto:sage [01/12/23 14:11 ID:???]
- あうううう
40クライアント以上にするとソケットエラーになる。 レスポンスは8msだからいいとして ソケットエラーの原因はなんだ?
- 90 名前:名前は開発中のものです。 mailto:sage [01/12/23 15:04 ID:???]
- >>89
Win98でやってるから。
- 91 名前:1(人だとダメなときもある) mailto:sage [01/12/23 15:14 ID:???]
- >>90
ありがとー。 そういうことだったのか。 一人で悩んでても無駄だったのか(TT)。
- 92 名前:1(Linux初心者) mailto:sage [01/12/23 15:18 ID:???]
- >>90
linuxでテストしてみるか・・・・。
- 93 名前:1 mailto:sage [01/12/25 20:54 ID:???]
- クリスマスは・・・でした。
趣味再開。
- 94 名前:名前は開発中のものです。 mailto:sage [01/12/26 22:17 ID:???]
- 再開した?
- 95 名前:1 mailto:sage [01/12/27 00:38 ID:???]
- こんな奴でも年末は大変だ。
ていうか年賀状書いてねえ。絵描こ・・・。
- 96 名前:名前は開発中のものです。 mailto:sage [01/12/28 00:43 ID:???]
- 実際の話、
何でもかんでもネット対戦にすれば 面白くなるなんて考えてる奴は厨房だよな。 なぁ、>>1よ。
- 97 名前:名前は開発中のものです。 mailto:sage [01/12/28 22:02 ID:???]
- >何でもかんでもネット対戦にすれば
そうそう。みんなこれやってくれると、ネットゲー全般が腐っちゃう。 一時期の何でもゲーム化すりゃいいみたいなクソゲー時代はもうこりごり。
- 98 名前:1 mailto:sage [01/12/28 23:21 ID:???]
- >>96
>>97 禿げしく銅管 ネット+面白いアイディアが必要ってことだと思う。 ところでサーバーの開発状況だが、今産みの苦しみ状態。 プロトコルの拡張。 mm::group 仲間が誰が調べる それに対して差分データを返すのは et::id[,id][,id][...]加わった仲間 ex::id[,id][,id][...]離れた仲間 dtを前置修飾するコマンド。rt::dtid::group 仲間に対して集計リクエスト それに対して tt::dtid::group データ集計
- 99 名前:名前は開発中のものです。 mailto:sage [01/12/29 00:49 ID:???]
- >>97
市販モノだけに限定しなければもうすでに腐ってますが、何か?
- 100 名前:1 mailto:sage [01/12/30 00:00 ID:???]
- 最近進みが遅いがここで練っておくと後で楽する。
断続送信なんかできるようにしとこう。 送信受信バッファが必要だ。 そして断続送信インターバルの計算式を考えておく。
- 101 名前:1 mailto:sage [02/01/07 19:28 ID:???]
- 密かに再開しますか。
12/30から一歩も進んでないぜ。 年末からいままでずっと遊んでたということだ。 ようし今日は何をしようかな?
- 102 名前:1 mailto:sage [02/01/10 21:44 ID:???]
- なかなか進まんので、別のゲーム作りに逃避している。
現在悩んでいるところ ・サーバーの負荷を減らすための断続送信 ・集計処理 ・クライアントがダウンした場合 ・集計元がダウンした場合 ・集計先がダウンした場合
- 103 名前:g mailto:sage [02/01/10 21:52 ID:???]
- 参考にさせてもらうつもりです。
気負わず、まったりと頑張ってください!
- 104 名前:1 mailto:sage [02/01/10 22:45 ID:???]
- >>103
どもー。 参考になれば幸いですが・・・、 あっさりとしか言っていないので(開発の内実は泥沼です)
- 105 名前:名前は開発中のものです。 [02/01/13 02:43 ID:rJSwrpds]
- このスレおもろいね。もっとやれ(藁
- 106 名前:名前は開発中のものです。 mailto:sage [02/01/13 03:23 ID:???]
- 情報交換したくて立てたのに
オナーニスレになっちゃってるのね。カワイソ
- 107 名前:名前は開発中のものです。 mailto:あげてみたりして [02/01/14 01:21 ID:???]
- とりあえず、ソースを晒すといろいろ盛り上がると思われ。
- 108 名前:名前は開発中のものです。 mailto:age [02/01/20 06:23 ID:???]
- これは良いスレですね
是非C++でやってほしい今日この頃
- 109 名前:名前は開発中のものです。 [02/01/20 13:21 ID:BSuwq+vF]
- >>108
C++でCS形式のネトゲを作るときに参考にさせて欲しい。 漏れもc++でキボンヌ
- 110 名前:名前は開発中のものです。 mailto:sage [02/01/20 14:24 ID:???]
- 1は逃げたんだろ。そっとしといてやれよ。無理にageんな。
- 111 名前:1 mailto:sage [02/01/27 12:38 ID:???]
- 久々に来たよ。
逃げたというのは当たり、逃避して別のゲームを作っていた。 つうか最近このスレを見失っていた。 やっぱ自分のHPでやるべきことなのかもね。 毎日カキコするほど熱入れてやるなら別だけど。
- 112 名前:1 mailto:sage [02/01/27 12:41 ID:???]
- あくびがでるほどのんびり進めるつもり。
- 113 名前:プログラム未経験 [02/01/29 08:03 ID:g/7F6xBo]
- あの、質問させていただきたいのですが、
FFアドベンチャやサッカスタリオン等のようなネトゲは、 どの言語で書くのが良いのでしょうか? 将来的に、上記のようなネトゲを作りたいと思っているので、 これらに向いている言語を教えて下さい。 C言語を勉強中の友人には、「JAVAでいんじゃない?」と言われました。 よろしくお願いします。
- 114 名前:名前は開発中のものです。 mailto:sage [02/01/29 10:51 ID:???]
- >>113
えーと、それは「エベレスト登りたいんだけど、登山用具はどこで買うの?」 みたいな質問なんで、最初はどこでもいいです。 どうせ貴方がそんなネトゲを作れるころには、他の知らない言語なんか 仕様書2時間読めば覚えられるようになってますよ。
- 115 名前:名前は開発中のものです。 mailto:sage [02/01/29 10:51 ID:???]
- C
- 116 名前:名前は開発中のものです。 mailto:sage [02/01/29 17:32 ID:???]
- >>114の言ってる事は、>>115の言語を最初に覚えることが前提に
なってる。
- 117 名前:Unknown name mailto:sage [02/01/30 17:15 ID:???]
- すげえよ >>1
草葉の陰で見守ってるからな
- 118 名前:1 mailto:sage [02/01/31 19:35 ID:???]
- >>113
クライアント側とサーバー側とは別の言語でもいい。 自分の場合 クライアントjava サーバーcまたはc++(現行のローカルテストではjava)の予定。 作りやすさではjavaだろうね。 データベースならばjavaでさほど問題にならない実行速度も ゲーム作るとなるとホントに遅いよ。
- 119 名前:名前は開発中のものです。 mailto:age_te_yaru [02/02/01 10:33 ID:???]
- スレッドをバリバリ使う必要がありそうなところを考えると、
サーバはJavaが安全だろうなぁ。 ただ、GCとかがどれくらい影響してくるかがちょっと不安かもね。 全部オブジェクトプールにすれば、そんなにGCかからないかな? クライアントは、アプレットがいいなぁ(ユーザとして)。 アプレットの場合、アプレットダウンロードのトラフィックが ゲーム本体を邪魔しないかどうかが問題になりそう。
- 120 名前:1 mailto:sage [02/02/01 21:09 ID:???]
- 信用に足らないサイトからダウンロードした実行ファイル
は怖い。ハードディスク全部消すプログラムは簡単に書けるからね。 アプレットはその点安全だからいいよね。
- 121 名前:名前は開発中のものです。 mailto:sage [02/02/01 21:48 ID:???]
- ただJava2Dor3Dでどのくらいパフォーマンスが出るかが問題だな。
- 122 名前:名前は開発中のものです。 mailto:sage [02/02/02 02:21 ID:???]
- >>121
pc.2ch.net/test/read.cgi/tech/1002160815/244-245
- 123 名前:名前は開発中のものです。 [02/02/03 13:03 ID:MJ0ExQJf]
- ガンダム凄いね。
よく動いてる。
- 124 名前:名前は開発中のものです。 mailto:sage [02/02/03 13:09 ID:???]
- >>123
java.sun.com/docs/books/tutorial/extra/fullscreen/ Java1.4から新設されたAPIだね。
- 125 名前:1 mailto:sage [02/02/10 20:23 ID:???]
- JAVA1.4使おうかな・・・
- 126 名前:1 mailto:sage [02/02/17 06:20 ID:???]
- JXTA
- 127 名前:1 mailto:sage [02/02/20 14:31 ID:???]
- なんか知らんけど書き込めない
- 128 名前:1 mailto:sage [02/02/20 19:36 ID:???]
- 規制?
- 129 名前:クソスレまじん mailto:はじめまして [02/02/27 22:58 ID:???]
- ぼく、クソスレまじん。ゲームせいさくばんの、ちていおくふかくから
やってきたんだ。 ちじょうには、たくさんヒトがいるとおもったのにここには みわたすかぎりなんびきかのわなびーしかいないみたいだね。 なんだかネットゲームばんのほうからこうばしいかおりがしてきた。 ちょっといってみるね。んじゃ。
- 130 名前:名前は開発中のものです。 mailto:sage [02/02/28 01:49 ID:???]
- 記念カキコ
- 131 名前:名前は開発中のものです。 mailto: [02/04/12 16:01 ID:???]
- JAVAでやろうか。
- 132 名前:名前は開発中のものです。 [02/04/12 16:13 ID:NNAMDqSw]
- ひろゆきっぽい。>>間人
- 133 名前:416(HSP) ◆HoSW/FCI [02/05/07 00:47 ID:XKfkToEo]
- ということで、スレ乗っ取りです。
ネットゲーム特有の技術や制作、アプリケーションプロトコルや、送受信ルーチン、並列処理、ラグ対策などについて気軽に語り合いましょう。 あのネットゲームのあのデータはこう処理している!…だろう、という想定ネタもok。それだとあれがこうなって、というツッコミもokです。 これからネットゲームを実際に作ってみようと考えているけど、なにをどうしたらいいのかわからない人もどうぞ。名前のところに使用言語を書いて、以後、番号+(言語)、場合によってはトリップを使ってください。 なお、当方、HSP使いなので大抵の質問には答えられない自信はありますがw。
- 134 名前:361(C++/VB) ◆fiQMk5WM [02/05/07 01:13 ID:V16cWMtg]
- ども、416さんに引っ張られて参りました。
私どもアマチュアネトゲ制作者としては、サーバ選択プログラム、差分ダウンロードプログラムなどがほしいところでもあります。 取りあえず、自分のを作りつつ差分ダウンロードプログラムでも手がけてみようかと思っておりますが、誰か持ってたら提供してくださいハハー。
- 135 名前:361(C++/VB) ◆fiQMk5WM mailto:sage [02/05/07 01:18 ID:???]
- で、差分サーバの仕様ですが、いろいろ考えると面倒なのでとりあえずWin用で良いでしょうか。
C++で作成して、iniファイルの中身をみてクライアントから送信されてきたバージョンに対応するダウンロードファイル(lzhで一個をイメージ。無ければクライアントのバージョンより古い物に対応した最新差分)を送信。 差分ダウンロードのクライアント側は自分のディレクトリにそれを解凍すると。 ディレクトリ構造などは圧縮時に指定しておくと。 サーバはcgiの方がいいかな?あ、何か簡単にできそうだな。
- 136 名前:361(C++/VB) ◆fiQMk5WM mailto:sage [02/05/07 01:21 ID:???]
- ??????????/diff.cgi?=ゲーム名&=バージョン
とかでhttpではなくlzh返せば良いんですよね。掲示板とかとおなじか。 すると後は解凍プログラムだけか。
- 137 名前:416(HSP) ◆HoSW/FCI [02/05/07 01:32 ID:XKfkToEo]
- >>134
サーバ選択ソフトは汎用性が高いので、共同制作してもいいんじゃないかと考えています。差分取得ソフトもかな。 今、ホスト登録用CGIを制作依頼しているんですが、…どこまで出来てるんだろ。 hyper6.amuser-net.ne.jp/~hidden/2c/wforum.cgi?mode=allread&no=59&page=0 「部屋名」「ゲーム名+バージョン」「IPアドレス+ポート」「最大参加人数」「参加人数」だけでokと想定してるんですが、他にやり取りしたほうがいいデータ項目はあるでしょうか? 差分の方は、既存の差分更新プログラムを利用するのはダメですかね?
- 138 名前:RUR [02/05/07 01:42 ID:qX5uc02I]
- 416さんに引っ張られてネトゲ板より参戦します。
- 139 名前:361(C++/VB) ◆fiQMk5WM mailto:sage [02/05/07 02:19 ID:???]
- いやー、既存のがうまくみつけられなくて。
何か良いのありますかね。
- 140 名前:416(HSP) ◆HoSW/FCI [02/05/07 02:41 ID:XKfkToEo]
- >>138
ようこそです。ネットワークプログラマー探しのRURさんという認識であってますかw。 >>139 差分更新といっても、アーカイブに変更分を梱包して上書き展開という方法と、「WDiff」みたいな感じにプログラムの変更部分だけ抽出して組み込み更新という方法が。 前者は仕様に大幅な変更があって、大部分を更新しないといけない場合、後者はちょっとした修正で実行ファイルがちょっとだけ変わったというときに便利。どちらも対応としておくと便利かも。
- 141 名前:361(C++/VB) ◆fiQMk5WM mailto:sage [02/05/07 03:17 ID:???]
- 後者に手を出すと切りがないので前者の気分でいますハハー。
どうせそんなにでかいプログラムには手は出さないし、出すなら専用のを書くでしょう。
- 142 名前:416(HSP) ◆HoSW/FCI [02/05/07 05:22 ID:XKfkToEo]
- game.2ch.net/test/read.cgi/gamedev/1018534410/366
|また、送信間隔ですが、ログを見てみると30msとか何ですか? |ひょっとして。よけいな御世話かも知れませんが、タイムラグを |考えればもっと間隔を広げても良さそうな気が・・・接続可能数に |直結しますよね?拙作では100msです。 30fps(33ms)で、受信バッファに溜まっている全員(n人)のデータを取得(n回)して、解析(コマンド数により不定。ただし、最大n*n回以下)、全員に送信(n回)しています。なお、ホストは60fps(16ms)で回転しています。 当然、データが無ければスキップしますし、送信もされません。 で、30fpsはあくまでも1秒間に30回送信できる可能性(機能)があるだけで、実際に30回毎にデータを送信しているわけではありません。単に届いたデータはできるだけ早く送りたいだけです。 受信ルーチンを抜けた直後に届いた運の悪い(?)データは、ウェイト時間分待機することになりますから、100ms待機すると、 Ca ─(ラグa)→ S ─(ラグb)→ Cb の遅延時間が最大、((ラグa/2)+(ラグb/2))+100ms になるということに。
- 143 名前:416(HSP) ◆HoSW/FCI [02/05/07 05:26 ID:XKfkToEo]
- ちなみに、とあるバージョンではミスって、1秒間に60回フルに黒ジエン4匹分の位置データを送ってしまったこと(1秒間に240コマンド送信、これプラス通常のコマンドも)があります(爆。
ホスト500MHz(ADSL)、クライアント500MHz(56K)だと処理しちゃってました。さすがにホスト333MHzはダメだったみたいで(w。 単純に考えて1秒間に6歩制限だと、40人は処理できるんではないかと推測。ただし、窓9x系だとどうも40個以上のソケットは作れないらしく…。 なお、コマンドの長さは「24(TCPヘッダ)+14(AP)」38バイトです。
- 144 名前:416(HSP) ◆HoSW/FCI mailto:sage [02/05/07 05:36 ID:???]
- 差分での自動バージョンアップは、オンラインでの頒布ゲームでも活用できるネタなので、雑談スレで煮詰めてもらうのがよいかも。
私個人では素直に「WDiff」を利用しようと考えていましたが。 「WDiff」で差分ファイル(実行型)制作 ↓ Webにあぷ ↓ 更新ソフトが比較して取得した後、差分ファイル実行 ↓ 各種データが最新版に ↓ (゚д゚)ウマー
- 145 名前:416(HSP) ◆HoSW/FCI mailto:sage [02/05/07 05:53 ID:???]
- あ、今ソース思い出したら4匹×60回じゃなくて5匹×12回の60コマンドでした。
…じゃなくて、await 1で回してたって言ってたから、1000/5か。200コマンドですね。もしも、順次方式じゃなくて一括処理だったら5000回発行してたのか…。処理落ち必至だから絶対5000は行かないけど。
- 146 名前:361(C++/VB) ◆fiQMk5WM mailto:sage [02/05/07 08:56 ID:???]
- >((ラグa/2)+(ラグb/2))+100ms になるということに
全くその通りですが、HPの減算処理、将来の回復処理を入れたとき、サーバーで計算するので全遅延時間に占める通信ラグ部分が大きくなると回復が間に合わなくて死ぬ事が多くなるかなーと。 通信ラグがまぁ100msとすると、100msに一回ダメージ/回復処理を解決することでラグのせいで回復が間に合わなかった、が避けられるかと思って。 ラグがたとえば130msと200msでどれぐらい操作感に違いがでるかですが、ローカルでのレスポンスを上げ、遅延の分はアニメーションでごまかせば誤差範囲かと考えました。 どんなもんでしょうか。 拙作はクライアントは200msに一回データを送信しており、50msに一回受信しています。描画は50msごとに行っていて、順調に動いているときは通信間隔200msごとに4駒のアニメーション(今のところ移動の補完だけですが)を行ってます。 サーバからのデータがラグなどでまとまって着くと、アニメーションを飛ばして早送りで処理してます。 サーバは受信は最大速度で行い、100msごとに受信したデータ(最大でクライアント数n。各クライアントから複数回は受信せずソケットバッファにためてます)をまとめて処理し、n回送信してます。 これでどんな感じに動くか、っていうのはさわってもらえばいいのですが今Geoが動いてないので後ほど・・・。 WDiffいいですねー。WinDiffと誤解しておりました。
|

|