欢迎光临散文网 会员登陆 & 注册

钢铁雄心4模组教程--变量@1

2021-08-17 07:52 作者:青枫留念  | 我要投稿

钢铁雄心4的变量机制和p社游戏的变量机制大差不差,一般在做普通(简单)Mod的情况下一般用不到(当仅仅制作精神,国策,效果性事件,增益决议等),但是想弄点花花事或者做一些看起来比较好玩的内容的时候,变量,数组与动态变量等等就有比较重要的效果了。例如kr和tno等mod都是需要大量变量来支撑效果,所以我根据我做了很短时间mod的经验来把变量的作用和使用方法按照我所了解的范围写一写。


由于该教程主要侧重变量等内容与实际操作,所以其他教程内容将不进行重要说明。


变量(Variables)是我们在 钢铁雄心4 1.5.0,中添加的强大系统。它使内容设计者能够在不同位置存储数字(“value”)并在效果(effect)/触发器(triggers)中使用它们。

有 4 个范围可以存储变量

  • 国家(Country)

  • 状态(State)

  • 单位负责人(Unit Leader)

  • 全球的(global)

每个国家、州和单位领导都有自己的变量列表。这说明我们可以在对应的国家,地块,将领,单位等赋值专门的变量。全局作用域(Global Variables)是唯一的,应该用于存储在全局(整个游戏-当前存档进程)意义上有意义的变量,而不是特定于某个国家的变量。


(一)访问变量

在各种效果(effect)/触发器(triggers)中,您将通过为其命名来访问变量。变量名不区分大小写,除了一些特殊字符外,您可以使用任何您想要的字符。尽管为了一致性和未来证明,请避免使用除“_”以外的数字和特殊字符

默认情况下,您将访问当前范围内的变量。如果要访问特定范围或不同范围内的变量,可以使用以下命令:

1.以国家(TAG)为目标范围访问变量

ENG.var_name 访问ENG的变量(var)

其中ENG为国家tag

var_name访问的是以ENG为目标 存储的变量

格式为TAG.var_name


两个例子

1.提前设定效果作用域为国家ENG

  1. effect = {

  2. ENG = {

  3. set_variables = { has_good = 100 }

  4. add_political_power =  has_good

  5. }

  6. }

2.在变量中设置国家ENG为目标的变量

  1. effect = {

  2. set_variables = { ENG.has_good = 100 }

  3. ENG = { add_political_power =  has_good }

  4. }

这样英国的政治点数就加了100点

2.以地块id(State ID)为目标范围访问变量

42.var_name 访问地块ID为42的变量(var)

其中42为地块ID

var_name访问的是以地块id为目标 存储的变量

格式为State_id.var_name


3.全局(Global)变量

global.var_name 访问以游戏存档进程为目标的变量(var)

global 代表全局

格式为global.var_name

例子:

  1. Effect = {

  2. set_variables = { global.has_good = 100 }

  3. ENG =  { add_political_power =  global.has_good }

  4. GER = { add_political_power =  global.has_good }

  5. every_country = {

  6. limit = {

  7. has_political_power > 10

  8. AND= {

  9. OR = {

  10. tag = ENG

  11. tag = GER

  12. }

  13. }

  14. }

  15. add_political_power =  global.has_good

  16. }

  17. }

  18. }

4.以作用域为目标的变量(var)

您可以使用 ROOT、PREV 或 FROM等令牌访问不同范围内的变量

  • ROOT.var_name

  • PREV.var_name

  • FROM.var_name

  • THIS.var_name

  1. ROOT ---瞄准此效果(effect)或触发器(triggers)所在的根(root)(脚本进入的第一个范围/该作用域触发器的第一个国家或者范围)国家,无论这是什么其他范围

  2. THIS ---以当前范围为目标,即为当前的触发器范围的结果为目标

  3. PREV ---以上一个范围为目标

  4. FROM ---在决议,这适用于目标触发决策的目标。在事件,这适用于向您发送此事件


钢铁雄心4模组教程--变量@1的评论 (共 条)

分享到微博请遵守国家法律