游戏开发论坛

 找回密码
 立即注册
搜索
查看: 5870|回复: 11

[原创] 超级大型网络游戏制作模式,网络与单机结合

[复制链接]

4

主题

5

帖子

26

积分

注册会员

Rank: 2

积分
26
发表于 2015-8-5 13:11:49 | 显示全部楼层 |阅读模式
    什么叫超级大型网络游戏?就是玩家数量达到百万,千万,甚至上亿。
    作为策划人员,可能很容易想到这样的场景,但对程序员来说,有这么多人也吃不下啊,服务器会卡死。
    当然,我们也有一定的应对方案,那就是分区。
    分而治之是解决问题的重要方法。
    然而解决问题的同时,分区方式也使得网络游戏没有进展。
    一个区的容纳能力始终在几万的规模上徘徊。
    因为可以分区解决,我为什么要制作超大容量的服务器呢?那不是自己找麻烦吗?
    当然,也不能说大家不求上进,实在是服务器的性能有限啊,只能容纳那么多,大家的数据都要实时处理,CPU转不过来。
    情有可原啊。
    那么,真得就没有办法了吗?
    其实很多人都在想办法,包括奋斗在程序前沿的程序员们。
    并行处理?负载均衡?分布式服务器集群?
    每一个想法都需要人们去努力验证。
    在旧的模式可行的时候,创新意味着付出代价。
    如果没有资金的投入,可能少有人愿意研究技术。
    毕竟,有几万,几十万人玩已经能赚到钱了,需要考虑更多吗,前进的动力在哪里?
    所以任何一个可行模式被接受都是一个长期的过程,是逐渐成熟的,我们要有心理准备。
    真正能迅速改变现状的,一定是简单可行,而又具有颠覆意义的。
    我们知道,单机游戏有一个特点,这个特点是如此的明显然而却少有人注意。
    这个特点就是单机游戏不怕人多,只要你复制了客户端,那么多少人同时玩都可以。
    就像重力时刻都在起作用,但很晚才被人发现一样。
    这个特点也是如此。
    这是网络游戏梦寐以求,但却无法达到的一种境界。
    因为网络游戏数据都要通过服务器传输,是中心模式的,而单机游戏则是无中心模式的。
    那么,可不可以将两者结合,兼具二者的优点呢?
    为此我做了长期的技术尝试,现在分享给大家。
    要将网络游戏和单机游戏结合,首先要面对的一个问题就是数据安全问题。
    我们知道安全是第一重要的,没有安全,网络游戏就无法实现。
    而单机游戏的数据是存在本机的,就像裸露在外一样,人们可以轻易的修改。
    所以必须要对数据进行保护,可喜的是这一点是可行的,只是人们以前没有重视罢了。
    使用md5对核心数据进行加密,正常改动则重新加密,如果使用数据则进行验证,如果数据加密结果不一致,则说明数据被非法更改,可以限制游戏进程,数据归零等措施,使玩家放弃更改数据的念头。
    在数据安全的基础上,就可以考虑物质传输了。
    技术细节如下:
    给每个程序一个大的随机数字,作为身份标示,A程序向B程序传递物质时,计算名称+属性+对方标示数字的总体MD5码,同时消除该物质,而B程序得到这个MD5码和数据[手动输入],进行验证,一致则生成该物品,名称属性相同。同时标示数字加1.
    这种设计可以使得单机客户端在没有服务器的条件下通过手动输入得到物质的传输而且没有被复制的可能,保证了物质的唯一性。
    好了,技术方面只是简单介绍一下,大家现在知道我们可以在单机间传输物品,这是我们后续的基础。
    然后呢?就是网络游戏和单机游戏的结合了。
    这里我们称常规的和服务器交互的客户端为网络客户端,而不与服务器发生交互的为单机客户端。
    原有的游戏运行模式是:
    服务器---网络客户端
    而新的模式是:
    服务器---网络客户端----单机客户端。
    而且每一级都是一对多的模式。
    由于单机游戏有了数据保护,不能被修改,变得可靠了,所以可以分担一部分服务器的功能而不担心玩家作弊。
    又由于单机间可以传递物质,可以和网络客户端发生物品交换,所以单机客户端可以不依赖服务器而与网络客户端共存。
    这样一来,单机客户端和网络客户端成为整个游戏体系的两大部分。
    可以容纳所有的人一起参与,而且不消耗服务器资源。
    比如我们举一个简单的例子,炼药。
    游戏中总要用到药品,红药蓝药。制药又需要采集草药,这是一个产业。
    原本每一个环节都是需要服务器参与的,占用了不小的资源。
    但是如果放在单机客户端呢?
    我们说数据安全之后,单机客户端是可信赖的,所以完全可以放心的交给它。
    在单机客户端上生成草药,采集,炼制,升级。
    得到丹药之后,发给网络客户端,被服务器识别,然后产生与其他人的交互。
    前面说了,物质传输可行,所以丹药炼制之后是可以发给网络客户端使用的。
    注意了,单机客户端则是跟服务器脱离的,甚至是跟网络客户端脱离的,只有在物质传输时两者才又交互。
    这意味着单机客户端可以被无数人同时玩的特性被保留下来了。
    炼药成为一个行业,游离于服务器之外。
    而且,这种传输不是固定在某个单机客户端和某个网络客户端之间,而是拥有所有的可能。
    也就是说你在一个单机客户端上炼药的成果可以供给给所有的网络客户端。
    你的丹药可以卖给所有玩家,而不是只供你自己。
    这将是多么庞大的一个产业链,而且没有消耗服务器的一点资源。
    还有炼器,制衣,甚至打怪,都可以交给单机客户端,出现多个单机客户端并存的局面。
    生活玩家被剥离出来了,通过单机客户端游戏,产出药品等物品,而核心玩家通过网络客户端交互,PK,战争等等,主导物品的消耗。
    就像打仗,前方的战士进行消耗战,后方的战士就行资源后勤补给。
    前方可能几万几十万人,后方则可以是所有人。
    当然,受限于供求关系,后方和前方会有一个比例关系,但是所有人能参与绝非虚言。
    甚至单机客户端之间也可以发生交易,比如药草和药草的交换。这使得游戏内容更加丰富,这种简单的交互不通过服务器而完成,大大的减轻了服务器的压力,使得服务器专注于玩家的实时战斗交互,可以容纳更多的人。
    这就是我对网络游戏发展前景的构想。
    在技术细节解决之后,发展是自然而然的。
    注意,单机客户端可以是很小的,因为承担的只是部分功能,可能是几M级的,非常轻巧,不需要下载网络客户端即可参与游戏。生成的数据和加密字符串可以供网络客户端使用,也就是你可以和网络玩家进行物质交互。
    整体的图景是:服务器的大型攻城战如火如荼,几十万玩家参与,丹药弹药齐飞,后方单机客户端上更多人在采集,制作,将药品武器源源不断的输送给网络客户端各玩家。
    单机客户端玩家不但不花钱,而且可以赚钱,但他们为游戏的繁荣作出了贡献,增加了游戏的人气和宣传。
    这是超越现有网络游戏的游戏组织模式。
    有心于此的策划,程序员都请帮助转载传播。
    未来的游戏会更宏大,更有趣。


作者:付坤
QQ:270182827
邮箱:fukun551@163.com   

102

主题

2443

帖子

7639

积分

论坛元老

Rank: 8Rank: 8

积分
7639
发表于 2015-8-5 13:23:19 | 显示全部楼层
没有什么意义,就算再好的东西也能破解,哪怕你加几百万校验也不能解决,例如单机,为什么要单机,通常是机器不好,机器好的人一般有钱,那里还会单机?你知道什么叫虚拟机(模拟器)么?多开游戏都可以,现在的游戏做这些没意义的。

4

主题

5

帖子

26

积分

注册会员

Rank: 2

积分
26
 楼主| 发表于 2015-8-5 13:37:36 | 显示全部楼层
herosone 发表于 2015-8-5 13:23
没有什么意义,就算再好的东西也能破解,哪怕你加几百万校验也不能解决,例如单机,为什么要单机,通常是机 ...

你错了,玩单机的机器才好.至于你说能破解,我认为你不懂MD5

102

主题

2443

帖子

7639

积分

论坛元老

Rank: 8Rank: 8

积分
7639
发表于 2015-8-5 14:16:11 | 显示全部楼层
fukunnihao 发表于 2015-8-5 13:37
你错了,玩单机的机器才好.至于你说能破解,我认为你不懂MD5

机器好不上网我也是醉了,就算MD5又如何,你电脑肯定有个地方要进行运算的,再不行就多开。

1

主题

19

帖子

83

积分

注册会员

Rank: 2

积分
83
发表于 2015-8-5 16:05:49 | 显示全部楼层
技术方面问题我不太懂,能不能破解不知道,问下这个技术的用途在哪?单机+网游结合,然后生活玩家与重度玩家分离?那你考虑过游戏的本质和盈利没?游戏不像现实那样资源有限,所有的一切都是一堆数据代码,当所有人都能单机+网游时,游戏资源无限膨胀,到最后就会变成挂机游戏一样无聊。对于大多数网游,需要的不是巨量的玩家,而是更好的体验和忠实的玩家;单机也不是需要无限资源,需要良好的玩法和代入感等等。

102

主题

2443

帖子

7639

积分

论坛元老

Rank: 8Rank: 8

积分
7639
发表于 2015-8-5 17:50:10 | 显示全部楼层
游戏产出资源倒不是不能解决(虽然市面上大部分网游都没有解决),但是这有什么作用呢?玩家要回报不如开挖矿机挖比特币。

1

主题

187

帖子

926

积分

高级会员

Rank: 4

积分
926
发表于 2015-8-5 18:54:50 | 显示全部楼层
比特币理论的延伸……

0

主题

16

帖子

128

积分

注册会员

Rank: 2

积分
128
发表于 2015-8-6 10:39:21 | 显示全部楼层
服务器---网络客户端----单机客户端??
听着更像是
服务器---网络客户端----挂机外挂.

单机端毫无乐趣,只是产出制造?然后最后变成比谁挂的单机端多,网游端资源就有优势?

2

主题

91

帖子

723

积分

高级会员

Rank: 4

积分
723
QQ
发表于 2015-8-6 10:44:22 | 显示全部楼层
关键数据md5加密,就能防止挂?简直好笑,lz你肯定不懂程序。程序内部数据关系是一级一级调用的。除非你的数据不再本地计算,否则你的任何算法都会被破解篡改。我可以不知道你md5码怎么算的但是我能把他篡改成不用md5,而且还不会被程序察觉。如果不懂你可以去了解下钩子函数,驱动过滤,反汇编,dll注入

而且说实话,你说的这游戏我觉得并没有什么创意,无非就是把对战人数变多了。

0

主题

141

帖子

872

积分

高级会员

Rank: 4

积分
872
QQ
发表于 2015-8-6 14:40:07 | 显示全部楼层
楼主又卖萌了?为何你老强推所谓的单机概念?

炼药放在客户端怎么防外挂?怎么防无限刷?
难道所有玩家都是那样乖乖地玩这个所谓单机嚒?

请你自己先去看看暗黑3是怎么做吧~
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-8-29 23:28

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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