游戏开发论坛

 找回密码
 立即注册
搜索
查看: 1929|回复: 5

请教各位一个客户端搜索线上游戏的问题

[复制链接]

7

主题

12

帖子

16

积分

新手上路

Rank: 1

积分
16
发表于 2005-10-27 14:31:00 | 显示全部楼层 |阅读模式
我是这么写的(这段代码是抽出来的,本人对网络不精,如代码有可笑或错误之处请指出,谢谢
int segment;
char subNet[20];
SOCKET socket;
#define NETCMD_LOOKUP  "L"
#define NETCMD_SIZE       sizeof("L")

for (int i=1; i<255; i++) //doSearch.
{
        ZeroMemory(subNet, 20);
        sprintf(subNet, "192.168.%d.%d", segment, i);
       
                if (ConnectToListener(socket, subNet, port) != NET_FAILED)
        {
                int a = WSAGetLastError();
                if (NetSend(socket, NETCMD_LOOKUP, NETCMD_SIZE) < 0)
                        continue;                       
        }
} // end  for

调试过程中我发现了ConnectToListener函数只有第一次循环时才是有效的(是不是一个socket只能connect一次?) 现在我只想到一个很苯的办法,就是没有connect上就关闭socket, 然后再新开一个socket继续搜索*_*,有更好的办法吗? T_T [em7]

0

主题

172

帖子

176

积分

注册会员

Rank: 2

积分
176
发表于 2005-10-27 14:54:00 | 显示全部楼层

Re:请教各位一个客户端搜索线上游戏的问题

好奇怪的用法。
为啥不用一个ListSvr(作为核心服务,IP和Port固定),每个服务器开启起来都会连上去Reg一下,关闭服务就UnReg。

而一般客户端也可以从那里得到所有已经开启的服务器的IP和Port。

7

主题

12

帖子

16

积分

新手上路

Rank: 1

积分
16
 楼主| 发表于 2005-10-27 15:06:00 | 显示全部楼层

Re: Re:请教各位一个客户端搜索线上游戏的问题

6spring: Re:请教各位一个客户端搜索线上游戏的问题

好奇怪的用法。
为啥不用一个ListSvr(作为核心服务,IP和Port固定),每个服务器开启起来都会连上去Reg一...


我可能还没有明白, 你的意思是不是每个服务器开启后自动给其他玩家发送游戏信息?而不是让客户端去搜索?

7

主题

12

帖子

16

积分

新手上路

Rank: 1

积分
16
 楼主| 发表于 2005-10-27 15:24:00 | 显示全部楼层

Re: Re:请教各位一个客户端搜索线上游戏的问题

6spring: Re:请教各位一个客户端搜索线上游戏的问题

好奇怪的用法。
为啥不用一个ListSvr(作为核心服务,IP和Port固定),每个服务器开启起来都会连上去Reg一...


可是这样还是有问题,比如有两个服务器已经在listsvr注册了,我在connect第一个服务器时出错,这是connect第二个服务器,可是connect函数还是无效的.

0

主题

172

帖子

176

积分

注册会员

Rank: 2

积分
176
发表于 2005-10-27 21:20:00 | 显示全部楼层

Re:请教各位一个客户端搜索线上游戏的问题

……
ListSvr上保存有现有激活态服务器列表,客户端连上取一下不就知道有哪些服务器了么……


为了分流,也可以把这个列表动态备份在每一个游戏服务器上(通过ListSvr统一管理),客户端通过现在已经连上的服务器取得服务器列表。(如果都没有连任何服务器,那直接找ListSvr好了,它一般IP,端口都固定的)


好比是直接要了份最新的菜单,在最新菜单里找需要的。而不是去店里一个个的问“XX菜有没有”……


至于Socket连接,还是再回头看看Socket的相关知识吧 ^__^

7

主题

12

帖子

16

积分

新手上路

Rank: 1

积分
16
 楼主| 发表于 2005-10-28 11:34:00 | 显示全部楼层

Re:请教各位一个客户端搜索线上游戏的问题

我的头好疼哪*_*
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2026-1-22 10:01

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表