找回密码
 register

QQ登录

只需一步,快速开始

查看: 3180|回复: 1

GetItemSnByDropRateOfItemTable 获取宝藏箱物品

[复制链接]

GetItemSnByDropRateOfItemTable 获取宝藏箱物品

[复制链接]
  • 打卡等级:热心大叔
  • 打卡总天数:94
  • 打卡月天数:17
  • 打卡总奖励:94
  • 最近打卡:2025-01-18 01:28:20
Waylee

主题

0

回帖

1万

积分

仙帝

积分
11931
Waylee 2020-12-3 23:48 | 显示全部楼层 |阅读模式

马上注册,查看网站隐藏内容!!

您需要 登录 才可以下载或查看,没有账号?register

×
GetItemSnByDropRateOfItemTable()

源代码位置:聚义天龙\A001原版服务端\tlbb\Public\Data\Script\obj\growpoint\gp_renwu_chengxiongdatu_baoxiang.lua

物品文件位置:聚义天龙\A001原版服务端\tlbb\Server\Config\DropRateOfItemTable.txt



  • 打卡等级:热心大叔
  • 打卡总天数:94
  • 打卡月天数:17
  • 打卡总奖励:94
  • 最近打卡:2025-01-18 01:28:20
楼主
Waylee 楼主

主题

0

回帖

1万

积分

仙帝

积分
11931
Waylee 2020-12-3 23:49 | 显示全部楼层
摘自百度:
先说一下箱子是怎么刷出来的。
首先,箱子是在副本创建的时候刷出来的。
在副本创建的时候,首先要加载地图,然后是刷出怪物、宝箱。
宝箱刷出的位置有12个,而且坐标是定死的,这个大家都知道。
游戏设定是一次刷出一个箱子,一共6次,也就是6个箱子。
箱子刷出的位置采用随机选择的方法,也就是从12个位置中任选6个。
因此,所有的箱子排列有C(12,6)种,也就是12*11*10*9*8*7/6*5*4*3*2*1=924种
特别说明的是,箱子刷出的位置跟其他任何东西都没有关系,只是随机选取924种其中的1种。
然后,就是大家最关心的箱子物品问题。
先要说明的是,箱子里的物品是在宝箱刷出的时候就已经放到里面的。开不开箱子,东西都已经在里面了。再接着,就是往里面放什么东西的问题。
首先,是一定会放进去的,无疑就是翡翠矿石。
接下来,就是再不再往里面放东西的问题了。
还是看下代码吧
if random(100) <= 80 then
local ItemSn, ItemName, bBroadCast = GetItemSnByDropRateOfItemTable()
AddItemToBox(sceneId,targetId,QUALITY_MUST_BE_CHANGE,1,ItemSn)
end 解释一下,代码中的“if”就是“如果”的意思,“random(100)”就是取一个“随机数”,这个数在0到100之间,“<=”是“小于等于”,“then”是“然后”的意思。
即是,如果这个数小于等于80,然后执行下面的代码,如果大于80,那就不再往里面放东西,这时的箱子就是大家说的“空箱子”。
所以,空箱子出现的几率是20% 。如果不是空箱子,那就执行GetItemSnByDropRateOfItemTable(),取得一个物品。
然后执行AddItemToBox()放进箱子里面。现在关键的是取物品这里,首先看一下表DropRateOfItemTable(物品掉落几率表)因为表比较长,虽然是txt格式,不过发到这里就会变形,大家看得也不清楚。所以,就选重要的讲吧!
表里面,写着每一样物品出现的几率,这里只写高级技能书的。
其中,每一种技能书出现的几率是一样的,都是47/10000=0.47%,是不是很小的几率?
不过,一共有25种技能书,所以出现技能书的几率就是25*0.47%=11.75%
另外,别忘了之前说过的空箱子的几率,所以不是空箱子出书的几率只有(1-20%)*11.75%=9.4%
这只是一个箱子出现的几率,那6个箱子呢?看上去是6*9.4%=56.4%
不过,问题似乎没这么简单。其实,无论我们开多少个箱子,任一个箱子出书的几率都是11.75% 那全开有书的几率又是多少呢?
有书分为1本、2本、3本、4本、5本、6本书,6种情况,而没书只有一种情况,就是0本书
所以计算一下没书的概率,一个箱子没书的几率是20%+80%*(1-11.75%)=90.6%
那么,6个箱子都没书的几率是90.6%^6=55.30561%,(就是90.6%的6次方)
所以,6个箱子全开有书的几率是1-55.30561%=44.69439%,约等于44.7%
总结一下,一个箱子有书的几率是9.4%,6个箱子全开有书的几率是44.7% 另外,从这里可以看出,很遗憾的是,箱子有没有书跟箱子排列是没有关系的,至少是没有直接关系的。
总之,游戏里凡是关系到几率问题的,都是通过random()这个简单的随机函数来实现的,并没有我们想的那么复杂。
还有,我想说的是,很多东西,有人宁信其有,勿信其无。就好像随机函数,也会分为真随机和伪随机。
所以,关于规律这东西,迷信一点的说法是,信则有,不信则无。
最后,祝各位友友紧紧抓住几率挖出越来越多的高级血祭!!!
您需要登录后才可以回帖 登录 | register

本版积分规则

雪舞知识库 | 浙ICP备15015590号-1 | 萌ICP备20232229号|浙公网安备33048102000118号 |天天打卡

GMT+8, 2025-1-18 19:03 , Processed in 0.131078 second(s), 7 queries , Redis On.

Powered by XueWu Licensed

Copyright © Tencent Cloud.

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