#Server Form without reload anim

1 messages · Page 1 of 1 (latest)

shy parcel
#

I have seen people do this.

#

@azure trail Longing

azure trail
#

@shy parcel you should be able to remove the anims from the screen itself. I haven't messed with the server form yet, but if you find the screen element (search base_screen, try putting "$screen_animations": []

#

@shy parcel here's what the base_screen anims look like:

"$screen_animations|default": [
      "@common.screen_exit_animation_push_offset",
      "@common.screen_exit_animation_pop_offset",
      "@common.screen_entrance_animation_push_offset",
      "@common.screen_entrance_animation_pop_offset",
      "@common.screen_exit_animation_push_fade",
      "@common.screen_exit_animation_pop_fade",
      "@common.screen_entrance_animation_push_fade",
      "@common.screen_entrance_animation_pop_fade"
    ],
    "$background_animations|default": [
      "@common.screen_exit_animation_push_alpha",
      "@common.screen_exit_animation_pop_alpha",
      "@common.screen_entrance_animation_push_alpha",
      "@common.screen_entrance_animation_pop_alpha"
    ],

So you can add/remove any you want

shy parcel
#

I had tested this before by modifying it directly in base_screen and I swear I still had annoying lag, thx you!

shy parcel
shy parcel
azure trail
shy parcel
novel iron
shy parcel
novel iron
#

If it is correct, set "button_mappings" to an empty array?

#

or just like this?

#
{
    "namespace": "server_form",

    "[email protected]_screen": {
        "$screen_content": "server_form.main_screen_content",
        "force_render_below": true, //set true to render last ui that under the form
        "$screen_animations": [],
        "button_mappings": [
            {
                "from_button_id": "button.menu_cancel",
                "to_button_id": "button.menu_exit",
                "mapping_type": "global"
            }
        ]
    }
}
shy parcel
shy parcel
#

Thx!

#

Wait, render all last ui, Other menus for example?

#

I will test it later, thx you

novel iron
# shy parcel How could I do this?
{
    "namespace": "server_form",

    "[email protected]_screen": {
        "$screen_content": "server_form.main_screen_content",
        "force_render_below": true, //set true to render last ui that under the form
        "$screen_animations": [],
        "button_mappings": [ // set array of button_mappings to an empty array
            //{
                //"from_button_id": "button.menu_cancel",
                //"to_button_id": "button.menu_exit",
                //"mapping_type": "global"
            //}
        ]
    }
}
devout goblet
novel iron
# devout goblet that works, but it still updates a small delay later. Is there a way to update i...

Not sure that work, but you could add cache_screen under the third_party_server_screen control to test your result.

{
    "namespace": "server_form",

    "[email protected]_screen": {
        "$screen_content": "server_form.main_screen_content",
        "force_render_below": true, //set true to render last ui that under the form
        "$screen_animations": [],
        "cache_screen": true,
        "button_mappings": [ // set array of button_mappings to an empty array
            //{
                //"from_button_id": "button.menu_cancel",
                //"to_button_id": "button.menu_exit",
                //"mapping_type": "global"
            //}
        ]
    }
}
devout goblet
novel iron
#

Do you mean the transition process when the server form is opened?

devout goblet
#

yes, or when a button is clicked to open another form

novel iron
#

I guess this field could helps the player to get a faster response when reopening the UI afterward.

devout goblet
#

just tested, and it's a nope

#

there is still a 0.5s delay for the animation (which doesn't exist) to play

novel iron
#

When the vanilla UI is opened for the first time, the opening speed is affected by the complexity of the UI controls.
· The more controls a UI screen contains, the slower the creation speed.
Or
· The larger the size of the total image resources a UI screen uses, the slower the creation speed.
In addition, one more question:
The speed conclusion you got in the previous test comes from opening the UI for the first time or opening the UI repeatedly?

devout goblet
#

it's not lag

#

or amount of buttons

#

it's a fixed 0.5s for the animation to play

#

the same happens when closing the form

#

it lingers for around 0.5s while you have the ability to move, since an animation should be playing

novel iron
#

Is it work?

{
    "namespace": "server_form",

    "[email protected]_screen": {
        "$screen_content": "server_form.main_screen_content",
        "$screen_animations": [],
        "$background_animations": []
    }
}
devout goblet
#

that works! although there is a slight flicker

#

which I assume is the load time

#

is there any way to negate this?

#

I did use "cache_screen": true,

#

like maybe if I kept the delay for a much shorter time

novel iron
#

I think a slight flicker is inevitable if you must manually close the server-form UI before opening it next time.
Because it is caused by the logic of opening the UI immediately after it is closed.
Then this process is done by your client telling the server to do such an operation. The communication time required for this operation is small, but it will be noticed if your standards are high.
And I think the main purpose of cache_screen is to improve the speed of the client opening this UI next time.

#

Hope this statement is helpful to you. Right now I don't know how to change it.

devout goblet
novel iron
#

Try it.

{
    "namespace": "server_form",

    "[email protected]_screen": {
        "$screen_content": "server_form.main_screen_content",
        // When set to false, the screen will be rendered even if other screens(ChatScreen, Inventory Screen etc.) cover it.
        "render_only_when_topmost": false
    }
}
devout goblet
#

nah

#

That doesn't work

#

good suggestion though!

worldly osprey
#

maybe, disable screen animation in settings

devout goblet
#

The issue is the loading time now

devout goblet
novel iron
#

yeah, but currently I don’t have a pc to test the answer which is true of false . I am taking a vacation now. First, you could find all controls of background animation in ui_common.json. Second, change some of their durations. That’s all.

tawny gate
#

here, I need help on forms

#

how to make this on world

#

(scoreboard)

novel iron
#

But don’t change durations of animations in there. You could copy and paste them to the form ui. Then change the durations here, and put the names of controls in background_animation variable.

novel iron
tawny gate
#

Okay..

#

But what is a Script?

#

I don't speak English, learn this language.

#

I speak Russian, and Hebrew.

novel iron
#

I‘m not a English native speaker too. I think you should ask that at script channel.

shy parcel
#

when I have to click several times on the same button it ends up going to the end and I click on another, for other platforms like xbox you have to go back to the first button one by one

shy parcel
#

@azure trail can you help me with this?
do I annoy you with the mentions?

azure trail
shy parcel
azure trail
shy parcel
#

is there a way to put buttons without limits like server_form?

shy parcel
azure trail
#

You could disable the mouse for the screen to force them to use buttons

shy parcel
#

does not use mouse, uses buttons and automatically goes to the last button

#

by xbox and mouse or something with "selection"

shy parcel
#

my npc screen crash with exact 20 index buttons

#

i love the npc screen but he have this problem with limits

azure trail
# shy parcel Can you teach me? Please. dialogue without limit button

Removing the limits is just a matter of using the skin buttons. But they can be annoying to work with in multiplayer and they recently limited it so player has to be in creative + operator to use them. I would personally just stick with form. Does the glitch with the mouse/xbox selection happen even with the vanilla forms (no modified UI)?

shy parcel
#

yes

#

wait

#

idk if it would be that version 1.20, wonderful....

shy parcel
#

create a npc screen with 20 or 21 buttons, when opening the game closes

azure trail
#

Hmm. Maybe they will fix it in the future then since even the vanilla version is buggy

azure trail
shy parcel
#

before it would work and after trying to open the npc screen, it would close
now it doesnt open at all

#

but this error is something on the outside

shy parcel
#

using "Pocketmine"

#

before it did not show this error and I could pass the pocketmine limit, but Minecraft crashed

#

now I cant even see minecraft crash oof

#

another problem I see in the npc screen is that the text there are limits of digits, now I remembered why I left it

#

:(

shy parcel
#

❤️

azure trail
#

np! hopefully they can fix the issue with the mouse/button glitching cuz server forms seem much easier to use

safe bay
devout goblet
#

I’ve done it myself

#

However, there is a flicker that don’t like

shy parcel
#

no matter which one I click, it always goes back to the last button

shy parcel
#
"$focus_enabled|default": false,
"focus_enabled": "$focus_enabled"

the focus problem is this

shy parcel
acoustic skiff
shy parcel
#

plugin

acoustic skiff
#

it's a pity(

#

is it possible to make a form that can be scrolled to the side?

shy parcel
safe bay
safe bay
#

thats not this npc dialogue that isnt made like server form, form will reset everytime you click on something even when next one is literally same

#

in short, blame the greatest company in world, mojang

shy parcel
burnt briar
burnt briar
# shy parcel ?

like how are you are updating the form without opening new ones?

novel iron
#

I don’t see any api for creator to send data to client, and the UI is a part of client. Therefore I expect it’s currently impossible to change form-ui data through other ways except reopening it.

#

@burnt briar

shy parcel
#

is it possible to walk around with the menu open?

#

@azure trail "ping me" ;p