- 好友
 - 3
  
- 在线时间
 - 27 小时
  
- 最后登录
 - 2025-11-3
  
 
 
 
 
贵族[MOD作者] 
    
- UID
 - 3048044
  
- 第纳尔
 - 2234 
  
- 精华
 - 0
  
- 互助
 - 21 
  
- 荣誉
 - 3 
  
- 贡献
 - 20 
  
- 魅力
 - 516 
  
- 注册时间
 - 2018-12-15
  
 
  鲜花( 45)   鸡蛋( 0)  
 | 
 
 本帖最后由 黑暗路西法 于 2022-7-30 16:39 编辑  
 
大家好啊,我是胖虎,今天来点大家想看的东西啊 
这是一个集中式使用slot的私兵添加(不是部队模板,而是直接增加到部队里) 
 
首先在constant里搜索slot_troop_will_join_prison_break(我的1153版本py是troopslot里的编号161,他后面的下一个编号是165,所以这三个新slot可以加在中间,如果版本不同建议检查一下数字是否相同,避免和其他编号相同的问题)在后面加上 
slot_lord_personal_troop     =     162 
slot_lord_personal_troop_number     =     163 
slot_lord_personal_troop_add     =     164 
 
分别为私兵兵种,私兵最大数量,每一次补员的数量 
如果你觉得每个领主一种私兵不够,你可以继续在后面添加,记住三个slot为一组就可以了 
 
接下来打开script搜索item_info,找到这个script之后在顶部添加操作符(因为这个脚本只在开头跑一遍,你新写脚本在gamestart那里调用也不是不可以)(如果小白的话添加位置是给那些item的slot赋值前面,即#Staples上方) 
例如给哈劳斯国王添加斯瓦迪亚骑士作为私兵就是 
      (troop_set_slot,"trp_kingdom_1_lord",slot_lord_personal_troop , "trp_swadian_knight"),   #哈劳斯国王的私兵为斯瓦迪亚骑士 
      (troop_set_slot,"trp_kingdom_1_lord",slot_lord_personal_troop_number , 30),      #哈劳斯国王只有在队伍中少于30个骑士的时候才会补充骑士 
      (troop_set_slot,"trp_kingdom_1_lord",slot_lord_personal_troop_add , 2),     #每次补员回复两个骑士 
 
 
如果你想添加二号私兵可以接着用新的slot例如slot_lord_personal_troop_2这样的,改slot名字和上面说那个“三个一组”对应就可以了 
 
触发可以直接加在simple trigger底部的 ] 前面(因为这个触发器没有条件而且是即时的) 
  (48,                       #两天触发一次 
  [   
        (try_for_range, ":hero_troop", "trp_npc1", "trp_kingdom_6_pretender"),           #检查范围第一个npc到最后一个复国者 
            (troop_get_slot,":hero_troop_p",":hero_troop",slot_lord_personal_troop), 
            (gt,":hero_troop_p",0),                     #如果此人有私兵 
 
           (try_for_parties,":party_no"),                   鸣谢 @奥杜因阿卡托什  @112233lyh  
              (party_get_num_companion_stacks,":num_stack",":party_no"), 
              (try_for_range,":stack_no",0,":num_stack"), 
                 (party_stack_get_troop_id,":member_no",":party_no",":stack_no"), 
                 (eq,":member_no",":hero_troop_p"), 
                 (assign, ":target_party", ":party_no"), 
              (try_end), 
 
           (try_end), 
                 (assign, reg0, ":party_no"),          #寻找此人的部队 
            (party_count_companions_of_type,":var_3",reg0,":hero_troop_p"), 
            (troop_get_slot,":var_2", ":hero_troop", slot_lord_personal_troop_number), 
            (gt, ":var_2",":var_3"),   #如果部队中私兵的数量小于预期值 
            (troop_get_slot,":hero_troop_a",":hero_troop",slot_lord_personal_troop_add),    
            (party_add_members,reg0,":hero_troop_p",":hero_troop_a"),               #为部队添加每次补员数的私兵 
       (try_end),  
          ]), 
这个代码的优势是对其他领主和角色进行私兵添加时只需要给他们增加slot就可以了,不需要做更改其他参数甚至新建触发器这样的累活 
 
 
 
 
 
 |   
 
评分
- 
查看全部评分
 
 
 
鲜花鸡蛋幼稚园殺手  在2022-7-28 20:48   送朵鲜花  并说:我非常同意你的观点,送朵鲜花鼓励一下   
 
 |