赶快送,修复了就没了!
需要的工具
jdk:必须的
baksmali:classes.dex反编译为smali格式(文本文件,可修改)
smali:smali格式编译打包为classes.dex
jdgui:jar反编译并阅读
以"捕鱼达人海底捞"为例
用zip解开fishing_joy_1.apk
copy classes.dex到baksmali的同一目录
用baksmali处理为smali
得到out目录,里面是smali文件
这时我们的工作目录下面是这样
好了,可以看代码,但还不能直接修改,需要对比着来修改smali文件
比如我们通过对比找到控制鱼被打到几率的代码在FishLayer.smali
Java代码
/**
*?计算捕鱼
*/
public?class?Fish?{
public?String[]?piscators?=?{?"A",?"B",?"C",?"D",?"E"};
public?static?void?main(String[]?args)?{
Fish?fish?=?new?Fish();
for?(int?i?=?0;?i?10000;?i◆◆)?{
if?(fish.averageFish(fish.piscators.length,?i))?{
fish.averageFish(i);
break;
}
*?判断平均分鱼
public?boolean?averageFish(int?piscatorSize,?int?fishNum)?{
boolean?isAaverage?=?(fishNum?-?1)?%?piscators.length?==?0;
//最后一个人也分成五分?所以piscatorSize?0?多分一次.
if?(isAaverage?piscatorSize?0)?{
return?averageFish(piscatorSize?-?1,?(fishNum?-?1)?/?piscators.length);
return?isAaverage;
*?输出分鱼过程
public?void?averageFish(int?fishNum)?{
System.out.println("最少合伙捕到"◆?fishNum?◆?"条鱼");
for?(int?i?=?0;?i?piscators.length;?i◆◆)?{
System.out.println(piscators[i]?◆?"醒来发现鱼数是"?◆?fishNum);
fishNum?=?(fishNum?-?1)?/?piscators.length;
个人观点,难免错漏百出,欢迎大家留言斧正——我是一条咸鱼
深海狂鲨
数值设计准则
① 概率游戏,遵循"自然概率>人工干预"原则,更能激发博弈类游戏的趣味性
捕鱼公式演化
① 标准公式:捕获概率 = 鱼炮分值 * (1 - 抽水率) / 鱼分值
捕获概率越高,鱼越好打,系统放分;反之鱼越难打,系统吃分
粉丝捕鱼时,使用的鱼炮分值越大,捕获概率越高
鱼分值越高的目标(大鱼),捕获概率越低
现出分:衡量系统输赢程度的系统参数
友好度:粉丝捕鱼的难易程度,越容易捕鱼,友好度越高,反之越低
注释:"现出分""友好度",先了解概念,后文会详细说明计算方法
吃分放分流程图
为后续Python验证数据的便利性,所有百分比概率或浮点数,转换为万分比
效用等同于标准公式的(1 - 抽水率)
基础捕获概率万分比= (1/鱼分值)*10000 ◆ 基础修正值
鱼分值为命中目标的返奖倍率,例如鱼炮x分,成功命中某鱼分值y,则奖励 x*y分(1/鱼分值即为目标鱼种的基础捕获概率)
基础修正值:手动修正基础捕获概率的参数
基础捕获概率万分比
鱼炮分值:发射一枚鱼炮的分值(鱼炮分值 = 鱼炮默认分值*捕鱼房底注)
鱼炮种类及返奖分值
捕鱼房底注:
捕鱼房场次
指数形状的作用:能达成xx%~xxx%的浮动效果
指数效果示例
黑白用户万分比:给粉丝定性(白名单、正常、黑名单),白名单捕鱼较为容易,黑名单捕鱼更困难
友好度万分比:现出分影响友好度和抽水率
黑与白
黑白名单控制规则
① 当前返奖率决定粉丝在黑白名单中的位置
黑白正常名单
粉丝累计赢分:单个粉丝累计赢分总和
粉丝累计输分:单个粉丝累计输分总和
友好度
现出分规则
① 现出分影响友好度万分比、抽水率万分比
现出分
系统累计吃分:所有粉丝输分总和,扣除抽水的分值
系统累计出分:所有粉丝赢分总和
大鱼
大鱼控制逻辑
m = 同一渔场所有粉丝捕获非大鱼的累计数量
当 m == 设定界线时,动态权重 ◆ n,并重置 m 的值为0
未完待续
土嘎嘎的粉丝们大家好!
程序发上来,你看看吧,满意请采纳
/*
#includestdio.h
int?leap(int?a)???//自定义函数leap,判断输入的年份是否为闰年
{
return?1;
else
return?0;
int?number(int?y,int?m,int?d)
int?sum=0,i,j;
if(leap(y)==1)
{?
for(i=0;i=m-1;i◆◆)
sum◆=a[i];
}?
sum◆=b[i];
if(leap(j)==1)
sum◆=d;
return?sum;
int?main()
int?y,m,d,n;
printf("请输入,年?月?日:\n");
scanf("%d%d%d",y,m,d);
n=number(y,m,d);
printf("%d年%d月%d日?打渔\n",y,m,d);
printf("%d年%d月%d日?晒网\n",y,m,d);
捕鱼大作战的脚本可以在网页上查看源代码来看,这是一款热度颇高的网络游戏.
以上就是土嘎嘎小编为大家整理的java捕鱼源代码相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!