设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 457|回复: 1
打印 上一主题 下一主题

[有事请教] 战斗中,敌人行为的概率是怎么算的?

[复制链接]

Lv3.寻梦者

梦石
0
星屑
4647
在线时间
281 小时
注册时间
2013-10-13
帖子
852
跳转到指定楼层
1
发表于 2026-3-6 23:27:43 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x


    # 最大概率值作为 3 合计计算(0 除外)
    ratings_total = 0
    for action in available_actions
      #ratings_total=2,5
      if action.rating > rating_max - 3
        ratings_total += action.rating - (rating_max - 3)
      end
    end

    # 概率合计不为 0 的情况下
    if ratings_total > 0
      # 生成随机数
      value = rand(ratings_total)
      # 设置对应生成随机数的当前行动
      for action in available_actions
        if action.rating > rating_max - 3

          if value < action.rating - (rating_max - 3)
            self.current_action.kind = action.kind  
            self.current_action.basic = action.basic
            self.current_action.skill_id = action.skill_id
            self.current_action.decide_random_target_for_enemy
            return
          else
            value -= action.rating - (rating_max - 3)
          end
        end
      end
    end
请问:敌人行为的概率是怎么算的?

Lv4.逐梦者

素材区好人

梦石
3
星屑
11154
在线时间
4172 小时
注册时间
2011-7-21
帖子
2528

极短27参与极短26参与极短25参与极短24参与极短23参与极短22参与极短21参与

2
发表于 2026-3-22 05:04:32 | 只看该作者
举个例子:
假设敌人可用行动的评分分别是:10、9、8、7
最高评分:10
符合权重:10-7=3
总权重:3+2+1=6 
各行动的选中概率:
​评分10的行动:3/6=50%
​评分9的行动:2/6≈33.3%
​评分8的行动:1/6≈16.7%
​评分7及以下的行动:0%
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2026-6-4 09:27

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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