#blueprint

402296 messages Β· Page 858 of 403

slow pewter
#

Hey guys any Way to Refresh all Nodes on all Selected Bps?.., or Can i only using it for Opend Bp's?

odd ember
#

probably something you can google either how

slow pewter
#

Yes for the Opend One

#

but not for More than this one

gentle urchin
#

this happens if your second char is not child of the same baseclass provided as type in the variable decleration

odd ember
#

;

maiden wadi
#

|

slow pewter
slow pewter
lusty rune
#

hi
My game have multiplayer and health system, so you can die. You can connect to a "host" player, but the "host" cant die

trim matrix
#

why i cant put nav mesh bounds higher than 48000 units z?

lusty rune
#

overall the host cant die the others can

odd ember
lusty rune
#

i dont know what do you mean

#

thats the multi system

#

and the host cant be killed

odd ember
#

I don't know what a multi system is

#

I just told you how you can make the logic work

gentle urchin
#

You can check parent classes up in the right corner

#

So you want a common parent class that has posess functionality in this case

grim peak
gentle urchin
#

Thirdpersonchar has Character as base class,

pulsar valley
#

Hey guys, newbie question: suppose I have the reference of a Scene Component at runtime. How can I add a new component to it, as a child?

gentle urchin
earnest tangle
pulsar valley
#

Yeah that is actually my scenario, to my surprise I can't find an easy way to create new components and add them to other components outside Actors...

earnest tangle
#

Is there some particular reason you need to add components on the fly like that?

pulsar valley
#

Yes, but it's kinda long to explain. It's for a dynamic attachment/detachment system

#

I just noticed that I might get away with it using a "Construct Object From Class" node along with an "AttachComponentToComponent" node

earnest tangle
#

iirc that won't let you construct components for some reason :P

#

There's two ways you could possibly work around this in blueprints

  1. Attach actors instead of components
  2. In the actor where you're attaching things into, give it a function which creates the component you need - this way you can set the component creation nodes into the actor, where you should be able to use them
#

in C++ it's fairly easy tho - you just NewObject<WhateverComponent>(OwnerActor) and RegisterComponent() and/or maybe one more call if it's needs to be attached to something specific

pulsar valley
#

The second approach might be right for me πŸ€”

#

Yeah maybe I can also add a C++ function that does it actually, good idea

#

Thanks for the suggestions! Back to work! πŸ˜„

earnest tangle
#

πŸ‘

wicked magnet
#

Is there a print command in Blueprints that lets you use one node to do something that in code would look like
print("Found variable" + [varname] + "and current speed is " [speed variable']

I generally just dump the variable info into print like here, or use multiple Print nodes, but have been looking for a more efficient way

earnest tangle
#

@wicked magnet you can append strings, that's pretty much it.. or you can use the format text node which supports foo {placeholder} bar and produces pins for the placeholders

swift sphinx
#

when i press (X) i want to lock/disable character movement but make them able to move the camera with mouse to look around and when i press X again enable movement, how?

wicked magnet
#

Ah, thanks to both of you. I have seen append, but Format Text is closer to what I was looking for!

earnest tangle
#

Yeah format text is really handy, and since it produces Text values it works with localization too :)

maiden wadi
#

I was about to mention that. πŸ˜„

maiden wadi
haughty temple
#

^

#

was about to make a boolean version as well to show how id perfer it

maiden wadi
#

Yeah, pretty much what Jojo posted, but switch the flipflop for a "GetMovementMode == Walking, then disable, else enable".

haughty temple
swift sphinx
#

ty for help πŸ™‚ got it working with a bool

#

but im facing one problem

#

i want to be able to rotate camera WITHOUT moving the character mesh but how :S i read on google using "Root Component -> set Absolute" :S but that did not work

maiden wadi
#

Sounds like you're just looking to disable the character's use of Yaw for control rotation.

swift sphinx
#

this in the "springarm"?

maiden wadi
#

Nah. Character itself. You still want the camera to use control rotation.

#

Something along these lines I imagine.

#

Not in a project capable of testing it at the moment.

haughty temple
#

yeap thatll work

swift sphinx
#

yea ty for that πŸ˜„

#

hmmm can i stop the animation in BP?

icy dragon
swift sphinx
#

if i run and then press X the character stops but animation "run" keeps on going

white elbow
#

Does BeginPlay event refer to simulation start or when an object gets spawned?

icy dragon
swift sphinx
#

so i cant stop the animation via the character bp?

icy dragon
small halo
#

begin overlap is for when ur out the box and then enter it

#

is there a node for if u spawn in the box

keen dune
#

I'd like to make a BP that would spawn an actor in random (10) location, after being touched by the player. Collisions are on point, cause my actor is disappearing when in concact within a player, but I don't know how to set those spawn locations... i cannot put TargetPoints into the actor's BP, so what's the other way to do it?

maiden wadi
maiden wadi
small halo
#

do i set it to true on begin play?

maiden wadi
#

Should probably be a class default

small halo
#

this?

keen dune
maiden wadi
#

As in TargetPoints just dropped into level?

keen dune
#

yup

maiden wadi
swift sphinx
#

@icy dragon and then in character BP i cast to animBP and set that bool

sleek wadi
#

Hey all. I am working my way through a tutorial on running a crowd simulation and towards the end it copies the target location to the character under a setting of what looks like Default > Target Location. However, I cannot seem to find the Target Location on my character when following along in 4.27. Would anyone happen to know what became of the Target Location? Thanks!

faint pasture
#

Is it ALWAYS aligned with the control rotation / camera, ALWAYS aligned with movement, or sometimes either?

#

Take Elden Ring for example, the character is always aligned with movement except when locked on and not sprinting.

onyx violet
#

is there a good way to store/keep reference to a list of variables other than just making a lot in a blueprint class? just wondering if there's anything like a variable library

earnest tangle
#

Kinda depends on what sorta variables we're talking about

onyx violet
#

transforms specifically

earnest tangle
#

You can create an array which allows you to save a list of things in a singular variable

onyx violet
#

maps of transforms

#

is it possible to make an array of integer-transform maps?

earnest tangle
#

You can't nest maps into arrays directly, but you can create a struct which contains your map, and make an array of those structs

late cave
#

2D arrays can only be faked with structs, I think 😦

maiden wadi
#

I think that the important question is whether you need this data to change during gameplay or not?

onyx violet
#

no it doesn't have to change, I have a variable that will change but I want to be able to access a list of these integr-transform maps so I can use them to change the variable that is referenced for gameplay

maiden wadi
#

Then you're most likely looking for Data Assets to store it in. You can globally access them from anywhere.

onyx violet
#

ok i'll look into those, thanks

late cave
#

Or a Data Table

maiden wadi
#

I'd probably to a DA just out of the simplicity of not needing FName conversions.

copper steppe
#

So, I've started working with Procedural meshes, I know we can slice them, but how about cutting a shape into a mesh? For example cutting the shape of a gun into the middle of the mesh?

faint pasture
maiden wadi
#

Hard to say. Sounds like you're also wanting users to be able to create them?

faint pasture
#

I'm looking at a custom editor mode but that gets gnarly quick

#

If I could save to a data table or data asset in game then we could just make a map for making them, I could easily whip up all the stuff in game context

#

Like if I could instead of SaveGameToSlot, have a MakeDataAsset or AddDataTableRow, i'd be sitting pretty.

maiden wadi
#

Personally, I'd probably consider saving them by name and making the actor keep a savegame object loaded and reference it for it's data.

#

I'm not sure I'd even bother with the DataAssets or Tables. If you could access all tilemap names you've saved, I imageine it'd be easy to make an editor widget or similar to pick a tilemap to load, and save.

faint pasture
#

The problem is we have to be able to tag them. It's for WFC procedural generation so it's more like "Here's the base map example (Desert, Jungle, Island, etc), here's the subexamples, (TownSmall, Cave, MilitaryBase, ShipYard, etc), and during map generation, we go like "OK we're making Desert map 5, that's a Canyon map filled with small camps and a couple caves, with Desert and Bandit theming. Next level is Island map 1, that's a Jungle Island filled with large camps and a military base, with Jungle and Military theming".

#

the definition of one of the 25 levels is a list of possible tilemaps to use for WFC generation.

#

Could use the names idea tho maybe.

maiden wadi
#

Still fairly easy. I save my game data similarly. I have two SaveGameObjects, one is the actual game data. Has functions and can run through all game assets to collect what it needs from a single call. Another is an indexer. I store savegame names along with other pertinent info like saved time, display name etc. You could easily save the tilemap names along with some other info like tags or FNames.

#

Indexer is basically a SaveGameObject with a single array of data that it is designed to parse through.

faint pasture
#

IDK how savegames are handled in a shipping build, do they go to user data or only new ones?

maiden wadi
#

No different than shipping a data asset I imagine. Though to be fair in this regard, if you manage to write to a data asset from editor, it might be a lot easier to manage from a development standpoint.

faint pasture
#

Thanks for the info, that might be a good stopgap anyway. It'll depend on where it ends up, I'd hate to have someone clear user local data for a game and now half the game is gone lmao.

#

"I deleted the savegame folder and now the game crashes"

maiden wadi
#

Haha, fair enough. πŸ˜„

undone willow
#

what does it mean if my blueprint only works when it has breakpoints on it? πŸ€”

#

I have a function that makes my character stop wallrunning after 2 seconds, and when i put a breakpoint on it, it works perfectly, character jumps off after 2 seconds.
But when the breakpoints are disabled, my character just keeps running for infinity

maiden wadi
#

That's an odd one. Haven't seen that one happen before.

gentle urchin
#

Need to see some code

#

If we were to assist in any way

undone willow
#

the above one is on tick

#

the second is the function, it works when I put a breakpoint on the "right wall jump" function

#

@gentle urchin 😬

gentle urchin
#

May i suggest for the sake of sanity to move it from... tick... to something like jump?

#

Sounds better suited for this

#

Are you sure its the wall jump having an issue btw ? Like if you simply disconnect the timer, does it work then?

#

And what error are you getting

#

If it just keeps on running its because youre stuck in the start timer loop

#

So resetting the timer handle happens without resetting the initial condition for reaching this point

#

Atleast thats my theory^^

undone willow
#

but why does it work with a breakpoint? :0

gentle urchin
#

Whatever condition you got manages to reset

#

Race condition in other words

undone willow
#

oh so basically the condition never has time to be false

gentle urchin
#

Yes along those lines

undone willow
gentle urchin
gentle urchin
#

Just the related branches

#

But really

#

Move it to on jump

#

Solved πŸ€“

undone willow
#

on jump?

gentle urchin
#

Whatever you press to wall run

undone willow
#

but then he will only jump off the wall when i manually jump off the wall?

#

he wallruns when in the air close to a wall 😬

gentle urchin
#

Ah

undone willow
#

a when falling kind of situation

gentle urchin
#

So the trigger for wallrun is on tick

#

Right

#

But your branch

#

Should rely on actually landing

undone willow
#

yea

gentle urchin
#

Before being able to trigger again

#

Timerhandle doesnt ensure landed

undone willow
#

i see

gentle urchin
#

So timer triggers after 2 sec

#

Then he should not be able to wallrun untill he has landed,

#

So i guess isFalling could perhaps be used

mild crystal
#

hi i enable root motion but isnt workinh

#

i play animation but my caracter isnt moving

trim matrix
#

Hi

#

How do you provide inputs when writing an automated functional test?

odd ember
#

BP allows for functional tests?

wicked magnet
#

@faint pasture thanks for your help with my question about controlling multiple players! I was able to execute it today fairly seamlessly, where I can switch between whatever amount of playable characters are setup on a map. What really helped the most was realizing I needed to make the array a Pawn type. Initially I was trying to create an actor variable, unable to possess, and then checked what you wrote and saw you mention needing to use a Pawn variable.

gritty trout
#

Whenever I spawn one of my NPCs on a spawn point actor, the NPC stays floating in the air and the behavior tree never activates

#

If I spawn a regular object actor it will fall to the ground and act normally

thin panther
#

Do you have them autopossessing an ai controller

gritty trout
thin panther
#

No

#

Look in the setup of the actual pawn

#

In the details there should be options for autopossession

gritty trout
#

Oh I see it

thin panther
#

Changed to placed in world or spawned

gritty trout
#

Spawned fixed my problem πŸ‘

thin panther
#

Neato

stuck folio
#

Hey Guys.
Can I listen for an objects destroy event? I need to run a function in my level blueprint when an object is destroyed'

quartz mural
#

Then, just have anything that needs to be aware of the destruction have its own listener on it.

trim matrix
slender idol
#

hey, if I click the value fields of Rotation, the values change randomly! I'm trying to set it to some specific values but every time I click on one field the other 2 values will change without my input. This is happening in a data table.

lament geyser
maiden wadi
slender idol
#

Z value selected

#

y value selected

#

and if I unselect they change again

icy dragon
#

This happens with Control Rig vectors, but the difference is much smaller than that.

maiden wadi
#

This is likely an issue with entering 90 into Pitch.

icy dragon
#

Not sure if that's even because of float imprecisions

maiden wadi
#

Rotators and their surrounding functions do some weird ass shit around 90 and -90 pitch. Generally gimbal locking, but some of their functions really break down.

slender idol
#

is there any work around?

icy dragon
#

Similar thing happens with Control Rig vectors, but the deviation is only in a fraction, much less than that.

maiden wadi
#

That is floating point error. This is more likely the rotator trying to correct itself.

icy dragon
#

If that really boils down to FRotator, then there's probably no workaround, but not to set exactly 90 and -90

#

FRotator is a weird beast to handle, unlike the FVector sibling.

slender idol
#

I mean its just unusable lmao even if I enter some aproximate floating point values near 90 it still jumps to random values.

dawn gazelle
odd ember
maiden wadi
odd ember
#

never figured that UE would have BP functional testing

#

not sure why either

slender idol
#

checking it in game its definitely at the wrong angle

maiden wadi
#

Case. I took your values and printed them in their directional vector.

odd ember
gentle urchin
#

Ohh, cool

#

didnt know it existed!

trim matrix
faint pasture
echo salmon
#

Hello any idea why i get black bars when i try to blend the camera with my target?

echo salmon
#

Of the camera actor ?

faint pasture
#

of whatever camera you're setting the view target to, yes

#

So how do plugins work regarding distributed development? I got a plugin from marketplace and added to engine, what happens on my buddy's computer when he tries to open the project?

#

LE Standard Library to be specific

dawn gazelle
#

Depends if you have the plugin as part of the project files or as part of the engine files I believe.

eternal jolt
#

Quick question - my spline mesh component doesn't follow it's parent when it should be auto-attached, it stays stuck where it is. It's set to moveable. I feel like the fix for this is easy, it's just been a while since I've done spline stuff πŸ˜‚

@faint pasture They need to also have the plugin either in their [Engine fodler]/Plugins/Marketplace directory, or in the [Project]/Plugins directory. Don't do both though, that can cause issues. Should only be in either one or the other (there's no difference functionally)

faint pasture
eternal jolt
#

I prefer project too. But don't copy, do cut/paste. You'll have issues packaging if it's in both

trim matrix
#

so I'm wanting to recreate the same dash of jett from valorant, it gives a dash to the sides can anyone help me?

icy dragon
grand valve
#

I know pure functions are executed once for every Non-Pure node that calls them. But if do something like this, Im just doing the processing part (Calculate Surface Area for Static Mesh) one time right..?

trim matrix
#

the effects and animations I already have ready

#

I just want to do the side dash in first person

grand valve
#

Thank you!

icy dragon
#

@faint pasture can you step in? I'm near sleep to help lol

faint pasture
#

IDK anything about pulling off a dash in BP, havn't got to that stage with our game

eternal jolt
#

Actually nvm on my spline question I think I know the issue lol

icy dragon
#

If it werent night time in my time zone and near sleep, I could've cross check my project for the dash :(

faint pasture
#

You can try turning friction and gravity really low, launching character, waiting a bit, then turning friction and gravity back up

#

that'll be hacky but it'll work. If it's a multiplayer game though, I'm gonna have to stop you right here lmao

#

in MP it's totally a different animal

trim matrix
faint pasture
#

Then yeah i'd do it like i said

icy dragon
#

Ouch, I hope it's not that worse for just replay replication

stuck folio
grand valve
#

@trim matrix something like this should work?

faint pasture
#

Use launch character instead

#

if it's ACharacter

trim matrix
grand valve
#

Why launch? Launch technically changes the movement mode and stuff. An impulse is just a burst of additional speed to the character movement component. Should probably be safe for multiplayer too as long as the event is called on the server.

trim matrix
faint pasture
grand valve
#

yea crank up that DashPower πŸ™‚

trim matrix
#

ok i understand how it works

#

@grand valveThank you very much

#

@grand valvecan i repay you in some way?

grand valve
#

Help someone who needs help in the future πŸ™‚

trim matrix
#

ok i will help

iron raptor
#

Heyo. Anyone know how to get every object in a scene parented to a blueprint like this? Trying to follow a video on how to make randomized level streams, but can't seem to figure this out. The video is not really a tutorial so he doesn't explain anything in detail and I'm very confused. Never programmed before. cryingbastard

The parenting is necessary to get the rooms snapping to each other

#

This is the video: https://youtu.be/bSWu7oTwkZs
He has exactly what we need for our game

Weekly whatever on Wednesday (or whenever lol) when we do what you wanted!

I had a comment on one of the videos asking if we could do an "example of how to do a randomly generate map with premade segments (levels)." and here we go =)

Link for the Source Files - https://github.com/MWadstein/dgaw-LevelStreamingRandom

β–Ά Play video
trim matrix
maiden wadi
#

GetEntranceAnchor and call GetAttachedActors

iron raptor
#

So basically, the "anchor" blueprint is what the other room that generates will snap to.

iron raptor
iron raptor
#

The video explains how it works really well but not so much how to set it up

maiden wadi
#

Not sure. Depends on your EntranceAnchor thing and where you have a reference to it and where you need to get it.

iron raptor
#

Sorry to come in here with such a loaded question, but I'm not sure where else to go

maiden wadi
#

Okay. Start with where you need those references in. Where do you need to array of attached actors?

iron raptor
#

I just want that exact system he has in the vid and I have nooo idea how to set up some of it. I downloaded his project and of course, it's all broken in UE5

maiden wadi
#

Oof. Really do not advise using that for learning.

iron raptor
#

Yeah, I just thought I'd look through the blueprints, it didn't really help me

#

I've deleted it, and started from scratch

maiden wadi
#

UE5 is unstable, and really not useful to anyone who isn't well versed in engine programming to fix some of the instability. I'd really recommend spending some time on 4.27.2 if you are interested in programming.

iron raptor
#

Oh... πŸ˜… We kinda already started and have a semi functioning game. We are both entirely new to programming

#

But randomly placed prefab levels are essential, since this is a roguelike. Like the way Binding of Isaac generates rooms except linear

maiden wadi
#

I wonder if Prefabricator has made it to UE5 yet.

iron raptor
#

Is that a plugin or something?

maiden wadi
#

Yeah. Basically allows you to create preset "prefabs" in the editor and save them and then spawn them at will. It has a bunch of nice randomization functions. Allows creating a fully procedural level with nothing but a single integer change.

iron raptor
#

Oh! I'll look into that and see if it's available. Thanks!

#

nope not for 5 yet

#

As for my initial question. I need everything in the scene to be parented to the entrance anchor. But when I do "add to", it doesn't appear on the list.

floral condor
#

I'm using a blueprint of the base class Object as a handy little NPC task management tool so that they follow daily routines. I'm finding my self needing to use delay nodes a lot and I can't since theyre not available for objects. Should I make them actors? Each NPC might have 1-10 of these objects and there might be up to 25 npcs on the screen at once. Would switching these objects to actors be a big performance hit? If so is there some other way to achieve a delay node in the object class?

faint pasture
#

You can blueprint UObject? TIL

#

I suppose I never tried it

dawn gazelle
faint pasture
#

tasks etc

dawn gazelle
#

or that ^

faint pasture
#

Or if you wanna keep it simple, make some sort of a schedule structure or component

#

there's no reason to need delay nodes, just have some function for "Hey, it's 3:00, what should I be doing?"

#

maybe every ingame minute or hour the AIController looks at the schedule and determines what it wants to do

#

ThingToDo = element from ScheduleArray with closest time to CurrentTime without exceeding CurrentTime

earnest tangle
#

@floral condor you can use delays and such in UObject based actors but you need a C++ baseclass where you override GetWorld - otherwise you'd probably need to make them actors yeah. You can inherit them from AInfo which is meant for invisible "manager" actors

#

(the reason delay and things like spawn actor don't work in UObject based BP's is they need a world, and the default UObject GetWorld function requires you to override it to ensure blueprint based ones get a valid world)

faint pasture
earnest tangle
#

iirc almost nothing, it just hides a bunch of properties from the details panel :D

dawn gazelle
#

yeah it's effectively an actor that doesn't have a transform.

faint pasture
#

how tf

#

isn't transform in AActor? or does AInfo have a different parent

#

or does it override the getters

earnest tangle
#

It just hides the transform from the details panel :P

#
UCLASS(abstract, hidecategories=(Input, Movement, Collision, Rendering, "Utilities|Transformation"), showcategories=("Input|MouseInput", "Input|TouchInput"), MinimalAPI, NotBlueprintable)
#

that's mostly what it does

#

although I do notice it says "NotBlueprintable" so it might not actually even be inheritable in BP's lol

dawn gazelle
#

You can inherit them in blueprints. You just can't make them directly in blueprints.

earnest tangle
#

Ah right

#

yep lol

onyx token
#

if i have a blackboard that contains a value called "Target Actor"

#

And i want that target actor value inside a task

#

how do i do that? rooThink1

#

this can't be it

#

this seems wrong

faint pasture
onyx token
#

wait, so do i name the Key "TargetActor" and it just... works? rooThink1

#

no referencing? No casting? Nothing?

#

is it because the task is getting played inside the blackboard so it knows which one it is?

faint pasture
vast ruin
#

is there some special way to return a reference to a struct from a C++ UFUNCTION to be used with blueprints? I use the UPARAM() tag, when I set a variable in BP to the return value of the UFunction and edit the members it does not update the original struct returned by the UFUNCTION().

onyx token
# faint pasture Something has to set the key but yes.

i can't get it to work rooMadCry
pls halp
I have this value Target Actor. And that is being filled with my player, thirdPersonCharacter.

I know this, because once the AI detects me, it runs towards me using the TargetActor Location as a MoveTo.

Right now i'm doing the "Block" task.

#

and no matter what i set the TargetActor to, even if i call it "asdfasdfasdf" it always spits out "NpcActor" - aka - itself.

faint pasture
#

@onyx token Show how you're setting it

onyx token
#

hang on

#

better resolution

faint pasture
#

@onyx token Is the npc perceiving itself?

faint pasture
onyx token
#

umm not as far as i've set... unless the standard blackboard task of "MoveTo" has like a "NpcActor" for the original location...

onyx token
#

this on the left

#

whatever i name this, even if i name it like the Blackboard key, or asdfasdfasdf it always just spits out "NpcActor"

faint pasture
#

That's the variable name.

onyx token
#

yeah i thought in order to get unreal engine to realize i want the blackboard key - i need to name the blackboard key variable in the task exactly the same

faint pasture
#

Display name of the object will be like classname_number

onyx token
faint pasture
#

Key name is the key...name.

#

A blackboard is just a map/dictionary sorta

#

Key = "TargetActor"
Value = whatever you set it to

onyx token
#

okay... so if i wanna get the blackboard key value into my task, how do i do it?

earnest smelt
#

Hey, im trying to make an animation on my character controller where if the player press F, the camera will rotate 180 degrees on the y axis. Timeline makes it look wonky, ive tried childing a camera actor where ive got a script that swaps the camera controller with the actor (actor wouldnt stay childed, but everything else worked) and im clueless now as to how to solve this problem >.< Ive goot screens and all so if anyone can help me through DM's, that would be much appreciated!!

onyx token
faint pasture
onyx token
#

Object with the base class Actor

earnest smelt
onyx token
faint pasture
faint pasture
onyx token
#

i don't know how to get anything with the task... Like - i can't just blankly do get ai controller because which one am i addressing?

#

if i have 100 Npcs in my game...
and a reference to "self" doesn't exist in "Controlled Actor"

earnest smelt
faint pasture
#

@onyx token I think you're way lost. Each npc has its own copy of the blackboard. Some tasks write to it, others read from it.

onyx token
#

sure

faint pasture
#

Npc writes TargetActor to the blackboard then later can read it for the MoveTo logic

#

Your key when writing it is a name, you should use that same name as the key for reading it

onyx token
#

so which blueprint node takes a key from the blackboard and lets me read it inside the task?
I need the TargetActor to figure out if it's attacking right now so i can react to it

#

I want my Npc to block when my player, or any other attacking.... dude... is hitting

faint pasture
#

Get blackboard value as actor

#

You already have that node you're just plugging some object into it instead of a name

onyx token
#

but it needs a key tho...

faint pasture
#

@onyx tokenHave you tried looking at what that key struct is?

onyx token
#

umm... no, idk what a key struct is rescBlank

faint pasture
#

Do you know what a struct is

onyx token
#

okay so i set it now as a "Blackboard object reference" and when compiling it compiled for about 20 seconds and i thought unreal engine crashed blank1

sadly it didn't give out anything, not even NpcActor

onyx token
faint pasture
#

What exactly are you making, a service, decorator, or task?

#

Have you tried this

onyx token
#

OhIPanda that could be the node i was looking for, lemme try

#

oooh shit that's it! Thanks so much! @faint pasture

#

i would've literally never found this node ever...

faint pasture
#

Blue pins are structs

#

make and break them to see what they are

#

Although "change what you're doing if the target is attacking" should be on the BT level

onyx token
#

well my idea was i'd use a selector - and the "Block" task checks if i'm under attack.

If it's wrong, the selector moves over to the "Attack" task and the NPC attacks

tropic pecan
#

Hey there, I hope this isn't a complicated question, I just don't know. I ask anybody who knows how to send an NPC to anther level? My intension is to make both player character and non player character to another level but I don't know how. I have one inspection but I don't know how to set it up if that's the case.

faint pasture
#

or just save/load them

#

Assuming you already have the framework to save/load the player character and NPC in question, just use that

#

save, load new level, load them

#

We do everything at runtime in our game so literally never call load level ever.

tropic pecan
faint pasture
#

If your game has saving/loading anyway, just leverage that

#

if it must be seamless, then consider the level streaming

tropic pecan
faint pasture
#

If you got that, then moving to a new level would be no different then exiting, then entering the new level

wicked crag
#

Does anyone know of a procedural recoil tutorial that I can follow? Whenever I try and add an animation for an automatic weapon, the animation just fires on the 1st shot

sand wasp
#

why does an event in my AnimBP only fire on server but not on client, even when not set to be replicating?

trim pollen
#

I have a string representing a transform and would like to use it as such

faint pasture
trim pollen
#

nothing else, that's it

trim matrix
#

Anyone know why Unreal 4 BP won't set the value of a variable within its own class?

#

Like even this... I go from event tick to decriment the value of a float by the amount of time that is passing

#

skipping the branch

#

cuz for some reason I cannot set the value of the boolean in a function & then get the updated value in event tick even though in the function it is updated to the new value

faint pasture
trim matrix
#

Using set

#

these print prompts appear

#

all I did was create the variable and set it here

#

then check its value in event tick

trim matrix
#

That's annoying... you have to RIGHT CLICK the fekin function to call the parent function instead of just dragging off and typing "Parent Event Tick"

celest sierra
#

Why

#

Why does...

#

Sequence isnt... doing the other one

#

why

austere ingot
fiery glen
#

btw it's probably just getting a vector from the combined x/y of the last frame to get the direction the mouse is moving

#

and then changes the arrow to be pointing that direction

austere ingot
#

I tried using that in general but the x/y resets to 0 every frame after you stop moving haha

faint pasture
#

Is that aiming? Clip is so short can't tell wtf is going on

austere ingot
#

yeah pretty much, where the mouse moves it points the arrow and when you attack it swings in that direction

#

just trying to get the values for the arrow and to set stuff to know which animation to play

fiery glen
austere ingot
#

kind of works with Get Turn and Get Look Up/Down

faint pasture
#

Just have a clamped vector you add to with mouse/stick input

quiet hamlet
#

super quick question. I have a VERY simple objective system that basically is a BP with a trigger that changes the objective on the widget when the player overlaps the trigger. However, it does not like the destroy actor component attached and throws an error. I know there is another node/way to destroy the actor for widgets, but i cant remember for the life of me how. If someone wouldn't mind throwing some advice my way, I would appreciate it ty πŸ™‚ If i leave the destroy actor attached it throws a character ref error

faint pasture
#

RecentAimVector = ClampVectorLength(RecentAimVector + Input, 1)

austere ingot
#

not sure if clamping will work when it goes negative and positive though

quiet hamlet
#

nvm delay fixed it

shadow field
#

don't want to interrupt but anyone want to help me with smooth camera transitions with the set actor location?

#

i know i mite need a timeline or vinterp but i am unsure how to use those to make it move smooth

late gorge
#

Anyone know why my search in blueprints randomly stopped working? all blueprints are indexed, it's just stuck at like 85%

runic parrot
#

Hi! does anyone know if there's a way to compile all blueprints only? like a short cut

dusk ember
#

how do i make it so that when the player moves, their speed doesn't gradually go up to the max but instead goes instantly to the max?

runic parrot
#

Ramp up aceleration so it acelerates instantly

dusk ember
runic parrot
dusk ember
faint pasture
short pawn
#

is there any safe way to rename your project file?

short pawn
ripe tusk
#

ive got a very simple setup here to raycast from the 3rd Person BP template but for some reason i cant get it to ray cast in the direction the camera is facing

#

what am i doing wrong ?

#

ofc using the world transform as start and then multiplying that vector for ray length would work but it would be wrong as the player moves away from the world origin

#

nvm brain was farting (this is why sleep is important)

gentle urchin
#

πŸ˜…

#

Happens to all of us jk

ripe tusk
late fulcrum
ripe tusk
#

can any of the BP wizards here explain to me while this is resulting in an infinite loop

#

the tick version works just as intended but when i use a while loop it raises an error

#

the script is just checking if the actor (The 1m cube) is moving or has come to a halt

gritty plover
#

Is there any way to dynamically set the length of a timeline, as well as the time of the last keyframe, in a blueprint using an exposed variable?

gentle urchin
#

So while (lol) the While condition is not met, it'll do the code again

#

for infinity

#

You'd need to take care of the condition inside the loop

#

The engine will go

IsConditionMet? False -> Loop Body() -> IsConditionMet? False -> Loop Body() -> IsConditionMet? False -> Loop Body.... for infinity and beyond

gentle urchin
#

adjusting keys, not so much

#

Setting Length to 1s means that if you want a length of say ... 10 sec... you just do PlayRate = 1/10

ripe tusk
gentle urchin
#

You're telling it to "untill this condition is met, ONLY print the string"

#

so it'll never do what makes the condition met

#

being a blocking loop

gritty plover
ripe tusk
#

hmm i think i get it let me give it a swing

gentle urchin
gentle urchin
white elbow
#

what am I doing wrong here?

gritty plover
#

Thank you

white elbow
#

it's a BP for a projectile

gentle urchin
#

The error says

#

Object does not match specificObject

#

the variable is part of the specificObject

#

Also

#

I would think it makes more sense to let the damaged actor handle its own incoming damage?

#

So bullet doesnt care who he hits (except owner, which you may already have ignored)

white elbow
#

is it more efficient this way?

gentle urchin
#

Its cleaner if nothing else

#

Encapsulation of logic etc

#

maintainability

white elbow
#

okay I'll try it

#

I still haven't figured out how to make by own projectiles ignore me

#

so they pass through

#

both are physics objects

#

alright I made this but it doesn't work for some reason

gentle urchin
#

Like...

#

the projectile calls "Apply Damage"

#

to the hit actor

#

the actor reacts with "Take Any Damage"

white elbow
#

so... make a custom event? I dunno how to do it

gentle urchin
#

No, its built in events

#

"Apply damage"

#

so the bullet

ripe tusk
#

@gentle urchin im now having the loop body update a variable that it is using to drive the condition but still getting blocked i guess, maybe my understanding of it is wrong

gentle urchin
white elbow
# gentle urchin

haha how come every time I hit a roadblock there's a convenient function for it? thanks mate

gentle urchin
gentle urchin
ripe tusk
#

but isnt it setting velocity every time it runs the foor loop ?

#

as the bollean is true

gentle urchin
#

so if you enter the WHILE loop with a velocity of ... 100. Velocity will be 100, untill the loop is broken

ripe tusk
#

but since the cube is a physics cube and slowing down it will change wont it (ive got a cube im throwing down a flight of stairs)

#

eventually it will stop moving and its reading should be zero

gentle urchin
#

Physics doesnt update

#

because you're in a blocking loop

#

this is what the code really does

ripe tusk
#

oh....

gentle urchin
#

While loops are great for many things,

#

but this isnt one of them^^

ripe tusk
#

i was doing this instead of a tick since ticking is expensive

gentle urchin
#

this is not cheaper πŸ˜›

ripe tusk
#

hahaha

gentle urchin
#

velocity is changed from frame to frame tho

#

so if you need to react to it , checking it each frame kinda makes sense

ripe tusk
#

yeah i guess a tick script would be fine

gentle urchin
#

If its a problem, move it to c++ πŸ˜„ usually less of a problem there

#

Also its good to always consider if something really must be on tick

#

or if it actually belongs elsewhere

#

You'd wanna try and do event driven as often as you can , to avoid letting the engine do work it doesnt need to do

#

Some things do simply belong on tick and cant be done elsewhere

#

physics, animation are usually top candidates for what you'd wanna use tick for

ripe tusk
#

also something strange lead me here, i cant seem to turn physics on and off using bp

#

like i have a raycast to pickup the cube and drop it

#

works fine but if physics is enabled it wont snap to the character so i disable physics and then when the character drops the cube i enable it

#

but once i use bp to turn physics on, thats it its never going off again

gentle urchin
#

Im able to disable it atleast

#

seem to work fine

white elbow
#

alright so I want to make a line trace from the enemy to my pawn, but the pawn only spawns after the game start. What should I put into the Cast To window?

#

since I can't reference the pawn if it doesn't exist yet

earnest tangle
#

You want the enemy to keep tracing to the player on every tick?

white elbow
#

yeah

earnest tangle
#

If it's a single player game you can probably just do get player pawn

#

and then check the cast result using Is Valid

#

it will not be valid if a player doesn't exist currently, since it can't cast nothing

white elbow
#

behold, advanced following AI

earnest tangle
#

if it works it works :)

pastel compass
#

Hi, I got a task to rig and animate this crane for a VR experience. I was thinking of using just a button to go up and then down as you push it a secound time. Any clue to where i should start? Any tutorials etc. that can help me out here?

thorny rover
#

Hi! I have a question! Is it possible to somehow reference to an edited static mesh inside the editor window instead of static meshes inside the engine folders?

#

like inside the editor my cube looks like this but that reference node lets me access a generic cube from engine folder

earnest tangle
#

^is this a cube you scaled in the editor viewport or what exactly?

tiny frost
#

uh any one know to to bounce a raycast easily

earnest tangle
#

As in, do another linetrace in the opposite direction from the point where it hit or something?

tiny frost
#

yea but i dont know how i would do that

white elbow
#

I set the value range but it still goes outside of that range when I change it

earnest tangle
#

Then you can calculate a new linetrace based on the direction you get from this

white elbow
#

like this but it still goes above 100

tiny frost
#

Thanks

gentle urchin
thorny rover
gentle urchin
#

You need an actor reference variable

#

Not a static mesh reference

thorny rover
gentle urchin
#

"Only works" isnt very accurate, but I'll say yes

#

(Like my typing lol)

celest sierra
#

I have another sequence that only plays once

#

Shouldn't both fire.. both?

earnest tangle
#

Is this a function?

celest sierra
#

Yeah

earnest tangle
#

If you use a Return Node somewhere after that Branch, then it can prevent the rest of the sequence from running

celest sierra
#

ohhhhh

#

Wow is that seriously...

#

Wow

earnest tangle
#

a return node will immediately exit the function

celest sierra
#

Dude you solved so many issues just now

thorny rover
#

just making sure

gentle urchin
#

Yepp

random plaza
#

is there any way to make an object only visible to a render target? my inventory system is gonna have a 3d modeled render target for selecting buildings.

hybrid ether
#

create new socket to left hand and try match transform?

faint pasture
#

@hybrid ether Does your animation have left hand movement?

hybrid ether
#

yes it have left arm movement too

#

I try something like that and try to match socket

maiden wadi
faint pasture
#

You probably have the left hand driven by IK normally and forgot to switch it back to playing the upper body slot during a reload

hybrid ether
#

it is just very little movement

faint pasture
#

What exactly do you want here? If you have an animated the hand to work for the reload, what are you expecting?

#

Your options are either have the head driven by animation, or some ik maybe

hybrid ether
#

I try figure. Switching attached bones just feel bad

gentle urchin
#

Perhaps it was as dumb as owner no see

keen dune
#

is there a simple BP to count how many times specific function has been executed?

#

so i can use that value in hud bp

blissful grail
#

Not that I'm aware of, seems quite specific and not an all that common needed operation. Can just have a variable, and increment that variable every time the function is executed.

keen dune
#

i guess the thing i want to make is quite common, cause i want to make a collect/kill counter, but probably the way i want to do it is not so much usual πŸ˜…
but in my small brain it seems it would be easier to get positive integer number every time actor is being destroyed, and then just print that number on hud via widget blueprint

#

that's my bp for destroying and spawning actor

blissful grail
#

So just have an event dispatcher that sends out a message that the banana was destroyed. Then listen for this message w/e you want to get it to the hud. Then just increment a number.

random plaza
#

whats the benefit of using event dispatchers instead of just casting to the target?

blissful grail
#

Decoupling. Casting works as well mind you. It just tightly binds w/e you cast to to this banana object. The banana shouldn't really have any knowledge or care that a HUD exists.

gentle urchin
#

Same with interfaces

native ridge
#

Anyone here know how to manipulate transform data? I am trying to place instanced static meshes on a spline (to make leaves on a stem). I'd like each leaf to have its own transform which can act like a relative transform which is relative to its particular location on the spline. That was I can just change "Custom Rotator" to wiggle the leaf safely in its own frame of reference.

In the first pic, I've got "Get Transform at Distance Along Spline" and I would like to adjust it by the Transform underneath it, arriving at a Transform in the Actor's local space.

What I'm currently doing is producing weird results, but there's also a screenshot of the leaves in a way that's close enough to illustrate what I'm going for. Any ideas?

gentle urchin
#

Seems like 3 leaves evenly rotated around the spline

#

So at distance along spline, distribute 3 leaves at fixed rotations

#

Like 0, 120, 240 degrees

maiden wadi
# random plaza whats the benefit of using event dispatchers instead of just casting to the targ...

One of the best examples you can find for this sort of thing is UI. It's fine if UI knows about specific gameplay objects, but gameplay objects should never know about UI. It's just bad design. Basically if you have to change any gameplay class's stuff because you decide to tear out and not use a piece of UI, you're doing something wrong. So instead of having the actor cast to every single widget that could be updated from it, you just add a delegate in the actor and broadcast it when the actor does it's own thing. UI can cleanly get this actor which is much easier to get than a specific widget and bind a callback to it. The actor class never has to know or care about this widget. You can apply this to gameplay classes and their managers as well. If you have like a time manager that broadcasts shifts and AI needs to change what they're doing at certain times for example. It's much easier to just make a delegate in the timer manager instead of having the time manager get and loop over every single AI that would use this.

native ridge
# gentle urchin Seems like 3 leaves evenly rotated around the spline

Exactly, that's what I'm currently doing. Works great for a vertical line through world space, but I want it to follow the arbitrary curve of the spline. My difficulty is in translating (0, 0, 120) into the frame of reference of the spline transform and then translating that result into the actor's frame of reference.

gentle urchin
#

why would it not follow the transform of the spline?

#

Something like this, but 3x, right ?

native ridge
#

So when you add an instance to the ISM component, it is in the actor's local space. What I want is not in the actor's local space, it's in the spline's--but I have to convert that into Actor space for the "Add Instance" node to understand it.

odd ember
gentle urchin
odd ember
#

I'm not the judge of that, the game is

#

and the game is telling you not enough

gentle urchin
#

Im not trying to bend it, no worries

#

this is by design

native ridge
#

I'm guessing there's something in this space I need to do so I can rotate the spline's transform within its own frame of reference, not the actor's

gentle urchin
#

From the same location, fetch the right vector, rotate it around its own axis, and offset the location by the distance required

native ridge
#

That is a great suggestion. I've thought about that--it would technically work, but I really want to manipulate the leaves with a rotator, not a vector offset.

gentle urchin
#

i guess your leaves then have their origin at the leafe stem?

#

Almost right

native ridge
#

Well usually their origin is right on top of the spline. Though I want the freedom of what amounts to a Scene Component for every leaf.

gentle urchin
#

Guess im not understanding this correctly then πŸ˜› I thought you just wanted to procedurally place them along the spline at given locations

lime cairn
#

I've got a MediaPlayer that I want to start at a certain point. I've got the setup as shown in the attached image. I can see the video has jumped to the point I designated but it won't start playing

native ridge
#

Yeah, that's the first half! Then, I want to be able to say, "hey, your root offset, rotation, and scale is <Current Spline Transform -->Adjusted by this offset --> Converted to Actor Local Space"

icy dragon
gentle urchin
#

Personally i think it looks alright for this early in the development

gentle urchin
#

this is what i got out of it x)

native ridge
#

Makes sense, it's a real brain bender. I'll make a diagram.

native ridge
celest sierra
#

So, can I get some assistance here.

I have a long jump.
I have a double jump.

If the velocity of doublejumping would be slower than the current velocity, then set to true.

earnest tangle
#

Is there a question hidden in this statement somewhere? πŸ€”

celest sierra
#

Yeah, the question is how tf do I do that lmfao

#

I did this

earnest tangle
#

I'm not entirely sure if I follow the logic

#

If you apply a double jump by increasing current velocity by double jump speed, then it would always be higher than current velocity

celest sierra
#

I'm trying to do a situational override on my launch character

#

Exactly yeah

earnest tangle
#

Is your character using CharacterMovementController?

#

because it has doublejumping builtin

celest sierra
#

Yeah but I created my own lol

plain hemlock
#

Hello! Does anyone know how to set the Level Sequence Dynamic Transform Origin from blueprint?

#

I'm trying to create some reusable Level Sequences to things like opening doors, pressing buttons

#

I can override the instance data and set transform Origin actor in the details, but I'd like to o that from the blueprint. Any ideas?

gentle urchin
#

As you tried to display

#

And it should basically be whatever local transform + transform at spline in world space

plain hemlock
#

in the details for the level sequence you can override the instance data and set the transform to another actor - when I move the other actor and auto play the level sequence it works perfectly

#

But if I try to trigger the level sequence from a blueprint, it doesn't work

#

I got this far:

#

but I can't figure out what target the "Set transform Origin" wants.

#

It says it wants a default level sequence instance data object, but don't know where to find that

celest sierra
#

@earnest tangle This almost does it

#

ignore set doublejump lol

earnest tangle
#

So you have some condition for being able to do the extra jump?

#

Like a maximum speed or something?

lime cairn
hardy kraken
#

[Repost from #ue5-general since no one seems to know there]

How do I make a blueprint actor class WITH keeping the lights I have in my scene? They all disappeared when I did the creation of it. (It has been 3 days since I tried solving this issue I'm so desperate pls I'm about to uninstall unreal 😭)

celest sierra
earnest tangle
#

Right so I'd just keep track of whether you're grounded or not, no need to check anything else :)

white elbow
#

I'm using this instead of a timer but not sure if it's too much math to do per frame, it works fine for me but I'doubt it will in a bigger project, what do you think?

celest sierra
white elbow
native ridge
blissful grail
celest sierra
iron raptor
#

Hey, how would I go about getting level_1 to load on launch of the game? I've tried a few methods and nothing has worked correctly yet

hardy kraken
celest sierra
#

yes you can c:

hardy kraken
#

hm wait

celest sierra
#

copy message link lol

hardy kraken
#

ah damn

hardy kraken
earnest tangle
#

Well it is in the rules that you shouldn't be crossposting. Seeing you are now getting help on that channel

#

If you don't get help then you can repost but yeah wait more than 1 minute

hardy kraken
#

I see, I'm sorry. I have read the rules tough, it was just long time ago.

hardy kraken
celest sierra
hardy kraken
#

And unreal is hard as crap. And I admit, I'm can be very impatient

earnest tangle
#

Your previous message on ue5 general is literally one minute before you posted here :P

earnest tangle
hardy kraken
celest sierra
gentle urchin
earnest tangle
#

how would you determine if the player wants to slow down? I mean you could check if they're pressing forward or something?

celest sierra
earnest tangle
#

ah, so that would probably normally reduce their speed since it's in a different direction?

celest sierra
#

Yea

native ridge
celest sierra
earnest tangle
#

Maybe you can compare the current movement direction vs the current facing direction then?

gentle urchin
#

World, if you go by spline world

gentle urchin
#

Or spline local if you go by local , i believe

native ridge
celest sierra
earnest tangle
#

@celest sierra You can get movement direction from Get Velocity -> Normal or whatever the node was called, then you can compare it with Get Actor Forward Vector which gives you which way you're currently facing

#

you can use dot product with some math or trigonometry to calculate the angle difference between the two

celest sierra
#

This would check if the player turned their camera around, then jumped

#

which worked

#

but if you didn't turn around, and held S(backwards) it wouldn't override. So I added "backwards pressed"

#

but this added an issue where if you were already facing backwards, then tried to double jump backwards, it'd override the second jump

earnest tangle
#

Ah, so also pressing backwards should cause it to override without necessarily turning around?

earnest tangle
#

Right, so here's what you can try

#

You can get the current input vector for movement which gives you which way you're trying to go in terms of inputs

celest sierra
#

So that's why I wanna check velocity

gentle urchin
earnest tangle
#

then use Get Actor Transform -> Transform Direction with it

#

This converts it into a direction in the world

#

Now you can compare it with the direction you get from velocity

#

this will take into account facing and which direction you're trying to go via buttons too

native ridge
celest sierra
native ridge
gentle urchin
native ridge
native ridge
gentle urchin
#

Oh lord πŸ˜‚

native ridge
gentle urchin
#

This looks splendid !

#

I neeed these in my game lol

native ridge
#

It would be the 3rd false "oh good it works" in 3 days so I need to check edge cases

#

Thank you :), your help was incredibly useful

gentle urchin
#

love edge cases

#

They're always so fun to deal with

native ridge
#

would you like a mention in the credits? I can add it to the list

gentle urchin
#

Hehe nah im all good ^^

#

Last edge case i had (except recent spline fun) was procedural landscape where it happened one of ~80k times

#

Fun times

native ridge
#

That's "Ghost Stories for Game Devs" material right there

iron raptor
#

Does anyone know why my blueprint keeps loading in levels that it shouldn't be in? 😭 It's the trigger to load the next room, so I need it to be room-specific. For some reason it doesn't go away when the previous level is unloaded.

gentle urchin
#

Sounds like its not part of the loaded level

#

Or unloaded level

iron raptor
#

I've double checked it, and it definitely goes away when I turn off visibility for the level it's supposed to be in. But it stays consistent when the game is playing and you go to another room

#

I haven't implemented room snapping yet, so it might not even matter since you will physically move away from the bp and can't trigger it again because there's no backtracking. But it's still annoying

#

lv 1 turned on

#

lv 2 turned on

#

Vulture head is the bp I want, and looking in the levels there is only 1 per

gentle urchin
#

Worst case youd just control it manually

iron raptor
#

I suppose I could tell the bp to destroy itself after it's used πŸ˜†

#

I can probably just ignore it. The levels won't be spawning in the same place like they are now

rain ravine
#

Can I covert a BP back to Data-Only Blueprint?
I needed the full UI to change something, but I need the data only view back now

earnest tangle
#

I think as long as you don't put anything into the graph it should go back to being a "data only"

#

Might need an editor restart for it to happen though

#

As far as I know there's literally no such thing as a "data only" BP, the editor just gives you that UI if it thinks the BP contains no logic

rain ravine
#

yeah editor restart helped

tiny prairie
#

In a multiplayer game should the players widget where its shows his health and inventory only exist on the player game or also on the other players games?

gentle urchin
#

Sounds like a design decision

dense badger
#

Any BP experts here familliar with an issue where re-typing a paramter causes it to have an incorrect default value? IE: Retyping a bool into an Enum will sometimes cause the enum to init with the value of "True" or whatever the bool was set to. Sometimes you can refresh the BP several times to fix it, but in the case of data tables containing structs, it seems like this garbage init data will compile just fine until you cook and then it will fail. Is there a known issue for this?

gentle urchin
#

Like, usually other players dont need to know about the inventory

#

But hp could be usefull

tiny prairie
#

i have a component that has the inventory stuff but that component has a widget that show the player what it has

#

i want to create the widget for only the owner of the inventory

#

but idk how to go about it

gentle urchin
#

Inventory is server data, and personal to the player usually

tiny prairie
#

ye i mean more like idk how to make a widget only for the player i have tried * Is local player controller* idk if that is the right node for this tho?

dawn gazelle
#

Where is your inventory component stored?

tiny prairie
#

player character

dawn gazelle
#

So you can do an input action either on the character or on the player controller to create the widget, the widget can get the owning player pawn, which you can then get the component off of, and display the contents of.

tiny prairie
#

how do i update the widget?

dawn gazelle
#

You can put an event dispatcher in your inventory component that you call whenever the inventory is updated. The widget then binds to that dispatcher on construct to update its conents.

tiny prairie
#

are event dispatchers per client or over the whole game? haven't used them much with them yet

dawn gazelle
dense badger
#

I think the problem is beyond structs tho, it's fundamental to retyping vars. For example if you make an enum, choose the value at index (1) and convert to a float, the float default will be "1". This behavior works for some (compatible) types but somtimes breaks with incompatible types.

dawn gazelle
# tiny prairie are event dispatchers per client or over the whole game? haven't used them much ...

Event dispatchers themselves don't replicate anything, they are just a means of communicating from one place to many places that listen to it. So if you're running on the server and call the event dispatcher, then any listening objects on the server will hear it.

If you're using something like an OnRep on a character, that OnRep fires on all clients, so if you called an event dispatcher there, it would be firing on all clients. The idea here is though, your widget is binding to the event dispatcher that exists in that specific component within that specific character. It wouldn't matter if the event dispatcher fires on other characters as your widget isn't listening to them.

echo salmon
#

I got a rolling ball controlled with keyboard, and i want to add some friction so when the player stop pushing the W (to move forward) the ball after a couple of "meters" stop rolling. I have added a physical material on the ball material and increase the friction but the ball keeps rolling slowly even if the player release the move forward button.

celest sierra
#

I got into this. I'm still kinda confused what's going on

#

the get velocity is the current direction
The transform is the player input direction

earnest tangle
#

So the idea is basically this: Get the direction the player wants to move to, and compare it to the direction it's actually moving to

#

The last input vector gives you what the input is, eg. forward, backward, whatever - but this is in the actors coordinate space

#

Transform Direction converts it from the actor's space into world coordinate space

#

the velocity vector is also in world coordinates

#

so now if you get a normalized version of the velocity vector, you can compare these two directions, and you should get a value you can use

rotund coral
#

Can you use blueprint search syntax to find a C++ property exposed in the details panel?

#

Or can it only find properties created in BP.

echo salmon
#

How i can access lock position , via blueprints ?

maiden wadi
gritty trout
maiden wadi
#

Because you're printing after changing data.

maiden wadi
maiden wadi
# echo salmon How i can access lock position , via blueprints ?

From what I can see, you cannot. This looks like a pretty deep C++ rabbit hole that was designed for complex design time settings without much regard for runtime changing. Likely assumes you wanted to play something like a side scroller with a constant plane setting.

trim matrix
#

Hi, can anyone help me with linetraces, because I've been trying to get a system where I can tilt the camera to give my wallrun a more "wallrun like" feel, but I need to get the right side to tilt my camera to. Whenever I linetrace it just goes to the center of the map, but im not sure where to put the end point. If anyone can help, or to be honest find a more efficient way, i'd be grateful

tiny prairie
#

lane trace goes from start to end in this case your world location of your "Mesh" to 0,0,0 aka the center of the map

trim matrix
#

yeah but if I wanted it to go to a wall that i'm "running" on, where would I set the end to?

#

example

#

me running along that wall

gritty trout
echo salmon
#

@maiden wadi i want to constraint my player not to move ( not pause the game though) and then resume

#

@maiden wadi not disable input thought because its rolling ball

#

@maiden wadi and it will keep rolling

trim matrix
trim matrix
maiden wadi
#

No, stop moving entirely. Actually you can do that by clamping the velocities in blueprint I think.

echo salmon
#

let me see

maiden wadi
#

This might work.

echo salmon
#

it worked

maiden wadi
#

I mean alternatively you could just stop simulating physics entirely and then just reenable it

faint pasture
#

Or constrain it to the world

#

Depends on what you're trying to do

echo salmon
#

@maiden wadi ty ❀️

tiny prairie
#

to get the tilt affect you could probably also get the location from the wall and your location and then calculate the rotation based on that @trim matrix

maiden wadi
#

Generally speaking, you could hack this by doing a radial trace around the player, but the fact you would need to do that is rough design. You already know which side the wall is on due to having started the wall run in the first place. I'd find a way to cache that

trim matrix
tiny prairie
#

i mean get a reference to the wall you are currently riding

maiden wadi
#

Is this what starts the wall run?

trim matrix
#

yeah

#

I can send a fuller screenshot but my code looks like absolute garbage

maiden wadi
#

The SweepResult should have some data for you. If you could get the hit location, transform it into your character's local space and determine if it's on the right or left side of the character, you'd be able to know which direction to tilt the camera maybe.

#

Something as simple as this might work, unsure.

trim matrix
#

I did this, but it's still kinda messed up, and counts as a hit when I jump and land

#

(wall collision is basically a huge mesh on the outside of my character)

#

to detect wallruns

celest sierra
#

So I have 2 inputs.
Where I'm moving with show 0 if im going straight, and 180 if I'm moving in the other direction.

Where I want to move will get my input direction as a vector.

How can I compare these two? If the direction I want to move in is the opposite of where im moving... then true.

How can I do that?

tiny prairie
#

make the wall collision not hit your feet

#

only the stick out on the sides of your character

trim matrix
#

that was a stupid question

celest sierra
#

@trim matrix

celest sierra
faint pasture
#

or global velocity and input rotated to be global

#

it'll be positive when aligned, 0 when right angles or one is 0, and negative when opposite

feral ice
#

can i turn off so i dont paint foliage on meshes only landscapes?

trim matrix
#

how do you get the camera to do that

fair magnet
#

If I make some logic OnDestroyed is it possible that the actor is being destroyed even if whatever logic I did in that event isn't finished yet?

odd ember
#

click every button you'll find it

feral ice
odd ember
#

you can ever hover over them to see what they do if you're scared

fair magnet
#

What if they do?

odd ember
#

then that serves them right for connecting vital organs to their pc

celest sierra
celest sierra
gentle urchin
#

Calculate direction?

#

What is that

#

Not compatible with dot , thats almost vertain

odd ember
#

I love that it says direction and then it's a float

#

must be for blendspaces

hushed gazelle
#

hi, whenever i lock-on and i walk backwards, my character does some stuttering, is there a fix?

faint pasture
gentle urchin
#

Looks like conflicting rotation

hushed gazelle
faint pasture
hushed gazelle
#

yeah it doesnt

faint pasture
#

It's probably from your blend space not being smooth between -180 and 180 yaw

#

do you have the exact same animation at both places?

hushed gazelle
#

wdym?

#

for lock on and normal?

faint pasture
#

No your locomotion blend space

#

does walking at -180 and walking at 180 degrees result in the exact same animation

trim matrix
hushed gazelle
#

no, i have a walking backwards anim

faint pasture
hushed gazelle
faint pasture
#

@hushed gazelleIt's happening around here

#

Check it in the blend space editor and make sure the transitions are smooth near there

#

it's prolly your left and right strafe animations not matching phase or whatever

#

by phase i mean the left foot right foot timing

hushed gazelle
#

yeah the animation is smooth, i think its to do with my lock-on because beforehand, i always had strafe walking, and walking backwards was fine

faint pasture
#

walk backwards and tap left and right strafe or move the mouse around, does it do it then at all?

hushed gazelle
#

yeah, walking back and tapping left and right stutters too

faint pasture
#

Yeah fix it in the blend space

hushed gazelle
#

my mouse input is turned off in lock-on mode

faint pasture
#

in the blend space you can preview by dragging the green dot

#

also remember you'll never hit the corners

hushed gazelle
#

thats what im confused about, my blendspace is completely fine

#

nothing stutters in there

faint pasture
#

wiggling the green dot around the bottom middle dot doesn't make it stutter?

hushed gazelle
#

nope

faint pasture
#

show how you're calculating the inputs to this blend space

#

should be a dot product between velocity and forward / right vectors

hushed gazelle
#

not sure where that is

faint pasture
#

Then find it lol. Probably in the anim BP

blissful moat
#

Is it somehow possible to edit actors in a child blueprint instance from within a parent blueprint?

#

I would like to edit these splines that are part of a child blueprint

#

oh no πŸ˜„

faint pasture
#

child actor component is ass

#

IDK why tho, it would be so handy if it didn't suck

blissful moat
#

hahahahaha great

faint pasture
#

I like seeing actors within actors, really wish we had the Godot paradigm

blissful moat
#

Is there a better way to do this?

faint pasture
#

Have you looked at how Godot does it? Super slick.

#

Everything is a scene. The world, your character, the gun, the bullet, all are on the same level, not divided into actors and components

blissful moat
#

The problem is that I need these splines to be unique for every one of these grabpoints, and edit them manually

hexed oasis
#

can I get data from data table containing child stuff as the parent?

spark steppe
#

what?

small halo
#

can anyone help me with ai vs ai please?

spark steppe
#

i don't think that you can inherit data tables?!

hexed oasis
#

like... if I got struct parent and struct child
and the data table is built with the child struct can I get the data as the parent struct?

spark steppe
#

can you inherit structs? Oo

hexed oasis
#

mm ya?

#

in cpp

gentle urchin
#

Extending them, is it not ?

spark steppe
#

yea, but i guess BP isn't aware of the inheritance

#

maybe that works in cpp tho

hexed oasis
#

welp made a cpp function helper that does the job πŸ‘ŒπŸ»

charred berry
#

little lost here,- onbeginoverlap on trigger in level, but I don't want to dol anything but make sphere that has animation attached , become visible ( easy part, visible or not) that is in level right next to trigger , is there a tut for that or if not what do I call to tell overlap, the target is the sphere that on cue will animate ( shape ) start interfaction with character ? TY anyone, hope I explained that right to be clear of intent

odd ember
charred berry
#

ya I wasn't sure it was ;0-0

#

ok

faint pasture
#

Is it like a trap where the trigger and the thing that does the thing is all wrapped up in one actor, or seperate?

charred berry
#

I have a sphere trigger in level , that when triggered, is supposed to make a smaller sphere visible, and on cue start interaction with character. I'm just not sure how to tell onbeginoverl that, on overlap, the new target is the sphere ( sphere b , not target sphere)

#

well honestly, I m not sure how to answer that, not being sure how to make it all hapen LOL

#

happen

faint pasture
#

Start by making it all in one actor if you're as new to this as I think

charred berry
#

trigger > overlap> make the other tinier sphere visible and start interaction with character

#

simplest way I guess to describe ;0-0

faint pasture
#

OK so make one actor with the trigger volume, the other smaller sphere, and all the logic

charred berry
#

basically yes

faint pasture
#

you can implement OnBeginOverlap(TriggerSphere) and do the logic from there

charred berry
#

ya thats what I have so far, I just wasn't sure what the BP logic would be , to make the smaller sphere active as in , the new target going fwd

#

if that makes any sense ;0-0

#

as in, become visible , transform and ask character for input

faint pasture
#

Event Begin Overlap(TriggerSphere) -> filtering checks to rule out unwanted overlaps -> make small sphere visible.

#

Get that part working then worry about the "asking for input" part

charred berry
#

yes

small halo
#

is it a good idea to link the branch to cast failed?

#

doing ai vs ai

tiny prairie
#

any difference between (message) and (interface call)? Interface blueprint

trim matrix
#

Hi, what is the best way of switch controls between keyboard and gamepad

icy dragon
trim matrix
tribal stream
#

How do I delete actors in the order they were spawned at?
Detail:
I am making a flappy bird game and I spawn these obstacles each 1.5 seconds. I want to delete the obstacles once they're off-screen, which roughly takes 4-5 seconds. The issue is, when I destroy the component using a for loop node, it destroys the last created actor only, so it doesn't take into account the order in which they were created.
This is my setup.

#

so if each 1.5 seconds an actor spawns, only the 4th actor will get deleted.

tribal stream
#

will try it first.

#

Tried doing this.....
still....no luck.

#

I was thinking of making a big collision/overlapp behind the player and when the actor hits it, it gets deleted.

#

For the time being, I will use this fix, although I am not sure it is the best.

tribal stream
celest sierra
#

Can someone join Feedback&Support and help me figure this shit out real quick?

#

nvm

#

can't stream anywhere lmfao

faint pasture
#

Or teleport them back to the beginning when they go offscreen

tribal stream
#

wait a sec, you mean I should use event tick and track the data?

tribal stream
faint pasture
#

First of all why are you making an array containing that one spawned actor then looping over the array (which contains 1 item) and destroying it?

#

Honestly just set their life span to 3 seconds or whatever on spawn and call it a day

faint pasture
#

Just have whatever is doing the spawning crank out obstacles. In your obstacle BP you can set the default life span too, so the spawner has to do nothing after spawning them

tribal stream
#

Do you mean I should kill it from the blueprint it was created?

#

oh I get it

faint pasture
#

Have you tried searching for life span in the obstacle actor properties?

tribal stream
faint pasture
#

go do that

tribal stream
#

I am fairly a beginner, so that did not cross my mind.

tribal stream
faint pasture
#

Might be exposed right off the bat or you might have to show inherited variables but it's in there

#

If not, there's a node called Set Life Span and they can call that on begin play

tribal stream
#

will try it now

faint pasture
#

yes

#

put that to like 5 or whatever