sc2ai 0.1.0 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (75) hide show
  1. checksums.yaml +4 -4
  2. data/data/sc2ai/protocol/common.proto +6 -6
  3. data/data/sc2ai/protocol/data.proto +23 -20
  4. data/data/sc2ai/protocol/debug.proto +25 -21
  5. data/data/sc2ai/protocol/error.proto +217 -215
  6. data/data/sc2ai/protocol/query.proto +1 -1
  7. data/data/sc2ai/protocol/raw.proto +16 -14
  8. data/data/sc2ai/protocol/sc2api.proto +108 -94
  9. data/data/sc2ai/protocol/score.proto +4 -3
  10. data/data/sc2ai/protocol/spatial.proto +6 -5
  11. data/data/sc2ai/protocol/ui.proto +17 -14
  12. data/exe/sc2ai +0 -3
  13. data/lib/docker_build/Dockerfile.ruby +4 -2
  14. data/lib/sc2ai/api/ability_id.rb +6 -1
  15. data/lib/sc2ai/api/data.rb +18 -3
  16. data/lib/sc2ai/api/tech_tree.rb +1 -1
  17. data/lib/sc2ai/api/tech_tree_data.rb +54 -3
  18. data/lib/sc2ai/connection/connection_listener.rb +3 -3
  19. data/lib/sc2ai/connection/requests.rb +31 -35
  20. data/lib/sc2ai/connection/status_listener.rb +1 -1
  21. data/lib/sc2ai/connection.rb +1 -2
  22. data/lib/sc2ai/local_play/client.rb +2 -2
  23. data/lib/sc2ai/local_play/match.rb +7 -2
  24. data/lib/sc2ai/overrides/async/process/child.rb +1 -1
  25. data/lib/sc2ai/paths.rb +12 -2
  26. data/lib/sc2ai/player/actions.rb +54 -35
  27. data/lib/sc2ai/player/debug.rb +54 -20
  28. data/lib/sc2ai/player/game_state.rb +11 -18
  29. data/lib/sc2ai/player/geo.rb +56 -66
  30. data/lib/sc2ai/player/units.rb +41 -17
  31. data/lib/sc2ai/player.rb +104 -47
  32. data/lib/sc2ai/ports.rb +1 -2
  33. data/lib/sc2ai/protocol/_meta_documentation.rb +270 -25
  34. data/lib/sc2ai/protocol/common_pb.rb +3862 -33
  35. data/lib/sc2ai/protocol/data_pb.rb +9106 -36
  36. data/lib/sc2ai/protocol/debug_pb.rb +10434 -45
  37. data/lib/sc2ai/protocol/error_pb.rb +1084 -29
  38. data/lib/sc2ai/protocol/extensions/ability_remapable.rb +9 -9
  39. data/lib/sc2ai/protocol/extensions/action.rb +60 -0
  40. data/lib/sc2ai/protocol/extensions/point_2_d.rb +9 -0
  41. data/lib/sc2ai/protocol/extensions/position.rb +11 -36
  42. data/lib/sc2ai/protocol/extensions/power_source.rb +3 -0
  43. data/lib/sc2ai/protocol/extensions/unit.rb +61 -36
  44. data/lib/sc2ai/protocol/extensions/unit_type_data.rb +8 -0
  45. data/lib/sc2ai/protocol/query_pb.rb +5022 -36
  46. data/lib/sc2ai/protocol/raw_pb.rb +18347 -46
  47. data/lib/sc2ai/protocol/sc2api_pb.rb +48424 -126
  48. data/lib/sc2ai/protocol/score_pb.rb +5965 -30
  49. data/lib/sc2ai/protocol/spatial_pb.rb +11941 -37
  50. data/lib/sc2ai/protocol/ui_pb.rb +12924 -46
  51. data/lib/sc2ai/unit_group/action_ext.rb +0 -2
  52. data/lib/sc2ai/unit_group/filter_ext.rb +24 -8
  53. data/lib/sc2ai/unit_group/geo_ext.rb +0 -2
  54. data/lib/sc2ai/unit_group.rb +1 -1
  55. data/lib/sc2ai/version.rb +2 -3
  56. data/lib/sc2ai.rb +10 -11
  57. data/lib/templates/ladderzip/bin/ladder.tt +0 -3
  58. data/lib/templates/new/.ladderignore +15 -5
  59. data/lib/templates/new/api/common.proto +6 -6
  60. data/lib/templates/new/api/data.proto +23 -20
  61. data/lib/templates/new/api/debug.proto +25 -21
  62. data/lib/templates/new/api/error.proto +217 -215
  63. data/lib/templates/new/api/query.proto +1 -1
  64. data/lib/templates/new/api/raw.proto +16 -14
  65. data/lib/templates/new/api/sc2api.proto +108 -94
  66. data/lib/templates/new/api/score.proto +4 -3
  67. data/lib/templates/new/api/spatial.proto +6 -5
  68. data/lib/templates/new/api/ui.proto +17 -14
  69. data/lib/templates/new/boot.rb.tt +1 -1
  70. data/lib/templates/new/my_bot.rb.tt +2 -2
  71. data/lib/templates/new/run_example_match.rb.tt +2 -2
  72. data/sig/sc2ai.rbs +11072 -1651
  73. metadata +31 -26
  74. data/lib/sc2ai/overrides/kernel.rb +0 -33
  75. data/lib/sc2ai/protocol/extensions/unit_type.rb +0 -9
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7feb936b57c5b3e4c5cae670ea743f43ccb36a5111bf39abb88ad6e63702ffc5
4
- data.tar.gz: 3b25e577bae3d33255f4e648fa69a8005e67af47e207cffdb7d0e2c790b86961
3
+ metadata.gz: c0a278a3ea02f2a4f704c0a4b4d9d1dde21af472fa4156fcc0f19c6b511e1e05
4
+ data.tar.gz: 1758454ee3154c1355c655088889cb556b979e6cff917fdc236655c5d513ba66
5
5
  SHA512:
6
- metadata.gz: 3c0d3dac4646702e85531561eb94d11ce8c5a5da53a255832a18803f34daad07f42958be0309f2b043a003581cdb5a9ac198b1326f13a93cd7a6f92211f75fa0
7
- data.tar.gz: 43baa9be2700f945f0f9aed19c81b9bd77ee21df9fa43a151caa2b7d09646de17f2fe69814d8cfd0384e1644106123d01d96b2e34a413563411da41d5f67b0c1
6
+ metadata.gz: 340805a3b13c57217ea8d2039f7d2315fbeb571ce2e2af34bc53a8cdeec0c474973be6ca3e1a5d8fe6a7b24d4f205c5e48ae504b3202dc29ab996cb8d5644186
7
+ data.tar.gz: 7010aa8da052b1962ef478a6b4c8447613bbccba2969293788ad61ec977aad98f0ec67eb01734c2b17471085eb55c740f6ee3768d272c716328e05fbfc07b195
@@ -1,5 +1,5 @@
1
1
 
2
- syntax = "proto2";
2
+ syntax = "proto3";
3
3
 
4
4
  package Api;
5
5
 
@@ -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
 
@@ -1,5 +1,5 @@
1
1
 
2
- syntax = "proto2";
2
+ syntax = "proto3";
3
3
 
4
4
  package Api;
5
5
 
@@ -19,11 +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
- None = 1; // Does not require a target.
23
- Point = 2; // Requires a target position.
24
- Unit = 3; // Requires a unit to target. Given by position using feature layers.
25
- PointOrUnit = 4; // Requires either a target point or target unit.
26
- 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)
27
28
  }
28
29
 
29
30
  optional bool available = 8; // If true, the ability may be used by this set of mods/map.
@@ -37,17 +38,18 @@ message AbilityData {
37
38
  }
38
39
 
39
40
  enum Attribute {
40
- Light = 1;
41
- Armored = 2;
42
- Biological = 3;
43
- Mechanical = 4;
44
- Robotic = 5;
45
- Psionic = 6;
46
- Massive = 7;
47
- Structure = 8;
48
- Hover = 9;
49
- Heroic = 10;
50
- 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;
51
53
  }
52
54
 
53
55
  message DamageBonus {
@@ -57,9 +59,10 @@ message DamageBonus {
57
59
 
58
60
  message Weapon {
59
61
  enum TargetType {
60
- Ground = 1;
61
- Air = 2;
62
- Any = 3;
62
+ ENUM_TARGET_TYPE_UNSET = 0; // PROTO3 COMPAT
63
+ GROUND = 1;
64
+ AIR = 2;
65
+ ANY = 3;
63
66
  }
64
67
  optional TargetType type = 1;
65
68
  optional float damage = 2;
@@ -1,5 +1,5 @@
1
1
 
2
- syntax = "proto2";
2
+ syntax = "proto3";
3
3
 
4
4
  package Api;
5
5
 
@@ -67,18 +67,19 @@ message DebugSphere {
67
67
  }
68
68
 
69
69
  enum DebugGameState {
70
- show_map = 1;
71
- control_enemy = 2;
72
- food = 3;
73
- free = 4;
74
- all_resources = 5;
75
- god = 6;
76
- minerals = 7;
77
- gas = 8;
78
- cooldown = 9;
79
- tech_tree = 10;
80
- upgrade = 11;
81
- 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;
82
83
  }
83
84
 
84
85
  message DebugCreateUnit {
@@ -94,9 +95,10 @@ message DebugKillUnit {
94
95
 
95
96
  message DebugTestProcess {
96
97
  enum Test {
97
- hang = 1;
98
- crash = 2;
99
- exit = 3;
98
+ ENUM_TEST_UNSET = 0; // PROTO3 COMPAT
99
+ HANG = 1;
100
+ CRASH = 2;
101
+ EXIT = 3;
100
102
  }
101
103
  optional Test test = 1;
102
104
  optional int32 delay_ms = 2;
@@ -108,17 +110,19 @@ message DebugSetScore {
108
110
 
109
111
  message DebugEndGame {
110
112
  enum EndResult {
111
- Surrender = 1; // Default if nothing is set. The current player admits defeat.
112
- 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;
113
116
  }
114
117
  optional EndResult end_result = 1;
115
118
  }
116
119
 
117
120
  message DebugSetUnitValue {
118
121
  enum UnitValue {
119
- Energy = 1;
120
- Life = 2;
121
- Shields = 3;
122
+ ENUM_UNIT_VALUE_UNSET = 0; // PROTO3 COMPAT
123
+ ENERGY = 1;
124
+ LIFE = 2;
125
+ SHIELDS = 3;
122
126
  }
123
127
  optional UnitValue unit_value = 1;
124
128
  optional float value = 2;
@@ -1,221 +1,223 @@
1
1
 
2
- syntax = "proto2";
2
+ syntax = "proto3";
3
3
 
4
4
  package Api;
5
5
 
6
6
  enum ActionResult {
7
- Success = 1;
8
- NotSupported = 2;
9
- Error = 3;
10
- CantQueueThatOrder = 4;
11
- Retry = 5;
12
- Cooldown = 6;
13
- QueueIsFull = 7;
14
- RallyQueueIsFull = 8;
15
- NotEnoughMinerals = 9;
16
- NotEnoughVespene = 10;
17
- NotEnoughTerrazine = 11;
18
- NotEnoughCustom = 12;
19
- NotEnoughFood = 13;
20
- FoodUsageImpossible = 14;
21
- NotEnoughLife = 15;
22
- NotEnoughShields = 16;
23
- NotEnoughEnergy = 17;
24
- LifeSuppressed = 18;
25
- ShieldsSuppressed = 19;
26
- EnergySuppressed = 20;
27
- NotEnoughCharges = 21;
28
- CantAddMoreCharges = 22;
29
- TooMuchMinerals = 23;
30
- TooMuchVespene = 24;
31
- TooMuchTerrazine = 25;
32
- TooMuchCustom = 26;
33
- TooMuchFood = 27;
34
- TooMuchLife = 28;
35
- TooMuchShields = 29;
36
- TooMuchEnergy = 30;
37
- MustTargetUnitWithLife = 31;
38
- MustTargetUnitWithShields = 32;
39
- MustTargetUnitWithEnergy = 33;
40
- CantTrade = 34;
41
- CantSpend = 35;
42
- CantTargetThatUnit = 36;
43
- CouldntAllocateUnit = 37;
44
- UnitCantMove = 38;
45
- TransportIsHoldingPosition = 39;
46
- BuildTechRequirementsNotMet = 40;
47
- CantFindPlacementLocation = 41;
48
- CantBuildOnThat = 42;
49
- CantBuildTooCloseToDropOff = 43;
50
- CantBuildLocationInvalid = 44;
51
- CantSeeBuildLocation = 45;
52
- CantBuildTooCloseToCreepSource = 46;
53
- CantBuildTooCloseToResources = 47;
54
- CantBuildTooFarFromWater = 48;
55
- CantBuildTooFarFromCreepSource = 49;
56
- CantBuildTooFarFromBuildPowerSource = 50;
57
- CantBuildOnDenseTerrain = 51;
58
- CantTrainTooFarFromTrainPowerSource = 52;
59
- CantLandLocationInvalid = 53;
60
- CantSeeLandLocation = 54;
61
- CantLandTooCloseToCreepSource = 55;
62
- CantLandTooCloseToResources = 56;
63
- CantLandTooFarFromWater = 57;
64
- CantLandTooFarFromCreepSource = 58;
65
- CantLandTooFarFromBuildPowerSource = 59;
66
- CantLandTooFarFromTrainPowerSource = 60;
67
- CantLandOnDenseTerrain = 61;
68
- AddOnTooFarFromBuilding = 62;
69
- MustBuildRefineryFirst = 63;
70
- BuildingIsUnderConstruction = 64;
71
- CantFindDropOff = 65;
72
- CantLoadOtherPlayersUnits = 66;
73
- NotEnoughRoomToLoadUnit = 67;
74
- CantUnloadUnitsThere = 68;
75
- CantWarpInUnitsThere = 69;
76
- CantLoadImmobileUnits = 70;
77
- CantRechargeImmobileUnits = 71;
78
- CantRechargeUnderConstructionUnits = 72;
79
- CantLoadThatUnit = 73;
80
- NoCargoToUnload = 74;
81
- LoadAllNoTargetsFound = 75;
82
- NotWhileOccupied = 76;
83
- CantAttackWithoutAmmo = 77;
84
- CantHoldAnyMoreAmmo = 78;
85
- TechRequirementsNotMet = 79;
86
- MustLockdownUnitFirst = 80;
87
- MustTargetUnit = 81;
88
- MustTargetInventory = 82;
89
- MustTargetVisibleUnit = 83;
90
- MustTargetVisibleLocation = 84;
91
- MustTargetWalkableLocation = 85;
92
- MustTargetPawnableUnit = 86;
93
- YouCantControlThatUnit = 87;
94
- YouCantIssueCommandsToThatUnit = 88;
95
- MustTargetResources = 89;
96
- RequiresHealTarget = 90;
97
- RequiresRepairTarget = 91;
98
- NoItemsToDrop = 92;
99
- CantHoldAnyMoreItems = 93;
100
- CantHoldThat = 94;
101
- TargetHasNoInventory = 95;
102
- CantDropThisItem = 96;
103
- CantMoveThisItem = 97;
104
- CantPawnThisUnit = 98;
105
- MustTargetCaster = 99;
106
- CantTargetCaster = 100;
107
- MustTargetOuter = 101;
108
- CantTargetOuter = 102;
109
- MustTargetYourOwnUnits = 103;
110
- CantTargetYourOwnUnits = 104;
111
- MustTargetFriendlyUnits = 105;
112
- CantTargetFriendlyUnits = 106;
113
- MustTargetNeutralUnits = 107;
114
- CantTargetNeutralUnits = 108;
115
- MustTargetEnemyUnits = 109;
116
- CantTargetEnemyUnits = 110;
117
- MustTargetAirUnits = 111;
118
- CantTargetAirUnits = 112;
119
- MustTargetGroundUnits = 113;
120
- CantTargetGroundUnits = 114;
121
- MustTargetStructures = 115;
122
- CantTargetStructures = 116;
123
- MustTargetLightUnits = 117;
124
- CantTargetLightUnits = 118;
125
- MustTargetArmoredUnits = 119;
126
- CantTargetArmoredUnits = 120;
127
- MustTargetBiologicalUnits = 121;
128
- CantTargetBiologicalUnits = 122;
129
- MustTargetHeroicUnits = 123;
130
- CantTargetHeroicUnits = 124;
131
- MustTargetRoboticUnits = 125;
132
- CantTargetRoboticUnits = 126;
133
- MustTargetMechanicalUnits = 127;
134
- CantTargetMechanicalUnits = 128;
135
- MustTargetPsionicUnits = 129;
136
- CantTargetPsionicUnits = 130;
137
- MustTargetMassiveUnits = 131;
138
- CantTargetMassiveUnits = 132;
139
- MustTargetMissile = 133;
140
- CantTargetMissile = 134;
141
- MustTargetWorkerUnits = 135;
142
- CantTargetWorkerUnits = 136;
143
- MustTargetEnergyCapableUnits = 137;
144
- CantTargetEnergyCapableUnits = 138;
145
- MustTargetShieldCapableUnits = 139;
146
- CantTargetShieldCapableUnits = 140;
147
- MustTargetFlyers = 141;
148
- CantTargetFlyers = 142;
149
- MustTargetBuriedUnits = 143;
150
- CantTargetBuriedUnits = 144;
151
- MustTargetCloakedUnits = 145;
152
- CantTargetCloakedUnits = 146;
153
- MustTargetUnitsInAStasisField = 147;
154
- CantTargetUnitsInAStasisField = 148;
155
- MustTargetUnderConstructionUnits = 149;
156
- CantTargetUnderConstructionUnits = 150;
157
- MustTargetDeadUnits = 151;
158
- CantTargetDeadUnits = 152;
159
- MustTargetRevivableUnits = 153;
160
- CantTargetRevivableUnits = 154;
161
- MustTargetHiddenUnits = 155;
162
- CantTargetHiddenUnits = 156;
163
- CantRechargeOtherPlayersUnits = 157;
164
- MustTargetHallucinations = 158;
165
- CantTargetHallucinations = 159;
166
- MustTargetInvulnerableUnits = 160;
167
- CantTargetInvulnerableUnits = 161;
168
- MustTargetDetectedUnits = 162;
169
- CantTargetDetectedUnits = 163;
170
- CantTargetUnitWithEnergy = 164;
171
- CantTargetUnitWithShields = 165;
172
- MustTargetUncommandableUnits = 166;
173
- CantTargetUncommandableUnits = 167;
174
- MustTargetPreventDefeatUnits = 168;
175
- CantTargetPreventDefeatUnits = 169;
176
- MustTargetPreventRevealUnits = 170;
177
- CantTargetPreventRevealUnits = 171;
178
- MustTargetPassiveUnits = 172;
179
- CantTargetPassiveUnits = 173;
180
- MustTargetStunnedUnits = 174;
181
- CantTargetStunnedUnits = 175;
182
- MustTargetSummonedUnits = 176;
183
- CantTargetSummonedUnits = 177;
184
- MustTargetUser1 = 178;
185
- CantTargetUser1 = 179;
186
- MustTargetUnstoppableUnits = 180;
187
- CantTargetUnstoppableUnits = 181;
188
- MustTargetResistantUnits = 182;
189
- CantTargetResistantUnits = 183;
190
- MustTargetDazedUnits = 184;
191
- CantTargetDazedUnits = 185;
192
- CantLockdown = 186;
193
- CantMindControl = 187;
194
- MustTargetDestructibles = 188;
195
- CantTargetDestructibles = 189;
196
- MustTargetItems = 190;
197
- CantTargetItems = 191;
198
- NoCalldownAvailable = 192;
199
- WaypointListFull = 193;
200
- MustTargetRace = 194;
201
- CantTargetRace = 195;
202
- MustTargetSimilarUnits = 196;
203
- CantTargetSimilarUnits = 197;
204
- CantFindEnoughTargets = 198;
205
- AlreadySpawningLarva = 199;
206
- CantTargetExhaustedResources = 200;
207
- CantUseMinimap = 201;
208
- CantUseInfoPanel = 202;
209
- OrderQueueIsFull = 203;
210
- CantHarvestThatResource = 204;
211
- HarvestersNotRequired = 205;
212
- AlreadyTargeted = 206;
213
- CantAttackWeaponsDisabled = 207;
214
- CouldntReachTarget = 208;
215
- TargetIsOutOfRange = 209;
216
- TargetIsTooClose = 210;
217
- TargetIsOutOfArc = 211;
218
- CantFindTeleportLocation = 212;
219
- InvalidItemClass = 213;
220
- 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
+
221
223
  }
@@ -1,5 +1,5 @@
1
1
 
2
- syntax = "proto2";
2
+ syntax = "proto3";
3
3
 
4
4
  package Api;
5
5