package game type Report struct { Width, Height uint32 PlanetCount uint32 // do we need that? PlayersLeft uint32 // do we need that? Votes float64 VoteFor string Statuses []PlayerStatus Sciences []ScienceReport ForeignSciences []ScienceReportForeign ShipTypes []ShipTypeReport ForeignShipTypes []ShipTypeReportForeign Battles []any // TODO: tbd Bombings []any // TODO: tbd IncomingGroups []IncomingGroup Planets []PlanetReport ForeignPlanets []PlanetReportForeign UninhabitedPlanets []UninhabitedPlanet UnidentifiedPlanets []UnidentifiedPlanet ShipsInProduction []any // TODO: tbd Routes []any // TODO: tbd Fleets []any // TODO: tbd ShipGroups []any // TODO: tbd ForeignShipGroups []any // TODO: tbd UnidentifiedGroups []any // TODO: tbd } type IncomingGroup struct { SourcePlanetNumber uint TargetPlanetNumber uint Distance float64 Speed float64 Mass float64 } type ReportRelation struct { RaceName string Relation string } type PlayerStatus struct { Name string Drive float64 `json:"drive"` Weapons float64 `json:"weapons"` Shields float64 `json:"shields"` Cargo float64 `json:"cargo"` Population float64 Industry float64 Planets uint16 Relation ReportRelation Votes float64 }