EvEmu  0.8.4
11 September 2021
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
POD_containers.h
Go to the documentation of this file.
1 /*
2  * POD_continers.h
3  *
4  * -allan 1Aug16
5  */
6 
7 #ifndef _EVEMU_POD_CONTAINERS_H_
8 #define _EVEMU_POD_CONTAINERS_H_
9 
10 #include "eve-server.h"
11 
16 /* POD structure for certificate data */
17 struct CharCerts {
21 };
22 typedef std::map<uint16, CharCerts> CertMap;
23 
24 /* POD structure for account data */
25 struct AccountData {
26  bool online:1;
27  bool banned:1;
33  std::string name;
34  std::string hash;
35  std::string password;
36  std::string last_login;
37 };
38 
39 /* POD structure for character data */
40 struct CharacterData {
41  bool gender:1;
62  float bounty;
63  float balance;
64  float aurBalance;
66  std::string name;
67  std::string title;
68  std::string description;
69 };
70 
71 /* POD structure for corp data */
72 struct CorpData {
89  float taxRate;
90  float secRating;
91  std::string name;
92  std::string ticker;
93 };
94 
95 /* POD structure for fleet data -allan 31Jul14 */
96 struct CharFleetData {
104 };
105 
106 /* POD structure for bounty timer data */
107 struct BountyData {
113  float amount;
114  std::string reason;
115 };
116 
117 
118 /* POD structure for character kill data -allan 01May16 */
119 struct CharKillData {
137  std::string killBlob;
138 };
139 
140 /* POD structure for asteroid */
141 struct AsteroidData {
146  double quantity;
147  double radius;
149  std::string itemName;
150 };
151 
152 /* POD structure for asteroid distribution methods by group */
155  float chance;
156 };
157 
158 /* POD structure for cosmic signatures/anomalies */
160  uint8 dungeonType; // internal for creation checks
161  uint16 bubbleID; // internal for .siglist command
162  // typeID of signal
163  uint16 sigTypeID; // type name if scanGroupID is not sig or anom and certainty > 0.75
164  // groupID of signal
165  uint16 sigGroupID; // group name if scanGroupID is not sig or anom and certainty > 0.25
166  // groupID of signature...must be one of sig, anom, ship, drone, structure
167  uint16 scanGroupID; // ship,drone and structure uses sigGroupID for group name
168  uint16 scanAttributeID; // group naming data if scanGroupID is anom or sig and certainty > 0.25
171  uint32 sigItemID; // itemID of this entry
172  float sigStrength;
174  std::string sigID; // this is unique xxx-nnn id displayed in scanner. can be other values
175  std::string sigName; // site name if scanGroupID is sig or anom and certainty > 0.75
176 };
177 
178 /* POD structure for spawn groups */
179 struct SystemSpawnGroup { //reference to this bubble's data for spawn groups. may need later.
180  //SystemBubble* pSysBubble; //cant use reference or pointer here...
184  double secRating;
185 };
186 
187 /* POD structure for spawn groups */
188 struct SpawnGroup {
189  uint8 quantity; //quantity to spawn for this typeID
190  uint16 typeID; //typeID to spawn
191 };
192 
193 /* POD structure for spawn entries */
194 struct SpawnEntry { // notes for me while creating/writing/testing
195  bool enabled; // is respawn enabled for this entry? also provides conditional test for SpawnMgr::IsChaining() method
196  uint8 spawnClass; // spawn class. 0 = none, 1-7 = easy to insance based on sysSec, 8 = hauler, 9 = commander, 10 = officer - 20+ are anomalies
197  uint8 spawnGroup; // spawn group. 1 = roaming, 2 = static, 3 = anomaly, 4 = combat, 5 = deadspace, 6 = mission, 7 = incursion, 8 = sleeper, 9 = escalation
198  uint8 total; // total number of this group spawned
199  uint8 number; // this rat's number in group (to match up with above total)
200  uint8 level; // spawn data subtype/wave
201  uint8 classID; // spawn data class id (in case we have to look it up again)
202  uint16 typeID; // rat type id
203  uint16 groupID; // rat group id (may look into changing typeID within group later on respawn (for chaining))
204  uint16 spawnID; // spawn id (if needed to match up with other spawns of this group (multiple spawn types in this group))
205  uint16 stamp; // entry stamp time to respawn (process conditional to allow for common timer and multiple respawn times)
206  uint32 itemID; // rat entity id
207  uint32 corpID; // rat corp id
208  uint32 factionID; // rat faction id
209 };
210 
211 /* POD structure for spawn faction groups */
212 struct RatFactionGroups { // notes for me while creating/writing/testing
213  uint8 shipClass; // shipClass as defined in Spawn::Class
214  uint16 groupID; // item groupID
215 };
216 
217 /* POD structure for spawn classes */
218 struct RatSpawnClass { // notes for me while creating/writing/testing
219  uint8 type; // this is spawn type. Spawn::Type 1 - 10
220  uint8 sub; // this is spawn subtype. ship grouping. varies. enables loop for random pick. no notes
221  uint8 f; // frigate
222  uint8 af; // advanced frigate
223  uint8 d; // destroyer
224  uint8 c; // cruiser
225  uint8 ac; // advanced cruiser
226  uint8 bc; // battlecruiser
227  uint8 bs; // battleship
228  uint8 h; // hauler
229  uint8 o; // officer - swarm for rogue drones
230  uint8 cf; // commander frigate
231  //uint8 acf; // advanced commander frigate
232  uint8 cd; // commander destroyer
233  uint8 cc; // commander cruiser
234  uint8 cbc; // commander battlecruiser
235  uint8 cbs; // commander battleship
236 };
237 
238 /* POD structure for loot groups */
239 struct LootGroup {
240  //uint32 groupID;
242  double dropChance;
243 };
244 
245 /* POD structure for loot types */
252 };
253 
254 /* POD structure for possible loot drops */
255 struct LootList {
259 };
260 
261 /* POD structure for statistic data */
263  uint16 span; // 45.5d in minutes (max)
270  double pcBounties;
271  double npcBounties;
272  double oreMined;
273  double iskMarket;
274 };
275 
276 
277 /* POD structure for systems. */
278 struct SystemData {
285  std::string name;
286  std::string securityClass;
287 };
288 
296 
303 };
304 
305 /* POD structure for static items. */
306 struct StaticData {
312  float radius;
314 };
315 
316 /* POD structure for sovereignty */
333 };
334 
335 /* Tags for sov multi-index container */
338 struct SovDataByRegion {};
340 struct SovDataByClaim {};
341 
342 /* POD structure for stations. */
343 struct StationData {
344  bool conquerable :1;
362  float radius;
363  float security;
371  std::string name;
372  std::string description;
373 };
374 
375 /* POD structure for corp office data */
376 // this is used by multiple systems. keep here instead of in corpData.h
377 struct OfficeData {
378  bool lockDown :1;
386  std::string ticker;
387  std::string name;
388 };
389 
390 /* POD structure for loading dynamic items */
391 struct OwnerData {
395 };
396 
397 /* POD structure for container faction data */
398 struct FactionData {
403 };
404 
405 /* structure for type attributes */
409 };
410 
411 /* structure for loading static system items */
416  double radius;
417 };
418 
430  std::string itemName;
431 };
432 
436  double radius;
437  double x;
438  double y;
439  double z;
441 };
442 
443 /* POD structure for decoded probe data */
444 struct ProbeData {
448  float scanRange;
450 };
451 
452 
453 #endif // _EVEMU_POD_CONTAINERS_H_
std::string name
unsigned __int8 uint8
Definition: eve-compat.h:46
uint32 finalDamageDone
int32 officeRentalFee
std::string description
uint32 locID
uint16 fromKey
uint32 finalCorporationID
uint32 corporationID
uint32 victimDamageTaken
int64 grantableRolesAtHQ
uint16 graphicID
uint32 corpHQ
uint32 finalCharacterID
float dockingCostPerVolume
uint32 folderID
uint32 stationID
uint32 factionID
int64 startDateTime
std::string name
uint16 spawnID
std::string sigID
int64 rolesAtHQ
int64 rolesAtBase
double dropChance
uint32 skillPoints
uint8 maxDrop
std::string hash
uint32 certificateID
int32 victimFactionID
this is a class that kinda mimics how python polymorph's numbers.
Definition: EvilNumber.h:59
std::string sigName
uint32 itemID
uint16 shipsSalvaged
int64 rolesAtOther
signed __int8 int8
Definition: eve-compat.h:45
std::map< uint16, CharCerts > CertMap
int64 createDateTime
uint16 factionKills24Hour
signed __int32 int32
Definition: eve-compat.h:49
float taxRate
uint32 clientID
Definition: gpoint.h:33
std::string name
uint16 descriptionID
uint32 corpID
int64 expiryTime
uint32 stationID
uint16 probesLaunched
uint32 solarSystemID
uint32 solarSystemID
float reprocessingStationsTake
uint32 constellationID
uint32 victimCorporationID
uint8 minDrop
std::string name
std::string description
uint32 officeID
int64 rolesAtAll
float securityRating
uint16 finalShipTypeID
std::string name
std::string password
int32 allianceID
std::string ticker
uint32 ownerID
uint32 constellationID
uint32 victimCharacterID
int32 finalFactionID
int64 corpRole
uint32 corporationID
double finalSecurityStatus
unsigned __int32 uint32
Definition: eve-compat.h:50
uint32 systemID
uint32 baseID
uint32 regionID
GPoint position
uint8 rangeStep
uint32 corporationID
uint8 spawnClass
uint32 regionID
std::string reason
uint8 visibilityFlags
uint32 logonMinutes
uint32 lootGroupID
uint32 corporationID
float securityRating
GPoint dockPosition
float secRating
signed __int64 int64
Definition: eve-compat.h:51
int16 corpAccountKey
uint32 systemID
int32 warFactionID
std::string last_login
uint16 finalWeaponTypeID
uint16 victimShipTypeID
uint32 factionID
signed __int16 int16
Definition: eve-compat.h:47
GPoint dockEntry
uint8 spawnGroup
int64 grantDate
uint32 constellationID
Definition: gpoint.h:70
GVector dockOrientation
uint16 dockingBayGraphicID
uint16 hangarGraphicID
int64 grantableRoles
std::string title
uint32 maxShipVolumeDockable
int64 grantableRolesAtBase
int32 finalAllianceID
int64 grantableRolesAtOther
uint16 reprocessingHangarFlag
unsigned __int16 uint16
Definition: eve-compat.h:48
std::string ticker
int32 victimAllianceID
std::string killBlob
uint32 constellationID
std::string itemName
float scanRange
uint16 groupID
float reprocessingEfficiency
std::string name
std::string securityClass
uint32 careerSpecialityID