anacreonlib.types package#
Module contents#
This package contains all of the Pydantic models that are used to interact with the Anacreon API
Because all of the types are Pydantic models, they come with handy methods that can serialize/deserialize to JSON. You can read more about Pydantic on their documentation website.
anacreonlib.types.request_datatypes module#
- class anacreonlib.types.request_datatypes.AbortAttack(*, battleFieldID: int)#
Bases:
SerializableDataclass
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'populate_by_name': True}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'battlefield_id': FieldInfo(annotation=int, required=True, alias='battleFieldID', alias_priority=2)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.request_datatypes.AbortAttackRequest(*, authToken: str, gameID: str, sovereignID: int, sequence: int | None = None, battleFieldID: int)#
Bases:
AbortAttack
,AnacreonApiRequest
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'populate_by_name': True}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'auth_token': FieldInfo(annotation=str, required=True, alias='authToken', alias_priority=1), 'battlefield_id': FieldInfo(annotation=int, required=True, alias='battleFieldID', alias_priority=2), 'game_id': FieldInfo(annotation=str, required=True, alias='gameID', alias_priority=1), 'sequence': FieldInfo(annotation=Union[Annotated[int, PlainSerializer, BeforeValidator], NoneType], required=False, alias='sequence', alias_priority=1), 'sovereign_id': FieldInfo(annotation=int, required=True, alias='sovereignID', alias_priority=1, metadata=[PlainSerializer(func=<function _convert_int_to_aeon_ipinteger>, return_type=PydanticUndefined, when_used='json-unless-none'), BeforeValidator(func=<function _convert_aeon_ipinteger_to_int>)])}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.request_datatypes.AlterImprovement(*, sourceObjID: int, improvementID: int)#
Bases:
SerializableDataclass
Used to both build and destroy improvements
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'populate_by_name': True}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'improvement_id': FieldInfo(annotation=int, required=True, alias='improvementID', alias_priority=1), 'source_obj_id': FieldInfo(annotation=int, required=True, alias='sourceObjID', alias_priority=1)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.request_datatypes.AlterImprovementRequest(*, authToken: str, gameID: str, sovereignID: int, sequence: int | None = None, sourceObjID: int, improvementID: int)#
Bases:
AlterImprovement
,AnacreonApiRequest
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'populate_by_name': True}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'auth_token': FieldInfo(annotation=str, required=True, alias='authToken', alias_priority=1), 'game_id': FieldInfo(annotation=str, required=True, alias='gameID', alias_priority=1), 'improvement_id': FieldInfo(annotation=int, required=True, alias='improvementID', alias_priority=1), 'sequence': FieldInfo(annotation=Union[Annotated[int, PlainSerializer, BeforeValidator], NoneType], required=False, alias='sequence', alias_priority=1), 'source_obj_id': FieldInfo(annotation=int, required=True, alias='sourceObjID', alias_priority=1), 'sovereign_id': FieldInfo(annotation=int, required=True, alias='sovereignID', alias_priority=1, metadata=[PlainSerializer(func=<function _convert_int_to_aeon_ipinteger>, return_type=PydanticUndefined, when_used='json-unless-none'), BeforeValidator(func=<function _convert_aeon_ipinteger_to_int>)])}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.request_datatypes.AnacreonApiRequest(*, authToken: str, gameID: str, sovereignID: int, sequence: int | None = None)#
Bases:
SerializableDataclass
Base class for request bodies to most of the endpoints for the Anacreon API
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'populate_by_name': True}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'auth_token': FieldInfo(annotation=str, required=True, alias='authToken', alias_priority=1), 'game_id': FieldInfo(annotation=str, required=True, alias='gameID', alias_priority=1), 'sequence': FieldInfo(annotation=Union[Annotated[int, PlainSerializer, BeforeValidator], NoneType], required=False, alias='sequence', alias_priority=1), 'sovereign_id': FieldInfo(annotation=int, required=True, alias='sovereignID', alias_priority=1, metadata=[PlainSerializer(func=<function _convert_int_to_aeon_ipinteger>, return_type=PydanticUndefined, when_used='json-unless-none'), BeforeValidator(func=<function _convert_aeon_ipinteger_to_int>)])}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.request_datatypes.Attack(*, attackerObjID: int, battlePlan: BattlePlan)#
Bases:
SerializableDataclass
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- battle_plan: BattlePlan#
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'populate_by_name': True}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'attacker_obj_id': FieldInfo(annotation=int, required=True, alias='attackerObjID', alias_priority=1), 'battle_plan': FieldInfo(annotation=BattlePlan, required=True, alias='battlePlan', alias_priority=1)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.request_datatypes.AttackRequest(*, authToken: str, gameID: str, sovereignID: int, sequence: int | None = None, attackerObjID: int, battlePlan: BattlePlan)#
Bases:
Attack
,AnacreonApiRequest
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'populate_by_name': True}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'attacker_obj_id': FieldInfo(annotation=int, required=True, alias='attackerObjID', alias_priority=1), 'auth_token': FieldInfo(annotation=str, required=True, alias='authToken', alias_priority=1), 'battle_plan': FieldInfo(annotation=BattlePlan, required=True, alias='battlePlan', alias_priority=1), 'game_id': FieldInfo(annotation=str, required=True, alias='gameID', alias_priority=1), 'sequence': FieldInfo(annotation=Union[Annotated[int, PlainSerializer, BeforeValidator], NoneType], required=False, alias='sequence', alias_priority=1), 'sovereign_id': FieldInfo(annotation=int, required=True, alias='sovereignID', alias_priority=1, metadata=[PlainSerializer(func=<function _convert_int_to_aeon_ipinteger>, return_type=PydanticUndefined, when_used='json-unless-none'), BeforeValidator(func=<function _convert_aeon_ipinteger_to_int>)])}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.request_datatypes.AuthenticationRequest(*, username: str, password: str, actual: bool = True)#
Bases:
SerializableDataclass
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'populate_by_name': True}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'actual': FieldInfo(annotation=bool, required=False, default=True, alias='actual', alias_priority=1), 'password': FieldInfo(annotation=str, required=True, alias='password', alias_priority=1), 'username': FieldInfo(annotation=str, required=True, alias='username', alias_priority=1)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.request_datatypes.BattlePlan(*, battleFieldID: int, objective: BattleObjective, enemySovereignIDs: List[int])#
Bases:
SerializableDataclass
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'populate_by_name': True}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'battlefield_id': FieldInfo(annotation=int, required=True, alias='battleFieldID', alias_priority=2), 'enemy_sovereign_ids': FieldInfo(annotation=List[int], required=True, alias='enemySovereignIDs', alias_priority=2), 'objective': FieldInfo(annotation=BattleObjective, required=True, alias='objective', alias_priority=1)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- objective: BattleObjective#
- class anacreonlib.types.request_datatypes.BuyItem(*, sourceObjID: int, itemID: int, itemCount: int)#
Bases:
SerializableDataclass
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'populate_by_name': True}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'item_count': FieldInfo(annotation=int, required=True, alias='itemCount', alias_priority=1, metadata=[PlainSerializer(func=<function _convert_int_to_aeon_ipinteger>, return_type=PydanticUndefined, when_used='json-unless-none'), BeforeValidator(func=<function _convert_aeon_ipinteger_to_int>)]), 'item_id': FieldInfo(annotation=int, required=True, alias='itemID', alias_priority=1), 'source_obj_id': FieldInfo(annotation=int, required=True, alias='sourceObjID', alias_priority=1)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.request_datatypes.BuyItemRequest(*, authToken: str, gameID: str, sovereignID: int, sequence: int | None = None, sourceObjID: int, itemID: int, itemCount: int)#
Bases:
BuyItem
,AnacreonApiRequest
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'populate_by_name': True}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'auth_token': FieldInfo(annotation=str, required=True, alias='authToken', alias_priority=1), 'game_id': FieldInfo(annotation=str, required=True, alias='gameID', alias_priority=1), 'item_count': FieldInfo(annotation=int, required=True, alias='itemCount', alias_priority=1, metadata=[PlainSerializer(func=<function _convert_int_to_aeon_ipinteger>, return_type=PydanticUndefined, when_used='json-unless-none'), BeforeValidator(func=<function _convert_aeon_ipinteger_to_int>)]), 'item_id': FieldInfo(annotation=int, required=True, alias='itemID', alias_priority=1), 'sequence': FieldInfo(annotation=Union[Annotated[int, PlainSerializer, BeforeValidator], NoneType], required=False, alias='sequence', alias_priority=1), 'source_obj_id': FieldInfo(annotation=int, required=True, alias='sourceObjID', alias_priority=1), 'sovereign_id': FieldInfo(annotation=int, required=True, alias='sovereignID', alias_priority=1, metadata=[PlainSerializer(func=<function _convert_int_to_aeon_ipinteger>, return_type=PydanticUndefined, when_used='json-unless-none'), BeforeValidator(func=<function _convert_aeon_ipinteger_to_int>)])}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.request_datatypes.DeployFleet(*, sourceObjID: int, resources: List[int])#
Bases:
SerializableDataclass
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'populate_by_name': True}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'resources': FieldInfo(annotation=List[Annotated[int, PlainSerializer, BeforeValidator]], required=True, alias='resources', alias_priority=1), 'source_obj_id': FieldInfo(annotation=int, required=True, alias='sourceObjID', alias_priority=1)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.request_datatypes.DeployFleetRequest(*, authToken: str, gameID: str, sovereignID: int, sequence: int | None = None, sourceObjID: int, resources: List[int])#
Bases:
DeployFleet
,AnacreonApiRequest
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'populate_by_name': True}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'auth_token': FieldInfo(annotation=str, required=True, alias='authToken', alias_priority=1), 'game_id': FieldInfo(annotation=str, required=True, alias='gameID', alias_priority=1), 'resources': FieldInfo(annotation=List[Annotated[int, PlainSerializer, BeforeValidator]], required=True, alias='resources', alias_priority=1), 'sequence': FieldInfo(annotation=Union[Annotated[int, PlainSerializer, BeforeValidator], NoneType], required=False, alias='sequence', alias_priority=1), 'source_obj_id': FieldInfo(annotation=int, required=True, alias='sourceObjID', alias_priority=1), 'sovereign_id': FieldInfo(annotation=int, required=True, alias='sovereignID', alias_priority=1, metadata=[PlainSerializer(func=<function _convert_int_to_aeon_ipinteger>, return_type=PydanticUndefined, when_used='json-unless-none'), BeforeValidator(func=<function _convert_aeon_ipinteger_to_int>)])}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.request_datatypes.DesignateWorld(*, sourceObjID: int, newDesignation: int)#
Bases:
SerializableDataclass
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'populate_by_name': True}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'new_designation': FieldInfo(annotation=int, required=True, alias='newDesignation', alias_priority=1), 'source_obj_id': FieldInfo(annotation=int, required=True, alias='sourceObjID', alias_priority=1)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.request_datatypes.DesignateWorldRequest(*, authToken: str, gameID: str, sovereignID: int, sequence: int | None = None, sourceObjID: int, newDesignation: int)#
Bases:
DesignateWorld
,AnacreonApiRequest
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'populate_by_name': True}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'auth_token': FieldInfo(annotation=str, required=True, alias='authToken', alias_priority=1), 'game_id': FieldInfo(annotation=str, required=True, alias='gameID', alias_priority=1), 'new_designation': FieldInfo(annotation=int, required=True, alias='newDesignation', alias_priority=1), 'sequence': FieldInfo(annotation=Union[Annotated[int, PlainSerializer, BeforeValidator], NoneType], required=False, alias='sequence', alias_priority=1), 'source_obj_id': FieldInfo(annotation=int, required=True, alias='sourceObjID', alias_priority=1), 'sovereign_id': FieldInfo(annotation=int, required=True, alias='sovereignID', alias_priority=1, metadata=[PlainSerializer(func=<function _convert_int_to_aeon_ipinteger>, return_type=PydanticUndefined, when_used='json-unless-none'), BeforeValidator(func=<function _convert_aeon_ipinteger_to_int>)])}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.request_datatypes.DisbandFleet(*, fleetObjID: int, destObjID: int)#
Bases:
SerializableDataclass
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'populate_by_name': True}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'dest_obj_id': FieldInfo(annotation=int, required=True, alias='destObjID', alias_priority=1), 'fleet_obj_id': FieldInfo(annotation=int, required=True, alias='fleetObjID', alias_priority=1)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.request_datatypes.DisbandFleetRequest(*, authToken: str, gameID: str, sovereignID: int, sequence: int | None = None, fleetObjID: int, destObjID: int)#
Bases:
DisbandFleet
,AnacreonApiRequest
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'populate_by_name': True}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'auth_token': FieldInfo(annotation=str, required=True, alias='authToken', alias_priority=1), 'dest_obj_id': FieldInfo(annotation=int, required=True, alias='destObjID', alias_priority=1), 'fleet_obj_id': FieldInfo(annotation=int, required=True, alias='fleetObjID', alias_priority=1), 'game_id': FieldInfo(annotation=str, required=True, alias='gameID', alias_priority=1), 'sequence': FieldInfo(annotation=Union[Annotated[int, PlainSerializer, BeforeValidator], NoneType], required=False, alias='sequence', alias_priority=1), 'sovereign_id': FieldInfo(annotation=int, required=True, alias='sovereignID', alias_priority=1, metadata=[PlainSerializer(func=<function _convert_int_to_aeon_ipinteger>, return_type=PydanticUndefined, when_used='json-unless-none'), BeforeValidator(func=<function _convert_aeon_ipinteger_to_int>)])}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.request_datatypes.GetTactical(*, objID: int)#
Bases:
SerializableDataclass
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'populate_by_name': True}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'battlefield_id': FieldInfo(annotation=int, required=True, alias='objID', alias_priority=2)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.request_datatypes.GetTacticalRequest(*, authToken: str, gameID: str, sovereignID: int, sequence: int | None = None, objID: int)#
Bases:
GetTactical
,AnacreonApiRequest
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'populate_by_name': True}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'auth_token': FieldInfo(annotation=str, required=True, alias='authToken', alias_priority=1), 'battlefield_id': FieldInfo(annotation=int, required=True, alias='objID', alias_priority=2), 'game_id': FieldInfo(annotation=str, required=True, alias='gameID', alias_priority=1), 'sequence': FieldInfo(annotation=Union[Annotated[int, PlainSerializer, BeforeValidator], NoneType], required=False, alias='sequence', alias_priority=1), 'sovereign_id': FieldInfo(annotation=int, required=True, alias='sovereignID', alias_priority=1, metadata=[PlainSerializer(func=<function _convert_int_to_aeon_ipinteger>, return_type=PydanticUndefined, when_used='json-unless-none'), BeforeValidator(func=<function _convert_aeon_ipinteger_to_int>)])}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.request_datatypes.LaunchJumpMissile(*, objID: int, targetObjID: int)#
Bases:
SerializableDataclass
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'populate_by_name': True}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'source_obj_id': FieldInfo(annotation=int, required=True, alias='objID', alias_priority=2), 'target_obj_id': FieldInfo(annotation=int, required=True, alias='targetObjID', alias_priority=1)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.request_datatypes.LaunchJumpMissileRequest(*, authToken: str, gameID: str, sovereignID: int, sequence: int | None = None, objID: int, targetObjID: int)#
Bases:
LaunchJumpMissile
,AnacreonApiRequest
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'populate_by_name': True}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'auth_token': FieldInfo(annotation=str, required=True, alias='authToken', alias_priority=1), 'game_id': FieldInfo(annotation=str, required=True, alias='gameID', alias_priority=1), 'sequence': FieldInfo(annotation=Union[Annotated[int, PlainSerializer, BeforeValidator], NoneType], required=False, alias='sequence', alias_priority=1), 'source_obj_id': FieldInfo(annotation=int, required=True, alias='objID', alias_priority=2), 'sovereign_id': FieldInfo(annotation=int, required=True, alias='sovereignID', alias_priority=1, metadata=[PlainSerializer(func=<function _convert_int_to_aeon_ipinteger>, return_type=PydanticUndefined, when_used='json-unless-none'), BeforeValidator(func=<function _convert_aeon_ipinteger_to_int>)]), 'target_obj_id': FieldInfo(annotation=int, required=True, alias='targetObjID', alias_priority=1)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.request_datatypes.RenameObject(*, objID: int, name: str)#
Bases:
SerializableDataclass
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'populate_by_name': True}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'name': FieldInfo(annotation=str, required=True, alias='name', alias_priority=1), 'obj_id': FieldInfo(annotation=int, required=True, alias='objID', alias_priority=1)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.request_datatypes.RenameObjectRequest(*, authToken: str, gameID: str, sovereignID: int, sequence: int | None = None, objID: int, name: str)#
Bases:
RenameObject
,AnacreonApiRequest
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'populate_by_name': True}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'auth_token': FieldInfo(annotation=str, required=True, alias='authToken', alias_priority=1), 'game_id': FieldInfo(annotation=str, required=True, alias='gameID', alias_priority=1), 'name': FieldInfo(annotation=str, required=True, alias='name', alias_priority=1), 'obj_id': FieldInfo(annotation=int, required=True, alias='objID', alias_priority=1), 'sequence': FieldInfo(annotation=Union[Annotated[int, PlainSerializer, BeforeValidator], NoneType], required=False, alias='sequence', alias_priority=1), 'sovereign_id': FieldInfo(annotation=int, required=True, alias='sovereignID', alias_priority=1, metadata=[PlainSerializer(func=<function _convert_int_to_aeon_ipinteger>, return_type=PydanticUndefined, when_used='json-unless-none'), BeforeValidator(func=<function _convert_aeon_ipinteger_to_int>)])}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.request_datatypes.SellFleet(*, objID: int, buyerObjID: int, resources: List[int])#
Bases:
SerializableDataclass
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'populate_by_name': True}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'buyer_obj_id': FieldInfo(annotation=int, required=True, alias='buyerObjID', alias_priority=1), 'fleet_id': FieldInfo(annotation=int, required=True, alias='objID', alias_priority=2), 'resources': FieldInfo(annotation=List[Annotated[int, PlainSerializer, BeforeValidator]], required=True, alias='resources', alias_priority=1)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.request_datatypes.SellFleetRequest(*, authToken: str, gameID: str, sovereignID: int, sequence: int | None = None, objID: int, buyerObjID: int, resources: List[int])#
Bases:
SellFleet
,AnacreonApiRequest
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'populate_by_name': True}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'auth_token': FieldInfo(annotation=str, required=True, alias='authToken', alias_priority=1), 'buyer_obj_id': FieldInfo(annotation=int, required=True, alias='buyerObjID', alias_priority=1), 'fleet_id': FieldInfo(annotation=int, required=True, alias='objID', alias_priority=2), 'game_id': FieldInfo(annotation=str, required=True, alias='gameID', alias_priority=1), 'resources': FieldInfo(annotation=List[Annotated[int, PlainSerializer, BeforeValidator]], required=True, alias='resources', alias_priority=1), 'sequence': FieldInfo(annotation=Union[Annotated[int, PlainSerializer, BeforeValidator], NoneType], required=False, alias='sequence', alias_priority=1), 'sovereign_id': FieldInfo(annotation=int, required=True, alias='sovereignID', alias_priority=1, metadata=[PlainSerializer(func=<function _convert_int_to_aeon_ipinteger>, return_type=PydanticUndefined, when_used='json-unless-none'), BeforeValidator(func=<function _convert_aeon_ipinteger_to_int>)])}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.request_datatypes.SendMessage(*, recipientID: int, messageText: str)#
Bases:
SerializableDataclass
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'populate_by_name': True}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'message_text': FieldInfo(annotation=str, required=True, alias='messageText', alias_priority=1), 'recipient_id': FieldInfo(annotation=int, required=True, alias='recipientID', alias_priority=1)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.request_datatypes.SendMessageRequest(*, authToken: str, gameID: str, sovereignID: int, sequence: int | None = None, recipientID: int, messageText: str)#
Bases:
SendMessage
,AnacreonApiRequest
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'populate_by_name': True}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'auth_token': FieldInfo(annotation=str, required=True, alias='authToken', alias_priority=1), 'game_id': FieldInfo(annotation=str, required=True, alias='gameID', alias_priority=1), 'message_text': FieldInfo(annotation=str, required=True, alias='messageText', alias_priority=1), 'recipient_id': FieldInfo(annotation=int, required=True, alias='recipientID', alias_priority=1), 'sequence': FieldInfo(annotation=Union[Annotated[int, PlainSerializer, BeforeValidator], NoneType], required=False, alias='sequence', alias_priority=1), 'sovereign_id': FieldInfo(annotation=int, required=True, alias='sovereignID', alias_priority=1, metadata=[PlainSerializer(func=<function _convert_int_to_aeon_ipinteger>, return_type=PydanticUndefined, when_used='json-unless-none'), BeforeValidator(func=<function _convert_aeon_ipinteger_to_int>)])}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.request_datatypes.SerializableDataclass#
Bases:
BaseModel
Base class for a serializable Anacreon request object. Contains common Pydantic config settings.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'populate_by_name': True}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class anacreonlib.types.request_datatypes.SetFleetDestination(*, objID: int, dest: int)#
Bases:
SerializableDataclass
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'populate_by_name': True}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'dest': FieldInfo(annotation=int, required=True, alias='dest', alias_priority=1), 'obj_id': FieldInfo(annotation=int, required=True, alias='objID', alias_priority=1)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.request_datatypes.SetFleetDestinationRequest(*, authToken: str, gameID: str, sovereignID: int, sequence: int | None = None, objID: int, dest: int)#
Bases:
SetFleetDestination
,AnacreonApiRequest
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'populate_by_name': True}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'auth_token': FieldInfo(annotation=str, required=True, alias='authToken', alias_priority=1), 'dest': FieldInfo(annotation=int, required=True, alias='dest', alias_priority=1), 'game_id': FieldInfo(annotation=str, required=True, alias='gameID', alias_priority=1), 'obj_id': FieldInfo(annotation=int, required=True, alias='objID', alias_priority=1), 'sequence': FieldInfo(annotation=Union[Annotated[int, PlainSerializer, BeforeValidator], NoneType], required=False, alias='sequence', alias_priority=1), 'sovereign_id': FieldInfo(annotation=int, required=True, alias='sovereignID', alias_priority=1, metadata=[PlainSerializer(func=<function _convert_int_to_aeon_ipinteger>, return_type=PydanticUndefined, when_used='json-unless-none'), BeforeValidator(func=<function _convert_aeon_ipinteger_to_int>)])}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.request_datatypes.SetHistoryRead(*, historyID: int)#
Bases:
SerializableDataclass
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'populate_by_name': True}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'history_id': FieldInfo(annotation=int, required=True, alias='historyID', alias_priority=1, metadata=[PlainSerializer(func=<function _convert_int_to_aeon_ipinteger>, return_type=PydanticUndefined, when_used='json-unless-none'), BeforeValidator(func=<function _convert_aeon_ipinteger_to_int>)])}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.request_datatypes.SetHistoryReadRequest(*, authToken: str, gameID: str, sovereignID: int, sequence: int | None = None, historyID: int)#
Bases:
SetHistoryRead
,AnacreonApiRequest
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'populate_by_name': True}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'auth_token': FieldInfo(annotation=str, required=True, alias='authToken', alias_priority=1), 'game_id': FieldInfo(annotation=str, required=True, alias='gameID', alias_priority=1), 'history_id': FieldInfo(annotation=int, required=True, alias='historyID', alias_priority=1, metadata=[PlainSerializer(func=<function _convert_int_to_aeon_ipinteger>, return_type=PydanticUndefined, when_used='json-unless-none'), BeforeValidator(func=<function _convert_aeon_ipinteger_to_int>)]), 'sequence': FieldInfo(annotation=Union[Annotated[int, PlainSerializer, BeforeValidator], NoneType], required=False, alias='sequence', alias_priority=1), 'sovereign_id': FieldInfo(annotation=int, required=True, alias='sovereignID', alias_priority=1, metadata=[PlainSerializer(func=<function _convert_int_to_aeon_ipinteger>, return_type=PydanticUndefined, when_used='json-unless-none'), BeforeValidator(func=<function _convert_aeon_ipinteger_to_int>)])}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.request_datatypes.SetIndustryAlloc(*, objID: int, industryID: int, allocValue: int | float)#
Bases:
SerializableDataclass
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'populate_by_name': True}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'alloc_value': FieldInfo(annotation=Union[int, float], required=True, alias='allocValue', alias_priority=1, metadata=[Ge(ge=0), Le(le=100)]), 'industry_id': FieldInfo(annotation=int, required=True, alias='industryID', alias_priority=1), 'world_id': FieldInfo(annotation=int, required=True, alias='objID', alias_priority=2)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.request_datatypes.SetIndustryAllocRequest(*, authToken: str, gameID: str, sovereignID: int, sequence: int | None = None, objID: int, industryID: int, allocValue: int | float)#
Bases:
SetIndustryAlloc
,AnacreonApiRequest
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'populate_by_name': True}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'alloc_value': FieldInfo(annotation=Union[int, float], required=True, alias='allocValue', alias_priority=1, metadata=[Ge(ge=0), Le(le=100)]), 'auth_token': FieldInfo(annotation=str, required=True, alias='authToken', alias_priority=1), 'game_id': FieldInfo(annotation=str, required=True, alias='gameID', alias_priority=1), 'industry_id': FieldInfo(annotation=int, required=True, alias='industryID', alias_priority=1), 'sequence': FieldInfo(annotation=Union[Annotated[int, PlainSerializer, BeforeValidator], NoneType], required=False, alias='sequence', alias_priority=1), 'sovereign_id': FieldInfo(annotation=int, required=True, alias='sovereignID', alias_priority=1, metadata=[PlainSerializer(func=<function _convert_int_to_aeon_ipinteger>, return_type=PydanticUndefined, when_used='json-unless-none'), BeforeValidator(func=<function _convert_aeon_ipinteger_to_int>)]), 'world_id': FieldInfo(annotation=int, required=True, alias='objID', alias_priority=2)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.request_datatypes.SetProductAlloc(*, objID: int, industryID: int, alloc: List[int | float])#
Bases:
SerializableDataclass
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'populate_by_name': True}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'alloc': FieldInfo(annotation=List[Union[int, float]], required=True, alias='alloc', alias_priority=1), 'industry_id': FieldInfo(annotation=int, required=True, alias='industryID', alias_priority=1), 'world_id': FieldInfo(annotation=int, required=True, alias='objID', alias_priority=2)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.request_datatypes.SetProductAllocRequest(*, authToken: str, gameID: str, sovereignID: int, sequence: int | None = None, objID: int, industryID: int, alloc: List[int | float])#
Bases:
SetProductAlloc
,AnacreonApiRequest
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'populate_by_name': True}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'alloc': FieldInfo(annotation=List[Union[int, float]], required=True, alias='alloc', alias_priority=1), 'auth_token': FieldInfo(annotation=str, required=True, alias='authToken', alias_priority=1), 'game_id': FieldInfo(annotation=str, required=True, alias='gameID', alias_priority=1), 'industry_id': FieldInfo(annotation=int, required=True, alias='industryID', alias_priority=1), 'sequence': FieldInfo(annotation=Union[Annotated[int, PlainSerializer, BeforeValidator], NoneType], required=False, alias='sequence', alias_priority=1), 'sovereign_id': FieldInfo(annotation=int, required=True, alias='sovereignID', alias_priority=1, metadata=[PlainSerializer(func=<function _convert_int_to_aeon_ipinteger>, return_type=PydanticUndefined, when_used='json-unless-none'), BeforeValidator(func=<function _convert_aeon_ipinteger_to_int>)]), 'world_id': FieldInfo(annotation=int, required=True, alias='objID', alias_priority=2)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.request_datatypes.SetTradeRoute(*, objID: int, sourceObjID: int, allocType: TradeRouteTypes | str, allocValue: str | float | None = None, resType: int | None = None)#
Bases:
SerializableDataclass
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- alloc_type: TradeRouteTypes | str#
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'populate_by_name': True}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'alloc_type': FieldInfo(annotation=Union[TradeRouteTypes, str], required=True, alias='allocType', alias_priority=1), 'alloc_value': FieldInfo(annotation=Union[str, float, NoneType], required=False, alias='allocValue', alias_priority=1), 'exporter_id': FieldInfo(annotation=int, required=True, alias='sourceObjID', alias_priority=2), 'importer_id': FieldInfo(annotation=int, required=True, alias='objID', alias_priority=2), 'res_type_id': FieldInfo(annotation=Union[int, NoneType], required=False, alias='resType', alias_priority=2)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.request_datatypes.SetTradeRouteRequest(*, authToken: str, gameID: str, sovereignID: int, sequence: int | None = None, objID: int, sourceObjID: int, allocType: TradeRouteTypes | str, allocValue: str | float | None = None, resType: int | None = None)#
Bases:
SetTradeRoute
,AnacreonApiRequest
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'populate_by_name': True}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'alloc_type': FieldInfo(annotation=Union[TradeRouteTypes, str], required=True, alias='allocType', alias_priority=1), 'alloc_value': FieldInfo(annotation=Union[str, float, NoneType], required=False, alias='allocValue', alias_priority=1), 'auth_token': FieldInfo(annotation=str, required=True, alias='authToken', alias_priority=1), 'exporter_id': FieldInfo(annotation=int, required=True, alias='sourceObjID', alias_priority=2), 'game_id': FieldInfo(annotation=str, required=True, alias='gameID', alias_priority=1), 'importer_id': FieldInfo(annotation=int, required=True, alias='objID', alias_priority=2), 'res_type_id': FieldInfo(annotation=Union[int, NoneType], required=False, alias='resType', alias_priority=2), 'sequence': FieldInfo(annotation=Union[Annotated[int, PlainSerializer, BeforeValidator], NoneType], required=False, alias='sequence', alias_priority=1), 'sovereign_id': FieldInfo(annotation=int, required=True, alias='sovereignID', alias_priority=1, metadata=[PlainSerializer(func=<function _convert_int_to_aeon_ipinteger>, return_type=PydanticUndefined, when_used='json-unless-none'), BeforeValidator(func=<function _convert_aeon_ipinteger_to_int>)])}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.request_datatypes.StopTradeRoute(*, objID: int, sourceObjID: int)#
Bases:
SerializableDataclass
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'populate_by_name': True}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'planet_id_a': FieldInfo(annotation=int, required=True, alias='objID', alias_priority=2), 'planet_id_b': FieldInfo(annotation=int, required=True, alias='sourceObjID', alias_priority=2)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.request_datatypes.StopTradeRouteRequest(*, authToken: str, gameID: str, sovereignID: int, sequence: int | None = None, objID: int, sourceObjID: int)#
Bases:
StopTradeRoute
,AnacreonApiRequest
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'populate_by_name': True}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'auth_token': FieldInfo(annotation=str, required=True, alias='authToken', alias_priority=1), 'game_id': FieldInfo(annotation=str, required=True, alias='gameID', alias_priority=1), 'planet_id_a': FieldInfo(annotation=int, required=True, alias='objID', alias_priority=2), 'planet_id_b': FieldInfo(annotation=int, required=True, alias='sourceObjID', alias_priority=2), 'sequence': FieldInfo(annotation=Union[Annotated[int, PlainSerializer, BeforeValidator], NoneType], required=False, alias='sequence', alias_priority=1), 'sovereign_id': FieldInfo(annotation=int, required=True, alias='sovereignID', alias_priority=1, metadata=[PlainSerializer(func=<function _convert_int_to_aeon_ipinteger>, return_type=PydanticUndefined, when_used='json-unless-none'), BeforeValidator(func=<function _convert_aeon_ipinteger_to_int>)])}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.request_datatypes.TacticalOrder(*, objID: int, order: TacticalOrderType | str, tacticalID: int, orbit: float | None = None)#
Bases:
SerializableDataclass
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'populate_by_name': True}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'battlefield_id': FieldInfo(annotation=int, required=True, alias='objID', alias_priority=2), 'orbit': FieldInfo(annotation=Union[float, NoneType], required=False, alias='orbit', alias_priority=1), 'order': FieldInfo(annotation=Union[TacticalOrderType, str], required=True, alias='order', alias_priority=1), 'squadron_id': FieldInfo(annotation=int, required=True, alias='tacticalID', alias_priority=2), 'tactical_id': FieldInfo(annotation=Union[int, NoneType], required=False, alias='tacticalID', alias_priority=1)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- order: TacticalOrderType | str#
- class anacreonlib.types.request_datatypes.TacticalOrderRequest(*, authToken: str, gameID: str, sovereignID: int, sequence: int | None = None, objID: int, order: TacticalOrderType | str, tacticalID: int, orbit: float | None = None)#
Bases:
TacticalOrder
,AnacreonApiRequest
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'populate_by_name': True}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'auth_token': FieldInfo(annotation=str, required=True, alias='authToken', alias_priority=1), 'battlefield_id': FieldInfo(annotation=int, required=True, alias='objID', alias_priority=2), 'game_id': FieldInfo(annotation=str, required=True, alias='gameID', alias_priority=1), 'orbit': FieldInfo(annotation=Union[float, NoneType], required=False, alias='orbit', alias_priority=1), 'order': FieldInfo(annotation=Union[TacticalOrderType, str], required=True, alias='order', alias_priority=1), 'sequence': FieldInfo(annotation=Union[Annotated[int, PlainSerializer, BeforeValidator], NoneType], required=False, alias='sequence', alias_priority=1), 'sovereign_id': FieldInfo(annotation=int, required=True, alias='sovereignID', alias_priority=1, metadata=[PlainSerializer(func=<function _convert_int_to_aeon_ipinteger>, return_type=PydanticUndefined, when_used='json-unless-none'), BeforeValidator(func=<function _convert_aeon_ipinteger_to_int>)]), 'squadron_id': FieldInfo(annotation=int, required=True, alias='tacticalID', alias_priority=2), 'tactical_id': FieldInfo(annotation=Union[int, NoneType], required=False, alias='tacticalID', alias_priority=1)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.request_datatypes.TacticalOrderType(value)#
-
An enumeration.
- LAND = 'land'#
- ORBIT = 'orbit'#
- TARGET = 'target'#
- class anacreonlib.types.request_datatypes.TradeRouteTypes(value)#
-
An enumeration.
- ADD_EXPORT_ROUTE = 'addExportRoute'#
- CONSUMPTION = 'consumption'#
- DEFAULT = 'addDefaultRoute'#
- SET_EXPORT_QUOTA = 'setExportQuota'#
- TECH = 'tech'#
- class anacreonlib.types.request_datatypes.TransferFleet(*, fleetObjID: int, destObjID: int, resources: List[int])#
Bases:
SerializableDataclass
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'populate_by_name': True}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'dest_obj_id': FieldInfo(annotation=int, required=True, alias='destObjID', alias_priority=1), 'fleet_obj_id': FieldInfo(annotation=int, required=True, alias='fleetObjID', alias_priority=1), 'resources': FieldInfo(annotation=List[Annotated[int, PlainSerializer, BeforeValidator]], required=True, alias='resources', alias_priority=1)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.request_datatypes.TransferFleetRequest(*, authToken: str, gameID: str, sovereignID: int, sequence: int | None = None, fleetObjID: int, destObjID: int, resources: List[int])#
Bases:
TransferFleet
,AnacreonApiRequest
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'populate_by_name': True}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'auth_token': FieldInfo(annotation=str, required=True, alias='authToken', alias_priority=1), 'dest_obj_id': FieldInfo(annotation=int, required=True, alias='destObjID', alias_priority=1), 'fleet_obj_id': FieldInfo(annotation=int, required=True, alias='fleetObjID', alias_priority=1), 'game_id': FieldInfo(annotation=str, required=True, alias='gameID', alias_priority=1), 'resources': FieldInfo(annotation=List[Annotated[int, PlainSerializer, BeforeValidator]], required=True, alias='resources', alias_priority=1), 'sequence': FieldInfo(annotation=Union[Annotated[int, PlainSerializer, BeforeValidator], NoneType], required=False, alias='sequence', alias_priority=1), 'sovereign_id': FieldInfo(annotation=int, required=True, alias='sovereignID', alias_priority=1, metadata=[PlainSerializer(func=<function _convert_int_to_aeon_ipinteger>, return_type=PydanticUndefined, when_used='json-unless-none'), BeforeValidator(func=<function _convert_aeon_ipinteger_to_int>)])}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
anacreonlib.types.response_datatypes module#
- class anacreonlib.types.response_datatypes.AnacreonObject(*, object_class: str)#
Bases:
DeserializableDataclass
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'ignored_types': (<class 'functools.cached_property'>, <class 'set'>)}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'object_class': FieldInfo(annotation=str, required=True, alias='class', alias_priority=2)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.response_datatypes.AnacreonObjectWithId(*, object_class: str, id: int)#
Bases:
AnacreonObject
Not all anacreon objects have an ID, most notably, UpdateObject
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'ignored_types': (<class 'functools.cached_property'>, <class 'set'>)}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'id': FieldInfo(annotation=int, required=True, alias='id', alias_priority=1), 'object_class': FieldInfo(annotation=str, required=True, alias='class', alias_priority=2)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.response_datatypes.AuthenticationResponse(*, authToken: str, rights: List[str], scopedCredentials: int, username: str)#
Bases:
DeserializableDataclass
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'ignored_types': (<class 'functools.cached_property'>, <class 'set'>)}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'auth_token': FieldInfo(annotation=str, required=True, alias='authToken', alias_priority=1), 'rights': FieldInfo(annotation=List[str], required=True, alias='rights', alias_priority=1), 'scoped_credentials': FieldInfo(annotation=int, required=True, alias='scopedCredentials', alias_priority=1, metadata=[PlainSerializer(func=<function _convert_int_to_aeon_ipinteger>, return_type=PydanticUndefined, when_used='json-unless-none'), BeforeValidator(func=<function _convert_aeon_ipinteger_to_int>)]), 'username': FieldInfo(annotation=str, required=True, alias='username', alias_priority=1)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.response_datatypes.BattlePlanDetails(*, enemySovereignIDs: List[int] | None = None, objective: BattleObjective, sovereignID: int, status: str)#
Bases:
DeserializableDataclass
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'ignored_types': (<class 'functools.cached_property'>, <class 'set'>)}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'enemy_sovereign_ids': FieldInfo(annotation=Union[List[int], NoneType], required=False, alias='enemySovereignIDs', alias_priority=2), 'objective': FieldInfo(annotation=BattleObjective, required=True, alias='objective', alias_priority=1), 'sovereign_id': FieldInfo(annotation=int, required=True, alias='sovereignID', alias_priority=1), 'status': FieldInfo(annotation=str, required=True, alias='status', alias_priority=1)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- objective: BattleObjective#
- class anacreonlib.types.response_datatypes.BattlePlanObject(*, object_class: Literal['battlePlan'], id: int, battlePlan: BattlePlanDetails)#
Bases:
AnacreonObjectWithId
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- battle_plan: BattlePlanDetails#
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'ignored_types': (<class 'functools.cached_property'>, <class 'set'>)}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'battle_plan': FieldInfo(annotation=BattlePlanDetails, required=True, alias='battlePlan', alias_priority=1), 'id': FieldInfo(annotation=int, required=True, alias='id', alias_priority=1), 'object_class': FieldInfo(annotation=Literal['battlePlan'], required=True, alias='class', alias_priority=2)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.response_datatypes.DestroyedSpaceObject(*, object_class: Literal['destroyedSpaceObject'], id: int)#
Bases:
AnacreonObjectWithId
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'ignored_types': (<class 'functools.cached_property'>, <class 'set'>)}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'id': FieldInfo(annotation=int, required=True, alias='id', alias_priority=1), 'object_class': FieldInfo(annotation=Literal['destroyedSpaceObject'], required=True, alias='class', alias_priority=2)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.response_datatypes.ExplorationGrid(*, radius: float, exploredOutline: List[List[float]])#
Bases:
DeserializableDataclass
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'ignored_types': (<class 'functools.cached_property'>, <class 'set'>)}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'explored_outline': FieldInfo(annotation=List[List[float]], required=True, alias='exploredOutline', alias_priority=1), 'radius': FieldInfo(annotation=float, required=True, alias='radius', alias_priority=1)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.response_datatypes.Fleet(*, object_class: Literal['fleet'], id: int, ftlType: str, name: str, sovereignID: int, resources: List[int], news: List[News] | None = None, anchorObjID: int | None = None, battlePlan: BattlePlanDetails | None = None, pos: Tuple[float, float], dest: Tuple[float, float] | None = None, destID: int | None = None, eta: int | None = None, region: NebulaType = NebulaType.CLEAR_SPACE)#
Bases:
AnacreonObjectWithId
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- anchor_obj_id: int | None#
None
if this fleet is not currently stationed at a world. Otherwise, this is the ID of the world where this fleet is stationed.
- battle_plan: BattlePlanDetails | None#
- eta: int | None#
If not
None
, corresponds to theUpdateObject.update
on which this fleet will arrive at its destination.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'ignored_types': (<class 'functools.cached_property'>, <class 'set'>)}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'anchor_obj_id': FieldInfo(annotation=Union[int, NoneType], required=False, alias='anchorObjID', alias_priority=1), 'battle_plan': FieldInfo(annotation=Union[BattlePlanDetails, NoneType], required=False, alias='battlePlan', alias_priority=1), 'dest_id': FieldInfo(annotation=Union[int, NoneType], required=False, alias='destID', alias_priority=1), 'destination': FieldInfo(annotation=Union[Tuple[float, float], NoneType], required=False, alias='dest', alias_priority=2), 'eta': FieldInfo(annotation=Union[int, NoneType], required=False, alias='eta', alias_priority=1), 'ftl_type': FieldInfo(annotation=str, required=True, alias='ftlType', alias_priority=1), 'id': FieldInfo(annotation=int, required=True, alias='id', alias_priority=1), 'name': FieldInfo(annotation=str, required=True, alias='name', alias_priority=1), 'news': FieldInfo(annotation=Union[List[News], NoneType], required=False, alias='news', alias_priority=1), 'object_class': FieldInfo(annotation=Literal['fleet'], required=True, alias='class', alias_priority=2), 'pos': FieldInfo(annotation=Tuple[float, float], required=True, alias='pos', alias_priority=1), 'region': FieldInfo(annotation=NebulaType, required=False, default=<NebulaType.CLEAR_SPACE: 1>, alias='region', alias_priority=1), 'resources': FieldInfo(annotation=List[int], required=True, alias='resources', alias_priority=1), 'sovereign_id': FieldInfo(annotation=int, required=True, alias='sovereignID', alias_priority=1)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- region: NebulaType#
- class anacreonlib.types.response_datatypes.History(*, object_class: Literal['history'], history: List[HistoryElement])#
Bases:
AnacreonObject
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- history: List[HistoryElement]#
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'ignored_types': (<class 'functools.cached_property'>, <class 'set'>)}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'history': FieldInfo(annotation=List[HistoryElement], required=True, alias='history', alias_priority=1), 'object_class': FieldInfo(annotation=Literal['history'], required=True, alias='class', alias_priority=2)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.response_datatypes.HistoryElement(*, id: int, objID: int, subject: int, text: str)#
Bases:
DeserializableDataclass
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- id: int#
ID of this history element, which can be passed to the setHistoryRead endpoint to clear this message
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'ignored_types': (<class 'functools.cached_property'>, <class 'set'>)}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'id': FieldInfo(annotation=int, required=True, alias='id', alias_priority=1), 'obj_id': FieldInfo(annotation=int, required=True, alias='objID', alias_priority=1), 'subject': FieldInfo(annotation=int, required=True, alias='subject', alias_priority=1), 'text': FieldInfo(annotation=str, required=True, alias='text', alias_priority=1)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.response_datatypes.MesophonTrait(*, buyPrices: List[int | float], sellPrices: List[int | float], traitID: int)#
Bases:
DeserializableDataclass
Trait applied to the Mesophon sovereign (NPE trading empire that players can buy ships from)
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- buy_prices: List[int | float]#
A list which alternates between resource ID and the number of aes this empire is willing to pay per unit (they are the buyer)
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'ignored_types': (<class 'functools.cached_property'>, <class 'set'>)}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'buy_prices': FieldInfo(annotation=List[Union[int, float]], required=True, alias='buyPrices', alias_priority=1), 'sell_prices': FieldInfo(annotation=List[Union[int, float]], required=True, alias='sellPrices', alias_priority=1), 'trait_id': FieldInfo(annotation=int, required=True, alias='traitID', alias_priority=1)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.response_datatypes.NebulaType(value)#
-
Enum of types of space regions a world can be in
(technically, a world cannot be in a RIFT_ZONE) (these values are a guess)
- CLEAR_SPACE = 1#
- DARK_NEBULA = 3#
- LIGHT_NEBULA = 2#
- RIFT_ZONE = 4#
- class anacreonlib.types.response_datatypes.News(*, subject: int, text: str)#
Bases:
DeserializableDataclass
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'ignored_types': (<class 'functools.cached_property'>, <class 'set'>)}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'subject': FieldInfo(annotation=int, required=True, alias='subject', alias_priority=1), 'text': FieldInfo(annotation=str, required=True, alias='text', alias_priority=1)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.response_datatypes.OwnSovereign(*, object_class: Literal['sovereign'], id: int, imperialMight: int, name: str, relationship: SovereignRelationship | None = None, doctrine: int | None = None, traits: List[MesophonTrait] | None = None, capitalID: int, stats: SovereignStats, foundedOn: int | None = None, territory: List[Tuple[float, float, float] | Tuple[float, float, float, float, float]] | None = None, adminRange: List[Tuple[float, float, float] | Tuple[float, float, float, float, float]], explorationGrid: ExplorationGrid, funds: List[int | float], secessionChance: float)#
Bases:
ReigningSovereign
Represents the sovereign belonging to the user who is currently logged in
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- exploration_grid: ExplorationGrid#
- funds: List[int | float]#
Alternating list between resource ID and resource quantity As long as is only one currency (aes), this list will only have 2 elements max
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'ignored_types': (<class 'functools.cached_property'>, <class 'set'>)}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'admin_range': FieldInfo(annotation=List[Union[Tuple[float, float, float], Tuple[float, float, float, float, float]]], required=True, alias='adminRange', alias_priority=1), 'capital_id': FieldInfo(annotation=int, required=True, alias='capitalID', alias_priority=1), 'doctrine': FieldInfo(annotation=Union[int, NoneType], required=False, alias='doctrine', alias_priority=1), 'exploration_grid': FieldInfo(annotation=ExplorationGrid, required=True, alias='explorationGrid', alias_priority=1), 'founded_on': FieldInfo(annotation=Union[int, NoneType], required=False, alias='foundedOn', alias_priority=1), 'funds': FieldInfo(annotation=List[Union[int, float]], required=True, alias='funds', alias_priority=1), 'id': FieldInfo(annotation=int, required=True, alias='id', alias_priority=1), 'imperial_might': FieldInfo(annotation=int, required=True, alias='imperialMight', alias_priority=1), 'name': FieldInfo(annotation=str, required=True, alias='name', alias_priority=1), 'object_class': FieldInfo(annotation=Literal['sovereign'], required=True, alias='class', alias_priority=2), 'relationship': FieldInfo(annotation=Union[SovereignRelationship, NoneType], required=False, alias='relationship', alias_priority=1), 'secession_chance': FieldInfo(annotation=float, required=True, alias='secessionChance', alias_priority=1), 'stats': FieldInfo(annotation=SovereignStats, required=True, alias='stats', alias_priority=1), 'territory': FieldInfo(annotation=Union[List[Union[Tuple[float, float, float], Tuple[float, float, float, float, float]]], NoneType], required=False, alias='territory', alias_priority=1), 'traits': FieldInfo(annotation=Union[List[MesophonTrait], NoneType], required=False, alias='traits', alias_priority=1)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- object_class: ObjectClass[Literal['sovereign']]#
- relationship: SovereignRelationship | None#
- stats: SovereignStats#
- traits: List[MesophonTrait] | None#
- class anacreonlib.types.response_datatypes.OwnedWorld(*, object_class: Literal['world'], id: int, culture: int, designation: int, efficiency: float, name: str, nearObjIDs: List[int] | None = None, orbit: List[float], population: int, pos: Tuple[float, float], resources: List[int] | None = None, sovereignID: int, techLevel: Literal[1, 2, 3, 4, 5, 6, 7, 8, 9, 10], traits: List[int | Trait | Rebellion], worldClass: int, tradeRoutes: List[TradeRoute] | None = None, revIndex: RevIndex, battlePlan: BattlePlanDetails | None = None, targetTechLevel: Literal[1, 2, 3, 4, 5, 6, 7, 8, 9, 10] | None = None, targetPopulation: int | None = None, region: NebulaType = NebulaType.CLEAR_SPACE, baseConsumption: List[int | None], news: List[News] | None = None, tradeRouteMax: int | None = None)#
Bases:
World
This is a world we know belongs to the current user because you are guaranteed to see certain fields
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- battle_plan: BattlePlanDetails | None#
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'ignored_types': (<class 'functools.cached_property'>, <class 'set'>)}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'base_consumption': FieldInfo(annotation=List[Union[int, NoneType]], required=True, alias='baseConsumption', alias_priority=1), 'battle_plan': FieldInfo(annotation=Union[BattlePlanDetails, NoneType], required=False, alias='battlePlan', alias_priority=1), 'culture': FieldInfo(annotation=int, required=True, alias='culture', alias_priority=1), 'designation': FieldInfo(annotation=int, required=True, alias='designation', alias_priority=1), 'efficiency': FieldInfo(annotation=float, required=True, alias='efficiency', alias_priority=1, metadata=[Ge(ge=0), Le(le=100)]), 'id': FieldInfo(annotation=int, required=True, alias='id', alias_priority=1), 'name': FieldInfo(annotation=str, required=True, alias='name', alias_priority=1), 'near_obj_ids': FieldInfo(annotation=Union[List[int], NoneType], required=False, alias='nearObjIDs', alias_priority=2), 'news': FieldInfo(annotation=Union[List[News], NoneType], required=False, alias='news', alias_priority=1), 'object_class': FieldInfo(annotation=Literal['world'], required=True, alias='class', alias_priority=2), 'orbit': FieldInfo(annotation=List[float], required=True, alias='orbit', alias_priority=1), 'population': FieldInfo(annotation=int, required=True, alias='population', alias_priority=1), 'pos': FieldInfo(annotation=Tuple[float, float], required=True, alias='pos', alias_priority=1), 'region': FieldInfo(annotation=NebulaType, required=False, default=<NebulaType.CLEAR_SPACE: 1>, alias='region', alias_priority=1), 'resources': FieldInfo(annotation=Union[List[Annotated[int, PlainSerializer, BeforeValidator]], NoneType], required=False, alias='resources', alias_priority=1), 'rev_index': FieldInfo(annotation=RevIndex, required=True, alias='revIndex', alias_priority=1), 'sovereign_id': FieldInfo(annotation=int, required=True, alias='sovereignID', alias_priority=1), 'target_population': FieldInfo(annotation=Union[int, NoneType], required=False, alias='targetPopulation', alias_priority=1), 'target_tech_level': FieldInfo(annotation=Union[Literal[1, 2, 3, 4, 5, 6, 7, 8, 9, 10], NoneType], required=False, alias='targetTechLevel', alias_priority=1), 'tech_level': FieldInfo(annotation=Literal[1, 2, 3, 4, 5, 6, 7, 8, 9, 10], required=True, alias='techLevel', alias_priority=1), 'trade_route_max': FieldInfo(annotation=Union[int, NoneType], required=False, alias='tradeRouteMax', alias_priority=1), 'trade_routes': FieldInfo(annotation=Union[List[TradeRoute], NoneType], required=False, alias='tradeRoutes', alias_priority=1), 'traits': FieldInfo(annotation=List[Union[int, Trait, Rebellion]], required=True, alias='traits', alias_priority=1), 'world_class': FieldInfo(annotation=int, required=True, alias='worldClass', alias_priority=1)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- object_class: ObjectClass[Literal['world']]#
- pos: Location#
- region: NebulaType#
- resources: List[LargeInt] | None#
This is a list alternating between resource ID and quantity stockpiled on the world
- target_population: int | None#
If the population is going to change, the value of this field is what the planet is heading towards
Unit is millions of people
- target_tech_level: TechLevel | None#
If the world is going to change tech levels soon, the value of this field is the target tech level
- tech_level: TechLevel#
- trade_routes: List[TradeRoute] | None#
- class anacreonlib.types.response_datatypes.Rebellion(*, popularSupport: float, rebelForces: float, rebellionStart: int, traitID: int)#
Bases:
DeserializableDataclass
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'ignored_types': (<class 'functools.cached_property'>, <class 'set'>)}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'popular_support': FieldInfo(annotation=float, required=True, alias='popularSupport', alias_priority=1), 'rebel_forces': FieldInfo(annotation=float, required=True, alias='rebelForces', alias_priority=1), 'rebellion_start': FieldInfo(annotation=int, required=True, alias='rebellionStart', alias_priority=1), 'trait_id': FieldInfo(annotation=int, required=True, alias='traitID', alias_priority=1)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.response_datatypes.RegionObject(*, object_class: Literal['region'], id: int, shape: List[RegionShape], type: int)#
Bases:
AnacreonObjectWithId
Typically used to encode the location of nebulas, rift zones, and clear space
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'ignored_types': (<class 'functools.cached_property'>, <class 'set'>)}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'id': FieldInfo(annotation=int, required=True, alias='id', alias_priority=1), 'object_class': FieldInfo(annotation=Literal['region'], required=True, alias='class', alias_priority=2), 'shape': FieldInfo(annotation=List[RegionShape], required=True, alias='shape', alias_priority=1), 'type': FieldInfo(annotation=int, required=True, alias='type', alias_priority=1)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- shape: List[RegionShape]#
- class anacreonlib.types.response_datatypes.RegionShape(*, holes: List[List[float]] | None = None, outline: List[float])#
Bases:
DeserializableDataclass
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'ignored_types': (<class 'functools.cached_property'>, <class 'set'>)}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'holes': FieldInfo(annotation=Union[List[List[float]], NoneType], required=False, alias='holes', alias_priority=1), 'outline': FieldInfo(annotation=List[float], required=True, alias='outline', alias_priority=1)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.response_datatypes.ReigningSovereign(*, object_class: Literal['sovereign'], id: int, imperialMight: int, name: str, relationship: SovereignRelationship | None = None, doctrine: int | None = None, traits: List[MesophonTrait] | None = None, capitalID: int, stats: SovereignStats, foundedOn: int | None = None, territory: List[Tuple[float, float, float] | Tuple[float, float, float, float, float]] | None = None)#
Bases:
Sovereign
Some Sovereigns are abdicated. This class is only for sovereigns currently playing the game.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'ignored_types': (<class 'functools.cached_property'>, <class 'set'>)}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'capital_id': FieldInfo(annotation=int, required=True, alias='capitalID', alias_priority=1), 'doctrine': FieldInfo(annotation=Union[int, NoneType], required=False, alias='doctrine', alias_priority=1), 'founded_on': FieldInfo(annotation=Union[int, NoneType], required=False, alias='foundedOn', alias_priority=1), 'id': FieldInfo(annotation=int, required=True, alias='id', alias_priority=1), 'imperial_might': FieldInfo(annotation=int, required=True, alias='imperialMight', alias_priority=1), 'name': FieldInfo(annotation=str, required=True, alias='name', alias_priority=1), 'object_class': FieldInfo(annotation=Literal['sovereign'], required=True, alias='class', alias_priority=2), 'relationship': FieldInfo(annotation=Union[SovereignRelationship, NoneType], required=False, alias='relationship', alias_priority=1), 'stats': FieldInfo(annotation=SovereignStats, required=True, alias='stats', alias_priority=1), 'territory': FieldInfo(annotation=Union[List[Union[Tuple[float, float, float], Tuple[float, float, float, float, float]]], NoneType], required=False, alias='territory', alias_priority=1), 'traits': FieldInfo(annotation=Union[List[MesophonTrait], NoneType], required=False, alias='traits', alias_priority=1)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- object_class: ObjectClass[Literal['sovereign']]#
- relationship: SovereignRelationship | None#
- stats: SovereignStats#
- traits: List[MesophonTrait] | None#
- class anacreonlib.types.response_datatypes.Relationship(*, object_class: Literal['relationship'], id: int, relationship: SovereignRelationship)#
Bases:
AnacreonObjectWithId
Partial update for sovereigns
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'ignored_types': (<class 'functools.cached_property'>, <class 'set'>)}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'id': FieldInfo(annotation=int, required=True, alias='id', alias_priority=1), 'object_class': FieldInfo(annotation=Literal['relationship'], required=True, alias='class', alias_priority=2), 'relationship': FieldInfo(annotation=SovereignRelationship, required=True, alias='relationship', alias_priority=1)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- relationship: SovereignRelationship#
- class anacreonlib.types.response_datatypes.RevIndex(value)#
-
Enum of social orders a world can have
- AGGRIEVED = 'aggrieved'#
- CIVIL_WAR = 'civil war'#
- CONTENT = 'content'#
- DISSATISFIED = 'dissatisfied'#
- HAPPY = 'happy'#
- REBELLING = 'rebelling'#
- RIOTING = 'rioting'#
- class anacreonlib.types.response_datatypes.Selection(*, object_class: Literal['selection'], id: int)#
Bases:
AnacreonObjectWithId
The API returns this object if it wants the UI to select something as a result of the API request
For example, when you deploy a fleet, the API returns one of these objects in order to signal that the new fleet should be selected.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'ignored_types': (<class 'functools.cached_property'>, <class 'set'>)}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'id': FieldInfo(annotation=int, required=True, alias='id', alias_priority=1), 'object_class': FieldInfo(annotation=Literal['selection'], required=True, alias='class', alias_priority=2)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.response_datatypes.Siege(*, object_class: Literal['siege'], id: int, anchorObjID: int, attackForces: float, defenseForces: float, name: str, news: List[News] | None = None, pos: Tuple[float, float], resources: List[float] | None = None, sovereignID: int, status: SiegeStatus | None = None, timeleft: int | None = None)#
Bases:
AnacreonObjectWithId
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'ignored_types': (<class 'functools.cached_property'>, <class 'set'>)}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'anchor_obj_id': FieldInfo(annotation=int, required=True, alias='anchorObjID', alias_priority=1), 'attack_forces': FieldInfo(annotation=float, required=True, alias='attackForces', alias_priority=1), 'defense_forces': FieldInfo(annotation=float, required=True, alias='defenseForces', alias_priority=1), 'id': FieldInfo(annotation=int, required=True, alias='id', alias_priority=1), 'name': FieldInfo(annotation=str, required=True, alias='name', alias_priority=1), 'news': FieldInfo(annotation=Union[List[News], NoneType], required=False, alias='news', alias_priority=1), 'object_class': FieldInfo(annotation=Literal['siege'], required=True, alias='class', alias_priority=2), 'pos': FieldInfo(annotation=Tuple[float, float], required=True, alias='pos', alias_priority=1), 'resources': FieldInfo(annotation=Union[List[float], NoneType], required=False, alias='resources', alias_priority=1), 'sovereign_id': FieldInfo(annotation=int, required=True, alias='sovereignID', alias_priority=1), 'status': FieldInfo(annotation=Union[SiegeStatus, NoneType], required=False, alias='status', alias_priority=1), 'timeLeft': FieldInfo(annotation=Union[int, NoneType], required=False, alias='timeleft', alias_priority=1)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- status: SiegeStatus | None#
- class anacreonlib.types.response_datatypes.Sovereign(*, object_class: Literal['sovereign'], id: int, imperialMight: int, name: str, relationship: SovereignRelationship | None = None, doctrine: int | None = None, traits: List[MesophonTrait] | None = None)#
Bases:
AnacreonObjectWithId
Any sovereign that has ever played in the current game
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'ignored_types': (<class 'functools.cached_property'>, <class 'set'>)}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'doctrine': FieldInfo(annotation=Union[int, NoneType], required=False, alias='doctrine', alias_priority=1), 'id': FieldInfo(annotation=int, required=True, alias='id', alias_priority=1), 'imperial_might': FieldInfo(annotation=int, required=True, alias='imperialMight', alias_priority=1), 'name': FieldInfo(annotation=str, required=True, alias='name', alias_priority=1), 'object_class': FieldInfo(annotation=Literal['sovereign'], required=True, alias='class', alias_priority=2), 'relationship': FieldInfo(annotation=Union[SovereignRelationship, NoneType], required=False, alias='relationship', alias_priority=1), 'traits': FieldInfo(annotation=Union[List[MesophonTrait], NoneType], required=False, alias='traits', alias_priority=1)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- relationship: SovereignRelationship | None#
- traits: List[MesophonTrait] | None#
- class anacreonlib.types.response_datatypes.SovereignActions(*, attacksInitiated: int, offensivesInitiated: int, worldsConquered: int)#
Bases:
DeserializableDataclass
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'ignored_types': (<class 'functools.cached_property'>, <class 'set'>)}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'attacks_initiated': FieldInfo(annotation=int, required=True, alias='attacksInitiated', alias_priority=1), 'offensives_initiated': FieldInfo(annotation=int, required=True, alias='offensivesInitiated', alias_priority=1), 'worlds_conquered': FieldInfo(annotation=int, required=True, alias='worldsConquered', alias_priority=1)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.response_datatypes.SovereignRelationship(*, firstContact: int, ourActions: SovereignActions, theirActions: SovereignActions)#
Bases:
DeserializableDataclass
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'ignored_types': (<class 'functools.cached_property'>, <class 'set'>)}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'first_contact': FieldInfo(annotation=int, required=True, alias='firstContact', alias_priority=1), 'our_actions': FieldInfo(annotation=SovereignActions, required=True, alias='ourActions', alias_priority=1), 'their_actions': FieldInfo(annotation=SovereignActions, required=True, alias='theirActions', alias_priority=1)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- our_actions: SovereignActions#
- their_actions: SovereignActions#
- class anacreonlib.types.response_datatypes.SovereignStats(*, fleets: int, population: int, resources: List[int] | None = None, techLevel: Literal[1, 2, 3, 4, 5, 6, 7, 8, 9, 10], worlds: int)#
Bases:
DeserializableDataclass
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'ignored_types': (<class 'functools.cached_property'>, <class 'set'>)}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'fleets': FieldInfo(annotation=int, required=True, alias='fleets', alias_priority=1, metadata=[PlainSerializer(func=<function _convert_int_to_aeon_ipinteger>, return_type=PydanticUndefined, when_used='json-unless-none'), BeforeValidator(func=<function _convert_aeon_ipinteger_to_int>)]), 'population': FieldInfo(annotation=int, required=True, alias='population', alias_priority=1), 'resources': FieldInfo(annotation=Union[List[Annotated[int, PlainSerializer, BeforeValidator]], NoneType], required=False, alias='resources', alias_priority=1), 'tech_level': FieldInfo(annotation=Literal[1, 2, 3, 4, 5, 6, 7, 8, 9, 10], required=True, alias='techLevel', alias_priority=1), 'worlds': FieldInfo(annotation=int, required=True, alias='worlds', alias_priority=1)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.response_datatypes.TradeRoute(*, imports: List[float | None] | None = None, exports: List[float | None] | None = None, importTech: Tuple[int, int] | Tuple[int, int, Any] | None = None, exportTech: Tuple[int, int] | Tuple[int, int, Any] | None = None, partnerObjID: int, reciprocal: bool | None = None)#
Bases:
DeserializableDataclass
- Variables:
import_tech – tuple of the desired tech level to acheive, and how many levels uplifted the planet actually is
reciprocal – if true, the data for this trade route is attached to the partner object.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- import_tech: Tuple[int, int] | Tuple[int, int, Any] | None#
Third tuple element is usually not present. If present, it indicates why the world cannot be uplifted to the desired tech level.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'ignored_types': (<class 'functools.cached_property'>, <class 'set'>)}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'export_tech': FieldInfo(annotation=Union[Tuple[int, int], Tuple[int, int, Any], NoneType], required=False, alias='exportTech', alias_priority=1), 'exports': FieldInfo(annotation=Union[List[Union[float, NoneType]], NoneType], required=False, alias='exports', alias_priority=1), 'import_tech': FieldInfo(annotation=Union[Tuple[int, int], Tuple[int, int, Any], NoneType], required=False, alias='importTech', alias_priority=1), 'imports': FieldInfo(annotation=Union[List[Union[float, NoneType]], NoneType], required=False, alias='imports', alias_priority=1), 'partner_obj_id': FieldInfo(annotation=int, required=True, alias='partnerObjID', alias_priority=1), 'reciprocal': FieldInfo(annotation=Union[bool, NoneType], required=False, alias='return', alias_priority=2)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.response_datatypes.Trait(*, allocation: float, buildData: List[float | None | List[Any]], isPrimary: bool | None = None, productionData: List[float | None] | None = None, isFixed: bool | None = None, targetAllocation: float, traitID: int, buildComplete: int | None = None, workUnits: float)#
Bases:
DeserializableDataclass
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- is_primary: bool | None#
True`
if this structure is the primary industry on the world (i.e it belongs to the designation)
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'ignored_types': (<class 'functools.cached_property'>, <class 'set'>)}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'allocation': FieldInfo(annotation=float, required=True, alias='allocation', alias_priority=1), 'build_complete': FieldInfo(annotation=Union[int, NoneType], required=False, alias='buildComplete', alias_priority=1), 'build_data': FieldInfo(annotation=List[Union[float, NoneType, List[Any]]], required=True, alias='buildData', alias_priority=1), 'is_fixed': FieldInfo(annotation=Union[bool, NoneType], required=False, alias='isFixed', alias_priority=1), 'is_primary': FieldInfo(annotation=Union[bool, NoneType], required=False, alias='isPrimary', alias_priority=1), 'production_data': FieldInfo(annotation=Union[List[Union[float, NoneType]], NoneType], required=False, alias='productionData', alias_priority=1), 'target_allocation': FieldInfo(annotation=float, required=True, alias='targetAllocation', alias_priority=1), 'trait_id': FieldInfo(annotation=int, required=True, alias='traitID', alias_priority=1), 'work_units': FieldInfo(annotation=float, required=True, alias='workUnits', alias_priority=1)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.response_datatypes.UpdateObject(*, object_class: Literal['update'], nextUpdateTime: int, sequence: int, update: float, year0: int)#
Bases:
AnacreonObject
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'ignored_types': (<class 'functools.cached_property'>, <class 'set'>)}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'next_update_time': FieldInfo(annotation=int, required=True, alias='nextUpdateTime', alias_priority=1), 'object_class': FieldInfo(annotation=Literal['update'], required=True, alias='class', alias_priority=2), 'sequence': FieldInfo(annotation=int, required=True, alias='sequence', alias_priority=1, metadata=[PlainSerializer(func=<function _convert_int_to_aeon_ipinteger>, return_type=PydanticUndefined, when_used='json-unless-none'), BeforeValidator(func=<function _convert_aeon_ipinteger_to_int>)]), 'update': FieldInfo(annotation=float, required=True, alias='update', alias_priority=1), 'year0': FieldInfo(annotation=int, required=True, alias='year0', alias_priority=1)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class anacreonlib.types.response_datatypes.World(*, object_class: Literal['world'], id: int, culture: int, designation: int, efficiency: float, name: str, nearObjIDs: List[int] | None = None, orbit: List[float], population: int, pos: Tuple[float, float], resources: List[int] | None = None, sovereignID: int, techLevel: Literal[1, 2, 3, 4, 5, 6, 7, 8, 9, 10], traits: List[int | Trait | Rebellion], worldClass: int, tradeRoutes: List[TradeRoute] | None = None, revIndex: RevIndex | None = None, battlePlan: BattlePlanDetails | None = None, targetTechLevel: Literal[1, 2, 3, 4, 5, 6, 7, 8, 9, 10] | None = None, targetPopulation: int | None = None, region: NebulaType = NebulaType.CLEAR_SPACE)#
Bases:
AnacreonObjectWithId
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- battle_plan: BattlePlanDetails | None#
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'ignored_types': (<class 'functools.cached_property'>, <class 'set'>)}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'battle_plan': FieldInfo(annotation=Union[BattlePlanDetails, NoneType], required=False, alias='battlePlan', alias_priority=1), 'culture': FieldInfo(annotation=int, required=True, alias='culture', alias_priority=1), 'designation': FieldInfo(annotation=int, required=True, alias='designation', alias_priority=1), 'efficiency': FieldInfo(annotation=float, required=True, alias='efficiency', alias_priority=1, metadata=[Ge(ge=0), Le(le=100)]), 'id': FieldInfo(annotation=int, required=True, alias='id', alias_priority=1), 'name': FieldInfo(annotation=str, required=True, alias='name', alias_priority=1), 'near_obj_ids': FieldInfo(annotation=Union[List[int], NoneType], required=False, alias='nearObjIDs', alias_priority=2), 'object_class': FieldInfo(annotation=Literal['world'], required=True, alias='class', alias_priority=2), 'orbit': FieldInfo(annotation=List[float], required=True, alias='orbit', alias_priority=1), 'population': FieldInfo(annotation=int, required=True, alias='population', alias_priority=1), 'pos': FieldInfo(annotation=Tuple[float, float], required=True, alias='pos', alias_priority=1), 'region': FieldInfo(annotation=NebulaType, required=False, default=<NebulaType.CLEAR_SPACE: 1>, alias='region', alias_priority=1), 'resources': FieldInfo(annotation=Union[List[Annotated[int, PlainSerializer, BeforeValidator]], NoneType], required=False, alias='resources', alias_priority=1), 'rev_index': FieldInfo(annotation=Union[RevIndex, NoneType], required=False, alias='revIndex', alias_priority=1), 'sovereign_id': FieldInfo(annotation=int, required=True, alias='sovereignID', alias_priority=1), 'target_population': FieldInfo(annotation=Union[int, NoneType], required=False, alias='targetPopulation', alias_priority=1), 'target_tech_level': FieldInfo(annotation=Union[Literal[1, 2, 3, 4, 5, 6, 7, 8, 9, 10], NoneType], required=False, alias='targetTechLevel', alias_priority=1), 'tech_level': FieldInfo(annotation=Literal[1, 2, 3, 4, 5, 6, 7, 8, 9, 10], required=True, alias='techLevel', alias_priority=1), 'trade_routes': FieldInfo(annotation=Union[List[TradeRoute], NoneType], required=False, alias='tradeRoutes', alias_priority=1), 'traits': FieldInfo(annotation=List[Union[int, Trait, Rebellion]], required=True, alias='traits', alias_priority=1), 'world_class': FieldInfo(annotation=int, required=True, alias='worldClass', alias_priority=1)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- region: NebulaType#
- property resource_dict: Dict[int, float]#
A dict mapping from resource ID to resource qty on the world
- resources: List[int] | None#
This is a list alternating between resource ID and quantity stockpiled on the world
- property squashed_trait_dict: Dict[int, int | Trait]#
Return a dict mapping from trait ID to either trait ID or trait object
- target_population: int | None#
If the population is going to change, the value of this field is what the planet is heading towards
Unit is millions of people
- target_tech_level: Literal[1, 2, 3, 4, 5, 6, 7, 8, 9, 10] | None#
If the world is going to change tech levels soon, the value of this field is the target tech level
- property trade_route_partners: Dict[int, TradeRoute] | None#
Returns a set of all of the trade route partners of this world
- trade_routes: List[TradeRoute] | None#
anacreonlib.types.scenario_info_datatypes module#
- class anacreonlib.types.scenario_info_datatypes.Category(value)#
-
An enumeration.
- BUREAU_OF_TRADE = 'bureauOfTrade'#
- COMMODITY = 'commodity'#
- CULTURE = 'culture'#
- DESIGNATION = 'designation'#
- DOCTRINE = 'doctrine'#
- FEATURE = 'feature'#
- FIXED_UNIT = 'fixedUnit'#
- GROUND_UNIT = 'groundUnit'#
- IMPROVEMENT = 'improvement'#
- INDUSTRY = 'industry'#
- LAM_UNIT = 'LAMUnit'#
- MANEUVERING_UNIT = 'maneuveringUnit'#
- ORBITAL_UNIT = 'orbitalUnit'#
- REBELLION = 'rebellion'#
- WORLD_CLASS = 'worldClass'#
- class anacreonlib.types.scenario_info_datatypes.Role(value)#
-
An enumeration.
- ACADEMY = 'academy'#
- ACADEMY_INDUSTRY = 'academyIndustry'#
- ADMINISTRATION = 'administration'#
- CITADEL = 'citadel'#
- CITADEL_INDUSTRY = 'citadelIndustry'#
- COMPONENT_INDUSTRY = 'componentIndustry'#
- CONSUMER_GOODS_INDUSTRY = 'consumerGoodsIndustry'#
- ENERGY_INDUSTRY = 'energyIndustry'#
- FOUNDATION = 'foundation'#
- GROUND_DEFENSE_INDUSTRY = 'groundDefenseIndustry'#
- IMPERIAL_CAPITAL = 'imperialCapital'#
- LIFE_SUPPORT = 'lifeSupport'#
- ORBITAL_DEFENSE_INDUSTRY = 'orbitalDefenseIndustry'#
- RAW_MATERIAL_INDUSTRY = 'rawMaterialIndustry'#
- SECTOR_CAPITAL = 'sectorCapital'#
- SHIPYARD = 'shipyard'#
- SHIPYARD_INDUSTRY = 'shipyardIndustry'#
- SPACEPORT = 'spaceport'#
- TECH_ADVANCE = 'techAdvance'#
- TRADING_HUB = 'tradingHub'#
- UNIVERSITY = 'university'#
- class anacreonlib.types.scenario_info_datatypes.ScenarioInfo(*, scenarioInfo: List[ScenarioInfoElement], sovereigns: List[ReigningSovereign | Sovereign], userInfo: UserInfo)#
Bases:
DeserializableDataclass
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- find_by_unid(unid: str) ScenarioInfoElement #
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'ignored_types': (<class 'functools.cached_property'>, <class 'set'>)}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'scenario_info': FieldInfo(annotation=List[ScenarioInfoElement], required=True, alias='scenarioInfo', alias_priority=1), 'sovereigns': FieldInfo(annotation=List[Union[ReigningSovereign, Sovereign]], required=True, alias='sovereigns', alias_priority=1), 'user_info': FieldInfo(annotation=UserInfo, required=True, alias='userInfo', alias_priority=1)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- scenario_info: List[ScenarioInfoElement]#
- sovereigns: List[ReigningSovereign | Sovereign]#
- class anacreonlib.types.scenario_info_datatypes.ScenarioInfoClass(value)#
-
An enumeration.
- CURRENCY_TYPE = 'currencyType'#
- IMAGE = 'image'#
- REGION_TYPE = 'regionType'#
- RESOURCE_TYPE = 'resourceType'#
- SCENARIO = 'scenario'#
- SOVEREIGN_TYPE = 'sovereignType'#
- TRAIT = 'trait'#
- class anacreonlib.types.scenario_info_datatypes.ScenarioInfoElement(*, isCargo: bool | None = None, playerAlloc: bool | None = None, playerProductAlloc: bool | None = None, imageLabel: int | None = None, hidden: bool | None = None, designationOnly: bool | None = None, npeOnly: bool | None = None, isJumpBeacon: bool | None = None, canLand: bool | None = None, category: Category | None = None, scenarioInfoClass: ScenarioInfoClass | None = None, id: int | None = None, imageLarge: List[int] | None = None, imageSmall: List[int] | None = None, mass: float | None = None, nameDesc: str | None = None, unid: str | None = None, attackValue: int | None = None, shortName: str | None = None, stats: List[int | str] | None = None, buildTime: int | None = None, description: str | None = None, imageMedium: List[int] | None = None, minTechLevel: int | None = None, role: Role | None = None, buildUpgrade: List[int] | None = None, inheritFrom: List[int] | None = None, exports: List[int] | None = None, maxTechLevel: int | None = None, primaryIndustry: int | None = None, requirements: List[int] | None = None, buildExclusions: List[int] | None = None, techLevelAdvance: int | None = None, backgroundColor: List[int] | None = None, backgroundImage: List[int] | None = None, backgroundImageLowDetail: List[int] | None = None, backgroundImageTactical: List[int] | None = None, exclusions: List[int] | None = None, ftl: int | None = None, capitalIndustry: int | None = None, capitalType: int | None = None, buildRequirements: List[int] | None = None, cargoSpace: int | None = None, mapFeatureSize: int | None = None, mapSize: List[int] | None = None, name: str | None = None)#
Bases:
DeserializableDataclass
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'ignored_types': (<class 'functools.cached_property'>, <class 'set'>)}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'attack_value': FieldInfo(annotation=Union[int, NoneType], required=False, alias='attackValue', alias_priority=1), 'background_color': FieldInfo(annotation=Union[List[int], NoneType], required=False, alias='backgroundColor', alias_priority=1), 'background_image': FieldInfo(annotation=Union[List[int], NoneType], required=False, alias='backgroundImage', alias_priority=1), 'background_image_low_detail': FieldInfo(annotation=Union[List[int], NoneType], required=False, alias='backgroundImageLowDetail', alias_priority=1), 'background_image_tactical': FieldInfo(annotation=Union[List[int], NoneType], required=False, alias='backgroundImageTactical', alias_priority=1), 'build_exclusions': FieldInfo(annotation=Union[List[int], NoneType], required=False, alias='buildExclusions', alias_priority=1), 'build_requirements': FieldInfo(annotation=Union[List[int], NoneType], required=False, alias='buildRequirements', alias_priority=1), 'build_time': FieldInfo(annotation=Union[int, NoneType], required=False, alias='buildTime', alias_priority=1), 'build_upgrade': FieldInfo(annotation=Union[List[int], NoneType], required=False, alias='buildUpgrade', alias_priority=1), 'can_land': FieldInfo(annotation=Union[bool, NoneType], required=False, alias='canLand', alias_priority=1), 'capital_industry': FieldInfo(annotation=Union[int, NoneType], required=False, alias='capitalIndustry', alias_priority=1), 'capital_type': FieldInfo(annotation=Union[int, NoneType], required=False, alias='capitalType', alias_priority=1), 'cargo_space': FieldInfo(annotation=Union[int, NoneType], required=False, alias='cargoSpace', alias_priority=1), 'category': FieldInfo(annotation=Union[Category, NoneType], required=False, alias='category', alias_priority=1), 'description': FieldInfo(annotation=Union[str, NoneType], required=False, alias='description', alias_priority=1), 'designation_only': FieldInfo(annotation=Union[bool, NoneType], required=False, alias='designationOnly', alias_priority=1), 'exclusions': FieldInfo(annotation=Union[List[int], NoneType], required=False, alias='exclusions', alias_priority=1), 'exports': FieldInfo(annotation=Union[List[int], NoneType], required=False, alias='exports', alias_priority=1), 'ftl': FieldInfo(annotation=Union[int, NoneType], required=False, alias='ftl', alias_priority=1), 'hidden': FieldInfo(annotation=Union[bool, NoneType], required=False, alias='hidden', alias_priority=1), 'id': FieldInfo(annotation=Union[int, NoneType], required=False, alias='id', alias_priority=1), 'image_label': FieldInfo(annotation=Union[int, NoneType], required=False, alias='imageLabel', alias_priority=1), 'image_large': FieldInfo(annotation=Union[List[int], NoneType], required=False, alias='imageLarge', alias_priority=1), 'image_medium': FieldInfo(annotation=Union[List[int], NoneType], required=False, alias='imageMedium', alias_priority=1), 'image_small': FieldInfo(annotation=Union[List[int], NoneType], required=False, alias='imageSmall', alias_priority=1), 'inherit_from': FieldInfo(annotation=Union[List[int], NoneType], required=False, alias='inheritFrom', alias_priority=1), 'is_cargo': FieldInfo(annotation=Union[bool, NoneType], required=False, alias='isCargo', alias_priority=1), 'is_jump_beacon': FieldInfo(annotation=Union[bool, NoneType], required=False, alias='isJumpBeacon', alias_priority=1), 'map_feature_size': FieldInfo(annotation=Union[int, NoneType], required=False, alias='mapFeatureSize', alias_priority=1), 'map_size': FieldInfo(annotation=Union[List[int], NoneType], required=False, alias='mapSize', alias_priority=1), 'mass': FieldInfo(annotation=Union[float, NoneType], required=False, alias='mass', alias_priority=1), 'max_tech_level': FieldInfo(annotation=Union[int, NoneType], required=False, alias='maxTechLevel', alias_priority=1), 'min_tech_level': FieldInfo(annotation=Union[int, NoneType], required=False, alias='minTechLevel', alias_priority=1), 'name': FieldInfo(annotation=Union[str, NoneType], required=False, alias='name', alias_priority=1), 'name_desc': FieldInfo(annotation=Union[str, NoneType], required=False, alias='nameDesc', alias_priority=1), 'npe_only': FieldInfo(annotation=Union[bool, NoneType], required=False, alias='npeOnly', alias_priority=1), 'player_alloc': FieldInfo(annotation=Union[bool, NoneType], required=False, alias='playerAlloc', alias_priority=1), 'player_product_alloc': FieldInfo(annotation=Union[bool, NoneType], required=False, alias='playerProductAlloc', alias_priority=1), 'primary_industry': FieldInfo(annotation=Union[int, NoneType], required=False, alias='primaryIndustry', alias_priority=1), 'requirements': FieldInfo(annotation=Union[List[int], NoneType], required=False, alias='requirements', alias_priority=1), 'role': FieldInfo(annotation=Union[Role, NoneType], required=False, alias='role', alias_priority=1), 'scenario_info_class': FieldInfo(annotation=Union[ScenarioInfoClass, NoneType], required=False, alias='scenarioInfoClass', alias_priority=1), 'short_name': FieldInfo(annotation=Union[str, NoneType], required=False, alias='shortName', alias_priority=1), 'stats': FieldInfo(annotation=Union[List[Union[int, str]], NoneType], required=False, alias='stats', alias_priority=1), 'tech_level_advance': FieldInfo(annotation=Union[int, NoneType], required=False, alias='techLevelAdvance', alias_priority=1), 'unid': FieldInfo(annotation=Union[str, NoneType], required=False, alias='unid', alias_priority=1)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- scenario_info_class: ScenarioInfoClass | None#
- class anacreonlib.types.scenario_info_datatypes.UserInfo(*, capitalObjID: int, gameID: str, mapBookmarks: List[Tuple[float, float]], sovereignID: int, uiOptions: Any = None, username: str)#
Bases:
DeserializableDataclass
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function _snake_case_to_lower_camel>, 'ignored_types': (<class 'functools.cached_property'>, <class 'set'>)}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'capital_obj_id': FieldInfo(annotation=int, required=True, alias='capitalObjID', alias_priority=1), 'game_id': FieldInfo(annotation=str, required=True, alias='gameID', alias_priority=1), 'map_bookmarks': FieldInfo(annotation=List[Tuple[float, float]], required=True, alias='mapBookmarks', alias_priority=1), 'sovereign_id': FieldInfo(annotation=int, required=True, alias='sovereignID', alias_priority=1), 'ui_options': FieldInfo(annotation=Any, required=False, alias='uiOptions', alias_priority=1), 'username': FieldInfo(annotation=str, required=True, alias='username', alias_priority=1)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
anacreonlib.types.type_hints module#
- anacreonlib.types.type_hints.Arc#
An Arc is a tuple of 5 numbers: - x pos of center - y pos of center - radius, in light years - starting angle in radians - ending angle in radians
- class anacreonlib.types.type_hints.BattleObjective(value)#
-
An enumeration.
- INVASION = 'invasion'#
- REINFORCE_SIEGE = 'reinforceSiege'#
- SPACE_SUPREMACY = 'spaceSupremacy'#
- anacreonlib.types.type_hints.Circle#
A Circle is a tuple of 3 numbers: - x pos of center - y pos of center - radius, in lightyears
- anacreonlib.types.type_hints.Location#
A location is a tuple of 2 numbers - x pos - y pos