dfhack-remote-node 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE.md +16 -0
- package/README.md +126 -0
- package/build/proto.json +4390 -0
- package/dist/index.d.ts +228 -0
- package/dist/index.js +4762 -0
- package/dist/index.js.map +1 -0
- package/package.json +66 -0
- package/proto/AdventureControl.proto +109 -0
- package/proto/Basic.proto +207 -0
- package/proto/BasicApi.proto +109 -0
- package/proto/CoreProtocol.proto +92 -0
- package/proto/DwarfControl.proto +97 -0
- package/proto/ItemdefInstrument.proto +108 -0
- package/proto/RemoteFortressReader.proto +1131 -0
- package/proto/ui_sidebar_mode.proto +65 -0
|
@@ -0,0 +1,1131 @@
|
|
|
1
|
+
syntax = "proto2";
|
|
2
|
+
|
|
3
|
+
//Attempts to provide a complete framework for reading everything from a fortress needed for vizualization
|
|
4
|
+
package RemoteFortressReader;
|
|
5
|
+
|
|
6
|
+
option optimize_for = LITE_RUNTIME;
|
|
7
|
+
|
|
8
|
+
// Plugin: RemoteFortressReader
|
|
9
|
+
|
|
10
|
+
import "ItemdefInstrument.proto";
|
|
11
|
+
|
|
12
|
+
// RPC GetMaterialList : EmptyMessage -> MaterialList
|
|
13
|
+
// RPC GetGrowthList : EmptyMessage -> MaterialList
|
|
14
|
+
// RPC GetBlockList : BlockRequest -> BlockList
|
|
15
|
+
// RPC CheckHashes : EmptyMessage -> EmptyMessage
|
|
16
|
+
// RPC GetTiletypeList : EmptyMessage -> TiletypeList
|
|
17
|
+
// RPC GetPlantList : BlockRequest -> PlantList
|
|
18
|
+
// RPC GetUnitList : EmptyMessage -> UnitList
|
|
19
|
+
// RPC GetUnitListInside : BlockRequest -> UnitList
|
|
20
|
+
// RPC GetViewInfo : EmptyMessage -> ViewInfo
|
|
21
|
+
// RPC GetMapInfo : EmptyMessage -> MapInfo
|
|
22
|
+
// RPC ResetMapHashes : EmptyMessage -> EmptyMessage
|
|
23
|
+
// RPC GetItemList : EmptyMessage -> MaterialList
|
|
24
|
+
// RPC GetBuildingDefList : EmptyMessage -> BuildingList
|
|
25
|
+
// RPC GetWorldMap : EmptyMessage -> WorldMap
|
|
26
|
+
// RPC GetWorldMapNew : EmptyMessage -> WorldMap
|
|
27
|
+
// RPC GetRegionMaps : EmptyMessage -> RegionMaps
|
|
28
|
+
// RPC GetRegionMapsNew : EmptyMessage -> RegionMaps
|
|
29
|
+
// RPC GetCreatureRaws : EmptyMessage -> CreatureRawList
|
|
30
|
+
// RPC GetPartialCreatureRaws : ListRequest -> CreatureRawList
|
|
31
|
+
// RPC GetWorldMapCenter : EmptyMessage -> WorldMap
|
|
32
|
+
// RPC GetPlantRaws : EmptyMessage -> PlantRawList
|
|
33
|
+
// RPC GetPartialPlantRaws : ListRequest -> PlantRawList
|
|
34
|
+
// RPC CopyScreen : EmptyMessage -> ScreenCapture
|
|
35
|
+
// RPC PassKeyboardEvent : KeyboardEvent -> EmptyMessage
|
|
36
|
+
// RPC SendDigCommand : DigCommand -> EmptyMessage
|
|
37
|
+
// RPC SetPauseState : SingleBool -> EmptyMessage
|
|
38
|
+
// RPC GetPauseState : EmptyMessage -> SingleBool
|
|
39
|
+
// RPC GetVersionInfo : EmptyMessage -> VersionInfo
|
|
40
|
+
// RPC GetReports : EmptyMessage -> Status
|
|
41
|
+
// RPC MoveCommand : MoveCommandParams -> EmptyMessage
|
|
42
|
+
// RPC JumpCommand : MoveCommandParams -> EmptyMessage
|
|
43
|
+
// RPC MenuQuery : EmptyMessage -> MenuContents
|
|
44
|
+
// RPC MovementSelectCommand : IntMessage -> EmptyMessage
|
|
45
|
+
// RPC MiscMoveCommand : MiscMoveParams -> EmptyMessage
|
|
46
|
+
// RPC GetLanguage : EmptyMessage -> Language
|
|
47
|
+
// RPC GetGameValidity : EmptyMessage -> SingleBool
|
|
48
|
+
|
|
49
|
+
//We use shapes, etc, because the actual tiletypes may differ between DF versions.
|
|
50
|
+
enum TiletypeShape
|
|
51
|
+
{
|
|
52
|
+
NO_SHAPE = -1;
|
|
53
|
+
EMPTY = 0;
|
|
54
|
+
FLOOR = 1;
|
|
55
|
+
BOULDER = 2;
|
|
56
|
+
PEBBLES = 3;
|
|
57
|
+
WALL = 4;
|
|
58
|
+
FORTIFICATION = 5;
|
|
59
|
+
STAIR_UP = 6;
|
|
60
|
+
STAIR_DOWN = 7;
|
|
61
|
+
STAIR_UPDOWN = 8;
|
|
62
|
+
RAMP = 9;
|
|
63
|
+
RAMP_TOP = 10;
|
|
64
|
+
BROOK_BED = 11;
|
|
65
|
+
BROOK_TOP = 12;
|
|
66
|
+
TREE_SHAPE = 13;
|
|
67
|
+
SAPLING = 14;
|
|
68
|
+
SHRUB = 15;
|
|
69
|
+
ENDLESS_PIT = 16;
|
|
70
|
+
BRANCH = 17;
|
|
71
|
+
TRUNK_BRANCH = 18;
|
|
72
|
+
TWIG = 19;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
enum TiletypeSpecial
|
|
76
|
+
{
|
|
77
|
+
NO_SPECIAL = -1;
|
|
78
|
+
NORMAL = 0;
|
|
79
|
+
RIVER_SOURCE = 1;
|
|
80
|
+
WATERFALL = 2;
|
|
81
|
+
SMOOTH = 3;
|
|
82
|
+
FURROWED = 4;
|
|
83
|
+
WET = 5;
|
|
84
|
+
DEAD = 6;
|
|
85
|
+
WORN_1 = 7;
|
|
86
|
+
WORN_2 = 8;
|
|
87
|
+
WORN_3 = 9;
|
|
88
|
+
TRACK = 10;
|
|
89
|
+
SMOOTH_DEAD = 11;
|
|
90
|
+
};
|
|
91
|
+
enum TiletypeMaterial
|
|
92
|
+
{
|
|
93
|
+
NO_MATERIAL = -1;
|
|
94
|
+
AIR = 0;
|
|
95
|
+
SOIL = 1;
|
|
96
|
+
STONE = 2;
|
|
97
|
+
FEATURE = 3;
|
|
98
|
+
LAVA_STONE = 4;
|
|
99
|
+
MINERAL = 5;
|
|
100
|
+
FROZEN_LIQUID = 6;
|
|
101
|
+
CONSTRUCTION = 7;
|
|
102
|
+
GRASS_LIGHT = 8;
|
|
103
|
+
GRASS_DARK = 9;
|
|
104
|
+
GRASS_DRY = 10;
|
|
105
|
+
GRASS_DEAD = 11;
|
|
106
|
+
PLANT = 12;
|
|
107
|
+
HFS = 13;
|
|
108
|
+
CAMPFIRE = 14;
|
|
109
|
+
FIRE = 15;
|
|
110
|
+
ASHES = 16;
|
|
111
|
+
MAGMA = 17;
|
|
112
|
+
DRIFTWOOD = 18;
|
|
113
|
+
POOL = 19;
|
|
114
|
+
BROOK = 20;
|
|
115
|
+
RIVER = 21;
|
|
116
|
+
ROOT = 22;
|
|
117
|
+
TREE_MATERIAL = 23;
|
|
118
|
+
MUSHROOM = 24;
|
|
119
|
+
UNDERWORLD_GATE = 25;
|
|
120
|
+
}
|
|
121
|
+
enum TiletypeVariant
|
|
122
|
+
{
|
|
123
|
+
NO_VARIANT = -1;
|
|
124
|
+
VAR_1 = 0;
|
|
125
|
+
VAR_2 = 1;
|
|
126
|
+
VAR_3 = 2;
|
|
127
|
+
VAR_4 = 3;
|
|
128
|
+
};
|
|
129
|
+
|
|
130
|
+
enum WorldPoles
|
|
131
|
+
{
|
|
132
|
+
NO_POLES = 0;
|
|
133
|
+
NORTH_POLE = 1;
|
|
134
|
+
SOUTH_POLE = 2;
|
|
135
|
+
BOTH_POLES = 3;
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
enum BuildingDirection
|
|
139
|
+
{
|
|
140
|
+
NORTH = 0;
|
|
141
|
+
EAST = 1;
|
|
142
|
+
SOUTH = 2;
|
|
143
|
+
WEST = 3;
|
|
144
|
+
NORTHEAST = 4;
|
|
145
|
+
SOUTHEAST = 5;
|
|
146
|
+
SOUTHWEST = 6;
|
|
147
|
+
NORTHWEST = 7;
|
|
148
|
+
NONE = 8;
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
enum TileDigDesignation
|
|
152
|
+
{
|
|
153
|
+
/**
|
|
154
|
+
* no designation
|
|
155
|
+
*/
|
|
156
|
+
NO_DIG = 0;
|
|
157
|
+
/**
|
|
158
|
+
* dig walls, remove stairs and ramps, gather plants, fell trees
|
|
159
|
+
*/
|
|
160
|
+
DEFAULT_DIG = 1;
|
|
161
|
+
UP_DOWN_STAIR_DIG = 2;
|
|
162
|
+
CHANNEL_DIG = 3;
|
|
163
|
+
RAMP_DIG = 4;
|
|
164
|
+
DOWN_STAIR_DIG = 5;
|
|
165
|
+
UP_STAIR_DIG = 6;
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
enum HairStyle
|
|
169
|
+
{
|
|
170
|
+
UNKEMPT = -1;
|
|
171
|
+
NEATLY_COMBED = 0;
|
|
172
|
+
BRAIDED = 1;
|
|
173
|
+
DOUBLE_BRAID = 2;
|
|
174
|
+
PONY_TAILS = 3;
|
|
175
|
+
CLEAN_SHAVEN = 4;
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
enum InventoryMode
|
|
179
|
+
{
|
|
180
|
+
Hauled = 0;
|
|
181
|
+
/**
|
|
182
|
+
* also shield, crutch
|
|
183
|
+
*/
|
|
184
|
+
Weapon = 1;
|
|
185
|
+
/**
|
|
186
|
+
* quiver
|
|
187
|
+
*/
|
|
188
|
+
Worn = 2;
|
|
189
|
+
Piercing = 3;
|
|
190
|
+
/**
|
|
191
|
+
* attached to clothing
|
|
192
|
+
*/
|
|
193
|
+
Flask = 4;
|
|
194
|
+
/**
|
|
195
|
+
* e.g. bandage
|
|
196
|
+
*/
|
|
197
|
+
WrappedAround = 5;
|
|
198
|
+
StuckIn = 6;
|
|
199
|
+
/**
|
|
200
|
+
* string descr like Worn
|
|
201
|
+
*/
|
|
202
|
+
InMouth = 7;
|
|
203
|
+
/**
|
|
204
|
+
* Left shoulder, right shoulder, or head, selected randomly using pet_seed
|
|
205
|
+
*/
|
|
206
|
+
Pet = 8;
|
|
207
|
+
SewnInto = 9;
|
|
208
|
+
Strapped = 10;
|
|
209
|
+
}
|
|
210
|
+
|
|
211
|
+
enum ArmorLayer
|
|
212
|
+
{
|
|
213
|
+
LAYER_UNDER = 0;
|
|
214
|
+
LAYER_OVER = 1;
|
|
215
|
+
LAYER_ARMOR = 2;
|
|
216
|
+
LAYER_COVER = 3;
|
|
217
|
+
}
|
|
218
|
+
|
|
219
|
+
message Coord
|
|
220
|
+
{
|
|
221
|
+
optional int32 x = 1;
|
|
222
|
+
optional int32 y = 2;
|
|
223
|
+
optional int32 z = 3;
|
|
224
|
+
}
|
|
225
|
+
|
|
226
|
+
message Tiletype
|
|
227
|
+
{
|
|
228
|
+
required int32 id = 1;
|
|
229
|
+
optional string name = 2;
|
|
230
|
+
optional string caption = 3;
|
|
231
|
+
optional TiletypeShape shape = 4;
|
|
232
|
+
optional TiletypeSpecial special = 5;
|
|
233
|
+
optional TiletypeMaterial material = 6;
|
|
234
|
+
optional TiletypeVariant variant = 7;
|
|
235
|
+
optional string direction = 8;
|
|
236
|
+
};
|
|
237
|
+
|
|
238
|
+
message TiletypeList
|
|
239
|
+
{
|
|
240
|
+
repeated Tiletype tiletype_list = 1;
|
|
241
|
+
}
|
|
242
|
+
|
|
243
|
+
message BuildingExtents
|
|
244
|
+
{
|
|
245
|
+
required int32 pos_x = 1;
|
|
246
|
+
required int32 pos_y = 2;
|
|
247
|
+
required int32 width = 3;
|
|
248
|
+
required int32 height = 4;
|
|
249
|
+
repeated int32 extents = 5;
|
|
250
|
+
}
|
|
251
|
+
|
|
252
|
+
message BuildingItem
|
|
253
|
+
{
|
|
254
|
+
optional Item item = 1;
|
|
255
|
+
optional int32 mode = 2;
|
|
256
|
+
}
|
|
257
|
+
|
|
258
|
+
message BuildingInstance
|
|
259
|
+
{
|
|
260
|
+
required int32 index = 1;
|
|
261
|
+
optional int32 pos_x_min = 2;
|
|
262
|
+
optional int32 pos_y_min = 3;
|
|
263
|
+
optional int32 pos_z_min = 4;
|
|
264
|
+
optional int32 pos_x_max = 5;
|
|
265
|
+
optional int32 pos_y_max = 6;
|
|
266
|
+
optional int32 pos_z_max = 7;
|
|
267
|
+
optional BuildingType building_type = 8;
|
|
268
|
+
optional MatPair material = 9;
|
|
269
|
+
optional uint32 building_flags = 10;
|
|
270
|
+
optional bool is_room = 11;
|
|
271
|
+
optional BuildingExtents room = 12;
|
|
272
|
+
optional BuildingDirection direction = 13; //Doesn't mean anything for most buildings
|
|
273
|
+
repeated BuildingItem items = 14;
|
|
274
|
+
optional int32 active = 15;
|
|
275
|
+
}
|
|
276
|
+
|
|
277
|
+
message RiverEdge
|
|
278
|
+
{
|
|
279
|
+
optional int32 min_pos = 1;
|
|
280
|
+
optional int32 max_pos = 2;
|
|
281
|
+
optional int32 active = 3;
|
|
282
|
+
optional int32 elevation = 4;
|
|
283
|
+
}
|
|
284
|
+
|
|
285
|
+
message RiverTile
|
|
286
|
+
{
|
|
287
|
+
optional RiverEdge north = 1;
|
|
288
|
+
optional RiverEdge south = 2;
|
|
289
|
+
optional RiverEdge east = 3;
|
|
290
|
+
optional RiverEdge west = 4;
|
|
291
|
+
}
|
|
292
|
+
|
|
293
|
+
enum MatterState
|
|
294
|
+
{
|
|
295
|
+
Solid = 0;
|
|
296
|
+
Liquid = 1;
|
|
297
|
+
Gas = 2;
|
|
298
|
+
Powder = 3;
|
|
299
|
+
Paste = 4;
|
|
300
|
+
Pressed = 5;
|
|
301
|
+
}
|
|
302
|
+
|
|
303
|
+
message Spatter
|
|
304
|
+
{
|
|
305
|
+
optional MatPair material = 1;
|
|
306
|
+
optional int32 amount = 2;
|
|
307
|
+
optional MatterState state = 3;
|
|
308
|
+
optional MatPair item = 4;
|
|
309
|
+
}
|
|
310
|
+
|
|
311
|
+
message SpatterPile
|
|
312
|
+
{
|
|
313
|
+
repeated Spatter spatters = 1;
|
|
314
|
+
}
|
|
315
|
+
|
|
316
|
+
message Item
|
|
317
|
+
{
|
|
318
|
+
optional int32 id = 1;
|
|
319
|
+
optional Coord pos = 2;
|
|
320
|
+
optional uint32 flags1 = 3;
|
|
321
|
+
optional uint32 flags2 = 4;
|
|
322
|
+
optional MatPair type = 5;
|
|
323
|
+
optional MatPair material = 6;
|
|
324
|
+
optional ColorDefinition dye = 7;
|
|
325
|
+
optional int32 stack_size = 8;
|
|
326
|
+
optional float subpos_x = 9;
|
|
327
|
+
optional float subpos_y = 10;
|
|
328
|
+
optional float subpos_z = 11;
|
|
329
|
+
optional bool projectile = 12;
|
|
330
|
+
optional float velocity_x = 13;
|
|
331
|
+
optional float velocity_y = 14;
|
|
332
|
+
optional float velocity_z = 15;
|
|
333
|
+
optional int32 volume = 16;
|
|
334
|
+
repeated ItemImprovement improvements = 17;
|
|
335
|
+
optional ArtImage image = 18;
|
|
336
|
+
}
|
|
337
|
+
|
|
338
|
+
message PlantTile
|
|
339
|
+
{
|
|
340
|
+
optional bool trunk = 1;
|
|
341
|
+
optional bool connection_east = 2;
|
|
342
|
+
optional bool connection_south = 3;
|
|
343
|
+
optional bool connection_west = 4;
|
|
344
|
+
optional bool connection_north = 5;
|
|
345
|
+
optional bool branches = 6;
|
|
346
|
+
optional bool twigs = 7;
|
|
347
|
+
optional TiletypeSpecial tile_type = 8;
|
|
348
|
+
}
|
|
349
|
+
|
|
350
|
+
message TreeInfo
|
|
351
|
+
{
|
|
352
|
+
optional Coord size = 1;
|
|
353
|
+
repeated PlantTile tiles = 2;
|
|
354
|
+
}
|
|
355
|
+
|
|
356
|
+
message PlantInstance
|
|
357
|
+
{
|
|
358
|
+
optional int32 plant_type = 1;
|
|
359
|
+
optional Coord pos = 2;
|
|
360
|
+
optional TreeInfo tree_info = 3;
|
|
361
|
+
}
|
|
362
|
+
|
|
363
|
+
message MapBlock
|
|
364
|
+
{
|
|
365
|
+
required int32 map_x = 1;
|
|
366
|
+
required int32 map_y = 2;
|
|
367
|
+
required int32 map_z = 3;
|
|
368
|
+
repeated int32 tiles = 4;
|
|
369
|
+
repeated MatPair materials = 5;
|
|
370
|
+
repeated MatPair layer_materials = 6;
|
|
371
|
+
repeated MatPair vein_materials = 7;
|
|
372
|
+
repeated MatPair base_materials = 8;
|
|
373
|
+
repeated int32 magma = 9;
|
|
374
|
+
repeated int32 water = 10;
|
|
375
|
+
repeated bool hidden = 11;
|
|
376
|
+
repeated bool light = 12;
|
|
377
|
+
repeated bool subterranean = 13;
|
|
378
|
+
repeated bool outside = 14;
|
|
379
|
+
repeated bool aquifer = 15;
|
|
380
|
+
repeated bool water_stagnant = 16;
|
|
381
|
+
repeated bool water_salt = 17;
|
|
382
|
+
repeated MatPair construction_items = 18;
|
|
383
|
+
repeated BuildingInstance buildings = 19;
|
|
384
|
+
repeated int32 tree_percent = 20;
|
|
385
|
+
repeated int32 tree_x = 21;
|
|
386
|
+
repeated int32 tree_y = 22;
|
|
387
|
+
repeated int32 tree_z = 23;
|
|
388
|
+
repeated TileDigDesignation tile_dig_designation = 24;
|
|
389
|
+
repeated SpatterPile spatterPile = 25;
|
|
390
|
+
repeated Item items = 26;
|
|
391
|
+
repeated bool tile_dig_designation_marker = 27;
|
|
392
|
+
repeated bool tile_dig_designation_auto = 28;
|
|
393
|
+
repeated int32 grass_percent = 29;
|
|
394
|
+
repeated FlowInfo flows = 30;
|
|
395
|
+
}
|
|
396
|
+
|
|
397
|
+
message MatPair {
|
|
398
|
+
required int32 mat_type = 1;
|
|
399
|
+
required int32 mat_index = 2;
|
|
400
|
+
}
|
|
401
|
+
|
|
402
|
+
message ColorDefinition {
|
|
403
|
+
required int32 red = 1;
|
|
404
|
+
required int32 green = 2;
|
|
405
|
+
required int32 blue = 3;
|
|
406
|
+
}
|
|
407
|
+
|
|
408
|
+
message MaterialDefinition{
|
|
409
|
+
required MatPair mat_pair = 1;
|
|
410
|
+
optional string id = 2;
|
|
411
|
+
optional string name = 3;
|
|
412
|
+
optional ColorDefinition state_color = 4; //Simplifying colors to assume room temperature.
|
|
413
|
+
optional ItemdefInstrument.InstrumentDef instrument = 5;
|
|
414
|
+
optional int32 up_step = 6;
|
|
415
|
+
optional int32 down_step = 7;
|
|
416
|
+
optional ArmorLayer layer = 8;
|
|
417
|
+
}
|
|
418
|
+
|
|
419
|
+
message BuildingType
|
|
420
|
+
{
|
|
421
|
+
required int32 building_type = 1;
|
|
422
|
+
required int32 building_subtype = 2;
|
|
423
|
+
required int32 building_custom = 3;
|
|
424
|
+
}
|
|
425
|
+
|
|
426
|
+
message BuildingDefinition {
|
|
427
|
+
required BuildingType building_type = 1;
|
|
428
|
+
optional string id = 2;
|
|
429
|
+
optional string name = 3;
|
|
430
|
+
}
|
|
431
|
+
|
|
432
|
+
message BuildingList {
|
|
433
|
+
repeated BuildingDefinition building_list = 1;
|
|
434
|
+
}
|
|
435
|
+
|
|
436
|
+
message MaterialList{
|
|
437
|
+
repeated MaterialDefinition material_list = 1;
|
|
438
|
+
}
|
|
439
|
+
|
|
440
|
+
message Hair
|
|
441
|
+
{
|
|
442
|
+
optional int32 length = 1;
|
|
443
|
+
optional HairStyle style = 2;
|
|
444
|
+
}
|
|
445
|
+
|
|
446
|
+
message BodySizeInfo
|
|
447
|
+
{
|
|
448
|
+
optional int32 size_cur = 1;
|
|
449
|
+
optional int32 size_base = 2;
|
|
450
|
+
optional int32 area_cur = 3; /*!< size_cur^0.666 */
|
|
451
|
+
optional int32 area_base = 4; /*!< size_base^0.666 */
|
|
452
|
+
optional int32 length_cur = 5; /*!< (size_cur*10000)^0.333 */
|
|
453
|
+
optional int32 length_base = 6; /*!< (size_base*10000)^0.333 */
|
|
454
|
+
}
|
|
455
|
+
|
|
456
|
+
message UnitAppearance
|
|
457
|
+
{
|
|
458
|
+
repeated int32 body_modifiers = 1;
|
|
459
|
+
repeated int32 bp_modifiers = 2;
|
|
460
|
+
optional int32 size_modifier = 3;
|
|
461
|
+
repeated int32 colors = 4;
|
|
462
|
+
optional Hair hair = 5;
|
|
463
|
+
optional Hair beard = 6;
|
|
464
|
+
optional Hair moustache = 7;
|
|
465
|
+
optional Hair sideburns = 8;
|
|
466
|
+
optional string physical_description = 9;
|
|
467
|
+
}
|
|
468
|
+
|
|
469
|
+
message InventoryItem
|
|
470
|
+
{
|
|
471
|
+
optional InventoryMode mode = 1;
|
|
472
|
+
optional Item item = 2;
|
|
473
|
+
optional int32 body_part_id = 3;
|
|
474
|
+
}
|
|
475
|
+
|
|
476
|
+
message WoundPart
|
|
477
|
+
{
|
|
478
|
+
optional int32 global_layer_idx = 1;
|
|
479
|
+
optional int32 body_part_id = 2;
|
|
480
|
+
optional int32 layer_idx = 3;
|
|
481
|
+
}
|
|
482
|
+
|
|
483
|
+
message UnitWound
|
|
484
|
+
{
|
|
485
|
+
repeated WoundPart parts = 1;
|
|
486
|
+
optional bool severed_part = 2;
|
|
487
|
+
}
|
|
488
|
+
|
|
489
|
+
message UnitDefinition
|
|
490
|
+
{
|
|
491
|
+
required int32 id = 1;
|
|
492
|
+
optional bool isValid = 2;
|
|
493
|
+
optional int32 pos_x = 3;
|
|
494
|
+
optional int32 pos_y = 4;
|
|
495
|
+
optional int32 pos_z = 5;
|
|
496
|
+
optional MatPair race = 6;
|
|
497
|
+
optional ColorDefinition profession_color = 7;
|
|
498
|
+
optional uint32 flags1 = 8;
|
|
499
|
+
optional uint32 flags2 = 9;
|
|
500
|
+
optional uint32 flags3 = 10;
|
|
501
|
+
optional bool is_soldier = 11;
|
|
502
|
+
optional BodySizeInfo size_info = 12;
|
|
503
|
+
optional string name = 13;
|
|
504
|
+
optional int32 blood_max = 14;
|
|
505
|
+
optional int32 blood_count = 15;
|
|
506
|
+
optional UnitAppearance appearance = 16;
|
|
507
|
+
optional int32 profession_id = 17;
|
|
508
|
+
repeated string noble_positions = 18;
|
|
509
|
+
optional int32 rider_id = 19;
|
|
510
|
+
repeated InventoryItem inventory = 20;
|
|
511
|
+
optional float subpos_x = 21;
|
|
512
|
+
optional float subpos_y = 22;
|
|
513
|
+
optional float subpos_z = 23;
|
|
514
|
+
optional Coord facing = 24;
|
|
515
|
+
optional int32 age = 25;
|
|
516
|
+
repeated UnitWound wounds = 26;
|
|
517
|
+
}
|
|
518
|
+
|
|
519
|
+
message UnitList
|
|
520
|
+
{
|
|
521
|
+
repeated UnitDefinition creature_list = 1;
|
|
522
|
+
}
|
|
523
|
+
|
|
524
|
+
message BlockRequest
|
|
525
|
+
{
|
|
526
|
+
optional int32 blocks_needed = 1;
|
|
527
|
+
optional int32 min_x = 2;
|
|
528
|
+
optional int32 max_x = 3;
|
|
529
|
+
optional int32 min_y = 4;
|
|
530
|
+
optional int32 max_y = 5;
|
|
531
|
+
optional int32 min_z = 6;
|
|
532
|
+
optional int32 max_z = 7;
|
|
533
|
+
optional bool force_reload = 8;
|
|
534
|
+
}
|
|
535
|
+
|
|
536
|
+
message BlockList
|
|
537
|
+
{
|
|
538
|
+
repeated MapBlock map_blocks = 1;
|
|
539
|
+
optional int32 map_x = 2;
|
|
540
|
+
optional int32 map_y = 3;
|
|
541
|
+
repeated Engraving engravings = 4;
|
|
542
|
+
repeated Wave ocean_waves = 5;
|
|
543
|
+
}
|
|
544
|
+
|
|
545
|
+
message PlantDef
|
|
546
|
+
{
|
|
547
|
+
required int32 pos_x = 1;
|
|
548
|
+
required int32 pos_y = 2;
|
|
549
|
+
required int32 pos_z = 3;
|
|
550
|
+
required int32 index = 4;
|
|
551
|
+
}
|
|
552
|
+
|
|
553
|
+
message PlantList
|
|
554
|
+
{
|
|
555
|
+
repeated PlantDef plant_list = 1;
|
|
556
|
+
}
|
|
557
|
+
|
|
558
|
+
message ViewInfo
|
|
559
|
+
{
|
|
560
|
+
optional int32 view_pos_x = 1;
|
|
561
|
+
optional int32 view_pos_y = 2;
|
|
562
|
+
optional int32 view_pos_z = 3;
|
|
563
|
+
optional int32 view_size_x = 4;
|
|
564
|
+
optional int32 view_size_y = 5;
|
|
565
|
+
optional int32 cursor_pos_x = 6;
|
|
566
|
+
optional int32 cursor_pos_y = 7;
|
|
567
|
+
optional int32 cursor_pos_z = 8;
|
|
568
|
+
optional int32 follow_unit_id = 9 [default = -1];
|
|
569
|
+
optional int32 follow_item_id = 10 [default = -1];
|
|
570
|
+
}
|
|
571
|
+
|
|
572
|
+
message MapInfo
|
|
573
|
+
{
|
|
574
|
+
optional int32 block_size_x = 1;
|
|
575
|
+
optional int32 block_size_y = 2;
|
|
576
|
+
optional int32 block_size_z = 3;
|
|
577
|
+
optional int32 block_pos_x = 4;
|
|
578
|
+
optional int32 block_pos_y = 5;
|
|
579
|
+
optional int32 block_pos_z = 6;
|
|
580
|
+
optional string world_name = 7;
|
|
581
|
+
optional string world_name_english = 8;
|
|
582
|
+
optional string save_name = 9;
|
|
583
|
+
}
|
|
584
|
+
|
|
585
|
+
enum FrontType
|
|
586
|
+
{
|
|
587
|
+
FRONT_NONE = 0;
|
|
588
|
+
FRONT_WARM = 1;
|
|
589
|
+
FRONT_COLD = 2;
|
|
590
|
+
FRONT_OCCLUDED = 3;
|
|
591
|
+
}
|
|
592
|
+
enum CumulusType
|
|
593
|
+
{
|
|
594
|
+
CUMULUS_NONE = 0;
|
|
595
|
+
CUMULUS_MEDIUM = 1;
|
|
596
|
+
CUMULUS_MULTI = 2;
|
|
597
|
+
CUMULUS_NIMBUS = 3;
|
|
598
|
+
}
|
|
599
|
+
enum StratusType
|
|
600
|
+
{
|
|
601
|
+
STRATUS_NONE = 0;
|
|
602
|
+
STRATUS_ALTO = 1;
|
|
603
|
+
STRATUS_PROPER = 2;
|
|
604
|
+
STRATUS_NIMBUS = 3;
|
|
605
|
+
}
|
|
606
|
+
enum FogType
|
|
607
|
+
{
|
|
608
|
+
FOG_NONE = 0;
|
|
609
|
+
FOG_MIST = 1;
|
|
610
|
+
FOG_NORMAL = 2;
|
|
611
|
+
F0G_THICK = 3;
|
|
612
|
+
}
|
|
613
|
+
|
|
614
|
+
message Cloud
|
|
615
|
+
{
|
|
616
|
+
optional FrontType front = 1;
|
|
617
|
+
optional CumulusType cumulus = 2;
|
|
618
|
+
optional bool cirrus = 3;
|
|
619
|
+
optional StratusType stratus = 4;
|
|
620
|
+
optional FogType fog = 5;
|
|
621
|
+
}
|
|
622
|
+
|
|
623
|
+
message WorldMap
|
|
624
|
+
{
|
|
625
|
+
required int32 world_width = 1;
|
|
626
|
+
required int32 world_height = 2;
|
|
627
|
+
optional string name = 3;
|
|
628
|
+
optional string name_english = 4;
|
|
629
|
+
repeated int32 elevation = 5;
|
|
630
|
+
repeated int32 rainfall = 6;
|
|
631
|
+
repeated int32 vegetation = 7;
|
|
632
|
+
repeated int32 temperature = 8;
|
|
633
|
+
repeated int32 evilness = 9;
|
|
634
|
+
repeated int32 drainage = 10;
|
|
635
|
+
repeated int32 volcanism = 11;
|
|
636
|
+
repeated int32 savagery = 12;
|
|
637
|
+
repeated Cloud clouds = 13;
|
|
638
|
+
repeated int32 salinity = 14;
|
|
639
|
+
optional int32 map_x = 15;
|
|
640
|
+
optional int32 map_y = 16;
|
|
641
|
+
optional int32 center_x = 17;
|
|
642
|
+
optional int32 center_y = 18;
|
|
643
|
+
optional int32 center_z = 19;
|
|
644
|
+
optional int32 cur_year = 20;
|
|
645
|
+
optional int32 cur_year_tick = 21;
|
|
646
|
+
optional WorldPoles world_poles = 22;
|
|
647
|
+
repeated RiverTile river_tiles = 23;
|
|
648
|
+
repeated int32 water_elevation = 24;
|
|
649
|
+
repeated RegionTile region_tiles = 25;
|
|
650
|
+
}
|
|
651
|
+
|
|
652
|
+
message SiteRealizationBuildingWall
|
|
653
|
+
{
|
|
654
|
+
optional int32 start_x = 1;
|
|
655
|
+
optional int32 start_y = 2;
|
|
656
|
+
optional int32 start_z = 3;
|
|
657
|
+
optional int32 end_x = 4;
|
|
658
|
+
optional int32 end_y = 5;
|
|
659
|
+
optional int32 end_z = 6;
|
|
660
|
+
}
|
|
661
|
+
|
|
662
|
+
message SiteRealizationBuildingTower
|
|
663
|
+
{
|
|
664
|
+
optional int32 roof_z = 1;
|
|
665
|
+
optional bool round = 2;
|
|
666
|
+
optional bool goblin = 3;
|
|
667
|
+
}
|
|
668
|
+
|
|
669
|
+
message TrenchSpoke
|
|
670
|
+
{
|
|
671
|
+
optional int32 mound_start = 1;
|
|
672
|
+
optional int32 trench_start = 2;
|
|
673
|
+
optional int32 trench_end = 3;
|
|
674
|
+
optional int32 mound_end = 4;
|
|
675
|
+
}
|
|
676
|
+
|
|
677
|
+
message SiteRealizationBuildingTrenches
|
|
678
|
+
{
|
|
679
|
+
repeated TrenchSpoke spokes = 1;
|
|
680
|
+
}
|
|
681
|
+
|
|
682
|
+
message SiteRealizationBuilding
|
|
683
|
+
{
|
|
684
|
+
optional int32 id = 1;
|
|
685
|
+
optional int32 min_x = 3;
|
|
686
|
+
optional int32 min_y = 4;
|
|
687
|
+
optional int32 max_x = 5;
|
|
688
|
+
optional int32 max_y = 6;
|
|
689
|
+
optional MatPair material = 7;
|
|
690
|
+
optional SiteRealizationBuildingWall wall_info = 8;
|
|
691
|
+
optional SiteRealizationBuildingTower tower_info = 9;
|
|
692
|
+
optional SiteRealizationBuildingTrenches trench_info = 10;
|
|
693
|
+
optional int32 type = 11;
|
|
694
|
+
}
|
|
695
|
+
|
|
696
|
+
message RegionTile
|
|
697
|
+
{
|
|
698
|
+
optional int32 elevation = 1;
|
|
699
|
+
optional int32 rainfall = 2;
|
|
700
|
+
optional int32 vegetation = 3;
|
|
701
|
+
optional int32 temperature = 4;
|
|
702
|
+
optional int32 evilness = 5;
|
|
703
|
+
optional int32 drainage = 6;
|
|
704
|
+
optional int32 volcanism = 7;
|
|
705
|
+
optional int32 savagery = 8;
|
|
706
|
+
optional int32 salinity = 9;
|
|
707
|
+
optional RiverTile river_tiles = 10;
|
|
708
|
+
optional int32 water_elevation = 11;
|
|
709
|
+
optional MatPair surface_material = 12;
|
|
710
|
+
repeated MatPair plant_materials = 13;
|
|
711
|
+
repeated SiteRealizationBuilding buildings = 14;
|
|
712
|
+
repeated MatPair stone_materials = 15;
|
|
713
|
+
repeated MatPair tree_materials = 16;
|
|
714
|
+
optional int32 snow = 17;
|
|
715
|
+
}
|
|
716
|
+
|
|
717
|
+
message RegionMap
|
|
718
|
+
{
|
|
719
|
+
optional int32 map_x = 1;
|
|
720
|
+
optional int32 map_y = 2;
|
|
721
|
+
optional string name = 3;
|
|
722
|
+
optional string name_english = 4;
|
|
723
|
+
repeated RegionTile tiles = 5;
|
|
724
|
+
}
|
|
725
|
+
|
|
726
|
+
message RegionMaps
|
|
727
|
+
{
|
|
728
|
+
repeated WorldMap world_maps = 1;
|
|
729
|
+
repeated RegionMap region_maps = 2;
|
|
730
|
+
}
|
|
731
|
+
|
|
732
|
+
enum PatternType
|
|
733
|
+
{
|
|
734
|
+
MONOTONE = 0;
|
|
735
|
+
STRIPES = 1;
|
|
736
|
+
IRIS_EYE = 2;
|
|
737
|
+
SPOTS = 3;
|
|
738
|
+
PUPIL_EYE = 4;
|
|
739
|
+
MOTTLED = 5;
|
|
740
|
+
}
|
|
741
|
+
|
|
742
|
+
message PatternDescriptor
|
|
743
|
+
{
|
|
744
|
+
optional string id = 1;
|
|
745
|
+
repeated ColorDefinition colors = 2;
|
|
746
|
+
optional PatternType pattern = 3;
|
|
747
|
+
}
|
|
748
|
+
|
|
749
|
+
message ColorModifierRaw
|
|
750
|
+
{
|
|
751
|
+
repeated PatternDescriptor patterns = 1;
|
|
752
|
+
repeated int32 body_part_id = 2;
|
|
753
|
+
repeated int32 tissue_layer_id = 3;
|
|
754
|
+
optional int32 start_date = 4;
|
|
755
|
+
optional int32 end_date = 5;
|
|
756
|
+
optional string part = 6;
|
|
757
|
+
}
|
|
758
|
+
|
|
759
|
+
message BodyPartLayerRaw
|
|
760
|
+
{
|
|
761
|
+
optional string layer_name = 1;
|
|
762
|
+
optional int32 tissue_id = 2;
|
|
763
|
+
optional int32 layer_depth = 3;
|
|
764
|
+
repeated int32 bp_modifiers = 4;
|
|
765
|
+
}
|
|
766
|
+
|
|
767
|
+
message BodyPartRaw
|
|
768
|
+
{
|
|
769
|
+
optional string token = 1;
|
|
770
|
+
optional string category = 2;
|
|
771
|
+
optional int32 parent = 3;
|
|
772
|
+
repeated bool flags = 4;
|
|
773
|
+
repeated BodyPartLayerRaw layers = 5;
|
|
774
|
+
optional int32 relsize = 6;
|
|
775
|
+
}
|
|
776
|
+
|
|
777
|
+
message BpAppearanceModifier
|
|
778
|
+
{
|
|
779
|
+
optional string type = 1;
|
|
780
|
+
optional int32 mod_min = 2;
|
|
781
|
+
optional int32 mod_max = 3;
|
|
782
|
+
}
|
|
783
|
+
|
|
784
|
+
message TissueRaw
|
|
785
|
+
{
|
|
786
|
+
optional string id = 1;
|
|
787
|
+
optional string name = 2;
|
|
788
|
+
optional MatPair material = 3;
|
|
789
|
+
optional string subordinate_to_tissue = 4;
|
|
790
|
+
}
|
|
791
|
+
|
|
792
|
+
message CasteRaw
|
|
793
|
+
{
|
|
794
|
+
optional int32 index = 1;
|
|
795
|
+
optional string caste_id = 2;
|
|
796
|
+
repeated string caste_name = 3;
|
|
797
|
+
repeated string baby_name = 4;
|
|
798
|
+
repeated string child_name = 5;
|
|
799
|
+
optional int32 gender = 6;
|
|
800
|
+
repeated BodyPartRaw body_parts = 7;
|
|
801
|
+
optional int32 total_relsize = 8;
|
|
802
|
+
repeated BpAppearanceModifier modifiers = 9;
|
|
803
|
+
repeated int32 modifier_idx = 10;
|
|
804
|
+
repeated int32 part_idx = 11;
|
|
805
|
+
repeated int32 layer_idx = 12;
|
|
806
|
+
repeated BpAppearanceModifier body_appearance_modifiers = 13;
|
|
807
|
+
repeated ColorModifierRaw color_modifiers = 14;
|
|
808
|
+
optional string description = 15;
|
|
809
|
+
optional int32 adult_size = 16;
|
|
810
|
+
}
|
|
811
|
+
|
|
812
|
+
message CreatureRaw
|
|
813
|
+
{
|
|
814
|
+
optional int32 index = 1;
|
|
815
|
+
optional string creature_id = 2;
|
|
816
|
+
repeated string name = 3;
|
|
817
|
+
repeated string general_baby_name = 4;
|
|
818
|
+
repeated string general_child_name = 5;
|
|
819
|
+
optional int32 creature_tile = 6;
|
|
820
|
+
optional int32 creature_soldier_tile = 7;
|
|
821
|
+
optional ColorDefinition color = 8;
|
|
822
|
+
optional int32 adultsize = 9;
|
|
823
|
+
repeated CasteRaw caste = 10;
|
|
824
|
+
repeated TissueRaw tissues = 11;
|
|
825
|
+
repeated bool flags = 12;
|
|
826
|
+
}
|
|
827
|
+
|
|
828
|
+
message CreatureRawList
|
|
829
|
+
{
|
|
830
|
+
repeated CreatureRaw creature_raws = 1;
|
|
831
|
+
}
|
|
832
|
+
|
|
833
|
+
message Army
|
|
834
|
+
{
|
|
835
|
+
optional int32 id = 1;
|
|
836
|
+
optional int32 pos_x = 2;
|
|
837
|
+
optional int32 pos_y = 3;
|
|
838
|
+
optional int32 pos_z = 4;
|
|
839
|
+
optional UnitDefinition leader = 5;
|
|
840
|
+
repeated UnitDefinition members = 6;
|
|
841
|
+
optional uint32 flags = 7;
|
|
842
|
+
}
|
|
843
|
+
|
|
844
|
+
message ArmyList
|
|
845
|
+
{
|
|
846
|
+
repeated Army armies = 1;
|
|
847
|
+
}
|
|
848
|
+
|
|
849
|
+
message GrowthPrint
|
|
850
|
+
{
|
|
851
|
+
optional int32 priority = 1;
|
|
852
|
+
optional int32 color = 2;
|
|
853
|
+
optional int32 timing_start = 3;
|
|
854
|
+
optional int32 timing_end = 4;
|
|
855
|
+
optional int32 tile = 5;
|
|
856
|
+
}
|
|
857
|
+
|
|
858
|
+
message TreeGrowth
|
|
859
|
+
{
|
|
860
|
+
optional int32 index = 1;
|
|
861
|
+
optional string id = 2;
|
|
862
|
+
optional string name = 3;
|
|
863
|
+
optional MatPair mat = 4;
|
|
864
|
+
repeated GrowthPrint prints = 5;
|
|
865
|
+
optional int32 timing_start = 6;
|
|
866
|
+
optional int32 timing_end = 7;
|
|
867
|
+
optional bool twigs = 8;
|
|
868
|
+
optional bool light_branches = 9;
|
|
869
|
+
optional bool heavy_branches = 10;
|
|
870
|
+
optional bool trunk = 11;
|
|
871
|
+
optional bool roots = 12;
|
|
872
|
+
optional bool cap = 13;
|
|
873
|
+
optional bool sapling = 14;
|
|
874
|
+
optional int32 trunk_height_start = 15;
|
|
875
|
+
optional int32 trunk_height_end = 16;
|
|
876
|
+
}
|
|
877
|
+
|
|
878
|
+
message PlantRaw
|
|
879
|
+
{
|
|
880
|
+
optional int32 index = 1;
|
|
881
|
+
optional string id = 2;
|
|
882
|
+
optional string name = 3;
|
|
883
|
+
repeated TreeGrowth growths = 4;
|
|
884
|
+
optional int32 tile = 5;
|
|
885
|
+
}
|
|
886
|
+
|
|
887
|
+
message PlantRawList
|
|
888
|
+
{
|
|
889
|
+
repeated PlantRaw plant_raws = 1;
|
|
890
|
+
}
|
|
891
|
+
|
|
892
|
+
message ScreenTile
|
|
893
|
+
{
|
|
894
|
+
optional uint32 character = 1;
|
|
895
|
+
optional uint32 foreground = 2;
|
|
896
|
+
optional uint32 background = 3;
|
|
897
|
+
}
|
|
898
|
+
|
|
899
|
+
message ScreenCapture
|
|
900
|
+
{
|
|
901
|
+
optional uint32 width = 1;
|
|
902
|
+
optional uint32 height = 2;
|
|
903
|
+
repeated ScreenTile tiles = 3;
|
|
904
|
+
}
|
|
905
|
+
|
|
906
|
+
message KeyboardEvent
|
|
907
|
+
{
|
|
908
|
+
optional uint32 type = 1;
|
|
909
|
+
optional uint32 which = 2;
|
|
910
|
+
optional uint32 state = 3;
|
|
911
|
+
optional uint32 scancode = 4;
|
|
912
|
+
optional uint32 sym = 5;
|
|
913
|
+
optional uint32 mod = 6;
|
|
914
|
+
optional uint32 unicode = 7;
|
|
915
|
+
}
|
|
916
|
+
|
|
917
|
+
message DigCommand
|
|
918
|
+
{
|
|
919
|
+
optional TileDigDesignation designation = 1;
|
|
920
|
+
repeated Coord locations = 2;
|
|
921
|
+
}
|
|
922
|
+
|
|
923
|
+
message SingleBool
|
|
924
|
+
{
|
|
925
|
+
optional bool Value = 1;
|
|
926
|
+
}
|
|
927
|
+
|
|
928
|
+
message VersionInfo
|
|
929
|
+
{
|
|
930
|
+
optional string dwarf_fortress_version = 1;
|
|
931
|
+
optional string dfhack_version = 2;
|
|
932
|
+
optional string remote_fortress_reader_version = 3;
|
|
933
|
+
}
|
|
934
|
+
|
|
935
|
+
message ListRequest
|
|
936
|
+
{
|
|
937
|
+
optional int32 list_start = 1;
|
|
938
|
+
optional int32 list_end = 2;
|
|
939
|
+
}
|
|
940
|
+
|
|
941
|
+
message Report
|
|
942
|
+
{
|
|
943
|
+
optional int32 type = 1;
|
|
944
|
+
optional string text = 2;
|
|
945
|
+
optional ColorDefinition color = 3;
|
|
946
|
+
optional int32 duration = 4;
|
|
947
|
+
optional bool continuation = 5;
|
|
948
|
+
optional bool unconscious = 6;
|
|
949
|
+
optional bool announcement = 7;
|
|
950
|
+
optional int32 repeat_count = 8;
|
|
951
|
+
optional Coord pos = 9;
|
|
952
|
+
optional int32 id = 10;
|
|
953
|
+
optional int32 year = 11;
|
|
954
|
+
optional int32 time = 12;
|
|
955
|
+
}
|
|
956
|
+
|
|
957
|
+
message Status
|
|
958
|
+
{
|
|
959
|
+
repeated Report reports = 1;
|
|
960
|
+
}
|
|
961
|
+
|
|
962
|
+
message ShapeDescriptior
|
|
963
|
+
{
|
|
964
|
+
optional string id = 1;
|
|
965
|
+
optional int32 tile = 2;
|
|
966
|
+
}
|
|
967
|
+
|
|
968
|
+
message Language
|
|
969
|
+
{
|
|
970
|
+
repeated ShapeDescriptior shapes = 1;
|
|
971
|
+
}
|
|
972
|
+
|
|
973
|
+
message ItemImprovement
|
|
974
|
+
{
|
|
975
|
+
optional MatPair material = 1;
|
|
976
|
+
optional int32 shape = 3;
|
|
977
|
+
optional int32 specific_type= 4;
|
|
978
|
+
optional ArtImage image = 5;
|
|
979
|
+
optional int32 type = 6;
|
|
980
|
+
}
|
|
981
|
+
|
|
982
|
+
enum ArtImageElementType
|
|
983
|
+
{
|
|
984
|
+
IMAGE_CREATURE = 0;
|
|
985
|
+
IMAGE_PLANT = 1;
|
|
986
|
+
IMAGE_TREE = 2;
|
|
987
|
+
IMAGE_SHAPE = 3;
|
|
988
|
+
IMAGE_ITEM = 4;
|
|
989
|
+
}
|
|
990
|
+
|
|
991
|
+
message ArtImageElement
|
|
992
|
+
{
|
|
993
|
+
optional int32 count = 1;
|
|
994
|
+
optional ArtImageElementType type = 2;
|
|
995
|
+
optional MatPair creature_item = 3;
|
|
996
|
+
optional MatPair material = 5;
|
|
997
|
+
optional int32 id = 6;
|
|
998
|
+
}
|
|
999
|
+
|
|
1000
|
+
enum ArtImagePropertyType
|
|
1001
|
+
{
|
|
1002
|
+
TRANSITIVE_VERB = 0;
|
|
1003
|
+
INTRANSITIVE_VERB = 1;
|
|
1004
|
+
}
|
|
1005
|
+
|
|
1006
|
+
message ArtImageProperty
|
|
1007
|
+
{
|
|
1008
|
+
optional int32 subject = 1;
|
|
1009
|
+
optional int32 object = 2;
|
|
1010
|
+
optional ArtImageVerb verb = 3;
|
|
1011
|
+
optional ArtImagePropertyType type = 4;
|
|
1012
|
+
}
|
|
1013
|
+
|
|
1014
|
+
message ArtImage
|
|
1015
|
+
{
|
|
1016
|
+
repeated ArtImageElement elements = 1;
|
|
1017
|
+
optional MatPair id = 2;
|
|
1018
|
+
repeated ArtImageProperty properties = 3;
|
|
1019
|
+
}
|
|
1020
|
+
|
|
1021
|
+
message Engraving
|
|
1022
|
+
{
|
|
1023
|
+
optional Coord pos = 1;
|
|
1024
|
+
optional int32 quality = 2;
|
|
1025
|
+
optional int32 tile = 3;
|
|
1026
|
+
optional ArtImage image = 4;
|
|
1027
|
+
optional bool floor = 5;
|
|
1028
|
+
optional bool west = 6;
|
|
1029
|
+
optional bool east = 7;
|
|
1030
|
+
optional bool north = 8;
|
|
1031
|
+
optional bool south = 9;
|
|
1032
|
+
optional bool hidden = 10;
|
|
1033
|
+
optional bool northwest = 11;
|
|
1034
|
+
optional bool northeast = 12;
|
|
1035
|
+
optional bool southwest = 13;
|
|
1036
|
+
optional bool southeast = 14;
|
|
1037
|
+
}
|
|
1038
|
+
|
|
1039
|
+
enum ArtImageVerb
|
|
1040
|
+
{
|
|
1041
|
+
VERB_WITHERING = 0;
|
|
1042
|
+
VERB_SURROUNDEDBY = 1;
|
|
1043
|
+
VERB_MASSACRING = 2;
|
|
1044
|
+
VERB_FIGHTING = 3;
|
|
1045
|
+
VERB_LABORING = 4;
|
|
1046
|
+
VERB_GREETING = 5;
|
|
1047
|
+
VERB_REFUSING = 6;
|
|
1048
|
+
VERB_SPEAKING = 7;
|
|
1049
|
+
VERB_EMBRACING = 8;
|
|
1050
|
+
VERB_STRIKINGDOWN = 9;
|
|
1051
|
+
VERB_MENACINGPOSE = 10;
|
|
1052
|
+
VERB_TRAVELING = 11;
|
|
1053
|
+
VERB_RAISING = 12;
|
|
1054
|
+
VERB_HIDING = 13;
|
|
1055
|
+
VERB_LOOKINGCONFUSED = 14;
|
|
1056
|
+
VERB_LOOKINGTERRIFIED = 15;
|
|
1057
|
+
VERB_DEVOURING = 16;
|
|
1058
|
+
VERB_ADMIRING = 17;
|
|
1059
|
+
VERB_BURNING = 18;
|
|
1060
|
+
VERB_WEEPING = 19;
|
|
1061
|
+
VERB_LOOKINGDEJECTED = 20;
|
|
1062
|
+
VERB_CRINGING = 21;
|
|
1063
|
+
VERB_SCREAMING = 22;
|
|
1064
|
+
VERB_SUBMISSIVEGESTURE = 23;
|
|
1065
|
+
VERB_FETALPOSITION = 24;
|
|
1066
|
+
VERB_SMEAREDINTOSPIRAL = 25;
|
|
1067
|
+
VERB_FALLING = 26;
|
|
1068
|
+
VERB_DEAD = 27;
|
|
1069
|
+
VERB_LAUGHING = 28;
|
|
1070
|
+
VERB_LOOKINGOFFENDED = 29;
|
|
1071
|
+
VERB_BEINGSHOT = 30;
|
|
1072
|
+
VERB_PLAINTIVEGESTURE = 31;
|
|
1073
|
+
VERB_MELTING = 32;
|
|
1074
|
+
VERB_SHOOTING = 33;
|
|
1075
|
+
VERB_TORTURING = 34;
|
|
1076
|
+
VERB_COMMITTINGDEPRAVEDACT = 35;
|
|
1077
|
+
VERB_PRAYING = 36;
|
|
1078
|
+
VERB_CONTEMPLATING = 37;
|
|
1079
|
+
VERB_COOKING = 38;
|
|
1080
|
+
VERB_ENGRAVING = 39;
|
|
1081
|
+
VERB_PROSTRATING = 40;
|
|
1082
|
+
VERB_SUFFERING = 41;
|
|
1083
|
+
VERB_BEINGIMPALED = 42;
|
|
1084
|
+
VERB_BEINGCONTORTED = 43;
|
|
1085
|
+
VERB_BEINGFLAYED = 44;
|
|
1086
|
+
VERB_HANGINGFROM = 45;
|
|
1087
|
+
VERB_BEINGMUTILATED = 46;
|
|
1088
|
+
VERB_TRIUMPHANTPOSE = 47;
|
|
1089
|
+
}
|
|
1090
|
+
|
|
1091
|
+
enum FlowType
|
|
1092
|
+
{
|
|
1093
|
+
Miasma = 0;
|
|
1094
|
+
Steam = 1;
|
|
1095
|
+
Mist = 2;
|
|
1096
|
+
MaterialDust = 3;
|
|
1097
|
+
MagmaMist = 4;
|
|
1098
|
+
Smoke = 5;
|
|
1099
|
+
Dragonfire = 6;
|
|
1100
|
+
Fire = 7;
|
|
1101
|
+
Web = 8;
|
|
1102
|
+
MaterialGas = 9;
|
|
1103
|
+
MaterialVapor = 10;
|
|
1104
|
+
OceanWave = 11;
|
|
1105
|
+
SeaFoam = 12;
|
|
1106
|
+
ItemCloud = 13;
|
|
1107
|
+
CampFire = -1;
|
|
1108
|
+
}
|
|
1109
|
+
|
|
1110
|
+
message FlowInfo
|
|
1111
|
+
{
|
|
1112
|
+
optional int32 index = 1;
|
|
1113
|
+
optional FlowType type = 2;
|
|
1114
|
+
optional int32 density = 3;
|
|
1115
|
+
optional Coord pos = 4;
|
|
1116
|
+
optional Coord dest = 5;
|
|
1117
|
+
optional bool expanding = 6;
|
|
1118
|
+
optional bool reuse = 7 [deprecated=true];
|
|
1119
|
+
optional int32 guide_id = 8;
|
|
1120
|
+
optional MatPair material = 9;
|
|
1121
|
+
optional MatPair item = 10;
|
|
1122
|
+
optional bool dead = 11;
|
|
1123
|
+
optional bool fast = 12;
|
|
1124
|
+
optional bool creeping = 13;
|
|
1125
|
+
}
|
|
1126
|
+
|
|
1127
|
+
message Wave
|
|
1128
|
+
{
|
|
1129
|
+
optional Coord dest = 1;
|
|
1130
|
+
optional Coord pos = 2;
|
|
1131
|
+
}
|