About Lottery
LotteryUI is a comprehensive lottery system plugin that provides an immersive gambling experience with a fully customized user interface. Players can test their luck daily through an interactive 9-slot lottery system, winning various rewards ranging from common resources to ultra-rare items and exclusive permissions.
Main Features
-
Interactive Lottery Interface: Features a beautifully designed custom UI with 9 clickable slots, each containing randomized rewards with different rarity levels and drop chances.
-
Multi-Tier Reward System: Supports 5 rarity tiers (Common, Rare, Epic, Legendary, Ultra Rare) with configurable drop chances from 80% down to 5%, ensuring balanced gameplay.
-
Personal Inventory System: Players collect winnings in a personal lottery inventory with pagination support, allowing them to claim rewards when convenient.
-
Advanced Cooldown Management: Implements both general usage cooldowns and individual slot cooldowns to prevent abuse, with different timers for VIP tiers and administrators.
-
VIP Tier System: Configurable VIP levels with custom permissions, reduced cooldowns, increased daily limits, and priority-based benefits.
-
Daily Usage Limits: Prevents excessive gambling with configurable daily limits per user tier, promoting healthy gameplay balance.
-
Post-Wipe Protection: Optional lockdown period after server wipes to maintain economy balance during fresh start periods.
-
Immersive Sound System: Customizable sound effects for wins, losses, claims, and interactions to enhance player experience.
-
Command Rewards: Supports special rewards that execute console commands, perfect for granting permissions, currencies, or triggering other plugin actions.
-
Smooth Animations: Features animated button selections and visual feedback for an engaging user experience.
Permissions
-
lotteryui.admin: Grants administrative access to reset lottery data and bypass most restrictions.
Chat Commands
-
/lottery: Opens the main lottery interface where players can view rewards and make selections.
-
/lottery.reset confirm: (Admin only) Completely resets all lottery data including inventories, cooldowns, and statistics.
Console Commands
-
lottery.resetdata confirm: (Admin/Console) Resets all lottery data with confirmation required.
Config
{ "Data Management": { "Clear Data On Wipe": true, "Auto Save Interval (seconds)": 300.0, "Save On Player Disconnect": true }, "Rarity System": { "Common Drop Chance (%)": 80.0, "Rare Drop Chance (%)": 60.0, "Epic Drop Chance (%)": 40.0, "Legendary Drop Chance (%)": 20.0, "Ultra Rare Drop Chance (%)": 5.0 }, "Cooldown Settings": { "Enable Post-Wipe Cooldown": true, "Post-Wipe Cooldown Hours": 24.0, "General Usage Cooldown Seconds": 3600.0, "Per-Slot Cooldown Seconds": 300.0, "Admin General Cooldown Seconds": 1800.0, "Admin Per-Slot Cooldown Seconds": 150.0 }, "Usage Limits": { "Enable Usage Limits": true, "Default User Daily Limit": 3, "Admin Daily Limit": -1, "Admin Permission": "lotteryui.admin", "VIP Tiers": [ { "Tier Name": "VIP", "Permission": "lotteryui.vip", "Daily Limit": 10, "Priority": 1, "General Cooldown Seconds": 2700.0, "Per-Slot Cooldown Seconds": 240.0 }, { "Tier Name": "VIP+", "Permission": "lotteryui.vip.plus", "Daily Limit": 15, "Priority": 2, "General Cooldown Seconds": 2400.0, "Per-Slot Cooldown Seconds": 210.0 }, { "Tier Name": "VIP++", "Permission": "lotteryui.vip.premium", "Daily Limit": 25, "Priority": 3, "General Cooldown Seconds": 2100.0, "Per-Slot Cooldown Seconds": 180.0 }, { "Tier Name": "MVIP", "Permission": "lotteryui.mvip", "Daily Limit": 50, "Priority": 4, "General Cooldown Seconds": 1800.0, "Per-Slot Cooldown Seconds": 150.0 } ] }, "Sound Settings": { "Enable Sounds": true, "Claim Item Sound": "assets/bundled/prefabs/fx/invite_notice.prefab", "Win Reward Sound": "assets/bundled/prefabs/fx/item_unlock.prefab", "Lose Sound": "assets/prefabs/locks/keypad/effects/lock.code.denied.prefab", "Click Sound": "assets/bundled/prefabs/fx/notice/item.select.fx.prefab", "Success Sound": "assets/bundled/prefabs/fx/gestures/thumbsup.prefab" }, "Lottery Rewards": [ { "Item ID": -151838493, "Amount": 1000, "Skin ID": 0, "Rarity Color (RGBA)": "0.7 0.7 0.7 1", "Rarity Type": "Common", "Drop Chance (%)": 80.0, "Is Command Reward": false, "Console Commands": [], "Custom Image URL": "", "Display Name": "", "Description": "" }, { "Item ID": -2099697608, "Amount": 500, "Skin ID": 0, "Rarity Color (RGBA)": "0.7 0.7 0.7 1", "Rarity Type": "Common", "Drop Chance (%)": 80.0, "Is Command Reward": false, "Console Commands": [], "Custom Image URL": "", "Display Name": "", "Description": "" }, { "Item ID": 69511070, "Amount": 300, "Skin ID": 0, "Rarity Color (RGBA)": "0.7 0.7 0.7 1", "Rarity Type": "Common", "Drop Chance (%)": 80.0, "Is Command Reward": false, "Console Commands": [], "Custom Image URL": "", "Display Name": "", "Description": "" }, { "Item ID": -804769727, "Amount": 200, "Skin ID": 0, "Rarity Color (RGBA)": "0.7 0.7 0.7 1", "Rarity Type": "Common", "Drop Chance (%)": 80.0, "Is Command Reward": false, "Console Commands": [], "Custom Image URL": "", "Display Name": "", "Description": "" }, { "Item ID": 1719978075, "Amount": 100, "Skin ID": 0, "Rarity Color (RGBA)": "0.7 0.7 0.7 1", "Rarity Type": "Common", "Drop Chance (%)": 80.0, "Is Command Reward": false, "Console Commands": [], "Custom Image URL": "", "Display Name": "", "Description": "" }, { "Item ID": 1545779598, "Amount": 1, "Skin ID": 0, "Rarity Color (RGBA)": "0.2 0.6 1 1", "Rarity Type": "Rare", "Drop Chance (%)": 60.0, "Is Command Reward": false, "Console Commands": [], "Custom Image URL": "", "Display Name": "", "Description": "" }, { "Item ID": 1588298435, "Amount": 1, "Skin ID": 0, "Rarity Color (RGBA)": "0.2 0.6 1 1", "Rarity Type": "Rare", "Drop Chance (%)": 60.0, "Is Command Reward": false, "Console Commands": [], "Custom Image URL": "", "Display Name": "", "Description": "" }, { "Item ID": 818877484, "Amount": 1, "Skin ID": 0, "Rarity Color (RGBA)": "0.2 0.6 1 1", "Rarity Type": "Rare", "Drop Chance (%)": 60.0, "Is Command Reward": false, "Console Commands": [], "Custom Image URL": "", "Display Name": "", "Description": "" }, { "Item ID": -592016202, "Amount": 10, "Skin ID": 0, "Rarity Color (RGBA)": "0.2 0.6 1 1", "Rarity Type": "Rare", "Drop Chance (%)": 60.0, "Is Command Reward": false, "Console Commands": [], "Custom Image URL": "", "Display Name": "", "Description": "" }, { "Item ID": -1211166256, "Amount": 128, "Skin ID": 0, "Rarity Color (RGBA)": "0.2 0.6 1 1", "Rarity Type": "Rare", "Drop Chance (%)": 60.0, "Is Command Reward": false, "Console Commands": [], "Custom Image URL": "", "Display Name": "", "Description": "" }, { "Item ID": 442886268, "Amount": 1, "Skin ID": 0, "Rarity Color (RGBA)": "0.7 0.3 1 1", "Rarity Type": "Epic", "Drop Chance (%)": 40.0, "Is Command Reward": false, "Console Commands": [], "Custom Image URL": "", "Display Name": "", "Description": "" }, { "Item ID": -1812555177, "Amount": 1, "Skin ID": 0, "Rarity Color (RGBA)": "0.7 0.3 1 1", "Rarity Type": "Epic", "Drop Chance (%)": 40.0, "Is Command Reward": false, "Console Commands": [], "Custom Image URL": "", "Display Name": "", "Description": "" }, { "Item ID": -2069578888, "Amount": 1, "Skin ID": 0, "Rarity Color (RGBA)": "0.7 0.3 1 1", "Rarity Type": "Epic", "Drop Chance (%)": 40.0, "Is Command Reward": false, "Console Commands": [], "Custom Image URL": "", "Display Name": "", "Description": "" }, { "Item ID": -932201673, "Amount": 1000, "Skin ID": 0, "Rarity Color (RGBA)": "0.7 0.3 1 1", "Rarity Type": "Epic", "Drop Chance (%)": 40.0, "Is Command Reward": false, "Console Commands": [], "Custom Image URL": "", "Display Name": "", "Description": "" }, { "Item ID": 1318558775, "Amount": 1, "Skin ID": 0, "Rarity Color (RGBA)": "0.7 0.3 1 1", "Rarity Type": "Epic", "Drop Chance (%)": 40.0, "Is Command Reward": false, "Console Commands": [], "Custom Image URL": "", "Display Name": "", "Description": "" }, { "Item ID": 1110385766, "Amount": 1, "Skin ID": 0, "Rarity Color (RGBA)": "1 0.8 0 1", "Rarity Type": "Legendary", "Drop Chance (%)": 20.0, "Is Command Reward": false, "Console Commands": [], "Custom Image URL": "", "Display Name": "", "Description": "" }, { "Item ID": -194953424, "Amount": 1, "Skin ID": 0, "Rarity Color (RGBA)": "1 0.8 0 1", "Rarity Type": "Legendary", "Drop Chance (%)": 20.0, "Is Command Reward": false, "Console Commands": [], "Custom Image URL": "", "Display Name": "", "Description": "" }, { "Item ID": 1248356124, "Amount": 3, "Skin ID": 0, "Rarity Color (RGBA)": "1 0.8 0 1", "Rarity Type": "Legendary", "Drop Chance (%)": 20.0, "Is Command Reward": false, "Console Commands": [], "Custom Image URL": "", "Display Name": "", "Description": "" }, { "Item ID": 317398316, "Amount": 200, "Skin ID": 0, "Rarity Color (RGBA)": "1 0.8 0 1", "Rarity Type": "Legendary", "Drop Chance (%)": 20.0, "Is Command Reward": false, "Console Commands": [], "Custom Image URL": "", "Display Name": "", "Description": "" }, { "Item ID": -1581843485, "Amount": 1000, "Skin ID": 0, "Rarity Color (RGBA)": "1 0.8 0 1", "Rarity Type": "Legendary", "Drop Chance (%)": 20.0, "Is Command Reward": false, "Console Commands": [], "Custom Image URL": "", "Display Name": "", "Description": "" }, { "Item ID": 1545779598, "Amount": 1, "Skin ID": 1309470544, "Rarity Color (RGBA)": "1 0.2 0.2 1", "Rarity Type": "UltraRare", "Drop Chance (%)": 5.0, "Is Command Reward": false, "Console Commands": [], "Custom Image URL": "", "Display Name": "", "Description": "" }, { "Item ID": 442886268, "Amount": 1, "Skin ID": 1926503780, "Rarity Color (RGBA)": "1 0.2 0.2 1", "Rarity Type": "UltraRare", "Drop Chance (%)": 5.0, "Is Command Reward": false, "Console Commands": [], "Custom Image URL": "", "Display Name": "", "Description": "" }, { "Item ID": -932201673, "Amount": 5000, "Skin ID": 0, "Rarity Color (RGBA)": "1 0.2 0.2 1", "Rarity Type": "UltraRare", "Drop Chance (%)": 5.0, "Is Command Reward": false, "Console Commands": [], "Custom Image URL": "", "Display Name": "", "Description": "" }, { "Item ID": 0, "Amount": 1, "Skin ID": 0, "Rarity Color (RGBA)": "1 0.8 0 1", "Rarity Type": "Legendary", "Drop Chance (%)": 15.0, "Is Command Reward": true, "Console Commands": [ "grant user {steamid} lotteryui.vip", "note.add {steamid} \"¡Congratulations! You won VIP on the LotteryUI\"" ], "Custom Image URL": "https://i.ibb.co/vip-icon.png", "Display Name": "VIP Access", "Description": "Permanent VIP Access" }, { "Item ID": 0, "Amount": 1, "Skin ID": 0, "Rarity Color (RGBA)": "1 0.2 0.2 1", "Rarity Type": "UltraRare", "Drop Chance (%)": 3.0, "Is Command Reward": true, "Console Commands": [ "inventory.giveto {steamid} scrap 1000", "say {username} won 1000 scrap from the LotteryUI!" ], "Custom Image URL": "https://i.ibb.co/money-icon.png", "Display Name": "1000 Scrap", "Description": "Instant scrap reward" } ] }
Lang
{ "UI.Title": "LOTTERY", "UI.Subtitle": "Open the lottery daily to win amazing rewards!", "UI.PossibleRewards": "POSSIBLE REWARDS", "UI.ButtonInventory": "INVENTORY", "UI.ButtonInformation": "INFORMATION", "UI.ButtonClose": "CLOSE", "UI.ButtonClaimAll": "CLAIM ALL", "UI.ButtonLottery": "LOTTERY", "UI.InventoryTitle": "INVENTORY", "UI.InventorySubtitle": "Your lottery winnings collection", "UI.YourWinnings": "YOUR WINNINGS", "UI.LotteryStatus": "LOTTERY STATUS", "Status.Locked": "<size=11><color=#ff6b6b>LOCKED</color></size>\n<size=9><color=#DBE2E9>{0}h {1}m left</color></size>", "Status.Cooldown": "<size=11><color=#ffd43b>COOLDOWN</color></size>\n<size=9><color=#DBE2E9>{0}</color></size>", "Status.Ready": "<size=12><color=#4ade80>READY!</color></size>\n<size=8><color=#9AA297>Click to play</color></size>", "Status.DailyUses": "<size=11><color=#74c0fc>DAILY USES</color></size>\n<size=10><color=#DBE2E9>{0}</color><color=#9AA297>/</color><color=#4ade80>{1}</color></size>", "Status.DailyUsesUnlimited": "<size=11><color=#4ade80>DAILY USES</color></size>\n<size=9><color=#DBE2E9>Unlimited</color></size>", "Status.DailyUsesNoLimits": "<size=11><color=#4ade80>DAILY USES</color></size>\n<size=9><color=#DBE2E9>No Limits</color></size>", "Status.AdminTier": "<size=11><color=#ff6b6b>ADMIN</color></size>\n<size=8><color=#F3E7B3>{0}</color><color=#9AA297>/</color><color=#F3E7B3>{1}</color></size>", "Status.VipTier": "<size=11><color={0}>{1}</color></size>\n<size=8><color=#F3E7B3>{2}</color><color=#9AA297>/</color><color=#F3E7B3>{3}</color></size>", "Status.NormalTier": "<size=11><color=#74c0fc>NORMAL</color></size>\n<size=8><color=#F3E7B3>{0}</color><color=#9AA297>/</color><color=#F3E7B3>{1}</color></size>", "Chat.NoItemsToClaim": "<size=14><color=#fbbf24>LOTTERY INVENTORY</color></size>\n<size=12><color=#DBE2E9>No items available to claim at this time</color></size>\n<size=10><color=#9AA297>Visit the lottery to win rewards first!</color></size>", "Chat.AllItemsClaimed": "<size=14><color=#4ade80>REWARDS CLAIMED</color></size>\n<size=12><color=#DBE2E9>Successfully claimed all lottery rewards!</color></size>\n<size=10><color=#9AA297>Total items received: </color><color=#4ade80>{0}</color></size>", "Chat.ItemClaimed": "<size=13><color=#4ade80>ITEM CLAIMED</color></size>\n<size=11><color=#F3E7B3>Received: </color><color=#DBE2E9>{0}x {1}</color></size>", "Chat.SlotAlreadySelected": "<size=13><color=#fbbf24>SLOT UNAVAILABLE</color></size>\n<size=11><color=#DBE2E9>You have already selected this lottery slot</color></size>\n<size=9><color=#9AA297>Choose a different number to continue</color></size>", "Chat.BetterLuckNextTime": "<size=14><color=#ef4444>NO LUCK THIS TIME</color></size>\n<size=12><color=#DBE2E9>Better luck next time! The odds weren't in your favor</color></size>\n<size=10><color=#9AA297>Try another slot or come back later</color></size>", "Chat.Congratulations": "<size=16><color=#FFD700>JACKPOT WINNER!</color></size>\n<size=13><color=#4ade80>Congratulations on your lottery win!</color></size>\n<size=12><color=#F3E7B3>Prize: </color><color=#DBE2E9>{0}x {1}</color></size>\n<size=10><color=#9AA297>Check your inventory to claim this reward</color></size>", "Chat.LotteryReset": "<size=13><color=#74c0fc>LOTTERY RESET</color></size>\n<size=11><color=#DBE2E9>Your lottery session has been reset successfully</color></size>\n<size=9><color=#9AA297>Reopen the lottery to get fresh rewards</color></size>", "Chat.WipeCooldown": "<size=14><color=#ff6b6b>POST-WIPE LOCKDOWN</color></size>\n<size=12><color=#DBE2E9>Lottery is temporarily locked after server wipe</color></size>\n<size=11><color=#F3E7B3>Time remaining: </color><color=#ff6b6b>{0}h {1}m</color></size>\n<size=9><color=#9AA297>Please wait for the cooldown to expire</color></size>", "Chat.GeneralCooldown": "<size=13><color=#ffd43b>LOTTERY COOLDOWN</color></size>\n<size=11><color=#DBE2E9>You must wait before using the lottery again</color></size>\n<size=10><color=#F3E7B3>Time remaining: </color><color=#ffd43b>{0}</color></size>", "Chat.DailyLimitReached": "<size=14><color=#ff6b6b>DAILY LIMIT REACHED</color></size>\n<size=12><color=#DBE2E9>You've used all your daily lottery attempts</color></size>\n<size=11><color=#F3E7B3>Daily limit: </color><color=#ff6b6b>{0} uses</color></size>\n<size=9><color=#9AA297>Come back tomorrow for more chances!</color></size>", "Chat.SlotCooldown": "<size=13><color=#ffd43b>SLOT COOLDOWN</color></size>\n<size=11><color=#DBE2E9>This lottery slot is temporarily unavailable</color></size>\n<size=10><color=#F3E7B3>Available in: </color><color=#ffd43b>{0}</color></size>\n<size=9><color=#9AA297>Try a different slot or wait</color></size>", "Chat.LotteryInfo": "<size=16><color=#FFD700>LOTTERY SYSTEM INFORMATION</color></size>\n<size=7><color=#9AA297>\n</color></size><size=11>\n</size><size=14><color=#4ade80>HOW IT WORKS </color><color=#9AA297>· </color><color=#DBE2E9>GAMEPLAY GUIDE</color></size>\n<size=12>· <color=#F3E7B3>Select a slot: </color><color=#DBE2E9>Choose from 9 available positions</color></size>\n<size=12>· <color=#F3E7B3>Win rewards: </color><color=#DBE2E9>Each slot has different rarities & drop chances</color></size>\n<size=12>· <color=#F3E7B3>Claim prizes: </color><color=#DBE2E9>Visit inventory to collect your winnings</color></size>\n\n<size=14><color=#4ade80>YOUR STATUS </color><color=#9AA297>· </color><color=#DBE2E9>CURRENT INFORMATION</color></size>\n<size=12>· <color=#F3E7B3>Daily uses: </color><color=#E45858>{0}/{1}</color> <color=#9AA297>| </color><color=#F3E7B3>Tier: </color><color=#DBE2E9>{2}</color></size>\n<size=12>· <color=#F3E7B3>Status: </color><color=#E45858>{3}</color> <color=#9AA297>| </color><color=#F3E7B3>Inventory: </color><color=#DBE2E9>{4} items</color></size>\n\n<size=14><color=#4ade80>RARITY SYSTEM </color><color=#9AA297>· </color><color=#DBE2E9>DROP CHANCES</color></size>\n<size=12>· <color=#9AA297>Common: </color><color=#DBE2E9>80%</color> <color=#9AA297>| </color><color=#4ade80>Rare: </color><color=#DBE2E9>60%</color> <color=#9AA297>| </color><color=#e599f7>Epic: </color><color=#DBE2E9>40%</color></size>\n<size=12>· <color=#FFD700>Legendary: </color><color=#DBE2E9>20%</color> <color=#9AA297>| </color><color=#ff6b6b>Ultra Rare: </color><color=#DBE2E9>5%</color></size>\n<size=7><color=#9AA297>\n</color></size><size=11><color=#DBE2E9>Try your luck with </color><color=#FFD700>/lottery</color><color=#DBE2E9> command!</color></size>", "Chat.CommandClaimed": "<size=13><color=#4ade80>REWARD CLAIMED</color></size>\n<size=11><color=#F3E7B3>Executed: </color><color=#DBE2E9>{0}</color></size>", "Chat.CommandExecuted": "<size=16><color=#FFD700>COMMAND REWARD!</color></size>\n<size=13><color=#4ade80>Congratulations! Your reward has been processed!</color></size>\n<size=12><color=#F3E7B3>Reward: </color><color=#DBE2E9>{0}</color></size>\n<size=10><color=#9AA297>Commands executed automatically</color></size>", "Generic.UnknownItem": "Unknown Item" }