flatbuffers & transcoders
This commit is contained in:
@@ -0,0 +1,231 @@
|
||||
// report reflects model/report/Report data object
|
||||
namespace report;
|
||||
|
||||
struct UUID {
|
||||
hi:uint64;
|
||||
lo:uint64;
|
||||
}
|
||||
|
||||
table RouteEntry {
|
||||
key:uint64;
|
||||
value:string;
|
||||
}
|
||||
|
||||
table TechEntry {
|
||||
key:string;
|
||||
value:float32;
|
||||
}
|
||||
|
||||
table Route {
|
||||
planet:uint64;
|
||||
route:[RouteEntry];
|
||||
}
|
||||
|
||||
table Player {
|
||||
name:string;
|
||||
drive:float32;
|
||||
weapons:float32;
|
||||
shields:float32;
|
||||
cargo:float32;
|
||||
population:float32;
|
||||
industry:float32;
|
||||
planets:uint16;
|
||||
relation:string;
|
||||
votes:float32;
|
||||
extinct:bool;
|
||||
}
|
||||
|
||||
table Science {
|
||||
name:string;
|
||||
drive:float32;
|
||||
weapons:float32;
|
||||
shields:float32;
|
||||
cargo:float32;
|
||||
}
|
||||
|
||||
table OtherScience {
|
||||
race:string;
|
||||
name:string;
|
||||
drive:float32;
|
||||
weapons:float32;
|
||||
shields:float32;
|
||||
cargo:float32;
|
||||
}
|
||||
|
||||
table ShipClass {
|
||||
name:string;
|
||||
drive:float32;
|
||||
armament:uint64;
|
||||
weapons:float32;
|
||||
shields:float32;
|
||||
cargo:float32;
|
||||
mass:float32;
|
||||
}
|
||||
|
||||
table OthersShipClass {
|
||||
race:string;
|
||||
name:string;
|
||||
drive:float32;
|
||||
armament:uint64;
|
||||
weapons:float32;
|
||||
shields:float32;
|
||||
cargo:float32;
|
||||
mass:float32;
|
||||
}
|
||||
|
||||
table ShipProduction {
|
||||
planet:uint64;
|
||||
class:string;
|
||||
cost:float32;
|
||||
prod_used:float32;
|
||||
percent:float32;
|
||||
free:float32;
|
||||
}
|
||||
|
||||
table IncomingGroup {
|
||||
origin:uint64;
|
||||
destination:uint64;
|
||||
distance:float32;
|
||||
speed:float32;
|
||||
mass:float32;
|
||||
}
|
||||
|
||||
table Bombing {
|
||||
number:uint64;
|
||||
planet:string;
|
||||
owner:string;
|
||||
attacker:string;
|
||||
production:string;
|
||||
industry:float32;
|
||||
population:float32;
|
||||
colonists:float32;
|
||||
capital:float32;
|
||||
material:float32;
|
||||
attack_power:float32;
|
||||
wiped:bool;
|
||||
}
|
||||
|
||||
table UnidentifiedPlanet {
|
||||
x:float32;
|
||||
y:float32;
|
||||
number:uint64;
|
||||
}
|
||||
|
||||
table UninhabitedPlanet {
|
||||
x:float32;
|
||||
y:float32;
|
||||
number:uint64;
|
||||
size:float32;
|
||||
name:string;
|
||||
resources:float32;
|
||||
capital:float32;
|
||||
material:float32;
|
||||
}
|
||||
|
||||
table LocalPlanet {
|
||||
x:float32;
|
||||
y:float32;
|
||||
number:uint64;
|
||||
size:float32;
|
||||
name:string;
|
||||
resources:float32;
|
||||
capital:float32;
|
||||
material:float32;
|
||||
industry:float32;
|
||||
population:float32;
|
||||
colonists:float32;
|
||||
production:string;
|
||||
free_industry:float32;
|
||||
}
|
||||
|
||||
table OtherPlanet {
|
||||
owner:string;
|
||||
x:float32;
|
||||
y:float32;
|
||||
number:uint64;
|
||||
size:float32;
|
||||
name:string;
|
||||
resources:float32;
|
||||
capital:float32;
|
||||
material:float32;
|
||||
industry:float32;
|
||||
population:float32;
|
||||
colonists:float32;
|
||||
production:string;
|
||||
free_industry:float32;
|
||||
}
|
||||
|
||||
table UnidentifiedGroup {
|
||||
x:float32;
|
||||
y:float32;
|
||||
}
|
||||
|
||||
table OtherGroup {
|
||||
number:uint64;
|
||||
class:string;
|
||||
tech:[TechEntry];
|
||||
cargo:string;
|
||||
load:float32;
|
||||
destination:uint64;
|
||||
origin:uint64 = null;
|
||||
range:float32 = null;
|
||||
speed:float32;
|
||||
mass:float32;
|
||||
}
|
||||
|
||||
table LocalGroup {
|
||||
number:uint64;
|
||||
class:string;
|
||||
tech:[TechEntry];
|
||||
cargo:string;
|
||||
load:float32;
|
||||
destination:uint64;
|
||||
origin:uint64 = null;
|
||||
range:float32 = null;
|
||||
speed:float32;
|
||||
mass:float32;
|
||||
id:UUID (required);
|
||||
state:string;
|
||||
fleet:string;
|
||||
}
|
||||
|
||||
table LocalFleet {
|
||||
name:string;
|
||||
groups:uint64;
|
||||
destination:uint64;
|
||||
origin:uint64 = null;
|
||||
range:float32 = null;
|
||||
speed:float32;
|
||||
state:string;
|
||||
}
|
||||
|
||||
table Report {
|
||||
version:uint64;
|
||||
turn:uint64;
|
||||
width:uint32;
|
||||
height:uint32;
|
||||
planet_count:uint32;
|
||||
race:string;
|
||||
votes:float32;
|
||||
vote_for:string;
|
||||
player:[Player];
|
||||
local_science:[Science];
|
||||
other_science:[OtherScience];
|
||||
local_ship_class:[ShipClass];
|
||||
other_ship_class:[OthersShipClass];
|
||||
battle:[UUID];
|
||||
bombing:[Bombing];
|
||||
incoming_group:[IncomingGroup];
|
||||
local_planet:[LocalPlanet];
|
||||
ship_production:[ShipProduction];
|
||||
route:[Route];
|
||||
other_planet:[OtherPlanet];
|
||||
uninhabited_planet:[UninhabitedPlanet];
|
||||
unidentified_planet:[UnidentifiedPlanet];
|
||||
local_fleet:[LocalFleet];
|
||||
local_group:[LocalGroup];
|
||||
other_group:[OtherGroup];
|
||||
unidentified_group:[UnidentifiedGroup];
|
||||
}
|
||||
|
||||
root_type Report;
|
||||
Reference in New Issue
Block a user