首先被你sell的npc的强度baoziexp=对方wx+对方dh,同样,你的强度,myexp=你的wx+你的dh。
然后用这两个数值计算出一个比例ratio来。
ratio=(baoziexp/2)*100/myexp
ratio这个数值如果大于150则等于150(也就是包子强度是你的三倍为封顶。)但是如果这个数值小于100(包子强度不足你的两倍),ratio=ratio*ratio/100
这是为了防止高手杀低的id做包子,所以如果包子强度和你一样,带入上边公式一,ratio=50,但是继续带入公式二ratio=25了,也就是包子强度不足你的两倍时奖励会锐减。
所以最好的情况也就是保持包子强度在你的2-3倍之间,基本上你杀对方能得dh的npc的强度是大于你的3倍的,所以用这种npc做包子最合适。
接着还有一个包子价值的基数计算。
过低的我就不列举了,强度100k以上base_reward=500,强度500k以上base_reward=800,强度1m以上base_reward=1000(这个是最高的了,而且水蛭精就已经达到这个档次了)
最后计算你这个包子能够得到的dh。
reward=base_reward*ratio/100+1
reward就是你能得到的daoxing,1000daoxing是一年。
比如你吃水蛭精,那么base_reward=1000,假设你的强度是水蛭精的一半,这样ratio就是100。
那么reward=1000*100/100+1=1001。这应该是一年零三个时辰的dh。
别高兴太早,这里还要重新计算一下。
如果reward>1000,则reward=800+random(200),也就是每个包子得到的dh是封顶为一年的,超过一年反而要变少,上边这种情况你只能得到两百多天的dh。
我吃包子的时候主要是吃小童,一个包子差不多不到一年的dh,弱一点的npc想打晕有点麻烦,如果不怕麻烦想尽量多的得dh,那就就算好reward,别让它上千,如果能保持999,那算你牛。