#JSON-UI General
1 messages · Page 16 of 1
ok thanks
Can I change the order in which the buttons are sorted? Starting with the last button, something like this
I want to display these 10 'type's in another panel.
buttons are in insertion order
So i can't show those buttons?
I dont quite get you
sry im using google translate
I need to show 10 of the buttons that start with 'type:'. As you can see, the buttons are in the last order. I'm looking for a way to show those buttons
weren't they supposed to be hidden from the grid?
yes. and another grid, they shuld be shown and item buttons shuold be hidden
hm I never had to deal with 2 grids.. You sure you can not just use another stack panel
Is it possible to get only buttons that start with a specific letter using the stack panel? I tried that and didnt have any way to do that, so I chose the way to set the maximum number of buttons
my stackpanel:
well you know how to conditionally render based of the button text right?
tbh no
i can make the button invisible, but idk how to render specific buttons
Can you give me a little hint?
its like conditionally rendering a form but instead you use the form_button_text
that's exactly what I wanted
@west dawn can you please tell me smthing?
add this to the button
But if i do this, won't the scroller go down further because the button exists?
like this third img
If you look at the second image, you can see that I've already tried that
trying to learn from this dude w scripting and I did everything that he did including setting up the behavior pack with the script and an UUID and I turned on all experimental features just in case but it seems like it's not working aah
also in the end I saw the missing colon and parenthesis
case "minecraft:compass": customUI:show(source); break;
but it's still not working when i use the items
This isn't the right place, please go to #1067535382285135923
Also replace the phoneUse with subscribe lol
but Im doing a ui tho isn't this the right place for it? Im following a json ui tutorial
idk if this is serious or not
ur building ui which is scripting thing this channel is for looks
ow alr
I tried this and it didn't work btw rip
it works now:D
lmao
Is it possible to add a conditional dimension loading screen ?
like you would do with container ui
There's already separate loading screens for dimensions, you could just modify them
How to show a "new UI" to custom entities with more than 27 slots?
Can you make a conditional modifications ? like a loading screen that only show when you have a tag ?
I'm really curious which element is it
Is there something like split('string')[n] in json ui?
abc:def -> I want to get 'abc' and 'def' respectively
Huh
Anyways do you guys know how to increase the layer of text inside the buttons? I tried editing the layer new_ui_binding_button_label and it does not work.
?
That, Im not sure since there isn't a way to incorporate player tags to Json ui
Can you make it conditional ,somehow ?
like having 'Admin' tag and somehow the progress screen detecting it
not really
json-ui can only read what UI has to.
so, nope. It's not gonna read server-side tags or scoreboards
your best bet is to use something that json-ui can read, e.g actionbar, chat or title
then use @s[tag=something] with it and there you have it
What do you suggest ?
.?
i am needing this for a project i am doing....it's immersion related and idk where else to ask as json ui isn't very properly documented
any one has a toggle demo .-
is it possible to create several folders for script ?
can you atleast link me some post or show me where to search for ?,
Anyone?
Its locked on the left side even if the anchor is on the right
Looks better now
scoreboard?
or boss_bars
Boss bar has 3 maximum.
yes 🫠 😂
so basically that's pointless if you gonna use more than 3 elements
Scoreboard has 16 maximum I think.
ok
20 i think
i am an idiot, i spent hours wondering why 260 + 7 = 266
i was trying to display an enchanted golden apple that had the aux value 260, and i have 7 custom items in my addon right? 260 + 7 equals 267? wrong because it displayed a golden apple with aux value 266. it turns out that the world i was testing my addon in had 1.21 experiments on, which added the trial key and totally missed the aux values, while the world i was retrieving item ids from didn't have it on. i hate json ui even more now XD
How did you bring yours up, I made mine using subtitle but cant move it more up
Nice top right bars
Maybe because the subtitle frame is responsive to the title,so you have to adjust both of them
nah I figured it out, had to increase the panel size for my bars. I separated it from relying on the title element, but still needs something on the title to display but it doesnt follow any rules the title does
how do I add a dropdown menu
Made a solution
What do yall think guys
Bro removed it lol
Ye its beside the achievement button instead lol
Fixed the side buttons and the hover alpha
Honestly what's hover alpha for
The change skin and market place button are light glyph and light content type,in default they change alpha on hover and disappears content on click
so i changed it to light text and edited some
So basically the image relies on offsets?
Is this ok
Play button is typically has large width
It represents it is the thing to play the game to
Aahhh lemme adjust
Is this fine
Yep looks good
Good
might aswell remove the minecraft title on the top right, it looks out of place
or maybe resize it
It would be nice if a suitable logo was added
Ye i think flat logo would be nice also
I think he is kinda creating a watermark
©
I made it like this,is it fine?
Yes,watermark is my reminder what type of game im playing
go go gadget unfinished project
Item descriptions 👀 👀
Does this include all items?
Or custom items 👀
yep, made it myself year ago.
Depends, for now this thing more of focused on custom items, maybe will support vanilla items aswell if it deems important to map designs.
For now, I'm not doing anything with this in foreseeable future.
Is this another one of those collection index or it depends on item name
Might be both.
maybe lore too who knows
it's unfinished project and not gonna go into more details
where can i found that for change image ?
new ui i have been working on
Textures/misc/pumpkinblur
does it work in json ui??
*js -> jsonui
Doubtful, but I don't know. I know JS, but not the JSON UI.
I may have misread the original question. Apologies if I was incorrect before.
No, I asked the wrong question and edited the question
Oh I see.
i need a toggle example
Search for one
Is there any website to help do ui
anything with some sort of preview of what you doing
wym
like if you want to edit pause menu you wouldnt have to load into minecraft each time but see it on a website or something
can we do replace all
no
cant find one
Thought you guys might be interested in this. If this is the wrong place, just let me know
https://www.youtube.com/watch?v=zWecyvsbKHY
🔗Links :
Last Video Part: https://youtu.be/CWm-KU5ALOQ
Join My Discord! : https://discord.gg/tzrmH56JXC
My Website And Code: http://skyls.de
Music : https://www.youtube.com/watch? v=tEzYsaLm7nw&ab_channel=SimonChylinski-Topic | Breathing Break from the Riot Creator Playlist
JSON UI docs : https://wiki.bedrock.dev/json-ui/json-ui-intro.html
Vani...
that has toggles?
yeh?
ur voice doesnt suit?match? ur account imo its diff
and what can I do about that?
tbh tho I do have a new mic and might have to play with some settings
nah its fine maybe i imagined else xd
yeh I know that feeling
the voice that others here is different from the voice you have in head
I'd just look into modal forms and world creaton screen bc they are using it no?
i dont see any default ui that has that tho ppl have done it
i remb doing that year ago but i cant find it now with a img button we can toggel another panel
hello, can someone tell me how to hide this white border?
"size" : [0, "100%"]
where can I put it in server_form?
what is $ in json used for again
variables
How do i edit the splash texts on texts,the identifier of it like splash.text=Hello
Did you use the npc dialog to do this?
Okay and how did you put “category” buttons on the left?
Getting the controller index for the children elements
controller index: 0 to get the data of the first button,controller index: 5 getting the data of the 4th button
okay thx
how do I remove the white border that appears when we hover our mouse over the button?
"$border_visible": false
Thx
It's good for already bright colors
someone link me panel toggle ex.
How do I designate a single button so that it is on the left and the rest are on the right?
how do i make an element cover the entire screen?
"size":["100%","100%"]
what "%" can do in Json UI🤔
Its modulo, it's used to get the remainder of what you're dividing.
Thus 7 % 4 is = 3
modulo, Its work in binding?
it doesn't work it only size it to like 500 by 500 box in server form
Its always 100% of parent. Meaning that one of the parents has a size of 500px
interesting, so the parent of long form is 500px?
I'd asume with what you have told me
Yes
it's not exactly 500×500 as i didn't count, but it looks like it
#1212105007474679899 message
thank you very much, that's perfect
I'd suggest searching common questions right here in the server: thumbsup:
i did, spend like an hour searching random keywords in #1067869374410657962 and #old-json-ui XD
can you actually use mod operator in JSON UI? If so then its undocumented bc its not in the operator list
I honestly haven't tried but i guess it exist since JSON UI is based on CPP
thats not quite a reason on why it would exist
You have to make a separated panel for the other buttons,one put on the left and the other on the side
I've checked it's unfortunately does not exist
Okay but how do I separate the 2 buttons? And how do I designate that it only applies to the first 4 buttons, for example?
For design,you gonna make different dynamic button panel template for button and use it by calling the phrase for example "button1@server_form.buttonDesign1": {..} which uses the button design 1 and server_form.buttonDesign2 uses the other design
I don't understand at all what makes the texture look like this, is there something wrong with the file?
Okay thank you, to save the second button design in my custom ui how do I do it?
If about the dark border,its from.the default minecraft resource pack,so it only needs to put the id of the image on code
Do you mean if how you gonna use the design on your button
done, fixed
wow, using json ui only
nope, i use some script
What how did you directly open the directory from com.mojang?
Just go to the directory
you're using android 10?
yes
that explains it
android 11+ restricts you from doing this so, pretty much impossible nowadays unless you're still using android 10 or less
Anyways, I don't think this is json-ui issues.
it's more of script-api issue tbh.
json-ui is about modifying screens and elements, so it's kinda hard to change item textures magically to something else
Then how is zarchiver does it then?
You can't delete app that is already on the phone
It does by exploiting vulnerabilities.
This doesn't mean that every apps will able to access that folder since they don't have a workaround and would follow google's policy instead of relying some exploits that will eventually be patched.
And sure did they patched it on more updated android 13+, I have to downgrade my stuff to use that folder as possible otherwise OS will update the stuff itself and remains patched.
Android 14 or upcoming 15? yeah good luck with that like they'll have some exploits for you to see android folder and stuff without using "Shizuku" ("root" but rootless)
Is there a way to reverse update?
If you have previous android and upgraded over it from 10 to 11 etc, you'll able to downgrade if your OEMs provides you an option to use the local .zip update file instead using downloading OTA stuff
likewise, nope. you can't downgrade to any android version of your choice since the OEMs does not have so, nor either flashing is an option.
Pretty sure realme and xiaomi has ability to downgrade to original android version that your device came with, Samsung probably a no. others is "you'll have to find out"
update uninstallation
Is there any downside of installing android 10?
Well, it's obviously.
you just don't get android 11+ new stuff aswell lower security.
you also may be missing alot of stuff too.
Hmm i don't generally download that much stuff I think I'm safe
I like android 10, though it doesn't necessarily mean that I'll have to stick an older 2019 version of android, that's kinda like staying in windows 7 because 8-11 has bloatwares and laggy stuff
Well now you can edit Android/data folders on Xiaomi HyperOS
On any file app
Or for other devices it's possible to use FV File Manager
i am so stuck right now, how to access the #form_text in a form button, i am trying to compare between #form_text and #form_button text to make certain elements visible, but i can't do that if the button doesn't recognize #form_text, i tried to save it in a variable and compare the variable with #form_button text but even that doesn't work, any ideas?
I want to use it as a "category" like in the photo you sent below a little
A bit like this
That's a lot of explanation and has different methods if you meant like tab selections or navigations
Theo said you can make toggle hide/show for it so that it displays the lists of buttons when you clicked the category
Mine was just opening different forms again for the selected category,while the first button on navigations is always highlighted or pressed
how can i change #form_button_text text size?
You can clear the data of the System 'Files' app
Hmmmm what do you mean
the one with the blue icon, it worked on mine (android 13(
But would that clear my data no?
Nah, it'll clear the settings that prevents you from accessing the data folder. But if you're sketchy about it. Try looking it up on yt
I can't click it somehow
well your best bet is basically uninstall the update of that file app.
Android will automatically update it no matter of what, but android 14 is pretty much patched.
if you have no "uninstall update" option then yeah you're out of luck.
you can get shizuku or get an android container instead
How can I edit the size of the menu of a ModalForm in jsonUI? is there any example?
- find the element id that is used for modal form
- edit the
sizeproperty
do you know the element ID, im editing long_form_panel, but not working
im on 12 and works 13+ has issues
long form is for ActionFormData
for modal form i think its called custom_form_panel
only the content was modified, inside, not the panel that contains it
?
I solved, thank you for your help xd
whats the id
custom_form@common_dialogs.main_panel_no_buttons
Can hover renderer text be localized?
i tried to set #hover_text in the property bag to a localization key, but it just outputed the key itself.
"hover": {
"type": "custom_renderer",
"renderer": "hover_text_renderer",
"property_bag": {
"#hover_text": "tile.cobbled_deepslate.name"
}
}```
I have that, it still does not allow me, weird because I'm on 11 only
well that's the far as you can go with it.
bruh 😦 it's a pain having to locate Minecraft file repeatedly when I want to make changes
well if you want more easy way then I suppose skizuku should do
grant it with zarchiver and you should able to modify minecraft folder with ease without restrictions
where is this popup found in the ui?
Search purpleBorder in common
ty
can i edit the style of inventory screen with just a png or do i need to do a json file and edit it
how do i stop my title image from being so small?
use the same image size as vanilla ones since it was designed for it.
yesn't - Bedrock isn't using the same texture method like java does where you can change the texture with single image, its basically separate entirely so, editing might gonna be time consuming but it's possible.
best bet is to change texture globally.
ok
@hexed briar
so the button is showing, but the text and image isn’t
my friend was making this but he got off so im all alone besides this for rn
not sure what can i do with it since you're not giving me more details
like?
well im not even sure what the context of text and image not showing up
is this form text or button
But i digress.
"my_super_custom_panel": {
"type": "panel",
"size": ["100%", "100%c"],
"controls": [
{
"long_form_dynamic_buttons_panel": {
"type": "grid",
"size": ["100%", "100%c"],
"grid_dimensions": [3, 3],
"grid_item_template": "server_form.custom_button",
"grid_fill_direction": "horizontal",
"grid_rescaling_type": "horizontal",
"anchor_from": "center",
"anchor_to": "center",
"factory": {
"name": "buttons",
"control_name": "server_form.custom_button"
},
"collection_name": "form_buttons",
"bindings": [
{
"binding_name": "#form_button_length",
"binding_name_override": "#maximum_grid_items"
}
]
}
}
]
}
are you sure that there's no syntax errors?
because the file you gave basically filled with it
i don’t know he’s quite dumb
Is that the whole form file?
then idk what am i gonna do with that
im not even sure if this is syntax errors or not
the other one is for hud screen
isnt the form is a single file?
I believe there's a localize property you can search
well that kinda explains it i guess
its trying to referencing something that didn't exist
my title is the §3 one btw
hence the error.
i think he meant the main_ui
there's must be a file that contains a namespace "main_gui"
maybe it was misspelled like ui instead gui?
otherwise yeah, it's not gonna work because its trying to call something that didn't even exist.
he didnt send one
well i guess solved.
but the form opens normally
oh
nvm
look in custom_button
it has main ui
he meant that i think
how do i make it do that
namespace ≠ element
you can't reference something out of child elements
( aka element inside element )
im so confused
well idk?
namespace is basically the code name and stuff
its essentially your file main name.
he’s just trying to do a square button
server form goes by "server_form" in namespace
ik
i know that
i did this barely
but i know basic basic stuff
im just needing to know how to put the text on the button
{
"form_button@common_buttons.light_text_button": {
"$pressed_button_name": "button.form_button_click",
"anchor_from": "top_left",
"anchor_to": "top_left",
"size": [ "fill", 32 ],
"$button_text": "#form_button_text",
"$button_text_binding_type": "collection",
"$button_text_grid_collection_name": "form_buttons",
"$button_text_max_size": [ "100%", 20 ],
"bindings": [
{
"binding_type": "collection_details",
"binding_collection_name": "form_buttons"
}
]
}
}```
you can create your own text element and use those bindings from form_button
ohhhh
wait
so it shows up
if theres an image
if not then its just a blank button
yeah i can see why
f.button(`§dWarps`, "textures/ui/title");
f.button(`§dShops`);
f.button(`§dQuests`);
f.button(`§dMoney Transfer`);
f.button(`§dExtras`);
f.button(`§dPreferences`);
panel_name literally has the exact same image bindings.
so if there's no image or anything, all of panel_name child elements disappears.
ik im asking that to that message
you might wanna move text element out of that panel_name element.
put it below it or something idk
solved?
wdym outside
Did you just put it outside of the button element or what
nevermind
{
"main_ui": {
"type": "panel",
"size": [64, 64],
"controls": [
{
"text": {
"type": "label",
"text": "#form_button_text",
"layer": 32,
"color": [0, 0, 0],
"offset": [0, -8],
"anchor_from": "bottom_middle",
"bindings": [
{
"binding_name": "#form_button_text",
"binding_type": "collection",
"binding_collection_name": "form_buttons"
}
]
}
},
{
"panel_name": {
"type": "panel",
"size": [64, 64],
"bindings": [
{
"binding_type": "view",
"source_control_name": "image",
"resolve_sibling_scope": true,
"source_property_name": "(not (#texture = ''))",
"target_property_name": "#visible"
}
],
...```
don't paste the whole thing, just put the text element below main_ui like this
yeah then keep the image in there?
just leave everything as usual
How do you make an image generator,like you use the value text of actionbar "textures/ui/confirm" into an image confirm,i tried using variable but its not responsive
In the common_art file
What??
In which json file is title.png located?
in the common art namespace
ui_arts_assets_common.json
And you will find it there,its multiple titles and one splash texts so you'll manage them all
Anyone knows how to port this, or at least can someone tell me if this is possible.
Btw I can pay for a port, cause this is a mc java pack
That's cool
im paying who ever knows how to do it
If you're using the actionbar, don't use the variable directly. Make a copy variable of it and then you can just use it in a texture string like:
"type": "image",
"texture": "('textures/ui/' + $atext)",
...
Also, it should be true by default, but make sure force_texture_reload for the image element is set to true.
How do you do hover text in forms?
bind the button text
{
"[email protected]_text": {
"bindings": [
{
"binding_name": "#form_button_text",
"binding_type": "collection",
"binding_collection_name": "form_buttons"
},
{
"binding_type": "view",
"source_property_name": "'test text'",
"target_property_name": "#hover_text"
}
]
}
}
What did I do wrong?
ohh wait nvm this was the wrong version
{
"button_hover_text": {
"type": "custom",
"layer": 70,
"renderer": "hover_text_renderer",
"property_bag": {
"#hover_text": "#form_button_text"
},
"bindings": [
{
"binding_name": "#form_button_text",
"binding_name_override": "#hover_text",
"binding_collection_name": "form_buttons",
"binding_type": "collection"
}
]
}
}```
does this work in a grid or just a factory?
If I create the buttons using a grid rather than factory, will the hover text still work?
yes i think so
Is this a sibling, parent or child of form_button?
i nest my button insides
but its a child
make 2 panels
one for non hover, one for hover then call that panel for hover
"button_panel": {
"type": "panel",
"size": [
"100%",
"100%"
],
"controls": [
{
"button_hover_text": {
"type": "custom",
"layer": 70,
"renderer": "hover_text_renderer",
"property_bag": {
"#hover_text": "#form_button_text"
},
"bindings": [
{
"binding_name": "#form_button_text",
"binding_name_override": "#hover_text",
"binding_collection_name": "form_buttons",
"binding_type": "collection"
}
]
}
},
{
"form_button@common_buttons.light_text_button": {
"$pressed_button_name": "button.form_button_click",
"anchor_from": "top_left",
"anchor_to": "top_left",
"size": [
"fill",
32
],
"$button_text": "#form_button_text",
"$button_text_binding_type": "collection",
"$button_text_grid_collection_name": "form_buttons",
"$button_text_max_size": [
"100%",
20
],
"bindings": [
{
"binding_type": "collection_details",
"binding_collection_name": "form_buttons"
}
]
}
}
]
}
I tried this but still nothing appears
send ur whole server form?
server_form.json just handles splitting the server forms, this was a grid formation that I slowly broke trying to get hover text to work
where are your hover, normal and pressed states?
I don't have them anymore
Copy pasted this from vanilla to see if I could get that to work
you got a working version I could copy paste just so it's faster?
ummm i use a kind of main panel that i grab things from
so its not just server form
i could send you a pack of some other forms i ahve
yeah, alright
interesting, i will look it up
it's specific to labels, not useful in my situation
Thanks a lot
would there be a way to make this within json ui and modifying messages in scripts?
while keeping it in the chat screen so no custom action or modal forms
obviously not the left side for players but the chat like that?
That's possibly a modal form,where the side players are the dropdowns and the texts are label of the text field, while send button is a submit button
i know
im asking if its possible to do this with just a script to modify chat messages so it shows that instead of whatever it would be normally
basicly discords chat box like this but make the message to ` > ${date math thingy}\n${data.message}`
well im just saying that idk if its possible but i did need help with something else
i wanted to make the base server form, but with a bigger size, like 225, 200 and then double the sizes for image and button
i kid you not i just lost my com.mojang due to an update but both my addon folder and project world got saved by a miracle, every thing else got deleted
damn that sucks
my one addon was saved because i recently started using regolith and my world was saved because i exported it a minute before the deletion.
thats why mojang should just make packs be in a file path so it just has a single file stored in the a file named packs and then its like a json file with an object and 2 things inside it name resource and behavior, both are arrays, that contain strings of file paths
because that would solve multiple issues
on ios if u have too much items stored in the minecraft directory it can cause lag
i think its the same for pc im not sure
and i had like 200 behavior packs
so it took like 20 mins to open settings
i am in shock, i am never trusting com.mojang folder ever again, you have no idea how venerable i was, 3 strength days of none stop json ui + a week prior of player json work + my project world could have been as good as none.
and then recently it got so bad that it crashed when loading a world that had experiments on and specifically flat
could have been an issue you did aswell
i would say just make a copy before updating
anyway could u do this for me or were you busy
i need to catch my breath
I think it can with chatSend before event by setting a dynamic property for database or other method,but you need to refresh the form always to see the updated chat
eh
Aahhh
Yes it can
if you mean changing the message text design like instead of [player_name] message to > name: message then yes
const currentDate = new Date();
const year = currentDate.getFullYear();
const month = currentDate.getMonth() + 1; // Months are zero-based, so add 1 to get the correct month
const day = currentDate.getDate();
const hours = currentDate.getHours();
const minutes = currentDate.getMinutes();
const seconds = currentDate.getSeconds();
console.log(`${year}-${month}-${day} ${hours}:${minutes}:${seconds}`);
what's the fastest way to make an image take up the entire screen? (without using ["100%", "100%"]?
That's made with plugin
That's the only way, I don't know what you are talking about
Idk, I just need an image to fill the screen but it's from a server form so 100% 100% doesn't actually fill the screen
it fills like a 200x200 box in the middle of my screen
I can set it to like 250% 250% but would that cause issues for large screens?
#1212105007474679899 message
"main_screen_content": {
"type": "panel",
"controls": [
{
"server_form_factory": {
"type": "factory",
"control_ids": {
"long_form": "@server_form.long_form",
"custom_form": "@server_form.custom_form"
}
}
}
]
},
So this? If so, It didn't work
All parents of the image are set to 100% 100% size
Can you send your code
Why don't you try adding "size": ["100%", "100%"] to main screen content
Yeah, all good works now, seems that long_form needed that too. I thought 100 100 was the default tbh
Is it like this
Its editable through texts/language files but i dont know if it can get the date and time
thats why u use the data.message unless its readonly
read only
hmm
you can't directly modify the message
why not just cancel and use world.sendMessage?
That's exactly what i did on the screenshot
yeah ik, im asking indian why he doesn't want to use that
Aahhh alright
how do you get the current time, is it using timestamp in json ui?
No, that's through java script code,getting the timezone on where the code runs to
Script
"$aaa|default": "aa",
"$condition": "((#num_price > 10000) or (#num_price = 10000))",
"variables": [
{
"requires": "$condition",
"$aaa": "abc"
}
],
It doesn't work.
Can you tell me why?
Generally speaking, you can use variables in binding equations, but you cannot use bindings in variable equations. So in this case, you can't use #num_price in your $condition variable.
Is there any way to use #num_price?
@agile shale sorry for the ping, but has this been fixed for you? Ping me when you reply #old-json-ui message
2022
Jesus
Let me Figure out what project that was hold on
Np
Can you send your whole code
What is #num_price supposed to be?
{
"binding_type": "view",
"source_property_name": "(1000000*#7+100000*#6+10000*#5+1000*#4+100*#3+10*#2+1*#1)",
"target_property_name": "#num_price"
},
I don't know if the format is supposed to be that way
What are #7, #6 etc. ultimately being read from? Like what binding is being used as the original source
Any updates?
Hold on, Im having some difficulties to boot into my OS😅
"bindings": [
{
"binding_type": "collection_details",
"binding_collection_name": "form_buttons"
},
{
"binding_name": "#form_button_texture",
"binding_type": "collection",
"binding_collection_name": "form_buttons"
},
{
"binding_type": "view",
"source_property_name": "(not ((#form_button_texture = '') or (#form_button_texture = 'loading')))",
"target_property_name": "#visible"
},
{
"binding_type": "view",
"source_property_name": "(('§z') + (#form_button_texture)",
"target_property_name": "#all"
},
{
"binding_type": "view",
"source_property_name": "(('§z') + ('%.10s' * #all))",
"target_property_name": "#number"
},
{
"binding_type": "view",
"source_property_name": "(('%.4s' * #number)-('%.3s' * #number))",
"target_property_name": "#7"
},
{
"binding_type": "view",
"source_property_name": "(('%.5s' * #number)-('%.4s' * #number))",
"target_property_name": "#6"
},
{
"binding_type": "view",
"source_property_name": "(('%.6s' * #number)-('%.5s' * #number))",
"target_property_name": "#5"
},
{
"binding_type": "view",
"source_property_name": "(('%.7s' * #number)-('%.6s' * #number))",
"target_property_name": "#4"
},
{
"binding_type": "view",
"source_property_name": "(('%.8s' * #number)-('%.7s' * #number))",
"target_property_name": "#3"
},
{
"binding_type": "view",
"source_property_name": "(('%.9s' * #number)-('%.8s' * #number))",
"target_property_name": "#2"
},
{
"binding_type": "view",
"source_property_name": "(('%.10s' * #number)-('%.9s' * #number))",
"target_property_name": "#1"
},
{
"binding_type": "view",
"source_property_name": "(1000000*#7+100000*#6+10000*#5+1000*#4+100*#3+10*#2+1*#1)",
"target_property_name": "#num_price"
}
]
Ah okay, I see. I was hoping you were using something like an actionbar or title where you could just get a variable for the value and perform the same manipulations. But with form button texture you're stuck using bindings. What do you want the $aaa variable to do?
I want to display with label
I realized that I could write two identical elements and make one of them invisible depending on the conditions
You could, yes. But why not just add another binding to set #num_price to #text for a label element?
Use code like this?
const formatFileDetails = (world) => {
const currentDate = new Date();
const d = new Date(world.lastPlayed * 1000);
const timeDiff = currentDate - d;
const oneDay = 24 * 60 * 60 * 1000;
const defaultFormat = [d.getDate(), tl(MONTHS_SHORT[d.getMonth()]), d.getFullYear()].join(' ');
const formatTime = (d) => {
const pad = (n) => (n < 10 ? `0${n}` : n);
const hours = pad(d.getHours());
const minutes = pad(d.getMinutes());
const seconds = pad(d.getSeconds());
return [hours,minutes,seconds].join(':');
};
const formatDaysAgo = (days) => `${days} ${tl('.daysAgo')}`;
const formatWeeksAgo = (weeks) => `${weeks} ${weeks > 1 ? tl('.weeksAgo') : tl('.weekAgo')}`;
switch (true) {
case timeDiff < oneDay:
return dateFormat('.fileDetails', [world.fileSize, formatTime(d)]);
case timeDiff < 2 * oneDay:
return dateFormat('.fileDetails', [world.fileSize, tl('.yesterday')]);
case timeDiff < 7 * oneDay:
return dateFormat('.fileDetails', [world.fileSize, formatDaysAgo(Math.floor(timeDiff / oneDay))]);
case timeDiff < 4 * 7 * oneDay:
return dateFormat('.fileDetails', [world.fileSize, formatWeeksAgo(Math.floor(timeDiff / (7 * oneDay)))]);
default:
return dateFormat('.fileDetails', [world.fileSize, defaultFormat]);
}
};
const lastPlayed = (0, react_facet_src.useFacetMap)(formatFileDetails, [dateFormat, tl], [item]);
I understand.
Thank you.very much
is that a server?
anyone knows how to fix the invisible buttons?
basicly this is because of another form
{
"[email protected]": {
"enabled": false,
"visible": false,
"bindings": [
{
"binding_type": "global",
"binding_condition": "none",
"binding_name": "#title_text",
"binding_name_override": "#title_text"
},
{
"binding_type": "view",
"source_property_name": "(not ((#title_text - '§x') = #title_text))",
"target_property_name": "#visible"
},
{
"binding_type": "view",
"source_property_name": "(not ((#title_text - '§x') = #title_text))",
"target_property_name": "#enabled"
}
]
}
},
what would you like to do?
well basicly a custom form adds invisible buttons to other uis
something similar to this
{
"grid": {
"type": "grid",
"grid_dimensions": [
9,
3
],
"size": [
"100% - 14px",
"100% - 24px"
],
"offset": [
7,
20
],
"anchor_from": "top_left",
"anchor_to": "top_left",
"grid_item_template": "custom_button.button",
"collection_name": "form_buttons",
"layer": 1
}
}```
whats that
please #1216065529098272939
What are you trying to do? Do you want to use 3 or 4 different buttons?
so you suggest to limit the amount of buttons with grid dimension?
Yes
but im not using grids
i mean i have a grid for the towers ui but the problem is not in there
the towers ui its the one making other uis bug
Can you send me the buttons to see?
¯_(ツ)_/¯
who made it?
i got the bigger size i just want to know how the buttons work
how do i add button editability
i guess i would say
nvm i got it
how do i make sure that the title is always minecraft ten font i asked for help from other people but they couldn’t seem to fix it
guys is there an ore ui button template?
so all buttons and stuff are ore ui based
hud_screen.json no?
yes, but I can't find where to modify the file
ui_common
i follow this tutorial for scrolling panels, how can i make it so when the form has one row buttons, all the buttons are centered
🔗Links :
Last Video Part: https://youtu.be/CWm-KU5ALOQ
Join My Discord! : https://discord.gg/tzrmH56JXC
My Website And Code: http://skyls.de
Music : https://www.youtube.com/watch? v=tEzYsaLm7nw&ab_channel=SimonChylinski-Topic | Breathing Break from the Riot Creator Playlist
JSON UI docs : https://wiki.bedrock.dev/json-ui/json-ui-intro.html
Vani...
also, is there a way i can make a form cover the whole screen?
Lmao
Thats too long
The hunger should be at the bottom lf armor renderer in the stack panel but it goes on different position,i tried to set a custom position or anchor but doesn't change anything,how do i fix this
There's also this problem when the armor renderer increases height offset whenever i added health boost acts like a stack panel even tho its in my custom panel
is there a way to have a button link to a certain url?
Yesn't.
just hardcoded urls?
only microsoft/mojang links though.
damn
weird
and somehow can be used on NPC
what happens if you try to enter anything else?
well, it'll does nothing.
"[email protected]": {
"$focus_override_left": "armor_item_head",
"$focus_override_left_binding_type": "none",
"$focus_override_up": "FOCUS_OVERRIDE_STOP",
"$item_collection_name": "offhand_items",
"$pressed_button_name": "button.drop_one",```
Can you tell me what this does?
Does JSON-UI have backwards compatibility or will it get removed off the face of the earth once Ore-UI goes stable?
We do not know yet
:( well thanks for the answer
{
"label": {
"type": "label",
"layer": 99,
"size": ["80%", "10%"],
"anchor_from": "top_left",
"anchor_to": "top_left",
"offset": ["4%", "10%"],
"font_scale_factor": 1.4,
"text": "#form_text"
}
},```
can someone please walk me through why it cuts off after the js
there is supposed to be more lines
womp womp
{
"label": {
"type": "label",
"layer": 99,
"size": ["100%", "100%"],
"anchor_from": "top_left",
"anchor_to": "top_left",
"offset": ["4%", "10%"],
"font_scale_factor": 1.4,
"text": "#form_text"
}
},```
.
Question: What is th e best way to fix this overlaping?
i tried to repeat the same steps but nothing worked so far
nvm, i got it.
so this doesn't happen again, make the size 100% in both main_screen_content and long_form
where can i change kick screen?
clips_children into true or layer for me
Is it possible to make rhombus shape panel and clips the elements on it
Something like this
I don't think you can make the panel rhombus shaped. You just have to know the size of the images and anchor/offset appropriately based off their size and layer the rhombus shaped image on top
Understandable,thank you
How do you use play_event on animations?
I know that you can use to_button_id on a button to fire the event, but is that the only way?
send code not screenshots, makes it easier to help
I figured it out
I hard codedit for long forms
👍
when I wrote it for pocketmine
i then tried using it on dragonflyt
that used a custom_form base :>>>
1.2.0-beta
hey would you guys know why these 2 error's is popping up in this pack?
ui/inventory_screen_pocket.json: Can't find the control: recipe_inventory_screen_content_pocket/root_panel/hotbar_and_panels```
here's the code from that json file if anyone would be able to spot the mess up
"namespace": "crafting_pocket",
"recipe_inventory_screen_content_pocket/root_panel": {
"modifications": [
{
"array_name": "controls",
"operation": "insert_front",
"value": {
"pizza_table_inventory@pizza_table.pizza_table_inventory": {}
}
}
]
},
"recipe_inventory_screen_content_pocket/root_panel/hotbar_and_panels": {
"modifications": [
{
"array_name": "bindings",
"operation": "insert_front",
"value": {
"binding_name": "#crafting_label_text"
}
},
{
"array_name": "bindings",
"operation": "insert_back",
"value": {
"binding_type": "view",
"source_property_name": "(#crafting_label_text = container.crafting)",
"target_property_name": "#visible"
}
}
]
}
}```
Hello can I ask if there's a way to disable the button in the server form, if the player have a specific "#hud_title_text_string"? Example if the player have "#hud_title_text_string" of no the button in the server form would be disabled
I want to hide or ignore the button I hovered right in the picture whenever the player had a "#hud_title_text_string"
probably because the control itself is invalid, try to use a json validator to locate the error.
I did and it says its valid which is whats confusing
i don't know, i have never used modifications and have no idea how they work
Can any json ui expert bring back the traditional D-pad Mojang just fully took away from us in yesterday's update?
????
not sure what dpad you mean since it's still there
They updated its texture and positioning 🥲
Now it's similar to the other two controls
well you can reverse the texture though.
also about the position, touch customization is there.
just idk move to wherever you wanted it to be
and also, nope. json-ui can't alter touch controls since they're pretty much isolated to the game codes so, it's uh. unmodifiable and there's nothing else we can do with it
Can anyone tell me in which file in the UI folder I can change the world's loading screen?
progress_screen.json
Thanks
import { world, system, Player, ItemStack, EquipmentSlot } from '@minecraft/server';
import { ActionFormData, MessageFormData, ModalFormData } from "@minecraft/server-ui";
const ui = new ActionFormData()
.title("Shop")
.body("")
.button("Kits")
.button("Items")
.body("")
world.beforeEvents.itemUse.subscribe((event) => {
const { source, itemStack } = event
switch (itemStack.typeId) {
case `minecraft:gold_ingot`: ui.show(source); break
}
})```
Cannot find name 'ui'
does anyone know why?
#1067535382285135923
is this correct? json "bindings": [ { "binding_type": "view", "source_property_name": "(('%.15s' * #form_text) - ('§0' * 10))", "target_property_name": "#form_text" } ]
for some reason its not actually removing the characters
oh wait
wat does '§0' * 10 do ?
if im not mistaken its that string * 10
so basically text - "§0".repeat(10)
that works?
@mystic heart it says ping me so, i was wondering if you could help 
I don't think ('§0' * 10) is valid. I think there is a way to repeat characters, but I don't remember the format for it. If it's only 10 you may as well just write it out.
hmmm
i think it is valid
oh wait nvm
Well even if it is, you're overwriting the same binding here:
"source_property_name": "(('%.15s' * #form_text) - ('§0' * 10))",
"target_property_name": "#form_text"
You need another binding in the target property unless you want it to loop itself away.
wym?
You're setting the value of #form_text to a modification of #form_text.
ohhh
well id like to overwrite the form text without certain characters
like this? json { "chances_text": { "$form_text": "#form_text", "type": "label", "text": "#form_text", "anchor_from": "top_left", "anchor_to": "top_left", "text_alignment": "left", "size": [ "100%", "100%" ], "offset": [ 6, 15 ], "bindings": [ { "binding_name": "#form_text" }, { "binding_type": "view", "source_property_name": "(('%.15s' * $form_text) - ('§0' * 10))", "target_property_name": "#form_text" } ] } }
i’m kind of confused
When you say overrwrite form text, I assume you mean you want to change the label that is displayed? If that's the case you don't want to change the value of the binding #form_text. You can set "target_property_name": "#text" and then inside the label, change the text value to "text": "#text",.
I dont understand how multiplying/subtracting strings work
How do clip ratios works?
"barr": {
"type": "image",
"texture": "textures/ui/experiencebarfull",
"size": [
100,
10
],
"layer": 200,
"clip_direction": "left",
"$clip_max": 10.0,
"clip_pixelperfect": false,
"bindings": [
{
"binding_type": "global",
"binding_name": "#hud_title_text_string",
"binding_name_override": "#text"
},
{
"binding_type": "view",
"source_property_name": "(#text * 1)",
"target_property_name": "#clip_ratio"
}
]
},
ohhh, is #text binding a free to use binding for binding text?
How can I make the live_player_renderer renderer only visible the player's head?
make the parent panel's clips_children into true,and then just adjust the size of the renderer to display its head properly
Basically just cropping the body
kk
Can you guys know how to render a json ui on the screen
It's the only I need
Uhm like I will render this to the screen and I will make a text to the book and for the right side there's a custom image
Help
Technically #text can be replaced with any unique binding. Text elements use the #text binding by default, so technically writing "text": "#text" is not usually necessary (unless overwriting a vanilla element with a set text parameter). But you can also set it to a binding of your choosing. You could do this for example and it would be valid:
{
"chances_text": {
"$form_text": "#form_text",
"type": "label",
"text": "#modified_form_text",
"anchor_from": "top_left",
"anchor_to": "top_left",
"text_alignment": "left",
"size": [
"100%",
"100%"
],
"offset": [
6,
15
],
"bindings": [
{
"binding_name": "#form_text"
},
{
"binding_type": "view",
"source_property_name": "(('%.15s' * #form_text) - ('§0' * 10))",
"target_property_name": "#modified_form_text"
}
]
}
}
The key is that the binding(s) being used in the source property equation do not match the target property binding. If they do, it will overwrite itself in a loop. That can be utilized in some cases, but here it is messing up what you're trying to do.
You mean how to make your UI appear on the screen? You can use an NPC screen or server form screen.
You probably also want to set "enable_scissor_test": true when clipping renderers
One message removed from a suspended account.
One message removed from a suspended account.
Would it possible to access "$title_text" (or "$actionbar_text") in another menu that isn't the hud? Like the inventory for example
An alternative to this would maybe be displaying text in the players inventory based on a specific items lore? Im really just trying to show text in the player inventory based on scripts
One message removed from a suspended account.
One message removed from a suspended account.
One message removed from a suspended account.
Did you insert it into the root panel?
One message removed from a suspended account.
One message removed from a suspended account.
It appears you did not insert it into the root panel
I am using android and cannot code, But on PC I can
One message removed from a suspended account.
The root panel is just like the Main Program for c# but for Minecraft ui
It's the main entry
One message removed from a suspended account.
You are missing one detail: The namespace "hud"
At the top
Wen I get into my PC I may fix all errors
It's actually not needed if it's the hud_screen.json file
Woah, You are not required to use that
Well that only applies for vanilla ones
If anyone is wondering why, it's because how Minecraft merges code like how GitHub merges code so no need namespace
What file to edit the worlds/friends/servers tab
play screen
Nice joke
what
Nothing,you might have misunderstood me or am i wrong,the play screen was for main screen where the buttons like Play,Settings, Marketplace are,what i was looking for is the world list,server list,friends list
start screen is where play and settings are. You can actually look for navigation_tab in play screen if you're sketchy
play_screen is the screen that shows when you cliclk "Play" aka the screen you want
Lol
it was just confusing with the namespace
well it should make sense already
start meant for main menu and play meant for world selection
migit got confused with world edit screen for second
but yeah it's play screen if it don't then idk what else
Aahhh i get it now sorry,i forgot it was start namespace for main buttons
It's also weird progress screen is seperated on disconnect screen
Also there's new folder called csb
What even the hell is that
CSB are likely controlled by marketplace.
that one makes sense.
since progress screen purpose is to basically load them, kinda like a waiting screen in general.
it's also well prioritized, so anything that call progress screen, any previous screen will be killed. (unless the previous screen are flagged not to kill)
Maybe they will support JSON UI then no? Because why would they still work on JSON UI
Well this is a rather "random" on mojang
they're working on ore-ui and json-ui constantly for some reason
it wont change the fact that json-ui are still gonna be replaced by ore-ui in the foreseeable future because how easy it is to make screens for
Maybe 2 different team?
Same team.
Who worked on JSON UI before though
Basically, its has to do with "legacy codes" all over again
Is that J Studios or I forgot
well i guess probably someone at mojang UX Bedrock team knows how to use json-ui as the source code is on front of them
and no, 4JStudio has nothing to do with this, they literally create minecraft from scratch for console so
strangely enough, both of Legacy console edition (4J) and bedrock uses the same c++ language as engine base
bruh they also going on those flat design trends
well c++ is reliable for cross-compatibility so 🤷♂️
well HTML and JSON-UI are pretty close in term of how easy to make so
nearly equal but HTML is much more easier
but only doubt i have is either them gonna make it modifiable through the pack or not
yeah, still doesn't make sense.
you literally have the same game in the same coding language aswell one being more advanced and even closer to java feelings
you have 1.9 combat and cool minigames and stuff, why bedrock?
I don't get what you mean
Legacy Console edition or 4J port of minecraft actually have more features than bedrock.
you have every java features into the port unlike bedrock.
feels alot like java too.
pretty much like terraria port side of things where they port and translate the source code into c++ and basically plays like the original version
I think making bedrock is because it'll don't be a stress to code the same thing java to c++. I honestly don't know either, maybe mojang is just lazy.
well idk the source code is right there
if 4J left, mojang still able to continue building on top of it
but instead they just go for bedrock because, well. mobile i guess
even legacy edition runs better than bedrock for some reason
I think they are focusing on cross-compatibility rather than playability/enjoyability
Like look at better than wolves
well it kinda odd
bedrock originally being a mobile game also caused limitations alot in more platforms.
how to change the help button of the inventory screen ?
@hexed briar hey sorry to disturb but did you notice how size bindings acts? Like I've used it and putting in 1 results it to cover the whole parent size
well obviously
it's basically familiar with percentage expect that 1 = 100%
0.50 = 50% etc
Oh it works like that? Thanks
It's so weird though
But you can't do px
yeah that's expected
bindings value can't accept operations.
probably goes the same with any values
How can I change the color of the boss bar?
how to change the help button of the inventory screen ?
How do i preserve chat messages? for some reason it wont work like hud_title_text or subtitle or actionbar 
idk but i have a question, how you create an actionbar who can add an image to the screen ?
if the image is just 1 image then you can deifne the image path inside of a custom image element in the json ui and then u can call it inside of the action bar hud element
otherwise i wouldnt know im not that good with json ui
do you have one example of code ?
np, i’m more bad than you
anyone know if its possible to change text_alignment on a text if the text starts with a certain character?
i know how to see if the text starts with the right character(s) but im not sure how to do the bindings
has to be a valid font im assuming
use variables?
never used em
and im sure youre not here to tell me how
nvm i do already know how to use them
i sitll need bindings if im gonna use variables
i meant like this
yes
sweet thanks
yeah i been trying to get it working it dont
Bindings don't work inside variable array
"main_label": {
"type": "label",
"offset": [
2,
5
],
"color": "$main_header_text_color",
"size": [
"100%",
"default"
],
"variables": [
{
"requires": "(#form_text = 'a')",
"$alignment": "center"
}
],
"anchor_from": "top_left",
"anchor_to": "top_left",
"$alignment|default": "left",
"text_alignment": "$alignment",
"text": "#form_text"
}
Haven't tried this but can you try?
"$var": "#form_text",
"variables": [
{
"requires": "(not (($var - 'string') = $var))",
"$alignment": "center"
}
]
Oh lol
unfortunately it did not work 
I can't really think of any possible ways. But you can make 3 elements with different alignment and just visible binding to them. Its inefficient though if you are not okay with that.
could work
how would making different alignments work?
cause arent they all the same
Like example you put a panel and add 3 labels into it. You could add some visibility binding on each of them and different text alignment. Kind of like "..only show when this happen.."
oh i see now 😭
It may cause the lose of performance though if you're looking to make a larger one
im only doing two alignments either center or left
As of now i think Mojang should add .then stuff to bindings lol or just enable binding to variables.
ill see what i can cook up
Hey i think it actually works its just requires is returning true when it shouldnt be
this one clearly wont ever return true and the alignement defaults to left as intended, but if i remove 'not' then it will center align again
"$text": "#form_text",
"variables": [
{
"requires": "(not ($text = $text))",
"$alignment": "center"
}
],
"$alignment|default": "left",
"text_alignment": "$alignment",
So it works??
yeah but
something like
variables": [
{
"requires": "($text = 'Hello world')",
"$alignment": "center"
}
],
will return anyways even if text is not remotely close to that
which i dont get....
I don't see quite a problem on that equation though. What is the #form_text currently?
I mean what's in the body?
.body("Hello world")
Um so it would center right??
its centered
but then if i change .body()
to anything else
it will still be centered
"$text": "#form_text",
"variables": [
{
"requires": "(($text - '§/') = $text)",
"$alignment": "center"
}
],
"$alignment|default": "left",
"text_alignment": "$alignment",
.body("§/Hello world!")
.body("Hello world!")
would both be centered
if i change the requires to have "not", it will now both be left aligned
I don't know whats happening. Let me ask @mystic heart (srry Shane)
It seems normal to me
Can you try this?
"$text": "#form_text",
"$d": false,
"variables": [
{
"requires": "(($text - '§/') = $text)",
"$d": true,
"$alignment": "center"
},
{
"requires": "(not (($text - '§/') = $text) and (not $d))",
"$alignment": "left"
}
],
"text_alignment": "$alignment",
i have tried that too and it didndt work, ill try it again
same thing, its always aligned center
in other words (($text - '§/') = $text) is always true
Bruv what is happening
i appreciate the help a lot, but ima rest my head and go to bed, maybe your friend can figure out whats happening lol
before i go i just wanna say that this will always text align to left 💀
"$text": "#form_text",
"variables": [
{
"requires": "(not (($text - '§/') = $text))",
"$alignment": "center"
},
{
"requires": "(($text - '§/') = $text)",
"$alignment": "left"
}
],
"text_alignment": "$alignment",
Can you try this one
i saw you edit it ill see if that does anything
still aligned center
yeah its time for sleep lmao
again appreciate your efforts with me
Alright no problem 
binding #offset, what values are possible, I tried inserting an array using property_bag it didn't work
Why not use anchored offsets
Isn't that just work for image?
I guess so but you can also try this: #1167655229479714916 message
What do you wanna do with it?
moving element position with binding, achored_offset and size_binding are already used by others people,
I can't use something similar, I'm afraid there will be another copyright strike🙂
Why would someone copyright you for using those it's not like it's their property plus this is a block game
Just use whatever works
Other people crying over a block game method are just childish
They can't stop you
when I publish it on planet minecraft, modbay, mcpedl, I always get warnings, and it endangers my account,
it's also very tiring having to update the download link every few days, because it's often reported
Hmm why don't you make your own official website since you're very known creator?
I can't make dynamic websites, I can only do React JS front end, so I can only make static websites
Hmm are you cursed as front end designer
Anybody knows if there's a property on factories that can limit the amount of elements it can make
yes
"max_children_size": 10,```
Can someone teach me how to render the JSON UI in the screen,like title but the problem is that we can move and interact with other ui's.uhm what I mean is when I activate the title @s title hi the ui will show but the player can't move and can't interact with other ui
Basically you want a sidebar but a screen
"standard_title_label": {
"type": "label",
"size": [ "default", 10 ],
"color": "$title_text_color",
"text": "$text_name",
"layer": 4,
"shadow": false,
"property_bag": {
"#tts_dialog_title": "$text_name"
},
"bindings": [
{
"binding_type": "$title_text_binding_type",
"binding_condition": "$title_binding_condition",
"binding_name": "$text_name",
"binding_name_override": "$text_name"
},
{
"binding_type": "global",
"binding_condition": "once",
"binding_name": "#tts_dialog_title"
}
]
},
these are the only properties that are in the json ui you can use
font_type is not one of them
if you want to edit it paste this in your ui folder
i take it it worked?
gotta do bindings
because youre doing visible if the title is only a certain text
not the font
i think youd need variables for that
i just had a mess with them last night and i cba to get them working sorry
they dont work for me apparently
when theyre supposed to
i mean i suppose you dont have to use variables
do you know what the defult font is?
like the actual name
MinecraftTen
etc
uhm
i dont think so
Mojangles NotoSans or sm
@restive crag If it hasn't been answered already, you can't use bindings in variable equations (but you can use variables in binding equations). So the requires will never change its value.
If you just want to change the alignment of text based off #form_text, I think the simplest way would be to just have 2 elements and make one visible/the other invisible based off the value.
Oh a second there I thought it works
One message removed from a suspended account.
Yes it is possible, just search collection index here
One message removed from a suspended account.
Please search before you ask.
One message removed from a suspended account.
One message removed from a suspended account.
im still kind of new to json ui, so to clarify you mean to say that i cannot use stuff that start with # in them? even if i do "$var": "#binding" and use that variable?
I did take your suggestion to do two elements and make eithe rone visible/invisble in the binding equation and got what i was looking for, however im just asking so i know for the future
The stuff that starts with # are bindings. They are evaluated after variables, so you can use variables inside a binding equation, but you cannot use the bindings inside a variable equation. You can set a parameter to the value of a single binding, but it cannot be an equation. For example, you can have:
"text": "#text" but you cannot have "text": "(#text + $var)". You can also set a variable to the value of a single binding, but then that variable cannot be used in an equation because it's just an association.
In regards to the last part, you can do:
"$var": "#text",
"text": "$var"
But you would not be able to do:
"$var": "#text",
"text": "($var + 'string')"
Because the variable is now associated with the binding value. It's not a normal variable anymore, and so like bindings they cannot be used in equations.
what if i set the variable to the value of that single binding but add a "" to it, would i then be able to use it in the variable? or perhaps a dummy character i can just include in the variable equation?
wdym add ""
#binding + "" in the bindings
Like you set a variable to #binding + ""?
you can say that yeah
it wouldn't work, since it's still considered a binding being used in a variable equation
or even
"bindings": [
{
"binding_type": "view",
"source_property_name": "('§.' + #form_text)",
"target_property_name": "#text"
}
]
"$var": "#text"
wait am i talking gibberish
wait sorry I just misread that
would this technically bypass not being able to use bindings in variable equations?
You're not talking gibberish, no. This will work since the binding equation is done first in the bindings
so i may have cooked 
It's not really a bypass since you're doing the equations within the bindings themselves first. But this is still a bit limited, because for example if there is not a binding for a desired parameter (idr if text_alignment has one or not), you wouldn't be able to do the same thing you would in variables requires.
in all honesty i dont even know what youre saying about how its limited but i thank you for spedning the time to clarify with me 
so in this case you can change the text parameter dynamically because there is a binding that exists for it. Or you're able to set the parameter to a binding (now that I think about it you could probably set text_alignment to a string with "left", "right", etc. But this doesn't work for all parameters. Since the variables requires section allows you to change variables dynamically, and all parameters support variables, you can change any parameter with variables. But it doesn't always work that way with bindings.
wouldnt doing
"$var": "#text"
fix that? or does that just go back to same issue with not being able to use bindings in variable equations
Yeah i just tried it and it didnt work ima just stick with the two elements and visible/invisble bindings 😭
Anybody know how to remove equipment and that purple background
How to round or truncate decimal numbers with bindings?
1.2345678 to 1.23
I tried making it a string and truncating it with %.s and returning it to int it didn't work
it does an automatic thing where if you're using decimal, it'll just be the fixed decimal so. rounding them is gonna be difficult, or better just don't expand decimal
if 1.00, its gonna be 1.00 and not something like 1.00000
vice versa.
I want to change the clip ratio to text 0% - 100%,
I tried with property bang if only 2 - 4 decimals is fine, but in fact the clip ratio produces more than that and causes crashes
Can you try ('%.2f' * #integer)
becomes a random int, not as expected
How do you see if its "random" int?
random number, when I exit the screen it will change again, the %.2f result is the same length as the input, not truncated
How bout '%.2df'
is that a glyph 😭
Yup
how to crash mobile players 101
so do we know when we can expect oreUI cuz i dont feel like learning json ui
One message removed from a suspended account.
They haven't finished it themselves lol. So probably not soon
2025
One message removed from a suspended account.
One message removed from a suspended account.
I think i might actually have to learn oreui
Isn't it gonna be based on react
yeah and also doesn't exactly matter.
if you can't modify within resource pack then that's pretty much it.
can't do anything with it.
Jsonui Just feels weird and I don't really feel like learning it since it's used only for minecraft.
I mean since script api is in js it would make sense for an ui system in js/html also
json-ui is pretty much just json.
Its probably just me being used to stuff
it pretty much works the same as html, except that it's json and javascript can't be exactly used in it
Ore-UI is probably more easier since, well. its literally html
but still, if there's no official way to modify it or do things with resource pack, it's pretty much useless if you're looking to make UI with it
It would be logical for mojang to allow for it to be used when it comes out
well yeah, it's pretty much "ifs"
they're pretty much doing random stuff with UI pretty often.
One message removed from a suspended account.
One message removed from a suspended account.
One message removed from a suspended account.
I mean the order in they are changing uis feels random
sometimes they get rid of json-ui stuff in the favor of ore-ui at the same time making json-ui variables works with ore-ui
so idk
it's all random, so none of us can predict it.
It's basically react which is simpler to understand and stuff
It's slightly more easier to modify UI due to it being HTML instead of JSON.
and also more modern since it uses web techs.
which this outcome causes uh, performance issues.
One message removed from a suspended account.
One message removed from a suspended account.
I love electron apps 💀
so its more of - get latest tech aswell device overheating
that's ore-ui and most webapps about in general
Json-ui kinda works the same although abit hard but more easier if you already knew json and html in the first place. pretty fast and doesn't cause performance issues (unless you uh, make things too much)
me when i realized that discord is more intensive than youtube
i love chatting app that somehow overheats for goddamn no reason
i am learning react right now so i will join the legion of unoptimized apps
One message removed from a suspended account.
One message removed from a suspended account.
One message removed from a suspended account.
One message removed from a suspended account.
@pine furnace
{
"homescreen_panel": {
"type": "panel",
"layer": 100,
"size": ["100%", "100%"],
"controls": [
{
"long_form_dynamic_buttons_panel": {
"type": "stack_panel",
"size": ["100% - 4px", "100%"],
"offset": [2, 0],
"orientation": "vertical",
"anchor_from": "top_middle",
"anchor_to": "top_middle",
"factory": {
"name": "buttons",
"control_name": "server_form.homescreen_button"
},
"collection_name": "form_buttons",
"bindings": [
{
"binding_name": "#form_button_length",
"binding_name_override": "#collection_length"
}
]
}
},
{
"homescreenbg1": {
"type": "image",
"size": ["186px", "204px"], // Adjusted size
"texture": "textures/ui/homescreen/bg1",
"layer": 0,
"bindings": [
{
"binding_name": "#title_text"
},
{
"binding_type": "view",
"source_property_name": "#title_text = 'homescreen1'",
"target_property_name": "#visible"
}
]
}
}
]
}
}```
One message removed from a suspended account.
No, I just add that for reference or editing
This didn't work because there's and extra ) on the source property name
One message removed from a suspended account.
One message removed from a suspended account.
why is my form text so cooked?
tried "shadow": false and it still displays those black lines inside text
Wdym?
Some buttons have different textures?
One message removed from a suspended account.
@broken trail did you ever figure this out #old-json-ui message
"anim_type": "clip"
Okay, so I'm learning JSON UI for the first time. What does the "factory" property do?
Clip what does it do?
Clip is unused now, it was just use from a file for testing animations. You can use panel with clip children and size animation though
Is ignored binding exist?
nope
you can do everything by size animations
and ^
Yes and not exactly what you would think.
Ignored bindings basically kills the whole bindings bracket so, kinda basically a kill switch. not exactly disabling element
and does not work like ignored property does
Define kill switch
So how can I do a clip animation?
I’m doing it for a health bar, so clip from 1 to 0.6 for example
