ネットワークRPGを作れるようなソフトってありますか?
探検
MMORPG
■ このスレッドは過去ログ倉庫に格納されています
1-Я-
2005/09/24(土) 16:41:08ID:SuwAeEoS2005/09/24(土) 17:10:56ID:UGCNNHQm
VS
2005/09/24(土) 17:40:26ID:xEgDYVdH
あるのか?
知らんけど
知らんけど
2005/09/24(土) 19:21:07ID:tFIprWQK
MHPみたいな名前のが無かったっけか?
2005/09/24(土) 22:15:19ID:J5oxGrnT
>>4
ない
ない
2005/09/24(土) 22:19:13ID:tFIprWQK
PHIだったw
2005/09/24(土) 22:56:27ID:J2roar/D
>>1
■ネットワークRPGメーカー2000
■発売元:アスキー
■価格:9800円
■問い合わせ先:アスキー
TEL 03-5351-8728
■動作環境:Windows 95/98/2000,MMX Pentium/200MHz以上(推奨PentiumII/300MHz以上),メモリ64MB以上(推奨128MB以上),空きHDD容量50MB以上
糸冬 了
■ネットワークRPGメーカー2000
■発売元:アスキー
■価格:9800円
■問い合わせ先:アスキー
TEL 03-5351-8728
■動作環境:Windows 95/98/2000,MMX Pentium/200MHz以上(推奨PentiumII/300MHz以上),メモリ64MB以上(推奨128MB以上),空きHDD容量50MB以上
糸冬 了
2005/09/24(土) 22:57:29ID:J2roar/D
リンク貼り忘れ
http://www.4gamer.net/review/live/nrpg.html
糸冬 了
http://www.4gamer.net/review/live/nrpg.html
糸冬 了
2005/09/24(土) 23:27:37ID:UGCNNHQm
2005/09/27(火) 22:22:38ID:fJ8kPMi+o
MMOはやっぱりサーバーを先に作った方がいいのかな?
2005/09/27(火) 22:46:38ID:/b0+bht7
1.ゲーム企画
2.素材を用意(ドット・音楽など)
3.各種サーバー
4.クライアント
この手順が良いと思いますよ〜
2.素材を用意(ドット・音楽など)
3.各種サーバー
4.クライアント
この手順が良いと思いますよ〜
2005/09/27(火) 23:20:12ID:yn+0L+IC
素材を用意する前に、
クライアントのグラフィックスエンジンが動いている必要がある。
仮素材を用意するのなら、その手順でも構わないが…
クライアントのグラフィックスエンジンが動いている必要がある。
仮素材を用意するのなら、その手順でも構わないが…
1310
2005/09/27(火) 23:47:59ID:SkI+GD38 どうも
難しそうだな〜
頑張ってみる
難しそうだな〜
頑張ってみる
1410
2005/09/28(水) 16:27:20ID:9jNPEdSe とりあえず、チャットから作った方がいいかな
2005/09/29(木) 03:06:45ID:ToR8zilx
チャットが出来なきゃ話にならんですたい
1610
2005/09/29(木) 17:46:52ID:gkIkra0I17名前は開発中のものです。
2005/09/29(木) 19:55:53ID:CAD+EvmP LinuXで
2005/09/29(木) 22:35:37ID:LE7U2HkX
#pragma comment(lib, "wsock32.lib")//Winsock Library のリンクオプション追加
#include <windows.h>
#include <winsock.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define PORT_NO 2500//ポート番号
#define MSG_SIZE 512//受信バッファサイズ
void ErrorProccess(SOCKET, char *);//エラー処理関数
int main(int argc, char * argv[]){
WORD wVerReq ;//WinSock要求Ver.
WSADATA wsadata ;//WinSockライブラリ情報
SOCKET s,sc ;//接続待ち受けソケット、通信用ソケット
struct sockaddr_in addr,addrc ;//サーバーアドレス構造体、クライアントアドレス構造体
char hello[] = "Hello!\n\"bye\"で終終了\n" ;//最初に送信する文字列
char msg[MSG_SIZE + 1];//文字列送受信バッファ
int ret ;//返値
#include <windows.h>
#include <winsock.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define PORT_NO 2500//ポート番号
#define MSG_SIZE 512//受信バッファサイズ
void ErrorProccess(SOCKET, char *);//エラー処理関数
int main(int argc, char * argv[]){
WORD wVerReq ;//WinSock要求Ver.
WSADATA wsadata ;//WinSockライブラリ情報
SOCKET s,sc ;//接続待ち受けソケット、通信用ソケット
struct sockaddr_in addr,addrc ;//サーバーアドレス構造体、クライアントアドレス構造体
char hello[] = "Hello!\n\"bye\"で終終了\n" ;//最初に送信する文字列
char msg[MSG_SIZE + 1];//文字列送受信バッファ
int ret ;//返値
2005/09/29(木) 22:36:55ID:LE7U2HkX
wVerReq = MAKEWORD(1,1);//WinSockライブラリの要求Ver.1.1
if(WSAStartup(wVerReq, &wsadata) != 0){printf("ライブラリ初期化失敗\n");return 1;}
s = socket(PF_INET, SOCK_STREAM, IPPROTO_TCP);
if(s == INVALID_SOCKET) ErrorProccess(0, "socket()");
memset(&addr, 0, sizeof(addr));
addr.sin_family = AF_INET ;
addr.sin_addr.s_addr = htonl(INADDR_ANY); // 全てのインターフェイスを許可
addr.sin_port = htons(PORT_NO);
ret = bind(s, (struct sockaddr *)&addr, sizeof(addr));
if(ret == SOCKET_ERROR) ErrorProccess(s, "bind()");
ret = listen(s, SOMAXCONN);
if(ret == SOCKET_ERROR) ErrorProccess(s, "listen()");
ret = sizeof(addrc);
sc = accept(s, (struct sockaddr *) & addrc, &ret);
if(sc == INVALID_SOCKET) ErrorProccess(s, "accept()");
closesocket(s);
printf("Cliant Address : %s\n", inet_ntoa(addrc.sin_addr));
printf("Cliant Port : %hu\n\n", ntohs(addrc.sin_port));
ret = send(sc, hello, (int)strlen(hello), 0);
if(ret == SOCKET_ERROR) ErrorProccess(sc, "send()");
if(WSAStartup(wVerReq, &wsadata) != 0){printf("ライブラリ初期化失敗\n");return 1;}
s = socket(PF_INET, SOCK_STREAM, IPPROTO_TCP);
if(s == INVALID_SOCKET) ErrorProccess(0, "socket()");
memset(&addr, 0, sizeof(addr));
addr.sin_family = AF_INET ;
addr.sin_addr.s_addr = htonl(INADDR_ANY); // 全てのインターフェイスを許可
addr.sin_port = htons(PORT_NO);
ret = bind(s, (struct sockaddr *)&addr, sizeof(addr));
if(ret == SOCKET_ERROR) ErrorProccess(s, "bind()");
ret = listen(s, SOMAXCONN);
if(ret == SOCKET_ERROR) ErrorProccess(s, "listen()");
ret = sizeof(addrc);
sc = accept(s, (struct sockaddr *) & addrc, &ret);
if(sc == INVALID_SOCKET) ErrorProccess(s, "accept()");
closesocket(s);
printf("Cliant Address : %s\n", inet_ntoa(addrc.sin_addr));
printf("Cliant Port : %hu\n\n", ntohs(addrc.sin_port));
ret = send(sc, hello, (int)strlen(hello), 0);
if(ret == SOCKET_ERROR) ErrorProccess(sc, "send()");
2005/09/29(木) 22:37:56ID:LE7U2HkX
do{
ret = recv(sc, msg, MSG_SIZE, 0);
if(ret == SOCKET_ERROR) ErrorProccess(sc, "recv()");
msg[ret] = '\0';
printf("受信 : %s\n", msg);
ret = send(sc, msg, (int)strlen(msg), 0);
if(ret == SOCKET_ERROR) ErrorProccess(sc, "send()");
printf("送信 : %s\n", msg);
}while(strcmp(msg, "bye"));
closesocket(sc);
WSACleanup();//ソケットライブラリの終了処理
return 0;
}
ret = recv(sc, msg, MSG_SIZE, 0);
if(ret == SOCKET_ERROR) ErrorProccess(sc, "recv()");
msg[ret] = '\0';
printf("受信 : %s\n", msg);
ret = send(sc, msg, (int)strlen(msg), 0);
if(ret == SOCKET_ERROR) ErrorProccess(sc, "send()");
printf("送信 : %s\n", msg);
}while(strcmp(msg, "bye"));
closesocket(sc);
WSACleanup();//ソケットライブラリの終了処理
return 0;
}
2005/09/29(木) 22:38:30ID:LE7U2HkX
//エラー処理関数
void ErrorProccess(SOCKET s, char * api_name){
printf("Error Area = %s , Error Code = %d\n",api_name, WSAGetLastError());
if(s != 0){closesocket(sock);s = 0;}
WSACleanup(); //ソケットライブラリの終了処理
exit(1);
}
void ErrorProccess(SOCKET s, char * api_name){
printf("Error Area = %s , Error Code = %d\n",api_name, WSAGetLastError());
if(s != 0){closesocket(sock);s = 0;}
WSACleanup(); //ソケットライブラリの終了処理
exit(1);
}
2005/09/29(木) 22:40:07ID:LE7U2HkX
UDPの基本は、暇があったらうpローダでうpする
23名前は開発中のものです。
2005/09/30(金) 18:05:54ID:SLqzHEJo Windows? UDP?
藻舞ら、いつの時代の人間じゃ?
Linuxを使え
藻舞ら、いつの時代の人間じゃ?
Linuxを使え
2410 ◆pF5cbfQoT2
2005/09/30(金) 18:51:13ID:6eJVvR2p25名前は開発中のものです。
2005/10/01(土) 13:53:50ID:GUmXustT UDPを使う利点がよくわからん。
少なくともUDPオンリーではゲームはつくれないよ
どうしても厳密な同期が必要なプロトコルがでてくるんだし。ログイン処理とかね
まずUDPが高速であるとされるファクターの最たるものがパケットロストしたときの再送の
リクエストが行われないという事だろうが、ゲームの場合はパケットが未到達であれば
ゲームはとまってしまうか情報不足の状態で補完していくことになるだろう、
これはTCPが再送のリクエストをしていてパケットがまだ届かないのと何も変わらない
状態じゃないのか。ユーザーに見える部分で何も変化がないわけでこれじゃ意味がないだろ。
加えて、パケットそのものの大きさが小さいということもあるだろうが、ゲームはものすごく小さな
パケットを連続的にではなく比較的穏やかな頻度で投げつけるので動画ストリームとかと比べて
大した差異にはならないと思うのだ
たまにパケットが届かなかったり、たまに順番が狂ってたりする場合を考慮して処理を書いたり、
または書き忘れて低頻度で起こるこういう現象に起因するバグに半日悩んだりするよりは、
普通にTCPを使うことを俺はおすすめする。
反論をたのむ
少なくともUDPオンリーではゲームはつくれないよ
どうしても厳密な同期が必要なプロトコルがでてくるんだし。ログイン処理とかね
まずUDPが高速であるとされるファクターの最たるものがパケットロストしたときの再送の
リクエストが行われないという事だろうが、ゲームの場合はパケットが未到達であれば
ゲームはとまってしまうか情報不足の状態で補完していくことになるだろう、
これはTCPが再送のリクエストをしていてパケットがまだ届かないのと何も変わらない
状態じゃないのか。ユーザーに見える部分で何も変化がないわけでこれじゃ意味がないだろ。
加えて、パケットそのものの大きさが小さいということもあるだろうが、ゲームはものすごく小さな
パケットを連続的にではなく比較的穏やかな頻度で投げつけるので動画ストリームとかと比べて
大した差異にはならないと思うのだ
たまにパケットが届かなかったり、たまに順番が狂ってたりする場合を考慮して処理を書いたり、
または書き忘れて低頻度で起こるこういう現象に起因するバグに半日悩んだりするよりは、
普通にTCPを使うことを俺はおすすめする。
反論をたのむ
26名前は開発中のものです。
2005/10/01(土) 14:16:34ID:GUmXustT 最初につくるのは送受信用に定義した特別な構造体をシリアライズして送受信する通信レイヤだな
ストリーミングすることは未来一切あり得ないからこれでいいんだ。
正直チャットをつくれとかそういうのはどーでもいい。
ちゃんとデータが行き来するのが確かめられれば必要なし。
ストリーミングすることは未来一切あり得ないからこれでいいんだ。
正直チャットをつくれとかそういうのはどーでもいい。
ちゃんとデータが行き来するのが確かめられれば必要なし。
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【工作員】「X」のアカウント所在地公開機能が暴いた世論操作の実態 MAGA支持著名アカウントの多くが米国外から運営 日本にも波及 ★2 [ごまカンパチ★]
- 【・(ェ)・】「くまちゃんがいた」散歩中の2歳園児が発見 クリ林に1頭のクマ…保育士「ワンちゃんだね…」と声かけて移動 [Ailuropoda melanoleuca★]
- 【芸能】人気ゲーム実況者が一定期間の活動休止を発表「彼女以外の女性複数人と関係を持った」 [湛然★]
- 【大阪】日本一高い観覧車が落雷で緊急停止 約20人乗客が閉じ込められ9時間にわたり救助活動 [七波羅探題★]
- ラピダス、第2工場建設でも見えぬ顧客 技術開発も難題山積 [蚤の市★]
- 【高市関税キター!!】個人輸入・少額輸入品への税優遇見直しへ…1万円以下の輸入品にも消費税を課す方針★2 [1ゲットロボ★]
- 【悲報】小野田紀美「私のドレスは日本の正礼装なんだが?ダサいと言ってるやつは日本文化を否定し国内ブランドを貶したいのか?」 [802034645]
- たぬかなはん、ちょっとクズすぎなんじゃね? [267550838]
- 高市ジャパン、核融合開発に1千億円の超大規模投資!これで日本の未来は安泰だね [668970678]
- 【悲報】『たぬかな』ファンのホビット、絶望「こうして36歳年収650万円身長155cmの底辺独身男性が残りましたとさ…どうすればいいんだよ [257926174]
- ウクライナ、アメリカ提示の和平案に大筋合意! [487081228]
- 要するに日本が中国に喧嘩売るのって俺が山口組に喧嘩売りに行くようなもんでしょ
