原地址:http://blog.csdn.net/akara/article/details/6165421

[原创]使用行为树(Behavior Tree)实现网游奖励掉落系统
by AKara 2011-01-24 @ http://blog.csdn.net/akara @ akarachen(at)gmail.com @weibo.com/akaras

奖励/掉落系统,涵盖物品,经验,金钱等网游中可直接给予玩家的元素。
一个简单,直观,可扩展的掉落系统对网游中的产出控制起非常重要的作用。

奖励/掉落系统 的设计归结起来有如下要点:
  * 概率控制
  * 物品控制
  * 数量控制
  * 嵌套控制
  只要这几点的控制抽象和组织得好,掉落系统自然好用。
  
  实现的方案很多,或简洁高效,或复杂强大...但每次几乎都要按照新游戏
特色需求重新定制策划案和程序基础模块;是否存在一种可以作为其底层
逻辑描述的结构供策划和程序人员长期使用,而兼具简洁,直观,可扩展?

又一次试试 行为树(Behavior Tree) 吧。

---------------------------------------------------------------------

又先贴本文相关的图
  
  
  词意解释:
  Root:根节点
  WRSel:加权随机选择节点
  Seq:序列节点
  Cond:条件节点
  Act:行为节点
  R:概率权值公式
  N:数量公式
  e:游戏实时环境参数集

而具体的行为树(Behavior Tree)概念,可参考我之前写的文章:
  <<使用行为树(Behavior Tree)实现游戏AI>> by AKara  http://blog.csdn.net/akara/archive/2010/12/19/6084786.aspx

上图中描述了一次具体的奖励掉落规则,而且也可以看到里面很简单地加入
规则的嵌套的支持(参考"R(e)Root"子树)。

---------------------------------------------------------------------

使用行为树(Behavior Tree)来实现奖励掉落系统有如下优点:
  > 基于游戏实时环境参数集作概率控制
  > 基于游戏实时环境参数集作数量控制
  > 支持简单的子规则树调用
  > 直观的树结构
  > 既定环境下的节点概率演算测试
  > 易扩展的节点可见性控制
  > 功能节点规则成熟
  > ...

---------------------------------------------------------------------

行为树(Behavior Tree)不只用于 AI条目的管理 或 奖励掉落系统的组织,
稍加留意或可发现还能应用于很多方面。

更重要的是:行为树(Behavior Tree)使设计者和实现者用同种规范来达成目标

使用行为树(Behavior Tree)实现网游奖励掉落系统的更多相关文章

  1. 使用行为树(Behavior Tree)实现游戏AI

    ——————————————————————— 谈到游戏AI,很明显智能体拥有的知识条目越多,便显得更智能,但维护庞大数量的知识条目是个噩梦:使用有限状态机(FSM),分层有限状态机(HFSM),决策 ...

  2. 行为树(Behavior Tree)实践(1)– 基本概念

    原文地址:http://www.360doc.com/content/15/0107/11/15099545_438831036.shtml 自从开博以来,每天都会关心一下博客的访问情况,看到一些朋友 ...

  3. (转)行为树(Behavior Tree)

    转自:http://www.cnblogs.com/konlil/archive/2011/04/23/2025954.html 如果要让游戏里的角色或者NPC能执行预设的AI逻辑,最简单的用IF.. ...

  4. 《Note --- Unreal 4 --- behavior tree》

    Web: https://docs.unrealengine.com/latest/INT/Engine/AI/BehaviorTrees/index.html Test project: D:\En ...

  5. (转)火溶CEO王伟峰:Unity3D手机网游开发

    今天看到这篇文章,感觉很不错,尤其是那句“Unity3D的坑我觉得最严重的坑就是没有懂3D的程序员,把Unity当成Office用”. 转自http://blog.csdn.net/wwwang891 ...

  6. 后缀树(suffix tree)

    参考: 从前缀树谈到后缀树 后缀树 Suffix Tree-后缀树 字典树(trie树).后缀树 一.前缀树 简述:又名单词查找树,tries树,一种多路树形结构,常用来操作字符串(但不限于字符串), ...

  7. 手机网游开发指南 - 需要多NB的技术

    Agent`K 似乎在三天打鱼N天晒网.只能呵呵了,懒散的家伙. 移动互联网越来越火,其中的网络游戏更是火,熊熊大火. 作为攻城师的你,作为小投资者的你,作为满脑子创意想要实现的你,肯定在四处打听:手 ...

  8. 网游中的网络编程系列1:UDP vs. TCP

    原文:UDP vs. TCP,作者是Glenn Fiedler,专注于游戏网络编程相关工作多年. 目录 网游中的网络编程系列1:UDP vs. TCP 网游中的网络编程2:发送和接收数据包 网游中的网 ...

  9. Behavior Tree

    http://www.craft.ai/blog/bt-101-behavior-trees-grammar-basics/ https://github.com/libgdx/gdx-ai/wiki ...

随机推荐

  1. STM32F4_TIM输入波形捕获(脉冲频率)

    Ⅰ.概述 本文在前面文章“STM32基本的计数原理”的基础上进行拓展,讲述关于“定时器输入捕获”的功能,和上一篇文章“定时器比较输出”区别还是挺大的.在引脚上刚好相反:一个输入.一个输出. 本文只使用 ...

  2. 第六章 类型(class)和成员基础

    1. 概述 本章讲述如何在一个类型中定义不同种类的成员. 2. 名词解释 3. 主要内容 3.1 类型的各种成员 在一个类型中,可以定义0个或多个以下种类的成员: ① 常量:常量就是指出数据值恒定不变 ...

  3. angularjs2 学习笔记(六) Form

    Angular 2 Form表单 在angular2 form表单中我们需要了解表单数据绑定.数据验证.数据提交等内容,在下面的示例中并没有实际提交到后台,这部分内容在今后webapi中加以练习. 表 ...

  4. 《Prism 5.0源码走读》Service Locator Pattern

    在Prism Bootstrapper里面取实例的时候使用 ServiceLocator模式,使用的是CommonServiceLocator库 (http://commonservicelocato ...

  5. automapper的简单用法

    AutoMapper对象转换方面(Object-Object Mapping)对象映射工具,实现对象和对象之间的转化.主要应用在项目的dto,model,entity或viewmodel之间转换,其实 ...

  6. poj 2046 Gap

    题目连接 http://poj.org/problem?id=2046 Gap Description Let's play a card game called Gap. You have 28 c ...

  7. Android HTTP session && cookie

    HTTP协议与状态保持HTTP协议本身是无状态的,这与HTTP协议本来的目的是相符的,客户端只需要简单的向服务器请求下载某些文件,无论是客户端还是服务器都没有必要纪录彼此过去的行为,每一次请求之间都是 ...

  8. Sharepoint 2010 RBS 的安装和配置

    基本上按照微软官方的配置方法配置就行了. 给下地址:微软官方     涂大神 找RBS的安装文件也是个问题,微软的链接好像失效了.我使用的是RBS下载.这里也有. 我的环境是数据库两台故障群集转移,微 ...

  9. algorithm之改变序列算法--待解决

    简述:改变序列算法,参见http://www.cplusplus.com/reference/algorithm/?kw=algorithm 待解决问题:iterator_traits.std::mo ...

  10. ScrollView图片分页显示-简单

    用到的控件: 1>UIScrollView:宽度和图片的宽度一样,因为分页的代码就一句 // 设置分页,这个分页的原理实际上是按照ScrollView的宽进行分页的,这里的图片的宽由于和Scro ...