Simulator & tycoon kit
On this page
Boost chips and HUD Bindings
The little chips at the bottom right of a simulator HUD show a player's boosts: +150% cash, the Friend Boost, luck, the daily reward day. Each one has a tooltip and does something when clicked. The same Extra, HUD Bindings, lets one line of code change any HUD widget. Its id in GameData is hud_bindings.
Turn it on#
- On the website, switch on HUD Bindings in your design's Extras panel, then export and install. It doesn't need Data Saving.
- Open ServerScriptService > BloxGame > GameData and find
GameData.Features.hud_bindings. Thechipslist has a row per chip. - To make the VIP chip sell your VIP pass, paste the pass id.
- Press Play. The chips show live numbers; hover over one (or hold it on a phone) for its tooltip.
The multiplier: what "+150%" means#
- Cash starts at 100%. A player who earns 2.5 times the cash sees +150%.
- The chips count every boost in the game once: VIP and other game passes, Roblox Premium, the Friend Boost, timed boosts, rebirths and the Index boost. It's the same number clicking, tycoons and offline earnings pay with.
cashCurrencyis the currency they measure (your first currency to start).
The chips#
chips = {
{ element = "AttrPlus", tooltip = "VIP Boost", shows = "vip", text = "",
click = "pass", target = "VIP" },
{ element = "AttrFriends", tooltip = "Friend Boost", shows = "friends", text = "",
click = "invite", target = "" },
{ element = "AttrDaily", tooltip = "Daily Rewards", shows = "daily", text = "",
click = "open", target = "Daily" },
{ element = "AttrLuck", tooltip = "Luck", shows = "luck", text = "",
click = "none", target = "" },
{ element = "AttrAds", tooltip = "Watch a video for a reward", shows = "text", text = "Claim!",
click = "event", target = "WatchAd" },
},| Field | What it means |
|---|---|
element | The chip's id in your design. A chip your design doesn't have is skipped. |
tooltip | The text shown on hover or a long press. |
shows | "cash": every boost together. "vip": game pass boosts. "premium": Roblox Premium. "friends": the Friend Boost. "boosts": timed boosts. "rebirths", "index". "luck": +100% = double luck. "daily": the Daily Rewards day. "text": the fixed text. |
text | The fixed text, when shows = "text". |
click | "none": only the tooltip. "pass" / "product": a Robux prompt for target. "open": opens the screen target. "invite": Roblox's invite-friends window. "event": fires the design event target. |
target | What the click uses: a name in GameData.Passes / GameData.Products (or an id), a screen id, or an event name. |
A chip of your design that has no row here is read from its own words (its id, label, tooltip and icon): a "Friend Boost" chip shows the Friend Boost, a "Luck" chip the luck, a "Calendar" chip the Daily Rewards day. A chip it can't read keeps its design text.
Notification badges#
A menu button's red badge (the "!" on Rebirth, the "3" on Quests) shows what the game says, never the design's sample: the number of finished quests waiting to be claimed (a Quests section on the button's screen), "!" when today's daily reward is ready (a Daily section) or when the player can afford a rebirth (a Rebirth screen). Gifts, spins and Index milestones show their own count. A badge with nothing behind it doesn't show. Your own scripts can set one with ui:setBadge("btn_shop", 2) (false hides it).
The VIP chip: sell your VIP pass#
- Create the game pass in the Creator Hub (how).
- Paste its id into its entry in
GameData.Passes, for exampleVIP = { id = 1234567890, ... }. - The chip's
targetis the entry's name:"VIP". Called something else, like["2x Coins"]? Settarget = "2x Coins", or paste the pass id as the target.
For the chip to show a boost, the pass needs a multiplier perk, like perks = { multiplier = 2, currency = "coins" } (the Game Passes Extra gives it). With the VIP Pass Extra on, target = "VIP" also finds its pass id.
Drive any HUD widget with one attribute#
Every HUD widget of your design follows a player attribute called Hud_ + its id or type. Set it from any server Script:
player:SetAttribute("Hud_Objective", "Collect 10 coins")
player:SetAttribute("Hud_Counter", "3/10") -- a counter with its goal
player:SetAttribute("Hud_Meter", 0.4) -- 40% full
player:SetAttribute("Hud_BestTime", "1:05") -- the Stats row "Best Time"
-- on workspace: every player sees it
workspace:SetAttribute("Hud_Timer_EndsAt", os.time() + 60)- The second Counter is
Hud_Counter2, and so on.Hud_<name>_Visible = falsehides a widget. - A player's own attribute wins over the one on workspace.
- In Studio, Output lists every widget of your design and its attribute when you press Play.
- No code at all: a row in
bindingscopies a leaderstat, attribute, currency or stat into a widget every second, like{ widget = "Counter", source = "clicks", format = "short" }. - A data widget nothing drives (no system writes it, no
Hud_attribute, still the design's sample) is hidden after a few seconds, so a made-up number never looks real. It comes back as soon as something drives it.
| Setting | What it means | Starts as |
|---|---|---|
bindings | Widgets fed from a stat. Empty source = only the Hud_ attribute. | one row per widget |
everyoneFromWorkspace | Hud_ attributes on workspace show for every player. | true |
npcPrompts | A map NPC whose role is a game function (shopkeeper, merchant, egg seller, quest giver, trainer, codes, daily...) gets an E prompt (a tap on phones) that opens your design's matching window: the Shop, the Eggs, the Quests. Only when your design has that window; townsfolk, guards and NPCs that already talk get none. | true |
statsRows | Stats and Profile rows follow Hud_<label>. | true |
listWidgets | List the widgets in Output (Studio only). | true |
sourceSeconds | How often bindings are copied. | 1 |
hideUndriven | Hide a Counter, Meter, Timer, Objective, Stamina bar, quest tracker or score nothing in the game drives (and blank a Stats / Profile row nothing fills with a dash). | true |
autoRows | A Stats / Profile row with no bindings row shows the player's currency, leaderstat, attribute or stat with its label ("Gold", "Wins", "Level"). | true |
Troubleshooting#
- "This isn't for sale yet." on a chip: its
targetdoesn't match an entry with a real id. Output saysthe chip "AttrPlus" sells "VIP", which has no id in GameData yet. - "You already have it!" The player owns that pass already.
- A chip keeps its design value: its
elementisn't the chip's id in your design, or the chip has no row inchipsand its words don't say what it shows. - A HUD widget disappeared a few seconds after joining: nothing in your game drives it, so it was hidden instead of showing the design's sample. Set its
Hud_attribute (or add abindingsrow), or turnhideUndrivenoff. - The Ads chip does nothing: it fires the event
WatchAd, which your own code handles. Setclick = "none"or hide the chip inGameData.UIif you don't use it. - The +% seems too big:
shows = "cash"adds every boost together. Pick one source ("vip","friends"...) to show only that. - A
Hud_attribute does nothing: check its name against the list in Output (capitals don't matter). Set on the client, it only shows for that player.