Variable HUD text on Overlap - How?

That fixed it, Now Arraystructs001 links up to the Get node now that I dragged the wire off it. BUT now the BREAK Node is now popping up with the
same error saying its not compatible.

So the Get node won’t link to the Break node. So When I attempt to drag off a wire from Get and type get Break TransformSTR which is the name of the custom
break node I made, it pops up the node but it breaks the pins connection automatically from Get saying the node I want to link Get to is not compatible.

So the problem has merely shifted now to the custom Break Node.

how do i fix the break node so its compatible?

I don’t know if the problem is coming from the Arraystructs node that sets the type of variable, which it was set on Datastructs
or its coming from the break node.

**Drag **the node from Get and then Break

This is what I ended up with.

Here’s the whole layout now…

I hooked up the sequence node up to the Set Execution pin, from my on overlap trigger.

Now the data structure matches and it accepts the pin BUT the pin on the break datastruct node is red (boolean). so the widget is now responding and showing the words
FALSE now up on the screen when I step into the trigger but I need it to read in the text that’s in the data table rows not give me a boolean TRUE or false
value up on the screen. But at least I’m getting some input.

You do not need the transform, not sure where this is coming from. What you put in the struct is what you get. If you put a bool, you get a bool, you put a transform you get a transform. The struct you used has a bool.

You had a good struct here:

Use this struct for your DataTable and the array.

CONCERNING YOUR ARRAY NO The Dialogstruct node IS NOT WORKING with your array code. It will NOT link up with the Get Array node. Its telling me when I try to link it to the Get Array Node that the struct is not the same type. And when I try to link the other end of it from the Text pin to the Convert nodes, it give sme the error that TEXT IS NOT COMPATIBLE WITH

BUT WHAT IS NOW WORKING IS READING in just ONE single line OF TEXT in the widget using the Dialogstruct node with the row number. (THIS NODE WILL NOT WORK WITH YOUR
ARRAY CODE it keeps on rejecting the Break Dialogstruct node and I don’t know why so i cannot get your array to work with it…) but it WILL WORK with the other code to display just 1 single line of text from my Data Text Table. So the widget is now working in reading the Data Text Table but I need also your array to work with that node and for some unknown reason,
the break Dialogstructt node dosen’t want to cooperate and I’m really baffled by this and I hope to resolve this array node linking problem soon.

The Dialogstruct table

The problem is that you’ve created more than 1 struct, you created the one that we see above and it looks great. That’s what you need. But you also created one that has a bool in it (called datastruct) and you created yet another one that has a transform somewhere there. You can even see it in the image above, you have two different structs open in the tabs. You keep mixing and matching 3 different structs together. Get rid of them and use only one, the one that we see above.

The DataTable and the Array need to use the same struct.

Click on the ArrayStruct001 Array under the “my blueprints” panel. Look at the details panel, it will say its of type “Datastruct”. Change that to “DialogStruct”.
Now you can insert the DataTable struct into the array struct.
BUT! don’t reuse the old get nodes, they still expect the “dialogstruct”. Delete them.
drag off the array and add new get nodes.

If you’re ever in doubt, grab the struct pin and break it. Then grab the struct pin you try to insert into and choose “make”. it should then be obvious that they are not the same type.

An array can only be of one type. If you have an array of ints, you can not add a float into it, nor a string or a character reference or a car. Only ints.
If you have an array of StructA, you can not insert StructB into it.

I’ve now deleted the get node and I’ve now renamed that data struct node variable property from Datastruct now to Dialogstruct , but now I’ve got no more text
input at all showing up now in the widget. How do I fix?

Show us what you added to the array. If the array is empty, there’s nothing to show. If you try to access a non-existing index, you should get bombarded with access none or out of bounds errors in the output log.

If you want to check whether an array contains any elements, you can drag a wire off the array and type length, and then print that int. If it reads 0, the array is empty.

No Elements were added yet into the Arraystructs Node yet because I thought your array was supposed to just read the rows from within the data text table itself to do the array list, but you’re telling me I need to also enter in those rows I want to be picked at random into the Array Elements list as well, is this correct? if so, that means I got to double type the text, once in the data text table and again in the array elements list.

I put some text elements now in the array struct… It appears now to be working… I added a Flip Flop Node also after the sequence. I can’t use do once or it disables the trigger Now we just have the issue now of the trigger triggering off 'the text to cycle randomly more than once when i walk into the trigger area. I don’t want that, I only want the text to trigger
off just once each time the trigger is walked through it. but other than that its working…

Thank you all who were paitent enough to help me to resolve this node issue, how do we now add in the Player ID Pictures to the widget and have them pop up with the Portrait ID number?

According to Everynone’s method, you’re supposed to add elements to choose from to the array from the data table. Look at reply #8, their first screen shot.

I also want to point something out. You’re still creating the widget during the overlap event.
If this is a pure test situation, then all right. But I have a feeling that this is more intended code than just for a test.
Seriously, there are regularly new threads by users who say “I have a problem with widgets” and I bet 7 out of 10 times, it’s because they are recreating the widget.
Create it elsewhere, once, maybe during a begin play event and then just use the reference.

You need to tell me why its problematic to create the widget during the overlap event. I need to know why there is an issue with that.

Ok now THIS CODE in the screenshot above WORKS, it works like a charm, but it relies on a Arraystruct Element list for it to work. So I’m happy with that except for one thing, it cycles at random like crazy through all the elements when I walk through the trigger area. That I don’t want, I only want it to cycle just ONCE each time I walk in the trigger. THIS SET UP IS OK FOR GAMES WITH A LITTLE DIALOG IN THEM. Its sutiable for this.

BUT MY GAME has over 20,000 lines of dialog in it…

NOW the CODE in the screenshot BELOW is what I’m having trouble trying to get to work on 4.12. That’s supposed to be the code that’s needed to handle 20,000+ lines of dialog through the widget by reading in the row number of the data table file then display what it finds on the row number in the widget.

But there’s something in this code setup that is preventing the Arraystruct001 from reading the text in directly in from the data table. It is necessary for the game to read directly from the datatable without relying on an element list. But if that’s the only way his code will work to rely on an element array list and set the row number range, then that means the blueprints will be filled with thousands of array lists. Since my game has over 20,000 lines of dialog in it, I needed it
to read directly in from the data table instead of having to create tons of array element lists.

There’s no compile errors, no conflicts with pin numbers. Those errors are now all gone. But this code is not working at the moment through the widget as when I hook this up into my sequence node from the on overlap trigger and run it, my widget remains all black with no text showing. I don’t know what the cause of that issue is. It is
supposed to read in the data in directly from the data table, not reading the data from an element array list. I did put in 2 text elements in the array list just to see if not having an element list in the array was the problem, and found the widget still not displaying up anything. So I know its not the array list.

Its something in this code is preventing the text from displaying up in the widget and it has me real puzzled…

Since I could not resolve the problem… I need to know exactly what engine version you used for those code screenshots Everynone, I have a feeling that if you are using the latest version of the engine that not all the nodes are going to work when setting up this dialog array if my engine version is not up to date…

For all I know the array might only work if the engine version is the latest version. So I have upgraded to the latest version to see if that will make any difference.