首先是代码
<configs>
<append xpath=”/lootcontainers” >
<!– 鸡窝 –>
<lootcontainer name=”chickenbin” id=”194″ size=”2,1″ count=”2″ sound_open=”UseActions/open_chest” sound_close=”UseActions/close_chest” destroy_on_close=”true” loot_quality_template=”qualPlus1Template”>
<item name=”foodEgg” count=”13,15″/><!– 鸡蛋产量13-15个 –>
<item name=”resourceFeather” count=”12,14″/><!– 羽毛产量12-14个 –>
</lootcontainer>
</append>
</configs>
以上面这个鸡窝mod里的为例(就那个loot.xml文件),如何实现两个东西每个都保证有刷,也就是说100%有两种东西(物品名称后面的count是一个范围随机。容器后面那个count=”2″,我结合测试,应该是刷2次东西的意思,然后这两次随机分摊到2个物品上,所以不能确保是两种各刷一个,这就导致了经常出现刷的2次都刷成同一种东西的情况)加prob实际也没用(无论是两个东西都设还是只一个设0.5都可能直接空,一个东西都没)
loot.xml一开始就有,
<lootprobtemplate name="guaranteed">
<loot level="1,999999" prob="1"/>
</lootprobtemplate>
全等级百分百获取。
以鸟巢 Bird_Nest 掉落为例
他分了三个组,第一个是只有羽毛的,第二个是蛋和羽毛都有的,第三个是包含上述两种情况。
你可以给鸡窝建个掉落组,只取第二种情况,分别给蛋和羽毛设置掉落数数量范围,然后在最后loot_prob_template="XXX"/>这里都设置成guaranteed,也就是蛋和羽毛都百分百掉落,数量在你设置的范围内波动。
根据提供的代码和描述,您希望实现一个功能,即在鸡窝(chickenbin)的lootcontainer中,确保两种物品都会出现,并且每种物品的数量是一个范围随机。
目前的代码中,count属性设置了lootcontainer中物品刷出的次数为2次,但无法保证每次刷出的是不同的物品。另外,您尝试使用prob属性来调整概率,但并没有达到预期效果。
要实现您的需求,您可以尝试以下方式:
使用weight属性:在每个item标签中添加weight属性,用于设置物品的权重。例如:
<item name="foodEgg" count="13,15" weight="1" />
<item name="resourceFeather" count="12,14" weight="1" />
这样设置后,两种物品的权重相同,可以确保它们出现的概率相等。
使用prob属性:在每个item标签中添加prob属性,用于设置物品出现的概率。例如:
<item name="foodEgg" count="13,15" prob="0.5" />
<item name="resourceFeather" count="12,14" prob="0.5" />
这样设置后,两种物品的概率相同。
注意:无论使用weight还是prob属性,都不能完全保证两种物品都会出现,并且每次刷出的是不同的物品。这是因为刷物品的过程是随机的,只能通过增加权重或概率来提高出现的可能性。
希望以上解释对您有所帮助。如果还有其他问题,请随时提问。
ai生成的