#✅ | a
1 messages · Page 1 of 1 (latest)
To recreate the highlighted item name you need to treat it as a JSON component, so only a Single-Line Text element can parse it.
- Add a Single-Line Text element near your hotbar.
- Set its content to the slot display name placeholder for the selected slot, e.g.:
{"placeholder":"slot_item_display_name","values":{"slot":"{"placeholder":"active_hotbar_slot"}"}} - Right-click the element → Loading Requirements → add Is Number and point it at
highlighted_item_time; set it to show only when the value is> 0. That way the name only appears while vanilla would normally show it. - Adjust position/opacity as needed—fading doesn’t work because the placeholder returns JSON text, but you can animate the single-line text element itself if necessary.
You can read more about the slot/name placeholders and Single-Line Text element on the placeholder page: FancyMenu placeholders
tell me how to make it fade
You can still fade that Single-Line Text, even though it shows a JSON component. Right-click the element → Fading → enable it and pick the fade duration you like. Now the text will cross-fade whenever it appears/disappears (the loading requirement with highlighted_item_time > 0 that I mentioned earlier will trigger it only while vanilla wants it).
If you need full manual control, use the Opacity option (same menu) and drive it with a variable that a Ticker updates—see the Element Opacity guide for the built-in fade and placeholder-powered opacity tricks.
yea give me a opacity variable
You can control the fading by letting a Ticker drive a FancyMenu variable and then using that variable in the Single-Line Text’s opacity.
- Create a variable (e.g.
highlight_opacity) via Customization → Variables → Manage Variables and set it to0. - Add a Ticker element to your layout. In its action script, every tick:
- Read
highlighted_item_time(placeholder). - If it’s
> 0, set your variable to1; otherwise set it to0. - Optionally wrap that logic in a small
calcto interpolate (e.g. add/remove0.1per tick to smooth the fade).
- Read
- On your Single-Line Text element, enable Opacity and paste
{"placeholder":"getvariable","values":{"name":"highlight_opacity"}}. - Keep the loading requirement around
highlighted_item_time > 0so it only shows when the vanilla highlight would show.
For the ticker logic (increment/decrement) and variable usage, see the Variables guide and the Element Opacity guide.
tell me what to do step to step in the action script UI
Here’s how to build the ticker action script step-by-step so the highlight_opacity variable fades in/out:
-
Create the variable
- Open Customization → Variables → Manage Variables, add
highlight_opacity, and set it initially to0.
- Open Customization → Variables → Manage Variables, add
-
Add a Ticker element (tick delay ~50ms is fine) and right-click it → Edit Action Script.
-
Add an IF statement:
- Inside the tick script, add IF.
- Give it the Is Number requirement.
- Set “Number” to
{"placeholder":"highlighted_item_time"}and “Compare With” to0with modebigger-thanso it only runs when the vanilla highlight is active.
-
Inside the IF add a Set Variable Value action:
- Value:
highlight_opacity:{"placeholder":"minnum","values":{"first":"1","second":"{"placeholder":"calc","values":{"decimal":"true","expression":"{"placeholder":"getvariable","values":{"name":"highlight_opacity"}} + 0.1"}}}} - This raises the variable toward
1, capped byminnum.
- Value:
-
Append an ELSE to the IF and add another Set Variable Value action there:
- Value:
highlight_opacity:{"placeholder":"maxnum","values":{"first":"0","second":"{"placeholder":"calc","values":{"decimal":"true","expression":"{"placeholder":"getvariable","values":{"name":"highlight_opacity"}} - 0.1"}}}} - This brings it down toward
0, floored bymaxnum.
- Value:
-
Apply the variable to the Single-Line Text:
- Right-click that element → Opacity → Set, and paste
{"placeholder":"getvariable","values":{"name":"highlight_opacity"}}.
- Right-click that element → Opacity → Set, and paste
-
Keep the loading requirement
highlighted_item_time > 0so the name only shows when vanilla would show it; the ticker now smoothly ramps the opacity over time.
You can read more about combining variables and actions in the Variables guide and about driving opacity via placeholders in Element Opacity.
i cant edit an Append an ELSE
When you open the Ticker’s action script and you already have an IF entry, you have to select that IF line first (just left-click it so it’s highlighted). Once it’s selected, the toolbar at the bottom shows “Append ELSE Statement” (“Append ELSE-IF” etc.). Click “Append ELSE Statement” while the IF line is selected and it will nest a new block automatically.
If you don’t have it selected, the button is greyed out. After the ELSE appears, you can add the second Set Variable Value action inside it just like before.
Need a visual refresher? The Variables guide explains the workflow in more detail: Variables guide.
no i cant edit that else statement to add a Set Variable Value there
Once the ELSE block exists you need to select it (left-click the ELSE entry so it’s highlighted in the action list). After it’s selected, click “Add Action” at the bottom to insert the Set Variable Value action inside that ELSE block. If you add the action while the IF (or the root script) is selected, it will end up outside the ELSE.
So the workflow is:
- Click the ELSE line so it’s highlighted.
- Hit “Add Action” → Set Variable Value.
- Enter your value (e.g.
highlight_opacity:{"placeholder":"maxnum",...}) - Save.
If the ELSE is collapsed, double-click the little arrow next to it first so you can see its contents before adding the new action.
it made my game refresh alot then crashed. now im unable to edit the layout and had to disable it
Oh no, that crash sounds rough—especially if it keeps refreshing and then locks you out of the editor. I can’t debug crashes myself, but if you upload your <minecraft_instance>/logs/latest.log (the full newest log, not just a crash report) and then press Request Human Help so a human can analyze it, they’ll be able to dig into what’s causing the reload loop. Until then it’s safest to keep the layout disabled to avoid the crash.
how can i edit the layout with the ticker turned off, i dont want it tocrash
To stop the ticker from running while you edit, temporarily disable that layout before opening the editor:
- Open the pause menu and click the FancyMenu menu bar → Customization → Layouts → Manage Layouts.
- In the layout list, find the HUD layout with your ticker and toggle it off/disabled (you can also use the “Enable/Disable” checkbox if it’s visible).
- With the layout disabled it no longer applies, so the ticker can’t run and crash the game while you work. You can now re-open the layout for editing (the editor still works in that state) and make your changes safely.
- When you’re happy with the changes, re-enable the layout again.
If the crash keeps happening even after you disable the layout, please upload your <minecraft_instance>/logs/latest.log (not a crash log), press the Request Human Help button, and let a human look at the log—AI support can’t debug crashes.
can u remove the ticker form this file
I can’t open that file type here—if you need a human to remove the ticker from it, please press the Request Human Help button so someone can take a look.
are there other methods, i just need the text to fade out every 40 ticks when a new item is held, i hate how spiffy makes u recreate the vanilla hud rather than supplying it to you
You can get the text to fade “automatically” without a ticking loop by just using the Single-Line Text element’s Opacity field and feeding it a placeholder that maps highlighted_item_time to 0…1.
- Keep your existing loading requirement so the element is only shown while
highlighted_item_time > 0. - Instead of a ticker, right-click the Single-Line Text → Opacity → Set and paste something like:
That way the opacity ramps up (and down) within 40 ticks. Adjust the expression to suit the fade speed you want.{"placeholder":"calc","values":{"decimal":"true","expression":"min(1, {"placeholder":"highlighted_item_time"} / 40.0)"}} - If you still want a smoother fade-out after the placeholder hits zero, you can combine that with the element’s built-in Fading option (right-click element → Fading) so it cross-fades once the requirement stops being true.
This avoids having a ticker constantly running and triggering crashes. If you’re curious about how to drive opacity with placeholders or variables in more complex ways, the docs on Element Opacity and Placeholders are good references.
itsjut not working
This support thread has reached the maximum limit of 20 messages. To continue getting support, please start a new thread by asking your question in the #spiffy-help channel.
Creating a new thread will help keep conversations organized and ensure you get the best support possible.
This support thread has been marked as solved by @ancient igloo.
The AI helper is now disabled, but you can still continue the conversation if needed. Thank you for using our support system!