//
using System;
using MUnique.OpenMU.Persistence.EntityFramework;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Infrastructure;
using Microsoft.EntityFrameworkCore.Migrations;
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata;
#nullable disable
namespace MUnique.OpenMU.Persistence.EntityFramework.Migrations
{
[DbContext(typeof(EntityDataContext))]
[Migration("20260723073950_CascadeDeleteMiniGameRankingEntries")]
partial class CascadeDeleteMiniGameRankingEntries
{
///
protected override void BuildTargetModel(ModelBuilder modelBuilder)
{
#pragma warning disable 612, 618
modelBuilder
.HasAnnotation("ProductVersion", "10.0.2")
.HasAnnotation("Relational:MaxIdentifierLength", 63);
NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder);
modelBuilder.Entity("MUnique.OpenMU.Persistence.EntityFramework.Model.Account", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uuid");
b.Property("ChatBanUntil")
.HasColumnType("timestamp with time zone");
b.Property("EMail")
.IsRequired()
.HasColumnType("text");
b.Property("IsBot")
.HasColumnType("boolean");
b.Property("IsTemplate")
.HasColumnType("boolean");
b.Property("IsVaultExtended")
.HasColumnType("boolean");
b.Property("LanguageIsoCode")
.IsRequired()
.ValueGeneratedOnAdd()
.HasMaxLength(3)
.HasColumnType("character varying(3)")
.HasDefaultValue("en");
b.Property("LoginName")
.IsRequired()
.HasMaxLength(10)
.HasColumnType("character varying(10)");
b.Property("PasswordHash")
.IsRequired()
.HasColumnType("text");
b.Property("RegistrationDate")
.HasColumnType("timestamp with time zone");
b.Property("SecurityCode")
.IsRequired()
.HasColumnType("text");
b.Property("State")
.HasColumnType("integer");
b.Property("TimeZone")
.HasColumnType("smallint");
b.Property("VaultId")
.HasColumnType("uuid");
b.Property("VaultPassword")
.IsRequired()
.HasColumnType("text");
b.HasKey("Id");
b.HasIndex("LoginName")
.IsUnique();
b.HasIndex("VaultId")
.IsUnique();
b.ToTable("Account", "data");
});
modelBuilder.Entity("MUnique.OpenMU.Persistence.EntityFramework.Model.AccountCharacterClass", b =>
{
b.Property("AccountId")
.HasColumnType("uuid");
b.Property("CharacterClassId")
.HasColumnType("uuid");
b.HasKey("AccountId", "CharacterClassId");
b.HasIndex("CharacterClassId");
b.ToTable("AccountCharacterClass", "data");
});
modelBuilder.Entity("MUnique.OpenMU.Persistence.EntityFramework.Model.AppearanceData", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uuid");
b.Property("CharacterClassId")
.HasColumnType("uuid");
b.Property("FullAncientSetEquipped")
.HasColumnType("boolean");
b.Property("Pose")
.HasColumnType("smallint");
b.HasKey("Id");
b.HasIndex("CharacterClassId");
b.ToTable("AppearanceData", "data");
});
modelBuilder.Entity("MUnique.OpenMU.Persistence.EntityFramework.Model.AreaSkillSettings", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uuid");
b.Property("DelayBetweenHits")
.HasColumnType("interval");
b.Property("DelayPerOneDistance")
.HasColumnType("interval");
b.Property("EffectRange")
.HasColumnType("integer");
b.Property("FrustumDistance")
.HasColumnType("real");
b.Property("FrustumEndWidth")
.HasColumnType("real");
b.Property("FrustumStartWidth")
.HasColumnType("real");
b.Property("HitChancePerDistanceMultiplier")
.HasColumnType("real");
b.Property("MaximumNumberOfHitsPerAttack")
.HasColumnType("integer");
b.Property("MaximumNumberOfHitsPerTarget")
.HasColumnType("integer");
b.Property("MinimumNumberOfHitsPerAttack")
.HasColumnType("integer");
b.Property("MinimumNumberOfHitsPerTarget")
.HasColumnType("integer");
b.Property("ProjectileCount")
.HasColumnType("integer");
b.Property("TargetAreaDiameter")
.HasColumnType("real");
b.Property("UseDeferredHits")
.HasColumnType("boolean");
b.Property("UseFrustumFilter")
.HasColumnType("boolean");
b.Property("UseTargetAreaFilter")
.HasColumnType("boolean");
b.HasKey("Id");
b.ToTable("AreaSkillSettings", "config");
});
modelBuilder.Entity("MUnique.OpenMU.Persistence.EntityFramework.Model.AttributeDefinition", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uuid");
b.Property("Description")
.HasColumnType("text");
b.Property("Designation")
.HasColumnType("text");
b.Property("GameConfigurationId")
.HasColumnType("uuid");
b.Property("MaximumValue")
.HasColumnType("real");
b.HasKey("Id");
b.HasIndex("GameConfigurationId");
b.ToTable("AttributeDefinition", "config");
});
modelBuilder.Entity("MUnique.OpenMU.Persistence.EntityFramework.Model.AttributeRelationship", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uuid");
b.Property("AggregateType")
.HasColumnType("integer");
b.Property("CharacterClassId")
.HasColumnType("uuid");
b.Property("GameConfigurationId")
.HasColumnType("uuid");
b.Property("InputAttributeId")
.HasColumnType("uuid");
b.Property("InputOperand")
.HasColumnType("real");
b.Property("InputOperator")
.HasColumnType("integer");
b.Property("OperandAttributeId")
.HasColumnType("uuid");
b.Property("PowerUpDefinitionValueId")
.HasColumnType("uuid");
b.Property("SkillId")
.HasColumnType("uuid");
b.Property("TargetAttributeId")
.HasColumnType("uuid");
b.HasKey("Id");
b.HasIndex("CharacterClassId");
b.HasIndex("GameConfigurationId");
b.HasIndex("InputAttributeId");
b.HasIndex("OperandAttributeId");
b.HasIndex("PowerUpDefinitionValueId");
b.HasIndex("SkillId");
b.HasIndex("TargetAttributeId");
b.ToTable("AttributeRelationship", "config");
});
modelBuilder.Entity("MUnique.OpenMU.Persistence.EntityFramework.Model.AttributeRequirement", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uuid");
b.Property("AttributeId")
.HasColumnType("uuid");
b.Property("GameMapDefinitionId")
.HasColumnType("uuid");
b.Property("ItemDefinitionId")
.HasColumnType("uuid");
b.Property("MinimumValue")
.HasColumnType("integer");
b.Property("SkillId")
.HasColumnType("uuid");
b.Property("SkillId1")
.HasColumnType("uuid");
b.HasKey("Id");
b.HasIndex("AttributeId");
b.HasIndex("GameMapDefinitionId");
b.HasIndex("ItemDefinitionId");
b.HasIndex("SkillId");
b.HasIndex("SkillId1");
b.ToTable("AttributeRequirement", "config");
});
modelBuilder.Entity("MUnique.OpenMU.Persistence.EntityFramework.Model.BattleZoneDefinition", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uuid");
b.Property("GroundId")
.HasColumnType("uuid");
b.Property("LeftGoalId")
.HasColumnType("uuid");
b.Property("LeftTeamSpawnPointX")
.HasColumnType("smallint");
b.Property("LeftTeamSpawnPointY")
.HasColumnType("smallint");
b.Property("RightGoalId")
.HasColumnType("uuid");
b.Property("RightTeamSpawnPointX")
.HasColumnType("smallint");
b.Property("RightTeamSpawnPointY")
.HasColumnType("smallint");
b.Property("Type")
.HasColumnType("integer");
b.HasKey("Id");
b.HasIndex("GroundId")
.IsUnique();
b.HasIndex("LeftGoalId")
.IsUnique();
b.HasIndex("RightGoalId")
.IsUnique();
b.ToTable("BattleZoneDefinition", "config");
});
modelBuilder.Entity("MUnique.OpenMU.Persistence.EntityFramework.Model.Buff", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uuid");
b.Property("MagicEffectDefinitionId")
.HasColumnType("uuid");
b.Property("MaximumLevel")
.HasColumnType("integer");
b.Property("MinimumLevel")
.HasColumnType("integer");
b.Property("MonsterDefinitionId")
.HasColumnType("uuid");
b.HasKey("Id");
b.HasIndex("MagicEffectDefinitionId")
.IsUnique();
b.HasIndex("MonsterDefinitionId");
b.ToTable("Buff", "config");
});
modelBuilder.Entity("MUnique.OpenMU.Persistence.EntityFramework.Model.Character", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uuid");
b.Property("AccountId")
.HasColumnType("uuid");
b.Property("CharacterClassId")
.HasColumnType("uuid");
b.Property("CharacterSlot")
.HasColumnType("smallint");
b.Property("CharacterStatus")
.HasColumnType("integer");
b.Property("CreateDate")
.HasColumnType("timestamp with time zone");
b.Property("CurrentMapId")
.HasColumnType("uuid");
b.Property("Experience")
.HasColumnType("bigint");
b.Property("InventoryExtensions")
.HasColumnType("integer");
b.Property("InventoryId")
.HasColumnType("uuid");
b.Property("IsStoreOpened")
.HasColumnType("boolean");
b.Property("KeyConfiguration")
.HasColumnType("bytea");
b.Property("LevelUpPoints")
.HasColumnType("integer");
b.Property("MasterExperience")
.HasColumnType("bigint");
b.Property("MasterLevelUpPoints")
.HasColumnType("integer");
b.Property("MuHelperConfiguration")
.HasColumnType("bytea");
b.Property("Name")
.IsRequired()
.HasMaxLength(10)
.HasColumnType("character varying(10)");
b.Property("PlayerKillCount")
.HasColumnType("integer");
b.Property("Pose")
.HasColumnType("smallint");
b.Property("PositionX")
.HasColumnType("smallint");
b.Property("PositionY")
.HasColumnType("smallint");
b.Property("State")
.HasColumnType("integer");
b.Property("StateRemainingSeconds")
.HasColumnType("integer");
b.Property("StoreName")
.HasColumnType("text");
b.Property("UsedFruitPoints")
.HasColumnType("integer");
b.Property("UsedNegFruitPoints")
.HasColumnType("integer");
b.HasKey("Id");
b.HasIndex("AccountId");
b.HasIndex("CharacterClassId");
b.HasIndex("CurrentMapId");
b.HasIndex("InventoryId")
.IsUnique();
b.HasIndex("Name")
.IsUnique();
b.ToTable("Character", "data");
});
modelBuilder.Entity("MUnique.OpenMU.Persistence.EntityFramework.Model.CharacterClass", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uuid");
b.Property("CanGetCreated")
.HasColumnType("boolean");
b.Property("ComboDefinitionId")
.HasColumnType("uuid");
b.Property("CreationAllowedFlag")
.HasColumnType("smallint");
b.Property("FruitCalculation")
.HasColumnType("integer");
b.Property("GameConfigurationId")
.HasColumnType("uuid");
b.Property("HomeMapId")
.HasColumnType("uuid");
b.Property("IsMasterClass")
.HasColumnType("boolean");
b.Property("LevelRequirementByCreation")
.HasColumnType("smallint");
b.Property("LevelWarpRequirementReductionPercent")
.HasColumnType("integer");
b.Property("Name")
.IsRequired()
.HasColumnType("text");
b.Property("NextGenerationClassId")
.HasColumnType("uuid");
b.Property("Number")
.HasColumnType("smallint");
b.HasKey("Id");
b.HasIndex("ComboDefinitionId")
.IsUnique();
b.HasIndex("GameConfigurationId");
b.HasIndex("HomeMapId");
b.HasIndex("NextGenerationClassId");
b.ToTable("CharacterClass", "config");
});
modelBuilder.Entity("MUnique.OpenMU.Persistence.EntityFramework.Model.CharacterDropItemGroup", b =>
{
b.Property("CharacterId")
.HasColumnType("uuid");
b.Property("DropItemGroupId")
.HasColumnType("uuid");
b.HasKey("CharacterId", "DropItemGroupId");
b.HasIndex("DropItemGroupId");
b.ToTable("CharacterDropItemGroup", "data");
});
modelBuilder.Entity("MUnique.OpenMU.Persistence.EntityFramework.Model.CharacterQuestState", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uuid");
b.Property("ActiveQuestId")
.HasColumnType("uuid");
b.Property("CharacterId")
.HasColumnType("uuid");
b.Property("ClientActionPerformed")
.HasColumnType("boolean");
b.Property("Group")
.HasColumnType("smallint");
b.Property("LastFinishedQuestId")
.HasColumnType("uuid");
b.HasKey("Id");
b.HasIndex("ActiveQuestId");
b.HasIndex("CharacterId");
b.HasIndex("LastFinishedQuestId");
b.ToTable("CharacterQuestState", "data");
});
modelBuilder.Entity("MUnique.OpenMU.Persistence.EntityFramework.Model.ChatServerDefinition", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uuid");
b.Property("ClientCleanUpInterval")
.HasColumnType("interval");
b.Property("ClientTimeout")
.HasColumnType("interval");
b.Property("Description")
.IsRequired()
.HasColumnType("text");
b.Property("MaximumConnections")
.HasColumnType("integer");
b.Property("RoomCleanUpInterval")
.HasColumnType("interval");
b.Property("ServerId")
.HasColumnType("smallint");
b.HasKey("Id");
b.ToTable("ChatServerDefinition", "config");
});
modelBuilder.Entity("MUnique.OpenMU.Persistence.EntityFramework.Model.ChatServerEndpoint", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uuid");
b.Property("ChatServerDefinitionId")
.HasColumnType("uuid");
b.Property("ClientId")
.HasColumnType("uuid");
b.Property("NetworkPort")
.HasColumnType("integer");
b.HasKey("Id");
b.HasIndex("ChatServerDefinitionId");
b.HasIndex("ClientId");
b.ToTable("ChatServerEndpoint", "config");
});
modelBuilder.Entity("MUnique.OpenMU.Persistence.EntityFramework.Model.CombinationBonusRequirement", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uuid");
b.Property("ItemOptionCombinationBonusId")
.HasColumnType("uuid");
b.Property("MinimumCount")
.HasColumnType("integer");
b.Property("OptionTypeId")
.HasColumnType("uuid");
b.Property("SubOptionType")
.HasColumnType("integer");
b.HasKey("Id");
b.HasIndex("ItemOptionCombinationBonusId");
b.HasIndex("OptionTypeId");
b.ToTable("CombinationBonusRequirement", "config");
});
modelBuilder.Entity("MUnique.OpenMU.Persistence.EntityFramework.Model.ConfigurationUpdate", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uuid");
b.Property("CreatedAt")
.HasColumnType("timestamp with time zone");
b.Property("Description")
.IsRequired()
.HasColumnType("text");
b.Property("InstalledAt")
.HasColumnType("timestamp with time zone");
b.Property("Name")
.IsRequired()
.HasColumnType("text");
b.Property("Version")
.HasColumnType("integer");
b.HasKey("Id");
b.ToTable("ConfigurationUpdate", "config");
});
modelBuilder.Entity("MUnique.OpenMU.Persistence.EntityFramework.Model.ConfigurationUpdateState", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uuid");
b.Property("CurrentInstalledVersion")
.HasColumnType("integer");
b.Property("InitializationKey")
.HasColumnType("text");
b.HasKey("Id");
b.ToTable("ConfigurationUpdateState", "config");
});
modelBuilder.Entity("MUnique.OpenMU.Persistence.EntityFramework.Model.ConnectServerDefinition", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uuid");
b.Property("CheckMaxConnectionsPerAddress")
.HasColumnType("boolean");
b.Property("ClientId")
.HasColumnType("uuid");
b.Property("ClientListenerPort")
.HasColumnType("integer");
b.Property("CurrentPatchVersion")
.HasColumnType("bytea");
b.Property("Description")
.IsRequired()
.HasColumnType("text");
b.Property("DisconnectOnUnknownPacket")
.HasColumnType("boolean");
b.Property("ListenerBacklog")
.HasColumnType("integer");
b.Property("MaxConnections")
.HasColumnType("integer");
b.Property("MaxConnectionsPerAddress")
.HasColumnType("integer");
b.Property("MaxFtpRequests")
.HasColumnType("integer");
b.Property("MaxIpRequests")
.HasColumnType("integer");
b.Property("MaxServerListRequests")
.HasColumnType("integer");
b.Property("MaximumReceiveSize")
.HasColumnType("smallint");
b.Property("PatchAddress")
.IsRequired()
.HasColumnType("text");
b.Property("ServerId")
.HasColumnType("smallint");
b.Property("Timeout")
.HasColumnType("interval");
b.HasKey("Id");
b.HasIndex("ClientId");
b.ToTable("ConnectServerDefinition", "config");
});
modelBuilder.Entity("MUnique.OpenMU.Persistence.EntityFramework.Model.ConstValueAttribute", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uuid");
b.Property("CharacterClassId")
.HasColumnType("uuid");
b.Property("DefinitionId")
.HasColumnType("uuid");
b.Property("GameConfigurationId")
.HasColumnType("uuid");
b.Property("Value")
.HasColumnType("real");
b.HasKey("Id");
b.HasIndex("CharacterClassId");
b.HasIndex("DefinitionId");
b.HasIndex("GameConfigurationId");
b.ToTable("ConstValueAttribute", "config");
});
modelBuilder.Entity("MUnique.OpenMU.Persistence.EntityFramework.Model.DropItemGroup", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uuid");
b.Property("Chance")
.HasColumnType("double precision");
b.Property("Description")
.IsRequired()
.HasColumnType("text");
b.Property("GameConfigurationId")
.HasColumnType("uuid");
b.Property("ItemLevel")
.HasColumnType("smallint");
b.Property("ItemType")
.HasColumnType("integer");
b.Property("MaximumMonsterLevel")
.HasColumnType("smallint");
b.Property("MinimumMonsterLevel")
.HasColumnType("smallint");
b.Property("MonsterId")
.HasColumnType("uuid");
b.HasKey("Id");
b.HasIndex("GameConfigurationId");
b.HasIndex("MonsterId");
b.ToTable("DropItemGroup", "config");
});
modelBuilder.Entity("MUnique.OpenMU.Persistence.EntityFramework.Model.DropItemGroupItemDefinition", b =>
{
b.Property("DropItemGroupId")
.HasColumnType("uuid");
b.Property("ItemDefinitionId")
.HasColumnType("uuid");
b.HasKey("DropItemGroupId", "ItemDefinitionId");
b.HasIndex("ItemDefinitionId");
b.ToTable("DropItemGroupItemDefinition", "config");
});
modelBuilder.Entity("MUnique.OpenMU.Persistence.EntityFramework.Model.DuelArea", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uuid");
b.Property("DuelConfigurationId")
.HasColumnType("uuid");
b.Property("FirstPlayerGateId")
.HasColumnType("uuid");
b.Property("Index")
.HasColumnType("smallint");
b.Property("SecondPlayerGateId")
.HasColumnType("uuid");
b.Property("SpectatorsGateId")
.HasColumnType("uuid");
b.HasKey("Id");
b.HasIndex("DuelConfigurationId");
b.HasIndex("FirstPlayerGateId");
b.HasIndex("SecondPlayerGateId");
b.HasIndex("SpectatorsGateId");
b.ToTable("DuelArea", "config");
});
modelBuilder.Entity("MUnique.OpenMU.Persistence.EntityFramework.Model.DuelConfiguration", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uuid");
b.Property("EntranceFee")
.HasColumnType("integer");
b.Property("ExitId")
.HasColumnType("uuid");
b.Property("MaximumScore")
.HasColumnType("integer");
b.Property("MaximumSpectatorsPerDuelRoom")
.HasColumnType("integer");
b.Property("MinimumCharacterLevel")
.HasColumnType("integer");
b.HasKey("Id");
b.HasIndex("ExitId");
b.ToTable("DuelConfiguration", "config");
});
modelBuilder.Entity("MUnique.OpenMU.Persistence.EntityFramework.Model.EnterGate", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uuid");
b.Property("GameMapDefinitionId")
.HasColumnType("uuid");
b.Property("LevelRequirement")
.HasColumnType("smallint");
b.Property("Number")
.HasColumnType("smallint");
b.Property("TargetGateId")
.HasColumnType("uuid");
b.Property("X1")
.HasColumnType("smallint");
b.Property("X2")
.HasColumnType("smallint");
b.Property("Y1")
.HasColumnType("smallint");
b.Property("Y2")
.HasColumnType("smallint");
b.HasKey("Id");
b.HasIndex("GameMapDefinitionId");
b.HasIndex("TargetGateId");
b.ToTable("EnterGate", "config");
});
modelBuilder.Entity("MUnique.OpenMU.Persistence.EntityFramework.Model.ExitGate", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uuid");
b.Property("Direction")
.HasColumnType("integer");
b.Property("IsSpawnGate")
.HasColumnType("boolean");
b.Property("MapId")
.HasColumnType("uuid");
b.Property("X1")
.HasColumnType("smallint");
b.Property("X2")
.HasColumnType("smallint");
b.Property("Y1")
.HasColumnType("smallint");
b.Property("Y2")
.HasColumnType("smallint");
b.HasKey("Id");
b.HasIndex("MapId");
b.ToTable("ExitGate", "config");
});
modelBuilder.Entity("MUnique.OpenMU.Persistence.EntityFramework.Model.Friend", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uuid");
b.Property("Accepted")
.HasColumnType("boolean");
b.Property("CharacterId")
.HasColumnType("uuid");
b.Property("FriendId")
.HasColumnType("uuid");
b.Property("RequestOpen")
.HasColumnType("boolean");
b.HasKey("Id");
b.HasAlternateKey("CharacterId", "FriendId");
b.ToTable("Friend", "friend");
});
modelBuilder.Entity("MUnique.OpenMU.Persistence.EntityFramework.Model.GameClientDefinition", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uuid");
b.Property("Description")
.IsRequired()
.HasColumnType("text");
b.Property("Episode")
.HasColumnType("smallint");
b.Property("Language")
.HasColumnType("integer");
b.Property("Season")
.HasColumnType("smallint");
b.Property("Serial")
.HasColumnType("bytea");
b.Property("Version")
.HasColumnType("bytea");
b.HasKey("Id");
b.ToTable("GameClientDefinition", "config");
});
modelBuilder.Entity("MUnique.OpenMU.Persistence.EntityFramework.Model.GameConfiguration", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uuid");
b.Property("AreaSkillHitsPlayer")
.HasColumnType("boolean");
b.Property("CharacterNameRegex")
.HasColumnType("text");
b.Property("ClampMoneyOnPickup")
.HasColumnType("boolean");
b.Property("DamagePerOneItemDurability")
.HasColumnType("double precision");
b.Property("DamagePerOnePetDurability")
.HasColumnType("double precision");
b.Property("DuelConfigurationId")
.HasColumnType("uuid");
b.Property("ExcellentItemDropLevelDelta")
.ValueGeneratedOnAdd()
.HasColumnType("smallint")
.HasDefaultValue((byte)25);
b.Property("ExperienceFormula")
.ValueGeneratedOnAdd()
.HasColumnType("text")
.HasDefaultValue("if(level == 0, 0, if(level < 256, 10 * (level + 8) * (level - 1) * (level - 1), (10 * (level + 8) * (level - 1) * (level - 1)) + (1000 * (level - 247) * (level - 256) * (level - 256))))");
b.Property("ExperienceRate")
.HasColumnType("real");
b.Property("HitsPerOneItemDurability")
.HasColumnType("double precision");
b.Property("InfoRange")
.HasColumnType("smallint");
b.Property("ItemDropDuration")
.ValueGeneratedOnAdd()
.HasColumnType("interval")
.HasDefaultValue(new TimeSpan(0, 0, 1, 0, 0));
b.Property("LetterSendPrice")
.HasColumnType("integer");
b.Property("MasterExperienceFormula")
.ValueGeneratedOnAdd()
.HasColumnType("text")
.HasDefaultValue("(505 * level * level * level) + (35278500 * level) + (228045 * level * level)");
b.Property("MasterExperienceRate")
.HasColumnType("real");
b.Property("MaximumCharactersPerAccount")
.HasColumnType("smallint");
b.Property("MaximumInventoryMoney")
.HasColumnType("integer");
b.Property("MaximumItemOptionLevelDrop")
.HasColumnType("smallint");
b.Property("MaximumLetters")
.HasColumnType("integer");
b.Property("MaximumLevel")
.HasColumnType("smallint");
b.Property("MaximumMasterLevel")
.HasColumnType("smallint");
b.Property("MaximumPartySize")
.HasColumnType("smallint");
b.Property("MaximumPasswordLength")
.HasColumnType("integer");
b.Property("MaximumVaultMoney")
.HasColumnType("integer");
b.Property("MinimumMonsterLevelForMasterExperience")
.HasColumnType("smallint");
b.Property("PreventExperienceOverflow")
.HasColumnType("boolean");
b.Property("RecoveryInterval")
.HasColumnType("integer");
b.Property("ShouldDropMoney")
.HasColumnType("boolean");
b.HasKey("Id");
b.HasIndex("DuelConfigurationId")
.IsUnique();
b.ToTable("GameConfiguration", "config");
});
modelBuilder.Entity("MUnique.OpenMU.Persistence.EntityFramework.Model.GameMapDefinition", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uuid");
b.Property("BattleZoneId")
.HasColumnType("uuid");
b.Property("Discriminator")
.HasColumnType("integer");
b.Property("ExpMultiplier")
.HasColumnType("double precision");
b.Property