Feature/script type enhancement (#55)

This commit is contained in:
Zero Fanker 2024-06-27 12:24:51 +08:00 committed by GitHub
parent 321d0f0768
commit 9fe1849e72
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
10 changed files with 1243 additions and 635 deletions

View file

@ -31,7 +31,19 @@ RenderPlainHouseColor=yes
[ForceIsoPalettePrefix]
;===ScriptTemplates===
;X=UIName, Name, Count, Key 1 ,Value 1 , Key 2 ,Value 2 , ..., Key Count ,Value Count
;EMPTY will be considered as a CONST, with it FA2Copy will ignore the value
;By prry
[ScriptTemplates]
DefaultName=默认
Counts=5
1=两点间巡逻,New patrol 2 script,5,16,0,5,3,16,0,5,3,6,1
2=三点间巡逻,New patrol 3 script,7,16,0,5,3,16,0,5,3,16,0,5,3,6,1
3=四点间巡逻,New patrol 4 script,9,16,0,5,3,16,0,5,3,16,0,5,3,16,0,5,3,6,1
4=装载部队卸载攻击,New unload script,6,3,0,8,2,39,0,20,0,50,120,0,0
5=装载入载具并攻击,New load script,3,21,EMPTY,14,EMPTY,0,0
; not NOSURFACES:
;[BuildingVoxelTurretsRA2]
@ -943,6 +955,107 @@ vertic_cornerleft_0=21
47=Building,28
48=Number,0,2
[ScriptParams]
0=占位,0
1=目标,1
2=路径点,2
3=跳转至行#,3
4=分离小队,4
5=全局变量,5
6=脚本,6
7=小队,7
8=所属方,8
9=语音,9
10=音效,10
11=影片,11
12=音乐,12
13=国家,13
14=局部变量,14
15=朝向,15
16=建筑,16
17=动画,17
18=对话气泡,18
19=进入状态,19
20=整数,0
21=布尔,20
;Index=Name,ParamType,Obsolete,YROnly,Description
[ScriptsRA2]
0=0 - 攻击,1,0,1,攻击某类目标。
1=1 - 攻击路径点,2,0,1,攻击指定路径点(上的物体)。
2=2 - 暴走(无效),0,1,0,小队的半机械人成员会暴走(无效脚本)。
3=3 - 移动到路径点,2,0,1,移动到指定路径点。
4=4 - 移动到坐标,20,0,1,移动到坐标点 (int x+y*128)。
5=5 - 警戒(时间计数),20,0,1,区域警戒 X 秒。填5与计时器流逝5秒时间相同
6=6 - 脚本转到行号 #,3,0,1,跳转到脚本的第#行,用来循环。
7=7 - 玩家胜利,0,0,0,使玩家胜利。
8=8 - 卸载,4,0,1,所有有载员的运载单位卸客。命令参数可以分别指定两个部分是否依然是小队成员或者要离开小队。
9=9 - 部署,0,0,0,所有可部署单位进行部署。
10=10 - 跟随友军单位,0,0,0,令小队跟随最近的友军单位。
11=11 - 进入...状态,19,0,1,小队所有成员执行指定任务。
12=12 - 设置全局变量,5,0,1,设置一个全局变量。
13=13 - 进入空闲动画,0,0,0,让小队中的步兵单位闲置(播放闲置动画)
14=14 - 装载入运输载具,0,0,0,让所有单位进入运输载具(如果可能的话)
15=15 - 间谍进入路径点的建筑物,0,1,0,(废弃脚本)
16=16 - 巡逻至路径点,2,0,1,小队成员移动攻击到指定路径点。
17=17 - 更改应用脚本,6,0,1,让小队使用新的脚本参数为动作脚本ID
18=18 - 更改小队,7,0,1,让小队更改小队类型参数为作战小队ID
19=19 - 惊慌,0,0,0,让小队所有单位惊慌。
20=20 - 更改所属方,13,0,1,小队成员全部更改为所属方(参数为所属方编号)
21=21 - 分散,0,0,0,让所有单位分散。
22=22 - 进入周围的黑幕,0,0,0,让所有单位逃到有黑幕的地方。
23=23 - 玩家失败,0,0,0,使玩家失败。
24=24 - 播放语音,9,0,1,播放特定的语音文件。
25=25 - 播放音效,10,0,1,播放特定的音效文件。
26=26 - 播放电影,11,0,1,播放特定的电影文件。
27=27 - 播放音乐,12,0,1,播放特定的音乐文件。
28=28 - 减少矿石,0,0,0,减少小队成员周围的矿石数量。
29=29 - 开始生产,0,0,0,让所属方开始生产。
30=30 - 变卖乌拉,0,0,0,让AI所属方变卖所有建筑并进行最后总攻。
31=31 - 小队自毁,0,0,0,让该小队所有成员自毁。
32=32 - 闪电风暴开始(延时),20,0,1,经过指定的时间后开始闪电风暴。
33=33 - 闪电风暴结束,0,0,0,使闪电风暴结束。
34=34 - 镜头聚焦小队,20,0,1,镜头聚焦小队(参数为速度)
35=35 - 重置地图黑幕,0,0,0,重置地图黑幕。
36=36 - 显示全地图,0,0,0,显示全地图。
37=37 - 删除小队成员,0,0,0,删除该小队所有成员。
38=38 - 清除全局变量,5,0,1,清除指定全局变量。
39=39 - 设置局部变量,14,0,1,设置指定局部变量。
40=40 - 清除局部变量,14,0,1,清除指定局部变量。
41=41 - 镇定,0,0,0,使所有小队成员停止惊慌。
42=42 - 强制面向,15,0,1,强制小队成员面向一个特定的方向。
43=43 - 等待到满载,0,0,0,等到所有运输器满载。
44=44 - 卡车卸载,0,0,0,让所有卡车卸载箱子(即改变类型为未装载单位)
45=45 - 卡车装载,0,0,0,让所有卡车装载箱子(即改变类型为装载的单位)
46=46 - 攻击敌方建筑物,16,0,1,攻击指定类型的建筑,参数为建筑序号,额外参数可以用于指定搜索目标时的策略。
47=47 - 移动到敌方建筑物,16,0,1,移动到指定类型的建筑,参数为建筑序号+系数(+0攻击威胁值最小的+65536 :攻击威胁值最大的,+131072攻击距离最近的+262144攻击距离最远的
48=48 - 侦察,0,0,0,小队会侦察玩家未探索的区域。
49=49 - 成功,0,0,0,记录小队完成了任务。用于AI触发分量(权重)。在每一个AI触发后添加此行为。
50=50 - 闪烁,20,0,1,闪烁小队一段时间(参数为闪烁的帧数)
51=51 - 播放动画,17,0,1,在每个小队单位上播放动画。
52=52 - 对话气泡,18,0,1,在小队第一个单位上显示对话气泡。
53=53 - 敌方基地外集合,20,0,1,在敌方基地安全距离外集合。Ares2.0起数值参数的正负将影响Rulesmd全局中安全距离 (AISafeDistance=) 的伸长或缩短。
54=54 - 己方基地外集合,20,0,1,在己方基地一定距离外集合。Ares2.0起数值参数的正负将影响Rulesmd全局中「友军基地」安全距离 (AIFriendlyDistance=不存在这条则用AISafeDistance=) 的伸长或缩短。
55=55 - 请求超武...,20,0,1,请求小队所属方对当前小队使用超级武器默认为铁幕。Ares2.0起数值参数决定AI使用哪一组超武对应SW.Group=默认为0
56=56 - 超时空传送至建筑,16,0,1,若所属方超时空传送就绪,将该小队超时空传送至特定建筑。但是此后需要额外使用攻击命令。
57=57 - 超时空传送至目标,1,0,1,若所属方超时空传送就绪,将该小队超时空传送至目标。但是此后需要额外使用攻击命令。
;YR Only
58=58 - 移动到己方建筑,16,0,1,移动到友方的特定建筑,额外参数可以用于指定搜索目标时的策略
59=59 - 攻占路径点上的建筑,2,0,1,攻击占据该路径点的建筑物。AI单位通常会优先尝试驻扎若能
60=60 - 进入回收厂,0,0,0,让小队进入该所属方就近的部队回收厂。
61=61 - 进入坦克碉堡,0,0,0,让小队的每个单位进入空的坦克碉堡。
62=62 - 进入生化反应炉,0,0,0,让小队进入生化反应炉。
63=63 - 进入战斗碉堡,0,0,0,让小队进入战斗碉堡。
64=64 - 进入可驻军建筑,0,0,0,让小队进驻中立建筑物。
;Hares Only
65=65 - 攻击特定类型的单位,20,0,1,攻击特定类型的科技单位数值为全局TeamTargetTechnoTypes列表中的序号从0开始
66=66 - 驻扎路径点位置的建筑,2,0,1,派遣步兵单位驻扎路径点位置的建筑如果有不区分小队所属是人类或AI玩家。
67=67 - 摄像机视角跟随,20,0,1,激活/取消摄像机追逐视角设置为该小队成员(所有成员都会标记为跟随,多成员小队慎用)。
68=68 - 小队成员被玩家选中,20,0,1,激活/取消设置该小队成员为选中状态(所有成员都会标记为选中)。
69=69 - 上一脚本执行成功,20,0,1,上一次脚本执行结果为成功
70=70 - 上一脚本执行失败,20,0,1,上一次脚本执行结果为失败
71=71 - 等待N游戏秒,20,0,1,等待N游戏秒以保证上一条脚本执行完毕
[DontSaveAsWP] ; which code values indicate that the waypoint param must be saved as normal integer?
0=5
1=9

View file

@ -1346,6 +1346,7 @@ TriggerOptionDisableTip=被禁止的触发必须由其它触发激活后才能
; team scripts
ScriptTypesAddScript=添加
ScriptTypesCopyScript=复制
ScriptTypesDelScript=删除
ScriptsCaption=小队脚本
ScriptTypesDesc=脚本类型允许你定义如一作战小队从一个路径点移动到另一路径点。一个脚本类型与小队类型相关联(不是特遣部队!)\n欲应用模板请在下拉列表里选中一个预置模板然后点击“新建”。\n如果预置列表里啥都没有可以点击“刷新”以重新载入。
@ -1355,8 +1356,12 @@ ScriptTypesActions=行为:
ScriptTypesActionType=行为类型:
ScriptTypesActionParam=行为参数:
ScriptTypesAddAction=添加
ScriptTypesCopyAction=复制
ScriptTypesDelAction=删除
ScriptTypesInsertMode=插入模式
ScriptTypesActionDesc=说明:
ScriptTypesSelectedTemplate=模板:
ScriptTypesParamExtDesc=附加参数:
; iso view
IsoCaption=地图视图
@ -1506,6 +1511,72 @@ InfP5=允许AI重组::
; ScriptTypesDelScript=确定删除脚本吗?该操作不能撤销
; Now some translations from english to the used language (used for some combo-boxes, menus/listviews and of course unit names)
; currently used for: menu, iso-view status bar, unit/building/stuff list, overlay browser, terrain browser
; Do Something
0 - Sleep=0 - 休眠
1 - Attack nearest enemy=1 - 攻击最近的敌人
2 - Move=2 - 移动
3 - QMove=3 - 快速移动
4 - Retreat home for R&R=4 - 撤离地图
5 - Guard=5 - 警戒
6 - Sticky (never recruit)=6 - 原地锁定(避免招募)
7 - Enter object=7 - 进入物体
8 - Capture object=8 - 占领物体
9 - Move into & get eaten=9 - 进入并被吸收
10 - Harvest=10 - 采矿
11 - Area Guard=11 - 区域警戒
12 - Return (to refinery)=12 - 返回(矿厂)
13 - Stop=13 - 停止
14 - Ambush (wait until discovered)=14 - 埋伏(等待被发现)
15 - Hunt=15 - 穷追不舍
16 - Unload=16 - 卸载/部署
17 - Sabotage (move in & destroy)=17 - 爆破(进入并摧毁)
18 - Construction=18 - 建造状态
19 - Deconstruction=19 - 变卖状态
20 - Repair=20 - 维修
21 - Rescue=21 - 救援
22 - Missile=22 - 发射
23 - Harmless=23 - 无害化
24 - Open=24 - (闸门)开启
25 - Patrol=25 - 巡逻
26 - Paradrop approach drop zone=26 - 找位置空投
27 - Paradrop overlay drop zone=27 - 空投结束离开
28 - Wait=28 - 等待
29 - Attack again=29 - 再次攻击
30 - Spyplane approach=30 - 侦察机侦查
31 - Spyplane retreat=31 - 侦察机离开
; Facings
0 - NE=0 - 东北
1 - E=1 - 东
2 - SE=2 - 东南
3 - S=3 - 南
4 - SW=4 - 西南
5 - W=5 - 西
6 - NW=6 - 西北
7 - N=7 - 北
; Talk Bubble
0 - None=0 - 无
1 - Asterisk(*)=1 - 星号(*
2 - Question mark(?)=2 - 问号(?
3 - Exclamation mark(!)=3 - 感叹号(!
; Unload passenger
0 - Keep Transports, Keep Units=0 - 保留载具和乘客
1 - Keep Transports, Lose Units=1 - 保留载具,解散乘客
2 - Lose Transports, Keep Units=2 - 解散载具,保留乘客
3 - Lose Transports, Lose Units=3 - 载具和乘客都解散
; Building Target Extra Param
0 - Least threat=0 - 最小威胁
1 - Most threat=1 - 最大威胁
2 - Least distant=2 - 最近距离
3 - Most distant=3 - 最远距离
; Target
1 - Not specified=1 - 任意
2 - Buildings=2 - 建筑
3 - Harvesters=3 - 矿车/矿厂
4 - Infantry=4 - 步兵
5 - Vehicles=5 - 载具
6 - Factories=6 - 工厂
7 - Base defenses=7 - 防御建筑
9 - Power plants=9 - 电厂
Tiberium=矿石
Run Tiberian Sun=运行尤里的复仇