游戏客户端中的常用模块

     一直是自已写游戏,也不会有人教你应该怎么做事情更合理,也不会有人给你分享他的经验。
    作了差不多有三年手机游戏了,今天在这里总结一下所有游戏的共同点。以后只要是有需要客户端建框架的,先不管游戏内容是什么,先按下边的套路来建框架,框架建好了之后,再来写游戏内容,这样我们就可以少走很多弯路,可以把最多的精力放在游戏玩法上。
     结果了一下,大体上,客户端有这几个模块是每一个游戏都必须有的。我会把这些已经完成的模块建一个游戏模板。方便我以后自已使用。
     1.网络,
网络分为短连接的http和常连接的socket.一般的手机游戏都使用http,http服务器对于玩家与服务器交互不多的情况下用户承载量比较大,每台服务器最多时可以有5万用户。但socket就不同了,差不多就是几千用户吧。一般使用socket,服务器推送消息就不用担心了,常连接,服务器可以直接推送数据给客户端。但如果是http推送数据可能使用的是第三方推送服务器。
      2.本地配制数据
不论是单机游戏,还是网络游戏,游戏中都会有很多和游戏相关的配制数据。这些配制数据是写死在系统中的,主要存储的内容是游戏中的逻辑数据,或者一些配置信息。这些信息在一般的游戏中都会存在。所以,这一块也是一个客户端必须的模块,可以使用json,xml,或者google的protobuf。据说现在protobuf越来越注行了,而且这个保存的是二进制文件,没有proto配置文件是没有办法解析protobuf数据的,这也让本地数据比xml和json更安全了。
      3.内存用户数据
每一个游戏都有一些动态的数据是时时刻刻都存在于内容之中的,玩家操作,或者游戏事情都会改变这些内存中的数据,而这些游戏是动态的,会因为游戏的运行而发生改变,游戏中的其他各个模块都会与之发生或多或少的联系。这就是游戏玩家数据。这一部分数据初始化时一般来自本地配制数据,游戏完全启动之后会通过网络或者本地保存的用户数据初始化为当前玩家的游戏数据。这一部分数据比较重要,决定了游戏中各个玩家的不同。所以一般都会存在服务器的数据库中。
      4.UI界面
这一部分大多是一些零散的控件,用户会通过这些界面来改变内存中的游戏数据,或者调用网络模块将数据与其他玩家交互,或者将数据存入网络数据库中。这一整块主要功能就是给用户展示数据,或者让用户输入数据,或者记用户操作数据。
      5.游戏玩法逻辑
        游戏玩法逻辑模块,这一部分主要体现的是游戏中的用户数据逻辑关系,当用户操作游戏内存数据时,游戏中的数据改变方式在这里展现。
  • 3
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值