#enfusion_gui
1 messages ยท Page 2 of 1
I believe you can write to ImageWidget
with x,y,color
or if not theres another widget which does it
ah true, so your imageset could basically have a cube in it
I mean a square, not sure why I was thinking about UI in 3d space
I wouldnt do it pixel by pixel that way
just blit out pixels like you would on a javascript canvas
depends what you want to do
just saying if you can design your system in a way that uses widgets instead of drawing pixel by pixel, its going to be better any day
because the engine is optimized for rendering it, and that code is compiled C
just have an imageset with your whole color palette
but if you wanted to make say a graph widget that draws pixel by pixel and its mostly basic stuff like boxes and lines... that would be fine in script
you wouldnt need a palette, you can just use a white widget and recolor that to any color
well a bar graph would just be one image per line, since it could just be a fat rectangle
yes thats right
so still need to find the function to set pixel color on canvas
a column/bar graph would be better done in widgets
I can have a look when im in the workbench next
Hi @worldly sphinxI saw that you had managed to integrate this style, converting the text directly into games, do you have an example of how you did this script and gui? Do you think it can be updated in-game, change the display #enfusion_gui message
gonna play JA3 now
in ris laser attachments there is a rangefinder that displays range and zeroing on a tiny lcd display if you want to have a look at it
you can use the same method to draw anything on objects, from things like PC monitors to car number plates
things that dont need to update (like car number plates) should be cached hopefully into a texture
so its not drawing pixel by pixel on every frame
but I did want to look into that, like allowing people to make custom signs
I believe its possible to render a UI on to a world object
yes, pip optics do this, you can skip the camera and just use the layout
and yes don't do it every frame ๐
I do re-renders every 2 seconds or so for the rangefinder since it needs to update the ranges and make beeping noises if you are ranging correctly
neat
to make a slideshow of images on a screen (which I already have in prefab), what type of render would be best, to display each image in succession?
I would use the UI on world object option like bacon was talking about that PIP optics use
and just update the image every x seconds
either a single imagewidget and you update the image
or multiple imagewidgets that you hide/show
either would probably be fine
Ok i see thx for info, I've also created magnetic cards for locked doors that work great now I'm trying to integrate the little messages like error or valid card on the display, I think the range finder system is a good option.
yes, it'll work
You made a much better system than I did ๐ perfectly what I'm trying to do
is that a meat grinder of some sort?
I don't know what you're talking about ๐ค๐คฃ
it grinds the keycard, single use keycards
ahhhh alright
Ahhh yes i Will fix this right now ๐
Is that on the HMS adwell or whatever itโs called
hms adelaide but it's just taken at random ^^
anyone know how to force update the respawn menu (or loadouts available) on clients in exp branch?
kick the player so they rejoin
lol I might actually end up dropping this mod anyways, turning into a pain to fix for 0.9.9 I do appreciate all the Obsolete markers in the code directing where to look for some things, but I dont even know why its compiling and not working now.
I haven't been able to find a way to manually update menus via script at all.
does new radial menu stuff have documentation?
not that i found
WorkspaceWidget workspace = GetGame().GetWorkspace();
ResourceName m_ItemPreviewLayout = "{F28D4D80C8885E1D}UI/Layouts/Widgets/Context/ZSF_Context.layout";
Widget wid = workspace.CreateWidgets(m_ItemPreviewLayout);
int mouseX, mouseY;
WidgetManager.GetMousePos(mouseX, mouseY);
FrameSlot.SetPos(wid,mouseX, mouseY);
Any idea why then doesn't work correctly? am i missing something?
any plans for docs for radial menus?
I was thinking the same thing.
Be great to have a look at channel select - for the radio's.
Is something wrong with the AvailableActions tooltip (liek press R to reload, that shows up on the bottom left)?
{80CC0413DDBDFCB9}Configs/ControlHints/AvailableActions.conf
I used to have a config that would offset the Z value of the Available Actions HUD, but now it doesn't work anymore
Stuff like this
any idea why I can't write in my "EditBoxWidget" in my layout knowing that I've copied the one in the search menu?
maybe you need to focus/select it first?
Meaning? If you mean select it with the mouse, yes, I've already tested it, but it doesn't work.
hum I had the same issue and just turned out I didnt activate it 
I'm going to move on to something else until I have a solution 
You can send me you project if you want. I'll try to see if there is something wrong
Possible issues:
- order of the widget or other layouts
- the widget is not active
- the widget is not focused
try
GetGame().GetWorkspace().SetFocusedWidget
hmm i have try but nothing
What about the componenets on the widget?
Hmm, not sure in that case.
Mine is technically the same but works
You could try SetFocusedWidget specifically for the editbox widget
I did have issues with editbox as well, those are the main oens I had
not works
Ok, it's fixed but I don't know how
How do you edit the HUD? Iโm trying to add the FIA faction to the HUD for CAH so that all 3 teams have their score displayed but Iโm pretty unfamiliar with editing a HUD. I found the icons and everything and the HUD display for the game mode but Iโm not sure how to add and move stuff around.
You can create override for vanilla layouts in the tools
Once you have an override, most things you change will overwrite the vanilla hud.
Mostly just try to look around the layout file + try to locate the script file for that layout
I don't have CAH, but in conflict HUD, there's a widget named FlagSideBlue
Then I look up that in the script editor Ctrl+shift+F
Easiest way to learn is to inspect vanilla code
I appreciate the tips, Iโve been looking at the vanilla stuff and getting familiar.
Can enfusion import ttf fonts?
yes
Do we need any particular encoding?
100% ?
Our internal ttf being failed to import and register
Last time I tried I had a bunch of crashes and had to try several times, but in the end it worked
@lilac vessel Have you tried adding to your mod directory then loading workbench?
Nope, on it
It seems to work this way, thanks!
how do you convert a tff to fnt in enfusion? because the game only takes .fnt files into account.
certainly loads ttf on my machine
perhaps you are using windows 11?
Very new at this stuff and hoping for another set of eyes? Been playing around with SCR_InfoDisplayExtended which has way more functionality than SCR_InfoDisplay to create a stamina HUD bar. It has a interface methods... so instead of overriding say OnStartDraw and then having to call super.OnStartDraw to get all the existing functionality, you override the interface DisplayStartDraw which gets called within OnStartDraw
Am I groking this right? So for my situation I don't need to check if !m_wRoot in my override because that is already run before the interface is called? And I don't need to super it in?
(Yes the code runs as expected just not sure if what I think is happening is actually happening)
override void DisplayStartDraw(IEntity owner)
{
m_wSubtleStaminaBar = ProgressBarWidget.Cast(m_wRoot.FindWidget("m_wSubtleStaminaBar"));
if (!m_wSubtleStaminaBar)
return;
m_wSubtleStaminaBar.SetOpacity(0);
}
Guys, i need move notification layout messages to other position. I override notifications_message_base.layout but can't save changes. When i reload file i see only empty copy of first dragged thing in hierarchy. Drag, Copy and Create + drag in same problem. Maybe its bugged or its my fail?
little number changes working but the message wall looks totally different, nothing correct
i want use the deploy screen notification positions because my own hud colliding since last update.
Quick question. How does the UI Layout Preview work? Because no matter what I do or try to do, it never shows anything
What type is your top layer widget? Can you send screenshot of the widget list on the right?
RTTextureWidget's don't render
or.. they render empty
I also asked about that and it confused me and I don't understand why.
But that is intentional and by design, and that will stay like that.
As a workaround, you can move the contents of the texturewidget out into a separate layout. And then only have a tiny "RT texture wrapper" layout with the real layout linked inside it.
That's probably the worst design choice i've seen in a while then. I'll just move rendertarget content above the widget and put it back when i'm done with configuring it
it's a render target, what camera is it supposed to render if there isn't one it can render from?
or is it not rendering the text as well?
well, inside layout editor it shouldn't matter. It's not even possible to see anything, but frames of widgets placed inside RTTextureWidget - not only in layout preview, but also when editing. It doesn't make any sense. Editor should display the layout ignoring the rendertarget
oh i see
it doesn't render any of its child widgets?
@shy vapor is that the problem? ^^
yep. i can't even see a text widget inside the editor because of it, but it works when i move it out of the rttexturewidget
Yeah, that is dumb, I originally misunderstood what you were complaining about.
in that case i would just convert it to an overlay or something while testing, then convert it back
I'll just move rendertarget content above the widget
Be careful when selecting multiple widgets and moving them, that inverts their order
radial menu docs? 
Hi, I need a bit of help in order to add localized strings. I have been following this wiki page : https://community.bistudio.com/wiki/Arma_Reforger:Mod_Localisation
It seems very clear to me, however I can't get the stringtable to be built : console outputs an error, as following :
GUI (E): LocalizationEditor: Can't build runtime string table, 'Language/CustomActions.st' is not configured in game project!
this seems to refer to the doc segment showing how to add the stringtable to the current project, which I did without encountering any problem
unless the stringtable have to be configured for every "Configuration" dropdown list option ? By default it is "Healess", but "PC" and other platform are also available
the wiki does not mention this dropdown list
Re-adding the stringtable for "PC" seems to allow the table to be built. Do I need to re-add it for all other platforms ? I'm unsure of why this is as it is, since localized strings are probably the same on every platform ?
it looks like all platforms inherits from PC, right ?
hey! I'm using SCR_ModularButtonComponent to render a dynamic list of buttons. There's an effect I'd like to disable by calling SetEffectsEnabled(string tag, bool enable) but none of the effects on the modular button prefab have any tags. am I missing something? Only solution I can think of is to create a new modded layout and naming the effects
Not sure i should make some test. I would do the following.
Option 1: Try searching by "Text".
Option 2: If you will add the ContentBrowser_ModularButtonText.layout into another layout you can add a tag there without modifying the original one (picture).
Yeah this is what i ended up doing and worked as expected. Shame though having to create a new layout just cause there arenโt tags on the effects
Thanks for the help!
Has anyone tried making their own additional settings tab for the vanilla settings menu?
@burnt axle I haven't but, ill look into it for you
I went a completely different route but for anyone wondering there is an example in gameLib.c, i literally found it after i got a working example made lol
this settings tab will only be visible when you load into the game world
I made an override in a layout, duplicated and edited a button, saved, restarted workbench, all my edits went to an existing button and my duplicated one is missing
you guys have a tiktok icon in the icon set but not discord? 
also what about image widget functionality that would do what css object-fit: cover does
just center it without stretching
within its bounds
Try the sizecontent widget
ok but how, I thought that's like for limiting size
Under the transform there are buttons for which side to align the widget to. Select the very last one and it will expand to cover as much as possible (depending on constraints from parent)
Then what its done for me is not stretch an image, but make it fill whatever it can
see cover here https://developer.mozilla.org/en-US/docs/Web/CSS/object-fit
it would scale the image to fill as much as possible of the bounds, centered
Yes, I believe that the sizecontent widget will do that. Let me get an example once I boot my pc
I just used it a few days ago
what are your image widget props?
Center for both
could you send me this .layout file?
Just left home but when I get back yes
I want it to fill in the parent and clip
nevermind got it working
thanks
Why is it only adding SCR_LoadingSpinner, where did the script selection go? 
Nvm, if you have script errors at the start it only adds the SCR_LoadingSpinner after fixing them it shows all scripts again 
But why does it only show that if you have errors?
Does anyone knows a good mod that has a single shot shotgun
This is absolutely not the right channel for this 
can we get a rich text widget tags and properties reference?
how do i make the text here wrap? I have it enabled it in the text widget but cant really figure out what's up
try an explicit carriage return like \n
I think wrap may not like to break words, but will wrap on whitespace
you also may need to define a maximum width for it to wrap
otherwise the text widget is infinitely wide, like ben swolo in that one starwars movie
thanks, where do i set up the maximum width? the SizeLayoutWidget doesent seem to care what setting i put there
up there above behavior
size layout widget has settings for minimum and maximum width that need to be explicitly checked
dis how it looks
still wont cause it to wrap
ok wat if you separate words with spaces
didnt seem to do anything.
oh yea uncheck size to content
already had done that. should i remove it only from size widget or from everything?
I see, i had to put the text widget as a direct child to a SizeLayout to get the effects on it. Fixed ๐
quick question: what component/setting controls the character slot that a custom clothing/gear item takes up?

what you trying to do? there is a mod wich adds more slots to the character i would look into that. Most likely has all the info you need.
How does canvas widget work? Is there any documentation for it?
Quite a few things work together for custom slots to work correctly.
Anyone know if if it's been done, or if you can implement, the same PIP magnification that scopes have into viewing ports or scopes on a vehicle?
possible, yes
Hi, I'm trying to make a simple hud element to test things and made a new game mode and player controller (copied from existing) for that. Now i want my renamed copy of CampaignInfo to show up here but i dont know what sets up that list
nvm it appears that restarting the editor made it show up
Is there a way where you can set the arsenal boxes to overlaod someones current equipped items? Let's say for example I have a bunch of players spawn with just shirt, pants, and boot; So that when they go towards the box, they're could be like a menu-selection(Kinda like the menu with vehicles where you can select the one where you want to respawn) but instead it overwrites items for the selected slots?
I have a tab view component, one of the tabs has a page with a input box, when I type in the input box and switch tab it keeps buttons disabled as if the input box still had focus
looks like my button enters a force disabled state that I can't revert from script?
seems like calling OnActiveWidgetInteraction can get the button to activate, nevermind!
Hey!
Is there any info on how to add your own button to the pause menu? Similar to bacon's admin tools adding "server message" as an option when opening the pause menu
I mean you could open admin tools mod and see how it was added
I have but I can't find where the server message option is referenced or added ๐ will try looking more later I guess
Has anyone found out how to have vehicles gunner sight have levels of zoom control?
This is not possible currently
Out of the box that is
Has anyone found a way around it yet?
Arma Reforger Experimental
Hi, i've seen that GetItemPreviewManager() has changed to another class from Game to ChimeraWorld.
ChimeraWorld world = ChimeraWorld.CastFrom(GetGame().GetWorld());
ItemPreviewManagerEntity m_Manager = world.GetItemPreviewManager();
Can we do this in order to get it? i've seen in some reforger code that uses soem item to get his world instead of getting it from GetGame()
wait what's CastFrom
don't know y copypasted from another place XD. But it works
Some entities can reside in other worlds, in general you should get the world that the entity is on and then do things based on that
It's only for Worlds
is there some helper for sending any notification with custom text from server?
the notifications component seems overcomplicated
We tried, but we think you have to add that functionality manually
Why dont you use hints? You can use SCR_HintManagerComponent to show a hint with custom text.
can also make it show only to certain faction, not sure if you can aim it to specific player. Should be able to be done tho.
because I want to use notifications
I want use too but can't reposition notifications. its wrong position since some updates ago. When i change notification's layout all gone, see only colored lines.
But now its behind my own display:
deploy menu notif position would be fine but i failed with working deploymenu samle too ๐
Where did you place your notifications layout? Is the same place as the vanilla?
@worn marten i use override button at WB, its keep original name and path
If you want send me some captures of your layout and the overrided config.
Resolved 
Hello, I'm making the HUD mod, but I don't know how to test it in Enfusion workbench.
How can I do?
You have to add it in the Hud Manager of the Player Base
yes, i did it.
then just load a world, and play it?
Hi, here there is a litle guide of how to make your first gui. Maybe it helps
I havent done huds yet so i dont know how i his setup hehehe
hey, i created my own Shared.conf, with a custom action for the Context action but it doesn't show up
I created it in {modname}/Configs/Editor/ActionsLists/Context/Shared.conf
still its not showing up, the website states that it is in /Data but I am not sure where that is
I am assuming it is the root of the mod
I'm curious if anyone here has come across a mod for a car/vehicle/static weapon that has magnification for zoom aiming sights?
thx for trying but I found a guide document ๐
Not possible at the moment.
what is currently mission to halt the ability to rework magnification on vehicles?
B.I.
In which class can you change the width of Loadouts?
So that more than 6 variations of Loadouts could fit on one page.
will there be docs on creating new radial menus? I know I can add commands to the commanding menu but I was hoping I can use the system to have my own radial menu
nvm it was easy lol (compared to the previous system, anyway)
something happened to the list box UI component as I can no longer activate ("click") it when it's inside a dialog using an xbox controller - I can scroll it but not confirm selection
really ๐ฑ ? let me check my arsenal
it works in a menu but not a dialog
I can click it with mouse just fine but pressing A on controller doesnt do anything
a ok, works in menu, then it will work fine for me
lucky you 
seems like MenuSelect is "missing" from DialogContext
it says dialog will use MenuContext but that seems incorrect, it uses DialogContext regardless of what I put in the Action Context
I hope I don't break the whole game by adding MenuSelect to DialogContext
tobh i changed to Menus in the last patch to hide actions, that was ugly
. But not sure what's the difference beside that
before 1.0: SCR_NavigationButtonComponent
after 1.0: SCR_InputButtonComponent
Also requires changing it in the .layout files
Pressing ESC did nothing for me before I changed it
any idea why mine all look like this? even in conflict
check the layout, InputButtonComponent thing
And also the values in there
If you had any edits to layouts made before 1.0
You should check the new updated layouts.
Since old edits will have wrong script class
That screenshot is from conflict
Ive updated my layouts and added the label back
but even conflict buttons show like that
I guess its something ive done I just dont know what
it seems to have fixed itself somehow
maybe after restarting workbench
still having issues dragging items around inventory. it takes 5-6 goes before it works, and cannot drag anything into hotbar (or anywhere) when it does actually drag. just nothing happens
I have to drop items then equip them from the ground
the InputButtonComponent in the layout has parameters, maybe those are wrong
Im no longer talking about the InputButtonComponent
that is fixed
I am talking about dragging items in the inventory
which has been broken for a long time, but now it is even more broken
and now that has also randomly fixed itself, possibly after workbench reload
do we have a way to display any text as a notification yet?
Same thing happened to me yesterday. Restarting seems to be a temporary fix
'SCR_HintManagerComponent' has a static method called 'ShowCustomHint', if that's what you're looking for
doesn't seem relevant
Was anyone else using tooltips before? I had a custom layout tooltip and used SCR_TooltipManagerEntity.CreateTooltip(tooltipLayoutPath, m_wRoot); before 1.0, but now it expects a type SCR_ScriptedWidgetTooltipPreset, just being lazy before I try to figure it out myself and see if anyone else did something similar
Hello all, i noticed the Ctrl+R action (Inspect Weapon) is gone right now. Can't recall if it was linked to any mod, thing that i'm starting to suspect. Did anyone notice and eventually fixed this?
nevermind i'm an idiot. Holding R works.
Hello, i've been trying to use the list menu to list some selections, i managed to get the selections to change size based on text, but i can figure out what i need to do to get the spacing to fix after theyve been resized. Any ideas?
oh come on. Spent like, 2~ hours to find this out. I wish Bohemia would let community updating Biki ๐ฆ
It's a bug. Sometimes you can add fonts normally, sometimes the way Punky had to do it
I have an issue with the ItemPreviewWidget. The item preview becomes blurry as the image shows
This is how I get the ItemPreviewManagerEntity :
ChimeraWorld world = ChimeraWorld.CastFrom(GetGame().GetWorld());
ItemPreviewManagerEntity manager = world.GetItemPreviewManager();
And here's how I get the widget and display the item:
ItemPreviewWidget itemPreview = ItemPreviewWidget.Cast(itemWidget.FindAnyWidget("ItemPreview0"));
m_ItemPreviewManagerEntity.SetPreviewItem(itemPreview, previewObjEntity, null, true);
Any idea ? Was working fine until 1.0...
this is game-wide, same thing happes in vanilla arsenal and just inventory
@crimson acorn check if the render scale is 100%
its an option now?
Isn't it just a problem of engine displaying low resolution mipmap?
Mesh and aliasing are the same in both icons
It's 100%. Soul_Assassin is correct, also happens in the inventory. You open it, the second after everything becomes blurry
the render scale setting is game wide
I had the same issue and it was that
I checked in the settings of the game, it's set to 100%, I have never changed it
Never seen this issue until 1.0

Xbox mode
can we haz a function to send any string as a notification (not hint) from server to players
Someone charge me to make this weapon called HECKLER & KOCH 417
I need to send a photo so you can see
Bonjour je recherche un moddeur capable de mod de lโรฉquipement de lโarmรฉe franรงaise nโhรฉsiter pas ร me contacter
Rough Translation:
Hello, I am looking for a modder capable of modding French army equipment, do not hesitate to contact me
Ty ๐
Wrong channel
Did you ever figure out how to load additions to the settings and keybinding menus at boot, rather than after loading a world?
not really possible, because mods are loaded when a world is loading and not before
Ah - I'll lay that one to rest, then. I thought I was doing something wrong!
Hey, what is for these red area?
Do you mean the red triangles and the red square? They allow you to see your current selected widget. without them you may not be able to "see" some of them when placed.
Triangles
So its only for me to mark where im working right now? @worn marten Because I can move this
Mmmm I don't think so
oh yes sorry. I was not thinking so much, the yellow border is the selected widget. The red border and arrows i don't know then. Maybe something related with navigation?
I'd like to add a hotkey to the inventory menu. Any guides to that end out there?
Hey guys, I'm starting GUI modding now but I have never scripted in Arma Reforger. I know C# pretty good and made some scripts for Arma 3 but I don't know anything about scripting with mods. Are there any good tutorials about UI modding? I only found 2 little ones from BI. Also is there something to look up the different commands for scripting? Like Unity Scripting Reference.
Outside of Bohemia wiki probably not, a lot of stuff is commented.
Hi, this may help you. Its not updated so maybe you need to use some diferent method somewhere. Tell me if thahts the case.
#enfusion_gui message
changing an image of an imagewidget with script breaks scaling
they stretch out
or something, it's weird
works great if the image is already set in the UI layout but once I change it in script it always looks off
I think the size/dimensions of the imagewidget dont update when I change it with script
so it keeps dimensions of the "original" ui layout image
or maybe it's the ScaleWidget my image is in
this is the original UI layout
this is what happens after I change the imagewidget texture in script to something with different size (this is a qr code)
the layout sort of keeps the dimensions of the originally defined image
how do I refresh it? or something
Can't find the layout for this particular tab. Is it fully dynamically created?
Yes it is, you can find each of thouse rows in a config. Im not at home right now to give you a path.
Found it, seems that it' whole editor attribute classes thing.
Can anyone help me with overriding vanilla UI?
Hey guys, got a little problem or misunderstanding. I followed the UI creation tutorial from Spyke for the ListBox but its not writing anything in it. What should I put in AddItem()? Just a text or a prefab? How should I do that?
Which vanilla UI?
Hi which one?
This one
I created the list as told and the script as told. Still isn't showing anything
Is m_ListBoxComponent null?
what do you mean?
is it a variable?
yes
ok I'll check
You can check it with a Print(m_ListBoxComponent) before the if(m_ListBoxComponent) (should print something in console log) or using script editor break points
: SCR_ListBoxComponent m_ListBoxComponent = SCR_ListBoxComponent<0x00000206E3DF41F0>
ok so it is fine
can you share your layout with some image?
what do you see on screen when running it?
This is the code
OverlayWidget m_ListBoxOverlay; SCR_ListBoxComponent m_ListBoxComponent;
OnMenuOpen
//List m_ListBoxOverlay = OverlayWidget.Cast(m_wRoot.FindAnyWidget("ListBox0")); m_ListBoxComponent = SCR_ListBoxComponent.Cast(m_ListBoxOverlay.FindHandler(SCR_ListBoxComponent)); Print("[EmergencyPlus] initialize Components", LogLevel.NORMAL); Print(m_ListBoxComponent,LogLevel.NORMAL); if (m_ListBoxComponent) { m_ListBoxComponent.AddItem("MyItem0"); m_ListBoxComponent.AddItem("MyItem1"); m_ListBoxComponent.AddItem("MyItem2"); Print("[EmergencyPlus] List set", LogLevel.NORMAL); }
The List is there but nothing in it
share the full .c file
ok send it to me with private message np
Interaction one. For opening doors and getting in vehicles etc...
what do you want to change?
Change it to be more simple. I hate that there is big orange F everywhere
But I get lost in scripts
mmm ok
And how to override it
Scripts are still new to me, I make asset mods xD
If you could help me out a bit and figure it out, I would really appreciate it.๐
Maybe this: {80CC0413DDBDFCB9}Configs/ControlHints/AvailableActions.conf
and this: {07E240F39AC8FDDB}UI/layouts/HUD/AvailableActions/AvailableActionsSlot.layout
i've not tested it so if they are not the stuff you are looking for tell me
Thank you very much๐ I will check it out.
I inheritetd both, but when I try to edit the config or layout, the content gets deleted
and then there is just empty layout and empty config
you should override it not inherit
ok I did that now but it does not change anything, even if I change the layout or config
I found it, it was the wrong layout
@worn marten well I was only able to remove the F, but changing other stuff like size does not change. I tried changing ActionSlot size
Very noob Question.. But is Vehicle aiming sites fall under the naming scheme as GUI?
bump 
anyone know how to change UI image in script in a way that it doesn't break scaling?
turns out I can get this to work by reading image size and then setting image size
weird but ok
Is there any best practice how to import alpha channeled PNG so that they properly display in GUI displays. In layout/edds preview everything looks fine but in game display its always a bit translucent (even in areas that should be opaque). Similar to how it looks when I set to MIP 2 in the edds file.
Wonder if its a missing property of SCR_InfoDisplay (which I build upon) or import setting or something else ๐ค
i kind of suspect m_bAdaptiveOpacity to be the culprit but as its private i see no workaround
I'll just say, I have better luck with tga and tiff files. But you also may need to look at https://community.bistudio.com/wiki/Arma_Reforger:Textures naming conventions .
why am i not surprised to find myself in stone age file formats again when it comes to arma 
didnt use it for 20 years of design career
Is there a way to get support for Norwegian characters (รฆ, รธ, รฅ)?
What do UI Styles do? When I try to open the reforger ones I get an error that it cant open file '%s'
Hey guys, I have a problem. Anyone knows how the Map Widget is working? Its pretty buggy for me (see picture). Anyone knows what went wrong and how to use that?
I've tested it and i get something. it's not perfect but maybe it's a good start for you. This is the project.
@old patio
You are just a legend
There are a lot of systems working here so i don't know how to "simplify" more and only get a map where you can set a specific position, zoom etc
I think I can work from there. I think there are mostly bufs from missing a code
Trying to render text using RTTextureWidget and &rendertarget, but I end up with this black background
Not familiar with this stuff, any help is highly appreciated
It worked prior 1.0 update, so I wonder what change could cause this
String editor attributes plz, someday
Finally, I've been able to fix this after wasting few days messing with undocumented UI and materials properties.
It turns out that it was the update 0.9.9.47 from 20 July 2023 that broke it, not 1.0 as I previously stated.
Glad to see that we still have a lot of undocumented UI and other stuff lacking documentation and it feels almost like we have to beg for assistance
A lot of people have already begged for documentation and examples, and BI is working on it; however it takes time to do it right.
Especially when looking at the BIKI for Arma 2/3 which was completely done by the community ๐
Can you explain a bit more what that means?
Editor attributes for editing entities and other settings in Game Master, do not support strings
Hey guys, got a problem with importing my image. I wanna create a menu for our Radio and this is how the image looks like... There is a color being put above the Image. Anyone knows how I can import the Image like it already is?
if you mean its brighter than expected try changing to sRGB in color mode import settings.
Yes that was my problem. There is a color over that image. If I change that Color to red for example, the radio is also red
not sure which setting that is out of my head, but did you try setting alpha of that color to zero?
hey, sorry had to work. Yeah it just let the image disapear as well -,-
worked
so is there a way to set LOD in preview/render target widget yet?
SetFixedLOD on the entity works, I guess
how do I make up/down gamepad/wasd controls move to the next widget?
or rather, I have two listbox components that scroll horizontally, I want up/down to move between those listboxes instead of moving between contents of the listbox
it only does it when I reach the end of the listbox
You will need to create that "navigation movement" afaik (Adding ActionListeners and changing the focus to the control you want).
I did some test a while ago handling from the layer that contains both of the listbox, there you can change focus between them.
Althou in some situations didn't work, don't know why. I think it's because some other navigation management was active for the same action. Haven't tested much more tobh.
Yeah I can deal with it using navigation buttons that respond to actions
I don't understand the UI editor sometimes, trying to align a button for the past 15 minutes pressing random buttons because it's off by 10 px in the game but not the UI editor
Probably issues with DPI
@worldly sphinx That is what the Navigation group of properties is for on your widget
Set the target rule to explicit then you can define specifically where you want it to be moved
Works for keyboard and controller
how can I make scroll layout scroll to the next element or a little further past where the item to be in view is?
so I end up with some space at the top and bottom of the screen when on first and last element
like scrollTo in JS, but for an element/widget?
I want to scroll past it but on xbox it wont work since it just goes over the listbox elements
I am failing to understand the end goal, can you give me some visual explanation of what you want perhaps?
imagine scrolling inside an element that has padding inside, when you scroll to the bottom there is space visible under the lower-most element
ah I see
and the list box just "scrolls" to the bottom part of the last item
Not taking into account that padding, right?
yeah because when using the controller it does it by putting elements from the list box in focus
I see, you can't do this nicely with List Box as you do not really have scroll control over it. I will place a request for the engine team on this.
You can achieve it with the scroll widget
You can do a hack with adding empty items at the end to somewhat make it a bit nicer
oh fine thx
when configured as Escape it searches for the nearest widget with focus enabled, right?
how do I capture things like mouse clicks or holds in UI?
my action context is activated but action listeners never get the input value, it's always 0
are animated gifs not supported? 
Wasn't aware that even un-animated gifs are supported.
No moving picture support. Though maybe the VideoWidget could make it in sometime, but chances aren't high
dang I wanted to put animated emojis in my mod
does the inputmanager not work in UI? none of my custom actions seem to be triggering
nvm it was priority
how can I make a SCR_ListBoxComponent element clickable when it's already selected? it only registers first click, subsequent clicks do nothing
This is done in SCR_ListBoxComponent::_SetItemSelected you will see that the OnChanged event only triggers when (oldSelected != selected)
thank you
i can't find any attribute to change that, so you will need to override it
You can try to do the same (override) in SCR_ListBoxComponent::OnItemClock to
it's the one that calls for _SetItemSelected
can I change the disabled color of a widget somewhere?
ItemPreviewManagerEntity::SetPreviewItem(yourWidget null, null,true);
thank you, force refresh was the needed thing
sweet, glad that got it sorted
hello people, i am lost, confused and utterly frustrated with the following: i am trying to use the native GUI editor to make a menu based on the PixelGrid system........ but when i look for documentation, i get overwhelmed with old and conflicting information that makes no sense to me. is there anyone here who can help me going?
@shadow lantern This can help you getting started with the basics.
#enfusion_gui message
oops..... i posted in the wrong channel. i was supposed to ask in the ArmA 3 section.
is it possible to have a button inside a button? clicking the child button seems to click the parent button
@worldly sphinx Yes, but you have to manually set the focus to the child button from script
is there a way to draw some debug shapes that will be visible inside render target widgets?
Anyone know why I cant get the handler either way?
Returns null
but i can find the slider
I'm using {8C63C2E7AE0092B7}UI/layouts/WidgetLibrary/WLib_ProgressBar.layout prefab wich uses SCR_WLibProgressBarComponent
//------------------------------------------------------------------------------------------------
void SetCapacityProgressBar(float percentage)
{
SizeLayoutWidget w = SizeLayoutWidget.Cast(m_wRoot.FindAnyWidget(WIDGET_CAPACITY_PROGRESSBAR));
if(!w)
return;
SCR_WLibProgressBarComponent handler = SCR_WLibProgressBarComponent.Cast(w.FindHandler(SCR_WLibProgressBarComponent));
if(!handler)
return;
handler.SetValue(percentage);
}
@sweet scaffold
haven't tested with SCR_SliderComponent
SCR_WLibProgressBarComponent has GetProgressBar to, if you want to try with that
check that your variable w it's the widget that has that component and not the root
is there a UI widget for automatic grids?
looks like Grid Layout widget requires me to specify which row and column children are in
looks like WrapLayoutWidget seems to work, though I guess I'll have to do the scaling myself
how do I figure out why GetGame().GetWorkspace().SetFocusedWidget() does not set an item in focus?
this seems to be mostly noticeable when using gamepad, I want to select an item in the list box
on the controller it doesn't become in focus until I press A or move left stick
I've noticed a bunch of things don't seem to trigger like they're supposed to when using controller input
looks like blend mode Blend works differently in Workbench and in game, in Workbench my widget has transparent background but not in the game
game
workbench
how do i create a new style for a widget?
@worldly sphinx do you have the code you used to fill in a grid layout
if any devs are watching there should be an auto selection for row and column
no, I used the wrap layout widget and it seems to arrange items of same size in a grid but it scales incorrectly
hmm ill write it then
@worldly sphinx here is the math for it if you want it before i implement it
row = btnCount / 3 -- round this down
column = btnCount % 3
3 is for the amount of columns
what do you mean?
Like to add an item to the next available slot like how the inventory works. For the grid layouts.
Maybe have like an append child function that will accept a widget. And have a param to automatically add it to a slot thatโs not taken
m_wGridLayout.appendChild(buttonWidget, autoColumn: true, autoRow: true);
You just need to add it as a child, it will follow the rules of the layout
did you find a way to have a cursor? kinda need it xD
like an image that moves around with a controller? not sure how to handle the part that focuses things tho
maybe there's a way to have script API pretend mouse cursor is moving just inside UI
that would work
i could just get the widget under the image position and set it focused
could use an xbox to test this theory right about now
WidgetManager.TraceWidgets sounds like it could give you a list of widgets under X, Y
you may need to filter types and handlers of course
yeah got that working already and works as expected :PeepoKing:
WrapLayoutComponent scales vertically for each item regardless of whether it actually is below or not
do size widgets etc support percentage scale?
i think they only do pixels but maybe there is a hidden trick or something i didn't see
I guess I can set it through script or something
noticed the key hints being behind the map and not visible (fade out as soon as you close the map a second after i did the second screenshot)
any way to show them above the map? 
might even be a vanilla bug as panning/zooming is not added by me
how do i get transform slot info in code so i can set padding and stuff?
the LayoutSlot
nvm i got it
@worldly sphinx here you go buddy
this works
just gotta keep track of how many children there are
notice it sizes vertically for each child's height
I will have to compute and set its height manually from script
but that's trivial
could just convert it to the grid. might save headache since all children are uniform im pretty sure.
Mario said you just have to add it to the grid but i dont see anywhere to set rules like he said
with grid I have to handle rows and columns, with wrap I have to set height to items count * 64
I guess either works
true
this is super annoying though #enfusion_gui message
hmm i havent messed with previews yet so i couldnt test that yet but if i figure it out ill let you know
it bothers me that it's different in game than in workbench because I can't repro it
yea ive ran into a few things like that script wise. it doesn't make much sense. its like workbench is more updated than the game.
no you dont understand man it drives me crazy
is SetFocusedWidget supposed to work on gamepad or am I losing my mind over a bug?
lmao it works when I use callqueue
how easy is it to setup gamepad controls for a menu? @worldly sphinx
why cant I get the root widgets workspace in a dialog?
I get it OnMenuOpen() using m_wRoot = GetRootWidget();
how to properly use images with transparency in UI controls? I'm trying to import .png with transparent background, but it doesn't work - it still has background for some reason
Seems that it's tied to photoshop transparency
Here I used eraser a bit and for some reason it erased the transparency in reforger's ui control too
make sure your image has an alpha channel, photoshop does not save alpha channels for PNG I think (I forgot how it does transparency, but there's no separate alpha channel is what I mean)
Could it be tied to "color profile"?
no, photoshop does not export alpha channels for png
to my knowledge you need an alpha channel, so if you use photoshop try a different format
Just stop using png.
It's premult png
yeah, that
anyone know how to setup interaction with objects e.g. holding e to start an action?
Here you can find a youtube video where this is done.
https://forums.bohemia.net/forums/topic/241297-how-to-start-first-steps-solved/
torials I made while helping people in Arma Discord First Steps Video: Generic 1. Actions and Hints -#enfusion_scripting message Spoiler ScriptSetup 1. Create this folders: Scripts/Game/generated/UserAction/Modded. 2. In Modded folder crea...
thank you!
How in tarnation do you make a scrollable panel? I wish I could copy/paste from an existing layout but I have this hierarchy. Been doing my best to compare/contrast the server browser menu layout
I feel like I am missing something stupid small or something
ScrollLayout has the scrollbar, so it will display scrollbar for things inside it if they grow beyond the size of he ScrollLayout
I understand that bit, it's just.... the vertical layout inside the scroll layout doesn't.... scroll when I have a bunch of content outside of it
I add elements to the vertical layout within the scroll.
screenshot? and enable clipping in scrolllayout
it is enabled, default settings
WIP for sure but I have 14 items added to the vertical layout and only see 8. no scroll ability or scrollbar visible
direction set to vertical
try those two slot options
that didn't impact anything either
There has to be something obvious that I am missing. The size of the area is defined, not set to "size to content"
clearly defined square. This is on the overlay widget
IDK if it matters or not
I got it working..... moved the vertical layout to be INSIDE of the scroll
Can anyone explane how to mod a Layout file? i need to add my own imageset to the map. So i try to duplicate and inherit the original File. But: If i add my imageset, the original Icons will not work anymore and if i add the original also, then only the original icons work, but the new added imageset is not working.
There are some ways, not sure wich is the best tobh. Can you tell me where is the current vanilla image set so i can take a look? The one i guess you want to "extend".
Hey Spyke, you mean i should mod the imageset and not the Layout?
{0651202E9F2646DE}UI/layouts/Map/Map.layout
If you take a look, the imagesets are on the MapWidget - i just added my own
I tired with override in addon but after closing/opening the layout, all the other imagesets from MapWidget where deleted to. So ... i don't know if this is a bug or it's not the good way. I will atach some images so maybe some Dev can help you.
@quartz stone@worn marten
how? ๐
Magic
cool
You have to alter the map.layout externally
actually let me test something really quick
So yes, the only way is to alter externally
And what i need to change in the File? i already copyed the original imagesets into it with Notepad++
you just paste in the array for the Imagesets
I.E. the original array with yours added to the end
i already did this ๐ฆ
Imagesets {
"{BCD5479864D1A79A}UI/Textures/Map/topographicIcons/icons_topographic_map.imageset" "{F7E8D4834A3AFF2F}UI/Imagesets/Conflict/conflict-icons-bw.imageset" "{9AF52DEEF08E7F74}UI/Imagesets/Editor/editor_icons_map.imageset" "{7AC739B91D4F8D92}UI/REAPER_MapMarker.imageset"
}
FrameWidgetClass {
{
MapWidgetClass "{000000009C582FB6}" {
Prefab "{000000009C582FB6}"
Imagesets {
"{BCD5479864D1A79A}UI/Textures/Map/topographicIcons/icons_topographic_map.imageset" "{F7E8D4834A3AFF2F}UI/Imagesets/Conflict/conflict-icons-bw.imageset" "{9AF52DEEF08E7F74}UI/Imagesets/Editor/editor_icons_map.imageset" "YOUR IMAGESET"
}
}
}
}
looks the same
From what i'm seeing though. The problem is that we can't add more Descriptor Types
Did you closed workbench and reload?
or new main Types to the SCR_MapDescriptorComponent
modding EMapDescriptorType doesn't seem to work for me
i also tryed this ๐ฆ
Yes the only way is to override the existing ones
we can't add new ones apparently
If you close and reload workbench, will all icons work?
in my case the original one are gone and only a triangle will show
You're using the wrong imageset index
the index for yours
since it's the last one is 3
so, you have to remove one?
What?
since it's the last one is 3... so i can not add a 4th one
I don't think you understand what i'm talking about
maybe ๐
mostly because it's generated
i set the icons by Script
and i added new one to the PlayerCharacters depending on there state
The information you're supplying is to vague for me to be helpful.
Sorry im new to all of this. So, i added the Imageset like shown above to the Map.Layout file. In my Script i Set the Icons with "SCR_MapDescriptorComponent". This is all working. But if i add my imageset to the Layout, the orignal Icons will not show anymore. if i remove my imageset, then the original is working. So, i do not get it that all icons working.
Are you in experimental?
SCR_MapDescriptorComponent doesn't have any functions
So, idk how you think you're setting the image with it.
Nope regular build
you can use it without problems
if(!m_MapDescComp)
m_MapDescComp = SCR_MapDescriptorComponent.Cast(m_owner.FindComponent(SCR_MapDescriptorComponent));
if(!m_MapItem) {
m_MapItem = m_MapDescComp.Item();
m_MapItemProps = m_MapItem.GetProps();
}
Yeah, I know how to get components and cast to them
That does absolutely nothing for me
Not sure where you're doing your logic to get this to work.
I'm just testing with a useraction
nevermind
You have to have Map Item Descriptor ticked in the component lol
I'm able to change them at runtime but, not to one from a custom imageset
Would it be possible to not remove the text from the Game Master A.I. group UI if tabs/categories are added?
I have added 3 additional categories to the Game Master A.I. group UI and now only the icons are there and the categories text is gone which can make it a bit hard to find the right category tab.
Maybe its a bug cuz there are already keys ( Q & E ) assigned to swicht between tabs.
So yeah guess not removing the categories text/description if too many are added/stacked would be better for readability.
Whats up with updates messing up my UI's? Every few updates I have to go fix them because something with localization or something else has changed
my panel navigations buttons are messed up and so are my escape/exit buttons
Just want it to work 
they changed the button stuff a few patches ago
So some buttons need to have their classes changed.
Check some vanilla ui for examples
How can I hide the magazine counter from this quick selection bar UI? I have been trying to find the layout file unsuccesfully.
Could it be WeaponSlot.layout that crashes my workbench when I try to open it?
{F437ACE2BD5F11E1}UI/layouts/Menus/Inventory/InventoryItemSlot.layout
https://enfusionengine.com/api/redirect?to=enfusion://ResourceManager/~ArmaReforger:UI/layouts/Menus/Inventory/InventoryItemSlot.layout
TextWidget named magazineCount is what you're looking for
Thank you!
How I did not realize that it is the same layout as in the inventory so I did not even look under Inventory layouts ๐
As a warmup in Enfusion modding I wanted to create a simple mod that displays compass bearing on the HUD while you're holding the compass and focusing on it. I've figured out I can do it SCR_CompassComponent.Updatemethod. Just wondering what would be the most idiomatic way to communicate with the HUD from here.
Should I just do:
SCR_HUDManagerComponent.GetHUDManager().FindInfoDisplay(...) and execute the methods directly on the InfoDisplay?
Take a look at the SCR_BaseHUDComponent on the Character_Base
You need to write a custom info display and add it to the component.
I've already done that. This doesn't exactly answer my question
How am I supposed to know what you've already done if you don't say so?
I mean... I wrote about getting the info display from hud manager. Anyways, it's not what the question is about.
In your info display I'd just get a reference to the character on intialization and check the inventory for a compass. If it doesn't exist then maybe once a second in the update function check if it now exists and save a reference to it. Once you have a reference to the compass you can get the compass component reference and grab any data you want from it. You could do it directly from the signal that animates it, or you can skip all of the compass references and just get the transform of the player and use the Y axis rotation to set the HUD bearing
I don't think you need to do anything manually with info display. Just add a new item to the info display array on the player prefab and the update and init functions are automatically called
Got it mostly working but can't figure out how to move my HUD around the screen, I want it to follow the gadget (compass) in the hand, I have the world->screen pos already but it does not look like I can "set pos" m_wRoot of the InfoDisplay wherever I want 
you can make a child of the root widget in the layout and move that one around maybe (with everything a child of that first child)
yeah it works.
used the FrameSlot.SetPos() on child FrameWidget
for the m_wRoot it complained about:
Position/Size works only when min and max anchor is the same in given direction
thanks!
welp, and I think I found a bug.
if you hide a hud while it's doing fade in anim it will pop back in after the animation finishes:
.Show(true, UIConstants.FADE_RATE_SLOW);
// few frames later
.Show(false);
// hud visible after fade in time finished
I guess this fixes that... 
override protected void OnShownFinished(Widget w, float targetOpacity, WidgetAnimationOpacity anim = null)
{
// fix the bug where HUD-reappears if fade-in finishes after hud was hidden (quick hud toggles)
if (!m_bShown && targetOpacity > 0)
Show(false);
}
It's funny how I almost had the exact same idea as a first mod to get familiar with modding in Enfusion.
Tells something about the accessibility of the 3d compass ๐ซ
Wait are you guys just blind or what is the problem with the compasses? ๐
The US compass btw is a lensatic compass though but the lens is not usable in the game.
Yes I have mediocre sight, playing ultra wide with high FOV makes it even smaller. The "overlay" one in A3 is way easier to use for me.
And few guys in my group voiced same concern.
A3 was way more accessible regarding to GUI. You could customize almost everything.
My other pet peeve is the game using full screen width for HUD on ultrawides, there should be an option to constrain the hud to 16:9 screen size.
Yeah. The main menu does that already kinda. I just used the center area. Hope we can adjust that at some point.
Yeah, I do not expect full blown "position everything where you want" like in A3 minding the consoles, just simpe "I want narrower hud" switch would be enough. Horizon being a nice example here:
I wanted to try modding that in but lack for the documentation on UI/Layouts does not help.
scale and/or size layout widgets was what I used for my loadout editor
Could it be improved in Reforger so that it would bring the compass closer to your face?
Quite likely, yes
blurry rear sight post for me. Buddy showed me his was fine though... Any ideas?
Also, it only does this for me in game and not when im testing in Engine
Buddy's perspective
Try turning off depth of field in the settings ?
Enfusion or arma settings?
Well I mean if it's like this for you in the game, then the arma settings obviously
Alrighty, sorry I just woke up 
Big brain credits to the great @median tulip
Much better thanks
I do like that the rear sight is blurred - the right amount.
Makes it rather realistic.
Btw I don't think this is the right channel for this?
I had no idea which one would be correct so I just shotgunned it
Idk I guess if people like it they can turn on DOF in settings ๐คท๐ปโโ๏ธ
thats illegal you know?
is there a permanent toggle for the layout editor compact mode? I want to always have it disabled
Hello all, is there a document reference that shows how to add custom player actions in the screen? Same position of โSelect Grenade Launcherโ as an example
This config is all the info you need.
Thanks Zelik!
Hey, short question: How can i align a Widget on the right side of the screen? I Tryed by Script by using the ScreenX and subdivided the Widget width. But this is not working well. If you go fullscreen, the widget moves to much to the right by 21:9 and if you make the window small like 1280px then it moves more to the center. TY
There are slot or pivot options for this
found it! Ty
Hey, the slot alignment is working with 16:9 Ratio, but on 21:9 the Widget does not show. Do you know something about?
if your slot is aligned to top corner it should work for every resolution
what about the parent slot?
parent element, or whatever
maybe it has some max width or something
hey, I'm double posting this on a couple threads. I'm trying to get up to speed on mission making and I'm catching on but still pretty new. I am setting up a base character that will be the parent of many campaign characters. does anyone have some time to walk me through some of the menus i want to play around with for my server? IE: i want to add a couple of components to the HUD, for the most part do away with stamina, and maybe play with the radio manager a little.
What's the name of this menu/screen? I tried to search by "briefing" but there's nothing even moderately close
journal is the config name, briefing is the screen name @mellow escarp
The config can be found at (configs > scenarios > CombatOps_eden > CO_Journal_Eden.config iirc) but I haven't found out how where to change it in the actual object hierarchy for the mission lol
wait, u can change it for the mission in the Gamemode_CO_Eden object, specifically the SCR_RespawnBriefingComponent
Is it possible that I can only have one script with:
modded enum ChimeraMenuPreset
```?
Since when I have another one with exactly the same name. (ChimeraMenuPreset)
I can only select the other one like that: ChimeraMenuPreset#4657#1
but this doesn't compile.
Ok nvm...
One of the file wasn't in the games folder.
You wouldn't really need it twice in one mod. Just add both new values at one.
Once*
Ye.. i tried that, but it also needs the classes for the UI.
And this could get really messy when having like 30 UI layouts
Or is there a way to call the classes when they are in a different folder? Didnโt try it
Iโll try something tomorrow, else i stick to multiple files
what?
The Class: "ChimeraMenuPreset" needs to be in the same folder as your script which is declared in the chimeramenu.conf.
Else it won't find your script. But could work if I paste the path instead of only name.
mkk, thats weird if true, did not encounter this behavior in other places
Is it possible that when using peer to peer the following method:
GetGame().GetMenuManager().OpenMenu(ChimeraMenuPreset.EL_CharacterSelection);
opens up inside the workbench when called, but not on the peer to peer client.
When the peer to peer client calls it, it gets opened in the workbench client.
Any clue why it's like this?
Am I doing something wrong or is the peer to peer just unreliable?
Anyone familiar with changing the ranks imageset? I'm looking to change the rank icons but there is a lot of different folders with rankboldicon rankglowicon mips ect. Not sure what the process would be here...
If you want a menu to only open on a particular client then you must make it only open on that particular client.
class ZEL_OpenMenuUserAction : ScriptedUserAction
{
//------------------------------------------------------------------------------------------------
override void PerformAction(IEntity pOwnerEntity, IEntity pUserEntity) //Gets called on client and server
{
GetGame().GetMenuManager().OpenMenu(ChimeraMenuPreset.PauseMenu);//All Clients will get this called.
}
}
In your particular situation you want OpenMenu to only be called for the client performing the "action" . So you have to determine a way to do such things.
class ZEL_OpenMenuUserAction : ScriptedUserAction
{
//------------------------------------------------------------------------------------------------
override void PerformAction(IEntity pOwnerEntity, IEntity pUserEntity)
{
if(GetGame().GetPlayerController().GetControlledEntity() == pUserEntity)
GetGame().GetMenuManager().OpenMenu(ChimeraMenuPreset.PauseMenu);
}
}
In a user action it's as simple as this.
Hi guys! Possible set cursor position by script? WidgetManager have only vector GetCursorPos() and void GetCursorPos(out int posX, out int posY)
Xbox players have cursor when they use controller?
dont think so
There is a picture for controller key binding what is uses WB key names?
I not have controller and can't figure out what are these:
gamepad0:right_thumb_horizontal
gamepad0:left_trigger+
gamepad0:shoulder_right
gamepad0:any_axis+
Visualised key allocation with this names would be fine
Or maybe there is a controller emulator what working like windows screen keyboard?
Hey Zelik, thanks for the suggestion. This did indeed work.
But another question, do you know any other way on how to call an GUI?
Since this example is only when a player interacts with an entity.
But is there a way of opening a gui for the player with just scripting?
Since "GetGame().GetMenuManager().OpenMenu()" only really works with Workbench client,
not Peer To Peer / Multiplayer client.
Since rn we have a script when a player joins he gets saved, etc. and at some point the script should open the gui for the player.
Not sure what you mean about OpenMenu not working on multiplayer client, it works exactly how it's supposed to. Whichever client calls it opens the menu. You just have to do some logic to determine which client.
Hmmmmmmmh, okay thanks for that info.
I will continue with just trying.
fyi SCR_PlayerController.GetLocalControlledEntity() is the same as GetGame().GetPlayerController().GetControlledEntity()
Thanks?
is there any info on the sliders?
can I put like panels with buttons and stuff on in a slider or would it be better to use like a list box
Does CanvasWidget work? I try to draw Lines with LineDrawCommand but I can't get anything to show to screen
Do let us know if you figure this out as I've wanted to use it for charts
set variable m_fWidth to some number; by default the lines have 0 width.
plz add emojis and gif support
You could get AwesomeFont support yourself
by adding the font, gets you some emoji-like pictograms
are there helpers for drawing charts in ui?
do you know perhaps how to replace one font with a different one? I tried placing a font in the same spot as Roboto_Regular but when I press play I get this
Same place should work.
But you need the 3 files, the .edds, .fnt and .meta for the fnt
any console errors about font failing to load?
10:56:58.429 RESOURCES (W): resource not registered: @"$CursedReforger:Assets/UI/Fonts/Roboto_Regular.edds". Generating temporary GUID
but I cant register it
maybe I can reimport the tga with the name
ok it imported but same issue, and I see no hits for "font" or "roboto" in the log
oh I am a dumbass
I had a prefab in the world that was doing the loading screen thing
sick
Legal disclaimer this is not MS Comic Sans but a free font that looks similar
this only works in workbench, in the game the font is unchanged
its like the game uses a different font than wb play mode
Ugh
game probably loads the font once
and doesn't unload/reload it when you go into a game and the mod actually loads and replaces it
actually it works in some places but not here, _Regular doesnt get replaced but _Bold does
is _Bold used in main menu or loading screen?
the one in my screenshot is robotocondensed regular, this one does not get replaced in the game
bold is used for things like headers in menus and does get replaced
@worldly sphinx Is this a mod you're making public as I would love to reference from this if possible to change a font in one of my projects.
cursed reforger will move from unlisted to public after saturday's playtest probably
proceeds to prepare to block the item
you can't stop me
there is no charts drawing helper for the UI so I'm guessing I'll just have to draw lines on a canvas widget based on data points?
Lovely!
There is a debug ui chart, but not one for layouts I believe
if BI has a clause in the license about being able to terminate anyone's access for any reason then I'm not taking this bet
actually was easy with canvaswidget
going to have a lot of fun with this for the next version of admin tools
There is a widget for this iirc but it is not exposed
too late

ok but actually it's probably better than my implementation
Anybody knows if thereโs any tutorial around explaining how to build a UI so I could follow it step by step? I would like to make a GUI popping when a player goes down with a counter based on the unconsciousness timer and a key to trigger the respawn action on screen
The guide in pinned messages may help you. It may be obsolete in some stuff since it was made a while ago. But do not hesitate to ask here any trouble.
its been a while, how do I get the size of a widget on screen?
Widget.GetScreenSize gives me 0 0
but I need to know the screen dimensions of the widget
is there a constant somewhere for the default orange UI color?
@worldly sphinx 0.760998 0.392004 0.078004 1.000000
https://enfusionengine.com/api/redirect?to=enfusion://ResourceManager/~ArmaReforger:UI/layouts/WidgetLibrary/Buttons/WLib_PagingButton.layout Has the colors for all states, hovered etc.
ok so how does outline work for LineDrawCommand
and how do the UV scales work lol
@surreal rover with texture it starts looking acceptable
UV scale is a bit weird
how do I make GetScreenSize output something other than 0?
I want to get the screen size of an element that does not have a fixed screen size
What is equivalent to flexbox for creating a responsive layout in enfusion?
nothing

Hello ! I've made an Layout with RTTexture (SetGUIWidget). Someone know how is it possible to get the position of an Widget within a RTTexture in the world ?
https://www.youtube.com/watch?v=Uk2jCH_YgtI seems linked to the screen ratio, any idea if i can fix it or is it a game issue?
anyone know how to force text to grow in one direction like right instead of it growing from center and pushing things from it's left/right screenshot of current layout structure, the selected layout is the targeted element which contains the text that having the issue
What would be causing an image that is exported as TIF or PNG from photoshop, and Imported into Workbench GUI as .edds it will be washed out color wise, it's being placed in this structure OverlayWidget > ScaleWidget > ImageWidget , although if I view that same exact picture in the WB texture viewer everything looks fine any thoughts would help
color space not 'ToSRGB' in the import tab of the image ?
The name of the file can also enforce the use of certain import configurations
What is the name of the file?
I can't find what you referring to
ooo ok ok
do I try to change that to ToSRGB ?
how to apply that change do I have to do something ?
reimport button at top
@deep pawn @static raven legends that was it
what's weird is only happend to some stuff but not others
On the same topic kinda on the wiki it says Import - upon binarised and compressed version import of the source, an .edds texture is created right next to the source texture. is it good practice to keep those source textures files or I can delete them and wont affect anything live and published?
If there is no .meta file to that file then it wont be packed
Hi guys! I managed to make a little modification in my UI adding two icons (ImageWidgets). I'm starting from the Capture and Hold scoring layouts and in the scripts now I would like to: initialize them, make them invisible and activate one or the other based on a specific event which I can call back from the game manager. Anybody can support me? Very first time i'm meddling with UI ๐
Does the DialogConfirm action not actually work with button imput?
It works when clicked with a mouse but it isn't working with button press ie (Enter on pc or A on Xbox)
How does one go about using the MapMarkerConfig? is there documentation/examples for that anywhere? I would like to use my own imageset/images in the slotmarker.
Good Day! Is there a way to use a Alpha Mask on all below Widgets? For example: i have 3 ImageWidgets, they will rotate and changing its position. Now i like to use a Alpha Mask above them. But it looks like, i can only use a Alpha on each Widget, but then the Mask gets also rotated and moved.
SCR_TooltipManagerEntity no longer exists (I use to do manager.CreateToolTip) and I can't figure out how to get SCR_ScriptedWidgetTooltip.GetOnTooltipShow().Insert(OnTooltipShow) to actually work. As far as I can tell everything in the base game uses this, but I can't get tooltips to work for a UI item now. Is there a configuration option for it somewhere?
is there some modding news post about changes to commanding menu? so I can revive my radial menu
Someone needs to help Bacon so he can cook again!!!
i must cook
did you figure out how to install it?
Yes... You were previously talking about Arma 3. This is not Arma 3
just abit curious about font coding in general is all, but glad you got it figured out. ๐
I put comic sans in the game and it was fine
Hello folks ! I'd like to make a mod that would be a medical UI so people wouldn't have to run around to medic basically (Would be sort of an assistant, you wouldn't have to aim at limbs etc. and it would be a small menu at the bottom left or right of the screen you could click so that you still see the animations) but I absolutely don't know where to start ! Is there any top tier ressources, videos, etc. I could use to get started ? ๐ Thanks a lot guys ^^
How can I add a level to the vehicle? so that players can request it when they are with Vivel Sergeant
Does anyone know why the ImageWidget seemingly brightens the images I give it? I can't find any settings related to brightness
Original (png):
the same image (.edds) in a fresh ImageWidget in a layout file: (btw when I open the .edds itself, the colors are correct)
i found that i can edit the color of the image, but i cant quite get it back to the original. anyone have any tips on this?
goto to the import settings for the edds file and change color space to sRGB
Why are GUI's soo hard to make ๐
Is there an easier way cause I have like zero Idea on how to do this
SizeLayoutWidget rootFrame has invalid slot FrameWidgetSlot for slot manipulation function used, expected: GridWidgetSlot
How are the cubes in the UI when using freelook generated?
What Cybor said and don't forget to hit the REIMPORT button on the top
@wicked lantern @frozen saddle thanks guys I'll give this a shot today
Any ideas if rounded corners are possible on a imageWidget or other component without hardcoding the corners in a texture? just curious.
Anyone knows how can i set usable map in my own menu?
What is minimum requirements for MapWidget.
I need scrollable, zoomable map for get cursor position on map.
I tried copy map layout's content to my menu but not really working. Its fall apart and cursor position wrong...
you mean your Scenario doesnt provide a map ? an d you wanna add one?
I need map instance inside own menu. Minimap for position selection.
if i open my menu before map opened once:
"(E): DrawPolygon triangulation failed, is the polygon degenerated?"
This error gone when i use SCR_MapEntity.SetMapwidget(newMW) ;
but when i open menu first cursor is shifted and duplicated, if i open map and open menu again, i can't control map in my menu anymore.
is there any way to apply an alpha mask to a HDReffect material class? trying to affect just a part of the screen with it but nothing I tried so far works ๐ค
crash guid b416d40d-0d51-4976-b78f-99924829bf89 when adding my scripted widget event handler to a widget
is a Workspace required to create a widget under another?
m_widget.GetWorkSpace().CreateWidget()? Create Layout with editor mutch easier.
anyone know which layout governs the escape/menu screen? unsure what its proper name would be, but i'm looking to add a widget in this panel that would show some info
Haven't quite figured out which .layout i'm looking for or where its defined
pauseMenu.layout
goated ty
how do I force an order between these two widgets. I've tried grouping them differently and a few other things yesterday, but no matter what (even when the gameversion is visually above my widget) it will be placed below it during compilation or when I reload my project
z order
isn't Z front to back? I'll try it tho, ty
this isnt css
I just read the hint to determine that
But yeah... should've tried that yesterday, read the hint and thought it was what it said it was.....
Taking my first look at the GUI today. Holy thats one system. Can't imagine doing this non visually like the olden days.
Console question: How hard is it to navigate the inventory system on controller? A lot of the menus have been obviously made for console, inventory however, is dominated by point-and-click. However, there's quick drop and quick attach, seemingly to compensate for not being able to drag?
But all in all, how difficult is that kind of menu setup on console?
how do I make sizelayout min and max height work omg
max desired height and width are ignored
I want a widget to have a minimum height, maximum height, and scale horizontally to fill max available space
DebriefingScreenSTatisticsTile.layout (https://enfusionengine.com/api/redirect?to=enfusion://ResourceManager/~ArmaReforger:UI/layouts/Menus/DeployMenu/DebriefingScreenStatisticsTile.layout) might be worth taking a look at? It uses a SizeLayoutWidget to set limits for both vertical & horizontal
although opening it doesn't look its entirely respected in the layout viewer, because its horizontally filling, when it should be limited at 400. When I put it in a different componente earlier it seemed to respect the limits tho
also GetScreenSize never works
the engine knows how tall and wide the widget is
why cant i

all elements in hierarchy give me 0 0
parent also gives me 0 0
yeah not working for me either... You might be able to fudge it by creaing zero-width elements as borders and getting their x,y positions and subtracting
lol
I see GetScreenSize used in script in a lot of places
I need to check how those widgets are setup
Yeah I just checked it on the SCR_MapRTWBaseUI & SCR_MapCompassUI for the compass
When i run the debugger & print the values out on line 135-137 its 0,0. But once it hits the code section its retrieved at, I get real values
ok I dont get it lol
will do something else for a few days
this frustrates me enough to submit a feedback tracker ticket
Enforce engine (Before enfusion) also had a very similar editor
hi is GetScreenSize fixed yet
Does anyone have some example code for the canvas widget Draw Commands?
Has anyone successfully modified the inventory menu? Been trying to tackle it to no avail due to its interconnectedness.
https://reforger.armaplatform.com/workshop/5D0551624969C92E @half solstice
watcha trying to accomplish?
To Learn ๐, but the completed goal is to build a UI for a factory and a refinery.
Essentially, I want to knock out the default inventory menu, and bring in mine when at a trigger (then from there I could probably start expanding and figuring it out) - but that's been difficult for my limited skills.
what's wrong with it?
afaik you have to make sure that your slot is correct for it
I get 0 0 regardless of which widget I probe it with
which is a bug because I can see the widget have a size when I look at the UI, so I want that size
I want it to give me what I see
yeah but the slot has to be correct
iirc
if I see a widget is this wide and this tall, and this gives me 0, it's a bug

slot shouldnt matter, the engine knows how tall and wide it is because it shows it on the screen
but yeah I can try to use the appropriate slot until it's fixed
slots affect how things get processed, and what you have access to
what I want:
I see a widget, I ask the game for its size, I get its size
what happens:
I see a widget, I ask the game for its size, it lies to me saying its 0 px tall and 0 px wide
I checked
It should be in a Frame Widget
should getting size of this widget work then?
both ChartSize and Size0 get me 0
I can see the widget being larger than 0 pixels tall and wide
it probably isnt 999px as per the ruler more like 1000px
so if I ask it for its screen size and get anything different than 1000px then this is a bug
if its not bugged then I might be doing it too early
wrap what you want to get to in a Frame
For example, you should be able to get ChartSize screen size. but not the rest
yep I was doing it too early, handler attached is too early
I need to fire a call later and do it some time later
calling update does not help?
I don't really know what that is
ChartSizeWidget.Update()
I did Update and then it gave me x:0 y:153
one alternative here would be to make the canvas widget scale itself properly
but I have to scale it manually and probably every frame in case screen size changes like by resizing window
or at least I have to do it once something is drawn on it, because it ends up staying in its original place
ok doing it inside OnUpdate seems to work
I will update the FT as its my fault
I see you have been struggling with this since January at least 
So GetSize & GetPos only work with Frames? Not any other widgets?
I don't think we've got a gui wiki yet, but could we get a comment in the Widget class
I followed the instructions to load a GUI. I created a second one, and it loads the first one, I spent all day yesterday trying to get up ๐. Regardless, horray GUI.
Does GUI/Reforger have image filters to apply on display objects?
GUI auto alignment is cool ๐
Perhaps somebody can give me a kick in the right direction/comment on the logic. Working at this all day hasn't really got me much further.
So I want to set up a factory menu. Standard inventory to the left, factory selection in the middle, and then output/factory inventory on the right.
-
I'm guessing leveraging the existing Arsenal subtype of the inventory system and supply/cost is the best way to do the two new systems. Using the existing picture/item display, rather then re-creating with icons and buttons?
-
Where/what should I been looking for, for the code that handles the window control. Is it a Sgrid filled with inventory slots which all have their own logic? I'm kind of getting lost in the thousands of lines here.
It looks like I want to strip downed version of inventory menu UI?
Any feedback would be helpful.
Any way to print a floating point to a certain precision? Like 2/3 decimal points
C# has formatters, I don't have workbench or docs up but its its something like {value:D2}
I can't check right now if enfusion also has that feature.
rn im struggling with finding a way to block all UI input in case you know of a way I'd appreciate
it doesn't
also hoping for some easy way to inject custom notifications into the notification system where I can just show any string content easily, otherwise I'll just implement a toast system but I'd rather not
I could also use chat but that's too jank
float someVal = 1.2587;
int decimalLenght = 2;
Print(someVal.ToString(-1, decimalLenght));
or
float someVal = 1.2587;
int decimalLenght = 2;
Print(someVal.ToString(lenDec: decimalLenght));
Enfusion does not use C#, not even for gamecode stuff
Thank you. I had my eyes on String.Format
almost got this figured out but super jank
lol the notification icons are all hardcoded
u need SCR_NotificationData and u need SCR_UINotificationInfo and u need SCR_NotificationDisplayData and u need a config, like bro just make it one object with icon, color and text
dis what I wanted
anyone have any tips for not making the ugliest GUI panel in existence? web design was never my dream
perchance, anyone have a UI they think doesn't stink and they want to share a pic of it ๐ฅบ
What do you want a GUI of?
I'm just trying to make a panel to display some info, not interactible at all, but I just want to know how other moders have made their UIs look visually
I think the only modded UI I've ever seen was the coalition squad interface
Can't wait for the day that we have a wiki page for the GUI widgets and what-not
hmmmm ty
No problem. And this is what I'm working on emulating.
doesnt matter what I do mine always look ugly anyway so whatever
we're getting somewhere
Pure fire. You mad lad.
Oh yes!!!!
it will come with v2 admin tools, interface is currently something like
ServerAdminTools_Plugins_Notifications.Instance.SendNotification("Hello!",
iconName: "feedback",
iconImageSet: "{2EFEA2AF1F38E7F0}UI/Textures/Icons/icons_wrapperUI-64.imageset",
color: ENotificationColor.NEGATIVE);
but it will also have option to send to specific player IDs not just global
just call it on server and it Just Worksโข๏ธ no rpc bs
you can also just steal the implementation at that point when it releases
idk if this is intentional but part of the image is missing like theres holes in the camo texture
Just chose a random camo so I had some contents
I don't see anything missing in it tho
Bro
its been so long I no longer even consider him john cena, thats john zedong
Bros an entirely different being in my head
Anyone know what the PanelWidget does? / Is there a method similar to where I'd just ctrl+f over the entire solution to find where a function is used but for finding widgets in different layouts?
FindAnyWidget works by name so it should return what you want as long as the name matches
Not sure thats exactly what i'm looking for? I'm hoping to search through all existing layouts & find ones with references to the PanelWidget, if I had the text data for all of them i'd just grep it, but I don't think thats something I can get


