galliano 发表于 2018-1-18 14:31

最近给手游写攻略,各有乐趣,或者也可以说民间科学家毫无价值而言。
如果拿到全部代码,以上反推都只是冰山一角

galliano 发表于 2018-1-18 14:34

喜欢玩游戏的,攻略和算法看看就好,看懂的游戏就没啥乐趣了,看不懂的游戏时间损耗比较大。鱼和熊掌不可兼得

光明之信仰 发表于 2018-1-18 16:27

星饮露,
皆为方兄驭。
搅彻周天旄絮舞,
大浪难淘珠目。

路遥人困驴嘶,
觅机惆怅徘徊。
齐唤玄奘何在?
咒箍依旧凄迷。

galliano 发表于 2018-2-2 11:11

光明之信仰 发表于 2018-1-18 16:27
星饮露,
皆为方兄驭。
搅彻周天旄絮舞,


光明老司机这车开得让我很难接招。。。



回复:

风雪难留痕,日月俱无言。
切忌从他觅,迢迢与我流。
君当独自往,处处得逢渠。
道存无阻隔,莫见亦知心。
  

conquerzc 发表于 2018-2-28 16:03

太牛逼了。看的爽

galliano 发表于 2018-3-1 11:04

conquerzc 发表于 2018-2-28 16:03
太牛逼了。看的爽

恭喜您成为125楼主

zjw328why 发表于 2018-3-1 14:31

大神好给力啊,学习了,学习了

galliano 发表于 2018-3-15 15:29

aeolusbox 发表于 2017-10-14 02:51
所以節奏還跟傳球距離有關係?
那如果短傳快節奏跟長傳慢節奏計算會怎樣?

才看懂你的问题。

你说的是节奏与“直传”、“脚下球”的区别。

我想说这两个没啥直接关系。

节奏的计算模式核心在于传球目标计分的比较。
举例节奏相关公式如下:

传球目标计分=目标所在区域接球评分*节奏系数*(1-目标战力/目标所在区域敌方战力)

无球跑动目的坐标计分=目标所在区域接球评分*节奏系数


实际代码看不到,代码的公式处理上可能更加简单。计算原理应该是一致的


从公式看,节奏越快,传球和无球跑的侵略性更强。


直传、脚下球是传球距离的问题。
假如加大直传会加大远距离传球的坐标计分,脚下球就增加近距离目标坐标的计分。

与传球方式相关的计分公式可能是:
传球目标计分 =目标所在区域接球评分*传球者能力/20*(球场长度/传球距离+传球方式系数)*(1-目标战力/目标所在区域敌方战力)

假如玩家设置“多直传”,那么传球方式系数提高将会减小传球距离对计分的负面影响。

多短传,则反之。


至于传球是否被截断,则确定好传球是否的决策后,交给AI绘制皮球的行进路线,遇到拦截者就做掷骰运算。



mybluechelsea 发表于 2018-5-16 11:50

冲楼主的精耕洗濯的思维就该怒赞一个{:16_678:}

突然觉得FM这么玩对于数学渣渣的我来说了无生趣。。

galliano 发表于 2018-5-26 13:48

mybluechelsea 发表于 2018-5-16 11:50
冲楼主的精耕洗濯的思维就该怒赞一个

突然觉得FM这么玩对于数学渣渣的我来说了无生趣。。

各是各,随缘即可。
花了这么多时间玩游戏,能开心就好

jianjian521 发表于 2018-6-30 13:38

数学以及计算机只懂毛皮的我来说真是天书啊,佩服大神。

galliano 发表于 2018-7-3 11:35

裁判算法:

裁判的计算包括:
1、碰撞犯规
2、越位判定
3、点球判定
4、出牌判定

最简单的是越位判定,FM中的越位判定理论上是不会出错的,除非发生运算中变量赋值错误,导致某个球员的Position变量没有参与越位的计算。

次简单的是点球判定。从概率上说,在禁区内发生的球员身体物理碰撞次数非常多,概率密度高于场上其他区域。但是犯规密度偏低,而且犯规判罚基本是守方有利原则。所以说,禁区守方犯规的数学概率是被认为调低了,攻方犯规的概率比重调高。总犯规率调低。

再来谈碰撞犯规,这个就是简单的掷骰运算,计算碰撞双方的体重、加速度、速度得到动量,再把强壮、平衡、隐藏属性“肮脏”代入计算,判定是否犯规,基本和抽彩票一样。

出牌方面,比较简单。在上述运算中设置得牌概率。即是犯规=抽中3等奖,黄牌=2等奖,红牌=1等奖。然后绘制犯规图像即可。
模拟游戏和动作游戏是反的,类似NBA 2K、PES等,需要读入玩家的操作指令再做物理判定,FM就不需要,直接判定好再画图。所以PES、NBA2k可以利用操作骗犯规,FM就不行。只能靠提高属性来提高造犯规概率。

最后谈谈犯规率=犯规次数/碰撞次数。为了让比赛更加流畅,禁区外无球情况的碰撞犯规概率在计算中被调低到接近0,基本只考虑有球碰撞。比赛中统计的对抗次数和成功率也只考虑了有球相关事件的数字,仅仅是总碰撞次数的冰山一角。

列出一个参照数值,欢迎大家拍砖。
一场比赛中,一名中后卫的标称平均对抗次数在10-15次,但实际身体碰撞次数根据90分钟45回合计算,大约为45次/(人-对位人)。守门员的对抗回合较少,每场也就10-15回合。所以总的全场真实碰撞回合为500次。绘图的时候,由于真实碰撞只有500次,所以会发生很多肢体图片穿越、凌波微步等情况,因为这些情况没有被赋予“碰撞”概念,但是肉眼看着像碰撞。这个是绘图引擎的问题了。

galliano 发表于 2018-7-3 12:56

骂人、拖延时间得牌属于随机事件,不属于物理碰撞类的犯规

galliano 发表于 2018-7-5 14:40

由世界杯内马尔的拙劣演技想到的,关于拖延时间的问题,以及拖延时间与节奏的不同。

拖延时间(Time Wasting),实际上的作用在于提高低风险处理球的收益分数。

节奏越高,越提高冒险处理的收益分数。

两者是不同的。

例如在默认不拖时间情况下A持球,有BC两个接球点,传给B所在后场区域得分为100分,丢失球权概率10%,传给A所在的对方禁区得分为200分,丢失球权概率50%。
那么两个接球点的分值是B:100-100*10%;C:200-200*50%;
传给C更好,因为得分是100.

增加了拖延时间的比例之后。拖延时间的比率提高为40%
计分方式改变
B:100-100*10%*(1+40%)=86
C:200-200*50%*(1+40%)=60

传B更符合拖延时间的目的。

那么节奏呢?
算法不同
假定最高节奏下,提高风险收益率从100%到120%
那么A的传球目标得分:
B:100*120%-100*10%=110
C:200*120%-200*50%=140
高节奏下,会传给C,更多冒险换来更多收益。虽然收益率降低,但是由于激进行为的回合次数增加,总收益量有可能增长。

galliano 发表于 2018-7-5 14:48

攻防实力比对手强,针对性也做得好,那么可以考虑不拖时间,增加节奏,提高回合数。

55开甚至实力更弱的话,压节奏发挥针对性优势,减小翻车概率比较好。传控是最好的防守,而不是进攻。

glbbaggio2 发表于 2018-7-31 10:23

lz威武啊,这些东西看看还是挺有帮助的
希望lz多写写对玩家有应用价值的游戏设置方法
毕竟低端玩家较多,看原理帮助不大

daitoni 发表于 2018-7-31 14:15

虽然看不懂大和尚的经义,但依然是很厉害的样子

galliano 发表于 2018-8-1 09:59

本帖最后由 galliano 于 2018-8-1 10:18 编辑

回复一下群友的问题,有点共性。
上层指令、中层指令和基层指令与比赛效果不是简单的线性关系。

例如不存在节奏、心态、宽度等比某些个人设置有排序优先的说法。

好比一个房子我允许供电220V,但是厂家调整了输出供电为10V。这个时候来反驳说我设计的220V第一重要是不对的。

各层指令对比赛结果的影响权重,每个版本都在变化。

举例:
假定全队指令束缚了某个后场队员2D-XY坐标平面的活动区域为后场3000平方米,队员个人指令上限是3000X100%平方米还是3000X150%,这个100%-150%就属于厂家微调权重范畴了。每次更新都会变动。

galliano 发表于 2018-8-1 10:02

本帖最后由 galliano 于 2018-8-1 10:52 编辑

glbbaggio2 发表于 2018-7-31 10:23
lz威武啊,这些东西看看还是挺有帮助的
希望lz多写写对玩家有应用价值的游戏设置方法
毕竟低端玩家较多, ...

战力配置摆放更简单。FM变成是农民占地游戏,高星级农民可以压倒对方低星级农民独占一块地,2个低星级农民可以抵抗住对方高星级农民确保不丢地。
谁总占地多,谁在游戏中必胜。

引擎的势力图算法就是这样的


之前已经有玩家GG利用这个机制写了攻略,虽然当时他没写原理
http://tieba.baidu.com/p/2380430376

galliano 发表于 2018-8-1 10:15

利用引擎的打法,透过现象看本质,操作起来一般比较简单,不过看球代入感会减少,更加偏向于PK节奏。

而现实先验派的打法都挺复杂,很多前置条件。诸如,要XX的前腰,XX的中卫等等,代入感好很多。

玩家需要自己找好平衡点。
页: 1 2 3 4 5 6 [7] 8 9
查看完整版本: 【长期连载】浅谈Football Manager(FM)系列的AI和算法逻辑-更新153楼节奏遭遇线