//
// Regenerate with the 2026-07-29 enum verification campaign tooling; see
// docs/research/2026-07-29-enum-verification-campaign.md for the oracle set,
// the extraction method, and the open-question ledger.
// Hand edits are pinned by PropertyEnumConformanceTests — change the oracle,
// not the enum.
//
namespace AcDream.Core.Properties;
///
/// AC's PropertyFloat property table — the numeric keys the server sends in
/// PrivateUpdatePropertyFloat (0x02D5) / PublicUpdatePropertyFloat (0x02D6)
/// and in the property bundles carried by CreateObject / PlayerDescription /
/// IdentifyResponse. The CLR payload for this table is double.
///
/// Verified 2026-07-29 against two independent oracles: the vendored
/// client-side enum catalog (references/acclientlib/UtilityBelt.Common/Enums/Enums.cs,
/// which names this table FloatId) and the 38,985-file ACE weenie export corpus
/// (references/weenies/), whose per-stat _comment carries the enum member
/// name beside the numeric key. 86 of these 172 members are attested by BOTH
/// oracles with zero value conflicts; the remainder are single-sourced from the
/// catalog because no weenie in the corpus sets them.
///
/// This enum is a vocabulary, not a parser contract: the wire carries a raw
/// uint and unknown keys must still round-trip untouched, so never assume a
/// received key is a defined member.
///
public enum PropertyFloat : uint
{
Undef = 0,
/// 4243 weenie attestations.
HeartbeatInterval = 1,
/// 4243 weenie attestations.
HeartbeatTimestamp = 2,
/// 4361 weenie attestations.
HealthRate = 3,
/// 4361 weenie attestations.
StaminaRate = 4,
/// 7706 weenie attestations.
ManaRate = 5,
/// 79 weenie attestations.
HealthUponResurrection = 6,
/// 79 weenie attestations.
StaminaUponResurrection = 7,
/// 79 weenie attestations.
ManaUponResurrection = 8,
StartTime = 9,
StopTime = 10,
/// 1749 weenie attestations.
ResetInterval = 11,
/// 3290 weenie attestations.
Shade = 12,
/// 6001 weenie attestations.
ArmorModVsSlash = 13,
/// 6005 weenie attestations.
ArmorModVsPierce = 14,
/// 6005 weenie attestations.
ArmorModVsBludgeon = 15,
/// 6005 weenie attestations.
ArmorModVsCold = 16,
/// 6005 weenie attestations.
ArmorModVsFire = 17,
/// 6005 weenie attestations.
ArmorModVsAcid = 18,
/// 6005 weenie attestations.
ArmorModVsElectric = 19,
CombatSpeed = 20,
/// 2733 weenie attestations.
WeaponLength = 21,
/// 3174 weenie attestations.
DamageVariance = 22,
CurrentPowerMod = 23,
AccuracyMod = 24,
StrengthMod = 25,
/// 1386 weenie attestations.
MaximumVelocity = 26,
/// 233 weenie attestations.
RotationSpeed = 27,
MotionTimestamp = 28,
/// 3892 weenie attestations.
WeaponDefense = 29,
WimpyLevel = 30,
/// 2169 weenie attestations.
VisualAwarenessRange = 31,
AuralAwarenessRange = 32,
PerceptionLevel = 33,
/// 1987 weenie attestations.
PowerupTime = 34,
MaxChargeDistance = 35,
/// 1892 weenie attestations.
ChargeSpeed = 36,
/// 1049 weenie attestations.
BuyPrice = 37,
/// 1049 weenie attestations.
SellPrice = 38,
/// 18233 weenie attestations.
DefaultScale = 39,
/// 10 weenie attestations.
LockpickMod = 40,
/// 2195 weenie attestations.
RegenerationInterval = 41,
RegenerationTimestamp = 42,
/// 2135 weenie attestations.
GeneratorRadius = 43,
/// 66 weenie attestations.
TimeToRot = 44,
DeathTimestamp = 45,
PkTimestamp = 46,
VictimTimestamp = 47,
LoginTimestamp = 48,
CreationTimestamp = 49,
/// 4 weenie attestations.
MinimumTimeSincePk = 50,
DeprecatedHousekeepingPriority = 51,
AbuseLoggingTimestamp = 52,
LastPortalTeleportTimestamp = 53,
/// 9152 weenie attestations.
UseRadius = 54,
/// 46 weenie attestations.
HomeRadius = 55,
ReleasedTimestamp = 56,
MinHomeRadius = 57,
Facing = 58,
ResetTimestamp = 59,
LogoffTimestamp = 60,
EconRecoveryInterval = 61,
/// 3523 weenie attestations.
WeaponOffense = 62,
/// 1223 weenie attestations.
DamageMod = 63,
/// 4361 weenie attestations.
ResistSlash = 64,
/// 4361 weenie attestations.
ResistPierce = 65,
/// 4361 weenie attestations.
ResistBludgeon = 66,
/// 4361 weenie attestations.
ResistFire = 67,
/// 4361 weenie attestations.
ResistCold = 68,
/// 4361 weenie attestations.
ResistAcid = 69,
/// 4361 weenie attestations.
ResistElectric = 70,
/// 4361 weenie attestations.
ResistHealthBoost = 71,
/// 4361 weenie attestations.
ResistStaminaDrain = 72,
/// 4361 weenie attestations.
ResistStaminaBoost = 73,
/// 4361 weenie attestations.
ResistManaDrain = 74,
/// 4361 weenie attestations.
ResistManaBoost = 75,
/// 794 weenie attestations.
Translucency = 76,
/// 269 weenie attestations.
PhysicsScriptIntensity = 77,
/// 761 weenie attestations.
Friction = 78,
/// 761 weenie attestations.
Elasticity = 79,
/// 1076 weenie attestations.
AiUseMagicDelay = 80,
ItemMinSpellcraftMod = 81,
ItemMaxSpellcraftMod = 82,
ItemRankProbability = 83,
Shade2 = 84,
Shade3 = 85,
Shade4 = 86,
/// 15 weenie attestations.
ItemEfficiency = 87,
ItemManaUpdateTimestamp = 88,
SpellGestureSpeedMod = 89,
SpellStanceSpeedMod = 90,
AllegianceAppraisalTimestamp = 91,
PowerLevel = 92,
AccuracyLevel = 93,
AttackAngle = 94,
AttackTimestamp = 95,
CheckpointTimestamp = 96,
SoldTimestamp = 97,
UseTimestamp = 98,
UseLockTimestamp = 99,
/// 22 weenie attestations.
HealkitMod = 100,
FrozenTimestamp = 101,
HealthRateMod = 102,
AllegianceSwearTimestamp = 103,
/// 4361 weenie attestations.
ObviousRadarRange = 104,
/// 81 weenie attestations.
HotspotCycleTime = 105,
/// 74 weenie attestations.
HotspotCycleTimeVariance = 106,
SpamTimestamp = 107,
SpamRate = 108,
/// 26 weenie attestations.
BondWieldedTreasure = 109,
/// 1039 weenie attestations.
BulkMod = 110,
/// 1039 weenie attestations.
SizeMod = 111,
GagTimestamp = 112,
GeneratorUpdateTimestamp = 113,
DeathSpamTimestamp = 114,
DeathSpamRate = 115,
WildAttackProbability = 116,
/// 312 weenie attestations.
FocusedProbability = 117,
CrashAndTurnProbability = 118,
CrashAndTurnRadius = 119,
CrashAndTurnBias = 120,
/// 186 weenie attestations.
GeneratorInitialDelay = 121,
/// 575 weenie attestations.
AiAcquireHealth = 122,
/// 6 weenie attestations.
AiAcquireStamina = 123,
/// 6 weenie attestations.
AiAcquireMana = 124,
/// 4361 weenie attestations.
ResistHealthDrain = 125,
LifestoneProtectionTimestamp = 126,
/// 72 weenie attestations.
AiCounteractEnchantment = 127,
/// 10 weenie attestations.
AiDispelEnchantment = 128,
TradeTimestamp = 129,
AiTargetedDetectionRadius = 130,
/// 29 weenie attestations.
EmotePriority = 131,
LastTeleportStartTimestamp = 132,
EventSpamTimestamp = 133,
EventSpamRate = 134,
/// 5 weenie attestations.
InventoryOffset = 135,
/// 396 weenie attestations.
CriticalMultiplier = 136,
/// 15 weenie attestations.
ManaStoneDestroyChance = 137,
/// 351 weenie attestations.
SlayerDamageBonus = 138,
AllegianceInfoSpamTimestamp = 139,
AllegianceInfoSpamRate = 140,
NextSpellcastTimestamp = 141,
AppraisalRequestedTimestamp = 142,
AppraisalHeartbeatDueTimestamp = 143,
/// 209 weenie attestations.
ManaConversionMod = 144,
LastPkAttackTimestamp = 145,
FellowshipUpdateTimestamp = 146,
/// 395 weenie attestations.
CriticalFrequency = 147,
LimboStartTimestamp = 148,
/// 356 weenie attestations.
WeaponMissileDefense = 149,
/// 368 weenie attestations.
WeaponMagicDefense = 150,
/// 87 weenie attestations.
IgnoreShield = 151,
/// 135 weenie attestations.
ElementalDamageMod = 152,
StartMissileAttackTimestamp = 153,
LastRareUsedTimestamp = 154,
/// 69 weenie attestations.
IgnoreArmor = 155,
ProcSpellRate = 156,
/// 93 weenie attestations.
ResistanceModifier = 157,
AllegianceGagTimestamp = 158,
/// 18 weenie attestations.
AbsorbMagicDamage = 159,
CachedMaxAbsorbMagicDamage = 160,
GagDuration = 161,
AllegianceGagDuration = 162,
GlobalXpMod = 163,
HealingModifier = 164,
/// 391 weenie attestations.
ArmorModVsNether = 165,
ResistNether = 166,
/// 369 weenie attestations.
CooldownDuration = 167,
WeaponAuraOffense = 168,
WeaponAuraDefense = 169,
WeaponAuraElemental = 170,
WeaponAuraManaConv = 171,
}