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

MMORPGをHSPで作りたいな

■ このスレッドは過去ログ倉庫に格納されています
0001FAN04/05/11 11:12ID:Ky5hy7V5
とりあえず、作ってみたいんですけど参考になるサイトないですかね?
07366392005/11/25(金) 00:31:18ID:kHBDzTEC

※○○タイプとか適当に名前つけたので実際の方式と合うかは知りません;
07376392005/11/25(金) 00:55:27ID:kHBDzTEC
現在は5の方式を元に、さらに無駄な部分を削ぎ落としています。
今後取り扱うデータが増えるハズなので、その前にもう少し手直しをします。

ふと思ったのですが、このスレはMMORPGを完成させて発表するまでの
道のりスレ的なものなんでしょうか
それともHSPでMMORPGを作成するにあたっての技術的な話題を
発言するスレなのでしょうか

私の場合ほとんど独り言に近いのでorz

07386392005/11/25(金) 01:05:36ID:kHBDzTEC
本来ならここらへんで一度公開テストしてみたい所なのですが、
開発用PCを鯖にするわけにいかず(ゲームしたいし・・・つか最近これにかかりきりですが)
以前web鯖として使用していたPC(現在休止中)はLinuxなのでHSPが動かせませんorz
折をみてWin入れなおすか・・・でもスペック的に心配orz

寝ます ノシ
0739名前は開発中のものです。2005/11/25(金) 01:20:49ID:lkxMipFL
お疲れ様ー
07406392005/11/26(土) 18:20:13ID:gB1gutAY
>>735の5番の方式をもとに、

「サーバからの移動間隔信号を出すタイミングをクライアント毎に設定」してみました。

つまり「足の速いキャラ」「足の遅いキャラ」が出来ます。

今テスト中です。結構面白い要素です。
07416392005/11/27(日) 01:30:32ID:kBMQLm+S
手を加えるたびにテストし不具合見つけて修正しての日々です
変更点を言葉で表すのは簡単ですが>>740を実装した事によるバグや
不具合の潰し込みに今までかかってましたorz

今回の実装で思ったのですがやはりまず通信系を作りこんでいこうと思います
それ以外のシステムについては考えている部分もあり未定の部分もあります
考えている事に通信系を対応させてから実装するやりかたをしたいと思ってます
例えば今回の移動の速さ実装に関しては、
ステータス又はアイテム・魔法等で移動速度アップの要素を入れることを見越しての事です
mobにも移動速度の設定をして足の遅いやつ・おっそろしく速いやつとかを
つくったら面白いかなと。
実際あまり速い設定にしてしまうと負担が大きくなるので極端な設定は出来ないとは
思ってます。ここらへんは調整する必要があるでしょうがまだ先になります

寝ます ノシ
07426392005/11/30(水) 01:08:36ID:qCFauRfw
マップチップを暫定で16×16で作成しマス単位で移動させていたのですが(スクロールめんどくさ)
しょぼいのでキャラチップだけを32にしてみました。結構いいかもしれないけど今度はマップチップが
キャラとスケールが違ってしまうので32のマップチップを用意して処理は16のチップ扱い
(32のチップをmapデータ4つ割り当てる形です。
データ的には無駄だけど処理は変えずに移動の見た目がマス単位じゃなくなる感じ  って説明ヘタすぎorz )
にしようかと思案中です。
また、今まで19×19マスで表示していたのをキャラがデカくなった為、せまく感じたので32×32にしました。
そういえば昨夜DirectXがHSPで使用出来る事を知りました。スプライトもあるんですね
HSPのコマンド知らなすぎorz
NPCの実装と壁フラグの関係もあるんでマップチップとキャラの大きさについて決める必要が出てきました
あとスプライトの方が判定処理簡単なのかなぁ。今のとこ全部gcopyです。今度調べてみます
知らないコマンドの動作を理解するのにいちいち動作検証program組んで結果を確認しながらなのでメンドクサorz
そういや最近はprogram組むじゃなくてスクリプトって言い方するんでしょうかね。よく知りません
07436392005/11/30(水) 01:09:17ID:qCFauRfw
最近の状況
クライアント10個立ち上げて(処理重くなるんで画面処理しないデバグモードで)、
座標移動の通信ぐらいならとくにストレスなく動作出来る事を確認しました
鯖立ち上げて運営開始しても、多分多くてもonline数10人前後だろうから十分です(笑)
あとキャラチップどうしよう。。。フリーのツクール素材を拝借してもいいんですが、
出来ればかわいい系じゃなくて濃いグラフィックが自分好みなんで(汗)なかなか見つからないです
あとは装備によって見た目を変えるかその処理はしないかも決めないと。。。
装備によって見た目を変える場合各装備だけのチップを用意して合成処理をしないといけないですが
そうなるとパケット量が増えるし、悩むところです
一番困るのはHSPの処理速度自体全然把握してないので(これがHSPでの始めてのprogramなので)、
どこまでつくりこむか、どこまで手抜きするかを決めかねてますorz

ちなみに今キャラチップはふんどし(?)一丁のキャラです
装備はふんどしだけにして色だけ変えようかな(笑
もちろん赤フンを最高級装備にする(笑
ふんどしonline(笑

寝ます ノシ
0744名前は開発中のものです。2005/11/30(水) 01:17:27ID:0ioB0iLp
お疲れ様。順調に進んでるようで期待させていただきます。
07456392005/11/30(水) 12:20:27ID:27yguAmR
会社からです…なんてこった…
スプライト使えばあんな処理とかこんな処理とか楽じゃないか…
その部分のコード書き直すか現状でいくか…
どうする俺orz
0746名前は開発中のものです。2005/11/30(水) 13:26:28ID:eHmOSmll
>>745
後々の処理や作業量を考えたら、今、書き直すべきかと思います。
大変だとは思いますが、がんばって下さい。お手伝いできる事があれば良いのですが・・・
いかんせん、私は無能ですので・・・応援しかできません。
07476392005/12/02(金) 01:02:17ID:ht2wbtfp
ちょっとまだコードについては検討中ですorz

今日までの状況
サーバでNPCのランダム移動実装
クライアント一つだけ立ち上げて負荷テストしてみました。
PCに関しては自分の可視領域にいる他PCのみデータ送受信をしていますが、
NPCに関しては負荷テストの意味もこめてmap上の全NPC座標を
クライアントに送信してみました。

テスト状況その1
プレイヤー(クライアント)が一人だけonline
NPC(mob)数がmapに100人(全てのNPC座標データをプレイヤーに送信)
NPC表示はプレイヤーの可視領域内のみ(データは全NPC分保持)
プレイヤーへの同期信号とmobの移動間隔を同じにした

結果
正常に表示された
プレイヤーの移動に関しては時折もたついたが気にならないレベル

テスト状況その2
プレイヤーが一人だけonline
NPC(mob)数がmapに100人(全てのNPC座標データをプレイヤーに送信)
NPC表示はプレイヤーの可視領域内のみ(データは全NPC分保持)
mobの移動間隔を倍にした

結果
プレイヤー移動時多少もたついた(多分NPCデータ処理時に負荷が大きくなる為)




07486392005/12/02(金) 01:07:34ID:ht2wbtfp
テスト状況その3
プレイヤー(クライアント)が一人だけonline
NPC(mob)数がmapに150人(全てのNPC座標データをプレイヤーに送信)
NPC表示はプレイヤーの可視領域内のみ(データは全NPC分保持)
プレイヤーへの同期信号とmobの移動間隔を同じにした

結果
mobちらつき発生(原因不明)
プレイヤー速度ダウン
07496392005/12/02(金) 01:14:53ID:ht2wbtfp
テスト状況その4
プレイヤーが一人だけonline
NPC数が1000人(ランダムに座標増減・但しクライアントへは100人分のみ送信)
NPC表示はプレイヤーの可視領域内のみ(データは全NPC分保持)
プレイヤーへの同期信号とmobの移動間隔を同じにした

結果
多少遅くなったが致命的なほどではなかった
07506392005/12/02(金) 01:19:18ID:ht2wbtfp
本当はクライアント数も増やして確認したいのですが、
一台のPC(この場合はパソコン)で複数立ち上げると、
それだけでパフォーマンスが落ちるのでやっていません

寝ます ノシ
0751名前は開発中のものです。2005/12/02(金) 19:20:23ID:LmQczCFK
>638
いつも参考にさせてもらってますm(__)m
私もネットワークゲームを開発しているのですが、パケットの暗号化にどんなアルゴリズムを使えばいいか悩んでます。
いまはRC4(オープンソースなほう)をつかってやろうと考えてますが、ほかにお薦めとかあるでしょうか?
高速なストリーム暗号だと、RC4くらいしか思いつかなかったので…。
0752名前は開発中のものです。2005/12/02(金) 19:22:30ID:LmQczCFK
↑ごめんなさい。639さんですねorz
07536392005/12/03(土) 00:02:24ID:GhwP9zeb
すみません暗号化とかまったく考えていませんorz
RC4についてはバイト単位で暗号化出来るみたいですが、
私の想定している規模のものだと暗号化はいらないかなとか思ってますがだめですかねorz
通信部分についても、なんか好き勝手に組んでますので
傍から見るとアホな事をしているのかもしれませんorz

本日はprograming休憩して、久々にlinuxでweb鯖立ち上げました。こちらはこのまましばらく通電しときます
つかlinuxも使ってるならCで鯖組めよとかツッコミは無しの方向でお願いしますorz
昨夜のテストについて書き忘れていましたが、同期信号を出す間隔は
メインループの2,3回に一度程度でがつがつ出力しました それ以上落とすとモッサリでした
PCとNPCと戦闘、生産等を実装したと仮定した場合メインループ毎に同期信号を出さないと
だめぽなのかも知れないなぁとか思ってます。

というか・・・・

スプライト関連のリファレンスを見て思ったのですが、もしかすると今までの作業が根本的に
ひっくり返りそうな予感です
すくなくとも移動・可視領域外に他PC等が移動した場合の処理・画面スクロール等の処理が
今の手法より効率が良さそうな気がします。
他にも知らない便利なコマンドがありそうorz

つかHSP付属のヘルプだけでMMOつくろうとするなよ俺orz
0754名前は開発中のものです。2005/12/03(土) 19:30:01ID:P6bg9nkO
正直言うと凝ったことしたいならHSPは捨てるべきだと思う。
HSP本来のコンセプトと外れるし、ソフト単体で見ても質を落とすだけ。
07556392005/12/03(土) 22:49:17ID:GhwP9zeb
私はHSP自体始めて使うのですが、その意味では正直VBでもjavaでもその他でも条件は同じなんです・・・
どれも使ったことないですから(汗
元々MMORPGが好きなので、自分で作れたらいいなぁというノリで作ってます
早い話自己満足なわけですので、スレ汚しになっていたらすみませんです
0756名前は開発中のものです。2005/12/04(日) 09:29:50ID:qZA/Q2b9
人の好みも、考えも個人個人違う。
もっとも、愚かしく、みっともない事は、自分の考えを他人に押し付ける事である。

>>755
今まで通り、がんばって下さい。
0757名前は開発中のものです。2005/12/04(日) 15:27:55ID:xC4pKK+i
そーゆー思春期みたいな価値観止めたら?
754は単に忠告してるだけだと思うけど。
0758名前は開発中のものです。2005/12/04(日) 16:26:31ID:Tyia1dD3
とりあえず動いて、十数人から何十人かが接続でき、
簡単なMMO世界を構築する喜びを味わうのならばHSPでもええんちゃう?
商用レベルで利益出せるようなシステムを構築しようってわけでは無いのだし。
HSPで限界を感じて、更に上を目指す意思があるのなら、その時はC++でも何でも勉強していくだろうし。
HSPでプログラムの楽しさに触れてみてくださいっていうコンセプトには合致してるでしょ。
0759名前は開発中のものです。2005/12/04(日) 17:06:32ID:jIDPCMqM
身の丈にあった方法をとるのは大事。
力みすぎて計画倒れになる757よりましだろう。
0760名前は開発中のものです。2005/12/04(日) 20:53:27ID:qZA/Q2b9
>>756
お前が何をどう思おうが、お前の勝手。
>>755の発言を、>>639がどう思おうが、どう扱おうが>>639の自由。

そして俺が、がんばる人間を応援しているのも、俺の勝手。
0761名前は開発中のものです。2005/12/04(日) 20:54:45ID:qZA/Q2b9
アンカー間違えた・・・orz
まぁ、いいか。厨房じゃなければ理解できるだろう。別にできんでも構わんが。
07626392005/12/05(月) 01:34:12ID:vL1s5iVn
なんか騒ぎになってしまったようで申し訳ないですorz
想定している規模は>>758さんの言うように極小規模なものです

進捗状況
NPCランダム移動をmobがそれっぽく動いているような感じのランダム移動に手直し
(ランダムにx,y座標を増減する方式から今いる座標に近い座標をランダムに設定し
さらにランダムに移動許可を出して許可のあった場合のみそこに向かって行き
到達時にまたランダムに目標とする座標を設定)
可視領域にNPCの座標があるときだけ鯖から送信:レスポンス向上

今後の予定
NPC行動パターンのバリエーションを増やす
チャットをそろそろ実装したいのでコマンドリファレンスを見る予定

寝ます ノシ
0763名前は開発中のものです。2005/12/05(月) 02:30:51ID:qt5SixLV
小規模はMMOとは言わない気がするけど…まあいいかw
ガンバレ
07646392005/12/06(火) 01:27:01ID:43ex6rOD
進捗状況
チャット実装(全体チャットのみ)
接続用のIPアドレスをローカルからDNSに変更

今後の予定
タイヤをスタッドレスにかえる

寝ます ノシ
07657512005/12/06(火) 23:03:58ID:f4Fja9eV
>>753
返事どもです。
いろんなこと検証してて、すごいなぁと感じたので、暗号化も
やってるかなと安直に期待してました。すみません。
個人的には、MMOに暗号化は必須だと感じてるのでぜひとも
入れたいところです。
ひとまず、RC互換のArcfourのライブラリらしきものがみつかった
ので、これを使ってみようかと思います。
ttp://d.hatena.ne.jp/studiokingyo/20040630
(HSPスレなのにC用ですんませんorz)

ちなみに、DxLibにこだわってるわけでないので、その辺の
突っ込みはご容赦を。

あとLinuxですが、私は鯖プログラムがWin→Linux→Winと移ってきてます。
結局完成せずに、やりたいことでOS移行してるだけなんですが。。。
Linuxプログラミングは、Cが少しわかれば趣味程度のものならすぐ作れますよー。
この本とかお勧めです。
ttp://i.loveruby.net/ja/linuxprog/
興味があったらどぞ。


いまは先の暗号化とP2Pに興味ありです。
できればP2Pを取り入れたいので。
想定しているのは、ロビー+αをP2P(ハイブリッド型)で作ろうかと
考えてます。
07666392005/12/07(水) 00:20:44ID:7yI4PKyb
パソコンの前で2時間寝てしまい起きたばかりで首が痛い639ですこんばんはorz
今日は貴重なprograming時間を寝てしまいますたorz

>>751
うーすみません通信がらみのものを組むのは言語問わず初めてなので、
実際に組んでみて勉強したかったのでメモがわりにここにカキコしてます
実際にテストしてみると予想と違う結果になったりしてます
理屈より実践です(汗

Linuxについては、正直C(C++)関連についての興味もあります
今回の場合はWinで構築してゲーム鯖とweb鯖兼用の方が楽チンな予感です
しかしWinではweb鯖構築した事が無いので、ちょっと時間的に厳しいので放置orz
ノートPCにもLinuxを入れてあるのですがデスクトップ用途に使ってます
ゲーム鯖用にもう一台Winマシン導入しようかしらと思案中ですが、どうする俺orz
たまにC関連で鯖programを組む事が頭に浮かびますが、今回はHSPでやってみます
情報ありがとうございました。
0767名前は開発中のものです。2005/12/07(水) 00:43:43ID:nk7VDbdU
>>765
暗号アルゴリズムは特に何でもいいと思います。解析者に暗号・改竄チェックに何のアルゴリズム使われてたり等が漏れるのがマズイかもしれません。
MMOの為の技術は詳しくないのでですが、WPE等で簡単に通信が偽造されて、それを検出できないようじゃダメでしょうね。
通信の暗号化と改竄チェックは簡単なものでもいいのでとりあえず実装しておき、解析防止関連は軌道に乗り始める少し前から取りかかれば良いと思います。
MMOにP2Pは・・・私は知りません。作って実験しながらがんがれー。
>>766
乙です。

余談: つ[Cygwin] Linux用にC(C++)で鯖作ってもWindowsで運用も可。テストにも使えると思います。
HSPの中間コードは解析に弱い。通信部分の一部をDLLに組み込むとか。HSP本体の制約は後になって面倒かもしれません。ご注意を。
07686392005/12/07(水) 01:19:13ID:7yI4PKyb
>>767
ご提言ありがとうございます。
とりあえず現状で一度負荷テストをやってみたいと思っていたのですが、
暗号化を実装してからにした方が良さそうかなぁと思ったりしました
Cygwinについては、実は会社のPCにこっそり入れてあります(汗
UNIXも仕事で使うので、GUIでリモートログインをしたいなぁ程度の理由ですが(汗汗

現状、PCとNPCが壁フラグ無しのmapをお互い当たり判定無しで自由に動き回り、
入力の使い勝手の悪い(苦笑)全体チャットが出来る程度までしか実装出来ていないので、
後からソース全体を眺めてみると通信関連のノウハウ以外は大したことやってないんですよねorz

眠いのでなに書きたいのか自分でわからないのでとりあえず寝ます ノシ
0769名前は開発中のものです。2005/12/07(水) 19:53:27ID:YGdB+oRq
書籍「Winnyの技術」のPDFが、出版社が許可だしてwinnyで配布されてる。
P2PとMMO(C/S)は違う方式のネットワークだけど、開発手法(暗号技術、設計など)の記述は参考になると思われる。
07707512005/12/07(水) 20:53:17ID:RjlM7DZz
暗号化のご助言どもです。
正直、暗号化は初なので、なにからやろうか迷っていたところなんです。
WPEってオープンβであってます?
パケットの偽装防止はまだまだ不明な部分が多いですorz

「Winnyの技術」は本買ってたりします。
ピュアP2Pの参考になりました。あとクラスタとか。
ソースとかサンプルがすこしでものってると、さらにお得だったんですがねー。。。

私の作っているものがすれ違いなので、あれですが、ネットワークゲーム
制作って事で書かせてください。
個人的にMMOをいきなり作ることに限界を感じてます。
最初の敷居だと思う、チャット&ロビーのようなものを最初につくり
その後はP2Pで遊べるものを目指してます。
一番の目的は、クライアントにIPを意識させないこと、パッチ配布の効率化です。
補足で、大切なデータはサーバに送るようにする予定なので、どっちかというとMOに近いかな?

Cygwinは私も使ってます。便利ですよねこれ。
MinGWあたりも一時期は使ってましたが、いまはVC++に戻ってしまいました。

長文でなにもおかないのも失礼なので、既知かもしれませんがネットワークゲーム
つくるのに参考になったページを。
ttp://www.geocities.jp/ol_lc/
ttp://www.multiterm.co.jp/
07716392005/12/07(水) 21:20:27ID:7yI4PKyb
639です・・・

どっちかというと体育会系ですorz

みなさんレベルが高いので話についていけんとですorz

難しいサンプルソースとか見ても理解出来ませんorz

頭じゃなく体で覚えるタイプですorz

今後も目先の事だけ考えることにしますorz

今日は 「なんちゃって暗号化」に取り組んでみます

07726392005/12/08(木) 00:29:54ID:xQCz2cu9
暗号化は先になりそうですorz
勉強しないとorz

寝ます ノシ
07737512005/12/08(木) 22:41:27ID:Tk06wjbh
>>639
実践してる分、私なんかよりLv高いですよorz
気にせず開発がんばってください。
実は毎日の書き込みを見るのが、日課になりつつあったり。。。


なんだかんだいいながら、私が今できているのは、チャット+ロビー一歩手前ってとこですので。
いろんな本のソースをいじりながら、目標としてるサーバを作ってますorz

ちなみに、普段は仕事で鯖関連やセキュリティ(FW)とかをいじってるんで、その辺なら多少フォローできます。
困ったら遠慮なくー。
0774107 ◆a6JcKaYOUI 2005/12/08(木) 23:12:19ID:WmB8x0uc
あーだんだん数字さんが増えてゆくw
0775名前は開発中のものです。2005/12/11(日) 11:12:33ID:xHHVEIki
プログラマでもあり、チーターでもある俺から言わせてもらえば
半端な暗号化は無駄。
逆アセンブル出来ないような仕組みと、介入を禁止できるシステムじゃなきゃ
究極的には意味無いよ。
最近は、暗号化せずシステムで介入を保護するタイプもあるしね。

まぁ、この辺の話は、商用なり、大規模になるまではほっといてもいいよ。
HSPじゃ、根本的な対策は無理だし。
07766392005/12/11(日) 11:38:54ID:W3DAS+nI
風邪でダウン中ですorz
ベッドの中から携帯でカキコです
逆アセンブルまでされてしまうと無力ですね
商用のものでもチートやBOTの対策で大変みたいですし
今思考能力ゼロなので寝ます ノシ
0777107 ◆a6JcKaYOUI 2005/12/11(日) 12:33:10ID:LNXjnTj9
>>775
半端な暗号でも厨房を弾くのには十分だと思う
まあクラックプログラムが登場したら意味ないけど
凄腕はアカウント停止で対処しても問題ないと思うが...
0778名前は開発中のものです。2005/12/11(日) 14:40:59ID:ohNVp0t4
>>777
チーターの中にはツールを配布する奴もいるけどね。
マクロ系をアカウント剥奪するのは難しいぞ。疑わしきは罰せずだから。
07797752005/12/11(日) 14:51:52ID:xHHVEIki
>>777
あんまし荒れても困るからこれっきりにしとくけど、
コードを読める奴はアカウント停止なんてされない。
なぜなら、証拠は残さないから。
俺もいくつかのゲームの解析してるけど、ゲームへの介入は一切しない
から、当然banされたことも無い。

banされるのは、俺tueeeする子供だけ。
0780名前は開発中のものです。2005/12/11(日) 14:52:19ID:au6ZY7E9
チートで鯖が異常な処理するのは、バグだから潰せばいい。
チートで特に有利になる操作&情報入手ができるのは、設計の問題。

マクロで特に有利になるわけではないが、楽できるのはまぁ許容範囲じゃないかな。
むしろその程度の操作は、鞍の機能に組み込んでほしい。
0781名前は開発中のものです。2005/12/11(日) 14:57:25ID:ohNVp0t4
>>780
> むしろその程度の操作は、鞍の機能に組み込んでほしい。
初級狩場あたりで狩りまくるマクロとかでもいい?
07826392005/12/11(日) 22:58:00ID:DSWsQTiD
風邪ちょっとよくなりますた

今日やったことじゃないけど進捗状況
PC その1:Web鯖
PC その2:ゲーム鯖
PC その3:クライアント用
を用意しIP直ではなくDNSで管理・動作実験

結果:思っていたより良い(ってアバウト)

ただしやはり鯖用PCにはそれなりのスペックが必要なことがわかりました
Web鯖は非力なんですがこれにゲーム鯖を入れて立ち上げたらもうね(ry

追記 現在のゲーム鯖、Linuxなんですよ・・・ え?HSPはどうしたって?いやもちろんHSPですよ(謎


07836392005/12/11(日) 23:47:29ID:W3DAS+nI
早めに寝ます ノシ
07846392005/12/12(月) 23:58:01ID:NlLzEzCS
なんとなく公開テスト
http://himitukichi.ath.cx/client.zip
パスワード
mmoclient
です
serve errorの表示が出たら鯖落としてますので(汗
ゲーム鯖でクライアント1個立ち上げてるので多少レスポンス落ちているかもしれません
(GMって名前のキャラです。ほぼAFKです(汗))
07856392005/12/13(火) 00:08:12ID:qkFpclXv
あー時間見たらもう夜中じゃないですかorz
こんな時間じゃ誰も来ない予感orz
とりあえず風呂入ってきます
07866392005/12/13(火) 00:32:13ID:qkFpclXv
風呂入ろうとしたらお二人ログインしてくれました(;゚∀゚)=3
ありがとうありがとう(涙)
チャット使いにくいですねorz
今度までに直しておきます
鯖このままにして風呂はいってきまふ  ノシ
07876392005/12/13(火) 01:28:31ID:qkFpclXv
総勢3名の方がログインしてくださいました
この場を借りてお礼申し上げます
ゲーム鯖は落としました
また、クライアントもweb鯖から削除致しました
ご了承下さいませ

寝ます ノシ
07886392005/12/14(水) 01:22:39ID:dYxZX2uu
先日は発作的に公開したわけですが、よくよく考えてみると操作法その他、
何もご説明してませんでした
にも関わらずテストに参加して頂きまして改めて御礼申し上げます

今日は低スペックPCを鯖にして動作テストしてみました
結果・・・エラーで鯖落ち
対処法はまだです。処理速度がデータに追いつかないみたいです。
とりあえずこの問題は後回し(汗
鯖・蔵の両方をprogramするのって単純にいうと手間が2倍なわけで、
両方をデバグとかするのにはまとまった時間がないと出来ないのが難点ですorz

今後の予定

1・PC、NPC(mob)共に当り判定(キャラの重なり防止)
 これはキャラ総当りで座標で判定するか、仮想mapの配列変数で進行方向に
 なにかあるかで判定するかのどちらかにする予定です(多分仮想map)
2・壁フラグ実装
 これも1に書いた仮想mapに埋め込む予定
3・map間の移動
 これも同上

仮想mapには単純に数字を入れるのではなく文字列を入れて意味をもたせるつもりです

話の途中ですがそろそろ寝ます ノシ

07896392005/12/16(金) 00:21:33ID:+zXNsTGF
風邪なかなかなおりませんorz

とりあえずmapの壁フラグ及びNPC(mob)の重なりチェック実装しますた

今後の予定ですが、決めかねています
つまりゲームの全体的な仕様(ステータスやlevel制かスキル制か等)、
map及びmob、playerのキャラチップ、map作成、アイテム(武器、防具その他)の種類、
これを決めないことには戦闘ルーチンその他に手をつけにくいですorz

また、前回突発で公開した時には開発用PCでゲーム鯖を立ち上げたのですが、
そのままゲーム鯖にしてしまうわけにはいきません(これじゃ開発できません)
linuxでゲーム鯖にしてみたと過去に書きましたが、そのマシンはノートPCなんですが
ファンがうるさいorz しかも熱でシャットダウンしてしまうので(ぉぃ
ノートPCの下に空冷ファンunitをしいてます(これがfan4つもついている)
つまり非常にうるさいorz
07906392005/12/16(金) 00:26:36ID:+zXNsTGF
とりあえずゲーム鯖の問題は後回しにしたとしても、
いよいよ仕様その他のデータ的なものに着手しなければなりません
膨大な作業量ですorz

現在決まっている事は、

mapの大きさが最大100×100が基本単位でそれをいつくか用意し
map移動pointにおいて切替えを行う事

こんだけorz



07916392005/12/16(金) 00:36:07ID:+zXNsTGF
誰かと共同製作に移るか、時間がかかっても一人でこつこつやるか、
それも検討しなければならないかなとも思っています。
07926392005/12/16(金) 01:56:57ID:+zXNsTGF
最近完全に私がスレ乗っ取りしてしまってますな。
というか独り言スレorz
2chでのblog状態(あっはーorz)

あーもうグラフィックやめてnethackとか*bandみたくテキストにしちゃおうかな
結構好きなんですよねー
最近は某所でネット越し(telnet接続)に他の人のplayを観戦するのが日課

寝ますノシ


0793名前は開発中のものです。2005/12/16(金) 02:13:52ID:+wGpq5d3
実際に制作が進んでいく様を見るのは
ド素人の俺にとって参考になるのでがんがってくだしあ
0794名前は開発中のものです。2005/12/16(金) 06:58:58ID:7HIwwwxm
mapなり、キャラデータなり、適当に妄想仕様を垂れ流すと、
気が向いたネットの小人さんが作ってくれるかもしれませんよ。

…何も無いかも知れませんがwww
0795名前は開発中のものです。2005/12/16(金) 13:07:57ID:KXB3uXTk
>気が向いたネットの小人さんが
そんな事言っていると、Dragonforceが来ますよ?
07966392005/12/17(土) 23:56:21ID:jBhOBMQM
最近また風邪ぶり返しましたorz
web鯖のメンテ(といってもログチェックやセキュリティーアップデートですが)
やデスクトップ用途のLinuxのメンテとかしてますた

programしてないのでアレですが私のprogramの仕方についてぼそっとチラシの裏
私の場合ゲーム作成するときは二通りのやり方があります
1.先に仕様を決めてその通りにつくる
2.興味のある部分を先につくってあとから仕様を決める
今回は2です。ある程度興味のある部分については動作確認できました
1の場合は妄想してそれに向かって突き進むわけですが、もちろん実現するだけの
skillが必要・・・大昔BASICインタプリタ+アセンプラで組んでいた頃は、時間もたっぷり
あったので可能ですた。今はきびしいす(涙)
キャラも自分でドット絵作成したし音楽も自分で作曲したしさらにプロ用シンセやミキサー
なんかも買ったりして音楽サイトまでやったりとか今考えると無茶しまくってますた


07976392005/12/18(日) 00:01:41ID:WYqZGp+R
今はさすがにそんな時間ないすorz
今回は妄想というより実現可能そうな仕様を考えていこうとおもってます

1.スキル制+生産有りでまったり系
2.レベル制でダンジョン攻略メイン・レアアイテム探し等
さらに
1.PK有り
2.無し

こんな感じです。
個人的にはスキル制+生産有りでPKありが大好きですが、
以前お話したようにローグライクと言われるrpgも好きでして、
まずそれで迷ってます。
ローグライクっぽい感じにするならダンジョン探索でアイテムゲットの要素
も欲しいわけで、そうなると生産の意義が薄れそうですし、
ローグライクの場合ダンジョン内で死と隣り合わせの緊張感が、PKによって
台無しになる可能性もあるわけで・・・
07986392005/12/18(日) 00:10:30ID:WYqZGp+R
またprogramingの観点からいうとskill制の場合パラメータ調整が難しい
バランス調整もそうですが各skillのパラメータも細かく管理しなければなりません
さらにCONやDEX等のステータスも考慮しないとなるとこれはもうお手上げ
レベル制でしたら経験値テーブルで管理し各ステータスはレベル毎に振り分けor初期設定から
一切変更出来ない仕様のどちらかですみます。あとはアイテムによるブーストだけ考えれば
良さそうです。
ダンジョン探索の緊張感については、ランダムダンジョン作成ルーチンを実装し
常に新鮮な感じで遊べるようにしようかなと思ってます。
ランダムダンジョン生成については
1・ダンジョンにだれか入った段階で生成・だれもいなくなったら初期化
2・ダンジョンだけMOにしてしまってパーティー毎に生成
3・一定時間が経過すると鯖を強制リブートし初期化
あたりが考えられます
07996392005/12/18(日) 00:14:37ID:WYqZGp+R
まず大風呂敷を広げてしまってダメになってしまうよりは、
まず極小のシステムで構築し後からmapなりシステムなり
変更・追加の方がいいかなとも思います

以上の考察から消去法で考えられる比較的実現可能な方法は、

1・レベル制
2・とりあえずPK無し(PK有り地帯・アリーナ等実装も後から可能)
3・ランダムダンジョン生成は強制鯖リブートor誰もいないとき初期化

です。
08006392005/12/18(日) 00:20:12ID:WYqZGp+R
ちなみに鯖の負荷や安定等を考慮すると、一定時間で鯖リブートするのが
(勿論リブート前にアナウンス・キャラデータのセーブ実装が前提)
いいかなと思っています。これは長時間AFKキャラによる鯖負荷軽減も
あるかなと考えてます

ランダムダンジョンについては数種類用意しそれぞれに難易度設定を
したほうがいいかなと思いますが、とりあえず最初は一つだけにします。
0801639 ◆WKezKkIa.w 2005/12/18(日) 00:36:48ID:WYqZGp+R
ここまで勢いで書いてみました。
なにかに似ている・・・しょうがないかorz
0802名前は開発中のものです。2005/12/18(日) 00:37:53ID:Y+IS+WBU
ガンガレw
0803639 ◆WKezKkIa.w 2005/12/18(日) 00:38:23ID:WYqZGp+R
ここまで書いている間にデスクトップ用途のlinuxのメジャーアップデートが無事完了したので
寝ます ノシ
0804639 ◆WKezKkIa.w 2005/12/19(月) 23:15:16ID:spSKnk94
ちょっと停滞気味
理由は前述のmapとグラフィック関係です

mapチップに関してはフリーをありがたく使わせていただくとしても

m a p 作 成 自 体 が 興 味 な い

これは致命的ですorz
自分でもびっくりしますた。まさかmap作成が面倒に思うとは考えてもみませんでした
0805名前は開発中のものです。2005/12/19(月) 23:28:10ID:j9E4GIrK
RPGじゃないけど漏れは乱数で作った。
0806名前は開発中のものです。2005/12/19(月) 23:34:01ID:SeLVEA6G
639って実は結構いい歳?
0807639 ◆WKezKkIa.w 2005/12/19(月) 23:47:19ID:spSKnk94
>>806
イイトシです
昔BASICとアセンブラ使ってたので(当時小学生でしたが)

最近はprogramingとかいわないでコードを書くっていうみたいですな
0808名前は開発中のものです。2005/12/19(月) 23:48:27ID:vG/cR0LR
アイシの作者もHSPやってるらしいな
BASIC世代はHSPがお好きなようだ
0809おにぃ ◆vaRn.epHhg 2005/12/20(火) 00:19:12ID:sohrhHmE
お、マップ作成で停滞してる仲間発見!w
ネットの知識ほとんどないんで尊敬しちゃいますわぁ
がんばってください〜
0810名前は開発中のものです。2005/12/20(火) 00:32:28ID:Jbi4YJtG
なんだその「おにぃちゃん」とか「おにぃたん」とか呼びたいような名前は(*´ω`*)
0811639 ◆WKezKkIa.w 2005/12/22(木) 21:55:17ID:OIOvQaVj
年の瀬でなにかと忙しい時期になってます
今日は影響を受けたり参考になるMMOについてぼそっと。

まず企業運営ものから。

リネージュ(1のほう)
これのすごいところはフィールドマップが地続きなところです(ダンジョン除く)
つまり見かけ上zone移動無し
たぶんzone移動してるんでしょうが、それを感じさせません。mobもしつこく追いかけてきます。
多分mobもPCと一緒にさりげなくzone移動してるんではないでしょうか。スゲー
またmobは必ずPCの画面外でpopします(地面に埋まってたりするmobとかは例外)
つまり画面にいきなりmobが現れることがなく、画面の端から登場します
多分全PCの座標をもとに計算しpop地点を決めているのでしょう。スゲー
あと以前私はAirH"の32kでこれをplayしていました
32kですよ。戦争とかはNGですが普通に街にいたり狩りしたりにはなんの支障もありませんでした。
繰り返します。32kですよ。スゲー

0812639 ◆WKezKkIa.w 2005/12/22(木) 21:59:36ID:OIOvQaVj
Shadowbane
これはPCが自分の街を作ることが出来ます。
mapにPCの行った行為が反映されます。
つまり普通mapデータはクライアントで管理しているところを
サーバとクライアントでmapデータ(の一部と思われる)をやりとりしてるぽいです。スゲー
0813639 ◆WKezKkIa.w 2005/12/22(木) 22:10:55ID:OIOvQaVj
じゃ 次は個人作成ものを書こうと思いましたが省略(ぉぃ

話はかわりますがPC移動処理で多く採用されている方式はどうやら
x,y座標の移動分を送受信してるぽいですね(私は思い切り直接座標を送受信方式)
ラグった場合にそれがわかります
高度なものになると単純に移動分をやりとりしているわけではなく、
行動をそれぞれコード化してやりとりしているみたいですね
0814名前は開発中のものです。2005/12/22(木) 22:15:28ID:AYMvhlQB
>>813
そこらへんは升対策かね。
そういう事しないとすぐに移動速度変えたりとかされる
0815639 ◆WKezKkIa.w 2005/12/22(木) 22:16:37ID:OIOvQaVj
次は同期について

どうも主流は半同期タイプ
ある程度の座標のズレやラグをうまい具合にごまかしてますな
座標のズレにかんしていえば、たとえば戦闘後にmobの死体が
ちょっとズレた所にワープしたり。この程度ならplayに支障ないですものね
またラグについても、クライアント側でとりあえず要求された動作を表示させておいて
サーバとのやりとりをその裏でしているぽい
こうすればサーバに動作を送信・その結果を処理するよりもplayerには
なめらかに処理されているように感じさせることが出来る
実際長時間ラグっている場合、同じ動作をしていたりするMMOがありました
0816639 ◆WKezKkIa.w 2005/12/22(木) 22:18:22ID:OIOvQaVj
>>814
多くがその方式のためにスピードハックされるんでしょうね。と思ってます
0817639 ◆WKezKkIa.w 2005/12/22(木) 23:00:02ID:OIOvQaVj
playerにラグ等をあまり意識させないで見かけ上スムーズに動作を行い
ストレスを感じさせないようにするには、

1.行動のコード化
2.ある意味適当な同期

それプラス

3.コードの暗号化

が肝かなと思ってます

しかしめんどくさがりの私は

1.X,Y座標そのままやりとり
2.サーバで同期を管理・支配
3.暗号化メンドクサ

の状態です
0818名前は開発中のものです。2005/12/22(木) 23:22:06ID:eNcj94pX
ハックされるようになったら一人前(ぇ
0819名前は開発中のものです。2005/12/23(金) 01:27:35ID:Ogr3utIY
作ったものがアップされない事実。
昔の連中はアップしまくってすごかった。
遊べなかったが。
0820107 ◆a6JcKaYOUI 2005/12/23(金) 12:44:43ID:urLp9cVQ
>>819
まあまあ
無駄に期待させるのよりもいいのでは?
0821639 ◆WKezKkIa.w 2005/12/23(金) 20:57:52ID:5N3AS6Ld
とりあえず今夜鯖アップします。今携帯からなので詳しくはまた後でご連絡します
0822639 ◆WKezKkIa.w 2005/12/23(金) 21:45:26ID:9QIuXvdf
とりあえず鯖アップしました。
以前短時間アップした時との変更点はチャットの多少の改善のみのバージョンです。

普段メインマシンとして使っているPCの為、長期間の起動は無理なのでご理解ください。
とりあえず連休中はなるべくアップしておきます。

ダウンロード先
http://himitukichi.ath.cx/client.zip
パスワード
mmoclient
です

まずアカウントを作成してください。
PC nameには7バイトまで(日本語の場合一文字で2バイト)
パスワードもそれくらい
また記号等はNGです。
いったんクライアントが落ちますので、作成したnameとパスワードで
ログインしてください。
なお移動はカーソルキー、チャット欄は書くたびに自分で消してください(ぉぃ
当り判定はキャラの下半分です。今のとこmobはPCをすり抜けます。
mapは適当です。水色のところは水なので行けません

ファンが大小合わせて5個まわっていてうるさいのでそのうち2個コネクタ抜きますた
壊れたら私も壊れます
ちょっと気がかりなのは、どうやらプロバイダがファイル共有ソフト対策で
長時間送信をしつづけると帯域だか速度だかを縮小するようにしているようなアナウンスを
以前みた事です。これがファイル共有ソフトのみに適用なのかどうかは調べてないのでわかりません(ぉぃ
0823639 ◆WKezKkIa.w 2005/12/23(金) 21:47:02ID:9QIuXvdf
ちなみにゲームとしてはまったくなりたっていません。
100匹のmobがうごめくmapでアバターチャットが出来るだけです。
文句は不具合はこのスレにお願いいたします
0824639 ◆WKezKkIa.w 2005/12/23(金) 22:00:19ID:9QIuXvdf
アカウント鯖起動するの忘れてましたorz
0825名前は開発中のものです。2005/12/23(金) 22:02:27ID:LvWY5jrG
チャット使いやすくなってますた。
ガンガッテー

プロバイダはぷららかどこかですか?
0826639 ◆WKezKkIa.w 2005/12/23(金) 22:05:15ID:9QIuXvdf
>>825
以前来てくださった方かな?ありがとうです
そう、プララです。。
0827名前は開発中のものです。2005/12/23(金) 22:06:42ID:bJDmfxqb
MOBはいるけどPCと出会わない…
0828名前は開発中のものです。2005/12/23(金) 22:27:11ID:vlXRrMz7
ログインしたけど人イナスwww
0829639 ◆WKezKkIa.w 2005/12/23(金) 22:30:16ID:9QIuXvdf
ここ以外で宣伝してませんからね。。。
私がログインするにはゲーム鯖のPCをしようしなければならないため
パフォーマンスが落ちますorz
0830名前は開発中のものです。2005/12/23(金) 22:32:31ID:bJDmfxqb
画面解像度低くても使えるようにしてください…チャットメッセージが見えないw
0831名前は開発中のものです。2005/12/23(金) 22:33:03ID:vlXRrMz7
おまえかwww
0832名前は開発中のものです。2005/12/23(金) 22:34:14ID:vlXRrMz7
フォーカスがどっか行っちゃって発言できないwww
そこんところの修正もキボン。
0833名前は開発中のものです。2005/12/23(金) 22:34:15ID:bJDmfxqb
うほとuhoの2窓です…人居なかったからw
0834名前は開発中のものです。2005/12/23(金) 22:34:51ID:vlXRrMz7
二人かよwww
0835名前は開発中のものです。2005/12/23(金) 22:35:37ID:vlXRrMz7
発言できんからログオンしなおす
■ このスレッドは過去ログ倉庫に格納されています