Black Ops 3 Source Code Explorer
0.1
An script explorer for Black Ops 3 by ZeRoY
archetype_robot.gsh
Go to the documentation of this file.
1
//
3
// Tweakables
4
//
6
7
// Chance that a destructible piece will gib off when the robot is
8
// killed, regardless of hitlocation, this applies to all pieces. (0, 1)
9
#define ROBOT_DESTRUCT_DEATH_CHANCE 0.2
10
11
// Maximum number of destructible pieces that will randomly gib off
12
// when the robot is killed.
13
#define ROBOT_DESTRUCT_MAX_DEATH_PIECES 2
14
15
// Percentage of health before robot arms and head can be gibbed off.
16
// Valid float range (0, 1)
17
#define ROBOT_GIB_HEALTH_THRESHOLD 0.75
18
19
// Chance the robot's head will gib off when killed with a headshot.
20
// Valid float range (0, 1)
21
#define ROBOT_GIB_HEAD_HEADSHOT_CHANCE 1
22
23
// Chance the robot's head will gib off when damaged with an explosion.
24
// Valid float range (0, 1)
25
#define ROBOT_GIB_HEAD_EXPLOSION_CHANCE 0.5
26
27
// Chance the robot's head will gib off when dealth a fatal blow.
28
#define ROBOT_GIB_HEAD_DEATH_CHANCE 0.25
29
30
// Percentage of health before the robots leg can be gibbed off. (0, 1)
31
#define ROBOT_GIB_LEG_HEALTH_THRESHOLD 0.25
32
33
// Chance the robot's legs will gib off when killed with a leg shot.
34
// Valid float range (0, 1)
35
#define ROBOT_GIB_LEGS_CHANCE 1
36
37
// Chance the robot's legs will gib off randomly when killed (0, 1)
38
#define ROBOT_GIB_LEGS_DEATH_CHANCE 0.25
39
40
// Chance the robot's legs will gib off when killed with an explosion.
41
// Valid float range (0, 1)
42
#define ROBOT_GIB_LEGS_EXPLOSION_CHANCE 0.5
43
44
// Chance the robot's limb will gib off when killed with an explosion. (0, 1)
45
#define ROBOT_GIB_LIMB_EXPLOSION_CHANCE 0.25
46
47
// Chance the robot's limb will gib off when killed with a limb shot. (0, 10
48
#define ROBOT_GIB_LIMB_DEATH_CHANCE 0.25
49
50
// Chance the robot will choose a cover position over an exposed position.
51
#define ROBOT_CHOOSE_COVER_CHANCE 0.75
52
53
// Minimum amount of time in seconds robots will step out of cover for.
54
#define MIN_EXPOSED_TIME 4
55
56
// Maximum amount of time in seconds robots will step out of cover for.
57
#define MAX_EXPOSED_TIME 8
58
59
// Damage modifier when robots are shot in the head.
60
#define ROBOT_HEADSHOT_MULTIPLIER 0.5
61
62
// Damage modifier when robots are shot in the back.
63
#define ROBOT_BACKSHOT_MULTIPLIER 2
64
65
// Time in milliseconds robots will remain exposed after being shot when popping out of cover.
66
#define ROBOT_RESUME_COVER_TIME 4000
67
68
// Robot must be within this distance to their enemy to cause them to juke.
69
#define ROBOT_JUKE_MAX_DISTANCE 1200
70
71
// Robot must be within this distance to their enemy to preemptive juke
72
#define ROBOT_JUKE_PREEMPTIVE_MAX_DISTANCE 600
73
74
// Robot must be within this distance to their attacker to become a crawler.
75
#define ROBOT_CRAWL_MAX_DISTANCE (600 * 600)
76
77
#define ROBOT_INVALID_COVER_DISTANCE 240
78
79
// Robots must be at least this distance away from their enemy to become a rusher.
80
#define ROBOT_RUSHER_DISTANCE_SQ (600 * 600)
81
82
// Robots within this distance may turn into rushers, if their fellow robot dies.
83
#define ROBOT_RUSHER_NEIGHBOR_DISTANCE_SQ (400 * 400)
84
85
// Robots' whose enemy is further than this distance will not be considered for rushing.
86
#define ROBOT_RUSHER_MAX_ENEMY_DISTANCE_SQ (1200 * 1200)
87
88
// Robots will walk to positions even within sprint range if the path is shorter than this.
89
#define ROBOT_WALK_MIN_DISTANCE 240
90
91
// Robots will start to super sprint outside this distance to their target.
92
#define ROBOT_SUPER_SPRINT_DISTANCE 300
93
94
// Amount of time robots will stay inactive after being damaged by an emp.
95
#define ROBOT_EMP_SHUTDOWN_TIME 2000
96
98
//
99
// Robot Grunt Defines
100
//
102
103
#define ROBOT_HEIGHT 72
104
105
#define ROBOT_DIAMETER 30
106
107
#define ROBOT_NAVMESH_TOLERANCE 200
108
109
#define ROBOT_NAVMESH_MAX_TOLERANCE_LEVELS 4
110
111
#define ROBOT_OFF_COVER_NODE_MIN_DISTANCE 60
112
113
#define ROBOT_OFF_COVER_NODE_MAX_DISTANCE 400
114
115
#define ROBOT_DETONATION_RANGE 60
116
117
#define ROBOT_DETONATION_INNER_DAMAGE 100
118
119
#define ROBOT_DETONATION_OUTER_DAMAGE 50
120
121
#define ROBOT_DETONATION_DAMAGE_TYPE "MOD_EXPLOSIVE"
122
123
#define ROBOT_POSITION_QUERY_RADIUS 20
124
125
#define ROBOT_POSITION_QUERY_MOVE_DIST_MAX 120
126
127
#define ROBOT_MINI_RAPS_MODEL "veh_t7_drone_raps_mini"
128
129
#define ROBOT_MINI_RAPS_SPAWNER "spawner_bo3_mini_raps"
130
131
#define ROBOT_MINI_RAPS_LINK_TO_BONE "j_spine4"
132
133
#define ROBOT_MINI_RAPS_OFFSET_POSITION ( 10, -10, -6 )
134
135
#define ROBOT_MINI_RAPS_AUTO_DETONATE_MIN_TIME 20
136
137
#define ROBOT_MINI_RAPS_AUTO_DETONATE_MAX_TIME 30
138
139
#define ROBOT_PAUSE_TACTICAL_WALK 500
140
141
#define ROBOT_JUKE_DISTANCE 90
142
143
#define ROBOT_TACTICAL_JUKE_RADIUS 50
144
145
#define ROBOT_RUSHER_MIN_RADIUS 150
146
147
#define ROBOT_RUSHER_MAX_RADIUS 250
148
149
#define ROBOT_ESCORT_MIN_RADIUS 75
150
151
#define ROBOT_ESCORT_MAX_RADIUS 150
152
154
//
155
// Clientfields
156
//
158
159
#define ROBOT_MIND_CONTROL_CLIENTFIELD "robot_mind_control"
160
#define ROBOT_MIND_CONTROL_BITS 2
161
#define ROBOT_MIND_CONTROL_TYPE "int"
162
#define ROBOT_MIND_CONTROL_LEVEL_0 0
163
#define ROBOT_MIND_CONTROL_LEVEL_1 1
164
#define ROBOT_MIND_CONTROL_LEVEL_2 2
165
#define ROBOT_MIND_CONTROL_LEVEL_3 3
166
167
#define ROBOT_MIND_CONTROL_EXPLOSION_CLIENTFIELD "robot_mind_control_explosion"
168
#define ROBOT_MIND_CONTROL_EXPLOSION_BITS 1
169
#define ROBOT_MIND_CONTROL_EXPLOSION_TYPE "int"
170
#define ROBOT_MIND_CONTROL_EXPLOSION_OFF 0
171
#define ROBOT_MIND_CONTROL_EXPLOSION_ON 1
172
173
#define ROBOT_EMP_CLIENTFIELD "robot_EMP"
174
#define ROBOT_EMP_BITS 1
175
#define ROBOT_EMP_TYPE "int"
176
#define ROBOT_EMP_OFF 0
177
#define ROBOT_EMP_ON 1
178
179
#define ROBOT_LIGHTS_CLIENTFIELD "robot_lights"
180
#define ROBOT_LIGHTS_BITS 3
181
#define ROBOT_LIGHTS_TYPE "int"
182
#define ROBOT_LIGHTS_ON 0
183
#define ROBOT_LIGHTS_FLICKER 1
184
#define ROBOT_LIGHTS_OFF 2
185
#define ROBOT_LIGHTS_HACKED 3
186
#define ROBOT_LIGHTS_DEATH 4
187
189
//
190
// FX
191
//
193
194
#define ROBOT_HEAD_GIB_FX "fx_dest_robot_head_sparks"
195
#define ROBOT_HEAD_GIB_FX_FILE "destruct/fx_dest_robot_head_sparks"
196
#define ROBOT_HEAD_GIB_FX_TAG "j_neck"
197
198
#define ROBOT_MIND_CONTROL_EXPLOSION_FX "fx_exp_robot_stage3_evb"
199
#define ROBOT_MIND_CONTROL_EXPLOSION_FX_FILE "explosions/fx_exp_robot_stage3_evb"
200
#define ROBOT_MIND_CONTROL_EXPLOSION_FX_TAG "j_spineupper"
201
202
#define ROBOT_EMP_FX "fx_ability_elec_surge_short_robot"
203
#define ROBOT_EMP_FX_FILE "electric/fx_ability_elec_surge_short_robot"
204
#define ROBOT_EMP_FX_TAG "j_spine4"
205
206
#define ROBOT_FX_BASE(entity) entity.fxdef
207
#define ROBOT_FX_BASE_FLICKER(entity) entity.altfxdef3
208
#define ROBOT_FX_DEATH(entity) entity.deathfxdef
209
#define ROBOT_FX_ROGUE_LEVEL_1(entity) entity.altfxdef1
210
#define ROBOT_FX_ROGUE_LEVEL_1_FLICKER(entity) entity.altfxdef4
211
#define ROBOT_FX_ROGUE_LEVEL_2(entity) entity.altfxdef1
212
#define ROBOT_FX_ROGUE_LEVEL_2_FLICKER(entity) entity.altfxdef4
213
#define ROBOT_FX_ROGUE_LEVEL_3(entity) entity.altfxdef2
214
#define ROBOT_FX_ROGUE_LEVEL_3_FLICKER(entity) entity.altfxdef5
scripts
shared
ai
archetype_robot.gsh
Generated by
1.8.17