{"product_id":"multiple-currencies","title":"Multiple Currencies","description":"\u003cp\u003eEasily add and manage multiple custom currencies in your UEFN experiences with the \u003cstrong\u003eMultiple Currencies.\u003c\/strong\u003e This modular system handles everything from defining currencies to awarding, spending, exchanging, and displaying them on-screen — with persistent balances, big number formatting, timed multipliers, popup notifications, and a fully customizable HUD.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003ePerfect for:\u003c\/strong\u003e Tycoons, RPGs, survival games, simulators, or any experience that needs a solid in-game economy. It's easy to extend and quick to get up and running.\u003c\/p\u003e\n\u003ch2\u003eWhat's New in v1.2.0\u003c\/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMultiplier system with per-player timed currency multipliers, generation-based timer reset, and multiplicative stacking\u003c\/li\u003e\n\u003cli\u003ePopup notification system with queued per-agent popups, icons, configurable colors, and duration\u003c\/li\u003e\n\u003cli\u003eBig number formatting with automatic K, M, B, T, Qa+ suffixes\u003c\/li\u003e\n\u003cli\u003eCurrency template system for flexible amount display (e.g., \u003ccode\u003e[amount]G\u003c\/code\u003e shows \u003ccode\u003e1.5KG\u003c\/code\u003e)\u003c\/li\u003e\n\u003cli\u003eTrigger-based currency award entries configurable directly on the Currency Manager\u003c\/li\u003e\n\u003cli\u003eReturning player support — new currencies added after publish are auto-initialized\u003c\/li\u003e\n\u003cli\u003ePurchase validation without spending via \u003ccode\u003eShouldSpendCurrency\u003c\/code\u003e toggle\u003c\/li\u003e\n\u003cli\u003eDelta detection with pulse animations on currency UI updates\u003c\/li\u003e\n\u003cli\u003eMultiplier HUD indicators with percentage display and state-change animations\u003c\/li\u003e\n\u003cli\u003ePrimary and secondary color properties per currency for richer UI styling\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003ch2\u003eFeatures\u003c\/h2\u003e\n\u003ch3\u003eFlexible Currency Setup\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDefine unlimited currencies with name, template formatting, starting amount, icons, backgrounds, colors, and sounds\u003c\/li\u003e\n\u003cli\u003eRegister currencies on the Currency Manager device and they're available everywhere\u003c\/li\u003e\n\u003cli\u003eEach currency has a unique \u003ccode\u003eTypeIndex\u003c\/code\u003e used to reference it across all devices and code\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003ch3\u003eDrop-In Devices\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cstrong\u003eaward_currency_location\u003c\/strong\u003e — Grant currency when a trigger fires\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003epurchase_location\u003c\/strong\u003e — Deduct currency for purchases with multi-currency cost support and optional spend guard\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eexchange_location\u003c\/strong\u003e — Trade currencies: deposit one or more, receive one or more\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003emultiplier_currency_location\u003c\/strong\u003e — Apply timed multipliers per player with popup notifications, configurable duration, and trigger outputs\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003ch3\u003eCurrency Award Entries\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003eConfigure trigger-based currency awards directly on the Currency Manager — no extra devices needed\u003c\/li\u003e\n\u003cli\u003eEach entry specifies a currency type, amount, and trigger device\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003ch3\u003eMultiplier System\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePer-player timed multipliers with configurable duration and value\u003c\/li\u003e\n\u003cli\u003eRe-triggering resets the timer and updates the multiplier value\u003c\/li\u003e\n\u003cli\u003eMultiple multipliers on the same currency stack multiplicatively\u003c\/li\u003e\n\u003cli\u003ePopup notification on activation with configurable message, icon, and color\u003c\/li\u003e\n\u003cli\u003eTrigger outputs for activation and deactivation events\u003c\/li\u003e\n\u003cli\u003eHUD automatically shows multiplier status with percentage indicators\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003ch3\u003eBuilt-In UI\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003eConsolidated HUD widget (\u003ccode\u003eUW_Currencies\u003c\/code\u003e) displays all currencies in one widget\u003c\/li\u003e\n\u003cli\u003eBig number formatting with automatic suffixes (K, M, B, T, Qa, Qi, and more)\u003c\/li\u003e\n\u003cli\u003eTemplate-based display — use \u003ccode\u003e[amount]G\u003c\/code\u003e for \u003ccode\u003e100G\u003c\/code\u003e, \u003ccode\u003e$[amount]\u003c\/code\u003e for \u003ccode\u003e$1.5K\u003c\/code\u003e, etc.\u003c\/li\u003e\n\u003cli\u003eDelta detection with pulse animations when currency amounts change\u003c\/li\u003e\n\u003cli\u003eMultiplier indicators with percentage display and state-change animations\u003c\/li\u003e\n\u003cli\u003eUnused currency slots are automatically hidden\u003c\/li\u003e\n\u003cli\u003eCustomizable positioning and anchoring via editable canvas configuration\u003c\/li\u003e\n\u003cli\u003eShow or hide individual currencies at runtime using trigger devices\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003ch3\u003ePopup Notifications\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003eQueue-based popup system that prevents notification overlap\u003c\/li\u003e\n\u003cli\u003eItem popups with icon, message, sub-text, and configurable colors\u003c\/li\u003e\n\u003cli\u003eAlert popups with background material support\u003c\/li\u003e\n\u003cli\u003eUsed by the multiplier system and optionally by currency award\/spend events\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003ch3\u003ePersistence\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePlayer balances persist across sessions via VersePersistenceModule\u003c\/li\u003e\n\u003cli\u003eReturning players automatically receive new currencies initialized to their starting amount\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003ch3\u003eUtility Functions\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCheck balances, apply currency changes, set exact amounts, and query active multipliers from your own Verse code\u003c\/li\u003e\n\u003cli\u003eMulti-currency validation with \u003ccode\u003eHasEnoughForPrices\u003c\/code\u003e\n\u003c\/li\u003e\n\u003cli\u003eString utilities for template substitution, splitting, and big number formatting\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003ch2\u003eHow It Works\u003c\/h2\u003e\n\u003cp\u003ePlace the \u003cstrong\u003eCurrency Manager\u003c\/strong\u003e device and define your currencies with their names, templates, colors, icons, and starting amounts. The manager handles registration, UI creation, and player initialization automatically.\u003c\/p\u003e\n\u003cp\u003eDrop in \u003cstrong\u003eaward\u003c\/strong\u003e, \u003cstrong\u003epurchase\u003c\/strong\u003e, \u003cstrong\u003eexchange\u003c\/strong\u003e, or \u003cstrong\u003emultiplier\u003c\/strong\u003e devices and connect them to trigger devices in your level. When triggered, currency is awarded, spent, traded, or multiplied — with audio feedback, HUD updates, and optional popup notifications.\u003c\/p\u003e\n\u003cp\u003eReturning players keep their balances across sessions. If you add new currency types after publishing, returning players automatically receive them at the configured starting amount.\u003c\/p\u003e\n\u003cp\u003eThe architecture is modular — each system (currency, persistence, UI, popups) is self-contained, making it easy to extend or integrate with other gameplay systems.\u003c\/p\u003e\n\u003ch2\u003eProject Outline\u003c\/h2\u003e\n\u003cpre\u003eContent\/\n├── Materials\/\n│   ├── M_CurrencyBackground.uasset\n│   ├── M_CurrencyIcon.uasset\n│   ├── MI_CurrencyBackground1.uasset\n│   ├── MI_CurrencyBackground2.uasset\n│   ├── MI_CurrencyBackground3.uasset\n│   ├── MI_CurrencyIcon1.uasset\n│   ├── MI_CurrencyIcon2.uasset\n│   └── MI_CurrencyIcon3.uasset\n├── Scripts\/\n│   ├── CoreModule\/\n│   │   ├── agent_spawner_manager.verse\n│   │   ├── game_manager.verse\n│   │   └── utilities.verse\n│   ├── UIModule\/\n│   │   └── utilities.verse\n│   ├── VerseCurrencyModule\/\n│   │   ├── award_currency_location.verse\n│   │   ├── currencies_ui_configuration.verse\n│   │   ├── currencies_ui.verse\n│   │   ├── currency.verse\n│   │   ├── exchange_location.verse\n│   │   ├── purchase_location.verse\n│   │   ├── utilities.verse\n│   │   └── verse_currency_manager.verse\n│   └── VersePersistenceModule\/\n│       ├── utilities.verse\n│       └── verse_currency_persistence.verse\n├── Textures\/\n│   ├── currency_0.png\n│   ├── currency_0.uasset\n│   ├── currency_1.png\n│   ├── currency_1.uasset\n│   ├── currency_2.png\n│   ├── currency_2.uasset\n│   ├── currency_3.png\n│   ├── currency_3.uasset\n│   ├── currency_bg.png\n│   └── currency_bg.uasset\n├── Widgets\/\n│   ├── UW_Currencies.uasset\n│   └── UW_Currency.uasset\n├── CHANGELOG.md\n├── Instructions-For-Assets.md\n└── README.md\n\u003c\/pre\u003e\n\u003cp\u003e\u003cstrong\u003eNOTE:\u003c\/strong\u003e Level design is not included—this package provides the code and logic system only. The code is sold as is. Updates to the code and bug fixes can be obtained but aren't guaranteed.\u003c\/p\u003e","brand":"Coding Coast","offers":[{"title":"Default Title","offer_id":50927392489794,"sku":null,"price":85.0,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0928\/2338\/8482\/files\/multiple_currency_module_1_aeacaf8d-9a1a-4f46-a275-0c18d1095778.png?v=1753936908","url":"https:\/\/codingcoast.shop\/products\/multiple-currencies","provider":"Coding Coast","version":"1.0","type":"link"}