#blueprint

1 messages Β· Page 120 of 1

lofty rapids
#

execution ftw

gentle urchin
#

white thing -> Execution wire

pearl lagoon
#

Well that fixed the number not showing up

#

Now just the name

gentle urchin
#

without it, the code does not run

tiny monolith
#

how to create a timeline in widget

hasty merlin
#

is this what youre talkign about? found a YT vid about interfaces, he added 2 fucntions, on interact and interactable

lofty rapids
#

you use this function at some point to display the name ?

tiny monolith
#

how to create a timeline in widget

gentle urchin
#

Widgets dont support timelines

gentle urchin
#

open your interface

#

add a new function

#

which returns a text value

#

then call that πŸ™‚

#

implement it in the target blueprints

tiny monolith
#

how do I create this

hasty merlin
#

cant you do a sequence for a widget to have one say fade to black?

gentle urchin
#

Animation, yes

undone bluff
#

widget equivalent of timelines is animations

gentle urchin
#

hardly equivalent πŸ₯²

tiny monolith
#

how to play the code I wrote in the animation I want to increase a transform scale value over time

undone bluff
#

I'd say so, though feature set certainly differs

tiny monolith
#

I couldn't find a tutorial video etc.

#

is best bro glkhfgkhlşfhlk

undone bluff
#

use the window tab to show the animation window first

cedar spoke
#

Hey, I'm looking to spawn a BP on top of another BP. The problem is that the pivot point is in the center and I need to get the vector of the "bottom" of the spawned actor to align. What would be the "unreal way" of accomplishing that?

tiny monolith
#

later

cedar spoke
#

I thought about very overengineered solutions, I'm glad i asked here πŸ˜„

tiny monolith
#

how to increase the scale size of something in widget animation

lofty rapids
frosty heron
#

@tiny monolith you can use widget timeline to replace timeline

frosty heron
#

Go to designer tab, add anim and do it there

frosty heron
#

Any widget anim video would go over it

tiny monolith
narrow pendant
#

very confused question here rubberduck

I'm doing a linetrace and checking for object type. why might this return false?

undone bluff
#

complaining about lack of tutorials when there's documentation 😌

lofty rapids
frosty heron
#

It should be on the top of the page

narrow pendant
tiny monolith
#

ah thanks guys

frosty heron
#

Not an instance

narrow pendant
#

that would be Actor for the base class right?

#

can't I do a more specific check?

undone bluff
frosty heron
#

Depends, don't you make a bp for your sound object?

undone bluff
#

I think this should work

frosty heron
#

It will be w.e the class of your bp sound base class is

narrow pendant
tiny monolith
#

do I need to set this for each button or is it a subwidget

hasty merlin
#

yo cold, im trying out interfaces, for what im trying to do with a door that has 2 widgets (open/close), a chest with 1 widget, and a torch with 2 widgets (turnon/extinguish) this is how my fucntions should look right?

frosty heron
frosty heron
#

Make simple interface, override function. Get a string from it

tiny monolith
#

should I make a subwidget that will have widget button animations everywhere

narrow pendant
frosty heron
#

Once u can do that u can move on

frosty heron
narrow pendant
#

fair

tiny monolith
#

too much casting bloats memory

frosty heron
#

Only applies to bp

undone bluff
frosty heron
#

It's not the cast anyway

#

But the hard ref

tiny monolith
#

When using a subwidget in another widget, can I access the text inside the button in the subwidget?

frosty heron
#

U should cast to base class when ever possible

frosty heron
#

Get mywidget->get MywidgetButton -> do X

undone bluff
#

you can preconstruct the text from a variable

tiny monolith
#

oh yesss

#

thanks

dry sleet
#

Dunno if you've figured it out, but I believe this is the relevant setting

pearl lagoon
#

Can someone explain it to me?

tiny monolith
#

how to put the subwidget button in an interface vertical horizonal canvas etc.

dry sleet
gentle urchin
#

Not sure if it used to work, but certainly brings trouble these days

hoary junco
dry sleet
#

that probably works, too

#

I don't know if either solution is better than the other

undone bluff
gentle urchin
undone bluff
#

this would work instead

hasty merlin
cedar spoke
#

IsInteractable might be useful if you want to have a logic to disable the interaction (like the door is locked)

hoary junco
dry sleet
#

yes, the thing I wanted to show in that screenshot wasn't linear dampening but

cedar spoke
gentle urchin
hoary junco
dry sleet
#

huh

pearl lagoon
#

Nevermind im just dumb

dry sleet
#

pretty sure we use physics handle too and it works just fine

pearl lagoon
#

The name wasn't showing up because I never set it

dry sleet
#

well, unreal works in mysterious ways

#

if it works it works!

hasty merlin
hoary junco
#

πŸ€·β€β™‚οΈ just one of those things I guess

gentle urchin
#

you return interaction text based on the state of the interactable object

hasty merlin
#

oh

hasty merlin
#

so in the door bp, event GetInteractionData -> if doorclosevar == true -> createwidget opendoor

gentle urchin
#

I wouldnt create widget

#

i would simply r eturn the text the existing widget should display

#

hopefully the widget is owned by the player who's gonna see it

#

and exist somewhere in their context

hasty merlin
#

so keep this in fpcharacterBP adn just add to viewport?

gentle urchin
#

Nooo

#

this should be a single widget

#

where you simply change the text shown

#

and/or icon or whatever

hasty merlin
#

a single widget? how do i make sure the size of the widget always remains centered?

gentle urchin
#

centered to what

hasty merlin
#

to screen

cedar spoke
#

set pivot point (anchor) to center and 0,0 as location

hasty merlin
#

each text is goign to be a different number of characters so size willl change

#

Light Up vs Extinguish. extinguish will take up more space

#

and then there can be overlap with the E key icon

gentle urchin
#

Allign center center

#

Text center

#

Hbox center

hasty merlin
#

its all aligned to center of screen

cedar spoke
#

So you should be fine

#

Try changing the text, it should be centered with this setup

#

no matter the length

hasty merlin
undone bluff
cedar spoke
#

Put both icon and text in parent horizontal container

#

So the layout is dynamic

hasty merlin
#

its an image so it wont let me put in children

#

shoudl i be using something else instead of an image?

undone bluff
#

put them in a horizontal box

cedar spoke
#

I mean:

  • Horizontal
    • icon
    • text
undone bluff
#

a box can have multiple children

cedar spoke
#

I mean:

- Horizontal
    + icon
    + text
#

Icon and text are the children

hasty merlin
#

still use the black bar as an image?

cedar spoke
#

Are you talking about the background?

hasty merlin
#

yea

#

im adding to horizontal box

cedar spoke
#

use "Border" and set the color or image as the brush

#

Instead of image

hasty merlin
#

to the horizontal box?

cedar spoke
#

In my case I have border with box inside

#

But maybe it will work the other way too πŸ˜„

hasty merlin
cedar spoke
#

No wait, yeah Border -> Box as child

hasty merlin
#

im selected on horizontal box

cedar spoke
#

Can you show hierarchy?

hasty merlin
#

havent added the rest yet

cedar spoke
#

You need something like this

gentle urchin
#

And size to content.

#

You dont't want to staticly size dynamic content

hasty merlin
#

what kind of box? still horizontal?

cedar spoke
#

Meaning, stuff is laid in a single row

hasty merlin
#

size to conbtent is checked

cedar spoke
#

Looks good, now remove the old background and use Border as a parent of your horizontal box

#

Same with light gray border of button but remember about hierarchy

hasty merlin
#

i ahve border now. which on on top?

#

in heirarchy

cedar spoke
#

Like in my example screenshot before

hasty merlin
#

missed that before

#

and to change the colour?

#

nvm

cedar spoke
#

As a rule of thumb to add some bg just wrap the thing in border πŸ˜›

#

If it doesnt support background iself

hasty merlin
#

imma use that from now on

#

how can i round the corners?

#

nvm

#

i was clicked on wrong thing again

gentle urchin
#

Wasnt there a new thing for that

hasty merlin
#

okay now to get the E icon and progress abr to overlap

gentle urchin
#

You want em to overlap?

#

Overlay in that case

hasty merlin
#

i just realized i could probs put the Key as the bg imaghe for the progress bar

#

now its just stretched and not full size

stable fossil
#

Does anyone know how to read control rig blueprint variables from a normal blueprint?

hasty merlin
#

and getinteraction text

burnt obsidian
#

how can I check if more then 1 bool (out of 4) are active and if so do something but if only 1 of 4 bools is true do something else?

#

I basically want it that only 1 out of these can be active at a time

gentle urchin
#

XOR

hasty merlin
#

i was going to say or bool

#

whats a xor bool?

gentle urchin
#

exclusive or

#

regular or is inclusive

burnt obsidian
#

hmm but how would I do this with 4?

hasty merlin
#

what does that do differently?

gentle urchin
#

3 of em

gentle urchin
hasty merlin
burnt obsidian
#

so like this?

gentle urchin
#
OR
0 | 0 = 0
0 | 1 = 1
1 | 0 = 1
1 | 1 = 1

XOR 
0 | 0 = 0
0 | 1 = 1
1 | 0 = 1
1 | 1 = 0
gentle urchin
hasty merlin
#

you cant add pins?

#

interesting

gentle urchin
#

not to that one

#

its lame

hasty merlin
#

that is lame af

burnt obsidian
#

nice it works! Thanks @gentle urchin

hasty merlin
#

how woudl you write xor in C++

#

!| ?

#

|| is OR

burnt obsidian
#

I guess you could doubleclick XOR

#

and it would open visual studio if im not mistaken

hasty merlin
#

i dont wanna do that

burnt obsidian
#

me neither

hasty merlin
#

oh well

craggy flicker
#

is it possible to create widget blueprints inside widget blueprints? For example, in my inventory, I would like to create a "slot" widget I can just drag and drop into my inventory. This slot widget would have functionality, such as mouse hover over and such

gentle urchin
#
bool UKismetMathLibrary::BooleanXOR(bool A, bool B)
{
    return A ^ B;
}
hasty merlin
#

squize whats next? oninteract in object bp?

cedar spoke
#

I guess it makes sense, to have multiple pins you need to have a loop and it will cost you performance

#

That's why xor is simple in BP

gentle urchin
hasty merlin
gentle urchin
#

This trace would happen basically all the time right, whenever the player is looking at anything?

hasty merlin
#

yeah

gentle urchin
#

So basically on Tick

hasty merlin
#

every 0.1 seconds it runs again

gentle urchin
#

sure

#

so if implement interface, then GetInteractionText from the hit Actor

#

using the interace message

hasty merlin
gentle urchin
#

you wanna use the reuslt of the does implement interface in a branch

#

after the hit branch

#

So you can store a reference to the target, or clear it

hasty merlin
#

got it

#

on true?

cedar spoke
#

You could also do cast as it has two exec pins, one for cast success and other for failure

gentle urchin
#

i keep forgetting about that one

hasty merlin
#

cast to interface? isnt that kind of a nono cause its not resourceful?

gentle urchin
cedar spoke
#

You will need cast anyway to call the methods in the future

gentle urchin
#

Just go with the flow

#

πŸ˜„

#

Casts are fine in many yscenarios

#

just not all

hasty merlin
#

cool

gentle urchin
#

Drag and Drop operation does that already

gentle urchin
#

"OnHoveredInteractable"

#

in the char bp

#

right. Then tick is the way

#

true

hasty merlin
gentle urchin
#

gotta change the tick timing

#

pre physics or something...

gentle urchin
#

below functions/variables... at the bottom there πŸ™‚

#

you can try overriding Drop

hasty merlin
gentle urchin
#

were we're hopefully doing our last implementation πŸ˜›

craggy flicker
# gentle urchin yes, that's the way to go

hm when attempting this, I keep getting
"Internal Compiler Error: Tried to create a property Slot in scope SKEL_Inventory_C, but another object (ObjectProperty /Script/UMG.Widget:Slot) already exists there."

When compiling multiple of my "Slot" widgets

hasty merlin
gentle urchin
#

"OnHoveredInteractable"

hasty merlin
#

yup

gentle urchin
#

Oh right

hasty merlin
#

i drag it in and call?

#

or event

#

or

gentle urchin
#

I prefer functions so i'd say wrap it in a function

#

the "cast to interface" and store that reference

#

and calling that broadcast

#

stuff it in a function

#

that returns a bool

craggy flicker
rugged sierra
hasty merlin
#

when i drag it in i get the options
call
bind
unbind
unbind all
event
assign

gentle urchin
#

create the function first

#

select the "Cast to InteractionInterface"

#

right click -> collapse to function

gentle urchin
hasty merlin
#

what do i name it? the collapsed cast into function

gentle urchin
#

"UpdateInteractable"

hasty merlin
#

got it

gentle urchin
#

Cast succeed -> Promote the interactable pin to a variable

#

(not local )

hasty merlin
gentle urchin
#

open the UpdateInteractable function

hasty merlin
#

opened

gentle urchin
#

I think you missed the input pin

hasty merlin
#

promoted

#

just typed before going back. my brain is mush rn

tawdry raft
#

I'm trying to use this but the camera keeps moving off to some other location

hasty merlin
#

i need an object input

gentle urchin
#

make it πŸ™‚ Actor reference

tawdry raft
gentle urchin
hasty merlin
gentle urchin
hasty merlin
#

got them

#

ty for showing the input/output

gentle urchin
#

Not sure you actually need the output here, kinda depends on how you do the rest

hasty merlin
#

i got that setup

#

do i need the doesimplementinterface?

gentle urchin
#

nah

hasty merlin
#

or i guess the update would already right?

gentle urchin
#

correct

#

if the cast fails, it doesnt implement it

hasty merlin
#

so now it can tell whether its a door, chest torch etc

gentle urchin
#

in the different objects that can be interacted with yes

hasty merlin
#

now for the update text then?

gentle urchin
#

you implement the "GetInteractionText",

versed sun
#

If it doesn't have the interface , it return the Default Values and continues the Exec , i believe

hasty merlin
#

man i wish my school that im paying WAY too much for woudl actually teach us UE. our core engine is UE and all they showed us was to import shit and blueprints exist. then told us to ahve fun

gentle urchin
#

changed the function a fraction, as we dont need the bool return

#

so it's just this

#

We need to create the widget next, and store it somewhere sensible

#

it could be in the character, but that's often bloated already, so I'd suggest either PlayerController or the HUD class

queen dagger
#

does event hit node automatically detect all forms of character overlap? or is that something I would have toadd beyond that

gentle urchin
#

"all forms" ?

hasty merlin
#

my delete key just stopped working

#

wtf

queen dagger
#

so like damage events, character overlap

gentle urchin
hasty merlin
#

weird

#

why does it do that

#

i hoenst to god though my switch broke so i was going to replace it

#

im getting an error for return value

gentle urchin
#

refresh the node, remove the return value

hasty merlin
#

Pin Return Value named ReturnValue doesnt match any paramters

gentle urchin
#

refresh

hasty merlin
#

refreshw orked

#

ty

#

for the widget i just need to create and set it right?

#

like this?

gentle urchin
#

where is this?

hasty merlin
#

its in my fpcharacter

#

ill remove everything later

gentle urchin
#

Do you have a custom playercontroller ?

hasty merlin
#

no

#

i created enhanced inputs

#

and added to imc default

gentle urchin
#

Gotcha

#

well

#

lets stick with what you got then

#

Name the widget generically

#

"InteractionWBP" or smth

hasty merlin
#

W_Interact

gentle urchin
#

sure thing

hasty merlin
#

create it the way i showed?

gentle urchin
#

Add it to screen, and instantly set its visibility to collapsed

#

yeah

hasty merlin
#

its gettign created its just not being shown

gentle urchin
#

Add to viewport

#

is what shows it

hasty merlin
#

ill connect it up alter

gentle urchin
#

aaaddd to viewport

#

directly after

#

and set its visibility to Collapsed

lofty rapids
#

or set it and then add to viewport ?

#

or would that not work ?

gentle urchin
#

probably works ?

hasty merlin
#

yea i was just thinking add to viewport when i need

gentle urchin
#

i think you can also set it in the widget default values

lofty rapids
#

i'm just thinking maybe flickering

gentle urchin
#

so you wouldnt have to do it here

hasty merlin
#

and when not need romve from parent

gentle urchin
#

Nah just keep it in the viewport i'd say

lofty rapids
#

i put my widgets in the hud

gentle urchin
#

same but lets not use time on that xD

#

already using my entire evening on this lolol

hasty merlin
#

i dont wwanna fuck with HUD just yet

hasty merlin
hasty merlin
gentle urchin
#

drag from the widget reference, set visibility

hasty merlin
#

collapsed not hidden?

gentle urchin
#

ye

hasty merlin
#

target? leave? or drag the widget

gentle urchin
#

widget

hasty merlin
#

done

gentle urchin
#

singleplayer ?

hasty merlin
#

yea

gentle urchin
#

perfect

#

open the widget blueprint

hasty merlin
#

graph?

gentle urchin
#

yepp

#

Event Construct is where we will bind to the delegate we created

hasty merlin
#

cool cool

gentle urchin
#

so

#

GetPlayerCharacter -> Cast to YourPlayerCharacter

#

Bind to OnHoveredInteractable

hasty merlin
#

create a new event?

gentle urchin
#

yeah

pearl lagoon
#

How would I fix the LMG firing as fast as you can click and force it to use the timer?

hasty merlin
#

the focused interactable what is taht connected to?

#

is that the get play character?

gentle urchin
#

that's what it would be connected to

#

we could ofcourse include it in the delegate directly, if we wanted to

#

but nah, not for now

hasty merlin
#

promote this to varaible?

gentle urchin
#

yes

hasty merlin
#

and set it righ then too?

gentle urchin
#

the input object to the cast is "GetPlayerCharacter"

gentle urchin
pearl lagoon
#

Currently, this lets me hold down left click to shoot repeatedly, but I've found if you can click faster than the timer the gun will still shoot. How would I fix this?

cedar spoke
tight pollen
hasty merlin
tight pollen
#

I need difference

gentle urchin
pearl lagoon
honest bough
#

for some reason my print string doesn't work, has anyone else had that problem before?

tight pollen
# tight pollen

I have the game start time and the current time, how do I get how long a player is in the game?

honest bough
#

all i have is event beginplay, and print string

gentle urchin
hasty merlin
#

im missing something ehre

gentle urchin
#

open up the interface, and add it to the function definition

faint pasture
#

@pearl lagoonYou need 2 bits of state, whether or not the trigger is held, and whether or not the gun can fire from fire rate

tight pollen
pearl lagoon
gentle urchin
tight pollen
honest bough
#

Anyone able to tell me why this doesn’t work?

gentle urchin
#

there's a bug for that if im not mistaken

hasty merlin
gentle urchin
honest bough
gentle urchin
#

or the bp is not instantiated

honest bough
#

how do you instantiate it?

gentle urchin
pearl lagoon
gentle urchin
#

or sawn it

faint pasture
#

the only thing the gun should get from outside is the StartFiring and StopFiring events

honest bough
faint pasture
#

whatever your base gun class is

hasty merlin
honest bough
#

do you always need to spawn blueprints?

gentle urchin
hasty merlin
pearl lagoon
gentle urchin
pearl lagoon
#

Cause theres a lot of them

honest bough
faint pasture
#

the point is you need a bool to represent whether the gun CAN fire

#

that bool is set false whenever you fire a bullet and set true after TimeBetweenShots

gentle urchin
#

as we want to return something

hasty merlin
#

im missing how you got that node of target to focused interactable

pearl lagoon
gentle urchin
hasty merlin
#

get foucsed interactable?

gentle urchin
#

or whatever you called it

faint pasture
#

Delay version:
StartFiring -> bTriggerPulled = true -> TryFireGun
StopFiring -> bTriggerPulled = false

TryFireGun -> if bCanFire && bHasAmmo && bTriggerPulled-> Spawn Bullet -> bCanFire = false -> delay(TimeBetweenShots) -> bCanFire = true -> if bAutomatic -> TryFireGun

hasty merlin
gentle urchin
#

or in the variable section

#

Interactable something maybe ?

hasty merlin
#

new interactable

gentle urchin
#

right

#

so that's what you want in the widget

hasty merlin
#

i cant pull it out

gentle urchin
#

did you save it as the correct type?

hasty merlin
#

what shoudl it be? actor obj ref?

gentle urchin
#

No

hasty merlin
#

and i make it in BPI_interactable right?

gentle urchin
#

your character ref

gentle urchin
faint pasture
hasty merlin
gentle urchin
#

In the UpdateInteractble function

#

is what i said

#

unless you're refering to something else

hasty merlin
#

i might have lost myself in tehre

#

cvharacter object ref?

gentle urchin
#

dont be afraid to post screenshots

#

its easier to know where you are...

hasty merlin
gentle urchin
#

im just guessing that you understand me all the time πŸ˜›

hasty merlin
#

i thought i was tbh

gentle urchin
#

In here we dont need a return variable

#

close it, and leave it as is

hasty merlin
#

deleted ccmpiled and closed

gentle urchin
#

Inside the widget, we cast to our char

#

bind to delegate,

#

has new event

hasty merlin
gentle urchin
#

grab char ref , check if there's a valid "AsInteractable"

hasty merlin
gentle urchin
#

AsBPIInteraction*

#

my bad

hasty merlin
#

this then

gentle urchin
#

yepp

hasty merlin
#

ahhhhhhhhhhh

gentle urchin
#

ta-da

hasty merlin
#

thats where i was struggling

#

now the bpi interface does it need an output on gettext?

gentle urchin
#

Yes

hasty merlin
#

actor obj ref?

gentle urchin
#

Would that help us ?

#

What does the Name of the function suggest

hasty merlin
#

widget obj ref?

gentle urchin
#

x)

#

GetInteractionTEXT

hasty merlin
#

so just a text

gentle urchin
#

For now anyways

hasty merlin
#

i cant find a text obj ref if thats what im needing

gentle urchin
#

you just want the text...

hasty merlin
#

so this looks right

gentle urchin
#

yepp

#

Now IsValid -> Get Text -> Set Text (for the textblock you've added)

hasty merlin
faint pasture
# hasty merlin

why does OnHoveredInteractable not give you the thing that got hovered?

gentle urchin
#

my mistake

#

but now i wanna keep them focused on this next thing x)

#

would remove the need to store the ref, and drag the other ref from it, so would look a tad cleaner

hasty merlin
gentle urchin
#

select the Event Dispatcher

hasty merlin
gentle urchin
#

Add Input to it, of the type BPIInteractable

hasty merlin
#

character opbj ref?

gentle urchin
#

No

#

BPIInteractble

faint pasture
#

my man going from 0 to interfaces real quick

hasty merlin
gentle urchin
#

change the type aswell

#

not Character

hasty merlin
#

actor right?

#

actor obj ref

gentle urchin
#

Noooo

#

xD

hasty merlin
#

text

gentle urchin
#

3 is the charm right

hasty merlin
gentle urchin
#

Cmon...

#

that's not of the type BPIInteractble

#

currently the type is Text..

hasty merlin
gentle urchin
#

πŸŽ‰

hasty merlin
#

im slow today holy

gentle urchin
#

entire evening

#

i wasnt wrong lol

#

xD

#

then in the function

hasty merlin
#

do i need to set anything ehre?

gentle urchin
#

simply connect the variable

#

"AsBPIInteractable"

#

not from the Set nodes, but from a new fresh Get

hasty merlin
gentle urchin
#

perfection

#

as if i made it myself

#

now back to the widget

hasty merlin
#

im back

gentle urchin
#

We no longer need to store the char reference

#

since we get the object directly from the event

#

you may need to update the custom e vent , (not sure if it does it automatically?)

hasty merlin
#

i connected the cast to bind event

gentle urchin
#

you still need to connect the pin from the Cast

#

good

#

Now, your TextBox for the interactable text

#

is that showing as a variable?

hasty merlin
pearl lagoon
#

I tried some things and got to this point. I still need assistance getting the timer to not shoot endlessly and also prevent you from clicking faster from it

gentle urchin
#

up in the right corner mark "is Variable"

hasty merlin
#

tis a variable now

gentle urchin
#

So get a reference to it

#

drag from it and find "Set Text" (Not the tooltip one)

sage lagoon
gentle urchin
#

Nothings unique in 5.3 vs before, the same concepts still work

#

Its just about setting up turn based, in general

sage lagoon
#

What about game mechanics?

gentle urchin
#

more or less the same, but now you can use GAS

sage lagoon
#

I did find a few links, but they seem out of date, since they focus on Unreal Engine 4.

gentle urchin
#

if you wanna dive into an existing framework

sage lagoon
#

GAS?

gentle urchin
#

Gameplay Ability System

sage lagoon
#

Huh. Never heard of that one.

gentle urchin
gentle urchin
#

you know where

hasty merlin
gentle urchin
#

perfect

#

All that remains

sage lagoon
gentle urchin
# hasty merlin

all you need to do now is implement the function in the interactable objects

hasty merlin
#

interface is implemented with the torch. ill try with one for now

gentle urchin
#

Is the function implemented?

#

this would be in the interactable object

hasty merlin
#

so in my case would that be in the construction script in bp_torch?

#

wait

#

hold on

gentle urchin
hasty merlin
#

yup

sage lagoon
# gentle urchin yepp

What I'm thinking is...well, ever heard of games like Mega Man X Command Mission or Evolution Worlds or Wild ARMs? I'm thinking of 3D environments where random encounters occur without tagging any enemies and three or four party members take part in battles.

Example: https://www.youtube.com/watch?v=59HImqLlUBo&list=PLN9aWB4vculL46mdkK0lfSuSRLsCw0OWL&index=2 and skip to around 3:40.

You can support both Mega Man AND me through Nexus: https://www.nexus.gg/megaquint
So first off, X, love the new look. Now as for the game itself, it plays like a traditional Turn Based RPG. You've got items, you use Sub Tanks to heal, and you have a Hyper Mode which lasts for a couple turns and gives you a boost in stats.

Now, for the story. ...

β–Ά Play video
#

Though the turn order part, I would like to approach differently.

hasty merlin
gentle urchin
#

just like you implement the "interact" function

hasty merlin
gentle urchin
#

you must implement the function

#

so it returns something else than nothing

hasty merlin
#

its not showing up

#

in here right?

gentle urchin
#

no

#

right under functions

gentle urchin
#

i think it was

hasty merlin
#

right click add event?

gentle urchin
hasty merlin
#

function or event?

gentle urchin
#

got a choise?

#

gotta be a function, as we want it to return something

hasty merlin
#

convert function to event isnt working. cant have output

#

so im assuming function

gentle urchin
#

yepp

hasty merlin
#

add to event begin play?

gentle urchin
#

No

#

just implement it

#

and return a meaningfull text

#

this is called from the interactable widget when necessary

hasty merlin
#

i am not following here

gentle urchin
#

you need to implement it

sage lagoon
gentle urchin
#

double click it

sage lagoon
#

Yikes...

gentle urchin
#

100 may seem like expensive, but there's a few hours of work behind it πŸ˜›

hasty merlin
gentle urchin
hasty merlin
gentle urchin
#

Perfect

#

test it

#

There's one bug i didnt consider, we'll see if you notice

manic haven
#

Hey all, hopefully this is an easy question. I'm trying to kill my pawn when it lands on the ground. It's not a character, so I can't use the "On Landed" event. The print string works, and I presume the variable is being set, but it's not spawning the emitter when it hits the ground. Can someone help me find out why?

I have a box collision on the pawn that is set to overlapAll

sage lagoon
hasty merlin
gentle urchin
#

test it

#

does it work ?

hasty merlin
#

yes except the widget doesnt go away

manic haven
faint pasture
#

that's your trigger, defining "ground" is up to you

gentle urchin
hasty merlin
#

alreadya dded

craggy flicker
#

i think blueprints are aiding my OCD problem 🫠

hasty merlin
gentle urchin
#

just call the same function, but without an input

hasty merlin
#

why not?

#

if nothing is hit visibility is 0

gentle urchin
#

the widget handles that

#

Just call "UpdateInteractable" ,

#

but with no input πŸ™‚

hasty merlin
#

so liek this then

gentle urchin
#

perfect

hasty merlin
#

yayyyyyyyyy

#

now to fix the widget

gentle urchin
#

still one bug

hasty merlin
#

ill fight that later

gentle urchin
#

but i guess you didnt notice

hasty merlin
#

i need a break

gentle urchin
#

so it's probably fine πŸ˜„

hasty merlin
#

oh?

#

what is the bug?

gentle urchin
#

text doesnt update after you interact with it

#

unless you look away, and look on it again

hasty merlin
#

oh yeah my interaction just isnt working atm

#

how do i fix the interact no widget issue?

#

after interact wont the line trace timer loop get it again?

gentle urchin
#

Actually it will in your case

#

Since we dont look for difference in interactable

manic haven
#

Or should I enable the simulation generating hit events on the mesh and not the box collision

hasty merlin
#

got it back to working perfectly

#

squize you are an amazing human being

#

ty so much for losing years of your life to help my dumbass

gentle urchin
#

You got there in the end

#

Way cleaner than it was

hasty merlin
gentle urchin
#

Make sure to take advantage of inheritance where you can

sage lagoon
gentle urchin
#

If you have many different torches, having A parent torch class is sensible

gentle urchin
#

Its basically a fixed scene with some camera rigs

hasty merlin
#

the school im in advertises that we learn UE but they didnt teach us anythign past importing fbx and textures, making materials and blueprints are a thing. luckily i only have 1 type of torch. my chests though are a parent class and children bps

gentle urchin
#

Dynamic switching and moving on the camera rails

gentle urchin
hasty merlin
#

apply at vcad

#

maybe the lawsuits agaisnt them for false advertisement will diminish

manic haven
orchid pollen
#

Hey I have a tree view and I want to remove elements in it from a button in my elements widgets. I have tried to pass my root widget by a variable exposed on spawn (mega parent) but when i try to get it in my child widget it return NONE. What am I doing wrong ?

#

My child bp :

rare juniper
#

I'm trying to create a pause menu but when i try to press p in game nothing happens, could someone tell me what's wrong?

craggy flicker
# rare juniper

I would create the hud on event play after you create your regular hud. Then, set the visibility of your pause menu to false via the visibility node. After that, change your input functionality to get the "NOT" of your current "isPaused"

#

So after you press p, check if the not of isPaused is true, then set it to visible and do your pause menu logic

round spruce
#

is there a way that i can make ++,+= etc etc operators in bp and make it as a template for any type to pass or have to make seperate ones for each type

craggy flicker
frosty heron
craggy flicker
#

Okay but wouldn't it be just one node anyways?

frosty heron
#

Still have more benefit

#

Also less error prone

craggy flicker
#

I guess you can make a custom C++ script to implement those operators by yourself

frosty heron
#

There is operator overloading in cpp

craggy flicker
#

but I dont see the benefit of doing that compared to just the add op

round spruce
craggy flicker
#

you could make a function that just takes an input and outputs the input + 1

frosty heron
#

U can do fancy stuff that needs custom implementation with operator overloading, but increment by it self is already a nice touch.

round spruce
#

well c++ then ig

craggy flicker
#

wait what

frosty heron
#

Never tried it in bp

craggy flicker
nocturne basalt
#

halo! Was trying to make a lift. Thanks to Ryck0Shae made it. But the 1st attached code doesn't have door opening animation. As I had added it (screenshot 2) everything broke: the lift goes down as soon as it reaches the top and animations play at the same time.

Q: how to make timelines act one after another? At screenshot 2 they act at the same time

round spruce
#

" ++,+= etc etc operators in bp and make it as a template "

craggy flicker
#

didnt read "any type"

frosty heron
#

There is wildcard, but I also never touched that

round spruce
#

yea i thought so XD

round spruce
frosty heron
round spruce
frosty heron
#

Casting is not bad, it is necessity. And in cpp land it's free since there is no hard ref produced

#

But then what would be the point?

#

U do have to cast to every possible object type that u want

#

Making template useless? Imo

#

U can cast to int and float , but what are u casting?

round spruce
frosty heron
#

@round spruce it's probably a trivial question in #cpp I don't know enough to comment.

#

Don't c template being useful tho , from my beginner pov

round spruce
lean compass
#

the default variables in my character blueprint reset everytime i open the editor does anyone know why this happens

hasty merlin
#

how can i change which percentage variable my widget progress bar is using depending on the object

hasty merlin
#

i just got a question about change my interact inputs to be apart of the BPI_Interactable and get teh percentage value to change

faint pasture
twin perch
#

So is their no way to access the row number in a data table ?

ive got a skill list, i want to have the skill be ain integer, i want to them have my code say "if skill number Find row in Data table"

#

So first value in the data table = 1

#

each row in the data table has a number, but it seems like there is no way to access it .

rare juniper
#

Hey, for some reason my main menu in my packaged game doesn't work. when i press the play button nothing happens but in the un packaged version it works?

dawn gazelle
#

You'd be better off asking in #materials or #umg for something like this as you wouldn't be doing it programmatically in blueprints.
You'd probably want to use a material that has a parameter that allows you to set the particular texture you want to have outlined so you can create a dynamic material instance and feed in the texture to use, and then do something like what is recommended in this thread. https://forums.unrealengine.com/t/outline-mask-texture/138867/7

dawn gazelle
# twin perch So is their no way to access the row number in a data table ? ive got a skill l...

This isn't the best way to associate a number to a skill as you can reorder the rows in the data table which may break any code that associates that number with a particular skill.

That said, you can use "Get Data Table Row Names" which would give you the array of names of the data table. You can then use the "ID number" minus 1 to then look up the name of the row from that array. Then use the row name found to get the data table row.

#

Would look something like this:

wheat zodiac
#

Does anyone have any good resources for working with multiple voip outputs? ie. I'm trying to have normal voip and also channel the voip through a radio or intercom or such thing

#

Thanks

lunar sleet
wheat zodiac
#

good idea, sorry about that

twin perch
frank viper
#

Hi,
I am working in Unreal 4.25.
Running into a problem I see on Reddit and other forums is pretty common.
I am saving out a custom-built space station with over 400 parts, each colored, mesh chosen, light color chosen, etc.
So, its a single "save" command that checks and runs through a LOT OF NODES.
Getting the "infinite loop detected" error.
I know about the max number of loops setting in Project settings and made that 2000000000 but that didn't work.
I am working on breaking the saving BP up into several smaller BPies so when the one is done the process continues on the next Save BP, so Save 1 to Save 2 to Save 3 and so on.
Anyone had this problem and know if my current plan would work on not?
Thank you πŸ™‚

#

There is no actual loop I am very sure.

#

Apparently this is a "false" detection by the engine.

#

If you have a single process running through too many nodes.

#

I tried delay nodes but that didn't work either.

frank viper
#

The other comment I saw is that I should collapse all the nodes into a Function.

gentle urchin
#

You could frameslice it?

hasty merlin
#

and i need to rebuild this mess differently as the code works diffeerently now

#

before i had multiple inputs to tell the difference between torch,door and chest

#

now i think i just need 1 but i ahve to rebuild that one to check what the line trace hit is'

#

just thinking about it i could also use elapsed seconds form the enhanced input to be my hold number

gentle urchin
#

Are there different interaction times?

hasty merlin
#

there are yea

#

door is 3 seconds torch is 1 and chest i think is 1.5?

gentle urchin
#

So thats another value we wanna get through our interface

hasty merlin
#

i added this into the widget

gentle urchin
#

GetInteractionTime

hasty merlin
#

i dont need either of these right?

#

on interact we amde before

gentle urchin
#

We need OnInteract

hasty merlin
#

do i need any outputs or inputs?

gentle urchin
#

We wanna avoid that i think

#

So that the stuff going on during the interact may be latent

hasty merlin
#

okay

gentle urchin
#

We want an output for the GetInreractionTime

hasty merlin
#

float value?

gentle urchin
#

Ye

hasty merlin
#

cool its named squizeTime

#

lol

gentle urchin
#

The Inputs are handled in your character right?

hasty merlin
#

yea

gentle urchin
#

So Event IA Interact.Started -> GetInteractiomTime

hasty merlin
#

before that, i made an entirely new input. should this be a hold?

#

and started not ongoing?

#

i want the key to be held to interact which is why i though ongoing might work

gentle urchin
#

Thats why we fetch the InteractionTime

hasty merlin
gentle urchin
#

.Started -> Get Interaction Time -> start timer by event -> Custom event Complete interaction -> Interact

hasty merlin
#

delegated custom event?

gentle urchin
#

Regular custom event

hasty merlin
gentle urchin
#

'Delegated' sure I guess

#

Connect it, yes

#

Red wire

hasty merlin
#

yup done

#

and then interact?

gentle urchin
#

Yepp

hasty merlin
#

the bpi?

gentle urchin
#

Yepp

#

You're on a roll

hasty merlin
gentle urchin
#

Target is AsBPIInteract

#

Same for the GetinteractionTime

hasty merlin
# gentle urchin You're on a roll

i tihnk its cause im more overtired than before that im not making stupid mistakes cause im ticked now that ive spent 4 days, 14-16 hours a day trying to figure this out

gentle urchin
#

(You shouldnt have to convert it)

#

If you draw from AsBPIInteract and search for the same event you should get the correct one...

hasty merlin
#

should be yellow though right?

gentle urchin
#

Yepp

#

Also, grab 2 of the AsBPIInteract refs

#

Avoid those wires all over thenplace

hasty merlin
#

okay

gentle urchin
#

It quickly adds up

trim matrix
#

Are there any tips for unreal engine blueprints

hasty merlin
#

a meme response but still holds true

trim matrix
#

I have a bad feeling i would end up like Sisyphus when ut comes to unreal engine blueprints

hasty merlin
gentle urchin
#

Yes

#

You're on a rolllll

#

Also we wanna promote the timer to a variable

hasty merlin
#

im learning

#

you are truly an amazing teacher

#

event dispatcher looking like

gentle urchin
#

HoldInteracted would have a float value

hasty merlin
gentle urchin
#

Or two

#

Current and Max holdtime

hasty merlin
#

sorry one sec

trim matrix
#

Does anyone know how to make a slingshot? Like in angry birds

lunar sleet
#

Maybe using the cable system and physics? πŸ€·β€β™‚οΈ

gentle urchin
#

Isnt it just a projectile?

lunar sleet
#

I thought we’re talking about an actual slingshot

gentle urchin
#

Angry Birds πŸ˜…

#

I wonder if it would even work

white oxide
#

Noob question how do I create an object reference to my pawn child?

#

(Ball Pawn)

lunar sleet
#

You don’t. You get it from an interaction ideally

lunar sleet
lunar sleet
white oxide
#

My BallPawn inherits from a pawn

lunar sleet
#

So

#

Self

#

If you’re in the ball pawn bp

white oxide
#

No no

#

This is in another BP, it's intention is that it will restart the player when it collides with it

#

The original blueprint restarts itself but of course I do not want that behavior

hasty merlin
lunar sleet
hasty merlin
gentle urchin
lunar sleet
# white oxide

Ok so you don’t need the ball you need the restart object whatever that is

#

Is this just like an actor manager ?

hasty merlin
lunar sleet
#

Are you going to have more than one of these restarts? Is it placed in your world? @white oxide

white oxide
#

I'm making a the Floor is lava game

#

And the floor restarts the player

lunar sleet
#

Ok so just one

#

There’s not multiple copies right?

white oxide
#

Just the floor, yes

lunar sleet
#

Get actor of class

#

Select the restart object from the drop-down

#

Don’t abuse this function, it’s not ideal for most things

hasty merlin
lunar sleet
#

almost defeats the purpose of using interfaces πŸ˜€

hasty merlin
#

an interfaces are very fun lol

lunar sleet
#

They have their uses, but when you’re just starting out, a cast is easier to use

#

Makes your code more readable

white oxide
lunar sleet
#

Not ball pawn

white oxide
#

But why would I get the BP Restart when I'm trying to cast to my player object (ball pawn)?

odd kiln
#

Hi all ! Anyone can help me just a little bit with object type collision problems ?

lunar sleet
odd kiln
#

Both collisions have in "Object Type" = "Player" (a custom object response that I have created) and both are set to "Block" but they don't block each other..

lunar sleet
odd kiln
#

So I set one object type to "WorldDynamic" and the other to "Player" and set both to "Block" but still

#

I'll show you

lunar sleet
gentle urchin
#

You forgot to store the TimerHandle

lunar sleet
gentle urchin
#

Its the output from the SetTimerbyEvent

odd kiln
#

I made these collisions "visible" to see if they block each other or not

lunar sleet
#

Event hit or what

hasty merlin
odd kiln
lunar sleet
#

You need to have them Simulate Physics

odd kiln
hasty merlin
lunar sleet
#

Yes and no. Literally search for Simulate Physics in the details @odd kiln

gentle urchin
lunar sleet
#

Might have to go on the mesh component

odd kiln
hasty merlin
lunar sleet
gentle urchin
lunar sleet
#

Character movement component. It uses the capsule heavily

odd kiln
#

Oh ok but it uses only the Root Capsule Component I guess

lunar sleet
#

Don’t get me wrong, block does what it says, but if you want stuff to like bounce off then you’ll need physics

odd kiln
lunar sleet
#

if you want to test if they’re blocking each other use Event Hit and make sure generate hit events is ticked. That will tell you if it’s happening

hasty merlin
# gentle urchin Perfect

how do i set the value for current time? im assuming the max time i get to set in the object bps

odd kiln
lunar sleet
#

Yep

gentle urchin
#

So you can get elapsed time and the total time

hasty merlin
odd kiln
#

Of course I checked the "Simulation Generates Hit Events"

#

I guess you're right I have to check "Simulate Physics"

lunar sleet
odd kiln
#

It does not

lunar sleet
#

Make sure your meshes have collision on them, or add extra box or capsule collision

hasty merlin
odd kiln
lunar sleet
#

πŸ€”

#

Collision is a tricky beast, maybe use alt+C at runtime to see the actual collision

#

Maybe they’re not close enough or who knows lol

gentle urchin
odd kiln
gentle urchin
#

Feed it SquizeTime and from the timer -> get Elapsed time

hasty merlin
gentle urchin
#

Squize time is max hold time

hasty merlin
#

i also connected the bpi interactable

gentle urchin
#

Elapsed is current

hasty merlin
#

awesome and i can change squize tiem depending on what the actor is?

gentle urchin
#

Thats what we're doing yes

hasty merlin
#

awesome awesome

gentle urchin
#

Canceled you wanna clear and invalidate the TimerHandle

hasty merlin
#

cancelled and completed?

#

or just cancelled?

gentle urchin
#

Both is fine

hasty merlin
#

how do i clear and invalidate? ima ssunming is valid node

gentle urchin
#

Dont assume

#

TimerHandle is the context variable

lunar sleet
#

Drag from the handle, start typing clear