嗯嗯,看着各个BBS中诛仙版本磋商最多的关于炼器的话题,真的禁不住要说几句了。 最终,我可以很负责任的告诉你,那些一天说着应用啥啥啥办法后自身炼器赢了率怎样怎样高的,可以上都是没有按照的。 下面我用几句很简单的圭臬代码来模拟一下货物炼器行为时刻游戏圭臬中的处置进程。 /// /// 精练货物(为了简单起见,我们假设不需要纳入炼器符,以及纳入什么收场/吉星的赖子山庄南京麻将状况) /// /// 待简明的货物 /// true: 赢了 / false: 失败 public static bool Refine(Item targetItem) { System.Random rand = new Random(); // 为了便当、简单起见,我当前假设游戏中炼器的级别可以分为以下0-16级(就是游戏中货物名字反面的+N) int[] levels = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16 }; // 这里由系统形成一个0至16随机数(其实圭臬中所形成的随机数都属于伪随机,不可能抵达实在世界中的形成的随机成绩 // 只是依旧充实"随机"地形成一个指定范围内的数值啦,嘿嘿。 // int flag = levels[rand.Next(0, 16)]; bool result = false; // targetItem是用来描述你从炼器师那打开炼器的窗口后拖到框中的货物 // 我们假设这个货物有一个名叫RefineLevel(即炼器级数,如+1时RefineLevel就为1,依此类推) // 当前我们拿刚才"随机"形成的数值跟这个要进行炼器的货物的当前炼器级数进行对比 // 我们假设当掏出的数据比货物的炼器级数大时就炼器赢了 // 请注意!!!我这里只是假设用该种办法来实现炼器历程,实在游戏中的设定必定远比这杂乱的多 // 只是,我笃信不管怎样杂乱的处置,个中最最主题决意赢了率的题目必定涉及到随机数! if (flag > targetItem.RefineLevel) { // 这里体现赢了的状况,我们让货物的炼器等第提高甲第(自然,实在游戏中还需要从新设置攻打/防等等数据!) targetItem.RefineLevel++; result = true; } else { // 这里体现失败的状况,我们让货物的炼器等第降甲第或是直接将货物减少 targetItem.RefineLevel--; // targetItem.Delete(); result = false; } return result; } /// /// 精练货物(处置附加怪异货物及纳入的炼器符,以及纳入什么收场/吉星等等协助货物的赖子山庄南京麻将状况) /// /// 待简明的货物 /// 用于抬高赢了率的特别货物 /// true: 赢了 / false: 波折 public static bool Refine(Item targetItem, params Item[] stuffItem) { return false; } 好了,不管你是否看懂了上面的假如的少少代码,我想告诉大师的是不管何如纷乱的处置,此中最最重心决意赢了率的题目一定涉及到随机数!而一旦涉及随机数的场面,就不会是你说什么2次或N次波折后再一次就会赢了等等这么粗略的题目。 因此,不要肓目信任所谓的炼器技巧,炼器是否赢了绝大无数状况下是看你的命运运限了,固然,我们不成否认在少数屡次抛硬币的历程中,当你连续抛出同一壁的状况下,下一次抛出另一壁的机率看起来要大些。:) |