《骑马与砍杀》村庄招募player的bug修复
村庄招募player的bug修复
以liberty or death为例,打开scripts.txt,查找cf_village_recruit_volunteers_cond,得到
cf_village_recruit_volunteers_cond -1
12 2147484189 3 144115188075855974 35 2 2147484189 3 144115188075855974 35 1 2147484209 3 144115188075855974 39 1 2204 2 1224979098644774912 144115188075855974 521 3 1224979098644774913 144115188075855974 26 30 2 1224979098644774913 0 1073741854 2 1224979098644774913 5 1073741855 2 1224979098644774912 144115188075856219 31 2 144115188075856219 0 561 3 144115188075855974 93 0 1633 2 1224979098644774914 648518346341351424 30 2 1224979098644774914 1
修改为
cf_village_recruit_volunteers_cond -1
13 2147484189 3 144115188075855972 35 2 2147484189 3 144115188075855972 35 1 2147484209 3 144115188075855972 39 1 2204 2 1224979098644774912 144115188075855972 521 3 1224979098644774913 144115188075855972 26 30 2 1224979098644774913 0 1073741854 2 1224979098644774913 5 1073741855 2 1224979098644774912 144115188075856217 31 2 144115188075856217 0 561 3 144115188075855972 93 0 561 3 144115188075855972 92 1 1633 2 1224979098644774914 648518346341351424 30 2 1224979098644774914 1
原理:
在原版module_scripts.py中,有如下代码:
("cf_village_recruit_volunteers_cond", #村庄征募志愿兵条件
[(neg|party_slot_eq, "$current_town", slot_village_state, svs_looted),
(neg|party_slot_eq, "$current_town", slot_village_state, svs_being_raided),
(neg|party_slot_ge, "$current_town", slot_village_infested_by_bandits, 1),
(store_faction_of_party, ":village_faction", "$current_town"),
(party_get_slot, ":center_relation", "$current_town", slot_center_player_relation),
(ge, ":center_relation", 0),
(this_or_next|ge, ":center_relation", 5),
(this_or_next|eq, ":village_faction", "$players_kingdom"),
(eq, "$players_kingdom", 0),
(party_slot_ge, "$current_town", slot_center_volunteer_troop_amount, 0),
(party_slot_ge, "$current_town", slot_center_volunteer_troop_type, 1), #控制可征兵种类
(party_get_free_companions_capacity, ":free_capacity", "p_main_party"),
(ge, ":free_capacity", 1),
]),
若缺少红色的语句,则出现招募到player的bug,原理不详;
把加粗的1改为2,则可招募到2级兵,估计是控制可征兵种数目,未经严格测试
这样修改后征募2级兵的价格与1级兵相同,问能不能写一段代码,根据等级计算志愿兵价格?