基本信息
源码名称:Socket简易双人游戏大厅初级设计(网络象棋为例)
源码大小:4.70M
文件格式:.rar
开发语言:C#
更新时间:2020-05-25
   友情提示:(无需注册或充值,赞助后即可获取资源下载链接)

     嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300

本次赞助数额为: 1 元 
   源码介绍
主要参考大厅部分的设计。象棋游戏部分可网络对战旁观,没啥参考意义。
界面没做,只是简单用了几个组件,只是为了说明问题。
由于代码写的不满意,以后还要返工,就没写文档了,
自行代码里看注释,主要就是带Globa的文件。
如重新写,需引用System.Runtime.Serialization。
代码Game开头的文件为大厅,CHESS开头的为游戏部分。
CrossThreadCall.cs为跨线程文件,Game_Control.cs为双缓存组件
websocket-sharp-master文件夹为websocket源码,
可在https://github.com/sta/websocket-sharp获取最新版

1、使用:
首先,运行Game_Server文件夹Game_Server.EXE,点击开始服务,
ip地址可按你的网络地址自行填写,服务端、客户端填写一致就可以了。

客户端,运行Game_Client文件夹的Game_Client.EXE,
用户名1000至1029,密码:123456

2、规则:
可选择红或蓝或旁观,
房间内没有红或蓝,则不能旁观,
如对局者点击退出,则该房间内全部人员退出房间(提示忘写了,自己加上去)。

选择红或蓝进入房间后,首先等待对方加入(有提示显示),
如果房间凑齐2名对局者,则等待双点击“开始”(有提示显示),
双方都点击开始后,进行游戏(每个用户点击均有提示显示),
用户对战分为对战和旁观推送不同消息。

客户端:每有用户房间变化,在左侧显示每个房间人数、全部用户的状态,
右侧房间显示每个房间的变化情况。

3、其他
数据包为
public class Package
    {
        [DataMember]
        public string Socket;
        [DataMember]
        public string Name;
        [DataMember]
        public string Pasword;
        [DataMember]
        public string Id;
        [DataMember]
        public int Room;
        [DataMember]
        public Pieces_Type Wield;
        [DataMember]
        public State_Type State;
        [DataMember]
        public string UserSerializer;
        [DataMember]
        public string RoomSerializer;
        [DataMember]
        public Login_State LoginState;
        [DataMember]
        public Room_State RoomState;
        [DataMember]
        public string Take;

        // 对局相关
        [DataMember]
        public bool Active;
        [DataMember]
        public string PiecesSerializer;
        [DataMember]
        public int Index;
    }
序列化为json,加密传输,密钥在StringEncrypt.cs文件,
如修改,服务端、客户端密钥需改为一致。

代码看登录、房间相关就可以了,对局相关可忽略。
大厅设计没有想象中的简单,总写不好,想法是大厅可以挂接其他双人游戏

加Q,常交流:3532927017。