sc2ai 0.2.0 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (69) hide show
  1. checksums.yaml +4 -4
  2. data/data/sc2ai/protocol/common.proto +5 -5
  3. data/data/sc2ai/protocol/data.proto +22 -22
  4. data/data/sc2ai/protocol/debug.proto +24 -24
  5. data/data/sc2ai/protocol/error.proto +216 -215
  6. data/data/sc2ai/protocol/raw.proto +20 -20
  7. data/data/sc2ai/protocol/sc2api.proto +111 -111
  8. data/data/sc2ai/protocol/score.proto +3 -3
  9. data/data/sc2ai/protocol/spatial.proto +5 -5
  10. data/data/sc2ai/protocol/ui.proto +16 -16
  11. data/exe/sc2ai +0 -3
  12. data/lib/docker_build/Dockerfile.ruby +2 -2
  13. data/lib/sc2ai/api/data.rb +3 -3
  14. data/lib/sc2ai/connection/connection_listener.rb +3 -3
  15. data/lib/sc2ai/connection/requests.rb +31 -35
  16. data/lib/sc2ai/connection/status_listener.rb +1 -1
  17. data/lib/sc2ai/connection.rb +2 -3
  18. data/lib/sc2ai/local_play/client/configurable_options.rb +6 -7
  19. data/lib/sc2ai/local_play/client.rb +3 -3
  20. data/lib/sc2ai/local_play/match.rb +7 -2
  21. data/lib/sc2ai/paths.rb +12 -2
  22. data/lib/sc2ai/player/actions.rb +54 -35
  23. data/lib/sc2ai/player/debug.rb +21 -21
  24. data/lib/sc2ai/player/game_state.rb +11 -18
  25. data/lib/sc2ai/player/geo.rb +54 -64
  26. data/lib/sc2ai/player/units.rb +16 -16
  27. data/lib/sc2ai/player.rb +103 -41
  28. data/lib/sc2ai/ports.rb +1 -1
  29. data/lib/sc2ai/protocol/_meta_documentation.rb +265 -265
  30. data/lib/sc2ai/protocol/common_pb.rb +3865 -15
  31. data/lib/sc2ai/protocol/data_pb.rb +9109 -18
  32. data/lib/sc2ai/protocol/debug_pb.rb +10437 -26
  33. data/lib/sc2ai/protocol/error_pb.rb +1086 -10
  34. data/lib/sc2ai/protocol/extensions/ability_remapable.rb +9 -9
  35. data/lib/sc2ai/protocol/extensions/action.rb +60 -0
  36. data/lib/sc2ai/protocol/extensions/point_2_d.rb +5 -0
  37. data/lib/sc2ai/protocol/extensions/position.rb +10 -35
  38. data/lib/sc2ai/protocol/extensions/power_source.rb +3 -0
  39. data/lib/sc2ai/protocol/extensions/unit.rb +19 -35
  40. data/lib/sc2ai/protocol/query_pb.rb +5025 -17
  41. data/lib/sc2ai/protocol/raw_pb.rb +18350 -27
  42. data/lib/sc2ai/protocol/sc2api_pb.rb +48420 -93
  43. data/lib/sc2ai/protocol/score_pb.rb +5968 -12
  44. data/lib/sc2ai/protocol/spatial_pb.rb +11944 -18
  45. data/lib/sc2ai/protocol/ui_pb.rb +12927 -28
  46. data/lib/sc2ai/unit_group/action_ext.rb +0 -2
  47. data/lib/sc2ai/unit_group/filter_ext.rb +10 -9
  48. data/lib/sc2ai/unit_group/geo_ext.rb +0 -2
  49. data/lib/sc2ai/unit_group.rb +1 -1
  50. data/lib/sc2ai/version.rb +2 -3
  51. data/lib/sc2ai.rb +10 -11
  52. data/lib/templates/ladderzip/bin/ladder.tt +0 -3
  53. data/lib/templates/new/api/common.proto +6 -6
  54. data/lib/templates/new/api/data.proto +23 -20
  55. data/lib/templates/new/api/debug.proto +25 -21
  56. data/lib/templates/new/api/error.proto +217 -215
  57. data/lib/templates/new/api/query.proto +1 -1
  58. data/lib/templates/new/api/raw.proto +16 -14
  59. data/lib/templates/new/api/sc2api.proto +108 -94
  60. data/lib/templates/new/api/score.proto +4 -3
  61. data/lib/templates/new/api/spatial.proto +6 -5
  62. data/lib/templates/new/api/ui.proto +17 -14
  63. data/lib/templates/new/boot.rb.tt +1 -1
  64. data/lib/templates/new/my_bot.rb.tt +1 -1
  65. data/lib/templates/new/run_example_match.rb.tt +2 -2
  66. data/sig/sc2ai.rbs +11008 -1929
  67. metadata +25 -36
  68. data/lib/sc2ai/overrides/kernel.rb +0 -33
  69. data/sig/minaswan.rbs +0 -10323
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ff26842dae751021cefd5ec41520a100ee4590e38d10fc96e846513a2d112176
4
- data.tar.gz: eec5d7f966b086a9b1f164097d15917c4d2e14fd0556215c33dda1f7a446ef1d
3
+ metadata.gz: f0b6225d7a28ee6656744623ee50db7cfa997712ecbe357a3e39f903e4023c0f
4
+ data.tar.gz: 60f588720e52e4881a10d0b232754ca0b532aa44b90810f650a156e265c309ba
5
5
  SHA512:
6
- metadata.gz: 989364e2517ea677ff53f9da0764e8e6626b9569dee736ee7b3f69723e08e6f4a2fd3c3f864034f380c758c2c80b557adaeb4cae73e34217e437a9493b7860ed
7
- data.tar.gz: d6836e0492d8df3f63f849b3b4e3710a292783c8250a5be4fe6bdd88a3507203576f9786e48c9196d2b6daaa1bfe53b9a03812a0ee384369882948222457b2f2
6
+ metadata.gz: 65249c7a5f036e9d15286dc3d851ec3b9ebf2a50e1978d1d305476d9e0d69597e0a97504af98b387b718cf5bc2aed581b97dae51b202f10fe174c8be3e9d03d1
7
+ data.tar.gz: 2e746b39d4dc86e257f28905ee2085e92a980aa51035dc75051b61830f9bcd5e197e0377c7ca4265a59e843fd339bff454c522c212480bfe93f6c9525599e8ed
@@ -49,11 +49,11 @@ message Size2DI {
49
49
  }
50
50
 
51
51
  enum Race {
52
- NoRace = 0;
53
- Terran = 1;
54
- Zerg = 2;
55
- Protoss = 3;
56
- Random = 4;
52
+ NO_RACE = 0;
53
+ TERRAN = 1;
54
+ ZERG = 2;
55
+ PROTOSS = 3;
56
+ RANDOM = 4;
57
57
  }
58
58
 
59
59
 
@@ -19,12 +19,12 @@ message AbilityData {
19
19
  optional uint32 remaps_to_ability_id = 7; // This ability id may be represented by the given more generic id.
20
20
 
21
21
  enum Target {
22
- EnumTargetUnset = 0; // Proto3 compat
23
- None = 1; // Does not require a target.
24
- Point = 2; // Requires a target position.
25
- Unit = 3; // Requires a unit to target. Given by position using feature layers.
26
- PointOrUnit = 4; // Requires either a target point or target unit.
27
- PointOrNone = 5; // Requires either a target point or no target. (eg. building add-ons)
22
+ ENUM_TARGET_UNSET = 0; // PROTO3 COMPAT
23
+ NONE = 1; // DOES NOT REQUIRE A TARGET.
24
+ POINT = 2; // REQUIRES A TARGET POSITION.
25
+ UNIT = 3; // REQUIRES A UNIT TO TARGET. GIVEN BY POSITION USING FEATURE LAYERS.
26
+ POINT_OR_UNIT = 4; // REQUIRES EITHER A TARGET POINT OR TARGET UNIT.
27
+ POINT_OR_NONE = 5; // REQUIRES EITHER A TARGET POINT OR NO TARGET. (EG. BUILDING ADD_ONS)
28
28
  }
29
29
 
30
30
  optional bool available = 8; // If true, the ability may be used by this set of mods/map.
@@ -38,18 +38,18 @@ message AbilityData {
38
38
  }
39
39
 
40
40
  enum Attribute {
41
- EnumAttributeUnset = 0; // Proto3 compat
42
- Light = 1;
43
- Armored = 2;
44
- Biological = 3;
45
- Mechanical = 4;
46
- Robotic = 5;
47
- Psionic = 6;
48
- Massive = 7;
49
- Structure = 8;
50
- Hover = 9;
51
- Heroic = 10;
52
- Summoned = 11;
41
+ ENUM_ATTRIBUTE_UNSET = 0; // PROTO3 COMPAT
42
+ LIGHT = 1;
43
+ ARMORED = 2;
44
+ BIOLOGICAL = 3;
45
+ MECHANICAL = 4;
46
+ ROBOTIC = 5;
47
+ PSIONIC = 6;
48
+ MASSIVE = 7;
49
+ STRUCTURE = 8;
50
+ HOVER = 9;
51
+ HEROIC = 10;
52
+ SUMMONED = 11;
53
53
  }
54
54
 
55
55
  message DamageBonus {
@@ -59,10 +59,10 @@ message DamageBonus {
59
59
 
60
60
  message Weapon {
61
61
  enum TargetType {
62
- EnumTargetTypeUnset = 0; // Proto3 compat
63
- Ground = 1;
64
- Air = 2;
65
- Any = 3;
62
+ ENUM_TARGET_TYPE_UNSET = 0; // PROTO3 COMPAT
63
+ GROUND = 1;
64
+ AIR = 2;
65
+ ANY = 3;
66
66
  }
67
67
  optional TargetType type = 1;
68
68
  optional float damage = 2;
@@ -67,19 +67,19 @@ message DebugSphere {
67
67
  }
68
68
 
69
69
  enum DebugGameState {
70
- EnumDebugGameStateUnset = 0; // Proto3 compat
71
- show_map = 1;
72
- control_enemy = 2;
73
- food = 3;
74
- free = 4;
75
- all_resources = 5;
76
- god = 6;
77
- minerals = 7;
78
- gas = 8;
79
- cooldown = 9;
80
- tech_tree = 10;
81
- upgrade = 11;
82
- fast_build = 12;
70
+ ENUM_DEBUG_GAME_STATE_UNSET = 0; // PROTO3 COMPAT
71
+ SHOW_MAP = 1;
72
+ CONTROL_ENEMY = 2;
73
+ FOOD = 3;
74
+ FREE = 4;
75
+ ALL_RESOURCES = 5;
76
+ GOD = 6;
77
+ MINERALS = 7;
78
+ GAS = 8;
79
+ COOLDOWNS = 9;
80
+ TECH_TREE = 10;
81
+ UPGRADE = 11;
82
+ FAST_BUILD = 12;
83
83
  }
84
84
 
85
85
  message DebugCreateUnit {
@@ -95,10 +95,10 @@ message DebugKillUnit {
95
95
 
96
96
  message DebugTestProcess {
97
97
  enum Test {
98
- EnumTestUnset = 0; // Proto3 compat
99
- hang = 1;
100
- crash = 2;
101
- exit = 3;
98
+ ENUM_TEST_UNSET = 0; // PROTO3 COMPAT
99
+ HANG = 1;
100
+ CRASH = 2;
101
+ EXIT = 3;
102
102
  }
103
103
  optional Test test = 1;
104
104
  optional int32 delay_ms = 2;
@@ -110,19 +110,19 @@ message DebugSetScore {
110
110
 
111
111
  message DebugEndGame {
112
112
  enum EndResult {
113
- EnumEndResultUnset = 0; // Proto3 compat
114
- Surrender = 1; // Default if nothing is set. The current player admits defeat.
115
- DeclareVictory = 2;
113
+ ENUM_END_RESULT_UNSET = 0; // PROTO3 COMPAT
114
+ SURRENDER = 1; // DEFAULT IF NOTHING IS SET. THE CURRENT PLAYER ADMITS DEFEAT.
115
+ DECLARE_VICTORY = 2;
116
116
  }
117
117
  optional EndResult end_result = 1;
118
118
  }
119
119
 
120
120
  message DebugSetUnitValue {
121
121
  enum UnitValue {
122
- EnumUnitValueUnset = 0; // Proto3 compat
123
- Energy = 1;
124
- Life = 2;
125
- Shields = 3;
122
+ ENUM_UNIT_VALUE_UNSET = 0; // PROTO3 COMPAT
123
+ ENERGY = 1;
124
+ LIFE = 2;
125
+ SHIELDS = 3;
126
126
  }
127
127
  optional UnitValue unit_value = 1;
128
128
  optional float value = 2;
@@ -4,219 +4,220 @@ syntax = "proto3";
4
4
  package Api;
5
5
 
6
6
  enum ActionResult {
7
- EnumActionResultUnset = 0; // Proto3 compat
8
- Success = 1;
9
- NotSupported = 2;
10
- Error = 3;
11
- CantQueueThatOrder = 4;
12
- Retry = 5;
13
- Cooldown = 6;
14
- QueueIsFull = 7;
15
- RallyQueueIsFull = 8;
16
- NotEnoughMinerals = 9;
17
- NotEnoughVespene = 10;
18
- NotEnoughTerrazine = 11;
19
- NotEnoughCustom = 12;
20
- NotEnoughFood = 13;
21
- FoodUsageImpossible = 14;
22
- NotEnoughLife = 15;
23
- NotEnoughShields = 16;
24
- NotEnoughEnergy = 17;
25
- LifeSuppressed = 18;
26
- ShieldsSuppressed = 19;
27
- EnergySuppressed = 20;
28
- NotEnoughCharges = 21;
29
- CantAddMoreCharges = 22;
30
- TooMuchMinerals = 23;
31
- TooMuchVespene = 24;
32
- TooMuchTerrazine = 25;
33
- TooMuchCustom = 26;
34
- TooMuchFood = 27;
35
- TooMuchLife = 28;
36
- TooMuchShields = 29;
37
- TooMuchEnergy = 30;
38
- MustTargetUnitWithLife = 31;
39
- MustTargetUnitWithShields = 32;
40
- MustTargetUnitWithEnergy = 33;
41
- CantTrade = 34;
42
- CantSpend = 35;
43
- CantTargetThatUnit = 36;
44
- CouldntAllocateUnit = 37;
45
- UnitCantMove = 38;
46
- TransportIsHoldingPosition = 39;
47
- BuildTechRequirementsNotMet = 40;
48
- CantFindPlacementLocation = 41;
49
- CantBuildOnThat = 42;
50
- CantBuildTooCloseToDropOff = 43;
51
- CantBuildLocationInvalid = 44;
52
- CantSeeBuildLocation = 45;
53
- CantBuildTooCloseToCreepSource = 46;
54
- CantBuildTooCloseToResources = 47;
55
- CantBuildTooFarFromWater = 48;
56
- CantBuildTooFarFromCreepSource = 49;
57
- CantBuildTooFarFromBuildPowerSource = 50;
58
- CantBuildOnDenseTerrain = 51;
59
- CantTrainTooFarFromTrainPowerSource = 52;
60
- CantLandLocationInvalid = 53;
61
- CantSeeLandLocation = 54;
62
- CantLandTooCloseToCreepSource = 55;
63
- CantLandTooCloseToResources = 56;
64
- CantLandTooFarFromWater = 57;
65
- CantLandTooFarFromCreepSource = 58;
66
- CantLandTooFarFromBuildPowerSource = 59;
67
- CantLandTooFarFromTrainPowerSource = 60;
68
- CantLandOnDenseTerrain = 61;
69
- AddOnTooFarFromBuilding = 62;
70
- MustBuildRefineryFirst = 63;
71
- BuildingIsUnderConstruction = 64;
72
- CantFindDropOff = 65;
73
- CantLoadOtherPlayersUnits = 66;
74
- NotEnoughRoomToLoadUnit = 67;
75
- CantUnloadUnitsThere = 68;
76
- CantWarpInUnitsThere = 69;
77
- CantLoadImmobileUnits = 70;
78
- CantRechargeImmobileUnits = 71;
79
- CantRechargeUnderConstructionUnits = 72;
80
- CantLoadThatUnit = 73;
81
- NoCargoToUnload = 74;
82
- LoadAllNoTargetsFound = 75;
83
- NotWhileOccupied = 76;
84
- CantAttackWithoutAmmo = 77;
85
- CantHoldAnyMoreAmmo = 78;
86
- TechRequirementsNotMet = 79;
87
- MustLockdownUnitFirst = 80;
88
- MustTargetUnit = 81;
89
- MustTargetInventory = 82;
90
- MustTargetVisibleUnit = 83;
91
- MustTargetVisibleLocation = 84;
92
- MustTargetWalkableLocation = 85;
93
- MustTargetPawnableUnit = 86;
94
- YouCantControlThatUnit = 87;
95
- YouCantIssueCommandsToThatUnit = 88;
96
- MustTargetResources = 89;
97
- RequiresHealTarget = 90;
98
- RequiresRepairTarget = 91;
99
- NoItemsToDrop = 92;
100
- CantHoldAnyMoreItems = 93;
101
- CantHoldThat = 94;
102
- TargetHasNoInventory = 95;
103
- CantDropThisItem = 96;
104
- CantMoveThisItem = 97;
105
- CantPawnThisUnit = 98;
106
- MustTargetCaster = 99;
107
- CantTargetCaster = 100;
108
- MustTargetOuter = 101;
109
- CantTargetOuter = 102;
110
- MustTargetYourOwnUnits = 103;
111
- CantTargetYourOwnUnits = 104;
112
- MustTargetFriendlyUnits = 105;
113
- CantTargetFriendlyUnits = 106;
114
- MustTargetNeutralUnits = 107;
115
- CantTargetNeutralUnits = 108;
116
- MustTargetEnemyUnits = 109;
117
- CantTargetEnemyUnits = 110;
118
- MustTargetAirUnits = 111;
119
- CantTargetAirUnits = 112;
120
- MustTargetGroundUnits = 113;
121
- CantTargetGroundUnits = 114;
122
- MustTargetStructures = 115;
123
- CantTargetStructures = 116;
124
- MustTargetLightUnits = 117;
125
- CantTargetLightUnits = 118;
126
- MustTargetArmoredUnits = 119;
127
- CantTargetArmoredUnits = 120;
128
- MustTargetBiologicalUnits = 121;
129
- CantTargetBiologicalUnits = 122;
130
- MustTargetHeroicUnits = 123;
131
- CantTargetHeroicUnits = 124;
132
- MustTargetRoboticUnits = 125;
133
- CantTargetRoboticUnits = 126;
134
- MustTargetMechanicalUnits = 127;
135
- CantTargetMechanicalUnits = 128;
136
- MustTargetPsionicUnits = 129;
137
- CantTargetPsionicUnits = 130;
138
- MustTargetMassiveUnits = 131;
139
- CantTargetMassiveUnits = 132;
140
- MustTargetMissile = 133;
141
- CantTargetMissile = 134;
142
- MustTargetWorkerUnits = 135;
143
- CantTargetWorkerUnits = 136;
144
- MustTargetEnergyCapableUnits = 137;
145
- CantTargetEnergyCapableUnits = 138;
146
- MustTargetShieldCapableUnits = 139;
147
- CantTargetShieldCapableUnits = 140;
148
- MustTargetFlyers = 141;
149
- CantTargetFlyers = 142;
150
- MustTargetBuriedUnits = 143;
151
- CantTargetBuriedUnits = 144;
152
- MustTargetCloakedUnits = 145;
153
- CantTargetCloakedUnits = 146;
154
- MustTargetUnitsInAStasisField = 147;
155
- CantTargetUnitsInAStasisField = 148;
156
- MustTargetUnderConstructionUnits = 149;
157
- CantTargetUnderConstructionUnits = 150;
158
- MustTargetDeadUnits = 151;
159
- CantTargetDeadUnits = 152;
160
- MustTargetRevivableUnits = 153;
161
- CantTargetRevivableUnits = 154;
162
- MustTargetHiddenUnits = 155;
163
- CantTargetHiddenUnits = 156;
164
- CantRechargeOtherPlayersUnits = 157;
165
- MustTargetHallucinations = 158;
166
- CantTargetHallucinations = 159;
167
- MustTargetInvulnerableUnits = 160;
168
- CantTargetInvulnerableUnits = 161;
169
- MustTargetDetectedUnits = 162;
170
- CantTargetDetectedUnits = 163;
171
- CantTargetUnitWithEnergy = 164;
172
- CantTargetUnitWithShields = 165;
173
- MustTargetUncommandableUnits = 166;
174
- CantTargetUncommandableUnits = 167;
175
- MustTargetPreventDefeatUnits = 168;
176
- CantTargetPreventDefeatUnits = 169;
177
- MustTargetPreventRevealUnits = 170;
178
- CantTargetPreventRevealUnits = 171;
179
- MustTargetPassiveUnits = 172;
180
- CantTargetPassiveUnits = 173;
181
- MustTargetStunnedUnits = 174;
182
- CantTargetStunnedUnits = 175;
183
- MustTargetSummonedUnits = 176;
184
- CantTargetSummonedUnits = 177;
185
- MustTargetUser1 = 178;
186
- CantTargetUser1 = 179;
187
- MustTargetUnstoppableUnits = 180;
188
- CantTargetUnstoppableUnits = 181;
189
- MustTargetResistantUnits = 182;
190
- CantTargetResistantUnits = 183;
191
- MustTargetDazedUnits = 184;
192
- CantTargetDazedUnits = 185;
193
- CantLockdown = 186;
194
- CantMindControl = 187;
195
- MustTargetDestructibles = 188;
196
- CantTargetDestructibles = 189;
197
- MustTargetItems = 190;
198
- CantTargetItems = 191;
199
- NoCalldownAvailable = 192;
200
- WaypointListFull = 193;
201
- MustTargetRace = 194;
202
- CantTargetRace = 195;
203
- MustTargetSimilarUnits = 196;
204
- CantTargetSimilarUnits = 197;
205
- CantFindEnoughTargets = 198;
206
- AlreadySpawningLarva = 199;
207
- CantTargetExhaustedResources = 200;
208
- CantUseMinimap = 201;
209
- CantUseInfoPanel = 202;
210
- OrderQueueIsFull = 203;
211
- CantHarvestThatResource = 204;
212
- HarvestersNotRequired = 205;
213
- AlreadyTargeted = 206;
214
- CantAttackWeaponsDisabled = 207;
215
- CouldntReachTarget = 208;
216
- TargetIsOutOfRange = 209;
217
- TargetIsTooClose = 210;
218
- TargetIsOutOfArc = 211;
219
- CantFindTeleportLocation = 212;
220
- InvalidItemClass = 213;
221
- CantFindCancelOrder = 214;
7
+ ENUM_ACTION_RESULT_UNSET = 0; // PROTO3 COMPAT
8
+ SUCCESS = 1;
9
+ NOT_SUPPORTED = 2;
10
+ ERROR = 3;
11
+ CANT_QUEUE_THAT_ORDER = 4;
12
+ RETRY = 5;
13
+ COOLDOWN = 6;
14
+ QUEUE_IS_FULL = 7;
15
+ RALLY_QUEUE_IS_FULL = 8;
16
+ NOT_ENOUGH_MINERALS = 9;
17
+ NOT_ENOUGH_VESPENE = 10;
18
+ NOT_ENOUGH_TERRAZINE = 11;
19
+ NOT_ENOUGH_CUSTOM = 12;
20
+ NOT_ENOUGH_FOOD = 13;
21
+ FOOD_USAGE_IMPOSSIBLE = 14;
22
+ NOT_ENOUGH_LIFE = 15;
23
+ NOT_ENOUGH_SHIELDS = 16;
24
+ NOT_ENOUGH_ENERGY = 17;
25
+ LIFE_SUPPRESSED = 18;
26
+ SHIELDS_SUPPRESSED = 19;
27
+ ENERGY_SUPPRESSED = 20;
28
+ NOT_ENOUGH_CHARGES = 21;
29
+ CANT_ADD_MORE_CHARGES = 22;
30
+ TOO_MUCH_MINERALS = 23;
31
+ TOO_MUCH_VESPENE = 24;
32
+ TOO_MUCH_TERRAZINE = 25;
33
+ TOO_MUCH_CUSTOM = 26;
34
+ TOO_MUCH_FOOD = 27;
35
+ TOO_MUCH_LIFE = 28;
36
+ TOO_MUCH_SHIELDS = 29;
37
+ TOO_MUCH_ENERGY = 30;
38
+ MUST_TARGET_UNIT_WITH_LIFE = 31;
39
+ MUST_TARGET_UNIT_WITH_SHIELDS = 32;
40
+ MUST_TARGET_UNIT_WITH_ENERGY = 33;
41
+ CANT_TRADE = 34;
42
+ CANT_SPEND = 35;
43
+ CANT_TARGET_THAT_UNIT = 36;
44
+ COULDNT_ALLOCATE_UNIT = 37;
45
+ UNIT_CANT_MOVE = 38;
46
+ TRANSPORT_IS_HOLDING_POSITION = 39;
47
+ BUILD_TECH_REQUIREMENTS_NOT_MET = 40;
48
+ CANT_FIND_PLACEMENT_LOCATION = 41;
49
+ CANT_BUILD_ON_THAT = 42;
50
+ CANT_BUILD_TOO_CLOSE_TO_DROP_OFF = 43;
51
+ CANT_BUILD_LOCATION_INVALID = 44;
52
+ CANT_SEE_BUILD_LOCATION = 45;
53
+ CANT_BUILD_TOO_CLOSE_TO_CREEP_SOURCE = 46;
54
+ CANT_BUILD_TOO_CLOSE_TO_RESOURCES = 47;
55
+ CANT_BUILD_TOO_FAR_FROM_WATER = 48;
56
+ CANT_BUILD_TOO_FAR_FROM_CREEP_SOURCE = 49;
57
+ CANT_BUILD_TOO_FAR_FROM_BUILD_POWER_SOURCE = 50;
58
+ CANT_BUILD_ON_DENSE_TERRAIN = 51;
59
+ CANT_TRAIN_TOO_FAR_FROM_TRAIN_POWER_SOURCE = 52;
60
+ CANT_LAND_LOCATION_INVALID = 53;
61
+ CANT_SEE_LAND_LOCATION = 54;
62
+ CANT_LAND_TOO_CLOSE_TO_CREEP_SOURCE = 55;
63
+ CANT_LAND_TOO_CLOSE_TO_RESOURCES = 56;
64
+ CANT_LAND_TOO_FAR_FROM_WATER = 57;
65
+ CANT_LAND_TOO_FAR_FROM_CREEP_SOURCE = 58;
66
+ CANT_LAND_TOO_FAR_FROM_BUILD_POWER_SOURCE = 59;
67
+ CANT_LAND_TOO_FAR_FROM_TRAIN_POWER_SOURCE = 60;
68
+ CANT_LAND_ON_DENSE_TERRAIN = 61;
69
+ ADD_ON_TOO_FAR_FROM_BUILDING = 62;
70
+ MUST_BUILD_REFINERY_FIRST = 63;
71
+ BUILDING_IS_UNDER_CONSTRUCTION = 64;
72
+ CANT_FIND_DROP_OFF = 65;
73
+ CANT_LOAD_OTHER_PLAYERS_UNITS = 66;
74
+ NOT_ENOUGH_ROOM_TO_LOAD_UNIT = 67;
75
+ CANT_UNLOAD_UNITS_THERE = 68;
76
+ CANT_WARP_IN_UNITS_THERE = 69;
77
+ CANT_LOAD_IMMOBILE_UNITS = 70;
78
+ CANT_RECHARGE_IMMOBILE_UNITS = 71;
79
+ CANT_RECHARGE_UNDER_CONSTRUCTION_UNITS = 72;
80
+ CANT_LOAD_THAT_UNIT = 73;
81
+ NO_CARGO_TO_UNLOAD = 74;
82
+ LOAD_ALL_NO_TARGETS_FOUND = 75;
83
+ NOT_WHILE_OCCUPIED = 76;
84
+ CANT_ATTACK_WITHOUT_AMMO = 77;
85
+ CANT_HOLD_ANY_MORE_AMMO = 78;
86
+ TECH_REQUIREMENTS_NOT_MET = 79;
87
+ MUST_LOCKDOWN_UNIT_FIRST = 80;
88
+ MUST_TARGET_UNIT = 81;
89
+ MUST_TARGET_INVENTORY = 82;
90
+ MUST_TARGET_VISIBLE_UNIT = 83;
91
+ MUST_TARGET_VISIBLE_LOCATION = 84;
92
+ MUST_TARGET_WALKABLE_LOCATION = 85;
93
+ MUST_TARGET_PAWNABLE_UNIT = 86;
94
+ YOU_CANT_CONTROL_THAT_UNIT = 87;
95
+ YOU_CANT_ISSUE_COMMANDS_TO_THAT_UNIT = 88;
96
+ MUST_TARGET_RESOURCES = 89;
97
+ REQUIRES_HEAL_TARGET = 90;
98
+ REQUIRES_REPAIR_TARGET = 91;
99
+ NO_ITEMS_TO_DROP = 92;
100
+ CANT_HOLD_ANY_MORE_ITEMS = 93;
101
+ CANT_HOLD_THAT = 94;
102
+ TARGET_HAS_NO_INVENTORY = 95;
103
+ CANT_DROP_THIS_ITEM = 96;
104
+ CANT_MOVE_THIS_ITEM = 97;
105
+ CANT_PAWN_THIS_UNIT = 98;
106
+ MUST_TARGET_CASTER = 99;
107
+ CANT_TARGET_CASTER = 100;
108
+ MUST_TARGET_OUTER = 101;
109
+ CANT_TARGET_OUTER = 102;
110
+ MUST_TARGET_YOUR_OWN_UNITS = 103;
111
+ CANT_TARGET_YOUR_OWN_UNITS = 104;
112
+ MUST_TARGET_FRIENDLY_UNITS = 105;
113
+ CANT_TARGET_FRIENDLY_UNITS = 106;
114
+ MUST_TARGET_NEUTRAL_UNITS = 107;
115
+ CANT_TARGET_NEUTRAL_UNITS = 108;
116
+ MUST_TARGET_ENEMY_UNITS = 109;
117
+ CANT_TARGET_ENEMY_UNITS = 110;
118
+ MUST_TARGET_AIR_UNITS = 111;
119
+ CANT_TARGET_AIR_UNITS = 112;
120
+ MUST_TARGET_GROUND_UNITS = 113;
121
+ CANT_TARGET_GROUND_UNITS = 114;
122
+ MUST_TARGET_STRUCTURES = 115;
123
+ CANT_TARGET_STRUCTURES = 116;
124
+ MUST_TARGET_LIGHT_UNITS = 117;
125
+ CANT_TARGET_LIGHT_UNITS = 118;
126
+ MUST_TARGET_ARMORED_UNITS = 119;
127
+ CANT_TARGET_ARMORED_UNITS = 120;
128
+ MUST_TARGET_BIOLOGICAL_UNITS = 121;
129
+ CANT_TARGET_BIOLOGICAL_UNITS = 122;
130
+ MUST_TARGET_HEROIC_UNITS = 123;
131
+ CANT_TARGET_HEROIC_UNITS = 124;
132
+ MUST_TARGET_ROBOTIC_UNITS = 125;
133
+ CANT_TARGET_ROBOTIC_UNITS = 126;
134
+ MUST_TARGET_MECHANICAL_UNITS = 127;
135
+ CANT_TARGET_MECHANICAL_UNITS = 128;
136
+ MUST_TARGET_PSIONIC_UNITS = 129;
137
+ CANT_TARGET_PSIONIC_UNITS = 130;
138
+ MUST_TARGET_MASSIVE_UNITS = 131;
139
+ CANT_TARGET_MASSIVE_UNITS = 132;
140
+ MUST_TARGET_MISSILE = 133;
141
+ CANT_TARGET_MISSILE = 134;
142
+ MUST_TARGET_WORKER_UNITS = 135;
143
+ CANT_TARGET_WORKER_UNITS = 136;
144
+ MUST_TARGET_ENERGY_CAPABLE_UNITS = 137;
145
+ CANT_TARGET_ENERGY_CAPABLE_UNITS = 138;
146
+ MUST_TARGET_SHIELD_CAPABLE_UNITS = 139;
147
+ CANT_TARGET_SHIELD_CAPABLE_UNITS = 140;
148
+ MUST_TARGET_FLYERS = 141;
149
+ CANT_TARGET_FLYERS = 142;
150
+ MUST_TARGET_BURIED_UNITS = 143;
151
+ CANT_TARGET_BURIED_UNITS = 144;
152
+ MUST_TARGET_CLOAKED_UNITS = 145;
153
+ CANT_TARGET_CLOAKED_UNITS = 146;
154
+ MUST_TARGET_UNITS_IN_A_STASIS_FIELD = 147;
155
+ CANT_TARGET_UNITS_IN_A_STASIS_FIELD = 148;
156
+ MUST_TARGET_UNDER_CONSTRUCTION_UNITS = 149;
157
+ CANT_TARGET_UNDER_CONSTRUCTION_UNITS = 150;
158
+ MUST_TARGET_DEAD_UNITS = 151;
159
+ CANT_TARGET_DEAD_UNITS = 152;
160
+ MUST_TARGET_REVIVABLE_UNITS = 153;
161
+ CANT_TARGET_REVIVABLE_UNITS = 154;
162
+ MUST_TARGET_HIDDEN_UNITS = 155;
163
+ CANT_TARGET_HIDDEN_UNITS = 156;
164
+ CANT_RECHARGE_OTHER_PLAYERS_UNITS = 157;
165
+ MUST_TARGET_HALLUCINATIONS = 158;
166
+ CANT_TARGET_HALLUCINATIONS = 159;
167
+ MUST_TARGET_INVULNERABLE_UNITS = 160;
168
+ CANT_TARGET_INVULNERABLE_UNITS = 161;
169
+ MUST_TARGET_DETECTED_UNITS = 162;
170
+ CANT_TARGET_DETECTED_UNITS = 163;
171
+ CANT_TARGET_UNIT_WITH_ENERGY = 164;
172
+ CANT_TARGET_UNIT_WITH_SHIELDS = 165;
173
+ MUST_TARGET_UNCOMMANDABLE_UNITS = 166;
174
+ CANT_TARGET_UNCOMMANDABLE_UNITS = 167;
175
+ MUST_TARGET_PREVENT_DEFEAT_UNITS = 168;
176
+ CANT_TARGET_PREVENT_DEFEAT_UNITS = 169;
177
+ MUST_TARGET_PREVENT_REVEAL_UNITS = 170;
178
+ CANT_TARGET_PREVENT_REVEAL_UNITS = 171;
179
+ MUST_TARGET_PASSIVE_UNITS = 172;
180
+ CANT_TARGET_PASSIVE_UNITS = 173;
181
+ MUST_TARGET_STUNNED_UNITS = 174;
182
+ CANT_TARGET_STUNNED_UNITS = 175;
183
+ MUST_TARGET_SUMMONED_UNITS = 176;
184
+ CANT_TARGET_SUMMONED_UNITS = 177;
185
+ MUST_TARGET_USER1 = 178;
186
+ CANT_TARGET_USER1 = 179;
187
+ MUST_TARGET_UNSTOPPABLE_UNITS = 180;
188
+ CANT_TARGET_UNSTOPPABLE_UNITS = 181;
189
+ MUST_TARGET_RESISTANT_UNITS = 182;
190
+ CANT_TARGET_RESISTANT_UNITS = 183;
191
+ MUST_TARGET_DAZED_UNITS = 184;
192
+ CANT_TARGET_DAZED_UNITS = 185;
193
+ CANT_LOCKDOWN = 186;
194
+ CANT_MIND_CONTROL = 187;
195
+ MUST_TARGET_DESTRUCTIBLES = 188;
196
+ CANT_TARGET_DESTRUCTIBLES = 189;
197
+ MUST_TARGET_ITEMS = 190;
198
+ CANT_TARGET_ITEMS = 191;
199
+ NO_CALLDOWN_AVAILABLE = 192;
200
+ WAYPOINT_LIST_FULL = 193;
201
+ MUST_TARGET_RACE = 194;
202
+ CANT_TARGET_RACE = 195;
203
+ MUST_TARGET_SIMILAR_UNITS = 196;
204
+ CANT_TARGET_SIMILAR_UNITS = 197;
205
+ CANT_FIND_ENOUGH_TARGETS = 198;
206
+ ALREADY_SPAWNING_LARVA = 199;
207
+ CANT_TARGET_EXHAUSTED_RESOURCES = 200;
208
+ CANT_USE_MINIMAP = 201;
209
+ CANT_USE_INFO_PANEL = 202;
210
+ ORDER_QUEUE_IS_FULL = 203;
211
+ CANT_HARVEST_THAT_RESOURCE = 204;
212
+ HARVESTERS_NOT_REQUIRED = 205;
213
+ ALREADY_TARGETED = 206;
214
+ CANT_ATTACK_WEAPONS_DISABLED = 207;
215
+ COULDNT_REACH_TARGET = 208;
216
+ TARGET_IS_OUT_OF_RANGE = 209;
217
+ TARGET_IS_TOO_CLOSE = 210;
218
+ TARGET_IS_OUT_OF_ARC = 211;
219
+ CANT_FIND_TELEPORT_LOCATION = 212;
220
+ INVALID_ITEM_CLASS = 213;
221
+ CANT_FIND_CANCEL_ORDER = 214;
222
+
222
223
  }