游戏开发论坛

 找回密码
 立即注册
搜索
123
返回列表 发新帖
楼主: 流星的刹那

[讨论] 【交流】物品掉落的解决方案

[复制链接]

12

主题

856

帖子

884

积分

高级会员

Rank: 4

积分
884
发表于 2007-12-4 17:43:00 | 显示全部楼层

Re: Re:【交流】物品掉落的解决方案

_ElemeNt_: Re:【交流】物品掉落的解决方案

模块化进行掉落类型判定,捆绑式掉落物品设置

7楼说到了一点意思,不过还没有达到拓展性的设计架构.

用...

怪物的掉落列表和物品按照什么方式掉落应该是2个概念,但是可以做到一个系统里.
举个例子,假设这个游戏怪物掉落物品会直接进入玩家口袋,而不是掉在地上,也不需要玩家去搜索,就象刀剑OL那样,那么其中一个小怪:野猪的掉落列表应该是
编号       物品名字                掉落条件        掉落几率
掉落池1  {  野猪肉100%          无}        100%
掉落池2  {  耐力的野猪剑20%
            力量的野猪剑20%
            敏捷的野猪剑20%
            智力的野猪剑20%
            黑暗的野猪剑10%        无}        2%
掉落池3  {  普通野猪皮90%
            优质野猪皮10% 身上有拨皮小刀}        100%
掉落池4  {  野猪头             杀死野猪任务}        100%
上面这个怪落列表说明的内容是
这只小怪
一定会掉落一个野猪肉,
有2%的几率会掉落1把武器,这个武器有20%几率是加耐力的剑,有20%几率是加力量的剑,有20%几率是加敏捷的剑,有20%几率是加敏捷的剑,还有更小的几率10%是什么属性都加的黑暗剑.
如果玩家身上有拨皮小刀,那么一定会掉落1个野猪皮,这个野猪皮有90%是普通品质的,有10%是优质的.如果没刀则不掉;
如果玩家接受了杀死野猪这个任务,那么一定会掉落1个野猪头,如果没接则不掉.
完毕.

war3就是按这个实现的.wow也应该是这套规则.不同的是war3将物品掉落池直接做进了怪物编辑器模块里,而把触发条件做进事件触发器模块里.而wow应该是写进了同一套系统.

8

主题

144

帖子

161

积分

注册会员

Rank: 2

积分
161
QQ
发表于 2007-12-4 18:44:00 | 显示全部楼层

Re:【交流】物品掉落的解决方案

LS你现在说的规则是不是在我说的框架之内.
这样的:  
类型一:  普通掉落
    掉落池1  {  野猪肉100%          无} 100%
    掉落池2  {  耐力的野猪剑20%
            力量的野猪剑20%
            敏捷的野猪剑20%
            智力的野猪剑20%
            黑暗的野猪剑10% 无} 2%

类型二:  任务掉落
           掉落池1  {  野猪头      杀死野猪任务} 100%         
类型三:  特殊掉落
          掉落池3  {  普通野猪皮90%
            优质野猪皮10% 身上有拨皮小刀} 100%   
一个怪物的掉落,你可以设定他有多个类型的掉落方式,随时可以增减.控制和二次设计上比是不是要方便多

例外这样是不是能够模块化处理 ?? 是不是可以减少很多的重复性的设计

0

主题

193

帖子

199

积分

注册会员

Rank: 2

积分
199
发表于 2007-12-5 10:52:00 | 显示全部楼层

Re:【交流】物品掉落的解决方案

昨天回了LZ的帖子,不过后来开会去了,一直没有再次回复,以致看贴的兄弟们颇有微词。在这里回复一下,大概说一下WOW里面一些掉落的实现。一家之言,有错误的地方还请明白者不吝赐教。

怪物本身的掉落可以是很简单的,只需要少量几个针对怪物特点的东西就可以了,比如狗会掉狗牙狗皮什么的,甚至这些都不是绑定在具体怪物身上的,而是与怪物类型绑定,比如狗类,什么狗、狼等等,都会出这些东西,而人形怪通常会出些布料什么的。也就是说每个怪物是没有自己的具体掉落绑定的。然后这些掉落的东西还会按照等级划分一定的档次,与怪物等级对应,比如1~10的狗只会掉“破碎的狗牙”,而51~60的狗会掉“完美的狗牙”等等。
另外有少量的东西可能是和怪物具体绑定的,也就是说某些东西一定要打某种怪才会出,然后是某些东西可能是跟区域绑定的,也就是说这些东西一定要打某个区域的怪才会出。比如附魔十字军的配方,只有一种叫做血色缚法者的怪才出,比如烹饪变异风蛇的配方,只有贫瘠之地的怪物才出。

然后就是一个全局的掉落表了,按照物品类型分,比如有X几率掉落垃圾、Y几率掉落普通白装、Z几率掉落绿装、M几率掉落蓝装、N几率掉落紫装,此外还有一定几率掉落各种材料。这个掉落表和具体怪物没关系,和怪物类型也没关系,全世界每一只怪物死亡(除BOSS以外)都有可能掉落这个表里面的任何东西。绿装和蓝装还另外对应一张前缀表,在有随机附加属性的绿装和蓝装在系统中产生的时候,从前缀表当中随机抽取一个,附加在相应的装备上。

此外金钱掉落也是按照怪物等级,通过一定的算法产生的,也是在每个怪物死亡时进行计算,当然BOSS也除外。

怪物死亡时候,先判断绑定在怪物身上或者怪物对应区域的东西,是否会掉落,然后根据怪物类型,判断绑定在该类型上的东西,是否会掉落。这两者是独立的。
然后是全局掉落的判断,这个是一系列的流程,先是材料和垃圾,然后是白装、绿装、蓝装、紫装,每次都是在前一项没有通过的情况下,才会对后一项继续进行判断,当然几率是需要看情况定的了。并且即便某一项通过了掉落检测,其物品本身还会有自己的掉率,也就是说即使判断会掉落某个东西,实际上也可能掉不出来。还有一点,就是对于材料的掉落,其一次性掉落的数量还会在一定范围内随机。

对于BOSS,其掉落表是独立的,掉落判断流程也是独立的,这种东西我想就不用细说了吧。
对于非BOSS的怪物,其掉落分为类型绑定、区域绑定、全局掉落,对应的掉落表有类型掉落表、区域掉落表、全局掉落表。这三种掉落分别独立判断。


不过这种掉落的判断,带来的运算量可能会比较大,国内普遍的游戏服务器架构,可能不好承担,所以如大家所见,通常游戏中所有的怪物掉落,都被绑定在了具体的怪物身上,这样的结果就是单个怪物的掉落非常有限,掉落的算法设计局限也比较大,扩展性不够高。

补充:忘记说了一点,还有怪物对于任务物品的掉落,这个按照我的理解,应该是有一张任务物品表,通过任务脚本来指定某个任务需要什么物品,从什么怪物身上掉落,也不是绑定在怪物身上的。

4

主题

109

帖子

113

积分

注册会员

Rank: 2

积分
113
发表于 2008-12-23 12:23:00 | 显示全部楼层

Re:【交流】物品掉落的解决方案

顶啊。。。

1

主题

265

帖子

276

积分

中级会员

Rank: 3Rank: 3

积分
276
发表于 2008-12-23 12:59:00 | 显示全部楼层

Re:【交流】物品掉落的解决方案

鄙视挖坟行为,楼上是挖坟极品,一挖就挖好几个,冒昧问一句,你祖上是土耗子吗?

4

主题

109

帖子

113

积分

注册会员

Rank: 2

积分
113
发表于 2008-12-23 13:08:00 | 显示全部楼层

Re:【交流】物品掉落的解决方案

楼上的误会了。
我顶帖是为了更好的看帖
因为帖子是搜索出来的哈
搜索出来的帖要一个个点才能看到回帖内容
这是顶后的地址:
http://bbs.gameres.com/showthread.asp?threadid=100658
这是搜索出来的:
http://bbs.gameres.com/showthread.asp?postid=594019
显然搜索出来的不好看到全部的帖子内容啊
抱歉了!!!

14

主题

2184

帖子

2819

积分

金牌会员

Rank: 6Rank: 6

积分
2819
发表于 2008-12-23 14:08:00 | 显示全部楼层

Re:【交流】物品掉落的解决方案

WOW怎么做的我不知道,不过可以直接设计个规则达到同样效果
首先做两种掉落列表,一个是通用掉落表,另一个是按ID对号入座的怪物掉落表

掉落表格式如下:
物品ID  物品等级  掉落数量  掉落率

当一个怪物被创建或死亡(取决于游戏的流程)时,首先根据怪物自身的掉落列表生成掉落物品。如人形生物掉钱掉布,野兽掉毛皮骨肉等。之后取出怪物的等级,在通用掉落表里寻找掉落等级与怪物等级匹配(具体区间可自行设置,WOW的规则是低于怪物5级以内的物品)的物品,再根据掉率生成临时掉落表。如果有必要还可以在怪物属性里加上世界掉落的掉率修正,比如精英怪2倍掉率之类。




……………………操,才发现原来是坟
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-6-8 16:18

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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