// // 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 PropertyString property table — the numeric keys the server sends in /// PrivateUpdatePropertyString (0x02DD) / PublicUpdatePropertyString (0x02DE) /// and in the property bundles carried by CreateObject / PlayerDescription / /// IdentifyResponse. The CLR payload for this table is string. /// /// 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 StringId) and the 38,985-file ACE weenie export corpus /// (references/weenies/), whose per-stat _comment carries the enum member /// name beside the numeric key. 28 of these 53 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 PropertyString : uint { Undef = 0, /// 38984 weenie attestations. Name = 1, Title = 2, /// 1697 weenie attestations. Sex = 3, /// 1693 weenie attestations. HeritageGroup = 4, /// 1622 weenie attestations. Template = 5, AttackersName = 6, /// 93 weenie attestations. Inscription = 7, /// 93 weenie attestations. ScribeName = 8, VendorsName = 9, /// 1 weenie attestations. Fellowship = 10, MonarchsName = 11, /// 449 weenie attestations. LockCode = 12, /// 238 weenie attestations. KeyCode = 13, /// 3219 weenie attestations. Use = 14, /// 5597 weenie attestations. ShortDesc = 15, /// 7107 weenie attestations. LongDesc = 16, /// 109 weenie attestations. ActivationTalk = 17, /// 10 weenie attestations. UseMessage = 18, /// 45 weenie attestations. ItemHeritageGroupRestriction = 19, /// 1318 weenie attestations. PluralName = 20, MonarchsTitle = 21, /// 96 weenie attestations. ActivationFailure = 22, ScribeAccount = 23, /// 591 weenie attestations. TownName = 24, /// 2 weenie attestations. CraftsmanName = 25, /// 4 weenie attestations. UsePkServerError = 26, ScoreCachedText = 27, /// 5 weenie attestations. ScoreDefaultEntryFormat = 28, /// 5 weenie attestations. ScoreFirstEntryFormat = 29, /// 5 weenie attestations. ScoreLastEntryFormat = 30, /// 5 weenie attestations. ScoreOnlyEntryFormat = 31, /// 5 weenie attestations. ScoreNoEntry = 32, /// 859 weenie attestations. Quest = 33, /// 249 weenie attestations. GeneratorEvent = 34, PatronsTitle = 35, HouseOwnerName = 36, /// 170 weenie attestations. QuestRestriction = 37, AppraisalPortalDestination = 38, TinkerName = 39, ImbuerName = 40, HouseOwnerAccount = 41, DisplayName = 42, DateOfBirth = 43, ThirdPartyApi = 44, KillQuest = 45, Afk = 46, AllegianceName = 47, AugmentationAddQuest = 48, KillQuest2 = 49, KillQuest3 = 50, UseSendsSignal = 51, GearPlatingName = 52, }