#blueprint

1 messages · Page 296 of 1

frosty heron
#

You want to attach the a component to a bone?

#

Then attach component to component.

#

Don't know how that will look like though. What you probably want might be a full control of the camera instead of spring arm.

fierce crypt
frosty heron
#

You probably should detach first before attaching it to w.e you want.

#

@fierce crypt what sort of camera mode are you using?

#

Spring arm is kinda gross for third person camera. Have you ever tried going to corner.

#

Since you mention cpp. I recommend taking a look at lyra camera, camera mode and penetration feeler.

#

I don't think I can make a decent game without it

hazy portal
#

might be a https://canary.discord.com/channels/187217643009212416/1004083824344436767 question but I am having a minor bug that I need to fix and I cannot figure it out,

Hit space bar once, jump works, stamina drains properly only once if tapped once and even held only drains once.

But if I tap it in the air it will drain stamina again without technically jumping so I can drain all stamina by spamming space in the air

#

I assume I need to have a on the ground check to proc the jump action?

graceful sage
fierce crypt
fierce crypt
graceful sage
# hazy portal ??

Drag the cmc onto graph and grab from that. I'm not 100% there is a bool like that I just remember something like that exists

#

It might be a is flying or is jumping tho

#

I'm afk so can't check

hazy portal
#

now it checks whether you have enough stamina, if you do it checks if you are airborne and if you are not then it allows you to jump otherwise it leads to stop jumping

hazy portal
#

last bug

if I hold my sprint I can sprint forward, left and right, I cannot start sprinting in the reverse. This works as intended but if I start sprinting and holds it it allows me to sprint backwards. I need to figure out how to set the speed back to walking as an interruption when walking backwards to keep from back sprinting.

#

oh wait I think I got it

#

nvm didnt work, not sure what I am missing

#

I got it, its not perfect functionality as I would like it to start sprinting again when I stop moving backwards but it at least interrupts the sprint which is fine works for now

#

wack, I got it to continue sprinting when I move forward and interrupt when moving backwards but now I can't start sprinting to the side but if I start while moving forward I can hold it while going side to side but not start the action

#

wait it works now, I dont know what fixed it as I didnt touch anything lmao

marsh ruin
#

I'm a noob so I might just be missing something obvious but...for context, I'm making a little first person point and click adventure style game. Currently working on the camera. I have it set to that clicking on the edges of the screen rotates the (otherwise static) camera, and clicking on invisible walls in the center of the screen moves the player about the environment. I have camera rot and moving the player using set location and rot, and it's all working smoothly.

The invisiwalls (I'm calling them Travel Objects) are reporting the same rotations as the objects in the world at different points in the chain - I'm just lerping self rot to wall rot and the figures are all working out (seemingly). However! Depending on where in the level(?) the wall is, the camera on click is positioned either (1) along the long edge or (2) perpendicular with the plane (how I'd like it to be). Getting dot product, of course, just swaps which camera is wrong. Any ideas?

hollow acorn
#

Hi experts!
I'm currently practicing parkour level design in UE5, but I have encountered an #blueprint issue while implementing the sprint function.

Even after adjusting the Max Walk Speed, the actual speed does not change.
I have also tried modifying the Max Walk Speed in the Character Movement BP, but I still don't see any difference.

Am I missing something important that I should be aware of?

Thank you all for your patience and assistance!

hazy portal
#

Start and Stop Sprint Functions Respectively

hollow acorn
#

Ohhh Thank you so muchQQ I'll absolutely check this out

hazy portal
#

@hollow acorn I am using the Enhanced Input System so dont forget this bit in your Character so it knows what mapping context to use (Basically tells your character to read the Input Mapping Context, which is a list of all Input Actions aka Keybinds)

wispy kayak
#

Hi, How to only selected actor change the mesh when I load the level again. I'm using StaticMesh variable for the GameInstance.

frosty heron
#

Right now you probably have 1 variable on GI and all the instance point at the same variable.

wispy kayak
frosty heron
#

If it is for some reason then you will need to map the actor and the value.

#

I would suggest using map variable.

#

If the actor always placed on the level and not spawn dynamically then you can use a map of Object reference and the static mesh (as the value)

#

Otherwise you will need to ID objects that are spawned dynamically and the one placed in the level with FGUID

#

You will need to involve save game objects too

#

Tldr uniquely identify the actors and give each of them their static mesh variable to pull from.

#

Or honestly.. just make the static mesh variable inside of the actor. I am not sure the purpose of G.I in this case.

Just use save game object to store and load the data.

gentle urchin
#

you can look into vertex animation 🙂

#

works well with ISM's

#

allows for quite cool stuff extremely cheap

odd kiln
#

Hi all !

#

I'm using Sphere Traces by Channel for an melee weapon attack.

#

But my attack animation is fast and then I don't have enough "traces" so my Actor is not getting hit

#

I tried to fire the "Traces" on the Event Tick and on a Timer at 0.01 looping time but it's not enough..

#

Anyone has a tip to have more traces firing ?

frosty heron
#

imagine you are on 20 fps

#

even if you do 20 fps, that's 20 trace you can do.

#

One approach is to trace back.

odd kiln
#

So I have to use a "Capsule Collision" overlap event on my Sword to resolve this issue ?

frosty heron
#

not a silver bullet

#

in some cases may not work

odd kiln
frosty heron
#

the most reliable approach that I end up using is to bake the data.

frosty heron
odd kiln
#

I mean in From Software games for example even if I have 10 fps I can hit the enemy, what are their techniques you think ?

frosty heron
frosty heron
#

but that's not something you can do with blueprint alone.

frosty heron
# frosty heron

this is not silver bullet for non baking approach but may help.

#

Red is your traces on tick

#

Yellow is for every trace, you trace back to the last location

#

P.S that method didn't help me when the fps is too low. Only baking works for me.

#

it may help to buy plugins from Fab 🤷‍♂️

odd kiln
frosty heron
#

ofc it comes with down side

#

like I will have to bake each weapon

#

but gives the best accuracy.

#

even at 5 fps, my character still do a full swing.

odd kiln
#

And best performance I guess as it's baking

#

So when you say baking data, I have to bake each attack animation of each weapon ?

frosty heron
#

maybe I am just a noob who doesn't know how to trace back better, you can look around for some plugins in fab.

frosty heron
#

for every sliced part, I write the time stamp and the location of the socket.

#

then the anim notify state simply check for the current time and simulate (trace) to every point that hasn;'t been played yet.

odd kiln
#

What is the downside about making a Collision around my weapon and check overlap events ?

#

As games like Street Fighter use that

frosty heron
#

no downside for that

#

you can still bake and trace using overlap events

#

the part that is the issue is baking the data or not.

odd kiln
#

But without baking datas, overlap events are not good ?

frosty heron
#

in my experience, I can't get it to work.

#

but maybe someone can? 🤷‍♂️

odd kiln
#

But why, what was the issue ?

frosty heron
#

the fps is too low

#

that I only manage to get 2 fps on my swing

#

so that's 2 points to work with

#

let me show what happend before I went with the baking approach.

#

This is with 100 fps... btw

#

with 30 fps, I get no traces or just 1 / 2 . Not acceptable.

odd kiln
#

that's really

#

nice

#

I guess I have to find a way to bake my data traces animation

#

But with your baking data it still traces over time, right ? I mean the traces not hitting instantly all at same time ?

frosty heron
#

i am just simulating the missing points

#

So if I get in mid combo, then it's not gonna do a full swing

#

you can't really automate this in blueprint though. If you have to write down each points manually by hand, that do be a nightmare and possibly inaccurate.

#

I have an actor where it will play a montage with Anim notify states in it. When I press a button it will look for anim notify state in it, advance the time to each sliced point and record the socket location.

#

can't really do that in blueprint so perhaps the path of least resistance is to get existing plugins from market place

#

unless you want to tackle this your self then maybe it's a good time to dive into cpp

odd kiln
frosty heron
odd kiln
#

He is talking about "interpolation" and "previous frame position" things

frosty heron
#

in my view to have an accurate swing, we need at least to know the direction it's going or at least the angle of the swing.

#

@odd kiln My advice would be to just look at plugins in fab.

#

can't comment if they are actually good or not as I end up rolling my own.

odd kiln
#

I see, I will try to look at plugins or trying to find how other games do that.. thank you very much for your help !

frosty heron
odd kiln
# frosty heron

If I understand correctly this is what you do with baking but he bakes in real time ?

#

Look @frosty heron I found something interesting I have two sockets on my sword to signify the start and end of the blade. Each tick, I am lerping between the last known position and the current position, doing a hit scan with each increment to see if it hits the player. That’s it really!

frosty heron
#

@odd kiln that's my attempt of doing that.

#

Current position to last position

#

again though, they may know something that I don't know.

odd kiln
#

He said Even at 6FPS I’m registering hits fine

frosty heron
#

that's cool

gentle urchin
#

6 fps, but at what animation speed ?

#

if you do 180 swing in 2 frames, its gonna miss

#

that would be true even at 60 fps

#

question the becomes do you really need it that accuracte to begin with, or can tracing shapes do 90% of the work ?

odd kiln
#

The problem I'm facing is that sometimes my traces are not hitting the Actor Capsule Collision

#

Because my animation is too fast

gentle urchin
#

just do a shape trace

#

cone trace + Z check

odd kiln
gentle urchin
#

sphere trace is a shape trace

#

its a trace with some shape

#

instead of just a line

#

i think cone fits better for sword swings

#

assuming they're relatively horizontal

odd kiln
#

Cones ?

gentle urchin
#

you need to fix the trace location

#

not base it on the sword

#

or whater weapon there is

odd kiln
#

So based on what ? Because I want the traces to follow the movement of my sword as well

gentle urchin
#

you probably dont, when its that fast

odd kiln
#

Oh ok I see

#

So why not spawning a Sphere in front of me and doing an "Overlap" event ?

gentle urchin
#

you could do that but it's more complicated with the timing of a swing imo

#

well maybe not complicated but .. 😄

#

i'd probably setup notify states

#

in the anim montage

#

and have some parameters for the location and shape of the trace

#

at the most basic something like this

#

maybe this gets far more complicated than what Coldsummer suggested tho

naive herald
#

I want to control the sequences in the sequence folder by getting them from the wideget blueprint through get asset by path. But I don't see get asset by path, what's the problem?

odd kiln
#

So even if my animation is fast, the trace wille be big enough to hit the enemy

#

But I have 2 questions : 1) How to make a "Cone Trace" ?

#

And 2) How to do so the "Cone Trace" expand over time ?

#

What I don't understand is that if I attach particles to my Sword, even if the animation is fast, the particles are following the sword great

desert flame
#

Been a fair bit of time since ive used Unreal.
Updated a project to 5.5 and ive got a bunch of errors all relating to "player mappable"

gritty aurora
#

Hey everyone, Hope everyone is doing well . I need some help with an issue. When I launch my game and press "Press to Start," it loads into the main menu. My main menu is set up with a cinematic camera, a built scene, and a menu widget.

The problem is that when it loads, everything (props, lights, camera.) is visible for a moment, but then everything disappears—only the widget remains. It’s like the camera is gone, or everything gets unloaded, and it stays stuck in place.

Here’s my blueprint setup and a screen record of what happens.

Has anyone run into this issue before? Could it be related to level streaming, camera settings, or something getting destroyed? Any help would be appreciated!

frosty heron
spark steppe
#

there's also a setting in sequences which restore the "default" state

frosty heron
#

Can also remove all widgets when the screen turns black to find out if it's the widget.

gritty aurora
#

@frosty heron That’s the thing I also thought it was a fade animation or a widget covering it, but when I’m in my Main Menu level and press play in the editor, everything works fine. However, when I run it in Play Standalone mode, or from Start Menu it works for a second and then goes black again. And I removed the sequences and get current level name just see if that works.

young meteor
#

Hey folks

If I load a level from a main menu, should I use the "Load Stream Level" in order to have a loading screen that is not just a static frozen image?

  • And if so, how do I make it work the same way once loaded? (With the one on the left, the GameMode BP is loaded, actor location set, controls handled etc.)
  • Guess I would also have to "unload" the menu level afterwards.

Or can I just do a "Load Stream Level" node first, and on "Completed", I call the "non-async" node "Open Level", since it should now actually be loaded?

somber thunder
#

hi, i want to update you about my ammo band situation, and i settled for this (might change later but its good enough for what i need now)

gritty aurora
# young meteor Hey folks If I load a level from a main menu, should I use the "Load Stream Lev...

You can use Load Stream Level to load the level in the background while showing a dynamic loading screen, like a progress bar or animation, so the game doesn’t freeze. Once the level is done loading, use the On Level Loaded event to set up the Game Mode, spawn the player, and do any other necessary setup, and then you can Unload Stream Level to remove the menu if you’re done with it. Just my opinion it might be wrong 😅

dark drum
frosty heron
lyric rapids
#

Im using an audio component on my blueprint and added a meta sounds component to it and im trying to change the variable pitch in my meta sounds asset by using set float parameter but its not working

somber thunder
dark drum
viral cedar
#

I have a problem, I am unable to create a Blueprint that contains both an Anchor Field and a Geometry Collection where the Geometry Collection depends on the Anchor Field. Does anyone know how to approach this?

eager thicket
#

I have a camera + spring arm attached to a car.

What would I do to make sure the camera stays upright when the car flips over?

I already set the spring arm NOT to inherit the roll of the car, but that doesn't help this issue

tropic peak
#

anyone ever encountered a similar issue?

It's not open anywhere else.. I just finished working on updates for this BP and now I can't save it

#

I cant' even save it as a new BP

spark steppe
#

harddisk full?

tropic peak
#

nope. what a silly issue.. turns out I had deleted a macro from a library that was in that BP and I couldn't save it because of that

paper karma
#

I am making a river boat game using unreal engines water and buoyancy systems.

It looks and works great in the editor, but the river has fragments missing when I playtest in Standalone or build the project to an .exe. The water is still "there", I can paddle on it and float there, etc, but the visual aspect is completely invisible.

If anyone has experience with this or a potential fix, I would appreciate it, thanks!

runic portal
#

using a Pawn with a Floating Movement Component, is it possible to make it keep it's current velocity when unpossessing ?
When I unpossess it, it freeze and start moving only when I repossess it with a PlayerController :/

thin shell
#

Hi there !
I am currently trying to create a crafting system, however after watching the tutorial by "ryan Laley" on the inventory system, I am struggling to find the elements to make a crafting system. (2 slots. If the 2 elements placed in the 2 slots are good, then craft the object with a datatable).

I am a very very very beginner un blueprint and I have literally no clue how to do it and everything i tried was a disaster haha 😅 (Working on UE5).
I would appreciate help from a patient person, ready to help me on this feature ! If anyone know how to do it, tell me and i'll contact you asap ! 😄 (I can send you vids, pics and more if needed !)

faint pasture
#

assuming there's nothing in floating pawn movement to stop it from just going, it should just keep going when you hop out

runic portal
#

Nvm, it didn't work because I thought the AIcontroller would automatically repossess after player ._.

dark drum
faint pasture
#

Duplicating its functionality is super simple, just make your own system IMO.

dark drum
faint pasture
dark drum
eager thicket
#

How would I make it so if the mesh flips over, the camera attached to it does not?

#

Imagine your tank flips upside down, I want the spring arm and the camera to stay situated on a top-down view

#

(I tried disabling the "inherit roll" on the spring arm, but it didn't work)

dark drum
eager thicket
#

so if the mesh turns and twists on another axis, the camera just stays in place

dark drum
eager thicket
idle vigil
#

what is the standard way of managing multiple systems that needs to be persistent between levels? Stuff like music players, or a class that manages visual effects that needs to be consistent between levels etc? I know game instance class is persistent but in a bigger project where you have multiple unrelated logic lumped into a single class would get messy i feel like. I came across subsystems but im not sure if there is a better way to organize this.

eager thicket
#

this is dragging off the spring arm btw

lunar sleet
dark drum
dark drum
zealous moth
#

I'm trying to optimize some assets and a lot of them are stacked into blueprints, so just a bunch of SMs in an actor. IIRC actors do cost a bit as opposed to meshes. Is there a way to optimize it other than breaking them apart and grouping them?

dark drum
spare pollen
#

Hey everyone, I'm looking for help to set up a Special Attack based off the amount of times the character gets hit. Are there any good tutorials that might talk about that? I can get it to count the attacks, fill the meter, but then even when I try to set the meter back to 0 it keeps continously firing the special attack.

wicked cairn
#

Hey guys, anyone having issues with the widget interaction component in multiplayer when the client or server hovers a widget component button?? On a listen server the buttons do not react when hovered, but when standalone it's fine and shows the button being hovered. Is this intentional? How do i fix it 😭

The function shown in the screenshot is called if the pawn with the interaction component is locally controlled after it gets possessed

Any help appreciated!

dark drum
odd kiln
#

Anyone knoww how can I do so my Sphere Trace has more vertices ?

dark drum
odd kiln
wicked cairn
dark drum
odd kiln
dark drum
flat jetty
#

How can I make this better? (i wont cast player controller, and cache it.)
My player Controller has UI Manger component for all my huds etc. And I need to access Countdown Timer, but as you see, Its very against to Law of Demeter etc. What should i do to improve this?

dark drum
odd kiln
thin panther
#

sphere collidion is a radius check, the "vertices" are purely for visualisation

#

it's maths, not a polygon check

dark drum
wicked cairn
odd kiln
#

I tried to do the "Hitbox" collision attached to my sword, but when animation is too fast, it does not hit my Enemy..

dark drum
dark drum
odd kiln
dark drum
# odd kiln My only issue is that when I have low framerate or if my animation is too fast, ...

So what I thought would be a quick project turned into something that took far longer. So here's what I've been working on.

In short, it's a 'frame stable' weapon trace system. I would have liked to have implemented a hybrid approach but 5 days later it's time to move on. 😅

#UE5 #GameDev #IndieDev

▶ Play video
sand yacht
#

Hey, im trying to get ai to detect the player's flashlight however this appears to be quite difficult. Is there somone who knows how to achieve this?

#

Especially doing it in a somewhat performant way

odd kiln
#

He wrote performs all the relevant traces at once, pulling from baked data about the animation. but I can't find a way to store any data and baking it (into a csv file maybe?) I don't know

dark drum
odd kiln
#

But I wonder if studios do that with traces or just like Street Fighter with Hitboxes ?

dark drum
odd kiln
#

But I don't know why when my Sphere Trace hits, it's not accurate; that's why I was asking if there is a way to "subdivide" the Sphere Trace to have more "points/vertices" on it.

#

I always see this giant "Capsule" collision with several vertices on it when I try to visualize Dark Souls hitboxes

#

So I thought that my Sphere Trace has not enough "points" to detect the impact location correctly

flat jetty
#

How can I make sure its 00.30 for 30 seconds and not 0:30..
After on digit, its 0:9
But i want 00:09 ..

#

I heard two digit formatting but chat gpt didnt help so far

dark drum
# odd kiln Oh congrats you made a really good system !

I did this in C++. It uses a custom data object that gets attached to the animation. It stores the relative locations for the hand at a given time step. When performing the trace it can then get the relevant hand position and applies some offsets based on the weapon and socket locations. You can then use these locations to get where the traces should be. (start and end)

Because it's baked data, you can get points across a time range. Not perfect though as if the character physically moves to quickly it becomes off. Adding to that, each skeletal mesh using the same skeleton will need its own baked data for the animation as changes in the bone lengths affects it.

flat jetty
#

Found out this way.

hybrid lily
#

Greetings, I hope you are well and that all your projects are going as you expected 🙏 🤠

I need help with my project, please. I'm currently working on an interaction system, but I don't know how to create 5 different types of interactions with the Enhanced Input Action (Interact, Toggle, Hold, Hold & Release, Repeated Press)
I created an Enum_InteractionType with the 5 different types
Let's imagine that for a certain type of interaction action, certain conditions, or object states, I would like the types to vary, as well as the associated parameters. For example, sometimes an object with the interaction action "Unlock" can be a 2s Hold, and sometimes it can become a 5s Hold, or sometimes a 5x Repeated Press, etc
All this with the same interaction key
Do you have any idea how to do this, please? 😢

faint pasture
odd kiln
faint pasture
runic terrace
dark drum
runic terrace
#

Oh so baking happens in runtime?

odd kiln
#

I need to find a way to do that.. lol

dark drum
hybrid lily
faint pasture
#

it can handle it from there if it's meant to be a toggle or hold or single press or what

dark drum
#

A better solution would be to get the data directly from the AnimSequence but the function I initially used was editor only (would be missing in a build) and I couldn't for the life navigate the mine field of replicating the behavior but at runtime.

faint pasture
#

Pawn:
InputActionInteract -> Pressed -> ThingI'mAimedAt.InteractStart
InputActionInteract -> UnPressed -> ThingI'mAimedAt.InteractStop

ToggleBP:
InteractStart -> State = !State

HoldBP:
InteractStart -> play timeline
InteractStop -> Stop Timeline -> Check if enough time passed

SinglePressBP:
InteractStart -> DoThing()

runic terrace
#

Pre-baking it makes way more sense imo

faint pasture
#

You're already doing so much work in animation, it's totally trivial to calculate a few locations

#

you just need to have some minimum timestep you consider to be the floor, and sample inbetweens if needed if the game fps is too low

odd kiln
#

I guess pre-baking traces is only doable with C++ right ? And maybe store the data for each animation into a CSV file ?

faint pasture
runic terrace
#

You can use editor utility bps to do it in bps

dark drum
runic terrace
#

Ah yeah accessing the frame data already gives you the same info

faint pasture
#

Can you arbitrarily sample animations? I haven't dealt with animation much

hybrid lily
# faint pasture Pawn: InputActionInteract -> Pressed -> ThingI'mAimedAt.InteractStart InputActio...

I'm really sorry, I didn't understand 😟 🙏

Currently I have an AC_InteractionSystem (which manages the LineTraceByChannel) and which has the EnhancedInputAction, then which calls a BPI_Interact

I also have an AC_Interactable which must be either on a Character (because I want to be able to interact with other players), or a vehicle (pawn) or interactive objects (Actor). So I think I'll add the AC_Interactable in a Parent Actor (Master) and then create Children of the different interactive objects

faint pasture
#

like, "substep" your animation BP?

odd kiln
#

My animations are "Montage"

faint pasture
#

What defines if an object is able to be interacted with, having a component, or implementing an interface?

odd kiln
#

So I need to spawn a trace at each "substep" of the animation montage if I understood correctly the concept ?

odd kiln
#

And can I access to this information into blueprint ?

faint pasture
#

The problem is when your framerate is so low that a smooth weapon arc becomes a triangle

faint pasture
hybrid lily
# faint pasture why are you mixing component AND interface?

I want to use GameplayTags for the different interaction actions, and therefore store variables in the AC (I think)
I also use the LineTrace Primitive Component, because I want to interact with different components of certain objects (machine with several buttons, drawers in a cabinet, etc.), and therefore sometimes to open a drawer, it can be a "Hold" type interaction for 2 seconds, and if the player is injured, it becomes "Hold" for 5 seconds (an example)

faint pasture
#

I'd first investigate if arbitrary sampling or substepping of animation is possible, and how hard it is

dark drum
faint pasture
#

Trace -> was the thing I hit an InteractableComponent? -> yes -> call InteractableComponent.Interact on it

dark drum
faint pasture
#

Actor can implement stuff in response to that

runic terrace
#

A workaround comes to mind is to have a skeletal mesh hidden in the level that you can set animations with specific time values to, and iterate for each frame for the duration of the animation. You can iterate multiple substeps and access positions for each frame

#

Which is very stupid but would probably work

faint pasture
runic terrace
#

It would

dark drum
runic terrace
#

You'd still have that problem even if you had access to animation frames directly in runtime no?

#

You still have no blend data

hybrid lily
dark drum
#

Still wouldn't be perfect though.

runic terrace
#

Tbh bake method would just work out of the box with no issues, and is a legitimate solution instead of a hacky workaround

#

If I were to do it I'd just bake them

odd kiln
#

The problem is even if I could spawn a trace for each sub step of the animation, when my framerate will be too low, I still need baking the data before..

#

But it seems I can't bake these in blueprint

runic terrace
#

You can do it in a editor utility blueprint

#

I bake my custom nav meshes in bps

dark drum
odd kiln
runic terrace
runic terrace
#

You can read data from your animations and write them into data assets

#

During runtime you can just access the data asset and read the animation frame values already baked in

dark drum
odd kiln
#

Thank you guys, I'll try that ! Hope it will work

frosty heron
#

I already opt to use baking but I think for bp only user.

#

They can just define a trace shapes and add them manually as an array of struct.

#

Would be a manual labour but at least they can define a shape that is good enough to hit something.

odd kiln
#

Yes because I also tried to do a "Fill Gaps" thing which creates a new trace between each current trace

#

But even with that, at 10 fps for example, it does not hit

frosty heron
#

@dark drum is the FAnimPose the editor only data? Or the UAnimPose extensions?

odd kiln
#

I mean I can see my traces going through the collision, but I don't know why, it's not hitting..

dark drum
#

Probably UAnimPose though. I think the FAnimPose is runtime.

odd kiln
#

But it's not returning the Capsule Collision Hit component

frosty heron
#

Print string what you hit

odd kiln
#

I surely put a Multi Box Trace by Channel node

frosty heron
#

Make a new channel that just hit the component you want or opt for multi traxe

odd kiln
#

It hits the Capsule Collision randomly, sometimes it hits, sometimes not, and when it does not hit the Capsule, this is the screenshot above

frosty heron
#

Did you set to block or overlap? A block would have block the trace and stop the trace from getting any other component.

odd kiln
#

But with a Multi Box Trace it should be ok, isn't it ?

frosty heron
#

No it is not

#

A block would stop the trace

odd kiln
#

But if I set to overlap, the trace does not work at all

frosty heron
#

Multi shape trace or multi line trace can get multiple overlapped components

#

Well you want to check your settings.

odd kiln
#

Oh wait, I will set all to overlap

#

You were right, it was the "block" thing, I did not know that the Block Reponse stops the trace.. thank you so much

odd kiln
#

Ok now I have the Sphere Trace with Current and Previous infos to "fill" the gaps

#

But I can't find a way to make the Trace going from Top to the Bottom of my Weapon

#

I already made two sockets into the Weapon mesh

#

This is my code

flat coral
#

What is this bullshit?

frosty heron
#

Click on the drop down and type bp elevator, see how many comes up

flat coral
#

WHAT there ARE two. But I only ever made one?

frosty heron
#

Human error happends

#

Look into your content folder

flat coral
#

Not to me! 🙂
Turns out a hallway mesh pack I imported also included an elevator BP for some reason.

tiny monolith
#

Unreal Engine socket position changes in different animations and skeletons

azure haven
#

Hello! I have a problem with the positioning of my Actor. When I move the Actor in my Scene the Mesh doesn´t move. Why is that?

fervent jolt
#

its because your mesh component isn't childed to your root component somehow I think.

fervent jolt
azure haven
#

found the problem...

#

don´t know why it does that but ok

trim matrix
#

In what scenario would you use casting instead of blueprint interfaces?

azure haven
trim matrix
azure haven
#

its okay to do it, but don´t use it to much

azure haven
frosty heron
#

This is youtube 💩 misinformation.

#

Interface is never replacement for casting.

#

Read the article Unreal myth buster by ari from epic.

fossil gazelle
#

Any idea why I might not be able to find the "load stream level" node? All that comes up is "load level instance". Tried with and without context sensitive

runic terrace
#

Casting an already loaded object is absolutely fine you don't need to avoid it

frosty heron
#

The casting it self does no harm.

#

Casting to blueprint asset however load the dependency.

#

So casting to native class is next to free.

#

One can only get soo far doing everything in bp.

#

The notion avoid casting is just simply harmful

runic terrace
#

But yeah casting is not inherently bad as long as you don't overuse it with no care

frosty heron
#

Casting to blueprint asset force the class to be loaded

#

That's the issue with blueprint cast

#

Soft reference is another topic imo.

#

Casting is almost free. It's the hard reference to a blueprint asset that force the class to be loaded even when they are not needed.

#

Infact interface call is tiny bit more heavy than a cast. Regardless for performance they are irrelevant.

The only thing that matter is what people are casting to. Native class 👌
Bp asset = create dependency and has to be loaded.

odd kiln
#

Sorry, another question : Even if I do a "collision overlap", will it skip certain frames of the animation if it's too fast or FPS are low ?

#

(I mean a Capsule Collision attached to the Sword for example)

#

And call "On Component Begin Overlap"

surreal wagon
#

Hello! I'm using a physics door but I also want it to use a key, therefore it needs to enable/disable the physics constraint. Does anyone know a way to do it through blueprints? Thanks.

runic terrace
#

Resulting in stuff in the middle not get overlapped at all

knotty flare
# odd kiln Sorry, another question : Even if I do a "collision overlap", will it skip certa...

If I recall correctly, components attached to actors will not sweep by default - therefore yes, overlap events could be entirely skipped if the delta between two frames is too large and the item to collide with is outside that collision on both frames.

You could look into the setting 'Use CCD' on any primitive component (Continuous Collision Detection)
There's also the possibility to sweep trace between last & current positions to verify if any collision was missed.

knotty flare
odd kiln
#

So if I have to "sweep trace" between last & current positions, it's better to use sphere trace, isn't it ?

runic terrace
runic terrace
#

If you need multiple overlaps use multi sphere trace

odd kiln
#

What I actually have is a Sphere Trace in the Tip of the Sword, and my Start Trace is my Previous Position, and my End Trace is my Current Position

surreal wagon
odd kiln
#

But what I want is to make a Sphere Trace between my Sword Base and Tip + calculate Actual and Previous Position

runic terrace
#

You have to do it for each axis, not sure if there is a way to set all axises to locked at once

#

These are the nodes you need

odd kiln
#

The Capsule Collision looks very clean in the video

frosty heron
#

Could be just pre defining the collision with time stamp

odd kiln
runic terrace
#

The animation you see is probably purely visual

#

The actual thing that drives the collision trace is probably the raw animation data either pre-baked or read from memory

frosty heron
#

Think about run time, if you don't have the necessary info (from the raw anim or w.e)

runic terrace
#

You need multiple traces in a single frame, not possible if you rely on your visual animation

frosty heron
#

In 2 frames and you are doing 180 degree

#

How do you suppose to know the angle the sword is going ?

#

So you can't even lerp it

odd kiln
frosty heron
#

Unless you have the info to fill the blanks

frosty heron
odd kiln
#

But for complex animations manually it will be tough

frosty heron
#

Preferably automated by baking sockets and montage but with brute bp only then perhaps you have to type the data manually

frosty heron
#

Not like ufc combat where people fake punches

#

You gotta work with your limitations or just learn what you have to learn.

odd kiln
#

Ok so even if I know the angle, let's say, my attack is from left to right. I need to spawn a Sphere Trace on the First frame of the animation montage of the attack

#

And then ?

#

Maybe I have to create a Spline for each animation ?

#

And set X number of points in that spline

runic terrace
#

Same problem with splines, if you move too fast there will be jumps in your trace

#

You need multiple overlap traces in a single frame if you have low fps

#

Lower the fps, the more traces to compute in a single frame basically

#

That will make it framerate independent

odd kiln
#

With the Spline I mean, not in runtime, I create manually the Spline before for the animation, and in runtime, I use a Timeline to spawn Sphere Traces at each point of the spline

#

When my Player triggers the attack

#

When you say delta time, you mean the "World Delta Seconds" node ?

runic terrace
#

Would almost work.
Instead of each point, you can make it spline time based (0 at beginning of the spline and 1 at the end)
You can then say I will fire a trace for each 0.05 unit increment

#

Example:
So if your swing takes 1 second and you have 10fps:
1/10 = 0.1 is your delta time
0.1/0.05 = 2

You need to compute 2 traces each frame

odd kiln
#

So I need to multiply this World Delta Seconds by something in the timeline, right ?

#

I need to divide it with the "0.05" unit

#

I mean

runic terrace
#

Example:
Attack swing takes 0.5 seconds.
You want to fire in total of 20 traces (Resolution of the traces)
You have 60fps

If you have 60fps your delta time is 1 / 60 = ~0.016
Your increment step for traces is 1 / Resoloution * SwingDuration (1 / 20 * 0.5 = 0.025)

AccumulationTime = 0.0
TraceTime = 0.0

Each tick, increment the AccumulationTime by your delta time.

Each tick you check if your AccumulationTime is greater or equal than 0.025, if it is:

  • Fire a trace corresponding to the spline position at TraceTime
  • Increment TraceTime by 1/Resolution = 0.05
  • Decrement AccumulationTime by 0.025
  • Repeat until AccumulationTime is less than 0.025 or TraceTime >= 1
#

That's if you use the spline method

#

When TraceTime >= 1 then the swing is completed basically

#

This would ensure you fire in total of 20 traces in the span of 0.5 seconds regardless of your framerate

odd kiln
#

Ok thank you so much for this method, I guess I will try this it seems lik a solid method, right ?

#

But now I'm thinking about one thing... why can't I make this same calcul for a simple Sphere Trace with a "Set Timer by event" and on the "looping time" I set the calcul you did ?

#

Hmm because the timers are frame-dependent, no ?

runic terrace
#

Using a timer is cleaner but might be less precise. This guarantees frame drops will not skip any traces while timers have no time accumulation mechanism so they might skip a little

odd kiln
#

My animation is so fast that it does not spawn traces

odd kiln
#

With the spline method, do I need a Timeline ?

runic terrace
#

No just a tick

odd kiln
#

I just need to change the "Start Trace" and "End Trace" locations ?

#

But is this method will work when my Animation is moving too fast ?

runic terrace
#

Yes you need to get the Trace Start and End locations by getting the position at time of the spline

runic terrace
odd kiln
runic terrace
#

Length of the sword basically

#

how long the swipe range will be

odd kiln
#

I can get the Distance Vector from Base to Tip of the Sword for that

#

right ?

runic terrace
#

Yeah

odd kiln
#

So I need to create the Spline at the base of the Sword, and not the Tip ?

thin shell
#

Hi there, I have a trouble with the node "get class default". On the tutorial i'm looking, the guy have pins but in my case nothing appears. What do i have to do to make them appear? 😅
To sum up, it's a datatable with solf class reference in the Item. And those items are in a blueprint. Also in a datatable (different one, with name, quantity etc).

runic terrace
olive yarrow
#

So... I've got two characters that can issue commands back and forth, they both share the exact same blueprint structure.
But for some reason when i go to control my second character and open up the commands widget, when i press 1 to select all units - that all works dandy and the next screen all opens correctly.. but for some reason my first player triggers their Advance movement... which isn't even called here. Literally no print strings trigger to indicate that the second player sent an advance command other than the original blueprint letting me know it was told to advance.

What in the shit is goin' on?

odd kiln
#

My spline has 4 points to make the curve

thin shell
# runic terrace

it seems to be the same problem :/ Maybe i need to check somewhere something to make them appear?

runic terrace
#

You might need to cast it to your class

odd kiln
odd kiln
thin shell
runic terrace
#

This is probably not the solution but I just noticed this

#

Can you screenshot your trace start & end?

odd kiln
#

Start is above and End is the output of the "+" node

runic terrace
#

You need to repeat the check until it's false

#

use a while loop instead of a branch

odd kiln
runic terrace
#

No the rest can stay the same

odd kiln
#

Because you put a cross on it

runic terrace
#

just change the branch to a while loop

runic terrace
odd kiln
#

Oh ok lol thank you

thin shell
# runic terrace

Is it possible that my soft class reference i'm using for my item doesn't have pin? Do you know how can i make them? 😅 I have tried with another table and it shows pin
I am not sure if i need the AAsimpleclass item or the datacomponent 😅 (Another tutorial i didn't understood while making 🤯 )
because technicalli, the structure i'm using, uses the AAsimple item to search for the blueprint i need

But at least now it shows something ! Thanks already ! haha

odd kiln
runic terrace
#

that was for the branch, not needed with the while loop

odd kiln
#

Resolution = 20 ; Attack Duration = 0.5

runic terrace
#

Yeah looks like it

odd kiln
#

Well I don't understand the infinite loop

runic terrace
#

hm, I think it might be the 1/Resolution

#

I wonder if it's returning 0

#

make the resolution a float instead of an int

odd kiln
#

But I have 2 issues

#
  1. The traces not going into the end of the spline
#

They stop at the middle

#
  1. And the rotation is not good
runic terrace
#

they stop at the middle?

odd kiln
#

And I thought that the Sphere Trace will be from the Spline Location to Forward, but here it's following the rotation of the Spline

runic terrace
#

Now why does it stop in the middle is strange

#

can you print the trace time?

odd kiln
#

LogBlueprintUserMessages: 0.05
LogBlueprintUserMessages: 0.1
LogBlueprintUserMessages: 0.15
LogBlueprintUserMessages: 0.2
LogBlueprintUserMessages: 0.25
LogBlueprintUserMessages: 0.3
LogBlueprintUserMessages: 0.35

#

Maybe I have to increase the amount of the Attack Duration ?

runic terrace
#

Why does it stop there prematurely, is it not on tick?

odd kiln
#

But no matter the Duration, it should complete the Spline

odd kiln
runic terrace
#

We entered the duration as 0.5 seconds, if your animation is shorter than that it will cut it in the middle

#

You can set the duration to your animation's duration

#

Ideally you wouldn't tie this to your animation

#

Stop it when TraceTime is greater or equal to 1

odd kiln
#

Or I add a branch at the end ?

runic terrace
#

No you can set your bool at the end of the loop body of the while loop

#

Yeah you can add a branch at the end of it and turn the tick off if TraceTime is larger or equal to 1

odd kiln
#

So at the end I add a Branch if TraceTime greater or equal to 1 ?

runic terrace
#

yeah

odd kiln
#

Ok I try this right now, thank you

odd kiln
#

So I need to calculte the Duration of this "Anim Notify State" right ?

#

To set the Duration variable correctly

runic terrace
#

yeah

odd kiln
#

You know (maybe) if I can get this information through BP ? (I know I'm asking you too much, you already helped so much.. thank you very much)

runic terrace
#

You can create an anim notify bp and do this inside the notify itself

odd kiln
#

AnimNotify simple ? Not "Anim Notify State"?

runic terrace
#

not sure I dont remember the exact naming

odd kiln
#

Because with this method I need to have the Duration of the AnimNotifyState before

runic terrace
#

You can set the duration in the montage notify itself, and the notify would call the event to start the sweep while passing the duration as a variable

odd kiln
#

Yes I have a "Total Duration" pin in the Anim Notify State BP

#

Thank you so much

runic terrace
#

does it work now?

odd kiln
#

It's all good for the moment

#

Thank you so much very very much

#

I just need to find a way to create my Animations Splines

#

And maybe to store them into a Struct or something

runic terrace
#

We came full circle to baking lol

#

But yeah you can store the spline points in structs

#

You can then override the spline with the new data during runtime

#

And the sweep would occur like normal

odd kiln
odd kiln
#

So I need an Actor to play each animation and create a spline and store the points

runic terrace
#

Alternatively you can create a data asset for it

#

For storing the data

odd kiln
#

In the Data Asset I store the Data of every animations ?

runic terrace
#

Create a Primary Data Asset for storing spline data
Then create Data Assets of that type for each spline you need

odd kiln
#

But which class of Data Asset can Store that ? It will store the Spline entirely or the Locations of Spline points ?

runic terrace
#

You can store any variable inside Data Assets

odd kiln
#

So first a Primary Asset Label

runic terrace
#

You can think of them as being somewhere in between of a struct and a class

#

You can store them as assets like classes, but you use them for variables like structs

odd kiln
#

The easiest will be to create the Spline with an Actor which will play each animation of the game, and then Store the entire splines into an Asset

runic terrace
#

You can automate that task with an editor utility blueprint so you don't have to do it by hand every time

odd kiln
#

I will search how to do that, thanks !

runic terrace
#

And you probably don't need to play the animations, you only need the spline data and that's not tied to the animations directly

odd kiln
#

You mean I don't need to play the animations to store the Spline ?

#

I need to play each animation to have an accurate Spline

#

And while each animation is playing, I need to create a Spline at the base of the Sword (blade)

runic terrace
#

oh so you want to generate the splines automatically

#

yeah you can do it like that then

#

you'd only need to do it once

odd kiln
#

Yes, if I create the splines manually for each animation, it will take too much time. I have many animations per Weapon

runic terrace
#

Once you store the spline to a data asset the game can just load that

runic terrace
odd kiln
#

With the Data Asset thing etc.. it's new for me so I have to learn how to use that

runic terrace
#

They're very useful once you learn them

odd kiln
#

I hope it will be not very complicated to make what I want lol

vale pine
#

Is there a way to allow **abstract **class references in a class variable here?

vale pine
#

For example, I may want to test if something is in a base class of "Weapon," but I can't do that from a variable since it won't allow the class "Weapon," which is abstract.
An abstract class can be set directly using ClassIsChildOf, but it doesn't allow arbitrary classes for different situations, which I'd need.
For now, I've just made the base classes concrete, but wondering if there was a better solution.

frosty heron
#

They can't be used as is and must be derived.

#

If you want to spawn it then don't make the class abstract

tribal gazelle
#

I need to generate overlap events so my bullets can impact the meshes, I've changed all the meshes to do so, with physical materials, but inside my level instance they are not updated.. is there something I have to do for the level instance to show the changes?

vale pine
# frosty heron If you want to spawn it then don't make the class abstract

But I don't want to instantiate the class. I want to use it to test if another class is a child of the actor class variable. Example in the image.
Without a variable, an abstract class can be selected directly using ParentClass. But then you can't make the base/parent class arbitrary for different situations.

wispy kayak
#

Hi, I've got another problem though.

I click Actor [0], change the mesh. Reload the level and change the mesh again, it works fine.
But after that, I click Actor [1], change the mesh. Reload level. The actor [0] also got changed the mesh to its original.

After I reload the level, I change to Actor [1] , I also want to keep the mesh on Actor [0] not to reset it.

How to overcome this? What's the best way to approach this?

frosty heron
#

Assuming you are testing against native class anyway since I don't think you can mark class as abstract in bp afaik.

vale pine
naive herald
#

Can I call an asset picker or something in the blue print? The goal is to launch an asset selection window when the blue print is executed

frosty heron
#

Cool, didn't know that.

naive herald
frosty heron
#

You kinda can

#

But i don't have editor on me

#

Iirc it's about exposing the variable

naive herald
#

I've searched things, but I don't know yet except for single propertyview

frosty heron
#

That's the one isn't it?

#

From the top of my head it says something about view

naive herald
#

I made it like this

odd kiln
#

I can't update a DataTable at runtime, right ?

#

So if I want to store a Vector Array permanently, how can I do that ?

frosty heron
#

You can just get the underlying mesh / value

naive herald
#

I want to manage the sequence with an asset picker

odd kiln
# surreal peak SaveGames

I ended up by creating "Data Assets" to store my Data instead of Data Table as I can't update it at runtime

#

Thank you !

surreal peak
#

DataAssets are also supposed to be read only.

#

They are Assets. You wouldn't modify a Texture Asset either.

odd kiln
surreal peak
#

Sure but they are still meant to be read only

odd kiln
#

But I can modify a variable into it

surreal peak
#

If you are 100% sure that this is fine to modify an asset for, which means that's what its default value from there on is and you gotta make sure you save it etc. then sure

surreal peak
#

You can even doctor around on the blueprint asset that makes up your actors and what not. Should you? Only if you know what you are doing

#

If it's not during runtime then you can use your data assets fwiw.

#

Just be aware that you literally modify the asset and there is no "default" you can be back to automatically

cerulean cape
#

Hi, When I print this out in player controller blueprint and running a server-client network, client will print out the server character, how can I get the correct pawn that my client is controlling?

frosty heron
#

You dont want to bind input on characters that are not yours to begin with.

#

Use is locally controlled when binding the input.

cerulean cape
#

I guess is to check during possession?

solemn shale
frosty heron
#

Client calls a function called acknowledge possession but that's not blueprint exposed

cerulean cape
frosty heron
#

I think you have a misconception.

#

Every players running their own instance.

#

The world is not shared per say. We are not running the same instance.

#

You run your game.exe, and I run my game.exe

#

Each running their own codes.

#

Multiplayer is about communicating between machines so the respective world is seemingly in sync.

cerulean cape
#

In my player controller cpp overriden function

frosty heron
#

Also to reiterate, client only know their own controller and no one else.

frosty heron
cerulean cape
#

SetupInputComponent()

frosty heron
#

If you can use cpp then do the binding on AcknowledgePossession

frosty heron
#

You can move them on acknowldge possession for client and OnPosses for server.

#

And don't forget the is locally controlled check.

#

If you are doing them on begin play then you are doing it wrong.

#

It would have been called way before the player even possess the pawn.

cerulean cape
frosty heron
#

Check where it's being called

#

Do a break point and watch the call stack

#

By default I think they get called on begin play if you use template

#

Which would only work for single player.

cerulean cape
#

Alright let me check, thanks a lot

odd kiln
#

Anyone knows if I can play a Montage without running the game ?

#

I mean I have a Character in my Level, I want it to Play a Montage without pressing button "Play" in the Editor

frosty heron
odd kiln
#

Hmm that's bad, I'm only in Blueprint :/

frosty heron
#

Always good to level up early

odd kiln
#

Because what I can do is to Play Montage into the Construction Script

frosty heron
#

You gonna hit the wall sooner or later anyway.

odd kiln
#

I can't find any videos or documentation that explains how to implement this even in C++

#

Maybe I'm not searching with the right terms

frosty heron
#

Yeah you don't. You kinda just have to learn programming then translate what you need into codes.

#

But with cpp you get accessed to most of the engine

#

Things like the anim data etc.

#

Making a custom button for the editor where I can just click to start slicing the ans and replaying montage at a click of a button.

#

Ngl wasn't easy for me.

cerulean cape
#

doesn't seem like it is called on beginplay

frosty heron
#

Add a breakpoint

cerulean cape
odd kiln
frosty heron
# cerulean cape

So your input is set in the controller level and not the character?

cerulean cape
#

Yess, inside SetUpInputComponent

frosty heron
#

I binded mine on the character.

#

As for the controller. Client only have their own local controller.

#

So explained the issue again?

#

Are you sure that when a client press something it prints on the copy of the character that is the host server?

frosty heron
#

Provided the input is in an actor that the client own. E.g the character or controller

cerulean cape
#

I think the locally controlled check is done in the super class, I think I need to check the printing again

sand yacht
#

Is there a way to get ai to detect the players flashlight?

bleak moon
#

you could set up the flashlight to be an actor that the AI can detect the same way it would detect a player

sand yacht
#

With the was recently rendered node you mean?

dark drum
sand yacht
#

Yes exactly

#

Players should be able to hide, and if they turn on the flashlight AI should be able to see the light wherever it hits and investigate

bleak moon
#

you could do a ray trace to where the light is hitting, spawn an actor at that position and if the AI see's that actor it moves to that location

dark drum
# sand yacht Yes exactly

Not easily no. All that stuff is calculated on the GPU of which it's just stacking coloured pixels.

sand yacht
bleak moon
#

i cheated a little when i tried to do a similar thing. i just added a capsule collider to my flash light that if it hit the monster they knew where the player was. not the greatest approach but fake it until you make it really

sand yacht
#

This was my initial approach as well, but there's quite a few issues with this if your environment contains loads of small corridors and rooms

dark drum
#

So this?

bleak moon
#

yeah without doing some major calculations to check each point of where the light is hitting and if that can make a path to the AI i'm not sure what could be done

sand yacht
#

I thought of adding an array of scenecomponents manually to the cone of the flashlight in different spots, and line tracing from the player to each point, and from the ai to each point in intervals. Then if both line traces are unobstructed this means the ai sees the light

#

But I wondered if there was a more modular approach

dark drum
# sand yacht Exactly

This is where a cone trace would be handy but... When the torch light is on, trace into the world and if it hits something, add a tag to it. (IsIlluminated) And then the AI can trace in front of itself and if it hits something with the tag IsIlluminated, it then does another trace from the hit location to the player character. If it hits the player (nothing blocking) you can assume it's looking at an area lit up by the torch.

sand yacht
#

Is a conetrace something that I can find in Unreal by default or do I have to get the plugin for that?

dark drum
sand yacht
#

Alright that's definitely a good approach I feel like. I'll see if I can get that to work thanks for the help!

dark drum
#

Another approach is similiar to what Rory was saying and thats to use some sort of actor. You can do scatter traces and if it hits something it places an actor. (Or move ones already created). Anything hit could have multiple of these actors placed on its surface with a density amount to control how many it can ever spawn. These would just have a small sphere collision in them. The Ai can then trace for these instead.

#

For this method though you'd need variable actor amounts based on distance as the further away a hit is the more surface area there is. Again more math. 😅

sand yacht
#

Hahah yeah I figured this was going to require some math 😂

dark drum
#

The tagging method could be better if you wanted them to be aware of any light source. Especially if you look at creating a custom user asset data object that you can add to just about anything. You could then store more information such as whats shinning on it and its approximate distance, event if it recently started receiving light.

Custom User Asset Data object require C++ though as you can't create children of the base class in BP. :/

small moat
#

hey, is there any way to make unreal only spawn 1 shared player camera manager for all player controllers in local multiplayer instead of one per player controller?

surreal wagon
#

I have a problem where: after picking up a key, the game detects the door that is assigned to. Then, opens the door. But the key (and the door within it) is in an array and I don't know how to access it. How can I solve this? Thanks.

dark drum
#

Pull from the array and call 'Contains' on the array, there's a different one arrays and maps.

On a side note: that interface call event is pointless.

whole citrus
#

Hello! I'm looking to have many moving objects (dynamic transforms) in the background of a map. I'm currently using timelines on each instance of each object but this isn't very performant. What is the most efficient way to accomplish this?

surreal wagon
whole citrus
surreal wagon
whole citrus
#

Thank you

surreal wagon
#

I did with ugly casts but it's only on click, so there's barely an impact on performance. Thanks @dark drum

dark drum
young meteor
#

Hey folks

I'm confused at the moment about why my pawn won't move.

It works if I start up the level directly. Then I can click somewhere and the pawn moves (TopDownCharacter Template with some modifications).

But if I start from the menu, load the level, and spawn the actor at the right location with the shown node, it will not move. Even though the function does fire (second screenshot)

#

I've set the default Pawn to "None" in project settings by the way. To avoid spawning it in the menu map.

dark drum
young meteor
dark drum
#

As the player can only possess one thing at a time, it won't automatically posses a new pawn just because it's been spawned.

maiden wadi
#

@young meteor Look in the pawn's Defaults around the associated AI controller. It has a setting to auto possess when placed in level or spawned.

#

Alternatively, change your SpawnActor to SpawnAI

young meteor
#

The one right below it?

maiden wadi
#

Maybe. What are it's settings?

young meteor
#

(just set it to Disabled now. It was not before)

maiden wadi
#

You'll want it set to placed in level or spawned so that it'll make an ai controller for both.

young meteor
#

Was like this before

#

Didn't help.

maiden wadi
#

What is the rest of the code on that move line?

young meteor
#

I don't have a "Player Start" in my level if that makes any difference.

#

It's from the template TopDownCharacter

maiden wadi
#

Can you breakpoint this? Is it being called?

young meteor
#

It is. With a location too.

#

Also creates the "arrow" animation from the template BP where I click

dark drum
dark drum
# young meteor How?

Pull from the return value on the spawn actor of class node and call the posses function and pass in the desired controller.

maiden wadi
#

Doesn't SimpleMoveTo work with the ai controller as well though?

young meteor
#

(done in Level BP)

dark drum
young meteor
#

You want me to call the SpawnActor node from the player controller BP instead?

#

Then I do get the option I think you refer to

dark drum
#

Oh... The posses is on the controller and you pass the pawn class. 😅 My bad lol.

young meteor
#

Unclear to me what you mean

dark drum
young meteor
#

Tried calling this SpawnActor from the controller BP. Did not seem to make a difference.

outer brook
#

Hello fellas!

Can anyone tell me how i can keep an actor with a sphere? Assume the sphere is some kind of arena. I would liek the player to stay within the sphere but prevent him from going outside of it. How do I do this?

Using simple a Sphere-Mesh pushes the player instantly upwards on the surface of the sphere.

young meteor
dark drum
young meteor
#

It outputs the same controller if I start the Level directly. And then it works

#

It is only when I start the menu level, then load the sublevel in question from there, spawns the Actor (BP_TopDownCharacter) the same way, that it does not work for some reason

bold phoenix
#

Hi ! Anyone knows if there is a simple equilvalent to the MOUSE X Y AXIS input ?

spice viper
#

I'm trying to force a player to teleport to a specific spot when starting a dialogue. I have a vector variable on the actor where players are supposed to stand. You can move it around in the viewport on a level.

I need the global coordinates for where that is for the player but just adding or subtracting the vector from the actor's location doesn't take into account it's rotation. How do I achieve this?

broken dune
#

Hey guys. I have a weapon, that i attach to ik_hand_gun bone on a character. Weapon mesh contains sight socket, that i use to make some ADS system.
I find offset between this sight socket and head bone socket, and modify ik_hand_gun bone by this offset, to place the bone in a way, where sight socket aligns with a head socket. And it works. However, the rotation is not correct, and when i try to adjust rotation by finding delta between sight socket and a camera, the bone or just ignore it, or starts wiggling, continously recalculate rotation, since changing rotation by one axis changed action by some other axis.
I tried to rotate a bone with Transform(Modify)Bone node in bone space, and it works well only if i do it manually. Please, help me fix this, since i already spend 2 days to do this

terse condor
#

A little help finding a bug would by appreciated:
Simple door setup - I have an "Add Actor Local Offset" node run by a timeline, triggered in both directions. The timeline animates only the Delta Location Z by multiplying timeline output with a float variable (additionally multiply with -1 for reverse).
Now, when I run the script i have two issues:

  1. The float defined for my location offset multiplier does in no way represent the editor measurement.
  2. Running the script reverse does not restore the original location but running short. (i.e. Starting at z=0, timeline adding z=+20 and then reverse timeline doing only z=-18). Any ideas?
dark drum
leaden raven
#

how do i stop the rotation of the player/player start from effecting my movement? if any of my player starts, it affects where you have to push the left thumbstick for each player to move forward. I currently have the player starts all pointing in set directions, think all players on each corner of a square facing the middle point.

To describe the issue more, if i rotate player 1's player start by 45 degrees, it essentially rotates the thumbstick, meaning ive got to push it to the left/top left to get the player to move up

autumn pulsar
#

do deprecated variables get removed when cooked?

autumn pulsar
winter salmon
#

Hello
Does anyone know how to run a function on an item that's in the player's inventory?
Because when you run get actor or get all actor, it doesn't recognize that it's inside.

summer coral
#

how are you keeping track of the inventory items?

summer coral
#

got a silly one for you. Trying to figure out how to use common UI Carousel stuff and i want to make it so the nav bar buttons have words on them for what they navigate to, but i can't seem to find a way to be able to set that dynamically. Any ideas?

summer coral
#

ya

winter salmon
# summer coral ya

I have an inventory system for this YouTube channel.
I suppose because of the slots, which would be where the inventory items are.
https://www.youtube.com/watch?v=G9WrUFYANdc

Data driven inventory system fully replicated.
Thank you for watching! Please subscribe for more!

BP_Weapon tutorial:
https://youtu.be/gP6Scb_5y8I

BP_Weapon tutorial fix:
https://youtu.be/ZHC5dhp_gZ8

Marketplace Products:
https://www.unrealengine.com/marketplace/en-US/profile/NativeCoder

Discord Channel:
https://discord.gg/RVSMfv9BCG

Tags:...

▶ Play video
summer coral
#

so it looks like it stores the items in map

#

these arn't really actors at this point in time as they are not populated in the world as much as a reference to them that you will need to pull and populate the boxes and such with.

either way, what you would do is grab the item in the map (based on the key value you are looking for) and then run the function on that

winter salmon
#

I try, but since it is in an unselected slot, it does not recognize that it exists, even though it is in the inventory

summer coral
#

how are you grabing the map item that you are trying to get the ref to

winter salmon
#

with an independent pick-up
And I have a master object that has children that would be the elements

summer coral
#

can you send me a screen shot of the function you are useing to grab the item you are attempting to access

winter salmon
summer coral
winter salmon
tulip palm
#

im looking to make something like the super mario 64 slide, i tried using the "not walkable" setting on the third person character and it is similar but does not allow for much freedom of movement

spice viper
spare sorrel
#

Hey guys,

I'm working on an Unreal Engine game where when the player dies, a corpse is spawned, and that corpse gets added to an array. I want to limit the total number of corpses to 5—if more than 5 are in the array, the oldest one should be destroyed and removed.

The problem:
Even though everything looks connected in my Blueprint, the logic to remove the oldest corpse isn’t working. The extra corpses aren’t getting deleted when the array goes over 5.

Any ideas on why this might be happening or how to fix it?

Thanks!

#

I've send the main blueprint here if you need furthermore explanation or anythign else let me know

#

🫂

spark steppe
#

that array is on the same actor that you destroy in the first Sequence step

#

you would have to store it somewhere else

#

you could also handle it all in the corpse actor class, add a timestamp float variable which is set to the gametime when the corpse is spawned, then GetAllActorsOfClass(corpseClass), sort by age, destroy the oldest one (if there's more than 5)

spare sorrel
#

could i store it in the gamemode BP?

#

for example

spark steppe
#

that might also work, but you'll end up with a bunch of BS if they go back to the main menu and start a new game

#

afaik the gamemode is persistent?

#

i wouldn't do it in the gamemode, even if it might be an easy solution, i feel like it's the wrong approach

spare sorrel
#

yeah, i believe that in some moment it also gets deleted or touched in some way, ill try the timestamp metod

#

sounded fun to mess around too

spark steppe
#

someone here might have an better idea, since BP doesn't have any good sorting functions iirc

#

so it's either a pita with a loop, or a third party plugin

spare sorrel
#

thank you either way bro

#

i'll tell u if it worked 😄

steady night
#

Hi question. in my game my player can get like 20 "Abilities" if u will, is it bad practice to have each of them as a Actor component and adding that to the "player" when u learn it ?

#

having so many components must be bad ? rather then to keep all info for all abilities in 1 component

#

right ?

spark steppe
#

you are aware that there's a GameplayAbilitySystem in unreal?

steady night
#

yeah

#

but i wanna do my own

spark steppe
#

with 20 components...

steady night
#

no, well thats what im asking

#

if thats dumb or better to keep all in the same one

maiden wadi
#

Generally, don't use the same object for multiple different concepts.

spark steppe
#

not having it handle by one component is a fricking mess if you ask me

#

put the logic in normal objects and keep them on the component

steady night
#

so your saying different things xD

#

or u preffer different ways rather

abstract locust
#

hi does anyone know how i can get my first person arms to move with the camera shake, right now there attached to the camera and i tried attaching it to the camera managers transform component but that wasn't working, anyone know?

hybrid lily
#

I can't seem to find the precise answer to my question 😢 😄
When we want to work with actors in our project that have multiple interactive elements (I'm thinking of a car with doors, seats, and buttons, or a machine with buttons, a cabinet with drawers, etc.), what type of Blueprint should we work with?
Because Epic says we should avoid using Child Actors as much as possible (especially for my multiplayer project, which requires good replication), and the problem is that if I use Components, it's difficult to assign logic or Gameplay Tags to Components (unless I'm doing it wrong). Afterwards, I also thought about creating a "StaticMeshComponent" Blueprint directly...
But it's been around for years, so there must be a professional and optimized way to do this easily, right? 👀

drowsy gorge
snow halo
#

Is it possible outside of PIE in the editor with A BP function's CallInEditor to set a variable on the actor instance, then use the Apply Instance Changes to Blueprint feature in the details panel to commit it to the BP class defaults?

#

I've been trying with no success

surreal peak
#

If it's not possible in BPs, then potentially via C++.

snow halo
#

The odd thing to me is that even in simulate, when i press my button to set a var in the actor, it doesn't seem to update the var values (tested by making the var instance editable so i can see its values in the details)

snow halo
surreal peak
surreal peak
#

But maybe you are better with python than me.

snow halo
#

ya im useless w python anyways hehe

#

i'm surprised tho what i'm doing isn't working. Pressing the function button on the instance does print the correct values w print string

#

so i'd think it is setting the var, but not sure why it's not updating it at all

#

in a nutshell the goal is to use CallInEditor on an actor to at least change the var's value on the instance. then I'll commit to the CDO (sorry repeating just to rephrase) : )

snow halo
#

I was just doing something dumb

hybrid lily
signal bane
#

Is there a way to open and look at a level blueprint without that level open?

#

Like I'm pretty sure the answer is no, but I figure I'll ask just in case

spark steppe
#

isn't there an option if you rightclick the level file? nvm

hybrid lily
#

Thank you so much for your help 🙂
I'm trying to do some tests. I'll create a function in my Parent Actor, then I'll call this function from the Construction Script. This way, I'll normally have the child actor attached to the parent actor from the start. I just need to figure out how to configure this, but I'll figure it out, haha ​​(I've been learning development for a year). Thanks again 🙏 🤠

narrow sentinel
#

Anyone know if theres a way to debug collisions

#

my projectile settings is that

#

the Mesh of the AI is that

#

and it doesn have a physics asset as it's the Mannuquin

#

when I'm firing my weapon though it seems to go through the Enemy rather then it hitting them

gusty shuttle
#

The mesh of the AI Pawn needs to be blocked?

onyx ivy
#

Hello, I currently have this setup to slowly increase the wind strength of a global foliage actor but each time the foliage is updated, it does a kind of flicker motion like it's resetting. Is there a way to fix this?

terse condor
#

Does anyone know a way to reduce float to decimal/ two point precision? I want my 0.56998 float to be stored/processed as 0.57.

maiden wadi
terse condor
terse condor
narrow sentinel
#

Anyone know how to solve the issue of when character is moving forward the projectiles stopping mid-air and not going forward in the forward direction

frosty heron
#

Don't overlap with the shooter

#

You can just print w.e component you hit and address it from there.

#

Is the projectile too slow? Then you may want to account for the shooter velocity on top of the projectile velocity.

narrow sentinel
#

so it turns out it was two things, one was I had the Enemy Pawn mesh set wrong and also wasn't doing the same stuff I do when a projectile hits the player

coarse marten
#

Is there a reason i have to delay my GameplayCamera by one frame for it to run correctly Thinc

#

This threw me into a loop for 3 hours, rewatched tutorials multiple times to be like "this should be relatively straightforward what did i miss", no avail, downloaded the sample project and compared, still confused until i realised the pin to tick the camera in the Camera Director was not running at all.

I noticed this happens with SetViewTargetWithBlend as well when i use the normal camera system, i have to delay until the next tick, otherwise it doesn't possess correctly and i don't know why, the example material doesn't do that.

stuck sparrow
#

Hey all. Does anyone know if its possible to pause/play a sequence from within its own sequence blueprint?

uncut elk
#

sup everyone , im curious about runtime data storing, ive been using Data tables of structs for various things , vehicles ,information for each level, stuff like that, but you cant set data tables at runtime in blueprint?

So I almost feel in alot of cases I should just keep an array of structs on my game Instance for things id like to change at runtime. I feel like this would also be better for mod support in the future too. curious of folks thoughts on the matter.

coarse marten
uncut elk
storm solar
#

For list view... how do I actually get the list in a form of an array? Or, how do I know what current button is being highlighted?
I want to change the color when the button is highlighted / selected and unselected with keyboard/ gamepad

coarse marten
dusky cobalt
uncut elk
dusky cobalt
#

if you modify struct and dont follow some stupid kind of ''rules'' to change, not save, reset engine, compile, you are risking that struct will corrupt your blueprints, won't be able to open them anymore or just forever think there is still that variable you just deleted, and last one is that your values you put will get reseted everytime when you open project

crimson elbow
#

Is there some trick to getting the asset manager to see a map that I'm requesting?
In the project settings, I have the asset manager set to look in the maps folder. But when I try to use the asset manager to find a map, it comes back null.

forest summit
#

I'm trying to find a way to set any variable within a struct without having to manually set a line for each variable. I'm making an editor utility widget if that changes anything.

sick sky
#

in simple terms

#

adding is usaually the safest, but renaming is broken

runic pollen
#

Why cant i refrence it to self?

sick sky
#

the function wants a Pawn

maiden wadi
noble ledge
#

Is it possible to see what a virtual bone target is set to?

burnt tundra
#

Is it possible to create temp variable like this in blueprint? Is this a local variable?

float someVar = 0.25f;

if (player) {
   someVar = player->GetHealth();
}
maiden wadi
burnt tundra
sand yacht
#

is it possible to change the rotation of a bone of a skeletal mesh in blueprint?

forest summit
# maiden wadi Set Members

Maybe I wasn't clear enough, I'll try to be more specific. I'm trying to make a function where I can input a variable and that variable will be set in the struct without changing the other variables.
I know that set members exists, I'm just trying to find a way to set any variable without having to set up a new set members node for each one.

uncut elk
# sick sky

ah i see,thank you, that might be why i havent run into it , i havent really needed to rename any of my structs, not yet anyway. ive mostly been adding new vars, tho rearranging the struct will at times break it but thats easy enough to fix for me. or to just not do.

maiden wadi
forest summit
frosty heron
#

With set member you can just set the one that you exposed

forest summit
maiden wadi
#

There's no way around it. You have a struct that can either be set entirely, or each member can be set individually(or multiple members at a time). If you want to affect specific members you have to only affect them with a SetMembers.

forest summit
#

ok that's all I wanted to check, thank you.
If anyone else can think of an alternative, even if there's some other way of managing data that I haven't thought of please let me know.

dusky cobalt
#

or create function that sets that variable inside struct, nothing else really when it comes to settings structs

#

Guys, what keywords do I need to ''research'' in this case:
I basically need to make this ''affect navigation mesh'' area smaller around the object.
When I remove it they have hard time avoiding it, I just wish I could control size of this area.

maiden wadi
#

You can't do much besides lower the size of the affecting primitive or make your navmesh generation settings use smaller scale. That gets really costly really quick though.

#

These settings here, mostly.

#

But these settings will only lower to the affecting primitive of course. So if that is too big, it needs shrunk as well.

maiden wadi
dusky cobalt
#

So if I set Acceptance Radius to 150, it gets aborted because of that, and I need the unit to ''touch'' the building. So I need to make it bigger and it just looks not nice.

maiden wadi
#

In general it might be better to use some insanely high cost to entry nav modifiers so that most AI avoid the area, but anything the NEEDS to go to it will still enter the area.

maiden wadi
brave jackal
#

Hi, who is understanding animations? I have a problem. When the character goes forward and everything is OK to the side. But when back and side, then the animation looks somehow strange. Can someone tell me what the reason is? (Screenshot - Event Graph, video - everything else):
https://youtu.be/bcmrwpmohde

maiden wadi
#

Need better keys in your blendspace by the sounds of it.

dusky cobalt
# maiden wadi In general it might be better to use some insanely high cost to entry nav modifi...

Basically, when I remove it that it effects navigation, units are bumping into it and sliding around instead of knowing to avoid that place. Maybe I should use some different approach like unit shoud have some collision around him and when in touch with that, we should apply some force?
Or if there was a way to attach custom ''hole'' with exact needed size in the nav mesh?
Or I should work on researching and modyfing unit movement character component and there add ''better pathfinding'' system?

maiden wadi
#

I would honestly just go with a nav modifier like I said. Most AI will path around it because the entry cost is too high. Only something that needs to specifically enter that area will enter it. And if you want to get crazy with allowing entry at specific points, you can also make use of NavLinkProxies too.

dusky cobalt
#

Thanks, that's enough to make some research. Nav Modifiers probably make sense. Just need to check how to use them exactly.

maiden wadi
#

Yes, but no. Your list entry itself should BE a CommonButtonBase, not UserWidget

#

And your Listview that you use needs swapped to be a CommonListView. Other than that, yes you'd use those functions you linked and everything else would remain the same.

storm solar
#

So on the the item list itself?
Im not sure what you mean by commonButtonBase.

maiden wadi
#

Do you see this if you search here?

storm solar
maiden wadi
#

Right. I'm saying if you use CommonUI it fixes these things so that the button itself can handle it's own visual states. Old Listview does not handle hovers and selections well. You have to do some workarounds with the Listviews Selected and Hovered events. It's gross.

dusky cobalt
# storm solar I dont have that plugin but I have my own list view I made.

I feel like someone pushed you into a rabbit hole with these list views. You should make it simplier and just create buttons and add them as children to some panel and then you have access to every button and can modify it. Like just simple For Each X Create Button - Add to PanelX in MainUI. If you create them inside MainUI you already have access to array of created buttons and then inside each button you can make your own logic.

maiden wadi
#

Depending on what it's for, listview handling is much easier usually.

storm solar
maiden wadi
#

Besides that. They also mentioned Gamepads. Unreal with gamepads without CommonUI is just a clusterfuck.

#

My colleague is dealing with that right now on an older project. 😄 He's had to do some hacky complex stuff to get what is basic functionality in CommonUI with gamepads.

trim matrix
#

how do i use it

maiden wadi
#

It's just an extension of UMG. It's hard to explain easily without running through the entire thing because it's a bit interconnected.. But it has a thing called ActivatableWidgets. These are the primary core of the plugin. Activatable widgets are like your primary HUD widget, or a menu such as the Options screen or an Inventory screen.

Whenever a new Activatable widget becomes the leafmost activated widget, it does a few different things. To be the leafmost activated widget it needs to be the highest draw order and it's entire parent hierarchy needs to be activated if you've nested multiple activated widgets.

What these do when they're activated are multiple things. The first is that they will set input modes. The same as SetInputModeGameOnly, SetInputModeGameAndUI, and SetInpuitModeUIOnly. What this does is allows you not to track complex state of which input mode you should be in. A simply case of this is to have A HUD up and be in GameOnly as an FPS. Then open an inventory widget which puts you to GameAndUI, then open an Options menu which goes to UIOnly. Lets say you code stuff normally to go to the last input mode. But what happens if your inventory closes from under the Options menu due to your player getting knocked down or something? Should it still go back to GameAndUI since that was the last mode? No, it should go to HUD, but how do you track that since the Inventory no longer exists.

A second thing they do is maintain gamepad focus. When a widget becomes activated it will automatically set focus to a child widget.

CommonUI also moves around an invisible cursor when focus is moved, and will simulate a left mouse click when pressing the gamepad accept button. What this does is allows you to code your widgets using the same functions as you do for a mouse in Hovered and Clicked events.

#

There are also several new widgets that extend old ones such as CommonListView, CommonTileView, some containers like the widget stack and queue, etc.

and of course CommonButtonBase, which is a wildly useful class for button handling and styling. There are new text widgets with style assets and such.

#

There are some floating around that I know about from when I was learning it a while ago. I don't know what's been introduced in the last year. But realistically you'll have to dig for info and just learn to use it hands on. Part of the issue is that it is rather gamepad focused and it isn't a flashy thing. Gamepads are niche things for PC devs who have no console aspirations. And by the time you're at the console phase you're kind of past youtube tutorials. Requires a lot more intuitive understanding since they are NDA and most of your info comes from obscure places in forums that are not hugely frequented since they require special logins.

#

@storm solar But see. This is a CommonTileView. CommonListView handles identically. I just set my items into it.

#

In the button itself. The only things affecting visuals are the normal mouse events. Hovered, Selected, etc.

autumn pulsar
#

Is a datatable lookup more expensive than a map lookup?

runic terrace
#

but it's negligible

#

their use case isn't about speed but what you need them for

autumn pulsar
#

I was going to use a datatable for a sound list

#

I need the functionality of a map, but I want to use it across actors, so it's easier to work with a datatable

runic terrace
#

Then use a datatable*

autumn pulsar
#

data asset you mean?

#

ah

runic terrace
#

Don't trade scalable and easy to use code for maybe 0.01ms of performance gain it is not worth it

autumn pulsar
#

yeah wasn't sure just how expensive the tradeoff was

runic terrace
#

It's basically nothing

#

if you compare them it maps are more efficient and faster, but considering you're just gonna read data from them every once in a while that performance gain would get lost in the noise

nova oasis
#

How can I make an actor comp reference another actor comp without setting it in my actor's event graph?

What I want to do is the green arrow, but won't go. I have public obj reference to TestComp1

autumn pulsar
#

comp?

nova oasis
#

Actor Component*

autumn pulsar
#

you can't really

nova oasis
#

gasp

autumn pulsar
#

because it's going to be different in game

runic terrace
#

You could search for the component B from inside the component A's own graph and set it there if you don't want to do it in the actor's graph

autumn pulsar
#

"Has component"

nova oasis
#

I guess im wondering what the good practice is here. I come from a unity background, so im used to slapping scripts on objects and connecting them all by dragging lol

#

In my head, I thought Actor comps were the equivalent

runic terrace
#

Yeah you can't really do that in Unreal

#

In your Actor Component's graph you can Get Owner -> Get Component By Tag/Class to access the other component

#

Or set it in the actor's graph

nova oasis
runic terrace
#

of course

#

You can access it like that once and save the reference for future use

#

But you might want to check if the other component actually exists before doing anything with it to avoid null errors

nova oasis
#

Thank you!

dusky cobalt
worldly sparrow
#

i am curious if someone would be able to suggest why a built piece can be damaged by the player but not by an enemy ai? the ai can apply damage to the player, player can apply damage to the built piece, but enemy ai cannot apply damage to the built piece?

runic terrace
#

impossible to blindly guess

worldly sparrow
#

this is the built piece

#

this is the ai code for the apply damage

proud salmon
#

for one, this will never be valid

#

If you're not seeing the print string at all, I'd assume the branch before the apply damage is always returning false.

oblique siren
#

Whenever I assign a mesh(any mesh) to my static mesh component, my pawn won't spawn. Removing that mesh(keeping it empty, no visuals) would start spawning it again. What's wrong ?

worldly sparrow
proud salmon
worldly sparrow
#

i see no rpitn string when the ai attacks the built piece

proud salmon
runic terrace