#blueprint

1 messages · Page 175 of 1

steel oriole
#

I'm not sure how to replace the default one?

#

Doesn't look like I can place a new RecastNavMesh.

lunar sleet
#

But for #gameplay-ai it’s best to use visual logger to actually determine what went wrong

steel oriole
#

MoveTo failed to project destinationlocation to navmesh

static frigate
#

I'm going to ask in here as it seems like it might be a more appropriate place. Does anyone know of any resources that can help with non-typical player control? For example, in my project, I have a robot that is controlled by the user pressing buttons which get added to queue and are executed in order. I have the system working, but I'm struggling with the physics side of things. I have it move using a timeline, but then it floats instead of falling through holes. I know a lot of this is given for free if you use a Character or Pawn, but as I don't want the user to possess the robot, I started from an actor base. I'm kind of looking for how to build something up with physics/collisions from scratch

broken badge
#

(You will need a navmesh in your level for that to work though ^)

faint pasture
#

do you want it to use physics?

silver garden
#

Is there an equivalent of AActor::PreInitializeComponents() in blueprints?
I need to setup some components before being play, but the Actor constructor doesn't seem the way to go. Is that right?

broken badge
#

Or you could setup the actor, and only posses them after that's all complete?

silver garden
maiden wadi
silver garden
undone sequoia
#

😄

dusky cobalt
#

Components added at Run Time aren't shown in the editor? Or I'm attaching it wrong?

undone sequoia
#

guys do you know how I can draw semicircle with trace box ?
I know circle is via sphere

#

but semicircle is what I need

maiden wadi
broken badge
dusky cobalt
grizzled roost
#

Hi, I'm using the water plugin for the first time and I'm having a bit of trouble.
I'm trying to spawn a bunch of custom water bodies, spawning them manually works just fine, but when spawning them using Blueprints, they spawn, but but the water itself isn't appearing, and the splines look like this.
What are the splines even for anyway?

cerulean igloo
#

Having a small but annoying issue, not sure if blueprint or general UE5 but I can't seem to make my char to be at ground level without disabling snap to grid, one would think I could just set everything to z=0 and it should align if my char/pawn is at z=0..but no go

broken badge
#

The mesh tends to sit above the lowest point of the capsule for some reason

cerulean igloo
#

Yeah I've been playing with that

burnt edge
#

What's the difference between these functions?

cerulean igloo
broken badge
broken badge
# cerulean igloo z=-99

Just move the mesh down a little more, I think it's as simple as that. Unless it won't let you?...

cerulean igloo
#

Yeah, set both capsule half height to 100 and then mesh z=-100

#

that aligned it perfectly

#

and then pressing END when placing the char works well

dusky cobalt
#

I'm just testing, but I'm curious if casting inside binding is expensive? 😄

cerulean igloo
#

Know it could be many things but looking for some ideas - why my PCG forest could be so far from the ground?

#

PCG object itself is at z=0, landscape is z=0. It is hilly but even on the hil it's above the ground, so it's consistent

#

this is my transport points node:

trim matrix
#

It shouldn't be lol

cerulean igloo
thin panther
dusky cobalt
thin panther
#

do it manually, get the text block, call set text on it.
Make an event in your widget, do the same logic you're doing there, but with a set text node instead of the return value.
Then call that event when it needs updating.

Alternatively, and preferably, make a dispatcher in your character or whereever for when gold is collected. Whenever you collect gold fire the dispatcher.
In your widget, bind aforementioned event to the dispatcher

dusky cobalt
#

I have the amount of resource inside Player State and there is event that calls to increase it. I guess at the end of it I could put something like dispatcher?

thin panther
#

Yep you can.

Tbh, you would probably be fine keeping the binding just to be transparent, but it's generally bad practice for infrequent updates.

#

Do with that info what you will

dusky cobalt
#

I know binding is lazy way, I wish I knew what to exactly do and understand how to make it better. I will try to understand dispatchers more and how to use them here.

thin panther
#

Try to imagine as your UI as a layer on top of the game. The game functions perfectly fine without the UI.
To achieve that without binding everything, you can use dispatchers. You're basically broadcasting a message to anyone that cares saying "Hey I picked up some gold!"

Your widget can listen to this and go "ooh, I should update the counter now!"

dusky cobalt
#

I should have dispatcher for every different resource?

thin panther
#

You could, or you could pass information through whenever a resource is collected that tells the widget what type of resource it was.

#

Up to you.
If a resource is likely to change often, a binding could be preferable there

#

Like if you're getting gold a few times a second, might as well bind

cerulean igloo
#

PCG question: I can't seem to find a setting that allows to me set minimum distance between meshes spawned, I now have buildings (almost) overlapping. They're not, technically because of collisions maybe but it's too narrow. I'd like to set a min offset of sorts. There is an min and max "offset" setting in "transform points" node but they shift them all together in one way or another, not really between themselves...

dusky cobalt
thin panther
#

Makes sense to me. Most importantly, does it make sense to you?

dusky cobalt
#

More than before I did it. I need to clean it up nicely for sure, just wanted to see how it looks in practice when it's done. I will see in what other places I will need it and maybe 1 dispatcher per resource will be better as, or I will just make similiar dispatcher for other thing.
Does it usually mean that if I want like 4 things to happen when 1 things changes, I will have to call first 4 dispatchers in 1 place for example? and these 4 things will listen for it, so I will bind each of them.

dawn gazelle
#

You can probably get away with a single dispatcher with a single integer and your enumerator.

dusky cobalt
#

Ohh, just by calling the same dispatcher?

faint pasture
dawn gazelle
dusky cobalt
dawn gazelle
#

Wonder if that bit could be simplified.

#

Increment X amount doesn't sound like it's doing much more than ++'ing a value.

dusky cobalt
#

this is what is inside function

#

it can be different numbers, not always +1

#

or do you mean just take it out from the function?

dawn gazelle
#

If you're seeing that you're doing something over and over again after branching or using a switch, it's likely that you could use a select to do it better without repeating yourself.

#

The only thing with this, is that the OnRep doesn't fire for the host.

tired hollow
#

So I have a blueprint character, and whenever I crouch and bump his mesh his BP character sort of "jumps". How can I prevent this?

dusky cobalt
wet rain
#

In a bit of a bind im trying to make an overshield for the player but im not really sure how i can set it to check the shields value before health. Like if the shield is 50 and damage taken is higher it subtracts from shield then health but has to check shields value. Heres what i got so far. Not really a programmer but this is how far ive gotten with videos and such.

wet rain
#

maybe i could do a branch with checking shield value but im not sure

stoic ledge
lofty rapids
wet rain
#

shield damage and health damage are seperate variables so would i need to have another minus for health damage?

lofty rapids
long breach
wet rain
#

shield value is determined by a pickup the player gets wiith a max value of 50

stoic ledge
#

heh, not 51?

wet rain
#

well i felt in an arcade shooter where the player gets power ups all the time 50 was fair for an overshield for now until programming is done at least

stoic ledge
#

50 seems normal. 51 seems... not good

wet rain
#

the only thing is shield and health have seperate damage would it work if i just used shield damage on both?

dawn gazelle
#

I see your 51 and raise you 51.25682

wet rain
#

this should be the only reference area for it

#

this is why i love the gaming industry sometimes

#

well it doesnt see the health value unless the player has the shield already. Maybe the player should just start with an over shield?

#

some crutches

#

or was i not supposed to unhook the original health?

lofty rapids
#

So when your shield gets hit it suppose to take from health ?

wet rain
#

if it has excess damage yes

#

like the shield in halo

#

but u know indie

#

and i still care about my characters

#

should i put the pictures up again for reference?

stoic ledge
wet rain
#

well its a survival game so the players gonna be chased 24/7 shield just help them refresh gameplay and adds a little forgiveness incase of lag

lofty rapids
wet rain
#

so do what was made above and add the previous health system to it?

lofty rapids
wet rain
#

yes all should be on event 'take damage'

#

so this

#

somehow goes to this

#

so on that first branch in the first piture i then plug in the second picture if false?

#

wait no that is close but not quite

lofty rapids
#

I would check if the shield is greater than zero first and then on false just do health stuff

odd kiln
#

Hi all

wet rain
#

dang the shield doesnt take damage

odd kiln
#

I have a "Sphere" that scales over time. Do you think that I can spawn "decals" inside it as the Sphere scales ?

dawn gazelle
# wet rain

Don't need this part in the first image. From the second image, you can check if health > 0 and if false, they're dead.

wet rain
#

like all in first image or setting the value to 1?

dawn gazelle
#

You're also using way too many variables this way. You need to encapsulate this into a function and use some local variables.

lofty rapids
# wet rain

You set remaining damage to zero then subtract that from health ?

wet rain
#

videos that are useful for the way it was done previously to now confuse me

lofty rapids
#

I don't know much about select but you can do this with maths

#

After you check for greater than zero on true is where you need the maths

#

Subtract the damage amount from shield if it's greater than zero add the result to your health checking for zero and death you can make another event or two to clean it up maybe like suggested make it a function

wet rain
#

hmm ill give it a try. Ill probably return tomorrow if i find no more solutions to this. THANK YOU EVERYONE!

hard palm
#

Hi, I'm facing a strange behavior, I was trying to conditionally detect a drag from the user, but it always detect the drag if I use Unhandled as return

lunar sleet
naive herald
#

In the actor blueprint, two spheres under the skleton mesh are applied to both hands to detect line traces. Why can't recognize the skleton mesh itself?

plush ridge
plush ridge
#

The trace is looking for anything that blocks the visibility channel here, you just need to make sure your skeletal mesh: (a) has collision enabled, query only should be fine, and (b) has the visibility channel set to blocked. You can do this e.g. by setting the collision type to custom and manually adjusting each channel.

plush ridge
#

That should work 👍

Side note: you can change "Collision Enabled" to query only, if all you care about is the trace (and not collisions), and disable "Generate Overlap Events". Less impact on performance, and the traces will still work.

naive herald
plush ridge
#

Does the mesh have a physics asset assigned to it?

naive herald
naive herald
plush ridge
#

hmm, click on one of the purple bodies there and see what its collision settings are in the details panel

#

what's your goal btw? what are you trying to do with the traces?

naive herald
naive herald
plush ridge
#

So you just want to prevent the hands from clipping into the body? Maybe "physical animation component" is what you want

zealous moth
#

has anyone ever had a BPI event be an event in 1 actor implementing the interface and a function in another actor?

naive herald
graceful sage
#

Try unchecking this

naive herald
#

@graceful sage @plush ridge Thank you for your help

graceful sage
#

Did it work?

naive herald
#

yes

graceful sage
#

Awesome

plush ridge
#

oh whoops, nice catch

naive herald
#

Now, I'm going to start a terrible job of creating an evasive vector once the vector value is calculated for the collision. Have a nice day

plush ridge
#

I've got a problem now, also:

I'm trying to set the position of object A based on the distance between object A and object B.

It works, but the distance value starts to fluctuate wildly when the two objects get within like 5-10 cm of each other. Any ideas?

zealous moth
teal vapor
#

Just looking for some general ideas about an issue I'm seeing. I have my hobby game playing in PIE correctly and variables I want to track are persistent in the game instance, but when I make a Shipping build of the game, the variables in the game aren't coming out correctly. Any one have any creative insight possibly? I'm searching for straws atm. 😄

steel star
#

and the value before, and the value being set

teal vapor
#

@steel star Thanks! I'll try and do what you said

steel star
#

probably a divide by near-zero

faint pasture
#

Either that or just moving speed x delta time towards target, when closer than that.

steel star
#

that sounds entirely plausible

high iris
#

I'm trying to map something to an enhanced action event (the first screenshot is what I want), but I have this one subclass of a player character which for some reason doesn't show any enhanced action events at all, and I can't figure out how the class got into that state.

Something must have gotten disabled within its settings that prevents those events from being suggested in the bp, second screenshot. Any advice on what that could be?

plush ridge
# faint pasture Set how? What's the math

I get world location of both components, get the distance (vector), and then map that to an alpha value using a curve. The alpha value is used to set the relative location of one of those 2 components, just lerping between 2 preset locations

#

This is the gist of it, but the relative location/rotation set is on an object involved in the distance check

vast lion
#

What would cause my subsystem to become invalid to blueprints every time I restart the editor?

frosty heron
vast lion
#

A world subsystem

frosty heron
vast lion
#

Ok

graceful sage
high iris
graceful sage
#

Maybe

teal vapor
# steel star convert it to a set/get function and log callstack every time set occurs?

Hey Dismiss! I got it narrowed down to this. Using the increment node works in PIE, but not in the Shipping build. When I converted the increment node to the old get and set method, it doesn't work in PIE anymore, and acts just like it does in the Shipping build. So somehow, this increment node is being converted strangely in the final build. Any thoughts? I'm using UE 5.3.2

tight pollen
#

someone can help me?

#

I need to get the closest vector

#

but this thing doesn't work

#

always chooses Spline1

tight pollen
#

someone?

#

or maybe another idea, I just need to get the closest point to the player in the actor

ruby tendon
#

im doing a raycast and i would like to get a variable from the actor the raycast hits. how can i do this?

surreal peak
# tight pollen Can someone look at it and advise?

Can you please try to debug it a bit first. Put print strings into the ForEachLoop where you print the current Index, Element, the calculated Distance and the Compare Distance, as well as when it updates.

#

This is a very simple function that you should be able to debug yourself. If the result of your debug shows something that you don't understand (as in, it shouldn't happen) you can gladly post your findings.

surreal peak
# ruby tendon im doing a raycast and i would like to get a variable from the actor the raycast...

Two to Three options:

  • If you are only looking for one specific Actor Class, and only ever will look for that one specific Actor Class, then Cast HitActor to the BP of it and access the Variable.
  • If you are looking for a "set" of Actors, that share a common Parent Class which can hold the Variable, have the Variable in that Parent Class and cast to that BP and access the Variable.
  • If you are looking for a set of Actors that isn't sharing a common Parent Class, but have a common "context" (like they are all meant to be "Interactable Actors"), use an Interface for that Context (E.g. BPI_Interaction) and make a function that returns the Variable in said Interface. Implement the Interface on the BPs that should return something for that function (the variable I guess), implement the Function to do what you want on the BP and call the Interface Function on the HitActor.
lunar sleet
#

But also who the heck made that function and why not just use a line trace, which is what a “ray cast” is in UE

ruby tendon
#

i find it more organized that way

ruby tendon
surreal peak
#

Only thing that might be a tad better is to simply return the HitResult. You may only need the 4 variables you exposed now, but maybe later you need, idk, a normal. Or someone else needs more.

ruby tendon
#

fair enough

sage surge
#

Hello guys, I have an issue with Capsule Component collission, I guess... When I run with my character on mannequin laying on floor with turned on physics (ragdoll) colliding with a mannequin causes my character to be thrown into the air. So, I guess physics bodies of mannequin in a collision throw my capsule component up. Can someone tell me please how can I turn it off?

untold ivy
#

Hello, I just want to make sure I'm not doing something stupid: I have the option button in my main menu. I want to send to the option menu the class of the sender menu so that I can go back to it afterward so I can reuse the option menu for the pause menu as well. What's the clean way to go from Self (WB_Mainmenu) to the class WB_Menu?

opaque acorn
#

noob question how to get parent events ? I want to get my parent of the event below but it wont show at list . .

graceful sage
graceful sage
silent berry
#

Hey all, need a bit of advice. I'm working on a game that has player dialogue/action choices, like Mass Effect or something. I want the choices to be boolean variables that can be called up in other blueprints/sequences, such as "DidTheThing= true" and saved into the player's save files. What would be the most efficient/recommended way of accomplishing this? I know using the gameinstance is definitely not the best way to do it.

#

I would like to be able to call it up in dialogue trees, level blueprints etc

#

My gut says to do it with a big data table that contains all the choices and plot variables, but I'd like second or third opinions on what the best method is

untold ivy
steel oriole
#

I have a widget placed in the world. It is meant for the user to click on it. I have the mouse cursor enabled in my game to allow the user to move the mouse. But the ActorOnClicked event is not working for the BP with the widget in it? Any hints?

frosty heron
#

just get class right away?

#

why do you need to cast self

#

self already know what type it is

untold ivy
#

Don't say anything... I figured it out. Brain was not going right.

#

I forgot to link the "Set" node. So of curse nothing was passing.

graceful sage
#

Nvm

untold ivy
spark timber
#

Anyone know why adding a spline component dynamically works fine in construction script but doesn't work in a Call In Editor function?

maiden wadi
# silent berry Hey all, need a bit of advice. I'm working on a game that has player dialogue/ac...

You need a system that can initialize with savegame data early on. Initialize it and pull out the data you need to read and then anything can access it. You will be reinitializing it a lot because the world is torn down and everything deleted every time you change maps. It's normal to use these transition zones as autosaves, if you keep the SaveGame object around somewhere like GameInstance, you don't need to load it from disk again but your gameplay classes will still need to reinitialize from it.

As for the system, instead of a bunch of booleans, I'd recommend something more dynamic like a GameplayTagContainer. Which will let you separate stuff nicely into a hierarchy of zones and things to do and then you can also use it outside of conversations as well as just a general "player did this"

EG
GameplayProgress.SomeMainArea.Conversation.TalkedToTheVIP
GameplayProgress.SomeMainArea.Action.HackedTheDoorToSomething
GameplayProgress.General.Action.BecameFamous

etc etc etc. Throw anything that comes to mind that you'd need to affect a dialog in there. Add it at gameplay or conversation when it happens and then any dialog can search this single container for anything it might need.

silent berry
indigo zephyr
#

Hi all, I'm currently setting up my pause menu and I think i need some help here.
I have a simple toggle which creates the widget and adds it to the parent and then im checking validity to see if the widget already exists and then removing it from the viewport.

however it doesn't seem like removing the widget from the parent considers it invalid?

maiden wadi
silent berry
#

Mostly BP only, I know a little bit of C++ but not enough to do anything of real value

graceful sage
indigo zephyr
frosty heron
#

Removing from parent doesn't invalidate or dereference the object

#

Infact it's just taking the widget out from the viewport. It can be added back anytime.

indigo zephyr
#

Is there a specific way to destroy the widget?

maiden wadi
# silent berry Mostly BP only, I know a little bit of C++ but not enough to do anything of real...

Mostly asking because there are some early hooks you can use in classes like GameMode. EG InitGameState, which serve as great places to initialize savegame stuff. I mostly keep a single savegame loaded in a GameInstance subsystem. Can do the same thing in the game instance itself. So that you don't have a bunch of loose properties and don't have to actualy load it from disk a lot too. And if you get more familiar with C++, you can use the Serialize function which will make SaveGame stuff infinitely easier. Less loose properties to manage.

frosty heron
#

Set the pointer that reference the widget to null

graceful sage
#

You could do is visible instead of is valid

frosty heron
#

The object will be garbage collected

silent berry
#

But just loading the save file itself into gameinstance shouldn't hurt anything

indigo zephyr
#

that seems to stil lleave the previous items in memory,

I'm using enhanced input events inside the widget and those still exist.

silent berry
#

then whenever I modify one of the variables I can just save it to the save file that is loaded into the gameinstance

indigo zephyr
#

So when i open up the menu a second time, all previous references are still triggering these input action events

frosty heron
indigo zephyr
#

Yea I mentioned doing so

frosty heron
#

Also triggered runs every frame, you want to do it on started

#

What's that collect garbage. Don't need that

indigo zephyr
#

I have that input action set to trigger on pressed

#

I do need that

#

Otherwise the past references still stay

frosty heron
#

U don't need that

indigo zephyr
#

Alright ill remove it

frosty heron
#

Gc will manage on its own

#

No need to call it

indigo zephyr
#

but those previous references still seem to be in memory for a good 30seconds to a minute

#

Ill also change the input actions to use started

frosty heron
#

Pull is valid with the question mark symbol when you drag from pause menu

silent berry
#

@maiden wadi thank you for the tips. I'm pretty decent with blueprints overall, but game saving etc is something I've never dived too deep into

frosty heron
#

Not sure if that's the issue but worth a try

indigo zephyr
#

Are you asking me to use the function for valid checking?

silent berry
#

I'll use a GameplayTagContainer system instead of boolean variables, and I'll experiment with using the current save file in the gameinstance

indigo zephyr
silent berry
#

Then I can just use frequent autosaves and checkpoints to make sure data isn't lost

frosty heron
indigo zephyr
#

Likewise when i first open the menu from a new editor start, it only prints once.

#

After 30 seconds or so any "copies" of the menu will go away (I assume this is garbage collection)

which is why I wondered if theres a way to destroy the widget explicitly, or if collect garbage was a way to go to solve this issue

#
Epic Developer Community Forums

After more intensive Googling, I’ve found the info that’s needed. Here: link text So “Remove from Parent” and then “Collect Garbage” should fix both of our issues. (Providing you move your “Create Widget” into a function). Testing now… hmm, my first attempt doesn’t work. Let me know if you have more luck!

#

I feel this might be mostly cause by input action delegates here..

#

the whole thing smells kinda funky though 🤔

vital oyster
#

Access None trying to read property error Multiplayer

indigo zephyr
#

Collect Garbage does seem to fix the problem but I feel like thats cleaning up the water instead of fixing the pipe here.

indigo zephyr
dark drum
graceful sage
#

are you referencing it in more than one bp?

indigo zephyr
graceful sage
#

weird

indigo zephyr
graceful sage
#

you dont normally do inputactions in widgets i dont believe

indigo zephyr
#

I think an alternative solution might be to, in front of every input action trigger, check "is enabled" and then use that from my hud class and mark these widgets as 'disabled'

indigo zephyr
dark drum
indigo zephyr
graceful sage
#

maybe since the inputaction is on the widget it cant gc it?

indigo zephyr
#

This is probably in large part why I have this issue is not honoring focus, removing from parent would remove focus

dark drum
indigo zephyr
indigo zephyr
dark drum
indigo zephyr
#

https://dev.epicgames.com/documentation/en-us/unreal-engine/using-commonui-with-enhnaced-input-in-unreal-engine?application_version=5.2

I saw this and wasn't sure if it was worth the rabbit hole, Manually garbage collecting OR putting that focused descendants in the IA's both seem to get the job done. The latter probably being more preferred and performant

Epic Developer Community

Learn how to incorporate Enhanced Input with CommonUI's input system.

graceful sage
#

ohh you're using commonui

indigo zephyr
#

regardless, Thank you very much @dark drum 🙂 gave me some more definitive answers and explainations

indigo zephyr
dark drum
indigo zephyr
#

But was wondering if it was worth to revamp stuff

graceful sage
#

I use it it makes things better but not at the same time lol

indigo zephyr
#

I see, wouldn't have helped. Haven't dabbled in any of this. normally this isn't an issue but only in this project do I try to add IA's to widget / ui controls

dark drum
indigo zephyr
#

x.x at this point im slowly becoming okay with "not perfect but works" and i dont know if thats good or bad for my game dev career

#

Whatever gets the game made i guess.

dark drum
indigo zephyr
#

Thanks again for all the advice fam 🙂 Appreciate it a lot

graceful sage
dark drum
indigo zephyr
#

Yea exactly 💯

graceful sage
#

have you tried doing the IA in the controller instead and see if that makes a difference?

indigo zephyr
#

🤔 I'm not sure I understand what you mean. Are you asking me to do an IA in the playercontroller, then hold onto a reference to the hud or look up the widget by class and then send the controller input to the widget itself in order for the widget to do the function? and in the case of nested widgets, continue to send the input down the chain of nested widgets via functions on each nested widget?

graceful sage
#

I'm not sure how you have it setup or exactly where you have your IA currently but you create the widget with inputaction on controller and a seperate one for doing the action by getting the ref and doing the event from there

#

I can't tell byscreenshot exactly where the bps are

#

or the full context

indigo zephyr
#

I guess being charitable here, that would solve the issue largely by removing it altogether. But would make for a really tightly coupled system and seems like it could get out of hand fast.

#

the issue is solved though pattym had it right exactly

graceful sage
#

removing what?

#

well if its solved nvm then

indigo zephyr
#

🙂

dark drum
# indigo zephyr 🙂

With what I shared earlier, this might also help for handling IA in widgets. The first image checks the supplied input actions and checks if the key pressed is on one of them. If it finds one, it returns the input action. In the second image, is how I'm using it where I have map where the keys are the input action and then the value is a gameplay tag. If it returns an input action, I can then find the gameplay tag and use it on the switch on gameplay tag.

indigo zephyr
#

Switcing on a gameplay tag using the input actions is kinda smart tho. I could see the use in that.

dark drum
indigo zephyr
#

Oh I get it. Damn you are saving me so much time lmao

#

Admittedly I dont set my inputmode to UI only, I just leave it on game, I'll have to look into what that specifically does. (I leave it on GAME and UI i think.. and use input mapping contexts to make sure game layer is more or less overlayed.)

dark drum
indigo zephyr
#

Yea that makes sense, my current solution like i said is to just add a mapping context that largely consumes the inputs in UI instead of in the game. ie) my menu select button overlays the jump button so menu consumes input first.

#

The actual inputs are fairly simple for the game, so this is managable

dark drum
#

Yea it's not to bad when you're inputs are fairly straight forward. It's why I like using ICM's as you can remove an entire input set with ease to stop conflicts. Just annoying IA's don't trigger when in UI only mode lol.

#

My setup above only really works for simple IA that would use the bool for the action value but its still better than nothing haha.

maiden wadi
bitter cipher
#

using this as my tv in main level all working fine however trying to also use video within a widget basically when you open the widget by pressing p in game once you navigate to the video it is playing i tryed the same code as above using the other media but it is just frozen any tips would be good

#

also i use begin play in main level bp for this but within the widget im using event construct?

dark drum
bitter cipher
#

no its part of a phone hand held in game

cyan spire
#

I want to ask if someone has a finished MP Shooter game with weapon attachments. Im not sure about the best practices where to actually handle the attachment, if each attachment should be its own BP, or if i should have a BP Attachment_Manager which just swaps the mesh inside, or just do all the logic inside the First Person Character BP and swap it there, but change the firing logic. Im asking because i want a good modularity but also the best performance at runtime.

silent berry
raw basin
#

Good afternoon all! I've just joined the discord club! I'm hoping someone could help me as there doesn't seem to be much content I could fine regarding this - I've made a blueprint which automates rendering objects in different materials based off of an excel list. I've got it all to work however oddly I can only play the level once and I get an error on the second time. Only a engine close / re-open will solve it.

The error is - "LogScript: Error: Script Msg: AllocateJob cannot be called while rendering!
LogScript: Error: Script call stack:
/Game/CORE/BP_ImageManager.BP_ImageManager_C.Render&Save <---
/Game/CORE/BP_ImageManager.BP_ImageManager_C.ExecuteUbergraph_BP_ImageManager
LogScript: Warning: Accessed None trying to read property CallFunc_AllocateJob_ReturnValue"

the Customevent that runs the final steps of the BP is in the screenshot, I copied it exactly like the UE5 docs say, plus a little extra to name the output the way I wanted. I thought prehaps the allocate / render job nodes arn't clearing but apprently both clear before starting again.. Any ideas? -

maiden wadi
dusky cobalt
#

I must be stupid, but I don't understand... This is so simple and yet not logical?

In the Player Controller when the player is spawned (on Begin Play) I cast to Get Player State and set RTS Player State so I can use it later, right?
Then inside Player Controller I have logic that handles Producing Unit. This get's called from the widget, after clickin on button.

And when I use Interface it works? It takes all the money needed, produces unit etc...? And If I use Reference and get events straight, it doesn't work? What I'm missing? How can the logic work when it's interface and not work when it's casted ad send? Does anything change durin gameplay that the own playercontroller cannot get the same reference to his own Player State?

#

this is button if it changes anything

maiden wadi
#

I read through a bit more. There is a...

#

GetActiveExecutor() that is BP callable. If you get that I think you can call CancelAllJobs?

maiden wadi
# dusky cobalt I must be stupid, but I don't understand... This is so simple and yet not logic...

I can't speak for why it would become invalid. That's rare since a playerstate and playercontroller's lifetime are usually pretty similar. Honestly, reference saving like this is a bad habit unless you need to iterate a big list and don't want to IsValid it 100,000 times. You should just GetPlayerState and cast it when you need it. Or make a getter that does that. Reference caching is.. eh.

raw basin
maiden wadi
dusky cobalt
# maiden wadi I can't speak for why it would become invalid. That's rare since a playerstate a...

Okay, this is the advice I needed. I didn't know it wasn't perfect idea to store references after casting (maybe at least in case of PC and PS). After casting straight to it, it works so it's a big relief for me... . I also get that Player Controller is beeing spawned almost together with Player State so I wonder what is the best way to avoid problems. Thank you.

I found out that this GET PLAYER STATE on Begin Play works only on the hosting server, and then it doesn't actually fires for other clients lol. That's even more weird. If I can get away trough it by using interface or just casting then it doesn't matter. I was worried that since sending event on saved reference didnt work, and then I'm using ''hack''(interface) to work around it, it's randomly working in a correct way. But I hope it seems like it will keep the proper logic so this logic comunicates to the Player State of The Player Controller (0) that the local client is firing.

sullen swift
#

Good afternoon, can you help me why the node returns local coordinates to me?

maiden wadi
# dusky cobalt Okay, this is the advice I needed. I didn't know it wasn't perfect idea to store...

The reference caching started for the same reason as the casting is bad stuff. People hear "casting is performance heavy". So they cache a variable after casting it. Which to someone who understands casting is downright hilarious because runtime cost of casting is dirt cheap. Casting performance issues that people blame it for don't actually have anything to do with casting itself, but linkers.

On top of this, caching pointers causes issues and a lot of upkeep. EG UI Engineer here. I use a cached pointer to do some stuff in a widget. Gameplay programmer comes along and sets a cached playerstate in a pawn. Along comes gameplay and the pawn is unpossessed. But the UI is still telling the player they own that pawn, cause the unpossess never flushed that cache. And sure you can make more engineering to manage this stuff. But then it's just one more thing to maintain. Meanwhile the real state is already maintained for you via the underlying gameplay code and a simple cast is all it takes to access the real data. So caching a lot of stuff you'd cast to is usually just piling on a lot more work.

maiden wadi
dusky cobalt
golden holly
#

i got x and y floats, how do i convert them to vector pin?

remote meteor
#

Make Vector

golden holly
#

thanks!

dark drum
#

Just found this little gem of a comment lol. 'This is not the property you're looking for.'

Its on the common button base for creating a persistant binding. (for those that want to know)

maiden wadi
#

Lol, yeah. Don't. When it says persistent, it means it. I had to use that in the 4.27 version on our game, and maintaining it is 🤮 Newer versions don't require it at all, really.

mild jacinth
#

I probably asked about this but when you use structure files inside Unreal, and break them - is it possible to also "Set the values"?

#

or Structure values are strictly set inside the blueprint themselves and cannot be modified during runtime?

stoic ledge
#

Make struct.

dusky cobalt
mild jacinth
#

also I was wondering if it was possible to somehow avoid converting the Hit Actor to specific actor by casting.. what are some alternatives for this? like, I want to get a specific enemy parent class but I also dont want to do casting

#

is there some native node which does it for you? loops and casting/interfaces are something I think would be heavy for doing every second or millisecond. correct me if im wrong

faint pasture
#

The cast is basically free

#

What do you want to do to Hit Actor?

mild jacinth
#

oh okay then nevermind about the cast

#

ill use cast

dusky cobalt
dark drum
# mild jacinth ill use cast

As long as the parent class you're referring to doesn't have heavy assets such as skeletal meshs, materials sounds etc... you'll be fine.

dark drum
faint pasture
#

Or as long as it'll be loaded in memory anyway

burnt edge
#

Is there a built-in function for a random 2D unit vector?

stoic ledge
#

you could just make two random numbers and then make the 2d vector?

vivid quarry
#

For a melee system that can accommodate multiple weapons, does it generally make more sense to run sphere traces for collision from the player BP or the weapon actor BP? For the weapon actor I would just start and end the traces based on montage notifies and then feed those attack events as interface messages

#

I have all my montages working and I have a damage system working I am just wondering how to bridge the two at this point

haughty snow
#

Is it possible to set the curve variables in a timeline programmatically?

#

or am I not using timelines correctly if I need to do this

#

I am trying to move my camera from A -> B as my world changes, but I figure I need to be able to feed the timeline the current position as well as the ending position in order to do so, but can't seem to see a way to do that

dark drum
broken badge
vivid quarry
broken badge
#

I didn't bother with interfaces to be honest. On BeginPlay, I saved a reference to the owning actor as a variable.

Then used BeginOverlap to check if it hit an actor that wasn't the owner, and if the owner was attacking. Doing all the damage calculations if true.

#

I think I used DoOnce as well to ensure each actor only got damaged once per attack, and then reset once the montage ended

dark drum
vivid quarry
#

But I'm open if there is a better way to do it!

dark drum
#

Assuming you're using a weapon base class, you shouldn't need to use interfaces if you have a ref to the weapon. You could just have a single function on the base class and pass a gameplay tag to denote the type of attach the weapon is being used for.

vivid quarry
dark drum
#

You want to look at physics handles.

silver garden
#

Anyone knows why trying to project an actor location to screen space gives (0.0, 0.0) coordinates?
The actor shown in the video is almost in the middle of the screen, however, it gives me the top left screen position.
I chained Set Alignment in Viewport and Set Position in Viewport so that both results show up.

oak gust
#

Ok found it I am stupid

mellow forge
#

Hi all! I'm trying to get a plane to follow infront of the players view (camera). I'm getting the camera manager, and it's loc+rot. It seems almost accurate but slightly delayed (camera lag?).

I switch cameras quite a lot so camera manager was my go-to. Anyone run in to something similar? On 5.3 atm

red sleet
#

Guys how can i "force" a blueprint to "reload"? I have a bp child of a cpp class, i modified the class but the blueprint seems not affected. To test if something was wrong i made another bp child and it works, so i was wondering, is there anything im missing about cpp/bp hineritance?

proper widget
red sleet
# proper widget What kind of adjustments did you make to the cpp class? Redirections might have ...

My cpp class was just character, did not add a single line, then immediately create the bp, where i added skeletal + anim bp + simple movement logic. Then i implemented fw/bw movement and the bp does not detect it. As i said, i created another child bp to test it and it does work, so i assume its a bug. I also searched online and a lotta of people had the same issue so i assume its a very generic and common bug. For now, i have no need, ill just make a new bp who cares. I was just wondering tho, is there any "official" or "best chance" way of fixing this? Cause i tried a lot of suggestions none helped. Regardless, thanks for the help mate 👍

gray lantern
#

Sorry trying to make my widget show up in the editor what do I add for world context I cant seem to find the answer ?

proper widget
surreal peak
#

Or did you properly close the editor, compile your code, and start the editor again?

vivid quarry
# dark drum Assuming you're using a weapon base class, you shouldn't need to use interfaces ...

Just a follow-up question, since tags are new to me and not used in my project at this point. I did some reading on them and see them as a way to set states such as stunned, etc for actors. How would I bridge the attack montages on my character BP to the damage traces on my weapon actor BP using tags? Like I mentioned previously the plan was just to use interface messages for each type of attack, but that makes for a bit of a cluttered set of interface functions (15 or 20 for all the attacks), so I'm open to learning new systems if there is an advantage to tags

somber elbow
#

Guys, Is there any way to make and object in unreal to be rendered on a foreground? Like in shooters no matter how close you are to the wall the weapon will always be rendered on the top layer.

surreal peak
#

UE doesn't have a layer in between.

#

There might be some solutions on the net, but there is no magical "render this between the HUD and the world" layer/button.

somber elbow
#

I have a platformer here. But my character has bad intersections with the platforms. I want it to be ALWAYS on top of the platforms and pickups should be always on top of the character

surreal peak
#

I mean, that's something where you can just change the X or Y value (whatever your depth axis is).

somber elbow
#

hmm... I thought it may be possible to solve it with custom stencil in post process material. It makes masks but i cant make it to bring one object in front of another one

surreal peak
#

If you want it always on top of the platform, just change the depth axis value for your player

#

In 2D it shouldn't need much more

somber elbow
#

thank you!

mortal coral
#

is there a way to functionally disable and hide all the children of an actor?

dark drum
#

Does anyone have any idea why this timer doesn't actually call the function? It gets to the set timer so i'm a little stumped. (it doesn't get retriggered either)

surreal peak
surreal peak
dark drum
surreal peak
#

Does the Widget have a Tick node in it

#

Just wondering, don't even know if this was an issue

dark drum
#

All though it does seem that breakpoints have now broken. 😭 Time for an editor restart i think.

surreal peak
#

The only thing I very vaguely remember is that there was something with Widgets not ticking if they don't have a Tick event in them, even if not used.

#

I'm not entirely sure if that would affect timers

#

Cause the TimerManager sits on something else

dark drum
dark plume
#

Hello all
I'm prototyping to decide if I will make my game with UE and I hit an issue that prevents me to go forward
Is this the rigth place to ask (it might be C++ related but I suspect it's a blueprint thing)?

steel star
dark plume
#

ok I'll ask there then thanks!

prisma ruin
#

Apparently my is valid check is failing because the actor is not valid???

steel star
lunar sleet
dusky cobalt
#

Does anyone know if I send variable in Spawn Actor, will it be avaliable in construction script already?

dawn gazelle
dusky cobalt
prisma ruin
lofty rapids
lunar sleet
#

Unless this NPCShooterMannequin thing is an element inside the SpawnedEffects array -for some reason, that is not at all the right code screenshot

dawn gazelle
# prisma ruin

Are you able to show where you have "TargetActor" plugged into an IsValid? node.

lunar sleet
#

That validated get looks a bit off to me, what is it getting?

#

Either way there’s no branch in this screenshot 😀

trim matrix
#

a for loop in a timeline -> sweeney_activate

lunar sleet
#

There’s nothing wrong with that ?

dawn gazelle
dawn gazelle
#

Accessed None always means that the variable you are using doesn't have a value set in it when you're trying to use it.

hasty igloo
#

I've been using switch statements for some of my key presses, like 1-9 and having it on a single enhance input map or whatever. but I assume thats not good to do because then remapping your keys would not be possible?

eternal totem
#

Is there a way to add an actor to an array that isn't spawned in? I'm trying to just send a reference of a weapon class to an array but it will only add them if those weapons are currently in the world using get actor of class. My variable with the reference of the weapon down below both of the get actors of class keep returning nothing.

graceful sage
steel star
#

probably need to actually debug the blueprint

#

put in extra printtext

eternal totem
#

i did

steel star
#

this is the type of thing i would personally do in a c++ function

eternal totem
#

its a reference to a main actor, I thought you could store then in an array if they aren't currently spawn in. when the actor of class is used it works, when the variable is used is does not

#

well good thing im in the blueprints forum

steel star
#

yea.

lunar sleet
#

It would kind of defeat the purpose of the validated get but yeah 😅

dawn gazelle
#

No the validated get should be stopping any execution beyond itself.

#

It's likely going invalid later on down the line or in some other place but they're still accessing it in some way.

lunar sleet
#

Yeah, makes sense.

#

We might never find out where now 😀

steel star
#

Wait are you guys still talking about the guy with an error about invalid actor from like 9am this morning, 15hrs ago?

eternal totem
graceful sage
#

Where/when you set pistol var?

eternal totem
#

not show, its set to the same thing as get actor of class, so technically Replicated Weapon Pistol

#

oh i see my problem I think... can I use spawnactor and then just use that for my array but not have the actual object spawn?

graceful sage
#

Well spawn actor would spawn it

dawn gazelle
dawn gazelle
# eternal totem oh i see my problem I think... can I use spawnactor and then just use that for m...

No. In order to store a reference to an actor, that actor must be spawned.
As funkyspunky pointed out, if you wanted to have a reference to something that doesn't exist yet in the world, you'd need to use an asset reference of some kind, like the class, or a data asset reference, or even an ID like an FName or GameplayTag that you can then use to determine what the actual thing is that value is representing.

eternal totem
#

got it thank you

dim halo
#

Does SetFocus not work when the controlled object is a pawn

uncut lark
#

Is there a command that checks if a component been hit by a line trace?

#

Like on the receiver side

dim halo
#

Im kinda new so i could be wrong but you could set up an event dispatcher, and use the hit actor to reference the specific target thats been hit, its not really on the receiver side but it informs the reciever to start an event in that scenario. Hopefully that helps

dry sleet
# uncut lark Is there a command that checks if a component been hit by a line trace?

There isn't the possibility to do that directly, but it's easy accomplish.

A common way to approach this problem is to create an interface (something like TraceReceiverInterface), with a function "OnTraceHit(Sender)". The actor that wants to detect the hit implements the interface, and put whatever code you want to execute when it gets hit into the implementation of the OnTraceHit function. The actor that performes the actual line trace then has to make sure that it executes that OnTraceHit function on the actor that is hit by the line trace, using the "message" node provided by the interface.

#

Of course, the names I suggested are very generic. You could give them better names with the knowledge of what your trace actually does.

uncut lark
#

So for context, I am trying to make a damage indicator like half life

dry sleet
#

As in you want to detect the direction of the trace?

uncut lark
#

Correct

dry sleet
#

Just send the ray origin along with the OnTraceHit function in that case, I'd say.

zealous jolt
#

Hi,
Does anyone here have experience with AnimNotifies not beeing reliable on low framerates/ when you get a lag spike?
It seems like they sometimes dont trigger at all, even when set to branching point.
Im programming a hitbox system at the moment and im not sure if notifies are actually the way to go or if the hitboxes should be animation independent.
Some insight would be great 😄

dry sleet
#

I guess theoretically you could send the entire hit result along, although that might be a waste.

uncut lark
dry sleet
#

Yes, if you've declared it in an interface, a blueprint "message" node will be provided automatically.

uncut lark
#

Gotcha

#

Let me come back to this tomorrow

dry sleet
#

It would looks something like this.

uncut lark
#

But I was also thinking like cant I just have 4 box collisions around the player, and when they get hit with a trace, set "front damage true"

dry sleet
#

Sure, but a bit of vector math will give you the same result without the need for that.

uncut lark
#

That's what I was also thinking

#

That's what I was doing originally but could not quite get it

dry sleet
#

Just figure out the direction of the ray by doing (ActorLocation - RayOrigin) and convert it to screenspace coordinates... somehow, haha -- there are a lot of helper functions for stuff like that I believe.

#

You can probably get help with that part in #game-math

uncut lark
#

So Ray origin is what I should look at?

#

Haven't messed with those

#

This will be good

dry sleet
#

Yeah, you'll figure it out!

uncut lark
#

Yeah it's been bugging me for a solid week LMAO

dry sleet
#

It seems like a pretty good exercise to get some insight in vector maths, too :)

#

Stuff like this comes in handy all the time

uncut lark
#

Yeah I can think of a few uses actually

#

Feel like that could be useful for first person platforming

dry sleet
#

no doubt

uncut lark
#

Gotta finish this one first.

cerulean igloo
#

Hey yall, having interesting collission problems. imported a few meshes. First building interaction works fine, path finding/navmeshes work. Second building acts weird.

#

What's more interesting I manually added collission box to the second one because before it just went through it (kind of makes sense because no collission) but what I don't get is why the first building works out of the box with no collission set. Interestingly, they're from the same set

dark drum
cerulean igloo
#

Yep I know

dark drum
cerulean igloo
#

first building seems to have something fancy

dark drum
cerulean igloo
#

new being the second one?

#

second building?

#

Normally I see nav mesh rebuilding whenever it needs to automatically

dark drum
steady night
#

is it possible to set a varaible for a bool holder?

dark drum
steady night
#

like for instance this setboolhere

#

i want a child component to set "that bool" to another bool

#

like this i want my "Can ast firebll" to replace the "SetboolHere"

#

and im not after updating it each frame

dark drum
steady night
#

@dark drumah ty that worked

cerulean igloo
#

I remember once it did but I must have messed something up

#

maybe added manual collission in the mesh then removed it

dark drum
cerulean igloo
dark drum
# cerulean igloo

The slope angle is 0, I would imagine this would need to be between 30-45.

cerulean igloo
#

Yeah, can't make it work. I deleted and reimported meshes again from scratch as they came from the store. They have no collissions set on the mesh, yet the nav meshes show this:

#

Where does that come from?

#

Actually, that's a lie.

dark drum
cerulean igloo
#

I do see "Remove Collission" button not disabled. So means something is there but I can't visually tell

dark drum
cerulean igloo
#

Yep, something is there

cerulean igloo
silent plaza
#

Hey friends 🖐️ I have a very strange bug : I added some Sci-Fi Interior Modular Pack in my project, and when I add more than 5 meshes to my project, Unreal doesn't load my BP_ThirdPersonCharacter, it is like the pawn is not charged at all ?! Is it a problem of memory ? How can I fix this ? The demo scene in the pack, with a lot of meshes works perfectly on my computer. I don't understand what happen and I can't find info on that online
Thanks 🙏

cerulean igloo
#

I mean it's good to know but that's not the reason why I'm obssessed understanding this lol. I need to know this because at some point I want my pawn to be able to come right up to the door and "enter" the building

dry sleet
#

Just make sure you're not using "Use Complex as Simple".

#

It's very very heavy on performance.

broken badge
#

Or does everything work absolutely fine until you place the sixth mesh?

silent plaza
#

The Game Mode is good, and everything work absolutely fine until I place the sixth mesh, it works with 5 but not 6

cerulean igloo
broken badge
cerulean igloo
#

completely messed then though. Can't access the stairs

dry sleet
broken badge
dry sleet
#

The blueish white one shows the complex mesh, which shouldn't be used.

#

Don't even feel tempted to use it as a stopgap in this case -- you'll lose several milliseconds if you place a couple of those buildings.

silent plaza
cerulean igloo
#

Okay

dry sleet
#

But did you make a custom collision mesh in your 3D utility?

broken badge
cerulean igloo
#

So my question is, how do I configure the collission/nav mesh for my pawn to be able to go upstairs, don't think I can manually draw the collission to allow for it?

cerulean igloo
dusky cobalt
#

Is it common to collapse even 1 node to macro to make it look clean?

broken badge
dry sleet
#

Yeah, it's possible to define your own shapes using Collision -> Add Box Collision, and copy it around a bunch...

cerulean igloo
#

Yeah sure but

broken badge
mystic edge
#

Does anyone know the process of creating a grid based city builder? Youtube doesnt have much on that...

cerulean igloo
#

It's not very flexible, or are you saying draw that box collission to the foundations and add mini planks on the side of the stairs to make them accessible or something

broken badge
dry sleet
broken badge
#

You can select the cube outline and move/scale/rotate it like any mesh

cerulean igloo
#

Auto convex doesn't react when I click on it.

#

😦

#

oh nvm

broken badge
#

You have to alter the settings (usually a window in the bottom right)

dry sleet
#

Auto convex will probably not hack it.

#

It's more for generating tight bounds around semi-convex shapes like boulders.

#

But you can try I suppose.

broken badge
#

You're probably right but it's always worth a shot

cerulean igloo
#

It's generating something but when I click build paths after saving it, the nav mesh remains unchanged

broken badge
#

Personally I'd just use the simple collision shapes, a bit tedious to put together but very low collision geometry and it likely won't have to be perfect anyway

cerulean igloo
#

still like this

cerulean igloo
#

Just trying to understand or learn how to add a second box which you can move around etc

broken badge
#

Make sure you click Collision > remove collision to get rid of any existing collision geo that Unreal auto-created on import. Then you can just go Collision > Add [whichever shape you like]

cerulean igloo
#

No gizmo to adjust visually, will have to do it with numbers only?

broken badge
#

There should be

#

If you click the green outline, it should turn a brighter green and get the normal gizmos. Try pressing W/E/R keys

cerulean igloo
#

thank you

#

these are some noob Qs but your patience much appreciated.

faint creek
#

Hey guys how can I Set Active the Widget using Blueprint? Because I don't find it 🙈

broken badge
broken badge
silent plaza
#

But when I tried on fresh level, I had the same problem

broken badge
faint creek
broken badge
dry sleet
#

@cerulean igloo by holding Alt and dragging a collision primitive you can duplicate it in that axis

#

It saves a lot of time

faint creek
dry sleet
#

Can press Ctrl+D as well but that usually offsets it a little, holding Alt is smother

maiden wadi
silent plaza
#

I doubt it is a memory problem as I can put it in the example maps of the pack. Or maybe it is a parameter they checked at World/level details?

maiden wadi
#

The view you described is as if your pawn was not spawned. And adding a mesh can mess with collisions of spawning.

cerulean igloo
#

Literally copied the set up and dragged it to the other side but after rebuilding paths, left box just doesn't get incorporated into the nav mesh

broken badge
maiden wadi
#

There is no green box around the stairs. So they cannot generate navigation on top of it.

broken badge
cerulean igloo
#

do the greenboxes have to touch

broken badge
cerulean igloo
broken badge
#

I generally overlap mine a little just to make sure nothing slips through but there's no requirement to have them touch

cerulean igloo
broken badge
#

Weeeird

#

Try making them a little T H I C C E R

#

Odd that it only works for one though

cerulean igloo
#

Something is up

#

I just removed the not working one and moved the working one (right) to the left

broken badge
#

Oh in fact, try raising the building then hit the End key to snap to the ground again. That might rebuild the nav

cerulean igloo
frosty heron
cerulean igloo
#

I'm still on job number 1

#

The guy still refuses to go on stairs though..

broken badge
#

It might be the lip of the box on the bottom stair, try extending it so the ramp would go through the ground

cerulean igloo
#

ah. nice.

#

makes sense.let em try that.

broken badge
#

Aren't collisions fun? 🥲

cerulean igloo
#

fantastic.

#

still no go 😦

broken badge
#

Check your character's CharacterMovement component for this value

#

Make sure it's somewhere around 45

cerulean igloo
broken badge
#

Try bumping it up to like 80 and see if it works

#

The stairs angle might be steeper than 45

cerulean igloo
#

Also, so annoying, it's not precise it's like the guy is afraid walking next to the building. the blue (p) nav mesh plane does nto correspond to where he can walk..

#

very inaccurate

broken badge
# cerulean igloo

Ah! Looks like the collision boxes are blocking your trace for where the character should move. Like if you were clicking on a solid cube

cerulean igloo
#

my trace channel is a special one though, not "visibility" so I'm not surprised..

sage surge
#

Hm, guys... I turned off collision and set all collision responce channels on Capsule Component to ignore, but still for some reason "Sphere Trace By Channel" register a hit when it go through this Capsule Component. Can someone tell me please why this happens? Is there some hidden channel which used by Capsule Component collision?

broken badge
#

Visibility would get the correct location in this instance though I think because the collision boxes wouldn't block that channel. Sounds like you may need to look into adapting your point selection code

broken badge
#

Any meshes will have their own collision properties as well

broken badge
#

Yeah, so your collision boxes will be blocking the cursor trace, and the character can't move into middair so they won't move... I think. The railing boxes are what I'm concerned about

sage surge
#

Wait, maybe I just turn it on manually when game start. Going to check.

broken badge
sage surge
#

In theory my sphere trace just use Visibility channel. I gues it should.

cerulean igloo
#

I use cursor channel

#

Tried a few options here

broken badge
sage surge
#

There is nothing wrong with my event graph for this mannequin. Maybe there is some Map settings which may force Capsule component channels always be turned ON no matter what I set in blueprint? This sounds crazy, but I have no idea what else it could be.

silent plaza
#

Hey I find a solution, super strange but I just needed to move the meshes a bit up. I think there was a spawning problem that causes to not spawn the player pawn properly

broken badge
#

Is the whole building mesh setup to allow the cursor clicks?

cerulean igloo
#

How doI check

broken badge
#

Type "collision" in the search bar and it'll be under "Collision Presets". Expand that and you can see the trace responses

cerulean igloo
#

BlockAll I assume is no bueno 🙂

broken badge
#

Looks about right. And no spheres appear if you click anywhere on the building? Which means that something in your code's checks for if it's a valid location needs looking at I presume

cerulean igloo
#

correct & correct

broken badge
#

Try printing the hit result actor or component

cerulean igloo
#

like this yeah

#

clicking on building on stairs, doesn't print

#

I think it's because of PCG component. I had trouble with it before

#

with visibility

#

I generate buildings with PCG

#

But with blockall, it gets in the way and I can't even select my char/pawn then

broken badge
#

What about just blocking the cursor?

#

(I don't really know the PCG system so help is going to be limited there 😬 )

cerulean igloo
#

I think it just acts as any other "layer" that is placed on the nav mesh

#

it does intervene with clicks and visibility and such

cerulean igloo
#

If I do that I'm unable to select my char then

broken badge
#

If the character is behind a building or even if it's in the open?

cerulean igloo
#

even if it's in the open

#

the pcg plane because almost on top of it. I had a big issue before it where I couldn't understand why I couldn't select it

#

turns out my mouse was hitting the PCG component as a hit actor

#

all the time

#

so I had to adjust those settings

broken badge
#

Could you add a custom collision response for PCG so you can ignore it elsewhere in your code?

cerulean igloo
#

I think it's ignored already with those current settings

cerulean igloo
#

so maybe that PCG isn't the problem

#

ah, no

#

I adjust adjusted the print out statement to do a bit earlier

#

PCG is the problem..

#

🥲

broken badge
sage surge
#

FOUND IT!!! My Health Bar Widget is the reason of why Sphere Trace still registered hits 😂

cerulean igloo
broken badge
#

Ah okay, but not that particular instance...

#

@cerulean igloo What happens if you plug in Hit Component instead of Actor?

#

Hopefully that'll return the instance

cerulean igloo
#

in the rpint?

#

indeed

broken badge
#

Okay, nice, that's a start

dusky cobalt
#

Just wanted to make sure, but if I set member in struct, and I read variable from the same ''node'' of struct, will it read already updated variable or should I break struct and take the variable again ?

broken badge
# cerulean igloo indeed

Would you mind popping in the whole section where you're tracing and drawing the debug spheres?

broken badge
dusky cobalt
broken badge
broken badge
#

What object type is the PCG layer? (World Dynamic/ Static etc)

cerulean igloo
#

not sure

#

You're right it doesn't go passed that is empty check

broken badge
#

Yeah, so it doesn't look like the sphere overlap will pickup anything that's in the PCG. Hopefully just adding that to the array will fix it?

dusky cobalt
cerulean igloo
#

Not that many types, you'd think it would be world dynamic

broken badge
broken badge
#

Try static?

cerulean igloo
#

Removing WorldDynamic

#

worked

#

It's an inverted logic

#

It ignored WorldDynamic

broken badge
#

Oh nice. Weird but nice 😅

cerulean igloo
raw basin
#

Hey guys, is there a way to utilise a second uv channel on a mesh for a material? IE I use UVW ID 1 for a brick texture, but I want to use uvw id 2 for a stone texture, the reason for this is because when I use brick, it has a solider course also, with stone, it does not so I would like stone to replace both materials. ideally this will prevent me from having to have two meshes.

Stone applied when using uv's set up for brick -

And when I add a second UVW for stone -

broken badge
raw basin
broken badge
#

Sounds like you'd need to re-UV the object or create a texture specifically for that asset that uses tri-planar projection instead of UV projection

raw basin
#

I had set a UVW in 3dsmax on channel 2 for stone, I was hoping I could utilise this in unreal? UVW Channel 1 is for brick, if I could just tell unreal to change the uv chanel to use the texture would ppear correct

marble tusk
cerulean igloo
#

I also PCGed a bunch of trees but what I don't understand is what they go up and down so weirdly. it's almost as if some sway effect is going wrong

broken badge
#

It'll be attached to WorldPositionOffset

cerulean igloo
#

This is one of the mesh's settings

broken badge
cerulean igloo
broken badge
cerulean igloo
#

same in the other one

raw basin
#

i was being a plonker just needed to change the coordinate index, terminology issues 😄

broken badge
#

It'll be in the actual material node

cerulean igloo
broken badge
#

Okay, so if you unplug that from the WorldPositionOffset pin for the material attribute, it should stop the weirdness

cerulean igloo
#

no such node

#

oh pin

broken badge
cerulean igloo
#

Yeah it stopped

#

I liked the animation wind slight movement etc. but it was going crazy

broken badge
#

Not sure why it was going so crazy but there's probably some variables in that parent material you can play with if you really want

dusky cobalt
#

Is there any bug with assigning tags at runtime from data assets? My ''Workers'' are getting ''Fighter'' tag that is in other Data Asset xD

hollow cove
#

I have a seed that increments every x server seconds, and when it does it sets any random streams that use that seed. i'm thinking how is best to structure that, like where to store it etc.

dusky cobalt
hollow cove
#

i dont like having to cast to game state for it though

#

the game state should probably be spawning the thing that needs it anyway rather than just having it in the level hmm

trim matrix
#

hey i have this big map based on the backrooms, and i wanna have it to where the lights turn off when not in view of the camera to help with performance, the lights are a blueprint with a plane that has an emissive texture, a rect light, and a spotlight. how would i do that with blueprints?

dusky cobalt
broken badge
#

Also make sure your texture's emissive isn't doing any real lighting, that's very expensive

cerulean igloo
#

Question on finding doors of a building. If I tell a pawn to move to a particular building. How do I mark the door so it would stop there and not at some closest corner of the mesh?

broken badge
broken badge
trim matrix
#

what is a good draw distance?

hollow cove
#

i assume youd want to stop next to the door so youd want door location + forward vector * amount (assuming forward vector is pointing the right way) or * -amount

broken badge
cerulean igloo
broken badge
trim matrix
broken badge
broken badge
cerulean igloo
#

Good point.

trim matrix
#

i think my lights are just maybe too much? bc i have it up to 20000 and theyr having issues still im getting like 8 fps

broken badge
#

Try it in a new scene with a standard light, just to get an idea for how it works. I'm trying it myself and these values work pretty reasonably for me with a basic point light

#

It's possibly something to do with them being in a blueprint for some reason

#

Rect lights are also very expensive. It may be worth experimenting with other types light spot lights

trim matrix
#

what would be a better way to make office lights then?

#

removing all the rect lights and leaving just the spotlights im now getting 26 fps

broken badge
#

Your system and scalability options are also considerations

hollow cove
#

if its an office building, couldnt you more aggressively cull lights behind walls and only have 2-6 visible at a time?

trim matrix
broken badge
#

If you remove all the lights and leave just the emissive texture for lighting, how well lit is the scene?

hollow cove
#

i would suggest doing the wall layouts with that in mind

trim matrix
hollow cove
#

with that many lights that close you might as well use a single even lighting source for the whole room?

broken badge
#

Okay, that looks like it could be turned down a little, just because it looks like it's doing some environment lighting as well (left side)

trim matrix
hollow cove
#

oooh that makes sense

broken badge
#

You might be able to get away with a single directional light pointed straight down, and have your ceiling as a one-sided plane so the light still comes through

hollow cove
#

i think the way i did that once was to have a skylight and then make the ceiling mesh work on channel 1 rather than channel 0 lighting so it doesnt interact with the skylight

trim matrix
#

yea but i wanna be able to have some rooms with the lights turning on once the character enters a trigger, would i be able to do that still?

#

trying to get the performance up mainly bc im gonna be adding alot of plants to some of it and i didnt want it to completely freak out

broken badge
#

Maybe, I'm just spitballing

trim matrix
trim matrix
#

the directional light is already showing through the ceiling

cerulean igloo
broken badge
cerulean igloo
#

and in child class do I just position it at the door?

broken badge
#

Yup, that should do it

#

Obviously, if some of your buildings have more doors, you'd need more scene components

cerulean igloo
#

Yep

#

So after creating a BP child class

#

I'm trying to use it in my PCG where before I just have a pool of meshes (houses) that PCG picks from to generate the map

#

I'm trying to replace that mesh with BP class but it looks like it just takes a static mesh

#

Component also no go:

broken badge
cerulean igloo
#

Allows to select jsut one BP class though. So I'll try to get more nodes but also maybe it's possible to code something up in class where you load all static meshes and it picks one at random upon instatiation idk

broken badge
cerulean igloo
#

Spawn actor node doesn't work unforch. It spawns at the same spot, doesn't randomize

#

if I connect 2

#

But I have an idea

#

PCG needs this class type:

#

Hm, okay another way 🙂 blueprint Q: how do I randomly execute one or the other "spawn actor" node here:

#

50/50

#

or randomly select rather, because there could be more

broken badge
#

This should work

#

Just change the Max value to the number of choices

cerulean igloo
#

PCG blueprint doesn't have those nodes

spark steppe
cerulean igloo
broken badge
# cerulean igloo Thanks Donny. With the help of pcg guys, figured it out. But I have a question a...

Off the top of my head (so probably a bit of a scrappy method) , I would add three or four scenes for doors to the parent, all at 0,0,-1000 by default just so unused ones won't be nearby.

When checking for the AI move, get all scene component of the target, then a for each loop to get the nearest scene to where you clicked. See here: [#blueprint message]

Discord

Discord is great for playing games and chilling with friends, or even building a worldwide community. Customize your own space to talk, play, and hang out.

cerulean igloo
#

I think that makes sense.

broken badge
#

Any questions just give me a shout

cerulean igloo
#

I'll come back when I start implementing that path finding logic

#

well, the loop really.

#

sometimes these simple things really get frustrating. I can't move the door 2 for some reason.. Door1 scene was fine..

broken badge
#

Strange. Tried closing and re-opening the blueprint?

cerulean igloo
#

Worked.. But concerning that essentially "turning it off and on" again fixes it..

broken badge
#

Yeah, it seems to be happening a lot more often with newer versions of UE for some reason. I get a lot of times where I can't move, delete, or copy/paste nodes until I reopen the blueprint

oak gust
#

I have a weird bug, my progress bar fill down to zero if I put some shear in the overlay parameter, I don't have any code which change the progress bar trigger (I check it), if the shear is at 0 I have no problem, what is happening ?

hard palm
#

Does anyone know why the values are different if they came from the same object?

broken badge
hard palm
#

Actually it seems the Debugger is bugged idk, on the C++ side it's coming correctly

tired hollow
#

Got a question. I made it where when the crouch input action is triggered, it is plugged into a timeline that lowers your camera halfway down, and then when it's completed, it reverses, but since that is not altering the capsule, how do I hide under tables?

#

Or would it be better to have hiding places with their own cameras that when you press e, it switches to the hiding place camera and disables the player?

broken badge
tired hollow
#

No, because there's no smoothing with that

#

I want smoothing

broken badge
tired hollow
#

huh

#

and I try that with the default crouch function right?

#

Also this is first person so there is no boom arm

broken badge
#

Ah gotcha, ignore me then

#

You could resize the capsule in your timeline?

tired hollow
#

I already tried that, however when I walk up to my enemy, it bounces him

cerulean igloo
#

Got a slightly annoying opacity going on with my decal. whenever pawn is moving it becomes more transparent and flickers.

#

I think it's to do with this but I'm not sure how to fix

celest oar
#

is there an event for when you open a widget? is it OnFocus? contruct is not a solution for me since its called a bit too early

untold ivy
#

Alright, so after spending too much time doing C#, I feel myself suffering from .NET withdrawal. Is there a way to handle Arrays like lists in Unreal? Like, I'm making a volume for each rooms in a building. Issue is, some room are not cubes. So I have to use multiple cubes. I then take a list of all Smart objects within those cubes. Is there an easy solution to merge these arrays together? Potentially to look within them to find something of a particular type in one of these arrays?

celest oar
#

i dont think there is a "merge" built in

#

your gonna have to "add" all the items from one array to another

#

but i am not 100% sure

untold ivy
#

I'm not going to lie, I'm 99% on team unreal engine. The only thing I miss is my sweet C#. Guess I'll have re-learn how to properly handle arrays I guess.

untold ivy
# thin panther TArray::Append

To be honest I'm in blueprint. I was wondering if there were manipulation similar to .Net functions in blueprint. I probably poorly worded my question to begin with.

#

No matter, I'll figure it out. I believe I should eventually switch to a tag based search rather than area based one. Mark the areas that are part of a shop with the shop's tag and search for all areas with it. Then iterate over them. I was just making sure there wasn't something similar to these function simply cause I don't know what I don't know.

#

I apologize for the confusion

thin panther
#

Completely missed the channel not going to lie. Yeah you'll have to loop through then
LE Blueprint Extended may add the functionality though

#

If you're familiar with C#, you should dip your toes into Unreal C++. The horrors of C++ are largely hidden from day to day use in Unreal's API
A lot of it is also modelled after .NET, so you'll feel fairly at home (stuff like treating structs as value types, and classes as reference types, or in this case, pointers.)

TArrays, for instance, in C++ land, are nearly identical to Lists, just without LINQ 🥲

#

I would also tell you about UnrealSharp, but you're already there :P

untold ivy
untold ivy
#

Despite my complaint about it, this is truly a marvel.

thin panther
#

Your limits will be complexity and multiplayer. It's amazing for gameplay scripting, but a lot fo multiplayer things aren't exposed, and things like complex functions and maths, as well as heavy iterations (anything over 1k really), it will quickly slow down, and/or fill multiple monitors worth of screenspace :P

#

Blueprint is an amazing tool, but it's also designed to be used with C++, so I definitely reccomend approaching it at some point 🙂

#

Much like everything else, each have their pros and cons :P

#

A common usecase for C++ is just to expose things to editor.

For example, with some intermediate experience, you could make a node that appends two arrays together for use in blueprints :D

#

I think, for me at least, BP is the first visual scripting language I've seen that doesn't feel pointlessly dumbed down or childish.

tawny jackal
#

Where in the lifecycle does the animation blueprint update? I have a value that is properly changed, but the visual state doesn't update. When revisiting the object, it properly animates, so it looks like right now that upon initial setting the ABP doesn't see it.

untold ivy
# thin panther I think, for me at least, BP is the first visual scripting language I've seen th...

I already have. I completely remade the detection system for my current project. Instead of looking for the root of a character, I search for a particular nodes of the mesh. It also include checking if the onlooker is in front, behind or on the side (with angles defined. For each node)
So I could make it so a character is unrecognizable without seeing his face from the front with that system. Or that you could either recognize his face from the front, or a logo on his coat from the back. Or neither. And also change it at run time.
For a game with disguises and stuff I wanna make, I'm pretty happy with it.

thin panther
#

Sounds awesome!

thin panther
versed oasis
#

okay so im not 100% sure if this is blueprint related but i need help. So i copied my project from work to work on it at home a bit during the weekend and i opened it just now. And all of my blueprint procedural mesh actors just fall through the ground whenever i press play. Whats going on

#

that was not the case at work. No idea what suddenly changed

versed oasis
#

was just checking that. Collisions were fine but for some reason on the cube blueprint the physics were disabled and made the object fall through the floor

#

very weird

#

back to the seamless portal blueprint i go then xD

#

Invalid Simulate Options: Body (NewBlueprint3.Cube Cube) is set to simulate physics but Collision Enabled is incompatible

turns out its now giving me this a couple of times

rapid hollow
#

trying to make my progress bar fill smoothly but it's not working.

gentle urchin
#

Your logic seem pretty flawed

rapid hollow
#

how so?

#

I tried using a lerp, but it just stops at whatever the alpha is set to

gentle urchin
#

Well im just assuming since you're not showing everything

#

Im lacking info

#

InDeltaTime, whats updating that?

rapid hollow
#

event tick, its plugged into the delta time pin.

#

its the only way i could find to get the delta time

vivid quarry
#

Can someone tell me if this is a dumb way to retrieve and set animation montages for my weapons? Is there a more efficient way to retrieve them per attack or is this OK? I have a data table with a few weapons that it retrieves the montages for on the equip event, so it's not checking too much stuff too often, just feels like a lot of variables to set. But I want each attack to be able to have its own trace timing and size, as well as damage and stagger power, etc, so each potential hit *should *be its own little event

#

Obviously all the nodes aren't connected yet but this is the gist of it

faint pasture
rapid hollow
#

So I believe every tick

faint pasture
#

check that you have access to a delta time in widgets somehow

#

also where does that display exhaustion variable live?

#

is it a function variable or a widget one?

rapid hollow
#

It's a local variable to the function

faint pasture
#

thats the problem

#

it gets nuked every time the function returns

#

it does not carry over

rapid hollow
#

Ohh

#

I didn't know that about local variable

cerulean igloo
faint pasture
rapid hollow
glad mesa
#

Hello, how would I do the highlighted thing?

stone field
glad mesa
#

yea I got the branch

stone field
#

ah so you do

#

pull from SlotIndex, add isValid, link result to Branch Condition

glad mesa
#

these are the only ones I can get from pulling from SlotIndex

broken badge
stone field
glad mesa
#

Yea nevermind me I am discarding it

#

thanks for wanting to help tho!

gentle urchin
#

they probably mean to validate the slotIndex in relation to the .. thing you're working with

#

inventory ? Stat?

#

so if it were an inventory, you'd want to grab the inventory array, and do the "IsValidIndex" node

#

this checks that the slot actually exist in the array

brazen raptor
#

Hey Devs ! I've created a Blueprint Interface to send a message

Then I'm calling this interface from a Widget which looks like in the screenshot

Then I created a Interface event to receive that function call in another widget blueprint which is in the second screenshot.

However the function is called form second screen shot but it never gets called in the 3rd screenshot.

What is wrong ? Why the interface function is not getting called ?

maiden wadi
#

That said. Breakpoint the nodes. Make sure the Branch is running true, etc.

dawn gazelle
brazen raptor
#

Situation is I want ot communicatedbetween 2 widgets without taking their references.

In screenshot 2 I want to call that interace from widget 1

In screenshot 3 I want to implement that interface as event to receive the information in widget 2

maiden wadi
#

You can't communicate between two widgets without referencing them somehow.

brazen raptor
maiden wadi
#

Even with an interface, you still need to reference them, just not with a casted pointer.

dawn gazelle
maiden wadi
#

What is the relation of Widget2 to Widget1?

#

Because chances are you're probably looking for a delegate.

trim matrix
brazen raptor
#

widget 1 and 2 have no relation , but they need to share 1 information to other,
so instead of taking references and calling their functions, I wanted to solve this using Blueprint Interfaces,

I've added the interface in both the widgets and tried calling it from one and implementing in other to receive information , its not working ,
I'm kinda stuck

stone field
maiden wadi
#

An interface is the last tool you should ever consider using to communicate. It should be the last resort when every other option is exhausted.

stone field
#

In many cases Interface has the advantage of decoupling things

maiden wadi
#

It really does not.

#

You don't use it for that.

trim matrix
maiden wadi
#

It does not fix casting linkers.

brazen raptor
#

okay

maiden wadi
#

An interface has one singular purpose. To fix issues where you need to call a similar event on multiple classes which cannot share a base class or composition.

stone field
brazen raptor
maiden wadi
#

Clean asset free parent classes with defined or composition if using classes like Actor in most cases. That said if you just want to throw data to the wind and let things catch it you should consider plugins like the GameplayMessageRouter from Lyra.

#

It's basically a global event dispatcher in a way. Anything can broadcast on a tag, anything can listen on a tag. Easy to send messages with data around.

stone field
maiden wadi
#

You can slot a parent in anywhere. May require rework. But most cases you know where your class hierarchies are. And a lot of gameplay systems should prefer composition.

stone field
#

I don't really see the downside. Maybe it's a bit clunky with GetAll and generally assuming you have just one thing that wants that, so get 0

twin tiger
#

um new to unreal here and hopefully i am in the right chat, but i am having some trouble, i have an enemy character and a player character, below is the event graph i have for the enemy character, i want to make it that when the player character enters the sphere of the enemy character the enemy proceeds to move towards the players current location but it isn't working.