Skip to content

Effects Overhaul#2319

Draft
creatorfromhell wants to merge 30 commits intoQuickShop-Community:hikarifrom
creatorfromhell:feat/effects-overhaul
Draft

Effects Overhaul#2319
creatorfromhell wants to merge 30 commits intoQuickShop-Community:hikarifrom
creatorfromhell:feat/effects-overhaul

Conversation

@creatorfromhell
Copy link
Copy Markdown
Contributor

Type of Change

  • feat – New feature

General Contribution Checklist

  • I have read and understood the CONTRIBUTING.md.
  • My branch name follows the naming conventions in CONTRIBUTING.md.
  • I have signed the Contributor License Agreement (CLA), if required.
  • My changes are based on the latest hikari branch.
  • I have tested my changes locally.
  • Existing functionality has not been unintentionally broken.

Description of Changes

This PR introduces a configurable sound and particle effects system for QuickShop-Hikari.

Added

  • Per-action sound configuration support

    • enabled toggle per sound
    • configurable volume
    • configurable pitch
  • Particle effect support for shop interactions

    • Configurable particle type, count, and offset
    • Designed to work alongside existing actions
  • New effect hooks for:

    • toggle-display
    • freeze-toggle

Why this change?

  • Improves user feedback and immersion
  • Gives server owners full control over audiovisual behavior
  • Standardizes effect handling for future features
  • Keeps configuration simple and consistent with existing QuickShop style

Scope

  • User-facing (visual and audio feedback)
  • Configurable (no hardcoded effects)
  • Backwards compatible

Configuration Changes

Sound system improvements

Each sound entry now supports:

enabled: true
sound: SOUND_NAME
volume: 1.0
pitch: 1.0

Particle system format

particle:
shop:
toggle-display:
particle: ENCHANT
count: 15
offset:
x: 0.3
y: 0.5
z: 0.3

New effect entries

  • sound.shop.freeze-toggle
  • particle.shop.freeze-toggle
  • particle.toggle-display

Migration Notes

No breaking changes.

  • Existing configs remain valid
  • New fields are optional
  • Defaults ensure safe fallback behavior if not configured

Related Issues / References

  • Fixes: N/A
  • Relates to: UX improvements
  • Documentation PR: N/A

Testing Notes

  • Local test server

Verified:

  • Sounds play correctly with configured volume and pitch
  • Sound disabling works per entry
  • Particles spawn correctly with offsets and counts
  • Effects trigger properly on:
    • display toggle
    • shop freeze/unfreeze

Changelog Entry

Feature

  • Added configurable sound and particle effects system for shop interactions.(creatorfromhell)

Maintainer Review Checklist (Internal)

  • Code structure meets project standards
  • No unintended side effects
  • Config additions follow style guide
  • Documentation updated (if needed)
  • Changelog entry added
  • Breaking change properly labeled

Thank you for contributing to QuickShop-Hikari, it means a lot to us!

…. This includes the storage system, and database calls. This leaves the commands left to complete as the last item.
…he for shops without any tags already on removal calls.
…d methods. Tag management functionality is now ready for testing.
…to interface and implementation for API module, implement PlayerTagIndex in order to make tag queries o(1) instead of o(n)
…nt placeholder methods for generic price handling, and update related API interfaces.
…ocation` in shop-related classes, and add generic price comparison methods.
…nager. Removed unused tag parser class in AbstractShopManager.
… classes, and ensure case-insensitive handling for shop states.
…ed text handling, and update language keys with pagination and tag improvements.
…on, add new command generation logic in `TagService`, update language keys for clarity.
…te frozen from modes. Fixed issue with permissions and toggling modes.
…dundant checks, and improve space and stock validation.
…fects with advanced customization options.
…for shop location handling in various subcommands, menu, and shop manager logic. Fix thread abuse within the history menu by moving the datarecords loading to be preloaded during the initialization phase of the command.
…ions. Includes `EffectsConfig` implementation, utility enhancements, and in-game feedback integration for shop creation, removal, price changes, mode toggles, and more.
@creatorfromhell creatorfromhell marked this pull request as draft April 19, 2026 21:23
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.

1 participant