Fix empty merchant NPCs (Christine, Julia, Moss)#803
Conversation
Summary of ChangesHello, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! This pull request addresses an issue where specific merchant NPCs in the game were initialized with empty, non-functional shop windows. By implementing a new optional configuration update plugin, the system now clones a valid general-goods store onto these NPCs, ensuring they are fully operational for players while remaining idempotent and configurable for server owners. Highlights
New Features🧠 You can now enable Memory (public preview) to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console. Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize the Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counterproductive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for GitHub and other Google products, sign up here. Footnotes
|
There was a problem hiding this comment.
Code Review
This pull request introduces a new update plugin, AddMissingMerchantStoresPlugIn, which assigns a general-goods merchant store (cloned from Thompson the Merchant) to NPCs that have a merchant window but no items assigned (Christine, Julia, and Moss). It also registers this update version in the UpdateVersion enum. The review feedback suggests optimizing the ApplyAsync method by removing the unnecessary async keyword and #pragma warning suppression, and returning default instead to avoid the overhead of an async state machine.
Important
The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.
Christine the General Goods Merchant (545) and Market Union Member Julia (547) in the Loren Market, and Moss The Merchant (492) in Elvenland, have a merchant window but no MerchantStore, so talking to them opens an empty, non-working shop and the click can even fall through. Add a configuration update (UpdateVersion 84) that clones the general-goods (potion girl) store carried by Thompson the Merchant (231) onto each of them. The update is idempotent (skips NPCs that already have a store) and optional. After it runs they sell items and appear in the admin panel's merchant editor.
7b3d3a8 to
90d5a4b
Compare
Fix empty merchant NPCs (Christine, Julia, Moss)
Problem
Three Season 6 NPCs have a merchant window (NpcWindow.Merchant) but no MerchantStore, so talking to them opens an empty, non-working shop:
Change
Adds a configuration update plugin (AddMissingMerchantStoresPlugIn, UpdateVersion = 84) that clones the general-goods store carried by Thompson the Merchant (231) onto each of the three NPCs. Mirrors the existing pattern in AddKalimaPlugIn (cloning a store onto another NPC).
Result
After applying the update, the three NPCs sell general goods (potions, antidotes, bolts/arrows, town portal scroll, armor of guardsman) and show up in the admin panel's merchant editor for further per-NPC tuning. No engine/behavior changes — data only.
Files