骑马与砍杀中文站论坛

标题: 分享:战场增加最大血量代码和思路_MOD通用版(源码和TXT码) [打印本页]

作者: 三笠的艾伦    时间: 2022-4-22 22:36
标题: 分享:战场增加最大血量代码和思路_MOD通用版(源码和TXT码)
本帖最后由 Aomine Daiki 于 2022-6-8 16:01 编辑

很多骑友总觉得血量太少,特别是潘德这种有一定难度的MOD,开全伤很容易翻车。这里研究了一个战场增加最大血量的代码,战斗结束后恢复原始血量,既不和游戏冲突,又能在战场上获得额外的血量,比起修改EXE执行程序要好一些,因为血量上限没有特别的限制。


战场代码一般都是MOD通用版,潘德也可以用。至于战场代码和触发器怎么用,请自行到站里搜索或看我之前的帖子,有添加教程。在此不赘述。


我的设定是把盔甲的护甲值计算成额外的血量,其实如何关联血量可以自己构思,我最初是想着和铁骨挂钩,每级铁骨*8点额外血量,但是铁骨有减伤和回血的关联代码,关联太多,技能选择上就太过于偏重点铁骨了,所以和盔甲关联一下,其实法亚里面也有类似的代码,把护甲值做成额外的护甲血槽,我觉得特别好。总之思路可以丰富多彩,大家可以自由发散和构建。我只是提供一个基础性的代码供大家交流,我一点点拙劣浅显的思路和看法。哈哈哈

代码里有注释的地方,大家可以自行修改。


一共两个触发器,进入战场后执行,退出战场后恢复原始血量,如果战场上战损后的血量低于100%则按原始血量百分比还原,高于100%则还原成原始血量。

有源码和TXT码,方便大家研究和即时享受效果。哈哈

仅玩家和友军NPC单位有效



[spoiler=源码]

  1.         # 玩家NPC初始化 身防值增加到最大生命值
  2.        (ti_after_mission_start, 0, 0, [],
  3.         [
  4.          (try_for_agents, ":var_0"),
  5.             (agent_is_alive, ":var_0"),      
  6.             # (get_player_agent_no, ":player_no"), #仅玩家有效
  7.             (try_begin),
  8.                 # (eq, ":var_0", ":player_no"), #仅玩家有效
  9.                 (agent_is_ally, ":var_0"), #友军有效
  10.                 (agent_is_human, ":var_0"),
  11.                 (agent_get_troop_id, ":var_3", ":var_0"),
  12.                 (troop_is_hero, ":var_3"), # 友军npc有效
  13.                     # (store_skill_level, ":var_1", skl_ironflesh, ":var_3"),#铁骨加战场血量最大值
  14.                     (store_agent_hit_points, ":var_2", ":var_0"),
  15.                     (store_agent_hit_points, ":var_22", ":var_0", 1),
  16.                     (troop_get_inventory_slot, ":body", ":var_3", 5),
  17.                     (try_begin),   
  18.                         (neg|eq, ":body", -1),
  19.                         (item_get_body_armor, ":bodyhit", ":body"), #获取盔甲防御值
  20.                         (try_begin),  
  21.                             (eq, ":var_2", 100),
  22.                             # (val_mul, ":var_1", 8),
  23.                             (val_add, ":var_22", ":bodyhit"),
  24.                             (agent_set_max_hit_points, ":var_0", ":var_22", 1),
  25.                             (agent_set_hit_points, ":var_0", ":var_22", 1),
  26.                         (else_try),
  27.                             (gt, ":var_2", 100),
  28.                             (agent_set_max_hit_points, ":var_0", ":var_22", 1),
  29.                             (agent_set_hit_points, ":var_0", ":var_22", 1),                       
  30.                         (try_end),
  31.                         # (assign, reg2, ":var_22"),
  32.                         # (display_message, "@{reg2}"),
  33.                     (try_end),
  34.             (try_end),
  35.          (try_end),  
  36.          
  37.          ]),
  38.          
  39.    # 配合战场加血量代码使用,战斗后还原血量      
  40.       (ti_question_answered, 0, 0, [],
  41.        [
  42.          (store_trigger_param_1,":answer"),
  43.          (eq,":answer",0),
  44.          (try_for_agents, ":var_0"),      
  45.                 (agent_is_ally, ":var_0"), #友军有效
  46.                 (agent_is_human, ":var_0"),
  47.                 (agent_get_troop_id, ":var_3", ":var_0"),
  48.                 (troop_is_hero, ":var_3"), # 友军npc有效   
  49.                 (store_agent_hit_points, ":var_4", ":var_0"),
  50.                 (try_begin),                  
  51.                     (ge, ":var_4", 100),
  52.                     (agent_set_hit_points, ":var_0", 100),
  53.                 (try_end),
  54.          (try_end),  
  55.         ]),
复制代码



[/spoiler]

[spoiler=TXT码]
-20.000000 0.000000 0.000000  0  26 12 1 1224979098644774912 1702 1 1224979098644774912 4 0 1706 1 1224979098644774912 1704 1 1224979098644774912 1718 2 1224979098644774913 1224979098644774912 1507 1 1224979098644774913 1720 2 1224979098644774914 1224979098644774912 1720 3 1224979098644774915 1224979098644774912 1 1541 3 1224979098644774916 1224979098644774913 5 4 0 2147483679 2 1224979098644774916 -1 2704 2 1224979098644774917 1224979098644774916 4 0 31 2 1224979098644774914 100 2105 2 1224979098644774915 1224979098644774917 2090 3 1224979098644774912 1224979098644774915 1 1721 3 1224979098644774912 1224979098644774915 1 5 0 32 2 1224979098644774914 100 2090 3 1224979098644774912 1224979098644774915 1 1721 3 1224979098644774912 1224979098644774915 1 3 0 3 0 3 0 3 0
-8.000000 0.000000 0.000000  0  13 2071 1 1224979098644774912 31 2 1224979098644774912 0 12 1 1224979098644774913 1706 1 1224979098644774913 1704 1 1224979098644774913 1718 2 1224979098644774914 1224979098644774913 1507 1 1224979098644774914 1720 2 1224979098644774915 1224979098644774913 4 0 30 2 1224979098644774915 100 1721 2 1224979098644774913 100 3 0 3 0


[/spoiler]



有个变态的想法,给精英怪和BOSS添加个几百或上千上万的血量,突出特别之处,哈哈哈

随缘研究代码,随缘分享,有缘再见~哈哈哈




作者: 我没有四方钳    时间: 2022-4-23 00:11
提示: 作者被禁止或删除 内容自动屏蔽
作者: EMT    时间: 2022-4-23 07:46
让我看看      
作者: karl-leung    时间: 2022-4-23 14:19
潘德的5倍减伤可以全战团通用,已经很ok,之前的辉煌纪元和新时代就有过这个思路,当然可以期待大boss有20-30倍血量应该还是很好玩
作者: 世界第一土匪    时间: 2022-4-23 15:49
6666666666666666
作者: ligang009    时间: 2022-4-23 19:30
666666666
作者: wq1264417900    时间: 2022-4-23 21:30
6666666666
作者: zrcs    时间: 2022-4-23 22:43
可以啊,。。。。。。。。。。。。。。。。。。。。
作者: zrcs    时间: 2022-4-23 22:47
TXT码是敌我全部有效吗
作者: yanya178    时间: 2022-4-24 04:50
感谢分享
话说菁英怪没记错的话,作者好像有把力量调高的方式增加血量,虽说实际算起来也就几百而已
上万的话......考虑到通常菁英怪背后还有支大军,感觉会有点难打
不过以后期来说倒是个好挑战就是了

作者: chunbo3321    时间: 2022-4-25 14:27
试试看 有问题在反馈
作者: ju_hui    时间: 2022-4-25 15:37
66666666666666666666666

作者: 1505088500    时间: 2022-4-25 17:53
感谢楼主分享,刚刚逛中文站才看到这个帖子,一看还是3天前的,退出战场后恢复原始血量这个我刚好需要,可以看看这个返回血量的思路是怎么样的,这几天都在研究。
作者: 48102    时间: 2022-4-25 18:19
好玩好玩。。。。。。
作者: 1505088500    时间: 2022-4-25 19:14
本帖最后由 1505088500 于 2022-4-25 19:45 编辑

感谢楼主分享
作者: chunbo3321    时间: 2022-4-25 19:48
大神,我一直是你的粉丝,我不会PY,所以你的TXT文本修改我一直在用,获益匪浅,帮了大忙,提高了游戏的舒适型,非常感谢。
之前看到一个帖子,能通过修改大幅度减少战场卡顿,全MOD通用。里面只有PY修改办法但没有TXT修改办法。
大神如果抽空能研究出TXT修改办法分享给大家,那将是造福全人类的大好事呐  拜谢~~

原贴在此
https://bbs.mountblade.com.cn/thread-2086832-1-1.html
作者: yanmama    时间: 2022-4-25 21:17
啊啊啊啊啊啊啊啊啊啊
作者: 1350980578    时间: 2022-4-25 21:27
这个好,支持
作者: 咸鱼msg    时间: 2022-4-26 11:01
研究研究了
作者: 骑砍萌新酱    时间: 2022-4-26 16:00
然后把受攻击的后摇删了,再来个武器平砍范围顺劈,直接开始真骑砍无双
作者: 城陵静    时间: 2022-4-26 16:34
感谢分享。
作者: 狂野骑士    时间: 2022-4-26 18:40
人见人爱的代码,车见车载的无马
作者: zrcs    时间: 2022-4-26 22:37
仅玩家和友军NPC单位有效,可不可以让全体人员有效,包括敌军
作者: 1505088500    时间: 2022-4-27 13:20
本帖最后由 1505088500 于 2022-4-27 13:23 编辑

请问如何修改才能让玩家被俘虏不丢装备物品呢
作者: 1505088500    时间: 2022-4-27 19:53
本帖最后由 1505088500 于 2022-4-27 19:58 编辑
1505088500 发表于 2022-4-27 13:20
请问如何修改才能让玩家被俘虏不丢装备物品呢

只解决了原版的,其他mod还不知道怎么改。     
作者: aidan.xiao    时间: 2022-4-27 21:32
谢谢大佬,找了一天了
作者: mozhiwei96    时间: 2022-4-27 22:16
看看。
作者: 谢部    时间: 2022-4-28 02:04
相恨见晚,继续加油!
作者: aidan0304    时间: 2022-4-28 10:48
666666666666666666666666666
作者: 神兵    时间: 2022-4-29 00:00
本帖最后由 神兵 于 2022-4-29 00:05 编辑

不是,那个....应该是说,这个战场触发器要添加多少数字才合适
作者: skdnfns    时间: 2022-4-30 09:35
感谢楼主大大
作者: karl-leung    时间: 2022-5-1 09:54
zrcs 发表于 2022-4-26 22:37
仅玩家和友军NPC单位有效,可不可以让全体人员有效,包括敌军

https://bbs.mountblade.com.cn/thread-2063159-1-1.html

这个帖子第12点,经测试全部战团mod通用,不用新开档
作者: 达尔克内斯    时间: 2022-5-1 13:24
本帖最后由 达尔克内斯 于 2022-5-1 13:34 编辑

前设置不用这么麻烦,而且ti_after_mission_start这个时机对于获取刷兵来说不太好。
用ti_on_agent_spawn,可以获取到agent的id,然后agent_get_troop_id获取兵种id,再由store_agent_hit_points获取百分比就行。

作者: 三笠的艾伦    时间: 2022-5-1 15:19
达尔克内斯 发表于 2022-5-1 13:24
前设置不用这么麻烦,而且ti_after_mission_start这个时机对于获取刷兵来说不太好。
用ti_on_agent_spawn ...

感谢大佬的指点,这个办法省事很多,效率高
作者: zrcs    时间: 2022-5-1 20:58
karl-leung 发表于 2022-5-1 09:54
https://bbs.mountblade.com.cn/thread-2063159-1-1.html

这个帖子第12点,经测试全部战团mod通用,不 ...

那一行没有看见啊,加血是怎么计算的
作者: karl-leung    时间: 2022-5-2 07:18
本帖最后由 karl-leung 于 2022-5-2 07:21 编辑
zrcs 发表于 2022-5-1 20:58
那一行没有看见啊,加血是怎么计算的

12.增加NPC及其马匹的伤害减免
需要修改的文件
mission_templates.txt
1)将选择添加的战斗/战场下的触发器计数+1
(点击展开 / 收起)
mst_lead_charge-野战
mst_castle_attack_walls_defenders_sally-突围战
mst_castle_attack_walls_belfry-攻城塔围困
mst_castle_attack_walls_ladder-梯子围攻
mst_besiege_inner_battle_town_center-继续在院子里进行围攻行动
mst_besiege_inner_battle_castle-城堡大厅的攻城进攻继续
mst_sneak_caught_fight-试图潜入后被发现
mst_bandits_at_night-夜间伏击
mst_village_raid-村庄之战
mst_village_attack_bandits-强盗侵扰
mst_bandit_lair-强盗巢穴
mst_grandmaster_ambush-在城堡大厅伏击,开始宗师任务
mst_back_alley_revolt-收税时可能发生的城镇居民起义
mst_duel_with_lord-挑战领主决斗时

2)在触发器计数行之后,以新一行添加以下代码
仅NPC
(点击展开 / 收起)
-28.000000 0.000000 0.000000  0  11 2071 1 1224979098644774912 2073 1 1224979098644774913 1700 1 1224979098644774914 1704 1 1224979098644774912 1718 2 1224979098644774915 1224979098644774912 4 0 2147483679 2 1224979098644774912 1224979098644774914 1507 1 1224979098644774915 2108 2 1224979098644774913 5 3 0 2075 1 1224979098644774913

NPC及其马
(点击展开 / 收起)
-28.000000 0.000000 0.000000  0  21 2071 1 1224979098644774912 2073 1 1224979098644774913 2133 2 1224979098644774914 0 1700 1 1224979098644774915 4 0 1704 1 1224979098644774912 1718 2 1224979098644774916 1224979098644774912 2147483679 2 1224979098644774912 1224979098644774915 1507 1 1224979098644774916 2133 2 1224979098644774914 1 5 0 1715 2 1224979098644774917 1224979098644774912 30 2 1224979098644774917 0 1718 2 1224979098644774918 1224979098644774917 2147483679 2 1224979098644774917 1224979098644774915 1507 1 1224979098644774918 2133 2 1224979098644774914 1 3 0 31 2 1224979098644774914 1 2108 2 1224979098644774913 5 2075 1 1224979098644774913

5为减伤,可以改为任何整数
3)你也可以将这效果运用到自己
仅玩家角色(未触及的马匹):将11减2(11-> 9)
玩家角色和他的马:将21减3(21-> 18)
然后删除蓝色部分,确保在删除后留有一个空格。


-----------------------------------------------------------

5倍减伤应该就是敌攻击1/5伤害,全部npc包括敌大将硬了五倍

作者: holihon2012    时间: 2022-5-2 20:29
有意思,迫不及待回复一个。
作者: 878713253    时间: 2022-5-3 02:15
6666666666
作者: wjgub    时间: 2022-5-3 21:30
感谢楼主分享
作者: Demag    时间: 2022-5-5 14:42
6666666666666666
作者: lxw13768637483    时间: 2022-5-5 20:31

作者: 呃呃侠    时间: 2022-5-6 05:11
给哈狗和高后给哈狗和高后

作者: 不知道取名字    时间: 2022-5-7 12:50
顶一个        
作者: 纯洁的小希    时间: 2022-5-8 00:43
让我看看      

作者: 清慧    时间: 2022-5-8 15:45
66666666666
作者: 辐射老冰棍    时间: 2022-5-8 17:30
66666666666666
作者: asd01472580    时间: 2022-5-10 15:53
66666666666666有意思
作者: z534844267    时间: 2022-5-10 18:38
牛皮卡拉斯
作者: zixuhandi    时间: 2022-5-11 20:56
通用版(源码和TXT码) [修改]
作者: AIC-16    时间: 2022-5-13 21:13
大佬66666666
作者: 蒙苏特马君王    时间: 2022-5-14 02:34
学习了,感谢大佬 大佬牛逼
作者: 半年可期    时间: 2022-5-21 20:55
6666666666666666666
作者: 圣光十字骑士    时间: 2022-5-22 13:06
看起来不错
作者: 2229722617    时间: 2022-5-23 13:56
666666666666666666666666666666666666666666666666666666666666666666666666
作者: 58463267    时间: 2022-5-23 19:36
666、666.666

作者: yjq102201    时间: 2022-5-24 20:06
这个能用在1257AD上吗?
作者: zw881126    时间: 2022-5-24 22:10
我看看哈!!!!!!!!!!!!!!!!!!!!
作者: 仙之巅傲世间    时间: 2022-5-25 01:08
支持支持支持
作者: 哈劳斯他弟弟    时间: 2022-5-26 23:09
66666666666666666666666666666
作者: lalalamian    时间: 2022-5-27 21:35
大佬更新好快!!!!
作者: 撩刀凯歌    时间: 2022-5-30 15:05
多谢分享了
作者: yangfandna    时间: 2022-6-2 22:40
这个是所有单位都加血的吗
作者: Horizon    时间: 2022-6-2 23:09
ohhhhhhhhhhhh
作者: a7985770    时间: 2022-6-3 10:37
仅玩家和友军NPC单位有效,这几个字太打动人了
作者: MBzzk    时间: 2022-6-3 22:52
让我看看     
作者: 哒哒哒啦啦哒    时间: 2022-6-5 11:37
666666666666
作者: return19860510    时间: 2022-6-7 00:17
大神,一直奋斗在 潘德,致敬
作者: 柳凡    时间: 2022-6-7 10:54
加油。。。。。。。。
作者: Aomine Daiki    时间: 2022-6-8 16:01
文章很不错,补了奖励,不过本版区是不允许设置回复可见的哦,帮你取消了
作者: 三笠的艾伦    时间: 2022-6-9 13:42
Aomine Daiki 发表于 2022-6-8 16:01
文章很不错,补了奖励,不过本版区是不允许设置回复可见的哦,帮你取消了

好的,以后会注意。谢谢了
作者: 莫小为    时间: 2022-6-9 16:09
666666666666
作者: zrcs    时间: 2022-9-17 10:37
karl-leung 发表于 2022-5-1 09:54
https://bbs.mountblade.com.cn/thread-2063159-1-1.html

这个帖子第12点,经测试全部战团mod通用,不 ...

这个仅仅是增加NPC及其马匹的伤害减免,没有题目那个
作者: karl-leung    时间: 2022-9-17 11:17
zrcs 发表于 2022-9-17 10:37
这个仅仅是增加NPC及其马匹的伤害减免,没有题目那个

加君悦魔球那个铁骨回血就ok了
作者: zrcs    时间: 2022-9-17 12:38
karl-leung 发表于 2022-9-17 11:17
加君悦魔球那个铁骨回血就ok了

铁骨回血感觉加了游戏没有什么难度,NPC及其马匹的伤害减免,包括敌人的领主国王吗?其他MOD加入伤害减免应该不会出问题吧
作者: karl-leung    时间: 2022-9-20 09:44
zrcs 发表于 2022-9-17 12:38
铁骨回血感觉加了游戏没有什么难度,NPC及其马匹的伤害减免,包括敌人的领主国王吗?其他MOD加入伤害减免 ...

就是npc和敌将领全部5倍减伤,由于自己的npc有十几个甚至更多,所有中后期比改铁骨加血容易得多
作者: 2182270566    时间: 2022-12-21 14:29
大佬,这个能不能弄成加伤害的?
作者: gaoren9712    时间: 2023-3-21 08:47
是什么txt啊
作者: 冬枫and    时间: 2023-6-14 16:57
这个是真的赞提升了不少乐趣
作者: 变色龙先生    时间: 2023-7-7 09:32
大佬这代码怎么改成给敌人也增加血量
作者: 黑骑士彼得斯    时间: 2023-7-7 18:12
哈哈哈 大佬牛啊 是不是把agent is ally那句判定删了就可以对面boss也有额外血了呀
作者: 宁薇    时间: 2024-2-4 15:22
6666666666666




欢迎光临 骑马与砍杀中文站论坛 (https://bbs.mountblade.com.cn/) Powered by Discuz! X3.4