sc2ai 0.0.0.pre → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (93) hide show
  1. checksums.yaml +4 -4
  2. data/data/data.json +1 -0
  3. data/data/data_readable.json +22946 -0
  4. data/data/sc2ai/protocol/common.proto +59 -0
  5. data/data/sc2ai/protocol/data.proto +120 -0
  6. data/data/sc2ai/protocol/debug.proto +127 -0
  7. data/data/sc2ai/protocol/error.proto +221 -0
  8. data/data/sc2ai/protocol/query.proto +55 -0
  9. data/data/sc2ai/protocol/raw.proto +202 -0
  10. data/data/sc2ai/protocol/sc2api.proto +718 -0
  11. data/data/sc2ai/protocol/score.proto +108 -0
  12. data/data/sc2ai/protocol/spatial.proto +115 -0
  13. data/data/sc2ai/protocol/ui.proto +145 -0
  14. data/data/setup/setup.SC2Map +0 -0
  15. data/data/setup/setup.SC2Replay +0 -0
  16. data/data/stableid.json +37900 -0
  17. data/data/versions.json +554 -0
  18. data/exe/sc2ai +35 -0
  19. data/lib/docker_build/Dockerfile.ruby +74 -0
  20. data/lib/docker_build/docker-compose-base-image.yml +10 -0
  21. data/lib/docker_build/docker-compose-ladderzip.yml +9 -0
  22. data/lib/sc2ai/api/ability_id.rb +1951 -0
  23. data/lib/sc2ai/api/buff_id.rb +316 -0
  24. data/lib/sc2ai/api/data.rb +101 -0
  25. data/lib/sc2ai/api/effect_id.rb +20 -0
  26. data/lib/sc2ai/api/tech_tree.rb +82 -0
  27. data/lib/sc2ai/api/tech_tree_data.rb +2342 -0
  28. data/lib/sc2ai/api/unit_type_id.rb +2074 -0
  29. data/lib/sc2ai/api/upgrade_id.rb +312 -0
  30. data/lib/sc2ai/cli/cli.rb +177 -0
  31. data/lib/sc2ai/cli/ladderzip.rb +173 -0
  32. data/lib/sc2ai/cli/new.rb +88 -0
  33. data/lib/sc2ai/configuration.rb +145 -0
  34. data/lib/sc2ai/connection/connection_listener.rb +30 -0
  35. data/lib/sc2ai/connection/requests.rb +417 -0
  36. data/lib/sc2ai/connection/status_listener.rb +15 -0
  37. data/lib/sc2ai/connection.rb +146 -0
  38. data/lib/sc2ai/local_play/client/configurable_options.rb +115 -0
  39. data/lib/sc2ai/local_play/client.rb +159 -0
  40. data/lib/sc2ai/local_play/client_manager.rb +70 -0
  41. data/lib/sc2ai/local_play/map_file.rb +48 -0
  42. data/lib/sc2ai/local_play/match.rb +184 -0
  43. data/lib/sc2ai/overrides/array.rb +14 -0
  44. data/lib/sc2ai/overrides/async/process/child.rb +31 -0
  45. data/lib/sc2ai/overrides/kernel.rb +33 -0
  46. data/lib/sc2ai/paths.rb +294 -0
  47. data/lib/sc2ai/player/actions.rb +386 -0
  48. data/lib/sc2ai/player/debug.rb +224 -0
  49. data/lib/sc2ai/player/game_state.rb +131 -0
  50. data/lib/sc2ai/player/geometry.rb +766 -0
  51. data/lib/sc2ai/player/previous_state.rb +49 -0
  52. data/lib/sc2ai/player/units.rb +337 -0
  53. data/lib/sc2ai/player.rb +661 -0
  54. data/lib/sc2ai/ports.rb +152 -0
  55. data/lib/sc2ai/protocol/_meta_documentation.rb +39 -0
  56. data/lib/sc2ai/protocol/common_pb.rb +43 -0
  57. data/lib/sc2ai/protocol/data_pb.rb +47 -0
  58. data/lib/sc2ai/protocol/debug_pb.rb +56 -0
  59. data/lib/sc2ai/protocol/error_pb.rb +36 -0
  60. data/lib/sc2ai/protocol/extensions/color.rb +20 -0
  61. data/lib/sc2ai/protocol/extensions/point.rb +23 -0
  62. data/lib/sc2ai/protocol/extensions/point_2_d.rb +26 -0
  63. data/lib/sc2ai/protocol/extensions/position.rb +202 -0
  64. data/lib/sc2ai/protocol/extensions/power_source.rb +19 -0
  65. data/lib/sc2ai/protocol/extensions/unit.rb +489 -0
  66. data/lib/sc2ai/protocol/query_pb.rb +47 -0
  67. data/lib/sc2ai/protocol/raw_pb.rb +57 -0
  68. data/lib/sc2ai/protocol/sc2api_pb.rb +130 -0
  69. data/lib/sc2ai/protocol/score_pb.rb +40 -0
  70. data/lib/sc2ai/protocol/spatial_pb.rb +48 -0
  71. data/lib/sc2ai/protocol/ui_pb.rb +56 -0
  72. data/lib/sc2ai/unit_group/action_ext.rb +74 -0
  73. data/lib/sc2ai/unit_group/filter_ext.rb +379 -0
  74. data/lib/sc2ai/unit_group.rb +277 -0
  75. data/lib/sc2ai/version.rb +2 -1
  76. data/lib/sc2ai.rb +93 -2
  77. data/lib/templates/ladderzip/bin/ladder.tt +23 -0
  78. data/lib/templates/new/.ladderignore +20 -0
  79. data/lib/templates/new/Gemfile.tt +7 -0
  80. data/lib/templates/new/api/common.proto +59 -0
  81. data/lib/templates/new/api/data.proto +120 -0
  82. data/lib/templates/new/api/debug.proto +127 -0
  83. data/lib/templates/new/api/error.proto +221 -0
  84. data/lib/templates/new/api/query.proto +55 -0
  85. data/lib/templates/new/api/raw.proto +202 -0
  86. data/lib/templates/new/api/sc2api.proto +718 -0
  87. data/lib/templates/new/api/score.proto +108 -0
  88. data/lib/templates/new/api/spatial.proto +115 -0
  89. data/lib/templates/new/api/ui.proto +145 -0
  90. data/lib/templates/new/boot.rb.tt +6 -0
  91. data/lib/templates/new/my_bot.rb.tt +23 -0
  92. data/lib/templates/new/run_example_match.rb.tt +14 -0
  93. metadata +353 -9
@@ -0,0 +1,554 @@
1
+ [
2
+ {
3
+ "base-version": 52910,
4
+ "data-hash": "8D9FEF2E1CF7C6C9CBE4FBCA830DDE1C",
5
+ "fixed-hash": "009BC85EF547B51EBF461C83A9CBAB30",
6
+ "label": "3.13",
7
+ "replay-hash": "47BFE9D10F26B0A8B74C637D6327BF3C",
8
+ "version": 52910
9
+ },
10
+ {
11
+ "base-version": 53644,
12
+ "data-hash": "CA275C4D6E213ED30F80BACCDFEDB1F5",
13
+ "fixed-hash": "29198786619C9011735BCFD378E49CB6",
14
+ "label": "3.14",
15
+ "replay-hash": "5AF236FC012ADB7289DB493E63F73FD5",
16
+ "version": 53644
17
+ },
18
+ {
19
+ "base-version": 54518,
20
+ "data-hash": "BBF619CCDCC80905350F34C2AF0AB4F6",
21
+ "fixed-hash": "D5963F25A17D9E1EA406FF6BBAA9B736",
22
+ "label": "3.15",
23
+ "replay-hash": "43530321CF29FD11482AB9CBA3EB553D",
24
+ "version": 54518
25
+ },
26
+ {
27
+ "base-version": 54518,
28
+ "data-hash": "6EB25E687F8637457538F4B005950A5E",
29
+ "fixed-hash": "D5963F25A17D9E1EA406FF6BBAA9B736",
30
+ "label": "3.15.1",
31
+ "replay-hash": "43530321CF29FD11482AB9CBA3EB553D",
32
+ "version": 54724
33
+ },
34
+ {
35
+ "base-version": 55505,
36
+ "data-hash": "60718A7CA50D0DF42987A30CF87BCB80",
37
+ "fixed-hash": "0189B2804E2F6BA4C4591222089E63B2",
38
+ "label": "3.16",
39
+ "replay-hash": "B11811B13F0C85C29C5D4597BD4BA5A4",
40
+ "version": 55505
41
+ },
42
+ {
43
+ "base-version": 55958,
44
+ "data-hash": "5BD7C31B44525DAB46E64C4602A81DC2",
45
+ "fixed-hash": "717B05ACD26C108D18A219B03710D06D",
46
+ "label": "3.16.1",
47
+ "replay-hash": "21C8FA403BB1194E2B6EB7520016B958",
48
+ "version": 55958
49
+ },
50
+ {
51
+ "base-version": 56787,
52
+ "data-hash": "DFD1F6607F2CF19CB4E1C996B2563D9B",
53
+ "fixed-hash": "4E1C17AB6A79185A0D87F68D1C673CD9",
54
+ "label": "3.17",
55
+ "replay-hash": "D0296961C9EA1356F727A2468967A1E2",
56
+ "version": 56787
57
+ },
58
+ {
59
+ "base-version": 56787,
60
+ "data-hash": "3F2FCED08798D83B873B5543BEFA6C4B",
61
+ "fixed-hash": "4474B6B7B0D1423DAA76B9623EF2E9A9",
62
+ "label": "3.17.1",
63
+ "replay-hash": "D0296961C9EA1356F727A2468967A1E2",
64
+ "version": 57218
65
+ },
66
+ {
67
+ "base-version": 56787,
68
+ "data-hash": "C690FC543082D35EA0AAA876B8362BEA",
69
+ "fixed-hash": "4474B6B7B0D1423DAA76B9623EF2E9A9",
70
+ "label": "3.17.2",
71
+ "replay-hash": "D0296961C9EA1356F727A2468967A1E2",
72
+ "version": 57490
73
+ },
74
+ {
75
+ "base-version": 57507,
76
+ "data-hash": "1659EF34997DA3470FF84A14431E3A86",
77
+ "fixed-hash": "95666060F129FD267C5A8135A8920AA2",
78
+ "label": "3.18",
79
+ "replay-hash": "06D650F850FDB2A09E4B01D2DF8C433A",
80
+ "version": 57507
81
+ },
82
+ {
83
+ "base-version": 58400,
84
+ "data-hash": "2B06AEE58017A7DF2A3D452D733F1019",
85
+ "fixed-hash": "2CFE1B8757DA80086DD6FD6ECFF21AC6",
86
+ "label": "3.19",
87
+ "replay-hash": "227B6048D55535E0FF5607746EBCC45E",
88
+ "version": 58400
89
+ },
90
+ {
91
+ "base-version": 58400,
92
+ "data-hash": "D9B568472880CC4719D1B698C0D86984",
93
+ "fixed-hash": "CE1005E9B145BDFC8E5E40CDEB5E33BB",
94
+ "label": "3.19.1",
95
+ "replay-hash": "227B6048D55535E0FF5607746EBCC45E",
96
+ "version": 58600
97
+ },
98
+ {
99
+ "base-version": 59587,
100
+ "data-hash": "9B4FD995C61664831192B7DA46F8C1A1",
101
+ "fixed-hash": "D5D5798A9CCD099932C8F855C8129A7C",
102
+ "label": "4.0",
103
+ "replay-hash": "BB4DA41B57D490BD13C13A594E314BA4",
104
+ "version": 59587
105
+ },
106
+ {
107
+ "base-version": 60196,
108
+ "data-hash": "1B8ACAB0C663D5510941A9871B3E9FBE",
109
+ "fixed-hash": "9327F9AF76CF11FC43D20E3E038B1B7A",
110
+ "label": "4.1",
111
+ "replay-hash": "AEA0C2A9D56E02C6B7D21E889D6B9B2F",
112
+ "version": 60196
113
+ },
114
+ {
115
+ "base-version": 60321,
116
+ "data-hash": "5C021D8A549F4A776EE9E9C1748FFBBC",
117
+ "fixed-hash": "C53FA3A7336EDF320DCEB0BC078AEB0A",
118
+ "label": "4.1.1",
119
+ "replay-hash": "8EE054A8D98C7B0207E709190A6F3953",
120
+ "version": 60321
121
+ },
122
+ {
123
+ "base-version": 60321,
124
+ "data-hash": "33D9FE28909573253B7FC352CE7AEA40",
125
+ "fixed-hash": "FEE6F86A211380DF509F3BBA58A76B87",
126
+ "label": "4.1.2",
127
+ "replay-hash": "8EE054A8D98C7B0207E709190A6F3953",
128
+ "version": 60604
129
+ },
130
+ {
131
+ "base-version": 60321,
132
+ "data-hash": "F486693E00B2CD305B39E0AB254623EB",
133
+ "fixed-hash": "AF7F5499862F497C7154CB59167FEFB3",
134
+ "label": "4.1.3",
135
+ "replay-hash": "8EE054A8D98C7B0207E709190A6F3953",
136
+ "version": 61021
137
+ },
138
+ {
139
+ "base-version": 60321,
140
+ "data-hash": "2E2A3F6E0BAFE5AC659C4D39F13A938C",
141
+ "fixed-hash": "F9A68CF1FBBF867216FFECD9EAB72F4A",
142
+ "label": "4.1.4",
143
+ "replay-hash": "8EE054A8D98C7B0207E709190A6F3953",
144
+ "version": 61545
145
+ },
146
+ {
147
+ "base-version": 62347,
148
+ "data-hash": "C0C0E9D37FCDBC437CE386C6BE2D1F93",
149
+ "fixed-hash": "A5C4BE991F37F1565097AAD2A707FC4C",
150
+ "label": "4.2",
151
+ "replay-hash": "2167A7733637F3AFC49B210D165219A7",
152
+ "version": 62347
153
+ },
154
+ {
155
+ "base-version": 62848,
156
+ "data-hash": "29BBAC5AFF364B6101B661DB468E3A37",
157
+ "fixed-hash": "ABAF9318FE79E84485BEC5D79C31262C",
158
+ "label": "4.2.1",
159
+ "replay-hash": "A7ACEC5759ADB459A5CEC30A575830EC",
160
+ "version": 62848
161
+ },
162
+ {
163
+ "base-version": 63454,
164
+ "data-hash": "3CB54C86777E78557C984AB1CF3494A0",
165
+ "fixed-hash": "A9DCDAA97F7DA07F6EF29C0BF4DFC50D",
166
+ "label": "4.2.2",
167
+ "replay-hash": "A7ACEC5759ADB459A5CEC30A575830EC",
168
+ "version": 63454
169
+ },
170
+ {
171
+ "base-version": 64469,
172
+ "data-hash": "C92B3E9683D5A59E08FC011F4BE167FF",
173
+ "fixed-hash": "DDF3E0A6C00DC667F59BF90F793C71B8",
174
+ "label": "4.3",
175
+ "replay-hash": "6E80072968515101AF08D3953FE3EEBA",
176
+ "version": 64469
177
+ },
178
+ {
179
+ "base-version": 65094,
180
+ "data-hash": "E5A21037AA7A25C03AC441515F4E0644",
181
+ "fixed-hash": "09EF8E9B96F14C5126F1DB5378D15F3A",
182
+ "label": "4.3.1",
183
+ "replay-hash": "DD9B57C516023B58F5B588377880D93A",
184
+ "version": 65094
185
+ },
186
+ {
187
+ "base-version": 65384,
188
+ "data-hash": "B6D73C85DFB70F5D01DEABB2517BF11C",
189
+ "fixed-hash": "615C1705E4C7A5FD8690B3FD376C1AFE",
190
+ "label": "4.3.2",
191
+ "replay-hash": "DD9B57C516023B58F5B588377880D93A",
192
+ "version": 65384
193
+ },
194
+ {
195
+ "base-version": 65895,
196
+ "data-hash": "BF41339C22AE2EDEBEEADC8C75028F7D",
197
+ "fixed-hash": "C622989A4C0AF7ED5715D472C953830B",
198
+ "label": "4.4",
199
+ "replay-hash": "441BBF1A222D5C0117E85B118706037F",
200
+ "version": 65895
201
+ },
202
+ {
203
+ "base-version": 66668,
204
+ "data-hash": "C094081D274A39219061182DBFD7840F",
205
+ "fixed-hash": "1C236A42171AAC6DD1D5E50D779C522D",
206
+ "label": "4.4.1",
207
+ "replay-hash": "21D5B4B4D5175C562CF4C4A803C995C6",
208
+ "version": 66668
209
+ },
210
+ {
211
+ "base-version": 67188,
212
+ "data-hash": "2ACF84A7ECBB536F51FC3F734EC3019F",
213
+ "fixed-hash": "2F0094C990E0D4E505570195F96C2A0C",
214
+ "label": "4.5",
215
+ "replay-hash": "E9873B3A3846F5878CEE0D1E2ADD204A",
216
+ "version": 67188
217
+ },
218
+ {
219
+ "base-version": 67188,
220
+ "data-hash": "6D239173B8712461E6A7C644A5539369",
221
+ "fixed-hash": "A1BC35751ACC34CF887321A357B40158",
222
+ "label": "4.5.1",
223
+ "replay-hash": "E9873B3A3846F5878CEE0D1E2ADD204A",
224
+ "version": 67344
225
+ },
226
+ {
227
+ "base-version": 67926,
228
+ "data-hash": "7DE59231CBF06F1ECE9A25A27964D4AE",
229
+ "fixed-hash": "570BEB69151F40D010E89DE1825AE680",
230
+ "label": "4.6",
231
+ "replay-hash": "DA662F9091DF6590A5E323C21127BA5A",
232
+ "version": 67926
233
+ },
234
+ {
235
+ "base-version": 67926,
236
+ "data-hash": "BEA99B4A8E7B41E62ADC06D194801BAB",
237
+ "fixed-hash": "309E45F53690F8D1108F073ABB4D4734",
238
+ "label": "4.6.1",
239
+ "replay-hash": "DA662F9091DF6590A5E323C21127BA5A",
240
+ "version": 68195
241
+ },
242
+ {
243
+ "base-version": 69232,
244
+ "data-hash": "B3E14058F1083913B80C20993AC965DB",
245
+ "fixed-hash": "21935E776237EF12B6CC73E387E76D6E",
246
+ "label": "4.6.2",
247
+ "replay-hash": "A230717B315D83ACC3697B6EC28C3FF6",
248
+ "version": 69232
249
+ },
250
+ {
251
+ "base-version": 70154,
252
+ "data-hash": "8E216E34BC61ABDE16A59A672ACB0F3B",
253
+ "fixed-hash": "09CD819C667C67399F5131185334243E",
254
+ "label": "4.7",
255
+ "replay-hash": "9692B04D6E695EF08A2FB920979E776C",
256
+ "version": 70154
257
+ },
258
+ {
259
+ "base-version": 70154,
260
+ "data-hash": "94596A85191583AD2EBFAE28C5D532DB",
261
+ "fixed-hash": "0AE50F82AC1A7C0DCB6A290D7FBA45DB",
262
+ "label": "4.7.1",
263
+ "replay-hash": "D74FBB3CB0897A3EE8F44E78119C4658",
264
+ "version": 70326
265
+ },
266
+ {
267
+ "base-version": 71061,
268
+ "data-hash": "760581629FC458A1937A05ED8388725B",
269
+ "fixed-hash": "815C099DF1A17577FDC186FDB1381B16",
270
+ "label": "4.8",
271
+ "replay-hash": "BD692311442926E1F0B7C17E9ABDA34B",
272
+ "version": 71061
273
+ },
274
+ {
275
+ "base-version": 71523,
276
+ "data-hash": "FCAF3F050B7C0CC7ADCF551B61B9B91E",
277
+ "fixed-hash": "4593CC331691620509983E92180A309A",
278
+ "label": "4.8.1",
279
+ "replay-hash": "BD692311442926E1F0B7C17E9ABDA34B",
280
+ "version": 71523
281
+ },
282
+ {
283
+ "base-version": 71663,
284
+ "data-hash": "FE90C92716FC6F8F04B74268EC369FA5",
285
+ "fixed-hash": "1DBF3819F3A7367592648632CC0D5BFD",
286
+ "label": "4.8.2",
287
+ "replay-hash": "E43A9885B3EFAE3D623091485ECCCB6C",
288
+ "version": 71663
289
+ },
290
+ {
291
+ "base-version": 72282,
292
+ "data-hash": "0F14399BBD0BA528355FF4A8211F845B",
293
+ "fixed-hash": "E9958B2CB666DCFE101D23AF87DB8140",
294
+ "label": "4.8.3",
295
+ "replay-hash": "3AF3657F55AB961477CE268F5CA33361",
296
+ "version": 72282
297
+ },
298
+ {
299
+ "base-version": 73286,
300
+ "data-hash": "CD040C0675FD986ED37A4CA3C88C8EB5",
301
+ "fixed-hash": "62A146F7A0D19A8DD05BF011631B31B8",
302
+ "label": "4.8.4",
303
+ "replay-hash": "EE3A89F443BE868EBDA33A17C002B609",
304
+ "version": 73286
305
+ },
306
+ {
307
+ "base-version": 73559,
308
+ "data-hash": "B2465E73AED597C74D0844112D582595",
309
+ "fixed-hash": "EF0A43C33413613BC7343B86C0A7CC92",
310
+ "label": "4.8.5",
311
+ "replay-hash": "147388D35E76861BD4F590F8CC5B7B0B",
312
+ "version": 73559
313
+ },
314
+ {
315
+ "base-version": 73620,
316
+ "data-hash": "AA18FEAD6573C79EF707DF44ABF1BE61",
317
+ "fixed-hash": "4D76491CCAE756F0498D1C5B2973FF9C",
318
+ "label": "4.8.6",
319
+ "replay-hash": "147388D35E76861BD4F590F8CC5B7B0B",
320
+ "version": 73620
321
+ },
322
+ {
323
+ "base-version": 74071,
324
+ "data-hash": "70C74A2DCA8A0D8E7AE8647CAC68ACCA",
325
+ "fixed-hash": "C4A3F01B4753245296DC94BC1B5E9B36",
326
+ "label": "4.9",
327
+ "replay-hash": "19D15E5391FACB379BFCA262CA8FD208",
328
+ "version": 74071
329
+ },
330
+ {
331
+ "base-version": 74456,
332
+ "data-hash": "218CB2271D4E2FA083470D30B1A05F02",
333
+ "fixed-hash": "E82051387C591CAB1212B64073759826",
334
+ "label": "4.9.1",
335
+ "replay-hash": "1586ADF060C26219FF3404673D70245B",
336
+ "version": 74456
337
+ },
338
+ {
339
+ "base-version": 74741,
340
+ "data-hash": "614480EF79264B5BD084E57F912172FF",
341
+ "fixed-hash": "500CC375B7031C8272546B78E9BE439F",
342
+ "label": "4.9.2",
343
+ "replay-hash": "A7FAC56F940382E05157EAB19C932E3A",
344
+ "version": 74741
345
+ },
346
+ {
347
+ "base-version": 75025,
348
+ "data-hash": "C305368C63621480462F8F516FB64374",
349
+ "fixed-hash": "DEE7842C8BCB6874EC254AA3D45365F7",
350
+ "label": "4.9.3",
351
+ "replay-hash": "A7FAC56F940382E05157EAB19C932E3A",
352
+ "version": 75025
353
+ },
354
+ {
355
+ "base-version": 75689,
356
+ "data-hash": "B89B5D6FA7CBF6452E721311BFBC6CB2",
357
+ "fixed-hash": "2B2097DC4AD60A2D1E1F38691A1FF111",
358
+ "label": "4.10",
359
+ "replay-hash": "6A60E59031A7DB1B272EE87E51E4C7CD",
360
+ "version": 75689
361
+ },
362
+ {
363
+ "base-version": 75800,
364
+ "data-hash": "DDFFF9EC4A171459A4F371C6CC189554",
365
+ "fixed-hash": "1FB8FAF4A87940621B34F0B8F6FDDEA6",
366
+ "label": "4.10.1",
367
+ "replay-hash": "6A60E59031A7DB1B272EE87E51E4C7CD",
368
+ "version": 75800
369
+ },
370
+ {
371
+ "base-version": 76052,
372
+ "data-hash": "D0F1A68AA88BA90369A84CD1439AA1C3",
373
+ "fixed-hash": "",
374
+ "label": "4.10.2",
375
+ "replay-hash": "",
376
+ "version": 76052
377
+ },
378
+ {
379
+ "base-version": 76114,
380
+ "data-hash": "CDB276D311F707C29BA664B7754A7293",
381
+ "fixed-hash": "",
382
+ "label": "4.10.3",
383
+ "replay-hash": "",
384
+ "version": 76114
385
+ },
386
+ {
387
+ "base-version": 76811,
388
+ "data-hash": "FF9FA4EACEC5F06DEB27BD297D73ED67",
389
+ "fixed-hash": "",
390
+ "label": "4.10.4",
391
+ "replay-hash": "",
392
+ "version": 76811
393
+ },
394
+ {
395
+ "base-version": 77379,
396
+ "data-hash": "70E774E722A58287EF37D487605CD384",
397
+ "fixed-hash": "",
398
+ "label": "4.11.0",
399
+ "replay-hash": "",
400
+ "version": 77379
401
+ },
402
+ {
403
+ "base-version": 77379,
404
+ "data-hash": "F92D1127A291722120AC816F09B2E583",
405
+ "fixed-hash": "",
406
+ "label": "4.11.1",
407
+ "replay-hash": "",
408
+ "version": 77474
409
+ },
410
+ {
411
+ "base-version": 77535,
412
+ "data-hash": "FC43E0897FCC93E4632AC57CBC5A2137",
413
+ "fixed-hash": "",
414
+ "label": "4.11.2",
415
+ "replay-hash": "",
416
+ "version": 77535
417
+ },
418
+ {
419
+ "base-version": 77661,
420
+ "data-hash": "A15B8E4247434B020086354F39856C51",
421
+ "fixed-hash": "",
422
+ "label": "4.11.3",
423
+ "replay-hash": "",
424
+ "version": 77661
425
+ },
426
+ {
427
+ "base-version": 78285,
428
+ "data-hash": "69493AFAB5C7B45DDB2F3442FD60F0CF",
429
+ "fixed-hash": "21D2EBD5C79DECB3642214BAD4A7EF56",
430
+ "label": "4.11.4",
431
+ "replay-hash": "CAB5C056EDBDA415C552074BF363CC85",
432
+ "version": 78285
433
+ },
434
+ {
435
+ "base-version": 79998,
436
+ "data-hash": "B47567DEE5DC23373BFF57194538DFD3",
437
+ "fixed-hash": "0A698A1B072BC4B087F44DDEF0BE361E",
438
+ "label": "4.12.0",
439
+ "replay-hash": "9E15AA09E15FE3AF3655126CEEC7FF42",
440
+ "version": 79998
441
+ },
442
+ {
443
+ "base-version": 80188,
444
+ "data-hash": "44DED5AED024D23177C742FC227C615A",
445
+ "fixed-hash": "0A698A1B072BC4B087F44DDEF0BE361E",
446
+ "label": "4.12.1",
447
+ "replay-hash": "9E15AA09E15FE3AF3655126CEEC7FF42",
448
+ "version": 80188
449
+ },
450
+ {
451
+ "base-version": 80949,
452
+ "data-hash": "9AE39C332883B8BF6AA190286183ED72",
453
+ "fixed-hash": "DACEAFAB8B983C08ACD31ABC085A0052",
454
+ "label": "5.0.0",
455
+ "replay-hash": "28C41277C5837AABF9838B64ACC6BDCF",
456
+ "version": 80949
457
+ },
458
+ {
459
+ "base-version": 81009,
460
+ "data-hash": "0D28678BC32E7F67A238F19CD3E0A2CE",
461
+ "fixed-hash": "DACEAFAB8B983C08ACD31ABC085A0052",
462
+ "label": "5.0.1",
463
+ "replay-hash": "28C41277C5837AABF9838B64ACC6BDCF",
464
+ "version": 81009
465
+ },
466
+ {
467
+ "base-version": 81102,
468
+ "data-hash": "DC0A1182FB4ABBE8E29E3EC13CF46F68",
469
+ "fixed-hash": "0C193BD5F63BBAB79D798278F8B2548E",
470
+ "label": "5.0.2",
471
+ "replay-hash": "08BB9D4CAE25B57160A6E4AD7B8E1A5A",
472
+ "version": 81102
473
+ },
474
+ {
475
+ "base-version": 81433,
476
+ "data-hash": "5FD8D4B6B52723B44862DF29F232CF31",
477
+ "fixed-hash": "4FC35CEA63509AB06AA80AACC1B3B700",
478
+ "label": "5.0.3",
479
+ "replay-hash": "0920F1BD722655B41DA096B98CC0912D",
480
+ "version": 81433
481
+ },
482
+ {
483
+ "base-version": 82457,
484
+ "data-hash": "D2707E265785612D12B381AF6ED9DBF4",
485
+ "fixed-hash": "ED05F0DB335D003FBC3C7DEF69911114",
486
+ "label": "5.0.4",
487
+ "replay-hash": "7D9EE968AAD81761334BD9076BFD9EFF",
488
+ "version": 82457
489
+ },
490
+ {
491
+ "base-version": 82893,
492
+ "data-hash": "D795328C01B8A711947CC62AA9750445",
493
+ "fixed-hash": "ED05F0DB335D003FBC3C7DEF69911114",
494
+ "label": "5.0.5",
495
+ "replay-hash": "7D9EE968AAD81761334BD9076BFD9EFF",
496
+ "version": 82893
497
+ },
498
+ {
499
+ "base-version": 83830,
500
+ "data-hash": "B4745D6A4F982A3143C183D8ACB6C3E3",
501
+ "fixed-hash": "ed05f0db335d003fbc3c7def69911114",
502
+ "label": "5.0.6",
503
+ "replay-hash": "7D9EE968AAD81761334BD9076BFD9EFF",
504
+ "version": 83830
505
+ },
506
+ {
507
+ "base-version": 84643,
508
+ "data-hash": "A389D1F7DF9DD792FBE980533B7119FF",
509
+ "fixed-hash": "368DE29820A74F5BE747543AC02DB3F8",
510
+ "label": "5.0.7",
511
+ "replay-hash": "7D9EE968AAD81761334BD9076BFD9EFF",
512
+ "version": 84643
513
+ },
514
+ {
515
+ "base-version": 86383,
516
+ "data-hash": "22EAC562CD0C6A31FB2C2C21E3AA3680",
517
+ "fixed-hash": "B19F4D8B87A2835F9447CA17EDD40C1E",
518
+ "label": "5.0.8",
519
+ "replay-hash": "7D9EE968AAD81761334BD9076BFD9EFF",
520
+ "version": 86383
521
+ },
522
+ {
523
+ "base-version": 87702,
524
+ "data-hash": "F799E093428D419FD634CCE9B925218C",
525
+ "fixed-hash": "B19F4D8B87A2835F9447CA17EDD40C1E",
526
+ "label": "5.0.9",
527
+ "replay-hash": "7D9EE968AAD81761334BD9076BFD9EFF",
528
+ "version": 87702
529
+ },
530
+ {
531
+ "base-version": 88500,
532
+ "data-hash": "F38043A301B034A78AD13F558257DCF8",
533
+ "fixed-hash": "F3853B6E3B6013415CAC30EF3B27564B",
534
+ "label": "5.0.10",
535
+ "replay-hash": "A79CD3B6C6DADB0ECAEFA06E6D18E47B",
536
+ "version": 88500
537
+ },
538
+ {
539
+ "base-version": 89720,
540
+ "data-hash": "D371D4D7D1E6C131B24A09FC0E758547",
541
+ "fixed-hash": "F3853B6E3B6013415CAC30EF3B27564B",
542
+ "label": "5.0.11",
543
+ "replay-hash": "A79CD3B6C6DADB0ECAEFA06E6D18E47B",
544
+ "version": 89720
545
+ },
546
+ {
547
+ "base-version": 91115,
548
+ "data-hash": "7857A76754FEB47C823D18993C476BF0",
549
+ "fixed-hash": "99E19D19DA59112C1744A83CB49614A5",
550
+ "label": "5.0.12",
551
+ "replay-hash": "BE64E420B329BD2A7D10EEBC0039D6E5",
552
+ "version": 89720
553
+ }
554
+ ]
data/exe/sc2ai ADDED
@@ -0,0 +1,35 @@
1
+ #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
3
+
4
+ # require "pathname"
5
+ # $LOAD_PATH.unshift(Pathname(File.dirname(__FILE__)).parent.join("lib").expand_path.to_s)
6
+
7
+ require "sc2ai/cli/cli"
8
+
9
+ # This got old quickly.
10
+ # puts <<-LOGO
11
+ #
12
+ # .:^~!77?7~:. .:~7?77!~^:.
13
+ # .:~?JYJJJJJJ?7~. .!7JJJJJJJYJ?~:
14
+ # .^?JJJJJJJY: ^YJJJJJJJ?^.
15
+ # 7JJJJJJJ. ^JJJJJJJ7
16
+ # .^^^^^^^^YPPPPPPP?. :JJ55555?.:::::::::::.
17
+ # 7@@@@@@@@@@@@@&&@&J ^G#&&&&&@@@@@@@@@@&G!.
18
+ # ^77!!!!!!!PGGB&&BY. !BGGGGGGP77777?BG7.
19
+ # ~??777?~7JJJYYJJ: !PBBBBBYJ~
20
+ # J&@@@@@&PJJJJJJ..&@&&&&&YJ~ ~PGJ JG?
21
+ # .Y&@&&&&#YJJJJ.!@&&&&&&JJ~ .#P @@! &@#
22
+ # .P&&&&&&GJJJ.^@&&&&&&YJ~ @#G77@@. #@#
23
+ # ^B&&&&&&PJ. B@&&&&&BJ~ 7@J.: :@B #@5
24
+ # ~: Y&&&&&&#^ .B@&&&&&#! . :J
25
+ # 7#@&BPPPPPB&&&&&&&&! ^B&&&&&&&5~.
26
+ # .J&@&&&&&&&&&&&&&&&&&&! :JYP#&&&&@@&&B5^
27
+ # .:...........?5555555^ ^JJJJY5PJ^^:.
28
+ # .JJJJJJJ: ^JJJJJJJ.
29
+ # .!JJJJJ: ^JJJJJ!
30
+ # .!JJY: ^YJJ~.
31
+ # :7. :7:
32
+ #
33
+ # LOGO
34
+
35
+ Sc2::Cli.start
@@ -0,0 +1,74 @@
1
+ FROM debian:12-slim AS build
2
+ LABEL service="bot-ruby-local"
3
+
4
+ USER root
5
+ WORKDIR /root/ruby-builder
6
+
7
+ ARG RUBY_VERSION=3.3.0
8
+ ARG DEBIAN_DISABLE_RUBYGEMS_INTEGRATION=true
9
+
10
+ # Deps - Ruby build
11
+ RUN apt-get update
12
+ RUN apt install --assume-yes rustc curl build-essential libssl-dev zlib1g-dev libgmp-dev uuid-dev
13
+
14
+ # Deps - libyaml from source
15
+ RUN curl https://pyyaml.org/download/libyaml/yaml-0.2.5.tar.gz -o yaml-0.2.5.tar.gz
16
+ RUN tar -zxf yaml-0.2.5.tar.gz
17
+
18
+ # Ruby
19
+ RUN mkdir -p /root/ruby-builder/.ruby
20
+ RUN curl https://cache.ruby-lang.org/pub/ruby/3.3/ruby-$RUBY_VERSION.tar.gz -o ruby-$RUBY_VERSION.tar.gz
21
+ RUN tar -zxf ruby-$RUBY_VERSION.tar.gz
22
+ RUN mkdir ruby-$RUBY_VERSION/build
23
+ WORKDIR /root/ruby-builder/ruby-$RUBY_VERSION/build
24
+ RUN ../configure --prefix="/root/ruby-builder/.ruby" --disable-install-doc --enable-shared --enable-load-relative --with-libyaml-source-dir=/root/ruby-builder/yaml-0.2.5
25
+ RUN make install -j8
26
+
27
+ # Clean
28
+ WORKDIR /root/ruby-builder
29
+ RUN rm ruby-$RUBY_VERSION.tar.gz
30
+ RUN rm -rf ./ruby-$RUBY_VERSION
31
+ RUN rm yaml-0.2.5.tar.gz
32
+ RUN rm -rf ./yaml-0.2.5
33
+
34
+ # Package config
35
+ # numo-linalg needs openblas, copy to ruby-prefix/lib/ dir.
36
+ RUN apt download libopenblas0-serial
37
+ RUN mkdir openblas
38
+ RUN dpkg-deb -x ./libopenblas*.deb openblas
39
+ RUN cp -d openblas/usr/lib/x86_64-linux-gnu/openblas-serial/* /root/ruby-builder/.ruby/lib/
40
+ RUN rm -rf ./openblas
41
+ RUN rm ./libopenblas0-serial*.deb
42
+
43
+ RUN apt download libgfortran5
44
+ RUN mkdir libgfortran5
45
+ RUN dpkg-deb -x ./libgfortran*.deb libgfortran5
46
+ RUN find libgfortran5
47
+ RUN cp libgfortran5/usr/lib/x86_64-linux-gnu/libgfortran.so.5 /root/ruby-builder/.ruby/lib/
48
+ RUN rm -rf ./libgfortran5
49
+ RUN rm ./libgfortran5*.deb
50
+
51
+ RUN /root/ruby-builder/.ruby/bin/ruby --yjit -v
52
+
53
+ ENV PATH "/root/ruby-builder/.ruby/bin:$PATH"
54
+ RUN gem install 'sc2ai'
55
+
56
+ #RUN apt remove --assume-yes rustc curl build-essential libssl-dev zlib1g-dev libgmp-dev uuid-dev
57
+
58
+ FROM debian:12-slim
59
+ COPY --from=build /root/ruby-builder /root/ruby-builder
60
+
61
+ RUN /root/ruby-builder/.ruby/bin/ruby --yjit -v
62
+
63
+ RUN apt-get update
64
+ RUN apt-get purge $(aptitude search '~i!~M!~prequired!~pimportant!~R~prequired!~R~R~prequired!~R~pimportant!~R~R~pimportant!busybox!grub!initramfs-tools' | awk '{print $2}') --assume-yes
65
+ RUN apt-get purge aptitude --assume-yes
66
+ RUN apt-get install zip openssl build-essential libopenblas0-serial --assume-yes
67
+ RUN apt-get autoremove --assume-yes
68
+ RUN apt-get clean --assume-yes
69
+
70
+ ENV PATH "/root/ruby-builder/.ruby/bin:$PATH"
71
+
72
+ WORKDIR /root/
73
+
74
+ ENTRYPOINT ["/bin/bash"]
@@ -0,0 +1,10 @@
1
+ version: "3.9"
2
+ services:
3
+ bot:
4
+ image: dysonreturns/aiarena-ruby-builder:latest
5
+ environment:
6
+ - CPPFLAGS=-DPNG_ARM_NEON_OPT=0
7
+ platform: "linux/amd64"
8
+ build:
9
+ dockerfile: ./Dockerfile.ruby
10
+
@@ -0,0 +1,9 @@
1
+ version: "3.9"
2
+ services:
3
+ bot:
4
+ image: dysonreturns/aiarena-ruby-builder:latest
5
+ environment:
6
+ - CPPFLAGS=-DPNG_ARM_NEON_OPT=0
7
+ platform: "linux/amd64"
8
+ tty: true
9
+