网页
资讯
视频
图片
知道
文库
贴吧
地图
采购
进入贴吧
全吧搜索
吧内搜索
搜贴
搜人
进吧
搜标签
日
一
二
三
四
五
六
签到排名:今日本吧第
个签到,
本吧因你更精彩,明天继续来努力!
本吧签到人数:0
一键签到
可签
7
级以上的吧
50
个
一键签到
本月漏签
0
次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行
补签
。
连续签到:
天 累计签到:
天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
09月30日
漏签
0
天
骑马与砍杀吧
关注:
738,568
贴子:
14,869,387
看贴
图片
吧主推荐
视频
玩乐
5
回复贴,共
1
页
<返回骑马与砍杀吧
>0< 加载中...
骑砍2——坐镇指挥机制解析(基于游戏代码研究整理)
取消只看楼主
收藏
回复
晓断言
四海游侠
12
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
拉盖亚女皇阵前演讲图镇楼
本篇完全由撒那拉施工队成员
@Only灬少校
个人学习理解烤肉社相关代码独立整理完成,本人仅代发表。
理解难度较高,各位按需选择是否详细阅读,事后本帖会在撒那拉施工队后续相关攻略解析中作为参考资料。
送TA礼物
IP属地:辽宁
1楼
2024-05-01 15:02
回复
晓断言
四海游侠
12
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
坐镇模拟(玩家)
一、战斗状态
无:代表正在模拟中
防守方胜利
进攻方胜利
防守方撤退
IP属地:辽宁
本楼含有高级字体
2楼
2024-05-01 15:03
回复
收起回复
晓断言
四海游侠
12
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
二、游戏刻
若玩家方只剩玩家健康,或者战斗状态为进攻方胜利或防守方胜利,则模拟结束并结束此刻。
若模拟状态为跳过,则除非进攻方胜利或防守方胜利,否则:
{模拟战斗刻
若玩家方剩余健康人数不超过1人,则结束此刻}
若模拟状态为快速模拟,则模拟3战斗刻,否则模拟1战斗刻。
IP属地:辽宁
本楼含有高级字体
3楼
2024-05-01 15:04
回复
收起回复
晓断言
四海游侠
12
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
三、模拟战斗刻
1. 获取双方战斗轮次
1.1.防守方人数≤10
防守方轮次 = min{进攻人数*3,防守人数*0.3} 随机舍入
进攻方轮次 = min{防守人数*3,进攻人数*0.3} 随机舍入
(随机舍入的含义是,以小数部分的概率入,(1-小数部分)的概率舍)
1.2.攻城战(城镇防守人数>100或城堡防守人数>30)
1.2.1.定居点优势(城镇/城堡)
获取进攻方的所有攻城器械(包括未部署的)
flag = 是否有攻城槌或改良攻城槌
flag2 = 是否有改良攻城槌
num = 攻城塔数量
num2 = 配重式抛石机+投石车+弩砲的数量
num3 = 火焰投石车+火焰弩炮的数量
num4 = 3+城墙等级
若城墙被攻破,则
num4 = 0.75+0.25*城墙等级
num5 = 1+num4
num6 = 1 + (flag 或 num > 0 ? 0.12 : 0) + (flag2 ? 0.24 : (flag ? 0.16 : 0)) + ((num > 1) ? 0.24 : ((num == 1) ? 0.16 : 0)) + num2 * 0.08 + num3 * 0.12
baseNumber = num5 / num6
即按照以下逻辑:
1.2.1.1. 防守方强度num5
默认1.75
+0.25*城墙等级
1.2.1.2.进攻方强度num6
默认1
若有近战攻城器械(攻城槌或改良攻城槌或攻城塔),则 +0.12
若有攻城槌,则 改良攻城槌+0.24;攻城槌+0.16
若有攻城塔,则 多于2个攻城塔+0.24;1个攻城塔+0.16
若有配重式抛石机或投石车或弩砲,则 +0.08*(配重式抛石机+投石车+弩砲的数量)
若有火焰投石车或火焰弩砲,则 +0.12*(火焰投石车+火焰弩砲的数量)
1.2.1.3.基础数baseNumber
=num5/num6
接下来计算perk带来的影响
1.2.1.4.进攻方perk
若进攻方的任一军团指挥官有战术的正步向前技能,则 -20%*baseNumber
1.2.1.5.防守方perk
若定居点的总督有战术的正步向前技能,则 +20%*baseNumber
以上百分比之间加算
得到最终的定居点优势
1.2.2.计算战斗轮次
num = 定居点优势*0.7
num2 = 1 + 防守人数^0.3
num3 = max{num2*num, (防守人数+1)/(进攻人数+1)}
防守方轮次 = 0.5+num3 四舍五入
进攻方轮次 = 0.5+num2 四舍五入
1.3.其他情况
防守方轮次 = min{进攻人数*2,防守人数^0.6} 随机舍入
进攻方轮次 = min{防守人数*2,进攻人数^0.6} 随机舍入
IP属地:辽宁
本楼含有高级字体
4楼
2024-05-01 15:08
回复(2)
收起回复
晓断言
四海游侠
12
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
2. 模拟战斗
2.1.判断胜利
若进攻方健康人数归零,则防守方获胜
否则若防守方健康人数归零,则进攻方获胜
2.2.战场优势(军团则取军团指挥官部队的优势)
2.2.1.防守方优势
默认1
+部队指挥官战术技能等级*0.001
若部队指挥官有侦察的巡逻队技能且进攻方为强盗部队,则 *1.1
若部队指挥官有战术的战前演练技能且进攻方有部队指挥官且本方部队指挥官战术技能等级高于进攻方部队指挥官战术技能等级,则 +(本方部队指挥官战术技能等级 - 进攻方部队指挥官战术技能等级)*0.01
以上加成依次进行
2.2.2.进攻方优势
默认1
+部队指挥官战术技能等级*0.001
若部队指挥官有侦察的巡逻队技能且防守方为强盗部队,则 *1.1
若部队指挥官有战术的战前演练技能且防守方有部队指挥官且本方部队指挥官战术技能等级高于防守方部队指挥官战术技能等级,则 +(本方部队指挥官战术技能等级 - 防守方部队指挥官战术技能等级)*0.01
若为攻城战,则 *0.9
以上加成依次进行
2.3.单轮进攻
当双方尚有战斗轮次且胜负未分时,依据双方的剩余战斗轮次数量决定哪方作为本轮进攻方。
进攻方有 进攻方剩余战斗轮次/双方剩余战斗轮次 的概率作为本轮进攻方;
防守方有 防守方剩余战斗轮次/双方剩余战斗轮次 的概率作为本轮进攻方。
2.4. 模拟单轮战斗
先随机挑选本轮进攻方的一个兵种与本轮防守方的一个兵种,然后模拟进攻兵种对防守兵种的伤害
2.4.1. 默认兵种战力
英雄的级别 = 1 + 英雄等级/4
战力 = (2 + 级别)*(10 + 级别)*0.02*(英雄1.5;骑兵类1.2;步兵类1)
2.4.2. 战场地形优势
若为野战/突围/进攻围城营地,则根据地形转化为战斗类型
水/沼泽/桥/河流/涉水/湖 转化为 渡口
草原/平原/沙漠/沙丘/森林 转化为 各自对应战斗类型
若为掠夺/强迫要人征兵/强征给养,则转化为村庄
攻城 转化为 攻城
其他情形,若当地正在下雪/暴雪,则 转化为 雪地
否则转化为默认
随后参考表格转化为战场地形优势
此处的进攻方与防守方为大地图进攻方与大地图防守方
2.4.3. 指挥官加成
默认0
对于指挥官拥有的每一个第一加成是队长类型的perk:
若这一技能的等级 <= 75,则 +0.01
若这一技能的等级 (75, 150],则 +0.02
若这一技能的等级 (150, 225],则 +0.03
若这一技能的等级 >225,则 +0.06
2.4.4. 战场兵种战力
= 默认兵种战力*(1 + 战场地形优势 + 指挥官加成)
模拟伤害 = (0.5 + 0.5*随机0-1小数)*40*(本轮进攻兵种战力/本轮防守兵种战力)^0.7*本轮进攻优势
本轮进攻优势取决于本轮进攻方是大地图进攻方还是大地图防守方
若双方部队都是大地图的可移动的部队,则计算技能对模拟伤害的影响
2.4.5. 技能影响模拟伤害
若本轮进攻方的部队指挥官有战术的密集阵型技能,且本轮进攻方是步兵(不含射手),本轮防守方是骑兵类(骑兵+骑射手),则 +10%
若本轮防守方的部队指挥官有战术的松散阵型技能,且本轮防守方是步兵(不含射手),本轮进攻方是远程类(射手+骑射手),则 -10%
若本轮进攻方的部队指挥官有战术的游击战线技能,且地形为雪地/森林,则 +10%
若本轮进攻方的部队指挥官有战术的决战技能,且地形为平原/草原/沙漠,则 +5%
若本轮进攻方的部队指挥官有战术的执法先锋技能,且本轮进攻方非强盗而本轮防守方为强盗,则 +10%
若本轮进攻方的部队指挥官有战术的亲临指导技能,则 +3%
若本轮防守方的部队指挥官有战术的后备精锐技能,且本轮防守兵种的级别>=3,则 -20%
若本轮进攻方的部队指挥官有战术的围城战技能,且本轮进攻方部队的健康士兵数超过本轮防守方部队的健康士兵数,则 +5%
若本轮进攻方的部队指挥官有战术的全面反攻技能,且本轮进攻方部队的健康士兵数少于本轮防守方部队的健康士兵数,则 +10%
若本轮进攻方的部队指挥官有战术的笼中之鸟技能,且战斗类型是攻城,且本轮进攻方是大地图防守方,则 +10%
若本轮进攻方的部队指挥官有侦察的先锋骑兵技能,且本轮进攻方是大地图进攻方,则 +5%
若本轮进攻方的部队指挥官有侦察的后备军技能,且战斗类型是突击攻城营地/突围,且本轮进攻方是大地图防守方,则 +10%
若本轮进攻方的部队指挥官有侦察的先锋骑兵技能,且战斗类型是突围,且本轮进攻方是大地图进攻方,则 +10%
若本轮进攻方的部队指挥官有战术的全面反攻技能,且战斗类型是野战,且本轮进攻方是大地图防守方,则 +10%
若本轮进攻方是军团指挥官的部队,且军团指挥官有战术的精通战术技能,则 +(战术技能等级-200)*0.5%
以上加成相互之间加算
2.4.6. 难度影响模拟伤害(仅限玩家模拟且本轮防守方为玩家部队)
在上述计算结果的基础上,根据战役选项中的玩家部队承受的伤害
非常简单 *0.5
简单 *0.75
真实 *1
其它 *1
2.4.7. 对单位施加伤害
30%几率为钝伤,70%几率为砍伤
若本轮防守方是英雄单位,则直接扣除生命值
若英雄受伤(生命值<=20),则计算存活几率。
若本轮防守方是士兵,且模拟伤害超过士兵的最大生命值,则计算存活几率。
存活几率计算:
若角色在部队中:
若伤害类型为钝伤,或者战役选项中战死几率为非常简单,或者受伤英雄是玩家且战役选项中战死几率为简单,则存活几率为1
外科医生的每点医术技能使存活几率 +0.01
若敌军的外科医生有医术的救死扶伤技能,则敌军外科医生的每点医术技能使存活几率 +0.01,敌军外科医生的医术获得经验 5*受伤角色级别
角色的每一等级使存活几率 +0.02
若部队的外科医生有医术的民众医疗技能,且角色非英雄,级别小于3,则存活几率 +30%
若角色为英雄,则全身的每一点护甲使存活几率 +0.01;每一年龄使存活几率 -0.01;默认存活几率 +50%
以上加成中,凡是百分比(带百分号%的)加成相互加算;数值加成先于百分比加成。
然后取存活几率的倒数,并称其为死亡率(代码里是这么算的,尽管不合理)
若部队的外科医生有医术的嘲弄死神技能,且角色为英雄,则死亡率 -50%
若战役选项中家族成员战死几率为
非常简单 -100%
简单 -50%
真实 -0%
其它 -0%
存活率 = 1 - 死亡率
若角色英雄是囚犯:
存活率 = 1 - 年龄*0.0035
随后结算技能经验和角色经验
IP属地:辽宁
本楼含有高级字体
5楼
2024-05-01 15:12
回复(5)
收起回复
晓断言
四海游侠
12
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
附录:地形对坐镇指挥影响系数参考本表格
IP属地:辽宁
7楼
2024-05-01 15:41
回复
收起回复
登录百度账号
扫二维码下载贴吧客户端
下载贴吧APP
看高清直播、视频!
贴吧热议榜
1
郑钦文vs波多罗斯卡
1765839
2
杨奇黑神话最新原画露出
1638000
3
A股暴涨!沪指站上3200点
1443150
4
S14瑞士轮首轮抽签结果出炉
1091714
5
有股民一早赚了52万
1069825
6
真主党高层几乎被团灭
1013376
7
格列兹曼宣布退役
1006503
8
网文作者因炒股大赚直接断更
909304
9
Elk回应贴吧老哥关切
664419
10
TES对战T1几几开
521100
贴吧页面意见反馈
违规贴吧举报反馈通道
贴吧违规信息处理公示