战役♬ 漆黑芝麻
不和智障说话
关注数: 2 粉丝数: 79 发帖数: 5,868 关注贴吧数: 16
战区玩法改造建议 作为经历了第一次战区的玩家,第二次战区给我的感受在设计上是有进步的,至少不需要掐点了,奖励多了一些,爬塔关卡种类也多了。 ①时间,建议改为不加时间限制。之前要掐点,现在虽然不用掐但是也是限时2小时内打boss,我觉得对于一个日结算的异步对抗的玩法来说限时是毫无必要的,纯属恶心人,尤其是在5-7这种饭点大家都很忙。时间上分开还能缓解服务器压力不容易炸。 ②大贝奖励次数改到一次,尝试次数依然是3次,取三次的最高分计算奖励。限制尝试次数我觉得是合理的,这算是一种减负,毕竟大家都不能无限秃,是公平的。要是不限制尝试次数我觉得会很肝,但是现在打3结算3的设计相当于0容错,玩家体验不好。 ③生存关,建议取消怪物数量限制,现在太看脸了,肝疼啊。其他关卡我觉得还好,难归难终究是角色选择、练度和手法的问题,唯独生存的条件数值设计是真的有问题。 ④战区buff,建议由玩家各自自选。今天04夜莺换了buff(连发攻速 换 生命神佑)有的人说好,有的人说不好,对我来说得分差不多但是的确是变难打了,具体体现在同阵容伤害砍三分之一,坦克换成输出生存压力比之前的buff大多了。得分最终是低了200的平均分。 ⑤奖励建议改为积分制,让玩家缺啥换啥,各种资源可以限量兑换但是自由度对游戏体验很重要。 ⑥增加类似独幕剧场的职业buff的机制,拿材料(如钻石,非泊)或积分(如采纳第五条就相当于牺牲奖励)换,至少让玩了一些时间还在成长的玩家看得到地狱的门口吧,现在的难度设计很打击一些认真玩的6 70级玩家的积极性。 ⑦迫害虎爷实在好玩能不能让活骸零的血少一点啊我还想迫害活骸零但是血也太厚了。
程序猿玩放置不知道第几弹,模拟一千万玩家玩大富翁扔骰子 之前模拟过七星酒馆任务、感恩节火鸡任务还有个啥我忘了。。。。嗯差不多一个意思,省去繁琐的计算,用计算机暴力模拟得出白嫖什么东西的概率,就酱。这次模拟一千万个玩家,按白嫖的78个骰子计算。 规则:有幸运骰子后能用幸运骰子白嫖步数的都白嫖。资源工坊不统计,只统计星星。最后一步剩下一个幸运骰子按+5星星算。 塔罗牌事件我只遇到过9个,或许有遗漏? 这次还是用Java写的,本来想用Python练练不过发现自己Python还是不够熟练,先用Java写出来再慢慢琢磨复刻吧。 根据前几波的经验下面大量发文字会被度娘抽楼,所以。。。大概还得申诉一次吧 复制过来的没有缩进,会有点难看,还好不是Python,Python要是没缩进代码就废了,这个没缩进复制一下还是能跑的。。 代码在这: import java.util.Date public class 放置大富翁{ //塔罗牌统计:①下次资源翻倍②双倍骰子③随机工坊++④下个骰子倒退 //⑤回到起点⑥吞掉下次站立位置的资源(路过星星还是会给)⑦下个位置的星星翻倍一次 //⑧两个骰子⑨随机工坊--⑩推测可能有吞掉星星的事件但我没遇到 //本脚本①⑥不会起作用。 //工坊总数量为13资源+3星星16个,特殊事件4个。 //21格子。0为起点。1236789 12 13 14 16 17 19为资源。4、11、18为星星屋 //5送骰子,10塔罗牌,15正邪,20送幸运骰子 public static void main(String[] args) { long d1=new Date().getTime(); double s140=0;//皮肤 double s170=0;//魔球 double s200=0;//五星 double s230=0;//资源 double s260=0;//光暗 double s300=0;//九星 double heidong=0;//连皮肤都拿不到的黑洞 double unlucky=0;//自始至终没拿到幸运骰子 double ps=10000000;//玩家数量 for(int i=0;i<ps;i++) { Player p=new Player(); while(p.dice!=-1) { p.roll(); } if(p.unlucky) { unlucky++; } if(p.star>299) { s300++; }else if(p.star>259) { s260++; }else if(p.star>229) { s230++; }else if(p.star>199) { s200++; }else if(p.star>169) { s170++; }else if(p.star>139) { s140++; }else { heidong++; } } System.out.println("总共"+ps+"个玩家玩这个大富翁"); System.out.println(s300+"个玩家嫖到了九星,占玩家总数的"+String.format("%.3f", (s300/ps*100))+"%"); System.out.println(s260+"个玩家嫖到了光暗,占玩家总数的"+String.format("%.3f", (s260/ps*100))+"%"); System.out.println(s230+"个玩家嫖到了资源箱子,占玩家总数的"+String.format("%.3f",(s260/ps*100))+"%"); System.out.println(s200+"个玩家嫖到了四系五星,占玩家总数的"+String.format("%.3f",(s230/ps*100))+"%"); System.out.println(s170+"个玩家嫖到了魔球,占玩家总数的"+String.format("%.3f",(s200/ps*100))+"%"); System.out.println(s140+"个非酋只嫖到皮肤,占玩家总数的"+String.format("%.3f",(s170/ps*100))+"%"); System.out.println("有"+heidong+"个黑洞连皮肤都拿不到,占玩家总数的"+String.format("%.3f",(s140/ps*100))+"%"); System.out.println("有"+unlucky+"个玩家自始至终没有幸运骰子,占玩家总数的"+String.format("%.3f",(unlucky/ps*100))+"%"); long d2=new Date().getTime(); long time=d2-d1; System.out.println("以上计算耗时"+time+"毫秒"); } } class Player{ int dice=78; int step=0; int star=0; boolean unlucky=true; boolean lucky=false; //是否有幸运骰子 boolean zhengxie=false; //是否在正邪小屋 //下面4个是塔罗牌事件 boolean shuangbei=false; //是否双倍点数 boolean liangge=false; //是否两个骰子 boolean stardouble=false; //是否双倍星星 boolean back=false; //是否强行后退 int star4=3; int star11=3; int star18=3; public Player() { super(); } public void roll(){ if(dice==0) { star+=5;//最后把幸运骰子用掉,就不写太复杂了加五个星星吧 dice--; return; } if(step>13&&step!=15&&lucky&&step!=20) { move(20-step); //如果有幸运骰子并且在14格以后并且不在正邪小屋直接嫖步数 return; } dice--; int a=(int) (Math.random()*6+1); int b; if(shuangbei) { b=a*2; move(b); shuangbei=false; return; } if(liangge) { int c=(int) (Math.random()*6+1); b=a+c; move(b); liangge=false; return; } if(zhengxie) { if(a%2==0) {//如果a是偶数 b=a; }else { //a是奇数 b=-a; } move(b); zhengxie=false; return; } if(back) { b=-a; move(b); back=false; return; } move(a); } public void move(int a) { if(a<0) { step+=a; return; }else { for(int i=0;i<a;i++) { step++; if(step==21) { step=1; } pass(); } stay(); } } public void pass() { if(stardouble&&step==11) { star+=star11*2; return; } switch (step) { case 4: star+=star4; break; case 11: star+=star11; break; case 18: star+=star18; break; default: break; } } public void stay() {//资源就忽略不计啦,只计算星星和特殊事件 //System.out.println("停在了第"+step+"步"); switch (step) { case 4: if(star4<5) { star4++; } break; case 5: dice++; break; case 10: tarot(); break; case 11: if(star11<5) { star11++; } break; case 18: if(star18<5) { star18++; } break; case 20: lucky=true; unlucky=false; break; default: break; } } private void tarot() { //塔罗牌9个事件,假设概率一样。2个事件是没用的。 int a=(int) (Math.random()*9+1); switch (a) { case 1: shuangbei=true;//下次走双倍 break; case 2: liangge=true;//下次俩骰子 break; case 3: stardouble=true;//双倍星星 break; case 4: step=0;//回到起点 break; case 5: back=true;//下次倒着走 break; case 6: //随机工坊++,16个工坊,有16分之三概率影响到星星屋 int b=(int) (Math.random()*16);//区间为【0,15】 switch (b) { case 0: star4++; break; case 1: star11++; break; case 2: star18++; break; default: break; } break; case 7://随机工坊-- int c=(int) (Math.random()*16);//区间为【0,15】 switch (c) { case 0: star4--; break; case 1: star11--; break; case 2: star18--; break; default: break; } } } } 这里上结论: 总共1千万个玩家玩这个大富翁 587918.0个玩家嫖到了九星,占玩家总数的5.879% 1884433.0个玩家嫖到了光暗,占玩家总数的18.844% 2919339.0个玩家嫖到了资源箱子,占玩家总数的18.844% 3543587.0个玩家嫖到了四系五星,占玩家总数的29.193% 1017871.0个玩家嫖到了魔球,占玩家总数的35.436% 46671.0个非酋只嫖到皮肤,占玩家总数的10.179% 有181.0个黑洞连皮肤都拿不到,占玩家总数的0.467% 有93916.0个玩家自始至终没有幸运骰子,占玩家总数的0.939% 以上计算耗时67966毫秒 居然有接近6%的玩家白嫖了300星星,我其实不太信,估计卓杭设计的概率并不是均匀的,我这里是均匀计算,或许是塔罗牌事件有遗漏?
程序猿玩放置模拟代码第三波之酒馆刷新收益计算 之前出过2版模拟,一个是感恩节的火鸡,计算出开箱子的概率大约是14%左右,远低于卓航开始给的45%。 另一个是七星任务的大概成本计算,但是那个条件设定似乎不算太严谨,不过数据应该是没啥错误的。 今天这个代码是计算酒馆所有任务的收益计算,把3-7星都算进来了。月活动收益也算了。当然条件是我脑补的,实际数据大概会有点差别,仅做参考吧。 先说结论:酒馆任务最少刷出四星钻石才做收益期望值最高。123星不做。四星除了钻石都不做。五星不做竞技场门票。六七星都做。 条件: * 模拟收益需要一个通货,这里以钻石为通货假设 * 四星碎片一个=4钻(120钻一个四星) * 低转=30钻 * 高抽=125钻 * 竞技场门票不值钱 *六星任务有五星碎片/绿色神器/先知/树枝/钻石,概率不稳定,这里假设任务本身奖励价值150钻 *七星任务有五星碎片/红色神器/先知/树枝/钻石,概率不稳定,这里假设任务本身奖励价值300钻 * *月活动奖励(只计算六七星,因为四五星的奖励几乎不用刷就能到手) * 六星任务奖励5先知+3高转=2875钻(500*5+125*3) * 七星任务奖励10先知+1狗粮=6000钻(500*10+1000) * 辉煌圣物*5=750钻,150钻一个 * * 三星任务概率23.2%,只做钻石,数值为15-30,竞技场门票和三星碎片不做,概率每个都是33% * 四星任务概率15%,不做竞技场门票,有低转1/门票2/钻石40-60/高抽1/四星碎片4-8,每个概率是20% * 五星任务概率8%,不做竞技场门票,有低转2/门票3/钻石80-100/高抽2/四星碎片10-20,每个概率20% * 六星任务概率1%,都做,假设任务本身收益为150钻(实在不知道钻石区间,另外神器奖励也不好算) * 七星任务概率0.2%,都做,假设任务本身收益为300钻 * * 三四五星任务假设浮动数字每个数字的概率是一样的 在做这个程序之前我自己一直都是三星钻石就做了...没想到计算的结论和我想法差距挺大的啊。这里的计算没有计算战役挂机的卷轴,事实上按照这个方案刷任务月底加上卷轴以五星钻石为标准去刷的话应该只有部分非到死的非酋不能完成月度了。 十万玩家(VIP5,240个任务/月)模拟结论:总共100000个每月240个酒馆任务的玩家,以40钻石收益为临界刷新任务,有86247名玩家完成了酒馆月度任务,平均每个玩家收益为19703个钻石,最倒霉的人收益为8042钻石,最幸运的人收益为26465钻石 十万玩家(零氪,150个任务/月)模拟结论:总共100000个每月150个酒馆任务的玩家,以40钻石收益为临界刷新任务,有63292名玩家完成了酒馆月度任务,平均每个玩家收益为14039个钻石,最倒霉的人收益为3360钻石,最幸运的人收益为21444钻石 二楼上代码,用的Java写的,道友们可以自己跑一跑测试一下。注释都有应该很容易看得懂
程序猿模拟放置奇兵酒馆任务 https://tieba.baidu.com/p/5955192642?pid=122924442199&cid=0&red_tag=0381768020#122924442199 这是在下很久以前写的感恩节模拟火鸡的程序。 今天群里在讨论七星任务,想着好久没搞事了,有点手痒就写了点代码,模拟酒馆的比上次的简单很多很快就写完了。 楼下放结论 这次直接把代码发这里好了,用的是Java,直接用eclipse跑的 package 放置奇兵; import java.util.Date; public class 酒馆任务模拟 { public static void main(String[] args) { long d1=new Date().getTime(); int players=1000000; //玩家数量 int zhazha=0; //记录免费任务没有七星的渣渣 int xiaozha=0; //记录免费任务只有一个七星的小渣渣 int fanren=0; //记录免费任务出了2个七星的凡人 int ouhuang=0; //记录免费任务就出现了3个或以上七星的欧皇 int daomei=0; //记录刷出2个七星交任务的最大次数(谁会这么倒霉刷这么多次。。) long total=0; for(int p=0;p<players;p++) { Player p1=new Player(); for(int i=0;i<p1.cishu;i++) { qixing(p1); } switch (p1.qixing) { case 0: zhazha++; break; case 1: xiaozha++; break; case 2: fanren++; break; default: ouhuang++; break; } while(p1.qixing<2) { p1.refresh++; qixing(p1); } total=total+p1.refresh; if(p1.refresh>daomei) { daomei=p1.refresh; } //System.out.println("该玩家当月刷新了"+p1.refresh+"次才够2个七星"); } System.out.println("总共"+players+"个玩家,假定每天免费任务个数为"+(new Player().cishu/30)+"个"); System.out.println("免费任务没有七星的渣渣有"+zhazha+"个"); System.out.println("免费任务只有一个七星的小渣渣"+xiaozha+"个"); System.out.println("免费任务完成2个七星的凡人有"+fanren+"个"); System.out.println("免费任务就出了三个或以上七星的欧皇有"+ouhuang+"个"); System.out.println("最倒霉的家伙刷新了"+daomei+"次才凑够2个交任务"); System.out.println(players+"玩家总共刷新了"+total+"次完成月任务,平均每个玩家需要消费"+(total*10/players)+"钻石"); long d2=new Date().getTime(); long time=d2-d1; System.out.println("以上计算耗时"+time+"毫秒"); } //返回任务星级的方法,只统计七星任务。 public static void qixing(Player p) { //传入一个玩家对象 int a=(int) (Math.random()*500+1); //七星概率是千分之2 if(a==500) { p.qixing++; //如果是七星,该玩家七星数量+1; return; } return; } } class Player{ int qixing=0; //记录七星任务个数 int refresh=0; //如果月底不够,就消耗钻石刷,这个记录次数,消耗钻石数字*10 int cishu=150; //V0每天5个,v1-v2每天6个任务,v3v4每天7个。v5v6每天8个。模拟时根据实际需求修改 }
今天这个逼我一定要装! 今天又通了试炼。用的是下面这些英雄,过程真是惊心动魄。下面来图文播报一下。早上发了视频被度娘当广告抽了。。。前八关维萨单刷,应该没有疑问吧。这是第九关,一个E2国王,后排摆个肥宅领主送死,维萨满血打过。这是第十关。看到E1挖煤的时候我心里其实有点慌的。我把维萨的符文之力拆给挖煤,带上花语,然后上了观心挖煤贝尔兰,打完之后观心贝尔兰死了,挖煤维萨半血。11关。看到这阵容我就觉得稳了,前排维萨后排挖煤,打完血还回满了。12关,维萨+挖煤上,大概因为观心叠了印记的关系,打完维萨剩下三分一血,挖煤阵亡。然后维萨再次把挖煤的符文之力抢走。让人绝望的13关,13克总13瓦的混色。我这边满员上,混色,维萨丁丁光法虫子(因为维萨残血,虫子放了一号位)拉拉暗战,95W战力VS131万,说实话打的时候都准备好拼死一搏然后输掉了,结果打完只死了暗战拉拉和虫子,维萨几乎回满血,其他人掉了半血,出乎意料。至于说对面没131W战力没装备我是不信的,两个E3游侠没游侠科技我也是不信的。大概是因为我阵亡英雄太多了,14关比13关弱。180虫子顶200虫子的坑,卡尔玛填拉拉的坑,装备也懒得换了(其实是我不记得)。出去把包裹的达斯摩戈升到40级凑混色光环上,赢了,维萨剩半血多点,其余全体阵亡,英雄列表一片灰暗在一片灰暗英雄列表里,维萨犹如黑暗中的一盏灯。这是第15关,39W战力维萨VS对面整队,第二回合抬手把对面杀剩下火男残血国王和逃过一劫的沙雕。第五回合只剩下半血火男了。第10回合火男倒在了第四个大招上面,半血开打的,打完还有半血,要不是被叠了一层观心者印记估计打完血是满的吧。15关打完,撒花! 有点可惜没录下战斗过程,就是战后录了个英雄界面和对手阵容的视频留个纪念。
大清早的起床写程序!!!模拟一亿玩家获得感恩节火鸡概率测试 以下数据以每小时掉落2个南瓜饼为前提,自写程序模拟,一切数据照搬游戏里文案的 七天168小时+七天登录送的合计433个南瓜饼 有人南瓜掉得多,有人南瓜掉的少,这里都按433算 目测数据超1000亿的话可能会产生0火鸡的真·神选之人 不过一亿玩家的模拟已经需要我的电脑运行一分多钟才有结果(AMD FX8350 八核4G主频) 谁想测试一千亿的可以找我要代码。。。我是直接用eclipse运行的java脚本 获得了0个火鸡的玩家数量为0个 获得了1个火鸡的玩家数量为0个 获得了2个火鸡的玩家数量为0个 获得了3个火鸡的玩家数量为13个 获得了4个火鸡的玩家数量为130个 获得了5个火鸡的玩家数量为529个 获得了6个火鸡的玩家数量为5214个 获得了7个火鸡的玩家数量为32466个 获得了8个火鸡的玩家数量为116633个 获得了9个火鸡的玩家数量为311588个 获得了10个火鸡的玩家数量为732086个 获得了11个火鸡的玩家数量为1539861个 获得了12个火鸡的玩家数量为2818155个 获得了13个火鸡的玩家数量为4495420个 获得了14个火鸡的玩家数量为6406453个 获得了15个火鸡的玩家数量为8295508个 获得了16个火鸡的玩家数量为9823923个 获得了17个火鸡的玩家数量为10664373个 获得了18个火鸡的玩家数量为10702123个 获得了19个火鸡的玩家数量为10013225个 获得了20个火鸡的玩家数量为8774596个 获得了21个火鸡的玩家数量为7237791个 获得了22个火鸡的玩家数量为5650112个 获得了23个火鸡的玩家数量为4190165个 获得了24个火鸡的玩家数量为2967427个 获得了25个火鸡的玩家数量为2011456个 获得了26个火鸡的玩家数量为1305933个 获得了27个火鸡的玩家数量为815801个 获得了28个火鸡的玩家数量为488556个 获得了29个火鸡的玩家数量为282010个 获得了30个火鸡的玩家数量为155405个 获得了31个火鸡的玩家数量为83266个 获得了32个火鸡的玩家数量为41964个 获得了33个火鸡的玩家数量为20669个 获得了34个火鸡的玩家数量为9748个 获得了35个火鸡的玩家数量为4254个 获得了36个火鸡的玩家数量为1858个 获得了37个火鸡的玩家数量为803个 获得了38个火鸡的玩家数量为311个 获得了39个火鸡的玩家数量为117个 获得了40个火鸡的玩家数量为36个 获得了41个火鸡的玩家数量为14个 获得了42个火鸡的玩家数量为4个 获得了43个火鸡的玩家数量为2个 获得了44个火鸡的玩家数量为2个 获得了45个火鸡的玩家数量为0个 获得了46个火鸡的玩家数量为0个 获得了47个火鸡的玩家数量为0个 获得了48个火鸡的玩家数量为0个 获得了49个火鸡的玩家数量为0个 获得了50个火鸡的玩家数量为0个 获得了51个火鸡的玩家数量为0个 获得了52个火鸡的玩家数量为0个 获得了53个火鸡的玩家数量为0个 获得了54个火鸡的玩家数量为0个 获得了55个火鸡的玩家数量为0个 合计100000000(不用数了,一亿)名玩家总共寻宝2850265303次,开出了406103178个箱子 计算得出开箱概率仅为0.142479079955316,卓航策划数学真好 平均每次寻宝需要15.191568291704389个南瓜饼 总共100000000个玩家总共找到了1813375477个火鸡 平均每个火鸡需要23.87812151934158个南瓜饼 平均每个玩家找到了18.13375477只火鸡 平均每次寻宝能获得0.6362128729179566只火鸡 总共踩了63919586个陷阱,平均每个玩家踩到了0.63919586个 平均每次寻宝有0.022425837318625214概率的踩到陷阱 第16个格子总共出现了2996次,能见到的都是天选之人 一亿玩家 没有人白嫖神器 有54个人白嫖好多卷心菜 有143个人连不充值第一档五个卷心菜都没有 “他们白嫖神器,而我一无所有” 谁才是天选之人?
1 下一页