#blueprint

1 messages · Page 162 of 1

heavy hemlock
#

Maybe. That's somewhere to start. You will have many places to go after that.

#

I think so, yeah.

trim matrix
#

I made a few of my own so I'd assume so, they kinda sucked though

faint pasture
#

I've worked with Unreal for 9 years and I've never really messed with Character much, Might not have to ever mess with the CMC if it's all on Mover 2.0 by the time I do a character game.

wintry sphinx
#

anyone know what could be causing the zombie to not hit much? can give more screenshots if needed

trim matrix
wintry sphinx
faint pasture
heavy hemlock
#

Yeah. Many dollars will solve lots of problems.

faint pasture
#

and is it cancelable?

trim matrix
faint pasture
#

depending on requirements and your definition of "good enough"

#

nobody is going to do any real work for free

heavy hemlock
# wintry sphinx

Something weird is definitely happening. The 'PlayerIsInRange' boolean is on, but they're not doing the attack.

trim matrix
#

ideally I'd just have a macro I can apply at the end of a movement event that gets my velocity before landing, and applies it after

heavy hemlock
wintry sphinx
gray quarry
#

in editor my character starts at 90 Y axis but in exe it starts at 0 0 0

faint pasture
#

attack should be a task

heavy hemlock
#

So it's always 90Y.

gray quarry
#

already did

#

doesnt work

#

only works in standalone and in editor

heavy hemlock
#

Interesting, then in the code that updates the character rotation relative to the mouse - why not set it there?

trim matrix
wintry sphinx
faint pasture
#

If you don't know what you're doing, figure it out

#

don't just paint by numbers

faint pasture
#

it's basically C++ in disguise

wintry sphinx
#

i have been looking at this today and yesterday and am not seeing the problem

heavy hemlock
#

That blueprint is a task I think.

#

But it should be in the graph.

austere ingot
#

does anyone know why when i possess a new pawn (a vehicle) it inherits the roll even after trying to run set control rotation after possession? if the car is on a hill sideways for example, the camera is now rotated to the cars axis

trim matrix
heavy hemlock
#

Oh it is there!

#

Right at the end.

heavy hemlock
wintry sphinx
heavy hemlock
# trim matrix I hope so, he is just kind of a giant baby though

I assumed that you were doing a school project or something. I think probably the only way you're going to be able to make your game work is to build the game in iterations as you learn things. So right now... you have a character who can move, and walk, and look around - that's great! Leave it. You have 10 000 other jobs to do to make a game. Do some of those, then come back to the character and use your new knowledge to improve it, then do some more of those 10 000 tasks, and come back again, each time making it slightly better.

#

Do not get stuck on one thing.

#

If you stop because you get stuck - you're never going to finish it.

#

Does it work well enough? Move on to the next thing.

heavy hemlock
#

Or is it constantly re-entering the node incorrectly.

#

Or is it getting stopped?

#

If it's entering the node and failing - the problem is in the node.

#

If it's not entering the node properly, the problem is in the criteria.

trim matrix
heavy hemlock
#

You may want to dial down your ambition then.

trim matrix
#

(on my own as in without the school's instructions)

heavy hemlock
#

Make a game that is slightly harder than you think you can pull off.

#

Don't try to replicate a 100 million dollar game.

#

With you and your adult baby friend.

trim matrix
#

well a little more basic of a question then, I currently have a blink I made myself (think nurse from dbd)

#

I have a blink indicator that shows where you will blink to

#

the only way I could get it to work was to store the indicator under the map, then when holding the blink key it sets it's location to the end of the line trace

#

then after it sets back under the map

#

is that an acceptable way to do it?

#

I feel like it's kind of inefficient

tulip anvil
#

Does somebody know why this timer continues looping even when "is sprinting"= false ?

wintry sphinx
heavy hemlock
#

I think 'Looping' only reads during the initial Set Timer moment.

#

So you're setting it to loop indefinitely.

#

And then later when the Is Sprinting value changes, it doesn't matter.

lofty rapids
heavy hemlock
#

Also - this is almost certainly not the best way of handling a stamina system.

#

(yet another moment to use Tick)

tulip anvil
heavy hemlock
#

Yeah.

tulip anvil
heavy hemlock
#

You want to decrease at a rate, right? A certain amount per second?

#

That's what Tick is for.

trim matrix
#

imagine not knowing you're supposed to use tick sometimes

tulip anvil
#

tick+deltatime would decrease it over time the same way a timer does though, only every single tick based on tick length rather then once every * amount of time.
i don't need to run it every single tick.

trim matrix
#

that's crazy

lofty rapids
trim matrix
#

so this is what I was talking about. is this an efficient way of doing it?

tulip anvil
heavy hemlock
tulip anvil
#

i use tick where i need to, and avoid it where i can.

heavy hemlock
#

But timers tick.

#

You are not saving evaluation time this way.

tulip anvil
#

only the timer, not the entire logic.

heavy hemlock
#

Right, but 'the entire logic' would be a single boolean value.

#

"Is sprinting?"

#

If that makes or breaks your game - you're in trouble.

lofty rapids
#

timers are really good for something to perform at a set amount, i feel like doing that on tick is less easy

tulip anvil
#

no it would be all the different multipliers and variables checking how much to decrease stamina, checking current and max stamina etc.

lofty rapids
#

you'll be doing all kinds of math to figure out a second

heavy hemlock
#

You want to reduce stamina by a certain amount while sprinting.

#

So on tick, you'd check 'Are we sprinting?' and if you are, then you subtract from the stamina.

#

That's it.

#

No complexity. Considerably less math than the transform update for a single background object.

heavy hemlock
surreal peak
#

I don't think either is really a problem tbh

#

Tick or Timer are both fine fwiw

#

Timer probably needs you to calc how much of the timer progressed already depending on the timer loop time, when you stop sprinting

#

I would probably do it on tick

maiden tree
# trim matrix so this is what I was talking about. is this an efficient way of doing it?

I think what you’re doing works just fine depending on your needs. Just my two cents; If you wanted something cleaner, you could use “spawn actor of class” and just make sure it’s destroyed when it’s no longer in use. The class itself could follow wherever your hit location is while it’s spawned. I think that would prevent it clipping unexpectedly, if it ever happens with your setup

trim matrix
#

I need to run the spawn logic on started, and the move logic on triggered

faint pasture
tulip anvil
#

(timer set to 0.05 for testing purposes)

faint pasture
#

That's fine for a timer but I wouldn't go any faster than that. Once you start approaching "I want it to be smooth" then you're in tick territory

#

Using a timer with anything within an order of magnitude of tick hz is just tick with extra steps.

tulip anvil
#

mhm, i do for instance my health regen tick based, as the player would have those values visualized. for stamina i'm not too concerned if a player can sprint for an additional percentage of a second after it would of run out.

faint pasture
#

If you've already got health regen on tick just put the stamina there. It's probably possibly actually slower to have a second function handling stamina. Just put it all in one shot

tulip anvil
#

hmm, but then i would be checking if stamina should regen every single tick even when it is not relevant. IE if stamina has recently been used or while stamina is full.

#

i know in the grand scheme of things checking a few booleans every tick is negligible, but if it is not necessary, then why?

heavy hemlock
#

The overhead cost of allocating and deallocating a timer is probably more than that.

#

By a lot.

tulip anvil
#

i would likely still be running a timer for regaining stamina though as that would be on a several second cooldown. so the tick would run in addition to the timer, not in place of. which is a timer rather then a delay because i need to be able to reset the stamina regen cooldown from various different places.

tulip anvil
#

touché did not know that was a thing.

#

appreciate ya'll trying to help me and taking the time to teach me though!

heavy hemlock
#

👍

#

Sorry for being pushy! I have a thing with people trying to avoid using tick for optimization purposes.

livid flare
#

Hi I'm trying to change camera from third person to a fixed one. I'm loading a new camera inside level BP, it works but I can't make the HUD move again, any help?

stoic crow
#

quite possibly a dumb question. I have an actor that has a few "sub" actors that register their information with them on BeginPlay. It seems like the interface calls all happen at once, and only one makes it through each time. Is that a thing, or am I misunderstanding what's going on here?

#

elevator floor registers itself with the elevator on beginPlay, which in turn registers the floor with the UI widget

#

actually nevermind i see what it is

#

the panel widget wasn't ready. delaying the floor registration by one tick solved the problem.

gray ingot
#

Is there a "good" way to make gps? I need to make in hand device, and when i press LMB, it shows certain place on my map.

#

I made SceneCaptureComp2D under player, and activate it's image when LMB pressed, but i think there are better ways, but i can't find any 😦

quasi folio
#

Does anyone know why my new Pawn, using the Mover component, falls directly through the world even though I added box collision to it?

timber crystal
#

hello guys why my "projectile movement comp" always goes trough walls even with collision on sphere and Sprite

trim matrix
lofty rapids
#

i have used var * delta

wise sorrel
#

whats the local to world node called

#

vector transform

trim matrix
timber crystal
#

why this projectile has no collision i want that they stay on ground they are "bombs"
Mabye with constrain to strain? dont know why i have that problem

Sprite and Sphere collision are on Collision "Block All"

spring osprey
#

Hi guys, can someone help me on this? I was following a tutorial for a store but the guy in the video uses an inventory system that i don't need because I already have one, any solution to connect the Quantity/Item ID Integer to my S Item data structure.

cyan mortar
#

How to add CPF. By selecting a variable this property is not active, I need to add a new flag?

lavish elm
#

Hey there! I was curious to see if anyone had tried to achieve this effect using CMC: as players walk up a steep slope, a force down the slope is applied more and more and then eventually forces players to slide down the slope. Similar to this effect in valheim (ignore the Sprint functionality, that seems easy enough):

tidal tendon
#

How can I put a box around live players in a players camera? Im making an advanced soldier class that can see boxes around players like ESP hacks in games.
It shouldnt see enemies through walls, only when they are visible

vague swallow
#

Hi! i'm working on a attack range for my character where after clicking on a target I'd like to constantly know if its in range as only when its in range it enables my attack button. (Ranged attacks) My questions is, is it better to use a sphere collision and change boolean "InRange" to true if its overlapping with the character collision of the target? or is it better to do a line trace and calculate a distance between my character and the target? (If its the latter I think i might have to use event tick to check if the clicked target is in range?) Its a multiplayer game. what would be the best approach to this?

reef tinsel
#

Is anyone else having problems with super slow SpawnActor ?

#

it literally locks up PIE

tidal tendon
heavy hemlock
#

It will be cheaper and more accurate than physics tests.

vague swallow
#

Thanks! 🙂

heavy hemlock
#

If your game is multiplayer, you probably want to do this on the server, and distribute 'can target' values to each player - otherwise people can make hacks to give themselves infinite range by messing with that function.

stoic ledge
#

this returns a character class that custom characters inherit from? the current possessed character?

tidal tendon
#

I dont know what its named but how can I make this?

tidal tendon
stoic ledge
#

i just glossed over the mouse over tooltip "Character Object Reference"

heavy hemlock
# tidal tendon I dont know what its named but how can I make this?

This is a non trivial effect to pull off, and it will require some effort on your part. Here are the broad strokes.

  1. Attach a component or tag to all objects you want to flag with this effect.
  2. At runtime, determine from a list of those objects whether these objects are visible.
  3. Use the 'Project World to Screen' function to acquire the screen position of those objects. You can probably use their bounding volumes to get their extents, then convert each one of those extents into points on the screen.
  4. Add a ui canvas overlay and generate a square widget per visual object positioned where the projected points say they should be.
dawn gazelle
heavy hemlock
#

I would rank this as pretty solidly in the middle of 'intermediate' in terms of development challenge.

teal yoke
#

Anyone know how to do widgets for dedicated servers. In my controller I have custom event, then I have a box I interact with calling the event. Not sure how to connect target though, when I use the controller is says reference not found.

tidal tendon
#

isnt look like working...

#

Also Im trying to make it multiplayer compatible so every player should see a box around that enemy

stoic ledge
thin panther
tidal tendon
#

It shows its a cube If I jump, but working fine otherwise

heavy hemlock
#

Cool solution!

teal yoke
thin panther
#

You can still follow the proper way of using unreal's framework and figuring out referencing.

#

You're just hurting yourself by jumping into the hardest branch of multiplayer

#

Especially as it requires C++

#

And a source build of the engine

tidal tendon
heavy hemlock
#

I imagine it will also be visible around corners.

teal yoke
tidal tendon
heavy hemlock
#

If an enemy is just around the corner, you will probably see the square peek out before they're visible.

tidal tendon
#

oh yes

#

Would be amazing if I could find a proper tutorial about this

#

But looks like nobody shows how to do specific things like this

thin panther
#

Proceed with caution :P

#

⚠️

lunar sleet
#

Only to be met with “nah, I got this” 😀

trim matrix
#

🤩

lunar sleet
#

Just do what those YouTubers “making games” in one week do. 1. Buy an asset that looks cool. 2. Buy a plug-in that does things for you. 3. Don’t know how to use any of them or how they work underneath or how to connect them. 4. Stick them on a template in world grid material and say you made a game

sick sky
#

im getting crazy.

my character does a linetrace on tick, it looks for a specific Object Type (a custom i made).
the linetrace hits the boxs with this object type.

but if i create new boxs with the same object type, or even duplicate existing ones in existing actors, the linetrace doesnt hit
any ideas ?

dusky cobalt
#

Is there any node or function in unreal that could help me do something like that:
When holding mouse, draw circle, increase radius when you move mouse.
After releasing button, get actors under the circle?
I know there is Draw Rect and Select actors from rectangle, but is there something like that for circle?

#

Or I just do some math and create circle from rect? 😄

thin panther
#

you're probably looking for a specific instance

#

sounds like you want an interface for this anyway

teal yoke
stoic ledge
#

@teal yoke Not expertly, but i seem to remember something about widgets knowing who creates them. I create them in my character though, then i can pass the information from my character into my menus, like an inventory / loadout.

sick sky
# thin panther show the code

i dont think its a code related thing, because i dont see WHY it would hit some boxs and not others (with same settings)
but here

FHitResult HitResult;
    FCollisionQueryParams QueryParams;
    QueryParams.AddIgnoredActor(GetOwner());

    GetWorld()->LineTraceSingleByObjectType(
        HitResult,
        FocusStartPoint->GetComponentLocation(),
        FocusStartPoint->GetComponentLocation() + (FocusStartPoint->GetForwardVector() * LineTraceLength),
        FCollisionObjectQueryParams(ObjectTypes),
        QueryParams
    );
        
    if (HitResult.GetActor() != LastFocusedActor)
    {
        bIsNewFocus = true;
        if (IsValid(LastFocusedActor))
        {
            if (IsValid(FocusSceneComponent))
            {
                if (FocusSceneComponent->Implements<UFocusInterface>())
                {
                    Execute_StopFocus(FocusSceneComponent,GetOwner(),LastFocusedActor);
                }
                LastFocusedActor = nullptr;
            }
        }
    }

    if (HitResult.GetActor())
    {
        if (bIsNewFocus)
        {
            LastFocusedActor = HitResult.GetActor();

            TArray<UFocusSceneComponent*> FocusSceneComponents;
            LastFocusedActor->GetComponents<UFocusSceneComponent>(FocusSceneComponents);

            if (!FocusSceneComponents.IsEmpty() && IsValid(FocusSceneComponents[0]))
            {
                FocusSceneComponent = FocusSceneComponents[0];
                UE_LOG(LogTemp,Warning,TEXT("Called Start Focus 1 %s"), *FocusSceneComponent->GetName());
                if (FocusSceneComponent->Implements<UFocusInterface>())
                {
                    Execute_StartFocus(FocusSceneComponent,GetOwner());
                    UE_LOG(LogTemp,Warning,TEXT("Called Start Focus 2"));
                }
                bIsNewFocus = false;
            }
            else
            {
                LastFocusedActor = nullptr;
            }
        }
    }
#

maybe i should move to #cpp

muted otter
#

anyone knows why the Ambience Componente doesn't work?

#

it's not valid when the custom event is called

wise ravine
#

*i was just about to ask a question, but while writing it I figured it out 💀 *

wise ravine
#

Can someone please explain this to me? One of 2 variables returns True, However the AND node prioritizes the False for some reason?

stoic ledge
#

both must be true for and to be true.

#

you might be looking for an 'Or' gate

wise ravine
tulip anvil
wise ravine
#

oh sick

#

It works perfectly now, thanks @tulip anvil and @stoic ledge . I don't completely understand the logic, but I'll try and re-read it another time 😅

tulip anvil
#

OR will result True if ANY input is True

wise ravine
#

And OR is the opposite?

trim matrix
#

what happens if I don't check this, should I check it ? I don't see any change

heavy hemlock
valid solstice
stoic ledge
#

'NAnd' is the opposite of 'and'

wise ravine
tulip anvil
trim matrix
#

not is just like the opposite, and is both, or is either

thin panther
#

XOR is a good one to know, it's like an or (hence why it's called exclusive or) but it's only true if 1 is true, 1 is false

thin panther
#

as you can see, following this logic, you can have XNOR which is only true if both are true or both are false

thin panther
trim matrix
#

these are just weird names, and / or -> Booleans are easy to understand

tulip anvil
#

😅 gotta love logic gates xD now imagine being an electrician and getting it wrong means you get electrocuted 😛

thin panther
#

xor is (A && !B) || (!A && B)

rotund barn
#

things are broken once again. i cant end this logic when i use a delay, any idea why? if i dont use a delay, it doesnt have time to do what i need it to do (kill all AI in a radius), but it does work and kill some before it shuts off as i change a bool to false at the end, if i use a delay before it turns the bool to false, it doesnt turn it to false ever and will keep killing AI infinitely

tulip anvil
trim matrix
#

XOR doesn't exist in c++

thin panther
#

Yes it does, I just showed you how to make it lol

stoic ledge
trim matrix
#

to make it

tulip anvil
thin panther
#

yes, an XOR is an assembly of other logic gates.

trim matrix
#

you just do booleans stuff randomly, not using XOR particulary

thin panther
#

that is possibly the most false thing you could have said

#

XOR's are one of the fundamental logic gates and used everywhere

trim matrix
#

byu randomly, I meant your logic

thin panther
#

no?

#

that's quite clearly not random

#

given it's a clear definition with clear outputs and well defined meaning for decades

trim matrix
#

do what you do with your booleans, dont do XOR.

thin panther
#

I'm not sure if you just don't understand it, but don't advise other people to throw fundamental boolean logic out the window because of that

#

XOR is used everywhere in computing

trim matrix
#

'fundamental boolean logic'
ew

tulip anvil
# tulip anvil

these logic gates are what the entire digital and electrical world relies on, almost every computer, processor, light switch, electrical grid node you name it... in the entire world... is just a combination of these logic gates. (plus a few extra things)

trim matrix
#

I can ensure you that I can do even more than these simple gates thingy

#

just be able to understand boolean

thin panther
#

hell your computer right now is using xors everywhere to reset a register ready for an input

rotund barn
thin panther
#

they have the nifty ability that anything xor itself is 0

#

01010010 xor 01010010 = 00000000

tulip anvil
#

the amount of boolean logic gates within a single computer is litterally mind blowing xD

thin panther
#

truly is

thin panther
#

I remember building part of a 6502 on bread boards with just logic gates, and it was insanely large after only finishing the ALU and the registers

trim matrix
thin panther
#

it was huge

rotund barn
#

yeah, an they are just a few atoms in width, insane

thin panther
#

what do you think a boolean is, it's a 1 or a 0

trim matrix
#

I know

#

wut

tulip anvil
trim matrix
#

it depends

#

and will surely not be 1

thin panther
#

well, sure most compilers pad them, but the fact remains is it's 2 states, which is by definition a bit

#

this is why you see uint8 bMybool : 1; Because it's a single bit, and you use it like a boolean

wise ravine
#

not to interrupt this conversation, but anyone know why my BPI isn't being called in my receiving BP after being activated in my character sender BP?

thin panther
thin panther
trim matrix
# thin panther fire away

Quick question, how to get a channel in C++? channels can only be created in the editor preferance I think

thin panther
#

You mean trace channels?

trim matrix
#

ye

thin panther
#

It's rather unintuitive

trim matrix
#

wdym

thin panther
#

Do you want the user defined ones?

trim matrix
thin panther
#

It's ECC_GameTraceChannel1, ECC_GameTraceChannel2, etc

#

for user defined.

trim matrix
thin panther
#

Most people end up typedef'ing them because the naming is ass

#

For the engine ones, it's your standard, ECC_WorldDynamic, etc,

trim matrix
#

how could I use the normal one

#

--
Visibility

thin panther
# wise ravine would this work?

No. An interface isn't a magic function. You still need to call it on an instance of that object. your player is never a button, so calling it on yourself is never going to be able to call it on a button

trim matrix
thin panther
#

typedef isn't wrong, it's just the older version

#

People will fight that camp until the cows come home, but it doesn't really matter tbh

#

using is often less typing

#

and that's pretty much it

trim matrix
#

and bettter

wise ravine
faint violet
#

I'm calling Ai MoveTo every tick, is this bad for performance?

tidal tendon
#

Are you want AI to always follow the player without even seeing it

stoic ledge
faint violet
#

hmm idk. cuz if it doesnt matter imma be lazy and keep it every tick

tidal tendon
#

Whats your purpose I mean

faint violet
#

imma have it doing checks, so imma need to start it again after I cancel it

#

idk if ai move to triggers once or not

tidal tendon
#

If you want to check it regularly in small intervals and from everywhere

#

You can decrease sensing interval

#

and increase the sensing range/angle

#

Putting things in event tick should be last thing to do

faint violet
#

no, im just wondering if its bad for performance. if it is, I'll set it up to a do once

#

cuz maybe it does a check

tidal tendon
#

Putting things in event tick is not the best thing you can do for performance

faint violet
#

I cant open it in vs, so I cant see if there is an "already running" check or something

#

whatever

rotund barn
faint violet
rotund barn
faint violet
#

I was thinking about using an in game clock, but nevermind.

faint violet
dawn gazelle
rotund barn
stoic ledge
#

isnt that crazy? or does a tick not happen very quickly

dawn gazelle
#

And that's the wrong way to go about it.
You can use the variable to indicate that something may have already happened in the past to know that it happened, but you can still signal when something started.

rotund barn
#

oh but wait, i think i could maybe check if the variable reaches threshold where ever it was changed or incremented

#

could that work?

#

and actually to make my previous statement even worse, i have like 20 custom events from event tick, all of which are checking stuff, and when conditions are met, firing other stuff as well

dawn gazelle
#

When you adjust the variable that is when you'd do that check, and if your check is good, signal that something needs to happen.

rotund barn
#

just the other day my dumbass incremented a variable 100 times in a row with a delay between each node.... just for a reload timer bar thingy...

#

i did use alot of timers but didnt occur to me at 5am that day

rain wraith
#

If an actor is destroyed upon closing the game and respawned on load, do the respawned actors not remember what Blueprint Interfaces they had implemented? I'm using a blueprint interface to communicate a changing integer between two BP classes and it works fine except for when the game is closed and reloaded, then it no longer outputs the exec or integer

stoic ledge
rotund barn
rain wraith
dawn gazelle
rain wraith
zealous moth
#

@rain wraith what do you mean by closing the game and reload?

sinful hinge
#

If I put a loop on the Get, will the branch be true if all of the array is activated?

rain wraith
zealous moth
#

I would try it in a packaged shipping build

#

sometimes in editor stuff gets wonky

rain wraith
#

It doesnt work there either

#

Already tried

zealous moth
#

put a print string on tick and check if it implements interface

#

I'd be curious of the result

heavy hemlock
heavy hemlock
#

Close!

#

But rather than going from 'True' on the branch to the portal, go from 'completed' on the loop.

sinful hinge
#

completed instead of loop body right ?

heavy hemlock
#

The 'Completed' pin shouldn't fire until the whole loop is passed.

sinful hinge
#

yeah x)

#

oh, straight from completed to the portal ?

#

and only false on the branch ?

heavy hemlock
#

Yep!

sinful hinge
heavy hemlock
#

Yep!

sinful hinge
#

got it, it loops from the array, if a false is detected, the loop breaks, if none is detetected, it means the loop is complete then I can enable !

heavy hemlock
#

Yus!

sinful hinge
#

Thanks 😄

heavy hemlock
#

👍

rain wraith
# zealous moth put a print string on tick and check if it implements interface

I originally did these by testing a boolean for true/false. At first I read this and was like I've already done that. But I went ahead and did it anyway and boom your approach made it so much easier to diagnose.

The integer from the BPI is used to control four different component transforms using array data. I only implemented saving/loading for the first transform component just to test before doing them all. Apparently even though there were no errors, this made the code not work since the 3 remaining component transforms were receiving NULL array data. Unplugged the the three set world transforms and everything is working. Now I can add the save/load for the other 3 transforms.

THANK YOU! <33333

zealous moth
#

oh np

#

i will take the credit

#

🙂

rain wraith
#

One other question: for the "Get Bone Transform" node, is there any way to get the transforms of all the bones in a skeletal mesh? Or do I have to gruesomely set up duplicated of "Get Bone Transform" for every bone in the skeletal mesh

heavy hemlock
rain wraith
#

For VR Hands, I want to get all of the rotations of the fingers in the skeltal mesh, for both hands

heavy hemlock
#

OK, but for what?

#

What are you doing with it?

rain wraith
#

The rotation data will get saved into an array, then the array data is used to playback the bone transforms - sort of like a recording but in 3D space

heavy hemlock
#

For what though? Like - you're describing a method, but not an intent. Why make this recording?

rain wraith
#

Because it's for my simulation, for a uni class

#

I don't see the relevancy of the intent for this

heavy hemlock
#

Well, many things that someone might believe they need to read all the bone information per frame probably don't. I've seen people do that to attach particle emitters for effects.

#

People do weird shit!

#

If you need to record it for playback, you could probably use the sequence recorder, but the results of that are not easily accessible live - it's to create a sequence to be played back later.

#

So, if you needed to record the data for a cinematic or playback - again, there are tools for that, and the approach would be different.

#

The why you are doing a thing is always essential to include.

rain wraith
#

Whoops missend, one sec

#

I suppose. The intent here is a simulation which can, at runtime, record the live movement of a player's hands and then, at runtime on their VR device, replay all of the recorded gestures of the VR hands through a duplicated pawn that is spawned in.

#

And have the hand data be able to be saved/loaded

heavy hemlock
#

Hmm - a non trivial challenge that. The sequence classes in unreal that normally serve to store and retrieve animation data are not easily accessible even in c++. Getting access to them to write curve data is a bit of a headache.

#

And they're very inaccessible to blueprint, especially for writing data, so you'll have to record your data to arrays. The other problem is that your data will not be of a consistent framerate, as your game's framerate is dynamic - so you'll have to record the timestamps with each key.

rain wraith
heavy hemlock
#

Then you'll have trouble with playback. Because you can't easily record actual animation or curve data, the playback is going to need to be lerped between keys - so you'll have to build your own animation player.

rain wraith
#

I've already made the recording and replay system for the whole body of the VR simulation - I just want to now added the skeletal mesh transforms of the hands for added realism

heavy hemlock
#

All right, good luck.

rain wraith
#

I suppose something like this might work

#

Is there a way to get the number of bones from a component?

heavy hemlock
#

Note that the values you get from "Get Bone Transform" are always from the previous frame if acquired from the blueprint VM.

rain wraith
#

Dope, thank you

dense badger
#

Heya all, is there a way to get all the gameplay tags at a specific level in the hierarchy? Like if I have Items.Names[10 names in this category] would return a tag containter with just those 10 tags?

#

I feel like this is a tag query thing, but the pattern is escaping me...

trim matrix
#

Would a delay in a BP for loop would work as expected and wait the delay between each iteration?

faint violet
#

How do I cancel or succeed an Ai MoveTo? Acceptance Radius was working an hour ago, but I changed something and now its not.

dawn gazelle
faint violet
onyx berry
#

Hi everyone, I was hoping I could get some help. I've created two interface bp for a male and female character customizer. I feel the event OnWidgetConstructed is keeping everything in sync. Any idea what adjustments I need to make to split the interfaces? Thanks

heavy hemlock
#

Or do you mean a widget / ui?

#

Of a particular type, or just any component? And how many of them are in the scene?

#

Weird choice. They're not actors - they're components?

worthy jasper
heavy hemlock
#

Testing is always best, but I don't think so, no.

dawn gazelle
#

You could create your own looping macro that can accomodate a delay though.

heavy hemlock
# onyx berry My apologies, I meant widget/ui

All right, cool. I was very confused. I'm still a little confused. What do you mean by 'split the interfaces' and why is 'OnWidgetConstructed' keeping things in sync? Why do you want things to be 'in sync'?

#

Or you could use a timer!

#

(this is a place to use a timer)

trim matrix
#

maybe coroutines would work

worthy jasper
#

And depending what you did would probably be the opposite of what you want XD

trim matrix
heavy hemlock
#

Are those all in the same blueprint?

worthy jasper
trim matrix
#

there's no node LMAO

dawn gazelle
trim matrix
worthy jasper
trim matrix
onyx berry
heavy hemlock
#

OK, well... is your character always going to be in the middle?

dawn gazelle
trim matrix
worthy jasper
trim matrix
heavy hemlock
#

All right, well - if you want to get the distance between two objects (components or otherwise) you can subtract their world positions from each other and get the 'length' of the resulting vector.

trim matrix
#

Is it just me or you should load Async, because there's a lag

heavy hemlock
#

Do that with your six arrows, and choose the one with the shortest length.

trim matrix
dawn gazelle
onyx berry
heavy hemlock
trim matrix
heavy hemlock
#

The problem is that when you use one of the main buttons, it doesn't switch.

#

There is a 'distance' node, but I think it's for actors.

#

You could look at that though.

onyx berry
heavy hemlock
#

Loops!

onyx berry
heavy hemlock
# onyx berry Yes, but I'm trying to make it so that when you select male, it's default male m...

OK, so debug routine:

  1. Confirm that the female widget is actually in the main ui, and you don't have two of the male ones.
  2. Confirm that the female widget is actually designed to show the female character, and doesn't accidentally have the male characters meshes in there.
  3. Put a break point on the part where the main characters mesh is selected. Step through to see the values as it's assembled.
trim matrix
onyx berry
mortal nacelle
#

How is one supposed to debug blueprint code for a packaged server running outside the editor?

#

I have a bug which only seems to happen on packaged server builds, not in PIE multiplayer mode.

onyx berry
trim matrix
trim matrix
#

Hey guys, Is there any way to convert enum to display_name?
I need it 'cause I found the intersection between classname and enum name so if it possible, I don't have to use switch anymore

So My questions are below

  1. can I get class with name? (even using C++ that's okay)
  2. can I get enum display name?
sinful hinge
#

I'm trying to trigger the function in BP_Portal from BP_SocketMaster by using an interface, but I don't know what to use as a target, and I could use some help...

cloud spoke
#

coroutines are functions that can be paused and resumed, if I had

TCoroutine<> MyDelayedLoopFunc(float delayBetweenLoops)
{
  for(int i = 0; i < 100; ++i)
  {
    SomeLogic();
    co_await Seconds(delayBetweenLoops);
  }
}

Then this would do a loop, wait x seconds, do another loop, wait x seconds and so on until I have done 100 loops.

I'd love for you to go in detail though of what your understanding of coroutines are

twin jacinth
# sinful hinge

It will need to be a reference to whatever instance of BP_Portal you want it to run on

pallid gorge
#

Does anyone know if there's a switch node that can compare object references?

pallid gorge
#

RIP

lunar sleet
#

You can use nested casts

#

But if you have a lot use something agnostic

pallid gorge
#

Yeah I'm trying to get something modular

#

I want to be able to intake an actor to define which array to assign some data to

lunar sleet
#

Actor components can give you modularity

pallid gorge
#

Yeah I'm already doing actor components

lunar sleet
#

In before Authaer hehe !

pallid gorge
#

I just meant for the actual flowthrough of the code

#

Casts are too predefined for what I wanted

maiden wadi
lunar sleet
#

Well you don’t need a cast if you’re using an actor component @pallid gorge

pallid gorge
#

Well like I said it's more about defining where it goes once it's in the component

#

I need it to build an array for each unique entry and then be able to switch back and forth for which one it puts any new info related to that entry in

#

I can piece it all together the long way but I was hoping a more sucinct switch option would exist

maiden wadi
compact hornet
#

How do I get the normal rotation of a surface hit by a line trace? I'm scratching my head here. I have a line trace a bit in front of my camera pointing straight down. When I approach an object I want to make sure the surface I hit it is close to horizontal before doing the rest of my code, but I can't dont really understand how to get that information from either the normal or inpact normal from the line trace.

maiden wadi
trim matrix
maiden wadi
#

Why not just use the enum as the key instead of it's name?

compact hornet
trim matrix
compact hornet
cyan mortar
#

Good afternoon, in the first function I created a local variable in BluePrint how can I set it in another function?

maiden wadi
maiden wadi
# compact hornet

This looks fine. You should definitely be seeing like 0 here if you line traced a flat wall.

trim matrix
compact hornet
maiden wadi
#

It's fine if it gets you the results you want. 😄

trim matrix
maiden wadi
#

About class names. There's a way to get a class via names.. Aliasing might work better though.

trim matrix
maiden wadi
#

This conversation kind highlights aliases. #blueprint message

All classes can be named via their relative path in the project. Some stuff like GameMode's arguments in the URL support aliases that you can specify for shorter class names, but I've never looked into how they work. May be automatic. But you can utilize SoftObjectPath stuff to convert a thing's string into a softobjectclass which can then be loaded or resolved to work as a class.

compact hornet
trim matrix
maiden wadi
#

Depends on what you want. I'm not personally a fan of using strings to do things unless it's necessary.

trim matrix
cyan mortar
#

This is my screenshot

keen crystal
#

Hey ! I'm having a problem;
I'm retargeting animations; and everything works just fine, except for arms twists.
Arms twists, in the preview, work fine (screen 1), but once in game, it seems not to apply (screen 2); any ideas ?

swift rune
#

Hi all, Having trouble using an assett and using it over the base unreal thirdperson BP as it has so many points instead of just body. ie, hand, upper arm etc. Please help

spice thunder
#

In my project idk why engine Scalability get automatically to epic when I open my project is there any way to permanently set Scalability so even when I package my game it remains same

pallid gorge
#

Does anybody know what would be the best container to hold multiple types of data, namely an animation and several ints/floats that can be easily accessed by other blueprints? I was initially trying to use structs but I couldn't find any way to define them outside the scope of the blueprint that I want to reference them in

#

If it helps I'm ultimately trying to build a combo system where the player can choose which attacks they do and in which order which is why I don't want to just define it all as a default chain within the blueprint

spark steppe
#

DataAsset

pallid gorge
spark steppe
#

you use the normal DataAsset class as base

pallid gorge
#

That's what I selected and it gave me this

compact hornet
#

Is there an easy way to check for multiple gameplay tags at once? Feels like you should be able to click multiple boxes here but thats not possible right?

#

maybe I stumbled upon it

trim matrix
hushed topaz
#

Hey, trying to get the cheat manager working in my Dedicated Server Project. It won’t seem to work.

Steps:

  • I have sub-classed from the standard Cheat Manager
  • Created a custom function with test strings for successful fire
  • Enabled Exec. so that the function can be called from console
  • Added this custom cheat class to the cheat manager in the active PlayerController
  • PIE and attempt to call function via console command
  • Error, command not recognised (but it appears in the drop down)

Any idea why? Do I need to set something up on the server? Do I need to enable cheats anywhere? Just trying to get it working in Editor first.

tidal tendon
#

You can use event tick for things like camera shake etc where you always need a check.

rotund barn
#

oh okay, thanks

twin jacinth
twin jacinth
silk bay
#

What's the best way to make a beam weapon? Like a solid beam from barrel to target. Would I still use projectiles for the damage, or some other method?

hushed topaz
barren tangle
#

hi, if i want to move instance 0 and instance 2 and instance 4 and instance 6... i have to call the last function each time?

#

is there a way to set the instances that i want to move? and do it in 1 call. if need them to all do the same movement at the same time

twin jacinth
hushed topaz
twin jacinth
#

tried to prevent the thumbnail and it showed up anyway...

hushed topaz
#

Watching the video, not exactly sure what timestamp would help? Doesn't look like this is using the cheat manager at all. Considering it doesn't work custom BP either, would this not be a mis-setup of the cheat manager?

twin jacinth
#

Like I said it's probably a dodgy way of implementing it. Let me do a little research and see what I can find

lofty rapids
twin jacinth
#

Literally just the exec should work...

hushed topaz
twin jacinth
#

This is giving me ptsd of the spaghetti for my RPCs

twin jacinth
barren tangle
#

is there a way to make object move at the exact same time?

#

here we can see i have a delay

hushed topaz
twin jacinth
hushed topaz
#

No, it says command not recognised

#

But it recognises that it is a command to call

twin jacinth
#

Now that's interesting

lofty rapids
barren tangle
#

they don't move at the same time. but it's normal i use a lerp on each of them in a for each loop, so it's 1 after 1

twin jacinth
barren tangle
#

i'm moving them on the Z axis only

#

up and down movement

lofty rapids
#

so it's "normal" you figured a different way ?

barren tangle
#

no 'im asking if there is a good way to achieve that?

#

because for me a loop is not a good way to achieve that

#

it's instances of an Hierachical Instanced Static Mesh

lofty rapids
#

idk how performant it is or anything about instanced meshes, but could you have an interp on tick where you set a variable and it moves to it. You would then loop through and set the z, it would move to it. Just an idea could be way off

barren tangle
#

but that would mean that all my instance are able to listen to the variable. and it looks it's not the case (maybe an advance feature?)

lofty rapids
#

i mean one variable for each, or perhaps one for all ig

#

but i was saying have a z that it interps to

#

so then you set the z and it moves to it

#

if you loop through and set the z's, they might go a bit closer together

barren tangle
lofty rapids
#

right but like you said you lerp which is causing a problem ?

hushed topaz
lofty rapids
# barren tangle that's what i'm doing now

well if your looping and lerping, i'm saying on tick have it interp to the location, and setting the z will make it goto the z smoothly, so by the time the loop is over all z's are set, and they will move

#

it's an idea instead of how you are doing it, don't know how performant that is, a lot of ticks

twin jacinth
hushed topaz
#

erughhh

#

Back to plan A I think... Gonna get some Tomato sauce and make some Spaghetti 🍝

hushed topaz
twin jacinth
cursive wigeon
#

Hey can anyone help me figure out what I need to look into to make a system where players can choose an option from a dropdown menu a different pattern? Think of like picking a wallpaper for an in game wall like in sims. Google is giving me ntohing atm.

lofty rapids
#

i think it should be easy as just set material ?

cursive wigeon
#

So like on clicked, set material on a ui button

#

Nevwr done anything like this before so idk

#

I imagine its simple but dk where to start

#

Is there like a set texture from an array of tectures kinda thing I can put in a dropdown menu

#

Like a switch in 1 master mat?

languid hemlock
#

Uniform Grid Panel is not valid if i dont add it to screen before calling reference

scenic ember
#

Hi, can anyone tell me what this error means ? I'm pretty new to this so any help would be very appreciated.

lofty rapids
#

for instance a variable not set, or a cast failed and your trying to access a value from the bp

scenic ember
lofty rapids
#

CombatComponent is empty, somethings wrong with the variable

scenic ember
tame wadi
#

Hello everyone, I have a question. I'm not sure if you can help me because it's related to Houdini and Houdini Engine. But mainly, I'm not very comfortable with Unreal Engine's blueprint.

I have an HDA that I imported into Unreal Engine. This HDA has a button (mapdownloadButton), and I would like, for now, with a blueprint, that when I press this button, a phrase appears in the Unreal logs. So I created a blueprint, added a HoudiniAssetComponent, selected my HDA in the details tab, and added an OnClicked event to attach my Print. However, for now, no matter which button I press, nothing prints. Additionally, I would like to specify that it's indeed the mapdownloadButton that triggers the message display.

Perhaps I'm searching incorrectly at the moment, but I can't find many resources on this topic.

scenic ember
signal bane
#

I understand Material-Instances can be saved as assets and used, swapping some parameters. Is there a way to do that with Static-Meshes as well? In the foliage editor, I can override my material (different leaf colors), but I can't add multiple of the same static mesh into the foliage editor. Any ideas or better way to accomplish this? (I still want to keep the same static mesh, for performance reasons)

signal bane
# scenic ember

Looks like your CombatComponentReference is invalid, so do an IsValid check before accessing it (looks like you are). Or within the Component, the BattleBegin function has an invalid reference

manic vessel
#

Im attaching a weapon actor to a player hand bone with a relative transfrom so the weapon is grabbed in the correct place. same with picked up weapon attachments, But I want to do a method where Im directly attatching the player hand to the attachments on the weapon using the same relative transform , So I tried to just attatch the hand to an attachment using snap to and then setting the relative transfrom of the attatched hand . But this is where I keep failing . does anyone have any advice

scenic ember
signal bane
#

also you can set a breakpoint on MP Max, and look at the values while the game is running+paused

scenic ember
#

Thanks for helping by the way 😄 @signal bane

signal bane
#

Npnp, Is your row named an integer? I see "UnitLevel" is being converted to a row name

#

also you aren't connecting Out Row--->Base Unit Stats lol

scenic ember
scenic ember
#

I was following a tutorial and I think that it was basically an integer for the unit, and I was supposed to convert it to a string?

signal bane
#

Give me a screenshot of your table, and what is the value of "UnitLevel"

scenic ember
signal bane
#

Ok, that looks fine then. You see how the integer is looking up the row name of "1".

#

If you put a breakpoint on the GetDataTableRow, can you see the values being pulled?

scenic ember
#

actually nvm

#

its 0 I'm actually dumb

#

🤦‍♂️

signal bane
#

hehehehehe

scenic ember
#

Man, visual scripting is hard

signal bane
#

gotta use breakpoints to look at values more

#

gets easier over time

scenic ember
#

it works 😄

signal bane
#

nice

scenic ember
#

Thanks to you my A's are not gone

#

👍

spring osprey
#

Hi, can someone help find a way to make my store buy quantity/ item id join/work with my player inventory?

scenic ember
#

Again, thanks for the help @signal bane

signal bane
#

I think learning both is the way. You can't do everything with only C++. Sure np. Also I recommend this video if you like C++: https://www.youtube.com/watch?v=VMZftEVDuCE

It's not an either/or decision. Learn what makes C++ and Blueprints different, what they have in common, and how to use them together effectively. We'll also learn a thing or two about performance optimization and some basic software design concepts.

Read the article version: http://awforsythe.com/unreal/blueprints_vs_cpp/

00:00 - Introduction...

▶ Play video
#

You can do most things in blueprint though imo

dusky cobalt
#

What would be the best way to make a projectile (arrow), that will ignore everything (colision and other actors), but the target it goes to?
Currently I have projectile that is beeing targeted, it's flying to the target, and it doesn't collide if the unit is ally, but at the same time it does collide with other ''arrow/ball" when I throw it again. The question is, what. in the simpliest way to make it, so if there is set target on projectile/arrow, it will ignore EVERYTHING, but not the target and it will hit it no matter what? On the screen you can see, ball is blocked by ''ally'', but when next ball is coming, it will explode (doesn't deal dmg because it collides with itself. It works with the ''enemy'', as it will hit it and dmg and destroy itself, but I have hard time thinking of making it more simple which is basically, ignore all, but target. Or will it actually be more complicated than I think?

hollow lagoon
#

Is it possible to trigger an event when a player leaves or enters any trigger box ? not just one specific one ?

tight pollen
#

i set Don't Spawn If Still Colliding, but it spawn

tight pollen
# tight pollen

and I see how an object with physics turned on overlapping another static object

#

how can i fix it?

hollow lagoon
rose crest
#

you still use collide

rose crest
hollow lagoon
#

could you explain in terms of nodes to use ?

rose crest
#

it's not really about nodes, Your character need collision sphere or anything to dectect overlaps, then just get overlaped actor, check if it's proper class or have interface and use interface message to trigger event on all actors of class/with interface

#

or other way around, have box detect player and send message to all other boxes

hollow lagoon
#

hmm maybe I'm not approaching what I'm trying to do the right way

rose crest
#

there aren't many nodes used, just get actors with interface/of class and message. From event side just implement event from interface

#

what do you want to do?

hollow lagoon
# rose crest what do you want to do?

basically I'm trying to tell the player when they're approaching the world border, it's easy enough with one trigger box, just show a widget saying "close to world border" when in the trigger box, and remove it when outside of it

#

the problem is when I have several overlapping trigger boxes

#

(since I need 5 to cover the shape of my map)

#

on the overlapping triggerboxes it's just getting confused

#

i.e creating multiple instances of that same widget

#

and not removing it when stepping out of the trigger box

#

sorry, I hope I'm explaining this well

hushed pewter
#

you could have the player see if they're overlapping another "World border triggerbox" when leaving one of the overlaps.
Using GetOverlappingActors with those trigger boxes as a class filter.

tight pollen
rose crest
signal bane
#

I wanted to have 5 varations, so I would like to keep the same mesh for instance purposes

rose crest
#

and use the same box multiple times, even't will work for every instance

hollow lagoon
rose crest
# tight pollen just mesh

collision preset probably, try custom, block all for everything and check if mesh have collision at all

rose crest
#

5$ xD

#

in folliage painter, paint whatever you want. then Save instance

#

then you can add same mesh again and overide material

dusky cobalt
#

Guys, I need small tip! I almost made it work. Right now, the projectile (ball), is only exploding when it's colliding exactly with the target that was set. The problem is, that when it's other actor in the way, projectile will just stop on it (since it's not the target).
The code so far looks like this.

Before I check maybe if I used get overlapping actors would work better here, I wanted to ask you for hints.

rose crest
#

are other object actors or meshes on map?

dusky cobalt
signal bane
rose crest
#

np

rose crest
dusky cobalt
rose crest
#

Ok, that confused me because you said it stops on others. So how should it behave with others?

dusky cobalt
#

It should ignore everything

#

and go straight to target

#

like auto aimed bullet let's say

rose crest
#

Maybe create new collision preset and apply it to target

#

And set ball to ignore everything but that preset

dusky cobalt
#

I will try, good idea

barren tangle
#

Hello, We can't put a break point inside a Timer by Event ??

proud sentinel
#

what does component activation do, and if i bind to its event when does it activate in relation to constructor and begin play?

barren tangle
#

i know i'm there because my actor move, but it doesn't stop

rose crest
#

while or for loop with break?

#

and make timer as variable, and invalidate it then you finish

barren tangle
#

the timer will never finish here, but the fact is that i would like to see what i have inside my calculted index

#

but i can't because the breakpoint are not reached

grim sand
#

Alright time to disect another poorly documented node in BP. What does the Set Show Mouse Cursor node actually do in the player controller beside turning the mouse visible.

I notice that if I use this node, and click with left/right mouse button, I lose control over my pawn. Why is this?

rose crest
#

Then invalidate timer when it completes

#

Maybe I don't get what you want to achieve

sand lark
#

Beginner to Blueprints in Unreal and Programming in general. I'm trying to set up a Reload timer that shows up on the Player Hud. I have a reference to the "reloadSpeed" float variable, and "reloadMaxSpeed" float variable. At the start of the game I set my reloadSpeed float to reloadMax float, and have a boolean "canReload" that looks if the Player's Current Ammo is "not equal" to their Max Ammo, and then lets them reload if that is true, it then sets their Current Ammo to their Max Ammo.

That's working well.

However, it's hard for the player to know how long they have until their next reload, and I want that to be a variable that changes if the player picks up a powerup that decreases the time it takes to reload their weapon. I'd like to have it where their reloadSpeed float needs to equal the reloadMaxSpeed value before the canReload boolean changes to true.

My thought was to use a Slider in the WBP_Hud that I created but I cannot for the life of me figure out how to use Delta Time with a Float properly, or if that is how you even do that. Any tips/suggestions for nodes to use?

rose crest
#

Do you have input set to game only or game and menu?

grim sand
rose crest
rose crest
sand lark
#

I'll look at the timeline node, thanks!

grim sand
hollow lagoon
#

Hello again ! Is it possible to edit a blueprint in the level itself ?

rose crest
#

Edit level blueprint

spring osprey
#

why if I copied everything (ctrl+c-ctrl v) the second one doesn't work?

hollow lagoon
barren tangle
hollow lagoon
rose crest
#

In main editor window, not blueprint, there's icon on top with blueprint, click and find it there..I'm on phone and can't make shot

lofty rapids
rose crest
dusky cobalt
tight pollen
#

how to check which side of the door the AI ​​is on?

#

for the player I do it this way

rose crest
grim sand
# barren tangle mmm i don't understand

Just to make this visual for you. Take a look at this screenshot.

When we run the for each loop with break macro, we check each loop if something is true about the array element we are inspecting. If it is, we can connect the execution line to the Break input to stop the for each loop from continuing its functionality.

tight pollen
rose crest
#

Arrow component to door actor

tight pollen
#

ok, but how is this going to help me?

hollow lagoon
rose crest
#

Nah, it's one actor

#

Make 2 actors with 1 cube

hollow lagoon
#

cheers ! Ill do that

rose crest
#

Not make,place..if it's the same.functionality

grim sand
manic vessel
#

If I position an actor in a character hand and get the relative tranform , How Could I also use that transfrom the other way around and attatch the hand the the actor with the same relative transfrom

#

everthing I have tried has failed to give proper results

rose crest
#

Wouldn't it involve procedural animation?

warm oriole
#

Considering that #game-features-system is being archived I wanted to ask here:

What kinds of features/content should be made within the GFS vs the normal content folder? For example, let's say I wanted to have an open world game with progression based events (ie. only after X boss was defeated). It seems like GFS would be a great way to do this as you could simple enable an event after a specified progress point and have it spawn the event as needed and add the respective enemies to some world enemy spawner.

This makes sense, but I'm wondering if this logic would also apply to a player's combat system. Assuming you are using GAS as well, would it make sense to have the player's core combat (ie. melee attacks) be built around GFS and added to the player, even if they are never removed? For multiplayer games, it'd make sense to use GFS for combat as your player could have many states, but in an RPG it might not.

Hoping for some clarification here and confirmation that my thinking is correct.

hollow lagoon
rose crest
tulip anvil
modest monolith
#

How to make "Joins after seconds" go unhidden after I check the box? Is there some sort of "On checked" event I can use?

rose crest
#

Bool

barren tangle
#

when im talking about the breakpoint it's thata

grim sand
rose crest
barren tangle
#

where come that break lol

grim sand
#

Right, you are talking about a debugging breakpoint

rose crest
#

XD

faint pasture
rose crest
#

Select instance at top to monitor it

faint pasture
#

what would a reload timer of 0.5s mean?

barren tangle
#

so the normal node doesn't allow the breakpoint?

grim sand
# barren tangle where come that break lol

That happens during runtime, if your code flow runs into the ForLoop. It will pause runtime and navigate to the node that triggered the breakpoint. This happens automatically as far as I know.

#

And if it isn't triggering, then it means your code flow isn't reaching that node. Which means to enable breakpoints earlier in your flow until you find the problem

spring osprey
barren tangle
#

ok, because i was sure i'm into the node beacause my actor move, but i was not stop

tulip anvil
tulip anvil
spring osprey
rose crest
#

Why?

faint pasture
tulip anvil
#

you need to call both separately

faint pasture
#

Do 1 line trace and do 2 interface calls on the hit thing, if that's really what you're after

#

Hit the thing -> tell it Interact -> tell it Consume

#

Although 2 interfaces like this is really a code smell.

#

What is meant to be the difference between them?

spring osprey
#

What I want to do is make one for "interact" and another for "consume"

faint pasture
spring osprey
#

nope

#

different inputs

faint pasture
#

ok then do that

tulip anvil
#

have both inputs trigger the same code

faint pasture
#

add a 2nd input that calls the 2nd event

manic vessel
#

The object is attatched to the hand bone & I have a ( relative transfrom ) how can I get the opposite of this transfrom if I wanted to instead attatch the hand to the object?

rose crest
#

Then get target from line trace and store it. If you input make it behave accordingly

faint pasture
#

What is the gameplay purpose here? What are you interacting with, and what are you consuming?

#

Why doesn't interaction with a consumable just consume it

tulip anvil
faint pasture
#

and what does interaction with the thing do?

spring osprey
#

one button is for putting the item in the inventory and the other to consume it

faint pasture
#

ok

#

that makes sense

#

I'd make a single interface and probably just give it 2 functions, ShortInteract and LongInteract. Do a lot of things have this sort of mechanic?

#

like weapons, is it pick up / equip?

dusk yew
#

Hello guys, a question when I stop owning a character to own another, is the first character left without a controller or is it taken over by the AIController? I want to make it possible to control a PET but when it is not controlled it will follow me

rose crest
spring osprey
rose crest
#

And when you end trace make var empty

#

There are multiple ways to do it. One interface needed really

spring osprey
#

and how can I do that? I am new with UE 💀

rose crest
#

Does target have event assigned for consume?

spring osprey
#

interact works fine but when I duplicated it to "consume" it just doesn't work

rose crest
faint pasture
#

Do you have a 2nd input?

spring osprey
#

enhanced input? yes

rose crest
#

Input action

spring osprey
#

yes

rose crest
#

So it should print Hello when you press it, what about other side. Does it print when called by message?

#

And put debug breakpoint on consume message. See if it have proper values

spring osprey
#

the two print its just that the line trace just doesn't work in the consume part

barren tangle
#

need help. I write that.

#

Column and roaws both = 5

#

i expect to have 5 print betwen 0 and 35

#

but i have only 1 print, value between 36 ad 41

#

lol

rose crest
#

Do you print I loop body?

barren tangle
#

yes

spring osprey
#

the one with balls is the one that works (interact)

barren tangle
#

and i need some rest for today 😄

rose crest
barren tangle
#

no, it's just after a timeline

dark drum
barren tangle
#

my timer = 3 seconds and my timeline = 3 sec as well

#

and i'm connected to the Play froms start

#

so i assume it's restart before finishing the timeline

#

but why the value will be between 36 and 41..

#

i give up

rose crest
#

It prints last index

#

5*6+ from 0 to 5 is 36-41

fierce timber
#

Hey is there a way in Common UI to Display Actions in Action Bar without define the Key on a Button? Because at the current state i have to move the button out of the viewport so that its displayed in the ActionBar without showing the Button

barren tangle
#

index 1 doesn't start to 0

#

yeah yeah

#

i'm tired

#

best things to do, take a break for today 😄

#

let's go play Solo Leveling

rose crest
#

Take a nap

barren tangle
rose crest
#

THE nap

barren tangle
#

and i had in mind that each loop will create it's own timeline lol 😄

#

with the dark side of the force it was possible

modest monolith
#

I've put that I can change the float variable of a blueprint via widget.. but when I start the game that variable is not changed.. why ?? print string works correctly

elder pewter
#

what's the idiomatic way to test out different versions of a blueprint? for example, if I want to try creating a version of my blueprint actor (placed in a level) where a single node is changed, but still be able to revert back to the original, is there a way to do that conveniently? I assume I can just undo and redo my changes back and forth, but that seems inefficient and potentially destructive if something goes wrong

rose crest
modest monolith
spark steppe
modest monolith
#

Why my variable value doesn't change?

lofty rapids
modest monolith
lofty rapids
#

did you try to make sure what was comming out of get value is correct ?

rose crest
#

you get actor but need eithert to cast of message

#

you need to specify which actor

lofty rapids
#

Also is there only one of those actor in there ?

rose crest
#

"that" exacly

#

even if its one it will go to void

#

use interface and pass float with message

modest monolith
modest monolith
rose crest
#

if you get all actors of class maybe

lofty rapids
#

i would look at that get value, make sure it's what your looking for

idle vigil
#

what do you think is the best naming convention for blueprint interfaces? I considered using BPIF_ or IF?

rose crest
#

there's none, most of people use BPI_ xxx I think, whatever suits you and you stay with it

idle vigil
#

i like bpi

gaunt monolith
#

Hello everyone! Trying my first ever project on UE5, can i ask here for help with blueprints that i can't find online?

tulip anvil
gaunt monolith
#

Well i've been trying to follow this guide to create footsteps sound for my first person character with no mesh/animations https://dev.epicgames.com/community/learning/recommended-community-tutorial/WzJ/creating-first-person-footfalls-with-metasounds But i think it's outdated. I can make everything work except the footsteps sound immediatly start as soon as i start the game and only stop if i both jump and move forward at the same time. Can't find solutions online, i'll send some screenshots of my code, let me know anyone can help me figure out what's wrong.

dreamy mountain
#

hey, so im trying to make a buyable door using a blueprint, but i dont know how to do it basically

#

i have this, but the widget appears even outside of the box

rose crest
#

You cast to bp_player, yet dont follow with it

dawn gazelle
# gaunt monolith Well i've been trying to follow this guide to create footsteps sound for my firs...

Footsteps are usually something you'd build into notifies in your animation rather than having the game logic itself trigger whether a footstep sound should play.

Let's look at your logic though:
Your movement input's "Triggered" event fires every single frame, checks if the player has velocity and is not falling, and if so, enters your DoOnce node which then calls to play the audio.
So only if your player has 0 velocity or is falling will your branch ever go to false to stop it.

dreamy mountain
rose crest
#

i understand its door blueprint?

dreamy mountain
#

yep

rose crest
#

it must be, change input action for event and call that event when interacting

dawn gazelle
#

A better way however, is to pass an input event manually from the player controller or its possessed pawn and call a function on the actor, just so you're not having to enable and disable input on a whole bunch of actors.

dreamy mountain
#

im confused, sort of, hang on

#

lemme try something

gaunt monolith
dawn gazelle
#

It's also not great to use comparisons with floats to verify if it is 0 or not, as 0 in a float could be getting stored at 0.000000000004 which isn't 0.

#

A better check may be velocity -> legnth > 0.0 && movement mode == walking (or whatever the default ground movement is, I can't remember)

gaunt monolith
dawn gazelle
elder pewter
#

if i have some tick logic which manipulates some variables across a series of nodes, and some input action logic manipulating the same variables, can there be a race condition between the two? or will the input stuff wait until the current tick finishes and/or vice versa?
(i guess this question isn't really blueprint specific, unless i'm missing something)

gaunt monolith
dreamy mountain
rose crest
#

start with custom event and call it when character overlaps it

#

you will have to cast to bp_door or how you call it, and from cast pull event name

dreamy mountain
#

ohhh

#

ok

dawn gazelle
rose crest
#

if you make it work try practice with interfaces, they work better in larger scale and are more flexible

dreamy mountain
#

never heard of interfaces

rose crest
#

cast is like "send to one specific" and interface is "send to many/specific"

gaunt monolith
thin panther
#

No. Interface is still sending to a specific instance

#

You just don't care about it's base class, you only care if it implements a behaviour

#

Sending to many would be a dispatcher

rose crest
#

get all actors with interface>message

thin panther
#

No

#

Why

#

Would you do that

#

That's just reinventing a dispatcher but worse

dawn gazelle
#

Casts are checking if the object fed in of a specific class and if so, allows you to access the speciifc functions or variables available to that class.
An interface is a generic means of communicating with a variety of objects that may not share any common base class. An interface must be implemented in any class that you want to utilize it, otherwise default return values are returned from the interface or no functionality executed by the object that you've passed as the target for the interface call.

#

Both require an valid object passed in for them to work.

thin panther
#

An interface is when you want class agnostic behaviour or an abstraction layer to prevent things from relying on each other.

For instance, if it shares behaviour over a number of base classes, or you might use an interface for say, opening a web browser, because you don't care on the specific implementation, you just care if it can do the thing, and then you're not coupling yourself to such a specific thing.

#

A dispatcher is for communicating with many things. It's like broadcasting over radio that something happened, and anything that cares can tune in and listen for the message

dreamy mountain
#

PIE: Error: Blueprint Runtime Error: "Accessed None trying to read property Door". Node: Buy Graph: EventGraph Function: Execute Ubergraph Player BP Blueprint: Player_BP
idk what id do here

dawn gazelle
#

Accessed None == Your variable is empty.

dreamy mountain
#

ah

#

i see the issue

dawn gazelle
#

You've created a variable of type "Door" but haven't set an instance of a specific door in that variable.

dreamy mountain
dawn gazelle
#

Doors don't technically exist until run time.

dreamy mountain
#

fixed it, but i also have this new issue

#

did that at the end to fix it, but when i start the game, it shows the widget text as if i was in the collision box, which is weird

rose crest
dreamy mountain
#

see what i mean? no where near the door (white box in distance) yet text is on screen until i hit start

#

only thing that references the wbp is the door

thin panther
#

What can be good for things like that is something like a sphere trace

#

Or even a multi sphere trace if you're so inclined

rose crest
#

what I meant was using array as target easily, my bad, sry

thin panther
#

Ah no, that's a perfectly valid usecase :P

rose crest
#

uff, saved xD

sharp steppe
#

If a boolean is false, is there a way (or a node) to find the name of that boolean variable?

dreamy mountain
#

wdym

#

if you know the variable, you can use a branch node and do things based on if its true or false if thats what you mean, might be me misreading because im tired but

sharp steppe
#

If I am checking hundreds of booleans, and if one is false, I want to display the name of the false variable

stoic ledge
#

you want the bools variable name as an output to print screen?

sharp steppe
#

Yes

#

Using blueprint

dawn gazelle
dreamy mountain
#

i have a weapon wallbuy and a buyable door, both use the same interact wbp; how would i change the text depending on the blueprint its created by?

dawn gazelle
#

Otherwise, you'd just have the implementation do whatever you want on each actor.

dreamy mountain
#

there wont be an overlap in them both being available at once

#

i just need to change the text depending on which blueprint created the widget

sharp steppe
dawn gazelle
dreamy mountain
#

where would i set the value though

dawn gazelle
#

In the widget

dreamy mountain
sharp sigil
#

How come my static mesh components are returning None when I try to get their attachment?

#

Also their relative location returns world location

dawn gazelle
# dreamy mountain

This return value is a reference to the widget that was created.
You can use that to set properties or call functions within that specific instance of the widget.

dreamy mountain
#

ahhh ok

dawn gazelle
#

If you wanna get really fancy, you can set properties as "Expose on Spawn" and then on the create node it'll actually give you an input where you can set the value to whatever you want.

sharp sigil
#

Even this doesn't work >.>

rugged merlin
#

I'm not sure whether this question has been asked in here, but is there a way to get the direction between two vectors in degrees? I want to compare a velocity from a previous tick with the current velocity and see if their directions are more than 90 degrees apart

#

I know about Get Unit Direction, but that just returns the difference between the vectors (assuming I'm understanding it correctly)

#

Or would there be a way I can use Get Unit Direction to do this?

spring osprey
#

Hi, I want to make a consume interaction(add more battery when picking X object) for my flashlight like the interact one I have but don't know how to make it, any help?

rain wraith
#

Is there no BP node to Set Bone Transform for a Skinned Mesh Component? There is a get node for the Skinned Mesh Component bones, but none for set; I can only find Set Bone Transform nodes in BP for Control Rig and for Poseable Mesh Component which arent compatible with Skinned Mesh Components

dawn gazelle
lunar sleet
rain wraith
lunar sleet
rain wraith
lunar sleet
#

Yeah people online saying you need to use poseable mesh ig

rain wraith
#

Thank you though

rugged merlin
queen dagger
#

ok so im at the point where im trying my hand at ai again and am running into issues cus im using paper 2d

#

can you use blueprints in an AIcontroller bp to pass inputs into a character?

#

or do you have to use bp in the character itself to identify where the enemy is and how to move

#

for instance can you write in the ai controller if enemy is to right add action value of -1 for input to move left

ripe comet
#

found a really nice custom dungeon generator plugin, got it working. now just to implement it into the main game

teal tendon
#

Hey guys I was using the sun position calculator plugin and was using sunrise time, sunset time and solar noon time to differentiate between morning, afternoon, evening and night but the problem is the sunrise time is coming in negative any idea why is this happening and how do I solve this issue

lunar sleet
#

If it’s not at all what you want it to be, might need to read the plugin’s docs or contact its creator

teal tendon
#

ok

barren tangle
#

Hi, I would like to move an array of actor with the same movement using the same timeline. is it possible?

lunar sleet
#

A table of actor?

barren tangle
#

a array of instanced static mesh

lunar sleet
#

Are you trying to say an array of actors ?

barren tangle
rugged merlin
#

I'm pretty sure you can do that, right?

lunar sleet
#

Don’t see why not

#

Just take the track or the value of the lerp, and for each loop on the array

barren tangle
#

how could i achieve that because that?

#

because the timeline will restart if i use the same inside the loop

lunar sleet
#

The timeline wouldn’t be in the loop

barren tangle
#

for the moment it's like that

lunar sleet
#

Read what I said initially

rugged merlin
barren tangle
#

and i can't define the timeline to be specific to my instance

lunar sleet
#

And bear in mind that a for loop needs to run in one tick, you cannot have latent actions in it

lunar sleet
#

Timeline first, then the for loop

barren tangle
#

if i do timeline first. the forLoop will be fast enough to move all of them at the same time?

lunar sleet
#

I guess you did actually mean table. Weird but 🤷‍♂️

barren tangle
#

ok, i will try

rugged merlin
#

I found a forum post that says the same thing neoexcidious was saying

#

Put the timeling before the loop

#

The update pin on the timeline should be connected to the loop