游戏开发论坛

 找回密码
 立即注册
搜索
查看: 4492|回复: 6

[讨论] 基于优先级淘汰的NPC智能对话

[复制链接]

49

主题

1388

帖子

1432

积分

金牌会员

Rank: 6Rank: 6

积分
1432
发表于 2006-6-7 21:05:00 | 显示全部楼层 |阅读模式


不太确认是否帖出过、、、、、、、今天搜了下,没有发现,应该没有帖过把,只是在群里共享过[em7]

以前根据群里的讨论,发现一个需求写的一个文档,帖出让大家PP ^_^

摘要:通过优先级淘汰,让玩家觉得在他关注的事情可以有针对性的反馈,从而低消耗地“欺骗”到玩家觉得NPC有智能

sf_2006672158.doc

57 KB, 下载次数:

7

主题

438

帖子

438

积分

中级会员

Rank: 3Rank: 3

积分
438
发表于 2006-6-7 22:15:00 | 显示全部楼层

Re:基于优先级淘汰的NPC智能对话

呵呵,这其实就是所谓非线性的情节发展。当然,只是单纯的对话非线性而已。
国内的MMO很少愿意花费精力在这个上面,原因是大部分玩家从来不看对话。

44

主题

325

帖子

412

积分

中级会员

Rank: 3Rank: 3

积分
412
QQ
发表于 2006-6-8 10:24:00 | 显示全部楼层

Re:基于优先级淘汰的NPC智能对话

有些东西可能还需要进一步考虑,我一直比较注意的是文档中的数组的字段分配部分

1、NPC指的就是Monster么?包括其他的NPC不?(NPC、DynamicNPC、TerrainNPC)

2、如果一只怪给两个以上的玩家打,当然其记录的值是不同的,该说哪句话呢?这点或者我想对话仅仅在客户端判断,在客户端表现比较好,

3、优先级的考虑,愚认为还是不够周全,对于一个优先级系统如果仅仅有高优先级的增加冲掉低优先级的,而没有随着时间推移本身的优先级也下降,这样最终会造成问题的——新的优先级项为了占一个席位总要高于某个值,然而当目前的都是这个优先级的时候,下一个新来的要更高,结果最终变得全部都是Max优先级,谁也冲不掉;另外,优先级的实现又是一个成本和效益的关系

4、还是优先级的问题,10个元素的数组,每个32位,也就是说为USER表增加10个32位的字段,首先一个是资源的开销问题,10个32位的字段对于USER表来说是个不小的开销;其次是安全性和稳定性的问题,每次打怪要追加优先级、优先级排序、冲去优先级,这本来就是一个Select排序、Delete、Insert的开销,另外对USER表如此多字段的频繁范围,愚认为也稍有不妥

还有一些细节问题,先讨论上面这四点问题咯,看到这个优先级也挺有兴趣的,以前玩不少游戏就见过会说话的怪物,然而只是根据本身的状况——比如说是血量——来说不同的对话而已

49

主题

1388

帖子

1432

积分

金牌会员

Rank: 6Rank: 6

积分
1432
 楼主| 发表于 2006-6-8 15:44:00 | 显示全部楼层

Re:基于优先级淘汰的NPC智能对话

说明下,只是为了有趣,不牵扯金流和玩家利益的东西,一般在客户端实现对话 和优先表的处理,只是在玩家登陆和退出的时候导入和保存优先表到服务器

如果是要实现比如说,一群人在铁匠那里,你过去了,铁匠对你说:hi,XX,又来了呀。让玩家觉得可以让其他人羡慕,这个要考虑广播的话,是另外一个问题

在那个结构下,也是可以实现,在优先级设定某个位,表示要广播

优先级的考虑、、、、、高优先级的增加冲掉低优先级 是指在原本表中的高冲掉低,比如是10个元素的表,那有新的数据插入,那么原来的10个中最低的要出去,还有优先级高的,尽量设计成容易被触发掉

7

主题

21

帖子

27

积分

注册会员

Rank: 2

积分
27
发表于 2006-6-8 19:43:00 | 显示全部楼层

Re:基于优先级淘汰的NPC智能对话

不错,楼上的给我的感触颇多

18

主题

445

帖子

455

积分

中级会员

Rank: 3Rank: 3

积分
455
发表于 2006-6-9 18:44:00 | 显示全部楼层

Re:基于优先级淘汰的NPC智能对话

hehe~风同学还是蛮有些想法的
不过好多重要的规则都是暂略,实在是无法估计其可行性
但就本身来说,建立这个优先列表的性质,可以考虑仇恨列表的某些规则
实际上,怪物AI做得出色的游戏,是以仇恨列表来做底层规则,
你与这个所不同的是,对于每个仇恨参数,加入了不同的对话

个人建议把 战斗前 和战斗中的 战斗结束(如果有的话)分开处理~

49

主题

1388

帖子

1432

积分

金牌会员

Rank: 6Rank: 6

积分
1432
 楼主| 发表于 2006-6-9 20:52:00 | 显示全部楼层

Re: Re:基于优先级淘汰的NPC智能对话

丹青: Re:基于优先级淘汰的NPC智能对话

hehe~风同学还是蛮有些想法的
不过好多重要的规则都是暂略,实在是无法估计其可行性
但就本身来说,建立这个...

[em10] 所谓重要的规则暂略不是我藏私、、、、而是目前以我可以掌握的,无法确定下来。

要确定规则,最好可以对一款运营中的游戏的玩家行为进行统计分析,统计玩家通常间隔多少时间会见同一个NPC,比如前面提到的铁匠;统计玩家挑战高难度的怪物失败后,多久后会再去打等等,还有上面的数据和其他数据(比如等级)有没有关系、、、、、、、

有了上面的数据后,再来确定规则,这样应该就可以达到这个系统想要达到的效果
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-7-6 11:21

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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