Skip to content

Fix mall, shop, mall/shop refresh logic and battle pass flows#34

Merged
Melledy merged 1 commit into
Melledy:mainfrom
Yostarcc:main
May 26, 2026
Merged

Fix mall, shop, mall/shop refresh logic and battle pass flows#34
Melledy merged 1 commit into
Melledy:mainfrom
Yostarcc:main

Conversation

@Yostarcc

@Yostarcc Yostarcc commented May 24, 2026

Copy link
Copy Markdown
Contributor

📄 Overview

This PR fixes and refactors several interconnected commerce and progression systems across the server.

Key Modules Fixed & Optimized:

  • Shop Performance: Listing visibility, stock handling, and delisting behavior for Mall Packages, Mall Shops, and Resident Shops.
  • Reset Timing: Boundary and calculation logic for daily, weekly, and monthly refreshes.
  • Order Lifecycle: Order creation and handling flows for Gems, Monthly Cards, and Mall Packages.
  • Payment Lifecycle: Graceful integration of order cancellation, paid notifications, and separate reward collection settlement.
  • Battle Pass: Purchase, level-buying, mode upgrades (Premium vs. Luxury), and reward distribution handling.
  • Core Support: Inventory and currency handling required by the above flows.

⚙️ Notes

  • Expose All Skins Configuration: Introduced a server option showAllSkinInMall to expose mall skins without sale-window restrictions.
  • Local Reset Hour: Reset timing now uniformly assumes a server-local reset hour model rather than the older UTC-offset-style interpretation.
  • Condition Filtering: Several mall and shop flows now strictly depend on parsed configuration conditions instead of returning everything unconditionally.

⚠️ Risk

Because this PR touches multiple interconnected backend systems, testing should focus heavily on the following high-risk areas:

  1. Mall package visibility and timed listings (list/delist windows).
  2. Accurate boundary calculations for daily, weekly, and monthly reset periods.
  3. State control and persistence for monthly card daily rewards.
  4. Composition and distribution of battle pass rewards.
  5. Purchase and deduction logic for item-or-currency-based packages.
  6. Red dot notification behavior (Notify) for free packages upon login and collection.

🧪 Recommended Verification

It is highly recommended to perform full-circuit regression testing on the following scenarios:

  • Shops & Packages: Verify mall package list contents for both normal package and skin tabs; verify mall shop/resident shop refresh timers, stock limits, and listing windows.
  • Recharge & Monthly Cards: Verify gem recharge maiden-bonus vs. experienced-bonus behavior; verify monthly card purchase eligibility, remaining days calculation, and daily reward claims.
  • Payment Flow: Verify the full "Order Request -> Paid Notify -> Collect Settlement" lifecycle for packages (ensuring reward decoupling resolves cleanly).
  • Battle Pass System: Verify battle pass premium purchases, luxury purchases, complementary upgrades, and reward collection popup behavior; verify level, mode, and reward states post-collection.

@Melledy Melledy merged commit 57c05c8 into Melledy:main May 26, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants