Table of Contents

Namespace FishMMO.Database.Npgsql.Entities

Classes

AccountEntity

Database entity representing a player account.

AccountEntityConfiguration

Entity configuration for AccountEntity with explicit indexes and constraints.

AuthTokenEntity

Tracks an issued authentication token for revocation and audit. The LoginServer issues tokens after successful SRP authentication. WorldServers and SceneServers validate tokens cryptographically and check this table for revocation.

AuthTokenEntityConfiguration

Entity configuration for AuthTokenEntity with explicit indexes and constraints.

CharacterAbilityEntity

Entity representing a character's ability data in the database.

CharacterAbilityEntityConfiguration

Entity configuration for CharacterAbilityEntity with explicit indexes and constraints.

CharacterAchievementEntity

Entity representing a character's achievement data in the database.

CharacterAchievementEntityConfiguration

Entity configuration for CharacterAchievementEntity with explicit indexes and constraints.

CharacterArchetypeEntity

Database entity representing a character archetype assignment.

CharacterArchetypeEntityConfiguration

Entity configuration for CharacterArchetypeEntity with explicit indexes and constraints.

CharacterAttributeEntity

Entity representing a character's attribute data in the database.

CharacterAttributeEntityConfiguration

Entity configuration for CharacterAttributeEntity with explicit indexes and constraints.

CharacterBuffEntity

Entity representing a character's buff data in the database.

CharacterBuffEntityConfiguration

Entity configuration for CharacterBuffEntity with explicit indexes and constraints.

CharacterDialogueChoiceEntity

Database entity holding one character's "already chosen" bitmask for one dialogue template.

CharacterDialogueChoiceEntityConfiguration

Entity configuration for CharacterDialogueChoiceEntity with explicit indexes and constraints.

CharacterEntity

Database entity representing a player character.

CharacterEntityConfiguration

Entity configuration for CharacterEntity.

CharacterFactionEntity

Entity representing a character's faction reputation data in the database.

CharacterFactionEntityConfiguration

Entity configuration for CharacterFactionEntity with explicit indexes and constraints.

CharacterFriendEntity

Database entity representing a character friend/block relationship.

CharacterFriendEntityConfiguration

Entity configuration for CharacterFriendEntity with explicit indexes and constraints.

CharacterGuildEntity

Entity representing a character's guild membership data in the database.

CharacterGuildEntityConfiguration

Entity configuration for CharacterGuildEntity with explicit indexes and constraints.

CharacterHotkeyEntity

Entity representing a character's hotkey bar binding data in the database.

CharacterHotkeyEntityConfiguration

Entity configuration for CharacterHotkeyEntity with explicit indexes and constraints.

CharacterItemCooldownEntity

Entity representing a character's item cooldown data in the database.

CharacterItemCooldownEntityConfiguration

Entity configuration for CharacterItemCooldownEntity with explicit indexes and constraints.

CharacterItemEntity

One item owned by a character, in whichever container currently holds it.

CharacterItemEntityConfiguration

Entity configuration for CharacterItemEntity.

CharacterKnownAbilityEntity

Entity representing a character's known (learned) ability data in the database.

CharacterKnownAbilityEntityConfiguration

Entity configuration for CharacterKnownAbilityEntity with explicit indexes and constraints.

CharacterMailEntity

Entity representing a character's mail message data in the database.

CharacterMailEntityConfiguration

Entity configuration for CharacterMailEntity with explicit indexes and constraints.

CharacterPartyEntity

Entity representing a character's party membership data in the database.

CharacterPartyEntityConfiguration

Entity configuration for CharacterPartyEntity with explicit indexes and constraints.

CharacterPetAttributeEntity

Entity representing a pet's attribute data in the database.

CharacterPetAttributeEntityConfiguration

Entity configuration for CharacterPetAttributeEntity with explicit indexes and constraints.

CharacterPetBuffEntity

Entity representing a pet's buff data in the database.

CharacterPetBuffEntityConfiguration

Entity configuration for CharacterPetBuffEntity with explicit indexes and constraints.

CharacterPetEntity

Entity representing a character's pet data in the database.

CharacterPetEntityConfiguration

Entity configuration for CharacterPetEntity with explicit indexes and constraints.

CharacterQuestEntity

Entity representing a character's quest data in the database.

CharacterQuestEntityConfiguration

Entity configuration for CharacterQuestEntity with explicit indexes and constraints.

CharacterSkillEntity

Entity representing a character's skill data in the database.

CharacterSkillEntityConfiguration

Entity configuration for CharacterSkillEntity with explicit indexes and constraints.

ChatEntity

Chat message entity representing a persisted chat message from any channel.

ChatEntityConfiguration

Entity configuration for ChatEntity with explicit indexes and constraints.

ConnectionTokenKeyEntity

Stores HMAC verification keys for connection tokens, indexed by a logical key ID. LoginServers read these keys at startup and periodically poll for new keys from new regions. Each key is stored as a base64-encoded HMAC key and can be deactivated gracefully (in-flight tokens remain verifiable until DeactivatedAt).

ConnectionTokenKeyEntityConfiguration

Entity configuration for ConnectionTokenKeyEntity with explicit indexes and constraints.

CurrencyLedgerEntity

One completed currency movement.

CurrencyLedgerEntityConfiguration
DeploymentSecretEntity

Stores deployment-global secrets that are loaded by servers at startup, eliminating the need for env files to distribute secrets across machines. Each row is a key-value pair with creation and update timestamps.

DeploymentSecretEntityConfiguration

Entity configuration for DeploymentSecretEntity. Maps to the "deployment_secrets" table with a text PK on "key".

EmailQueueEntity

Outbound email queue. Emails are inserted by the application layer and picked up by a background processor that delivers them via SMTP. Failed deliveries are retried up to a configurable maximum.

EmailQueueEntityConfiguration

Entity configuration for EmailQueueEntity.

GuildApplicationEntity

Database entity for one pending application to join a guild.

GuildApplicationEntityConfiguration

Entity configuration for GuildApplicationEntity with explicit indexes and constraints.

GuildEntity

Database entity representing a guild.

GuildEntityConfiguration

Entity configuration for GuildEntity with explicit indexes and constraints.

GuildLogEntity

Database entity for one guild activity log row.

GuildLogEntityConfiguration

Entity configuration for GuildLogEntity with explicit indexes and constraints.

GuildRankEntity

Database entity for one editable guild rank.

GuildRankEntityConfiguration

Entity configuration for GuildRankEntity with explicit indexes and constraints.

GuildUpdateEntity

Tracks the last update timestamp per guild for staleness detection and polling purposes.

GuildUpdateEntityConfiguration

Entity configuration for GuildUpdateEntity with explicit indexes and constraints.

KickRequestEntity

Kick request entity representing a request to forcibly disconnect an account from the server.

KickRequestEntityConfiguration

Entity configuration for KickRequestEntity with explicit indexes and constraints.

LoginServerEntity

Login server registration entity representing an active login server instance.

LoginServerEntityConfiguration

Entity configuration for LoginServerEntity with explicit indexes and constraints.

LoginServerSigningKeyEntity

Stores the HMAC-SHA256 signing key for a specific LoginServer instance. WorldServers and SceneServers look up this key by LoginServerId to validate auth tokens.

LoginServerSigningKeyEntityConfiguration

Entity configuration for LoginServerSigningKeyEntity with explicit indexes and constraints.

PartyEntity

Party entity representing a player party group and its member associations.

PartyEntityConfiguration

Entity configuration for PartyEntity with explicit indexes and constraints.

PartyUpdateEntity

Tracks the last update timestamp per party for staleness detection and polling purposes.

PartyUpdateEntityConfiguration

Entity configuration for PartyUpdateEntity with explicit indexes and constraints.

QuestEntity

Persistence entity for quest instances. Quest content (name, description, objectives, rewards) is defined externally via template/ScriptableObject assets referenced by ID. This table tracks only the fact that a quest instance exists and when it was created; runtime progress is tracked separately in character-specific tables.

QuestEntityConfiguration

Entity configuration for QuestEntity.

SceneEntity

Scene instance entity representing a currently loaded scene on a scene server.

SceneEntityConfiguration

Entity configuration for SceneEntity with explicit indexes and constraints.

SceneServerEntity

Scene server registration entity representing an active scene server instance.

SceneServerEntityConfiguration

Entity configuration for SceneServerEntity with explicit indexes and constraints.

SqlIntValue

Represents a scalar integer result returned from raw SQL queries.

SqlLongValue

Keyless entity used to map scalar bigint results from raw SQL.

TwoFactorRecoveryCodeEntity

Stores hashed two-factor recovery codes for an account. Recovery codes are one-time-use fallbacks when TOTP is unavailable. The server hashes codes before storage; this layer stores opaque hashes only.

TwoFactorRecoveryCodeEntityConfiguration

Entity configuration for TwoFactorRecoveryCodeEntity with indexes and constraints.

WorldServerEntity

World server registration entity representing an active world server instance.

WorldServerEntityConfiguration

Entity configuration for WorldServerEntity with explicit indexes and constraints.

Interfaces

IVersionedEntity