17173首页 - 免费新游 - 火爆论坛 - 游戏博客 - 游戏播客 - 百科问答 - 网游排行榜 - 网游期待榜
| 通行证 注册
三国小贴士:[按F5查看下一条] 
17173三国群英传OL > > 正文
不存在小兵隐性成长系统,用技术说话
2009-03-20           【 加入收藏 / 文章投稿 / 截图上传 / 发表评论
作者:萱媛剑仙

部分玩家一致认为,兵的阵型所处位置、死亡次数、加不加状态等都会对小兵的成长有一定影响,并且涉及到攻击、体魄等方面。

个人认为,这种情况是不可能的。

拿编程语言来讲 现在还没有能达到这个目的的编程语言。
而且也没有游戏用服务器或者家用电脑负担得起这种模式。
因为常量在编程语言中很好解决 比如经验值、技能点,都可以用IF语句来解决。
玩家角色升级等等都有固定的公式,工作量很小。
但是变量就比较麻烦了 需要庞大的数据库来进行支撑,达到LZ所说的那种智能化的要求,是很难的。
这样说吧,比如一个怪打玩家,掉多少血,可以写一个假定语句,根据你的防御、等级等因素执行,当时就能循环完毕,释放占用的内存。
但是如果一个怪打玩家,对玩家升级后的属性加成有影响的话,这个假定语句就不能循环完毕,要储存到你的内存中或者服务器里,直到你升级时候进行统一加成换算。这就好说了,你升一级需要打多少怪?1万只?1千万只?
那就需要储存多少个IF语句,一直占用系统资源,直到你要升级时进行计算,然后再释放占用内存。
这样的结果是很可怕的,给一个角色弄一台服务器都会很卡。

有些人觉得,可以是常量啊,比如小兵每打一次怪得到的经验值都可以换算成常量的,那么也可能存在攻击经验、体魄经验、防御经验等等,作为常量来计算。

但是小兵每攻击一次 如果都要考虑阵型中所处位置啊、受到的攻击力啊、受到的伤害啊、得到的经验啊、跑动的位置啊等等这些因素。就编程系统来说,只能等到小兵升级改变属性时统一进行结算,不是当时就能结算。
因为一次怪物的攻击对小兵的影响,不可能当时就改变小兵的属性,不能当时就改变小兵的血量、攻击、防御、属性点加成,只能把这个由公式计算出的变量储存起来,等到你的小兵杀几万只怪升级后统一加成计算,所有这些数据都要储存到服务器里。这样一个小兵要储存的变量相当于一个玩家角色数据的几万倍,一个服务器有多少小兵?几万只?还是几十万只呢?换算一下,一个服务器有一千个玩家角色,其中由五百个带兵玩家,小兵的变量数据存储量就等于五千万个或者五亿个玩家角色的数据量,这个数据库太庞大了。

小兵如果升级只靠经验 就好说的多 因为每次打怪 所得经验可以直接换算成常量,直接储存在服务器里面,等达到临界值之后,升级,我们看到的就是这样。
但是那些繁杂的攻击、防御、体魄等等经验公式,如何换算成常量呢?储存在何处呢?如果说直接作为隐形常量,放到对应属性整数后的小数点后面,那么加状态的时候,很明显能引起属性点的变化,但是没有。
所以只能作为临时变量储存,根本不是配合一个相映公式就能解决的问题,需要庞大的数据库和占用大量的系统资源。
再者,我们都知道,常量对应变量越少,关联公式就越少,计算任务就越少。按照你的结论,如果把那些影响条件都算上的话,至少需要几十个个关联公式,链接十几个子数据库。这是程序员最不愿意看到的。

而服务器要拿出99%以上的系统资源去进行每时每刻的小兵成长公式的换算。
国战时候为什么会卡呢?
是因为有大量玩家互相攻击 不单是因为玩家数量
有时候看到服务器是绿色的 说明玩家少 但仍有些卡
系统要判定伤害结果,执行平时不执行伤害计算语句,尤其是双方人多的时候最为明显,执行越多的假定语句,就越占用资源,就越卡。

站到游戏开发商的角度去想,这个小兵成长系统有什么用呢?
站在游戏开发商的角度去想,他为什么放着简单、占用资源和数据库少的成长公式不去用,非要去做一个隐形的、复杂繁琐的、占用大量数据库和系统资源的成长公式?
他图什么?图买更贵的服务器?买更贵的带宽?提高游戏的硬件要求?让游戏更卡?流失更多的游戏玩家?
除非他脑子进水了。

PS:刚刚做了试验 8个一级的小兵 4个死了十多次,4个一次没死
升到4级 没死的并不比全比死过的攻击都高
如果真的存在楼主的成长系统
这种情况根本不可能出现。
铁定要出现4个没死的攻击比4个死过的高的情况
你别说弄出那么复杂的成长公式,到最后升级加点还有一定的随机性

关键字:

相关链接

http://so.17173.com/jingyan/bing.shtml

游戏截图
用户: 匿名
史上最强的拼音输入法 下载>>>
评论

我要发布Sogou推广服务

热点标签:
新闻 标题 栏目 文章 图片 链接
热点标签:
新闻 标题 栏目 文章 图片 链接
被过滤广告