#JSON-UI General
1 messages · Page 22 of 1
it has only additions, and no subtractions for "#line_length"?
Hi friends ,I want to learn how to make ui can you please help me. And any youtuber or video/tutorial link on ui
i think i managed to make it working, kind of
it works very randomly, and sometimes it didn't want to update at all
and very laggy
hmmm, maybe sometime I'll try an experiment, right now I'm making a video so I don't have time to try it yet
"property_bag": {
"force_update": true
},
i don't think this could work
it's too heavy
i think the game tried to infinitely add 1 until 2147483647, then overflowed and back to current length, which is not performant at all
my json ui
Good
How can I write text to the tooltip lore section with json-ui?
can json ui remove the space between words?
for example using a script that add Arabic support
text appear like this
"تـ ـجـ ـربـ ـة"
but it should look like this
"تجربة"
so can json ui remove that space??
how can i center a text in json ui?
"anchor_from": "center",
"anchor_to": "center",
right?
"long_form_panel": {
"type": "stack_panel",
"size": [
"100%",
"100%"
],
"orientation": "vertical",
"layer": 0,
"anchor_from": "center",
"anchor_to": "center",
"controls": [
{
"hud_text": {
"type": "image",
"texture": "textures/ui/test1",
"anchor_from": "center",
"anchor_to": "center",
"size": [ 250, 110 ],
"offset": [ 10, 0 ],
"bindings": [
{
"binding_type": "view",
"source_property_name": "((#form_text = 'This text should be centered'))",
"target_property_name": "#visible"
}
]
}
}
]
}
I cant get the text to be centered at all
you cannot center elements inside stack panel??
if I remember correctly
if you want, wrap that element inside some panel and then add anchors to its child
doesn work
or use "use_anchored..." I dont remember but this may allow anchoring
use_anchored?
so then you dont need to wrap each element inside empty panel
just search for this on wiki
im so confused rn
Hows abt changing long form title font?
or
"use_child_anchors": true
and dont anchor at all 
"long_form_panel": {
"type": "stack_panel",
"orientation": "vertical",
"use_child_anchors": true,
"controls": [
{
"hud_text": {
"type": "image",
"texture": "textures/ui/test1",
"size": [ 250, 110 ],
"offset": [ 10, 0 ],
"bindings": [
{
"binding_type": "view",
"source_property_name": "((#form_text = 'This text should be centered'))",
"target_property_name": "#visible"
}
]
}
}
]
}```
all you need
size defaults to "100%", "100%", and anchors default to center
no
"middle" does not exist
"top_left"
"top_middle"
"top_right"
"left_middle"
"center"
"right_middle"
"bottom_left"
"bottom_middle"
"bottom_right"
still wouldn't work
can't offset in stack panels unless the child is nested
and i believe children in stack panels default to top left
I'm helping u bro
real fact checked 2024
no ur not
anyone has a modal ui that places all the feilds nicely
Yuh
no
Trust
How can I make the action bar display anywhere I want on the screen?
that will just center the text body not the text it self
"text_alignment": "center" work he just need to put it in the right place
@opal aurora have you been able to get the \n?
Does anyone know a way to set a specific panel size based on a title of a server_form?
{
"binding_type": "view",
"source_property_name": "((#title_text = 'Furniture Venture'))",
"target_property_name": "#visible"
},
kind of, but way too laggy
ouh
does anyone know how to fix this problem? https://discord.com/channels/523663022053392405/1267781920218026046
Dawggg. You've spent more time asking for help than actually trying to learn something 😭
because i dont think a image is gonna help the json ui man
help
Doesn’t the text default to center? Or is it left i forgot
the default is left.
minecraft is strange
left is default in a lot of games an apps
Chat please everyone provide me the source code to everything yall have ever worked on. 😢😢😢😢😢😢😢😢😢🙏🙏🙏🙏
me too pls 😢😢😢😢🙏🙏🙏🙏
Hey no stealing 😡😡
here ya go:
let’s goo!!
this is more of a jsonUI thing
than a scripting thing
system.runInterval(() => {
world.getAllPlayers().forEach(player => {
let score = world.scoreboard.getObjective("coins").getScore(player.scoreboardIdentity).toString();
player.onScreenDisplay.setTitle(`actionbar3 §g ${score}`);
});
});```
but the problem here
if I do title @a title actionbar3 balls
yk
it works perfectly fine
u have to disable the default title
but like
or only show when it’s flagged
I want it ,_ ,
so basically
title @a title title balls
for example
what exactly is ur issue
two issues
- only the host can see the the UI
(I need a test dummy to confirm however)
- the default title is showing up
^
yeah so you see
I don't know how do you that!!!1
uh
I'll continue like
trying to find solutions
but if you could just like
work your magic
and explain how you did it
🙏
I just started on json ui, and copied vanilla _global_variables _ui_defs, and hud_screen, but for some reason a missing texture appears in the middle of the screen, how can i fix it?
Don't crosspost pls 🙂
Can someone help https://discord.com/channels/523663022053392405/1267864544274026619
The texture path is not correct or the texture is missing
yeah but exactly what is the texture, its not paper doll, its not coordinates, what could be
Just give me the code
taking that as a no
here's my code:
|| { "nope": "this is intentional" } ||
I said to give the code on which you have the missing texture
hud_screen.json
thats the problem i took the whole vanilla file
let me delete code that is not edited
Yeah its hud screen the problem im sorry
It's ok
What texture packs do you have activated? @digital blade
only the one that has the addon
Ok
it still shows me that missing texture on the middle of the screen:(
Probably missing texture
What did u even add in hud screen?
just edit the things you need in hud screen
theres some sort of bug with a namespace
idk which one but its somewhere in this discord
I didnt know that was possible, ty
well i didnt tried it
yeah even if u remove it from the file itll still work properly because you didnt edit it or hide it
well i have a question
how do i give jump between lines in actionbar?
\n
i have to edit something on the hud screen?
no
but for example command blocks dont do it?
has to be titleraw

Hey and look i move the actionbar to the left with [0, "43%"] but when someone has de game on another scale it looks weird
its there a way to anchor it to the middle right of the screen?
yeah, so children are anchored inside of the parent
so anything you put in controls will follow the parent
ok i have tu put center on text
Are you able to share it? I might improve
{
// this code was meant to return only one line of text from a multiline string,
// and this needs to be repeated multiple times to extract all lines from a multiline string
"example": {
"type": "label",
"text": "#text",
"property_bag": {
"#line_length": 0
},
"bindings": [
{
"binding_type": "view",
"source_property_name": "#line_length",
"target_property_name": "#line_length"
},
{
"binding_name": "#hover_text",
"binding_type": "collection",
"binding_collection_name": "$item_collection_name"
},
{
"binding_type": "view",
"source_property_name": "(#hover_text)",
"target_property_name": "#t"
},
{
"binding_type": "view",
"source_property_name": "(('%.' + (1 + #line_length) + 's') * #t)",
"target_property_name": "#line_check"
},
{
"binding_type": "view",
"source_property_name": "(not ((#line_check - '\n') = #line_check))",
"target_property_name": "#is_new_line_found"
},
{
"binding_type": "view",
"source_property_name": "((#is_new_line_found * -1) + ((not #is_new_line_found) * 1) + #line_length)",
"target_property_name": "#line_length"
},
{
// here for overflow-safety, remove at risk
"binding_type": "view",
"source_property_name": "((#line_length > 100) * 100 + (#line_length < 101 and #line_length > 0) * #line_length + (#line_length < 0) * 1)",
"target_property_name": "#line_length"
},
{
"binding_type": "view",
"source_property_name": "(#line_length * #is_new_line_found)",
"target_property_name": "#line_value"
},
{
"binding_type": "view",
"source_property_name": "('§z[' + #line_value + ' / ' + #line_length + '] ' + (('%.' + #line_length + 's') * #t))",
"target_property_name": "#text"
}
]
}
}
can we like write our own code
no offence but this chats kinda sometimes pasted code here
you can’t necessarily learn anything if you just grab code
hi json ui-ers
is there a way to change size on a panel?
so like
setting one of the axis to a variable
without replacing the entire size array
Does anyone know how to use the edit_box in JSON UI?"
"text": "('You are NOT standing at: ') + #text",
"shadow": true,
"bindings": [
{
"binding_name": "#player_position_text",
"binding_name_override": "#text",
"binding_condition": "always_when_visible",
"binding_type": "global"
}
]```How do I mention the variable there in the "text" 😭
When I open it in-game, it shows the string how it is.
Is it possible to like, make a label turn different colors when at a specific coordinate?
Use, "font_type": "Minecraft Ten"
hey guys how would i auto fit the width based on the text content inside?
"text" can't include a binding formula
here's my fixed version:
"text": "#text",
"shadow": true,
"bindings": [
{
"binding_name": "#player_position_text",
"binding_condition": "always_when_visible",
"binding_type": "global"
},
{
"binding_type": "view",
"source_property_name": "('You are NOT standing at: ' + #player_position_text)",
"target_property_name": "#text"
}
]
bruh what's that
.
use duplicated text panels with different source properties
Hmmm
Me genuinely tweaking after getting image of vector instead of an answer to my question:
did you solve my problem
not yet i was in school this week
@opal aurora I just remembered, so you need the line from the top, right? just cut it using size, I did it in the resource 'unobstructive item name' maybe it can cut another line with the cut text
but I don't know whether other text that becomes '...' can still be detected or not
I think it could use a property bag
You cant do #color
the ... part is only after displaying, there's no change to string
although you can use #color, you can't customize how it works, or anything like that, for now
thats wha i mean
§
ouh, I see
but what if you want custom color?
I only know how to use §
Is possible to remove this space on actionbar?
God damn json ui is impossible for me 😭
I'm trying to show a panel when there's a action bar text "Hey." I have no idea how ;(
chat i need help again
{
"third_party_server_screen": {
"modifications": [
{
"array_name": "bindings",
"operation": "insert_back",
"value": [
{
"binding_name": "#title_text"
}
]
},
{
"array_name": "variables",
"operation": "insert_back",
"value": [{
"$screen_content": "a@server_form.afr_screen_content_basic"
}]
}
]
}
}
inside the same file i have a panel named afr_screen_content_basic
and it displays a label just for testing
but for some reason it still display the regular screen
How should #form_button_length be used? Is it '4' or 4?
How do I make detect when it is standing in the cooordinate
custom slider, textfield, and toggles
check if position text is equal to a specific text (not recommended because this method does not support localizations)
w ui
bonito
im experimenting w stuff again
do you all think this would work
it did not, in fact, work
YOOO! THAT'S COOL.
you can use this?
nope, didn't work
thought it'd work since there's "binding name" and "control name"
just override that one instead, for example: "$screen_content": "server_form.new_screen_content",
i don't wanna override
i wanna use modifications because i have seen it done before
specifically on chest_screen
but for some reason here it doesn't
uh, both do the same thing
yeah, but modifications iirc can be made conditional
what i can do is like
manually add the control
so do "array_name": "controls"
but it looks ugly, no animation
and now it's complaining about something else
lovely
uh, animations
got this error when replacing the $screen_content using modifications
this is the entire file
{
"namespace": "server_form",
"new_screen_content": {
"type": "panel",
"size": [
50,
50
],
"layer": 20,
"controls": [
{
"type": "label",
"text": "test test test test"
}
]
},
"third_party_server_screen": {
"modifications": [
{
"array_name": "bindings",
"operation": "insert_back",
"value": [
{
"binding_name": "#title_text"
}
]
},
{
"array_name": "variables",
"operation": "insert_back",
"value": [
{
"requires": "('a' = 'a')",
"$screen_content": "server_form.new_screen_content"
}
]
}
]
}
}
the requires thing being a = a is just for debug
dont u have to call it?
like @server_form.third_party_server_screen
then modify it
no, you don't need to add '@'
well u arent calling the screen then
ah, see new_screen_content controls
yeah even adding "@" it breaks
yes u are overriding it, but the default one is called from common
[email protected]_screen
the "test test..." part, missing element name and properties
and then i guess for base screen u need button mappings?
huh
?
ohhhh
OHHHH
great, mc crashed
@tranquil void json { "namespace": "server_form", "new_screen_content": { "type": "panel", "size": [ 50, 50 ], "layer": 20, "controls": [ { "label": { "type": "label", "text": "test test test test" } } ] }, "third_party_server_screen": { "button_mappings": [ { "from_button_id": "button.menu_cancel", "to_button_id": "button.menu_exit", "mapping_type": "global" } ], "modifications": [ { "array_name": "bindings", "operation": "insert_back", "value": [ { "binding_name": "#title_text" } ] }, { "array_name": "variables", "operation": "insert_back", "value": [ { "requires": "('a' = 'a')", "$screen_content": "server_form.new_screen_content" } ] } ] } }
works for me!
that just overrides the entire thing
then u have to extend it right?
wym
{
"third_party_server_screen": {
"modifications": [
{
"array_name": "bindings",
"operation": "insert_back",
"value": [
{
"binding_name": "#title_text"
}
]
},
{
"array_name": "variables",
"operation": "insert_back",
"value": [
{
"requires": "('a' = 'a')",
"$screen_content": "server_form.new_screen_content"
}
]
}
]
}
}
modifications doesn't override anything but it allows you to remove and add stuff without affecting compat
can you have more then 1 server_form file?
huh
oh oops, it was throwing errors before i added it
but now it doesnt
anyw back to developing stuff
"('a' = 'a')" can be replaced with just true
or can i work on 2 different ui's in the server_form file?
may i ask what the point is?
"API"
just flag diff forms
it allows you to add custom elements to forms
based on title
yeah
that's what it does
except i need to override the entire main panel first
which is why i did that
anyw
the first one, extended screen content, enables the elements and that's it
so it allows you to resize the form and add images/labels to action forms
you can't use bindings in variables
why not just do this
i can do whatever i want with forms
im using it on requires
add labels, images resize etc..
not either, "bindings" can only be used in "bindings", and properties to override, like #offset, #text, or #visible..., can't be used in "variables"
use this one instead, combined with "factory" to reduce heaviness
i'll see
so i can't use bindings in requires
yes, you can't use in "requires", but can assign binding strings to variables
u cant use bindings in variables i think
basically the reason im doing it is like
i assume you hardcoded those UIs
wdym binding strings
wym?
the UIs you added like the pickaxe upgrade screen are hardcoded
so you can'r dynamically add the elements
you have to specify which UI to display from the title
i can
its just a nested panel
with things inside of it grabbed from other places
like 200 lines i think only
like heres the start of one
just import the title, if i want to add the body i can
i can change everything on the title text
do you uhh
understand what i even meant
i'll explain it better in a bit cause i think i'm confused
not really tbh
{
"example": {
"type": "label",
"text": "#text",
"$use_this_binding|default": false,
"variables": [
{
"requires": "($use_this_binding)",
"$text_binding": "#this_binding"
},
{
"requires": "(not $use_this_binding)",
"$text_binding": "#that_binding"
}
],
"bindings": [
{
"binding_name": "$text_binding",
"binding_name_override": "#text"
}
]
}
}
do u mean modifications?
i see
the part #this_binding is an entire string
ill dm it to you to explain it
would this work
{
"third_party_server_screen": {
"modifications": [
{
"array_name": "bindings",
"operation": "insert_back",
"value": [
{
"binding_name": "#title_text"
}
]
},
{
"array_name": "variables",
"operation": "insert_back",
"value": [
{
"$current_title": "#title_text"
}
]
},
{
"array_name": "variables",
"operation": "insert_back",
"value": [
{
"requires": "(not(($current_title - 'afr:e') = $current_title))",
"$screen_content": "server_form.extended_screen_content"
},
{
"requires": "(not(($current_title - 'afr:f') = $current_title))",
"$screen_content": "server_form.freeform_screen_content"
}
]
}
]
}
}
or do i have to add the current_title variable to the definition from the start
yeah i need to insert it
no
only binding string comparisons in "requires" are allowed, for example: "requires": "($text_binding_name = '#sample_binding')",, when this #sample_binding is a literal string (# included)
im confused like always
so if i first insert the binding
i have this variable
"$afr_current_title|default": ""
then i do this
{
"array_name": "variables",
"operation": "insert_back",
"value": [
{
"$afr_current_title": "#title_text"
}
]
}
can i use that variable on the requires of other variables
or would it just give me nothing
i tested it and it gave me nothing
im like really bad w jsonui stuff
in simpler terms
#title_text is a hardcoded binding and i want to check it's contents inside requires
yeah i'm about to give up
so, sorry for insisting with getting help, but how would i do what im trying to do then
I'm trying to check if the first 5 characters of the "#title_text" binding are "afr:e"
and if they are, then i change variables
man i hate this
no, you can't do this
bindings can only change bindings and variables can change bindings but not vice versa
so first i'd have to assign the binding to a variable i assume
you can use #visible as a workaround
i don't want to use #visible because it disables the animations
basically
i can just insert everything as a new panel
like, if binding value equal to a title text, then show this form, else show another form
but it removes the animation
not "disable"
you can still add animations to it, if you specify "animation_reset_name": "screen_animation_reset" to form panel
here's how: set $screen_animations of the entire screen to either empty, or only "fade/alpha" animations, then, in each form content, add "animation_reset_name": "screen_animation_reset", and add custom "anims" to them
(animations i used here are from vanilla, only play when enter/exit screen)
meh im probably just going to give up
does the UI have a set max size
i think i figured a way to do it
element's "max size" is defaulted to your set "size"
im asking like
is there's a default max size for the ui in general
cause doing math the UI is 480x270px
no, "100%" is not always a choice if parent's element size is not set to entire screen area
yeah im aware
lemme reword
Is the screen size a set value
or does it change with the game's dimensions
so if you have a phone is the UI size different from desktop
there's no specific value, entire screen is 100%
would somethign like "#size_binding_x": "200px / 100%x" work
since size_binding is relative to the parent size
you can't do that
sad
size bindings only accept float numbers
you're not going to believe why i'm dividing the smaller number over the big number
i asked if the screen had a set size for a reason
i'm going to change the size binding later via bindings
so i need to set a default value
either way that's not my problem rn im dealing w something else
thx for all the help btw
"long_form_dynamic_buttons_panel": {
"type": "stack_panel",
"size": ["100% - 4px", "100%c"],
"offset": [2,0],
"orientation": "vertical",
"anchor_from": "top_middle",
"anchor_to": "top_middle",
"collection_name": "form_buttons",
"controls": [
{
"[email protected]_button": {
"collection_index": 0
}
}
],
"bindings": [
{
"binding_type": "collection_details",
"binding_collection_name": "form_buttons"
}
]
}```
guys I wanna ask is it possible to use this method to set the buttons property collection index which is >7 or something? or I must set for each?
🤔
heyall hwo do I convert a string/number to a float
the problem
{
"binding_type": "view",
"source_property_name": "(((((('%.10s' * #title_text) - ('%.7s' * #title_text)) * 1)) or 1) + 0.0) / 2",
"target_property_name": "#size_binding_x"
}
#title_text is always "afr:e:0225:0200:Text"
when i do "/ 2" it gives me 0
when i don't do "/ 2" it gives me 1
Hello, quick question. Is json ui responsive? Similar to what you can do with html and css like that? Or it just depends on which device you put created it? Sorry for this question😅
nuh uh its not css 😭
You can't check the device size but you can use percentages
e.g 100%
using cutting method
i need a better text truncating method for every possible "position text" style
uh
What is that
I'm too lazy to explain. You can go here to see the source code https://discord.com/channels/1117649633376747550/1173284342957604965
What is $child_control?
why does it say "no access"
uh, I forgot, go to my server (link in my Discord profile)
How do I put a textField at the bottom of the form(Pic 1), and it does not move depending on what is above it(Pic 2)?
How would I be able to get a prefix such as "§d§e§s§c" and have text in a button (server_forms) and edit the text after the prefix and make it smaller or something? Example: "Warps\n§d§e§s§cWarp Around!" but "warp around!" is smaller text than Warps
What have I done wrong? My game keeps crashing whenever I open the form.
uh how can i explain that, de-arranged the codes?
How can I make the scroll bar at the bottom when opening the form?
im making a plugin to display random images of dogs using an open API and displaying them via form buttom images
could someone please point me to a jsonui resourcepack to display this image across the whole form
< 3
Do you mean as background ?
my own learning does not seem to be working 😭
I would just like to display the button image as the whole form
So background?
well why u using buttonIcon for that
There’s a file called form background or somewhat
a random image every time
you need a solid file
is uses the "message" string
to get an image
nvm i got it lol
Nice 😂
Do you know anything about this?
Lol
Can anyone tell me if I can make my element not reset using title? Like, it ignores any other string and stays on the screen
can anyone help me with my notification that uses chatsceen to activate?
mine is so fucked up right now 😭
hello, can I add a custom color? like §a
how do i go on and find JSONUI developers?
how do i get the middle of the screen as the X value in an offset animation
for the in-game chat for example
Me
can someone help help me with this its really weird and i havent changed any forms:
don't cross post
I've taken a look through the Bedrock wiki about Ore-UI but it's still pretty confusing for me. Does anyone have a tutorial that I could take a look at?
Ore ui isn't out lol
yeah you have to use json ui
ore ui is gonna be out in around 3 years
give or take two months
?
No you cannot, you can add a "custom font" with glyphs but idk if that's worth it for you
no, you can only use any of 26 available colors, or you can use multiple text elements with different "color" properties
for ease of reading, the first one feels better
Hi how to decode javascript
How can I make my server form button a pressed animation?
It's a custom button, and it only has hover
But not the pressed animation, anyone that can give me an example?
why my hotbar are breaking in The Hive server?
I know it is not available yet, but what is so special about Ore UI?
@tropic badger isn’t that the UI you made??
Exactly what I was thinking 😂
he stole their UI i think
@zenith vortex
not sneaky
Blud couldn't wait to get his hands on it 💀💀
@broken trail this is also yours if I recall lmao
😔
Lmao
@zenith vortex next time you post skidded stuff please clean that monitor 💀
Yeah learn by putting in the work and not by skidding a pack and then proceeding to share it in a server where people will notice
Man
Do not steal anything, nor take anything, everything has been recreated from scratch by seeing an image..
And if I had the package I wouldn't have asked.
Xd
💀 ?!?
@chilly yacht didnt u just confirm with the staff at the server
i think bros not telling the truth or somethin @chilly yacht
this is definitely json-ui moment of all time
ong
I honestly don't know what's happening anymore xd
A
bros lying
“i want to learn” then “i made it from scratch”
LMAOAOA
😂😂😂😂😂
Mmm not
mmm yes
if you’d like i can verify even more?
i can go ask for the file names and namespaces
Well i’m asking now
So hopefully you’re not lying!
Even if you didn’t steal the code, you still stole the design 🙂
😬
I don't even know the package
like @left yew said, we should just ban all code stealers
bro's legitimate a liability
The studio they were made for is the founder of origin realms LMAO
Huh how did he stole it?
Piston Solutions?
No, it’s some like after school program or something
Like 60+ people work on each project
oh so basically a marketplace training program
i think yeah
yeah that
I imagine there’s a development team, and then all of the kids play their projects or something
my method:
// file: ui_common.json
{
"scrolling_panel": {
"$use_large_scroll_box|default": false,
"variables": [
{
"requires": "$use_large_scroll_box",
"$scroll_size": [ 15, "100%" ], // default [ 4, "100%" ]
"$scrollbar_box_size": [ "100%", "100%" ]
}
]
},
"scrollbar_box_image": {
"size": "$scrollbar_box_size",
"$scrollbar_box_size|default": [ 5, "100%" ]
}
}
then, inside your scrolling panel, set $use_large_scroll_box to true, you can set $scroll_size to whatever you like
because i don't want every scroll box be that big
you need to add those codes to a fresh new ui_common.json file
what you will get is something like this
you can apply that same technique
here's inside container scrolling panel, as you like:
yes, it's required
there is, but "padding size" instead, "$scroll_bar_left_padding_size"
in your scrolling panel
no, put it in your actual scrolling panel, not here
wait
it's your scrolling panel
bro is vsauce
by default the size is [ 0, 0 ], but you can put negative value
did you put "sub-pixel" sizes?
Stopppp lolll
cause they are public
the mockups
and actually i learned too
is not that hard to do
idk how is this like 40 usd 💀
ik but is really easy json ui
we only have to read the documentation
i still need to read more to learn some stuff
wdym?
probably you have another control or panel offsets?
The server is public?
huh where
is it a server?
the assets
All of them is, and its like 30$. That form took like 1hour but others take time
i mean its easy to get the photo edit it and now all u have to do is code the json ui
not really
For example i made this, its dynamic when searching too, for example it will take the whole width when it just one button but it must work on search bar too
mm i didnt do the last button but its just a grid
yea but the assets where already there
they only needed the json code
yea i got that
yeah but when you add search bar + grid it would break
im learning a lot
no, if i lower them 😏
since its not that hard to do, more simple than scripting
probably if they dont provide the assets
then yea
ill stay with the same cost
i know my worth, i can do complex uis, ive been doing this for year now, it doesnt matter
u just need to know ur worth
it will take you less time
if you read
the full wiki docs
and test every single property
thats why it will take you more time
you have to understand the concepts and why you do or paste stuff
i didnt know anything of json ui like 0% i started to read like for 2 days
and now look..
it doesnt take me too much time
and now i can actually learn faster from others code
😮
i suck at textures u.u
I suck at texturing 😦
that looks good, it looks like better containers
from java
is it "better containers"?
Very nice though i like them
https://discord.com/channels/523663022053392405/1269913001918464000
Can I do it? And how?
😘
i didn't think $scrolling_content_anchor_from and _to was set to top_left
it might be because it's already defaulted to top left
it's just to disable scrolling when content already fit (touch only)
use something like "scrollbar overlay"
but instead of overlaying on scrolling panel, just offset it outside the panel
there is one when using touch
usually scrollbar will be at the right of scroll panel and doesn't overlap on it, right?
with this, scrollbar will instead be overlapped on scroll panel
im panicking because of your 4+ random pings
i forgot where to set scrolling content grid size
i don't have a pc turned on right now
Man, I need to learn json ui better. All this default stuff looking rough.
because of missing properties?
is it possible to separate label from input filed
or is there some work around
like duplicating the input and hiding the label in one and the input in another
What UI file contains the title screen's splash text?
Hi, does anyone know how to change the scale of a GUI? something similar to what this bar does
is this a trick question
inside ui_art_assets_common.json, you can toggle splash text visibility by modifying "$splash_text_visible"
Thank you! I am only going to move them :3 💖
ah, you want to move splash text offset
Yea ^^
I was also looking at changing the animation for the recipe unlock toast. I am not sure if it's hardcoded, but when I tried to change it, it plays the start animation when the animation ends.
maybe you can try to sacrifice customizable toast duration from in-game settings for more flexible animations, i don't know if we still can use $display_time as an hardcoded duration variable for it or not
Hmm, I'll try that.
i think i managed to get it, but for some reasons, it plays twice??
i already ended the last animation, with end_event: toast_animation_finished, but still, weird
Yea. I was talking about that. It's strange. When I added my custom anim and added the "next" property, it plays the anim as it should, but for some reason the item & block icons don't shuffle.
nevermind, i replaced end_event with destroy_at_end, and it works flawlessly
Also, how'd you do that smooth animation? I wanted to do something similar for a while but never knew how people do it.
should i send what i did to here?
sure ^^
including that small crafting table icon, because java edition has that
{
"recipe_unlocked_anim_start": {
"anim_type": "offset",
"easing": "out_quart",
"from": [ 300, 0 ],
"to": [ 0, 0 ],
"duration": 1,
"next": "@toast_screen.recipe_unlocked_anim_wait"
},
"recipe_unlocked_anim_wait": {
"anim_type": "wait",
"duration": "$display_time",
"next": "@toast_screen.recipe_unlocked_anim_end"
},
"recipe_unlocked_anim_end": {
"anim_type": "offset",
"easing": "in_quart",
"from": [ 0, 0 ],
"to": [ 300, 0 ],
"duration": 1,
"destroy_at_end": "$toast_control"
},
"recipe_unlocked_popup/input_panel/label_panel/label_panel/label": {
"line_padding": 0
},
"recipe_unlocked_popup/input_panel/label_panel": {
"anchor_from": "left_middle",
"anchor_to": "left_middle"
},
"recipe_unlocked_popup/input_panel": {
"min_size": [ 165, "100%cm" ]
},
"recipe_unlocked_popup": {
"size": [ "100%cm", "100%cm" ],
"$display_time|default": 3,
"$toast_control": "recipe_unlocked",
"$offset_anims": [
"@toast_screen.recipe_unlocked_anim_start"
],
"anchor_from": "top_right",
"anchor_to": "top_right",
"modifications": [
{
"array_name": "controls",
"operation": "insert_back",
"value": [
{
"crafting_table_icon@toast_screen.item_renderer": {
"size": [ 9, 9 ],
"anchor_from": "top_left",
"anchor_to": "top_left",
"offset": [ 2, 2 ],
"layer": 1,
"property_bag": {
"#item_id_aux": 3801088
}
}
}
]
}
]
}
}
ah, this issue
mine having same problem as well
simple, easing
Ohh
i think i found a problem with this, it plays only once, and never again
destroy_at_end literally breaks everything...
end_event must be specified like this to work properly:
"$anim_event_name|default": "toast_animation_finished",
"end_event": "$anim_event_name"
$anim_event_name is likely another hardcoded variable
Someone know how to make the panorama of the loading screen or start screen dont move
to make show only one image?
Where do we put this?
completely replace "destroy_at_end"
end_event is unfortunately strictly required
Hmm, yea, something is weird. The icons stays at 1 icon and when the close sound plays, it plays again. Super weird.
ok so, after that toast shows, $anim_event_name is toast_animation_in_finished, and after completing exit animation, it will be changed to toast_animation_out_finished
some valuable(?) information
Can the paper doll always be shown? Because it is only seen when you crouch down and make movements.
unless you use another paper doll renderer method, no
hmm
Okay thanks
shi-
it won't work on grids
those are grids
either use a custom form for server-side searching, or vertical stack panel for in-form searching
i can confirm those events are very valuable indeed
there is no "close sound", but it now works properly
any ideas on how to fix this? im using 2 panels, one for the tabs (small buttons) and one for the big buttons.
When i add another tab button it fixes the small buttons?
replace all old anim controls with these:
{
"recipe_unlocked_anim_start": {
"anim_type": "offset",
"easing": "out_quart",
"from": [ 300, 0 ],
"to": [ 0, 0 ],
"duration": 1,
"next": "@toast_screen.recipe_unlocked_anim_wait",
"end_event": "toast_animation_in_finished"
},
"recipe_unlocked_anim_wait": {
"anim_type": "wait",
"duration": "$display_time",
"next": "@toast_screen.recipe_unlocked_anim_end"
},
"recipe_unlocked_anim_end": {
"anim_type": "offset",
"easing": "in_quart",
"from": [ 0, 0 ],
"to": [ 300, 0 ],
"duration": 1,
"end_event": "toast_animation_out_finished"
}
}
further fixes may be needed
also my whole ui bugs the fuck out when i resize the window.
I made the custom paper doll but it keeps hiding :c
use a live_player_renderer element instead
I'm going to try it, I'll be back
it's done thank you!
anyone??
That's fine! ^^ Just the icons don't shuffle for some reason. I do hope I can add like my own sound event for the in animation.
Is anyone here a big json UI nerd? (There’s a pack I’m trying to learn from but no matter how many times I read through it I can’t understand how it’s doing what it’s doing)
I don’t think this is simple enough to just compare them
but I’ll try
it’s using a lot of custom elements to manipulate player input
that’s as much as I know
can work bedrock ?
Personally im okay 🙂
blud deleted the message 💀
Ok? No-one needs to see if no-one has an answer
plus i managed to get in touch with the pack author
how does nineslicing work?
Ight it's over used now icl
bruh
you should search it on wikipedia instead
in minecraft, it will be something like [ <left>, <top>, <right>, <bottom> ], everything between two opposite sides will be stretched out to fit it into any element size
there are two other accepted types, <non-array value> will specify for all 4 sides, and [ <horizontal>, <vertical> ]
Using 9 (Nine) Slice in Game Maker Studio 2
There's a NEW feature available today called 9 Slice. The idea isn't new, but GameMaker has added official support for Nine Slice, and it's awesome! Let's check it out and learn how to use it.
My video on the GMS 2.3.2.556 Patch Notes Update: https://www.youtube.com/watch?v=TFnvejq8sbI
My Exclusive...
can i make modal form textfield accept multiline text? if so, how?
can i assign variables based on what the form button text is?
Yes you can with bindings
do u have a example
@graceful lantern ?
How would I go about “unlinking” the absorption hearts from the regular heart UI
before i dive into json ui, i need to know smth
can i use action bar to make a custom progress bar without breaking the action bar itself

but you can title and subtitle
wait i thought it was the opposite
you can use the title and subtitle, actionbar for other things and remake the title or actionbar system using the hudscreen and chat screen
thats what i did
hmmm i just need to know if i have to remake the vanilla title ui to "act" normally if the title doesnt have string variable
and idk if im understanding json ui right either
does anyone know the default size of labels?
its font size
what
i meant the size of the panel
like "size":
because its not "100%" or "default"
the default size of labels are their own font size, a.k.a their "default"
"label": {
"type": "label",
"size": [
"100%",
"default"
]
}
This?
i thought it was this
but when i put that size it breaks
its just a normal label
im still not used to string formatting uhhh
how do i make title text to check for mcd_soul: text and get the number that comes after the text
and make the title to not show up if it has mcd_soul:
[ default, default ]
(literally)
what it means is it will automatically resize itself so no word wrapping by default
thank you
another question, are math equations possible? like i know basic ones are but what if i want to get like 1,3,5,7,9 etc..
^ talking about collection indexes
just if i want to fake a grid
so buttons that are common factors of 1 will be first stack, 2 is 2nd, 3 is 3rd, 4 is 4th
adding the -th part?
wym?
wait
i’m just wondering if i can do arithmetic sequences
something like this?
yes
i don't think it is possible...
if you need this only return true/false, then it's possible
well it returns multiple numbers?
no
not that way...
@opal aurora i have a question
how do i set the image's texture (texture path) with actionbar text
{
"advancement_icon_texture_path": {
"type": "image",
"$atext" : "$actionbar_text",
"texture": "#texture_path",
"layer": 1,
"anchor_from": "left_middle",
"anchor_to": "left_middle",
"offset": [
"4%",
0
],
"size": [
22,
22
],
"bindings": [
{
"binding_name": "($atext - 'adv.texture_path.')",
"binding_name_override": "#texture_path"
}
]
}```
this is what i have rn, i cant figure out what to do
currently pullinf my hair off rn
yes
hmm, you can't use hardcoded variables inside bindings at the same time
thats what i wanted to ask for
the docs are vague so i dont know which and what to use
{
"advancement_icon_texture_path": {
"type": "image",
"$atext" : "$actionbar_text",
"texture": "($atext - 'adv.texture_path.')",
"layer": 1,
"anchor_from": "left_middle",
"anchor_to": "left_middle",
"offset": [
"4%",
0
],
"size": [
22,
22
]
}
didn't check if it works or not
i am so stupid
wait
wouldnt that work even if theres no 'adv.texture_path.'? like the ui receiving the path even if theres no 'adv.texture_path.'
meh its a whatever, ty either way
it worked 
you can add "visible" to avoid that
ye i figured
learning json ui is absolutely horrifying, how did you even make ui addon??
Is there any way to link json UI with entity files?
I wanna create buttons to change stuff in my pack and I can’t figure out how stuff like better bedrock does it
ui is just... visually
you use paper doll renderers to show texts from it via molang
Can they be toggled to enable other stuff?
basically I have some player exclusive particles I was hoping to toggle their visibility on / off via a button
But I would need to tie to render to the button somehow in the entity file
Rn the method im using as a check is a specific item in the offhand but I want to make my pack way more flexible
i don't think you can
it must be related to ui to be able to be toggled
Welp that’s that i guess
you can use something like commands or tags instead
Now I’m going to back to trying to recreate a feature from someone else’s pack
for example: if player has tag "x", then make entity "y" visible
I need to use json UI to manipulate inputs via controls
Would you say json UI is hard to write or is it usually the logic that causes problems?
Cause I’m honestly thinking about saving up to comm someone to create 1-2 files for me
what
ui is not related to entities
as i said, use something like scripts or addons to manage, particles are totally not related to ui, you need server side settings
just server forms, not hud
and what bb did is not server related, it was a bunch of hud toggles, since it's client side and can't be saved
how do i make the bar progress to stay intact when an unrelated title appears
or should i move to scoreboard method
This is completely unrelated and besides all json UI I would do is confined to resource pack only
https://github.com/bud-aj29/BE_Easy_Item_Dump
I’ve been wanted I recreate some of the features from this and potentially add more
so i just learned that preserved title is a thing but
how tf do i use it
its so vague
do i just add the preserved title template onto the json
preserve the text
yeah thats what im trying to figure out
i just dont know what to do
its either just slapping the preserved text template in or editing the whole thing based on the template
i could try both but json ui itself is already killing me
im losing brain cells...
relatable
why particles, meanwhile you touched title texts
i will never implement this to my packs, it's an unfair advantage
to be able to sort through chests quicker and easily dump my inv?
I’m not using this in PVP or anything
I’m a technical player and any efficiency I can get is gladly appreciated
I basically need help remaking this
This is the normal pack when installed. (Besides my custom Lang file) and I kinda just want to move stuff around
(I don’t like using packs seriously if they aren’t designed by me or made as a gift for me, which has never happened yet but eh)
I’ll prob make an alternative subpack that disables anything that would cause issues on servers
I just need help actually recreating the feature
@opal aurora sorry for the question again but do you know how to preserve title in this json?
i cant figure out so i need you to point it out
So I assume that’s a no on getting help with it?
especially the ability to move the entire inventory to containers and vice versa
why is that OP specifically? All it does is save some time
i assume its cuz it saves time a bit too much
its basically equivalent to auto looting
without a step (or extra?)
Ah so they’re classing it as flat out cheats 😔
I’d like to reiterate I will be making subpacks that disable certain features for server usage
My goal isn’t to create a cheats pack
just some general Utility for gameplay
Issue is I’m horrible with json UI so I’d need help setting it up
@opal aurora
Btw is there a way to extend/stretch the background of chests?
Not the most detailed but I kinda wanna include the UI within the bounds of the chest BG
I appreciate the info nonetheless, im just gonna have to type 1 character a minute till I figure out exactly how
this could help
I’ve tried samples
They don’t help
found out I am way better at creating logic than creating code
my glaring weakness
you could edit it
based on that
I can read through a large pack and know exactly how it works but when it comes to creation / editing
I’m hopeless
(I’ve been trying for several years now ^^;)
yes, just resize "common_panel", somewhere in root_panel
Ah makes sense. I apologise, anything related to json is not my speciality. I am very much an ideas guy
ive been struggling with this one json ui in particular

for an hour
mad respect to JSON UI experts
i just decided to use actionbar
and now i cant set the bar length because bindings is not a thing for actionbar
someone save me from this hell
I just didn’t try in the first place lol
json ui people
how on earth do i make a custom bar with actionbar if i cant use bindings to change the clip ratio
well screw it im moving back to title
Does anyone know how to change the position of the actionbar text in Minecraft?
how did the devs even make something really hard with json
hooray, there goes my first crash in json ui
what ya doing currently
have u taken a look at this Github?
https://github.com/TheoristMC/Theorist-Projects/tree/main/Health Bar
tell me if u have a problem on it so i can update it, it kinda trashy rn
yeah that what makes it trashy, im trying to remake it
should i just stop
How do I put a specific texture on the button according to its name?
If anyone has a template or a wiki to help me I would be grateful
how was it
how was your sanity
yep its json ui
i tried that too but
i still couldnt figure out
did it work

at this point im thinking of just feeding the entire json ui documents into chatgpt
wtf actual?

this is not gonna be fun
the dude didnt even misunderstood at all
mate went into wrong website
☠️
Hello, is there a way to start a form's flipbook texture animation when i open the form ?
I feel bad for tlgm...
why did you @ him?
Is there a way to reduce look
sensitivity through json ui?
settings/(your controlling method)/camera sensitivity
I want to reduce sensitivity when performing gun aiming, so it should be adjusted automatically
hmm, seems like it's not ui related
i think there is a way to do that, similar to bows, but this channel isn't for it
why
still stop @ him
you know what, they triggered my dm
never heard of #clip_ratio?
@whole jasper
@tropic badger
@rocky quail
