- QUESTPKT.1: SMSG_QUERY_QUEST_INFO_RESPONSE omits the ReadyForTranslation bit before flush.
- QUESTPKT.2: QuestRewardsBlock serializes QuestChoiceItem with wrong order/layout (missing 2-bit LootItemType; ItemInstance/Quantity out of order).
- QUESTPKT.3: SMSG_QUEST_GIVER_QUEST_COMPLETE omits the trailing ItemReward (ItemInstance).
- QUESTREWARD.1: reward dialogs feed QuestRewardsBlock with incomplete/unscaled data (raw money; XP/rep/currency/skill/faction/treasure-picker absent or 0).
C++: Server/Packets/QuestPackets.cpp/h, Entities/Player/Player.cpp (RewardQuest).
From the C#-vs-C++ reference audit (local docs/audits/csharp-reference-contrast.md). Plan: docs/migration/PORT_PLAN.md (L26) · State: docs/migration/STATE.md.
Done = contrast Rust vs the cited C++; if it matches, re-anchor the comment to C++ file:line; if it differs, fix behavior to C++. Live + capture-clean. 1 issue = 1 PR.
C++: Server/Packets/QuestPackets.cpp/h, Entities/Player/Player.cpp (RewardQuest).
From the C#-vs-C++ reference audit (local docs/audits/csharp-reference-contrast.md). Plan: docs/migration/PORT_PLAN.md (L26) · State: docs/migration/STATE.md.
Done = contrast Rust vs the cited C++; if it matches, re-anchor the comment to C++ file:line; if it differs, fix behavior to C++. Live + capture-clean. 1 issue = 1 PR.