#blueprint
1 messages · Page 197 of 1
Oh that's it? Thanks!
Because if you place an item in the world and don't specify the item class type, there shouldn't be any uobject with the item. However, this might not be needed. You can remove the set item object if it's invalid. (I believe I do this later in the video)
Lol, maybe I'll write a post on it or something.
Ohh right
Yeah you did
Would this be setting it back to visible? When done, the text box stays on screen, how can I remove it before and after talking to an npc?
I'm not sure what you mean. You can just remove this bit and it'll stay up until you remove/hide it. You can do this from however you handle the interaction. If needed.
I thought you were talking about the visibility in the widget itself. I'll try that and see if it works
I got it to stop being timed, but now how do I interact to close the dialogue? After the sentence finishes, it stays on the screen
hello
who has ever used hive keychain wallet integration to ue5?
Heyho!
Unsure if this is the best place to ask, but figured why not.
I'm looking for some help regarding a tutorial online (https://www.youtube.com/watch?v=kDFmMI1QdZQ) to make a conveyor belt system for my project. I've followed this part and the previous part and got it working, with one slight hitch. At the end of the video, he makes a 90 degree turn with his belt and it works. When I try that, my spline gets all messed up (https://imgur.com/a/ue5-conveyorbelt-patisanoob-tutorial-4ZOl2mW).
I was wondering if anyone would be able to give me a hand figuring out what the problem is and what I've done wrong. I've uploaded my project to a google drive (https://drive.google.com/file/d/1gPrnQEvCQojSSZvbBRNGzSario1GpLTo/view?usp=drive_link). In order to test the building, look at the ground and push "B" and select the conveyor belt.
Any help would be great!
In this tutorial, we will be making the conveyor belt from Satisfactory. They will be spawned in by the player at runtime and adjust to rotation and location.
Timestamps:
00:00:00 - Material & Parent
00:04:30 - Components & Variables
00:11:00 - New Functions & Overrides
00:37:00 - Update Spline Shape
01:01:20 - Update Spline Visual
01:16:00 - I...
Do you know what kind of force I can use to do that? I tried looking at a negative radial force but that doesn’t seem to achieve the effect I want because the shape is a whole sphere, and I kinda want it to be pulled in from a like cone/rectangle shape, in a similar way to how the physics would work if a hole opened up in a space ship or something and stuff got sucked out straight through the hole
Does anyone have any suggestions on how to handle movement of characters and the camera in varying gravity scales?
I was thinking of switching to flying movement type if the gravity scale is between -0.25 and 0.25 (until it hits the floor and or ceiling) but as the scale can be negative I'm not sure how best to handle being able to walk across the ceiling.
Would just rotating the character cause any issues?
You would add a force in the direction of the hole. You can multiply the direction by the total force you want to apply.
You'd probably need to check the actors position and angle relative to the hole to determine if the force should be applied. If it's outside its cone area then don't add the force. If it is, add the force.
how can i add my custom variable as a paramter in my custom event?
Select the custom event and in the details panel add an input and set it up how you would any other variable.
Ok thanks, would that work if an object is flys really fast into the cone area? I kinda want all or most current momentum to stop when it goes in range and get sucked into the hole right away, kinda like a super strong vacuum
there is no parameter i need in that search bar, which is
When you first start applying the force you can set it's velocity to 0,0,0.
For a world soft object, you have to use a world structure object or something like that. You can then break the structure to get the soft ref.
Ok, I’d need to use event tick also right? And how would I use force on event tick with an on begin overlap
Hi! I'm currently working on a FPS and am looking for an offscreen indicator. The idea is that the indicator would always point to the actor, even when not in the screen field. As you can see in the attached video when I'm turned away from the object the widget just stays at 0,0 in the viewport (just freeze)
Any ideas?
Might need to look at the code to be able to tell whats going on behind the scenes
On overlap begin you would set velocity to 0,0,0 and then add to an array.
On tick, if the array has anything in it, loop through them and apply the force.
It's just an actor on Blueprint
I imported a backpack model off the sketchfab plugin for UE and it worked perfectly but when i restarted rhe engine it deleted the texture. i found the texture files on my computer and reimported it. im now trying to fix the material. so i added them and it worked fine up until i added the Base Color. i tried adding just how the previous base color was added and for some reason it keeps showing an error labeled "Arithmetic between types float 4 and float 3 are undefined" help me please
use the RGBA output from the texture sampler
how im still new to this 😭
if anyone can check #volunteer-projects and can help me DM me
If I'm creating a Dungeon generator but want each Room to be controllable individually (add/remove walls, traps, themes, etc...), this means it would be best to have each Room be its own "Room Generator" actor BP, and then have my "Dungeon Generator" actor BP just spawn and manipulate a bunch of Room actors, right?
Assuming so, does that mean I can't really use the Construction Script to build it because I can't spawn Actors until BeginPlay? I was hoping to at least have a debug grid visible in the editor rather than needing to click Play all the time, but maybe that's just a silly QoL thing I don't need.
Conversely, if I were to use the Construction Script to do all the math and planning, and get the nice debug grid going, wouldn't that mean I may as well not use separate Room actors at that point?
Paging @maiden wadi because this is relevant to what you were helping me with last night (thanks again btw).
Basically, I think I'm going to start over with a different approach to generation. Rather than [creating a large pool of randomized Rooms and dropping them where they fit], I will be [creating each individual Room sequentially based on the need].
how can i make that the hands of my character follow the mouse
I heard that's it's not good idea to try and spawn actors from construction script as this may fk up your project. And yeah your concept makes sense to make like general map generator that spawns something here and here in numbers this and that, and then based on what it spawned the rooms generate themselves with other logic.
Alright, so I may be heading in the right direction anyways. Thanks!
I reverted to a previous version and it works totally fine again. I really wish I could figure out why. I wonder if the Construction Script is causing problems for some other reason.
Does anyone know what it is that keeps the character upright?
In what way? They don't simulate physics or anything. It's all kinematic.
So if I set the pitch to 90 (actor rotation), the character should be layed down. This however doesn't happen and remains upright.
Something in the CMC most likely. I'd imagine it has some simplification for setting the capsule location for speed.
And you can’t change that capsule so I doubt you could do it that way
Ahh it's linked to the gravity direction on the movement component.
howdy, trying to get the "Is Falling" event to work on a first person project, and I think Ive found where my missing pieces are, but not sure how to go about this
This is what the tutorials screen looks like on his AnimBP
Im trying to piece together the top part (which I think is the issue), but I cant find the 'target' - 'character movement' node
How does it look like on your end?
And pulling from Character, searching for CharacterMovement doesn't give you anything`?
thats the full bit
I think it’s try get pawn owner if you’re in anim bp (not owning actor)
GetOwningActor is also fine in theory
haha your kidding that found the node
ffs lmao
Isn’t that validated get failing? Or maybe the pawn doesn’t have the right AnimBp set
It's a Variable that points to a component and that is part of the ACharacter class
So you gotta search for it with that as a context
BP_FirstPersonCharacter is inheriting from ACharacter
So that's why that works
You can also find it from the AsBP... pin from the cast (use the Character variable though)
Pretty sure that's just Editor view. They aren't playing
AnimBPs tick during DesignTime
Oh? I hadn’t noticed 😅
That's a Member Variable of the Blueprint that person is in
Meaning the AnimBp
Which is created by them
You gotta make that variable
There is a quick way to do that by dragging the pin off and release it, like you'd when searching for the node
Then press "PromoteToVariable"
And name it
i added this and it seems to work for the most part, only problem is it puts out a bunch of errors if i walk into the box collision, or something that isnt simulating physics enters it
Then add a check if "IsSimulatingPhysics" before calling the Force stuff on it
Wouldnt it always still be trying to loop through anything that goes through it that isnt simulating physics, but just not adding the force?
ah beauty thanks
I would create your own array of overlapping actors on the begin overlap. You can check at that point if simulate physics is enabled and if it is, add to the array.
So what does everyone think to this feature? 😅
superb, ship it
somewhat reminiscent of what happened in our old demo after dismounting a train
is this correct?
Yea that should work.
alright, yea it works good so far, thanks again for the help!
Love it. This is the first time i've actually played around with the flying movement mode so experiences a lot of new things lol.
Not sure why he just spins around though. o.O Either way, i probably want to control the pitch of the capsule from and animation anyway.
Anyone know how to keep a destroyed mesh from chaos destruction as a permanent thing?
I've seen a video a while back where they blew up some meshes (rocks etc.) and I'm guessing the did it with the Chaos Destruction thing.
Then they kept it as it landed afterwards instead of manually placing meshes everywhere to make it look like there was an explosion.
(So not caching to reuse the explosion later, but more as an environment creating method)
do you know how i can destroy the primitive component object reference when it hits a different box collision? I tried doing Destroy component but that doesn't seem to work, the things I'm using for my objects are just normal cubes from the add menu that have simulate physics checked, down the line im probably going to add a custom mesh for it, but im just using cubes to test for now. When i want to have a custom meshes that can be moved around with physics would i need to make them actors, or can i just do what im doing now and drag the imported static mesh into the scene and turn on simulate physics?
You want to destroy the actor the component is inside. Use other actor and destroy that.
As an fyi, all things you place in the level are actors, if you drag a static mesh in, it creates a dummy actors with a static mesh component inside.
oh alr thanks, it works but the only problem is i get this error after: Blueprint Runtime Error: "Attempted to access StaticMeshComponent0 via property CallFunc_Array_Get_Item_1, but StaticMeshComponent0 is not valid (pending kill or garbage)". Node: Add Force Graph: EventGraph Function: Execute Ubergraph BP Vacuum Blueprint: BP_Vacuum
So you'll need to remove the component from the array.
do i just need to drag out a get of the array variable and then drag out from the array and type remove and then plug in the component to that?
Yea
cool ty!
@dark drum I removed the part you said, but the dialogue stays on the screen after talking to the npc. How do I set it where I can close the conversation with an interact key?
Call what you removed when you interact.
What do you mean by call and how would I do that?
Bruder, klick doch nicht jeden scheiß spam link...
And yes, the German comes out with that shit.
Freaking spam bots
anyone know how to fix this/a better way to do what im trying to achieve? im trying to scale down an object when it enters the collision and then destroy it once it's fully scaled down, but if one object enters and then another one enters immediately after it messes with the timeline and the one that entered first stop getting scaled down.
how does your scale down node know what actor is the target? is this bp for the trigger or the actor to destroy
uh im not sure, this bp is a vacuum tube i have, that firsts sucks things in and then when it begins overlap on this collision it scales it down smoothly and then destroys the actor
works fine if there is just one at a time, but if multiple hit it before one can finish it gets all messed up
if this is the trigger's blueprint, the on overlap event should call a function on the actor, make one like "start death anim" then do all this other stuff within that
im not using any actors though, its just static meshes that are dragged into the scene with simulate physics turned on
those are actors with static mesh components
well ya but they dont have a bp i can change though right?
well, you need one ;D make a new blueprint class with parent of actor, or static mesh if theres a special actor already for that
or you need to edit that animation node to have an input actor pin -- and debug it
so i tried to equip a sword to my players hands when i press a button in a widget. the spawned bp_sword is shown in the outliner but not in game. anyone knows how to fix that
I have a BP_InventorySystem with a InteractionTrace function that calls "Get player camera manager" and it works fine with the third person camera alone, but when I add a first person camera toggle, it seems to detect everything twice. Not sure if the double detection is the 2nd camera but I assume so.
How do you get the index from the camera manager to make sure?
Thanks.
Edit Figured out that the duplicate print to screen was caused by the second BP_Character on the level.
I am creating a better knockback system (previous methods such as add impulse was moving the player wayy too fast) so I've come up with this method (img) where I create a custom tick function and it will vinterpto the new location.
To achieve this i have created two variables _Actors and _TargetLocation and will loop thru and vinterpto there.
What do i need help with? I am trying to get the DELTA Time but i have no idea what an animupdatecontext is (which is apparently needed to get deltatime) . Any solutions? and any recommendations / issues with my approach to a better knockback system?
forgot this img
Could you explain how to do this please? Removing the part you marked keeps the dialogue on the screen. I'm trying to make it where I can press E to interact to start and end the dialogue
I am having a really beginner question, i am trying to make a AI move with a behavior tree, and i do got a NavMesh and i have set the "Enemy" to the AiController i have created, anyone want to help me quick? 🙂
can someone help me with this please
It would be just "Add Force" that you probably need to use on the actor when they overlap. The "force" vector on the node would need to be a calculation based on the position of the actor to be pulled and the location of where you want the "force" to pull them to and get a direction from that and additional math to determine the strength of it (you probably want it to be stronger the closer they are). You'd do this on tick as well for all actors that are overlapped.
Something like this should do it
Use event tick if you gonna do something per frame, not timer
can I duplicate event tick? bcuz I only want it to tick when I want (and i hv other stuff in event tick so I don't wanna just disable/enable bAllowTick)
No, but you can use bools and branches
Is there any way to use Enum created in C++ in the blackboard?
You can also bind and unbind dispatchers if you want to be fancier @shut quarry
Shouldn't it be visible?
Check if it's derived from uint8
Also check if it's blueprinttype
Might need that E?
Always start with the first letter if you’re using camel search
Unforunately no
I found workaround, because I cannot ''specify'' it here then I will just set enum first and then switch on it
I could BS it by using this:
much easier
to just set a timer that executes every frame and use ^
and it'll work
alr
Also you can just cache the delta second from the tick
Probably can get away with get world delta second but they are not exactly the same
Why would you do that when you have that node?
I guess if it's dilated separately.
imean the things is if i have 100 monsters and each of them are doing are setting a variable of deltatime every frame its gonna be laggy as shit. My method will make eveent tick do nothing unless the player is actualy facing the monster
hence why i wanted to create a seperate timer
Your method calling timer with 0.0 second is actually more harmful than tick
You can turn tick on and off.
Use sequence and bool on your tick. Then collapse the function to a graph
alr
has anyone had trouble getting a FirstPerson_AnimBP to correctly work with when trying to get string print out of "is falling" and "landed"
This is a misconception of tick. It's not so much that it's bad to have things running on tick, rather, what you might be trying to execute on tick could make it bad. If it's something you need to do every single frame, then you really don't have a choice. A timer is just tick with more steps as starting a timer up forces the world timer manager to check every frame if that timer is ready to trigger.
Depending on what leads up to your variable being set determines whether or not that tick could cause lag - for example if there is complicated math or plenty of loops (or large ones) happening - then that's when you may start to see signs of lag from your tick event.
im following a tutorial on Hand IK (https://youtu.be/3NWEvuX2dmA?si=bQ4p6ugv0gSxeXF0). i got to minute 43 and now im at a part where he opens the BPI Get essential values on locomotion easiily, where as for me it wont open. ive rewatched it. im in the exact samr bp with the same settinggs. whats wromg here?
Project File: https://www.patreon.com/legeend
Link: https://mega.nz/file/DypVxAwY#SspwzsBA5ic8RSfe6QGM3qmfqe8ekBRzDcxVl7tyDuQ
SFX: https://mega.nz/file/jmJ1WAbC#PbXBd3er-HY7If8G-SiiKOkIHbieywS6XjGIy7eswtg
hand ik with als! adding hand ik with als v4 to advanced locomotion system v4 with unreal engine 5. [alsv4 to ue5 tutorial]
ALSv4: https://ww...
You're double clicking on BPI Get Essential Values?
Check if there is a tab already opened at the top with that name. If not, try restarting the engine and try again.
its not open, ill try restarting rn
still wont budge. ive seen one guy in the comments with the same issue but no responses
I FIXED IT idk what i did i just right clicked and tapped implement event
hopefully it dosnt break
whhen im launching my AI backwards he continually tries to move forward thus ruining the ideal parabolic shape of the knockback. Any suggestions on how to make my AI stop moving forward until eh reaches the ground?
does omebody know why spline mesh is not in the middle of the spline whewn i make
Hi all, I'm new.
I have been stuck on this for a while now, so thought I should reach out for help.
I have it set up so that when i push "E" on a specific door, it takes me to another level.
My issue comes with when it goes to the new level, it wont take me to the door on the other level I want.
I put a "Player Start Tag" on the location I wanted it to spawn to, however, when it actually goes to the new level, it
spawns in a random 'Player Start" point, rather than the one I wish.
Here is my logic. (The string "this ran" indeed runs when i spawn in new level)
Looks like something to do with scale to me. Maybe the spline component is scaled? Or maybe the blueprint itself. I don't know exactly
I'd want to say it's the spline mesh that's scaled, but the code says it's not
When you open level, the world get destroyed. So what ever node you have after open level will not run
If you need to send data across, you can use game instance
try removing the spline from from the world and re-adding it
also try World Space
yes tried re-adding and if i do world space this happens
did not do any scaling
Ah I see something to do with world space/local space since the spline mesh is being placed farther away from the world origin
It seems when my player respawns one of my other blueprints fail. This is the error I get as well as corresponding blueprints that might be the reason. The last screenshot is how my respawn function works.
all codes what i get from chat gbt are wrong? all... is this normal?
Duh, chat gpt spits out random garbage. Never trust those stupid ai bots. They just throw shit together to make cohesive statements even if they don't make sense
i think you are right.
hmm, you try having the actor itself at 0,0,0 ?
i remember having the same issue....
Ok I was able to fix with an is valid statement (Previous issue I replied to), but now this function doesn't work. I tried the is valid statement but it didn't work. Help?
Basially I want it so when the player restarts, the collision type gets reset to default collision.
The satisfaction one gets after spending hours trying to get something to work and finally getting it working is 'Unreal' 😄
I see no isValid node
That was for the previous issue I had that is what I solved it with. This is a new issue
Basially I want it so when the player restarts, the collision type gets reset to default collision.
Yes, what is default collision
Overlap
So why are you setting it to block?
That is when the person enters the arena area. I want to change it to overlap when the player respawns.
So why are you showing the wrong screenshot then ?
Show the code that is the problem
Or are you saying you don’t know how to write it?
No need to apologize just trying to understand your issue
If you spawn the player again it should come with default collision. Do you have a respawn logic in place ?
This is my respawn logic
In the game mode blueprint
On a side note
If you’re doing the spawn twice just because the transform is changing you could just save the xform into a variable and SET that variable before plugging it in
Either way, when the actor is spawned it should have the original collision settings you’ve set in the details panel
It is overlap in the details pannel
I have an array of vertices from when I generated my terrain. I want to somehow get collision within a certain distance of a location in space to see which of those vertices are inside of it. I have a reference from my terrain blueprint inside this new blueprint, but I'm not exactly sure how to execute this properly
What nodes might be able to help
So what is telling you that it’s got the wrong settings then?
I just placed a node changing the overlapping manually before the respawn logic and it worked?
You can place an actor at that location, and draw a line trace from there ?
Sorry I probably miscomunicated something. I'm trying to change collision for a different actor and not the player. The outcome I want is when the player dies, the different actor's collision changes.
You’re interacting with this actor through an overlap before this happens?
This is the order that happens. You overlap with the actor, collision changes to block so player can't escape. Next, player dies in that area. During that respawn function, the other actor's collision changes to overlap so player can re enter that area.
wouldn't I have to do a crap ton of line traces to see if any of them hit a vertice? How does the line trace even know if it has hit a vertice?
I’ve no idea tbh, I haven’t tried to hit vertices before 😅
Anyways, case in point my problem is fixed and appreciate you for being there! Sorry for my terrible miscommunication.
have you ever messed with the Z locations of generated terrain? I really just need to flatten terrain within a certain radius of various points
Yeah then you would just change it back to overlap once the actor dies. Sounds like you solved your issue tho
The ONLY thing I can think of, that seems VERY resource intensive, is doing a for each loop and checking EVERY SINGLE VERTICE and checking that vertice to see if there is a spline point near it, and if there is, adjust it to that points height. But that seems crazy
I have not, no. Maybe geometry scripting could help but I’m not sure
It does seem like a lot yeah
How would you even be getting all the vertices?
I have a terrain blueprint and a spline blueprint with points creating a road.
In the terrain BP there is a variable called "Vertices" with a bunch of coordinates. It then creates triangles and uvs between those coordinates to make chunks. The variable is a vector array.
I made a function in the terrain BP and added an output to a return node that accepts vector arrays then plugged the variable in.
Then I just called the function in the spline BP and there's an output pin with our vertice variable.
let me attach screenshots it'll make it easier prob
Pretty simple
but the vertices are literally just coordinates in space not physical objects or anything so it's just weird
If they’re all world space vectors, you could prly use some vector math to compare them with an actor’s location. Or the points generated by an EQS context at that location
Maybe try #game-math for that part
Dang that sounds WAY above my head 😂 thanks though maybe I can look at that. Idek what EQS is
Environment Query System. Generally used for AI but the EQS contexts can be used to generate points around a location or an actor
looking for help creating a free look camera
Please, help.
Blueprint Text Export: https://pastebin.com/7uC8KAyV
Output Log (Warnings Only): https://pastebin.com/5hcpaLcF
Version: 4.26
Purpose: Mass-edit files from a game for a mod whenever said game is updated
Problem: Several Set Editor Property nodes fail to find properties that exist and there are no typos
Is there a way to do Dynamic State Trees, like the Dynamic Behavior Tree?
Does anybody have an idea how to return an enum value using chooser tables?
I need to send and input as an enum and then return another enum based on the chooser table I designed .
I’ve never heard of a chooser table
That's a cool new feature.
I'm currently creating some dummy objects to be used as enum return values! 😩
Oh it’s a plug-in, makes sense
Hello, I'm having difficulty with shooting projectiles. When strafing, the projectile shoots sideways. How can I make it shoot towards the center of the camera no matter what?
How could I make it so when I fire off an input action, it only fires once, even when I'm holding down on the key?
I have a door that opens when you press E, however, if I hold down on the E key it reads as if I were pressing it 100 times per second
Oh I figured it out, it's so simple lol. I just had the input action set to triggered instead of started
This setup might help you:
Thank you. Is the idea to plug the camera direction into the * node to be plugged in to the Set Velocity?
Replace the camera direction with the get actor forward node in your setup.
Is this how you mean? If so, unfortunately there is no change
This doesn't look like your projectile is firing to the side, rather, you're stepping away from the initial launch point. The only way I could think that you would want to change this is start to move the ball towards the end of the barrel and when it reaches the end then activate the movement component.
Well, if we are talking physich, as long as the ball remain in the barrel, you would have to keep the ball in the path of the barrel
If the speed is constant, you can probably use timeline to move the ball from the start till the end of the barrel
Hmm OK, I see.. Would you suggest using a timeline and a vinterpto to move it to the barrel?
On complete, fire away using impulse or w.e u have rn
I think the only other thing you could do is take the velocity of the actor and add it to the projectile at the moment of launch but then you'll have the opposite problem if the player stops moving immediately after it gets launched - it'll then look like the projectile is travelling away from the straight path the player is now facing - it'll also make the projectile go faster or slower if the player is moving towards or backwards in the same direction as they're firing.
thank you for your advice
hello
I want to send the http request to the game server when I press the verify button
I make the blueprint
it makes sense?
but It doesn't work. server can't listen to the post request from ue5 game
what is the mistake?
You gotta provide what doesn't work. What does your webserver expect? Do you need to specify proper Request Header Attributes? What is the result json string, does it match what your server wants? Is there an error on server side or do you not even get a response etc
thank you for you attention
yeah that's right
it doesn't work
when I send the my user name to the game server, then game server send request to blockchain to find my asset
Welp, that doesn't answer my questions. And since it's blockchain shit you just lost me
if server receives the response from blockchain, then it sends the results to ue5 game so user can verify his assets
what do you mean?
this is not blockchain
I have to only get data from the chain
So you're running a custom game server on port 3000?
no
You want to send the HTTP request to the game server when you press the verify button. The verify button is currently sending a post request to something running on port 3000.
this server is only used for receive from ue5 game then send data again
yeah that's right
Ok, and upon doing so, what print string are you getting? "success" or "hello"?
if I have to show user assets on screen, how can I make the blueprint?
Do whatever is required to load said assets, and display them in a widget, or load them into a material and apply them on a mesh.
Is there a way for me to allow a player function only after another actor has been destroyed?
Heyho 😄
my project was broken by changing a structure by putting a structure into the structure I changed. Many things didn't work, but I eventually fixed that issue. Just wanted to know if this issue broke something I haven't noticed or anything. This issue seems to be something rather common
Basically, I have it so when you interact with a Flashlight the actor is destroyed. After that I want there to be a point light on the player character that can toggle between visible and not visible. I only want this to happen after the Flashlight is destroyed though
hey guys i have this linetrace setup to pickup items and add them to a scene component on my character, and it works fine when im picking up but when i drop it my item disappears off the map, so i enabled physics i cannot pick up item but drop works
any idea?
my highlight item (raycast to see if something is in front of the character) BP is having some issues. Basically it throws an error that it accessed "none" trying to read property blah blah.
My current highlighted actor is set when a raycast is hitting something, so whenever I press my interaction button and there's nothing in front of the character it will always be none/empty. How can I "fix" this? The BP works just fine I'd like to do something to get rid of that error message.
add a bool to capsule trace like "hitting something", and before I can "E" - interact it would check if the bool is true?
although it will always hit something, like floor or the landscape unless I make a specific array to ignore this kind of stuff. seems like a lot of mundane work, there has to be a better way.
I could also check if the hit target has a tag "T_Interactable", hmm.
You can first check if the hit actor / component is valid
Actually may not be necessary the issue is with you accessing an object ref that is not set
yeah
all kinds of bad stuff is happening when I'm trying to fiddle with this BP
or I could just add an empty actor somewhere in the scene and set it as default value until something else is highlighted
It's only bad if you make it bad
Know what your code is doing, design and observe the flow
Encapsulate when possible
If your own code don't make sense to you, then you are doing it wrong
You can simply not access the variable when it's not valid
Using the valid check macro
Don’t overuse it either. Accessed None errors are very easy to diagnose, not so much when something fails silently cause it was fed a nullptr and the valid check is masking it
oh yeah that's for sure. I just tend to forget about it existing when there's a perfect place for it
If you need to access something that is meant to be set, don't do is valid check. The error will tell you where you gone wrong.
In a case of tracing, it's quiet common to have is valid check on the hit actor or comp because you could be hitting nothing and game should still work
yep it worked just fine, but the error was just annoying
I tend to use is valid a lot but you just have to remember to include a print string when it shouldn't ever be null. You should be able to provide a little more context to the message than an accessed none message.
I wish I could comment things in BP in a different way
like a sticky note or something
Isn't that just a comment box?
yeah but you can only put the comment in the header of the comment box
i have rvo avoidance activated but all my ai block each other.
there are many ai gorup of 20-30
everyone block each other
any idea?
Well that's what the RVO avoidance is for. If you don't want them to block each other, then set it to ignore the group they're on.
and thats it?
how i know witch group they are on?
Which ever group is ticked under the 'Avoidance Group'. They can be apart of multiple groups. There should be two other sections, one for 'Groups to Avoid' and 'Groups to Ignore'.
Just the relevant groups. So if you're AI is set to group 2 for example, you can then just set it to ignore on group 2. The player might be on group 1 so you set them to avoid group 1.
Problem Video
first it goes positive then negative
but each ai monster block each other
and there are 1000 of ais
there is no group
you need to disable collision on units so they stop blocking each other but then they will be all able to stand in one place
Anyone know why is this happening? When I turn the character with A and D the animations are working correctly turning right makes the character tilt to right and turning left tilts to left, but when I turn left and right with the mouse in X axis the animations are reversed turning right character tilts left and turning left it tilts right.
no colision? they 10000 ai and you will see only 1 ai? o.O
if you don't want for them to be blocked by each other then if you tell them to go to 1 place they will all go there, you would probably need some logic that will make them not stack
will not do exactly what? it is so actors avoid each other
that for exmape a group of ai follow you
but they cant attack you cause they dont get in range
they blocking each other
i wanna do it like a moba game.
they will find a way to get into your range and attack you
You want them to not block each other but at the same to block each other? I don't get it. If you want them to pass trough you need to disable collision on them so they don't block each other. If you want other logic then you need to program this. RVO avoidance makes so the actors are trying to avoid each other.
You can also try to make the collision sphere on actors smaller so they will still collide a bit but will be able to half pass trough each other.
when they have no collision they overlap each other?
My workbench static mesh has 10 sockets added in the mesh settings. When I add it to a blueprint none of them are visible under the sockets category in details window. going forward I would like to get all sockets in an array and attach a "ingredient" static mesh to each of them, but the sockets are not available.
what could be causing this?
well apparently it exists but I can't see it anywhere..
I don't think you can just 'see' the sockets in the actor
If you add a child to the socketed mesh , you should see your sockets after clicking the folder/spyglass button ( on the child)
I think I'm gonna scrap sockets for this one completely.. Basically it's a prepstation where you pick what ingredients to put on a pizza. Since there's just 10 ingredients i might as well just add the meshes individually I guess..
setting this up on runtime just raises more issues
should you not invert damage amount and health
because curently you made damage - health
but it should be health - damage ?
yeah got that one already!🙂
Now working properly
Hey guys, trying to figure out how to have UE5 cull blueprints that are in no way in the view? Placed the camera in a closed off room and froze the rendering. As you can see, alot of stuff is not being culled. just about everything you see here are blueprints (except the foliage). What would be the best way to prevent blueprints from being visibile/loaded while not being in view range?
Might be silly, but should I include all these external blueprints into a datalayer that I turn off when entering buildings that have no view to the outside world?
How do i replicate a variable from a character to a animation blueprint, I am trying to replicate the Control Rotation from the character into the animBP and it doesnt replicate to clients. Any solutions?
i tried the very bad method and nothing happened (usually works, but i dont use rpcs like this)
you cant have replicated properties or rpcs in an animation blueprint
darn
(why epic doesnt throw a warning about this is beyond me)
Is there a possible workaround?
control rotation should not ever need to be replicated
so i dont get why you need that replicated
also its very odd to use control rotation for animation stuff
i am using it as a lazy version of aim offset. Just set the bone rotation with control rotation
ok
but just get characters baseaimrotation pitch
Character->BaseAimRotation.Pitch
alright
its replicated
thanks
though not sure why dont dont proper aim offset animations, or use something like control rig
rather than transform bone
idk, i just kinda did it, prototyping stage
o
ok
but yeah BaseAimRotation for pitch, ActorRotation for other stuff
is how i usually do my anim stuff
Alright then 🙂 thanks for ya help, gtg now
everything's working fine, the right Trees Index is returned for all the trees, even those with the blue note. so, why is there a note on 3 of the nodes ? the process behind is the same for all 6 trees types, could it be a bug?
Hopefully quick question here.
I'm trying to have an enemy that faces the player, and strafes around them. I want the player to be able to dodge around behind them if they're fast enough.
Orient Rotation to Movement makes the enemy turn sideways when strafing instead of strafing.
If I "Set Focus" to the player, he strafes properly, but is fixed on the player so the player can't dodge behind.
Is there a setting somewhere I can dampen his rotation or something?
I was having issues with 3d widgets where button events wouldn't be called in standalone. Changing it from 'OnClicked' to 'OnPressed' fixed it.. Anyone understand why? Just so I know for the future
how to check is Hit actor is TokenBlueprint actor or not ?
Only by casting? or is there a better way?
You can check hasTag and put tag, or do interface and call event on interface.
You can get it's class and check if it matches what your after but considering you need the ref type, just cast. There's no reason to avoid it.
Question regarding sequencer. If there are existing key frames on a timeline, can they then be overriden?
thank you!
can someone tell me i can do that they dont run into each other and block each other?
Usually, this kind of NPC behavior is written/created in BehaviorTree with the "MoveTo"-Task. Additionally you need to create/place a "NavMeshVolume" into your world. That NavMesh needs to be adjusted so that the MoveTo-Task recognizes other NPCs on ground.
Alternatively to the "MoveTo"-Task, you could use the "CalculateNextLocation"-Function in a custom BT-Task and use that function to pre-calculate a nav-able location on your NavMeshVolume.
Edit: That might be some approaches if you would like your NPCs to "go around other NPCs".
If you don't mind them to leap their meshes into other NPCs, just disable the collider.
how could i do this task? im nooby...
Hey I'm trying to create a fpv drone controller, This isnt adding torque correctly. Its being applied in world space. Anyone see whats wrong?
In your content-folder, right click somewhere and create a new BP-Class. Search for BTTask_BlueprintBase (see picture). That way you can create your own tasks.
Why is adding torque in WorldSpace a bad thing for you? What do you try to achieve?
When I turn 180 degrees the controls gets inverted :))) Same with the thrust here, its always adding force straight upwards, no matter what orientation the drone has.
Hmm I understand. I had similar problems regarding rotationing actors in the past. But I never used torque though.
Edit: Let me try it locally before I post any ideas.
Anyone have a simple setup/reference/video for making a Timelapse of a level desgin/level art?
In other words making it easy to get/remember to get Screenshots from consistent angles in good resolution, so I can cut it together in a video later?
probably because your multiplying x, y by zero, and just using z, what exactly do you want it to do besides go up ?
maybe multiply by 1 instead of zero, not sure how that would work out but worth a shot, i'm guessing you want it to follow the up vector ?
Multiplying it by 1 didn't work. I just want it to go up in its up direction. If the drone is rotated 90 degrees forwards it should go forwards, not up. Now its always going up
why not just use the up vector itself without the direction part ?
Is it more optimal to, in a For Loop, drag the pin from the Array Element to everything in the loop, or to create a local variable, store the pin in it, and then "get" that variable each time you need it later in the loop? Why?
hey @dark drum I just finished part 3 of your tutorial series. I want to make something like the UI from planet crafter but I'm not sure how. And that is why I dont know If I should complete part 4 or not
as var as readability goes it's easier without all the lines going all the way across
where you can just keep reusing the variable
Yeah - that's why I ask. I hate spaghetti, but if spaghetti is faster then I'll eat it. Any idea if there's any noteworthy impact of using a local variable instead? I'd assume there's SOME impact, but maybe it just doesn't matter until a thousand or so loops?
i doubt it's noticeable
If you care about performance that much it could be good to consider switching to C++, but the best thing is just to test something after you ''blueprinted'' it and see if it's lagging or not and if it even needs adjustments.
what does this extra piece of blueprint do to the game?
Part 4 is still worth a watch as it shows how you can structure some of your widgets and get the relevant data from the inventory component. From that you can tweak it how you want. Off the top of my head, it'll just be swapping out the vertical box for either a wrap box or grid box in the inventory container.
With you wanting more of a slot UI, you could setup the item widget to handle not being passed an item object so it can display as an empty slot.
I assume you're referring to the bottom portion that's been added to the template. It looks like its adding some forward movement when moving right to the normal side movement. (60%)
I'll try that and then I'll get back to you if I have any questions, thanks
so when moving to the right or left it moves forward too?
Fair enough. Thanks!
oh
thats nice
I still strugle with understanding blueprints. any good guidance on them?
So key press input doesn't work in non character BP?
No probs. If it helps, this was one I setup for a since abandoned prototype. The underlying system is pretty follows the same structure has what I've shown in the tutorial. Don't be afraid to experiment with your widget layouts to get them to look how you want. 🙂
In the example, i just create an item widget for the items in the inventory but if you want empty slots, you can create a specific amount and pass the relevant item object to the ones that should show an item.
Key presses happen in anything that is set to recieve inputs from the controller.
@outer brook @lofty rapids Solved it by making the mesh the root component of the actor
If I use a variable to store a randomly chosen item from a Map's array of Keys, is that item also removed from the Keys, or am I just getting a copy of it? Do changes to that variable also change the Map?
(I know this should be easily tested, but I'm asking because I feel like I'm seeing inconsistent results -- sometimes my blueprint fails to remove a door that absolutely exists, but the door was somehow removed already, which means something accidentally removed it early, but I never explicitly told it to, so now I'm confused.)
Example
No, you need to 'enable input' on the actor and specify the controller.
is it expensive?
I was thinking of adding custom dispatcher and bind it to key inside the Character BP
I'm trying to understand the chooser table but I failed for several hours, as you see in the screenshot by clicking on the + icon I create a new object and I called that to BP_State
but when I set the row on the second step to an asset it does not show the class I made.
But in the second screenshot if I set the Output type to None it shows the classes I made earlier as you can see...but when the chooser returns them I can't cast them to BP_State class from the object and it says their class is Blueprint...
which way is preffered?
Hello
Anyone know how can i detach the wheels from my car ?
this is the skeleton
Also 1 more thing, the difference between perfromance in editor and packked game is without comparision. Just pack game and test. You will see that mostly it's handled really well.
Not really. Its more down to what makes the most sense for your project. You just have to remember to disable inputs on the actor when it should no longer recieve them.
Anyone know a better way of doing this? Currently what I’m trying to do is scale down any objects that overlaps and then destroy it, but whenever a new object overlaps while one object is already getting scaled down then it will cancel the timeline on that object. I’m trying to not use any blueprint actors for the objects I want to overlap with the collision box, they are just cube for right now that I added from the quick add menu and then checked simulate physics on them.
My personal option is to raise dispatches in the character or controller if other things need input. Bubble it down.
Letting other actors receive input is a bad idea, keep those things central
I don't know if that's possible with the built in vehicle system. However, I do know the Advanced Vehicle System (AVS) which is a paid plug-in on the marketplace does support detaching wheels. It was one of the free for the month assets a few years back too, so if you've been claiming those free assets you might have it already
Never even thought to do that. I'm not even sure I have something packable yet haha. Does it take a while?
Is there a tutorial or something for trying to make a top down shooter game where you can score headshots based on aim? Kinda like synthetik legion rising? Never could figure out how to do it
Why this function is not working😕
My first build took 1 day, but I did a lot of bad things. Then 2h and now it takes 4minutes at max. You need to clear also errors and its better to do it from time to time, and once you have eliminated all errors it's easier to deal with new ones because you easily track what you changed and can reference why now you have error. I just spawned like 300 characters and that was the number when my game stated tanking but it wasnt even that bad.
Put the logic for making objects smaller on the Object, not on the Iniciator, then just make iniciator send event to object that makes it smaller and object should handle it himself.
If you dont want to create a base actor with shrinking logic, you won't be able to use the timeline. Instead you would need to keep track of each actors scale and update it manually each tick.
Is there a big performance hit for having a bunch of different physics simulated actors in the scene? I plan on having all different types of static meshes that can be thrown around and stuff and each one will do that shrinking function and get destroyed when it hits that trigger
Roger that. Thanks!
Would I need to add that timeline shrinking part to every individual actor I want to have that happen to? Or is there a better way to go about that
Component or Parent class.
Inheritance, pretty sure we said learn it lol
Alr, I used that for the other stuff I was trying to do, just wasn’t sure if it would be better for this instance
Bonus question: How do I make my Event chain wait to proceed until a previous event has finished executing? Or otherwise, what words should I be typing into Google to get better search results? The results I'm seeing look somewhat dubious in nature.
Dunno, maybe it needs actual vector inputs ?
okay let me put the wheel location
Whenever you find yourself copy pasting code, there’s a better way, be that inheritance or a reusable function etc
What kind of event?not sure if it's built in but you could just use boolean that switches something. Really depend what is the first event doing and when it comunicates it finished.
Example: Doing this would result in the Finish Room being placed before the Main Area finishes generating and spawnining. (Therefore, the Map I store the Doors in only has one value and the Finish Room is placed directly in front of the Start Room while the rest of the dungeon generates).
There you go. This method will allow you to handle it without having to use a specific actor base.
Not worked even after putting vector
You could try #chaos-physics , idk much about constraints
Okay
Timer for next tick? Haven’t used that before, is it just a delay until next tick basically ?
Pretty much. I find it very useful.
If ShrinkActors is a function won’t that cause issues tho?
Wait nvm - I think I was misunderstanding how "Events" work. Sorry haha
Altho that says event so idk why it looks like a function
No, it calls it fine. You just have to make sure has no inputs/outputs or you can't select it.
It is a function. 🙃
I was thinking more of the latent action inside a function part, but I guess it’s kind of like putting a delay outside if it and calling it again
hello
does anyone knows how the hell are safes and combination locks are made ? or maybe a youtube video
cuz i didnt find any
...are While loops weird AF for some reason? I created a fairly simple one to add a single thing to my dungeon, but it adds a huge number of them even though I properly set the control variable after finding the first...
Have logic to show?
Yeah getting it, sorry
Store input in an array, check if input array matches a target array, if it does, unlock. If not, you might want to clear the input array to reset for the next try.
This loop should:
- Loop until you find a valid empty location
- Pick a random door with no connected Room
- Check if the space in front of that Door is empty
- If so, we found a valid empty location and should exit the loop
The "Completed" string simply places an actor in the world at the location found in the loop earlier
Contains on a vector sounds rough.
Yeah, but it works. For example, it doesn't place one here (good), and then does place one near it (bad). Idk how it's deciding when to stop.
(pink box = door // red line = no connection)
What concerns me is that it places MORE THAN ONE
Which should only be possible if it somehow executes numerous times
Works sometimes at least. But that is the joy of floating point precision error. Chances are contains does not correctly use a nearly equal check. Maybe it does. But I wouldn't trust it without searching through code to find out. Cause if it doesn't. You're relying on three float == floats to be true.
Regardless, if it passes validation even one single time, it should be exiting the loop
Yes?
Should
it can't fail, it retrieves the value from the same array being tested
bitwise it's identical
wait, no, my mistake
Realistically though. Your tiles look like a grid. And FIntPoint or FIntVector are better choices.
My understanding of a While Loop is:
- When the condition is no longer true, the loop terminates and executes the "Completed" node
I would switch you're while loop for a forloop with break. You only have 4 conditions to check, if it successed you can break the loop early.
This is correct.
Doesn't this open us up to a scenario where it randomly chooses the same door each time and then completes without finding a position?
No, it just means it will only ever perform 4 checks. Not 12, 27 100 etc... depending on the vector array contains node.
So... How do I find out what's happening?
Either:
- It's executing the function numerous times, or...
- One execution is placing numerous actors for some reason
You could see if it's the contains with a fairly small change. But the change might be a performance killer.
Just need to make a small pure function to iterate the array, and do nearly equal. Return true if a nearly equal is found. Else return false if loop finishes. Make the nearly equal like 1.0 tolerance.
Is that because of the weird cases where sometimes instead of rotating 90 degrees it chooses to rotate 89.99999999?
Also, that still shouldn't affect the While Loop's ability to terminate upon finding a vacancy right?
yes about the rotation
You're asking it to terminate when that vector you make is found in the array of other vectors. You're literally trying to be throw a needle in space and hit a specific planet you can't even see with that kind of check.
Terminate when NOT found
But regardless, the numerous green boxes are indicators that it exited the loop and placed something numerous times.
Wait is it possible that the loop is creating numerous instances of those local variables and then executing each one at the end even though I didn't For Loop it?
do you know how i can make the begin overlap trigger an event on the actor that overlapped it?
Shouldn't. Finished should only run once per loop start.
Add interface on the object, call interface event from the main thing that has overlap event.
Cast to the actor type and call the function.
I did share a method that doesn't require you to use a base class.
oh ok, thanks! ill look into that and see if i can get it to work
oh ok
but is there another way to make the inputs randomizes so its not repetetive and prevent u know "knowign the code before doing something or solving a puzle" ?
Yea, randomize the entries in the target array on begin play.
I'll look into these. Not sure what they are.
ahhh i see and how can i make u know the camera to switch so its closer the the lock or something
should i add another camera to the blueprint of the lock it self ?
thnx
Omg I'm an idiot
They're the same thing as Vector and Vector2D. Just using Integers instead of floats. But you are right that it would have early outed a lot easier if it was that.
I figured it out. I literally had the function attached at the end of a For Loop body instead of the Completed node. I'm sorry for the waste of time.
Integers don't work for me because I use a scale to make the tiles variable in size and need to place things like doors at a 0.5 scale interval.
Kill me
Idk how many times I've done this already in this project
That's okay. I'm trying to line trace empty space and hitting a dynamic mesh component that is no where near the trace. So. I feel your insanity.
Much better.
New question: Is it weird that my main dungeon generation loop causes an infinite loop error unless I put a delay in it (even if the delay I add is 0.0s)?
Feels weird.
I guess on that same note, is there a way for me to tell the engine to disregard potential infinite loops within a chunk of code?
Infinite loop without this delay.
@frosty heron hey, is that image you sent the other day the full logic? I'm having a little trouble understanding it
a delay of 0.0 is equivalent to 1 frame (or 1 tick)
You can up the loop detector in the project settings. But that is about all.
Guess that makes sense then, haha.
Roger that. Thanks.
waiting atleast a single frame is enough to avoid being striked by the loop detector
Wait, why would a delay affect that then?
Oh gotcha
I like that you knew my next question before I asked it haha
years of answering questions 🫡
Note to self. The default collision generation settings on a dynamic mesh create a box around the vertex bounds. What wonderful defaults.
Like. Everyone is just going to use the dynamic mesh component to create a box. Definitely. Can't imagine any other reason for using a dynamic mesh.
Not even a rotated box either. Just a box. Unrotated.
obviously it's for a box duh, is accurate collision even relevant in 2024? 💁♂️
Lol. I'm using dynamic meshes for detecting some our regions. Cause they're complex shapes. It's easier to trace them than do complex vector math to determine bounds within concave shapes. Cheaper too. But just ran into the issue where trace was no where near the region but detecting it. After a very long look, turned out the collision was generating a basic box. Just wild.
I was totally messing with you, but what you just wrote might be a little over my head 
I know you were just messing. 😄 Just continuing to whine on my part. Cause I'm so baffled as to how that is the default. Course I should have double checked that when I first put it in. But it was working correctly for a while. Just.. Blah
World generation stuff. I can probably talk about it more later. 😄 Project isn't revealed quite yet.
Can you set localized timescales? IE: If I have a volume, everything within that volume is treated as a different timescale than everything outside of it?
TimeDilation is probably what you mean
You can set that per Actor, so if your actor overlaps something you can set it to a different value
The pitch doesn't work, may I get some help?
Yes, that sounds like what I needed, thank you
I want to be able to look around, but it doesn't want to look up or down
Need more context as to what isn't working. What are you expecting pitch to affect?
u know the third person template, you can look up and down so the camera goes above and bellow
I did the same
But does not work
What is your setup though? Do you have a Character BP? Does it have a Camera or a SpringArm+Camera?
Make sure that the CameraAttacher (being the SpringArm) is set to use ControlRotation
hey, i'm creating an interact widget and am having trouble getting it to only show for the person wh9o interacted over it. Like ina multipalyer game, if player A is in space and player Bb is ont he ground and walks up to a cubue. I don't want player A (space) to see the interact widget. Here's my current strategy which just sets all visiblity to true:
They r commented but you can focus on the part where character rotation is used to subtract the output of find look at rotation between 2 points (in my case the head socket and the location of where the head suppose to look at)
All other nodes handle the threshold
Overlaps will of course run on every machine. As there is a character and overlapping object on each machine and even the simulated ones will cause overlaps.
So you need to get the overlapping actor, which should be the pawn, and do a check for IsLocallyControlled. This will only return true on the machine that is actively controlling that pawn.
hello everyone - does anyone have experience with extending character movement for rollerblading / ice-skating?
yes yes, ok ty I think we ended up getting it. it's just a bit weird
another more general question would be: should I try to extend CMC in blueprints for this movement type or should I make my own movement component straight away? what kind of roadblocks might I run into / have you run into?
thats good, but one issueu is the widget which I am setting the vissiblity for. How do I Only set the visibity to true for the person who is within its radius
Only care if the code that run is the server one then
On server on overlap, get players within its radius, and run a client rpc that sets the ui vissivility
How do i make it so if I put a physics object on a moving platform, the physics object doesnt slide off and stays on the platform
Isn't the overlap the radius?
you can increase the friction on either the platform or the object. if you want it to slide on other things but not that specific platform you could increase the friction only while it's on that platform. you can change friction (dynamic and static friction) by creating and assigning a physical material
so i just set the visiblity on the client using the client rpc stuff
You don't need an RPC. The overlap is running on the client already. It's running on every machine. You just need to check if the overlapping actor is locally controlled.
Oh I didn't see that it's a component inside the character ignore what I said earlier
hi (= I am following a tutorial and they use the "Get Instance Transform" function (documentation here: https://docs.unrealengine.com/4.27/en-US/BlueprintAPI/Components/InstancedStaticMesh/GetInstanceTransform/) but I cant seem to find this function?
sorry if this is simple ❤️ still learning haha
You need to drag off of a ref of the InstanceStaticMeshComponent
just discovered that ❤️ ty!
"ThisComponent" Lol, great naming for a tutorial.
so i don thv to do this right? just cast to bp_firstpersoncharacter or whatever the player uses and then DONT enable replication on that item right?
*don't enable replication on widget
Cast to Pawn -> IsLocallyControlled
yeah that seems to work
This part a bit confusing, widgets only exist local to each machine
Player 1 don't have a way to reach or know player 2 widget
Client also only know their own controller, so with what you have earlier, you prob get accesses none if the character that overlap in your machine is not yours
noted thanks @frosty heron
hi again (= I am trying to swap foliage instances that the player collides with with skeletal meshes. Do I need to create a blueprint class for my skeletal mesh foliage in order to use Spawn Actor from Class? Or can I specify the skeletal mesh I would like to use?
This sounds mostly like all you'd need to do is change the friction/deceleration of the character or continually apply movement if they're on a slope of some kind. I don't think extending the CMC would be required for these types of movements.
does anyone know if theres anything that can cause memory to just constantly increase in UE ?
Need a lot more context. Memory leaks are common mistakes. But pointing to cause is not easy.
is there any tools in UE that can help locate the possibly issue >
?
🤷♂️ Maybe. But context matters. Blank map? New project? Huge map that people have been messing with for years? Derpy programmers that do dumb things?
hmm I haven't looked at that tbf but surly starting and stopping PIE can eventually cause the texture streaming budget issue thing though ?
as far as I can see I would say map loaded
Things loaded in editor will stay loaded
thx. yeah that's what I have done so far. there's a lot of things left to do for turning and stopping though
what about that though
editor has only been open for couple of minutes, would that mem be reasonable
understand a perfect yes or no can be given but would someone say thats reasonable to what should be expected
Hmm, how would you guys handle it? Let's say you have worker and there are 2 types of gathering resources. Like 1 version of worker needs to gather resource and move it to building, and 2nd worker is ''better'' and he gathers is already when taking stack from resource. I was thinking components, 2 different, but how does it generally work because I can put logic on the main unit with boolean to add the component to himself, but then it means I have to put ''reference'' of 2 components in the main class even if the 2nd one doesn't get added. Does it cause any performance issues if there is laying code on the blueprint but it's not really used by class? And we are talking only about code like in this case probably 3-4 events per component. Problem or doesn't matter?
Quick question, I am trying to make a simple bp for a doors. I want to add a variable in the editor to set if the door is lockable or not and if it is then show options for the type of lock ect. Is it possible to only show certain exposed variables depending on other conditions?
So if door isLockable is unchecked then it wont show the enum for the type of lock?
not possible with blueprint
Dam ok thanks, I knew I done it before but from what I can remember I was using code
Hello, I’m trying to make an isometric shooter, but the bullets are not following the mouse position, it is slightly off, I’ve been looking for solutions on the ue forum but the solution there did not work, does someone know how make this work? I tried this but its still not working
say I have two widdget blueprints. Blueprint A is the "parent" and Blueprint B the "child"
meaning thereare instances of B in A
So my question is: Is there any way to get A while in B?
You inherit everything from the parent, so yes
Yes. But don't.
okay mayb ethe "child" parent example was bad, I mean like they are not related, its just that A has instances of B in it. B is a button and i put a buncha buttons in A
i was initially gonna use the set and get owner but apparently widget blueprints dont got that
A is a container. It uses B. B is it's own thing. It does it's own stuff. Buttons are a good example of this. A is a list of buttons. B is a button. B has a delegate in it. When B is clicked, it broadcasts a delegate. It doesn't care what happens after that. A on the other hand has a function bound to B's delegate and does stuff with that clicked intention.
soo the thing is, since I have like a dozen buttons it'd be a pain to write logic for "onPressed" in A for each and every one of them.
Hence why I was thinking of putting the logic in B
and then i hv a callback func in A which takes in a paraameter and does what it wants with that
but ic ant get A 😭
You may not realize it but you just said you can't do something but want to do exactly that. There is no difference between B telling A directly and B broadcasting a delegate with information. Except that the delegate route means B doesn't have to care about A.
What are you trying to do? Cause you could pass the ref of A into B, but as been stated generally you want a widget to be self contained
think of a textbox and a buncha buttons. When a button is pressed it adds the associated number (i hv a textbox inside the button which has like 1-9) into the textbox
the textbox is in A
and the button is B
think of a keypad
So B has a delegate with an integer parameter. OnClick, Boradcast said delegate with the integer.
So you create widget 1, then create 9 buttons with for each loop and add them to the widget 1, you take array with Hotkeys (1-9) and just feed variable Hotkey to each button you create
💀 yeah im throwing good idea
tru
i could do that too
yeah id do a delegate for that
or instead of talking just do them manually xD if it works it works 😄
your saying the keypad is widget A and the buttons would be widget B (9 of them)
lmfao thats what i initially did and this is ugly af i aint getting all these and then overriding on pressed for all of em.
Well then other option would be passing Widget A as a ref. But I mean its only 11 buttons xD sohuldnt take that long
sorry 12 buttons
or pass input to the buttons
I've tried using uniform grid panel and it might just be me, but it is an absolute pain to use. I can't set the number of columns and rows it got a mind of its own istg
GetAllChildren->Loop->CastToB->BindEventToDelegateName
unless I do a for loop or smth in event graph and create it there, I cannot pass in a reference of self to my button widget blueprint:
What I was suggesting is the button has an "Init" function that you pass whatever variable you want in it
then you can use that variable in your button 🤷♂️
Hey! I'm trying to find a way to attach a Flashlight to a socket directly from the Flashlight blueprint, since I have multiple things to interact with the same key. Then I want to be able to toggle that Flashlight light between visible and not visible. I'm using blueprint interface. How could I go about this?
is there a fancy way of turning this into an array?
without manually drag and droping each and adding them to an array
do they have the same parent?
is there a way to change what animation blueprint I'm using at run time?
thank you! guess i wasnt googling the right thing
i usually generate the individual buttons
Are you doing this inside the main widget btw?
not main , but yes, I have 1 Hotbar widget that generates the buttons
the hotbar also does all the 'work' , the buttons only tell the hotbar what happened (Click, hover)
Does anyone have any ideas on why a Map range clamped, when fed a value of 0 float, outputs a non 0 value when the clamp is set to output 0->1? I'm using it to drive a falling sound and when the player first spawns, its sending the wrong value, but as soon as I move everythings sorts itself out.
I'm currently setting the falling duration to 0 as well when the player spawns, and then on tick updating it based on ifFalling is false (which it is).
Hey guys, So I have a really small problem where the debug cylinders (spheres) are not showing the red mesh in 3d fully, theyre only showing half, I looked all over my blueprint but didnt find the cause, can anybody help?
Looks like you are trying to mute the sound on spawn? then increase it when you are falling
Did you set this to false on your sound component?
Ah sorry, it's a complicated falling system I have set up. But that's not a bad idea. I did find a different method for muting the sound(turns out I had the wrong audio component selected so my fade out was not triggering). But I was more curious about the clamp issue and why it might be outputting the wrong clamp values
It's a bit hard to see in the image but it's sending in a 0 value and outputting 0.10611
I never use the watches, print text ftw
haha fair fair. I'll check those as well good call
good call on the printstring, seems to be going to 0. so it must of just been the wrong audio component I was using there. Thanks for the tip though!
yeah
Hey all! I'm not trying to spam the chat, I think my message just keeps getting pushed to the top before anyone can reply.
I'm trying to find a way to attach a Flashlight to a socket directly from the Flashlight blueprint, since I have multiple things to interact with the same key. Then I want to be able to toggle that Flashlight light between visible and not visible. I'm using blueprint interface. How could I go about this?
What I'm doing right now is bringing in the IA_ToggleFlashlight enhanced input action, then when it's started I connect it to a branch. I want that branch to say whether or not the Flashlight is connected to a socket? Or should I call the function "is overlapping"?
My character is floating above the ground by few inches
And no matter how much I drag the character down even below its capsule the character would bring it self to the same floating position
i might be wrong about this, but pretty sure all u gotta do is get a reference to your player character either by passing it as a reference and storing it in a variable in BP_Flaslight or im pretty sure there's like a get player character node and u can cast those to ur bp_character. Then u get ur flashlight mesh or whatever's at the top and do actor attach to component pass in socket name (the skeleton's bone u wanna attach to). And ur chillin. Here's how I did it
The func supposed to print left pressed when the widget is clicked, but it aint. I'll give a couple more imgs of relevant areas
this is my WBP_Keypad is there anything that might be blocking the input? The green rectangle is the canvas panel and the background blue is the blue rectangle.
Essentially the left pressed logic in img 1 above, is in the WBP_PRIVATE... which is just the grey square with a -1
like the button is pressing like it turns darker (img 1 unpressed & img 2 is pressed) So am i overridingt he wrong func or what
Is input set to UI?
If you are on some button that might also consume the input, im not sure
game and UI
i tried UI only but that no change
*still broken
figured it out
changed it from not-hit-testable to visible
Okay it works, but only when I right click. Left click is simply ignored
in my BP_Button this is the left click logic: All i do is call super (rest of code is irrelevant)
yet it only accepts right clicks
@shut quarry I have it set up do the Flashlight attaches to the socket, but it attaches to the root socket instead. I have the socket name spelled correctly. I created my own socket, called flashlight_socket
uhh that shouldn't be happening. Only two explanations for that kinda behavior
a) the relative transform is wrong (meaningn it attached correcvtly but moved to the origin somehow)
b) you mispelled the name, make sure u copy paste it.
*origin --> root
Yeah, I copied and pasted the name. When i try it on hand_r it does the same thing
maybe u put the socket in the wrong skeleton
You're attaching it to the root component.
Root component on a character is not a skeletal mesh.
@maiden wadi how can I attach the player char reference directly to the parent?
I don't understand the question. But you need to replace that RootComponent with GetPlayerCharacter->GetMesh
Yeah that's what I mean, thank you!
So I'll just cast to BP_thirdPersonCharacter and see if it works
Why do you need a cast here?
I'm in the Flashlight blueprint
GetMesh is a character function.
Yeah, so I got the player character
Drag off of GetPlayerCharacter, and call GetMesh. This returns it's SkeletalMesh component attached to the capsule.
Plug GetMesh into the Parent for your Attach function.
That makes sense. Thank you!
So If I add a new static mesh instead of a cube, cone or sphere, the mesh wont spawn. it will not drop
(Rock thing = cone) (didn't change name)
does anyone know whythis is happening? Essentially i have a
widget blueprint (lets call it A) and it has abuncha WBP_Button (lets call it B) and B has overrided the mouse button pressed and mose button released. The issue is the mouse buttonpressed/released are only being called if i right click. Left clicking does nothing
Could be another IA is consuming the input
I dont thinks o, I have another widget setup which works with left click just fine
Then you might be clicking some other invisible element instead of the button itself. It happens all the time
Doesn’t explain the right click tho so idk
Maybe #umg
alr
hey will event tick cause issues if it's only really used for a few things?
tick is never a problem, what executes inside the tick is
1000 objects checking the distance to the player? its fine
5 objects simulating some heavy physics may not be
ok so I assume what I'm doing is fine then https://blueprintue.com/blueprint/45f420l7/
yup that seems just fine
ok ty
im trying to replace most if not all casting with interfaces for my enemy i was wondering if there is a better way of handling it. third image is the character pawn the first and second image are events in the enemy pawn
Hey guys i was doing a function to handle multiplication in scientific notation, and i have a while loop inside, when i'm calling the function once i have no problem, but when i add the function to my game i have an infinite loop detection, I suppose that i break the loop limitation how to avoid that ? Here is my code :
I have a crazy Input action bug going on. I have a prompt widget with a dynamically loaded button widget inside and those buttons have input actions on them for keyboard and gamepad interaction. Works just fine, until the prompt is deactivated and then recreated. Then the input actions no longer works. The buttons still work, it still has the same focus it had when it was working, the widget reflector is identical to when it was working, but no input actions.
Has anyone seen this before?
It appears that you can do this with a for loop, but your logic is saying that it will loop as long as the temp value is not in range. This would easily cause a infinite loop itself. I think you should be able to do this quite simply without the function. You can use int64 and just simple multiply nodes.
How do I "delete" a UObject that was constructed and saved in a variable? The UObject's BeginDestroy is not getting called, so something is stopping it from being GCed.
any ideas how I might address this weird flickering where the aim offset appears to flick between two rotations (the aim offset and an unknown rotation). Using a modified GASP project btw.
You have to ensure there are no more reference to the object, you need to null all the reference. Its also a good idea to inform the object that it is being deserted so it can prepare itself for cleanup, if there is any
trying to get information from the player character (not the owner) but for some reason, it's not recognizing the player. is there a way to fix it or a different way to send the information without cast?
Anyone know why is this happening? When I turn the character with A and D the animations are working correctly turning right makes the character tilt to right and turning left tilts to left, but when I turn left and right with the mouse in X axis the animations are reversed turning right character tilts left and turning left it tilts right.
Also I have tried multiple tutorials for adding jumping to this, but none of them work with this blueprint set up, any help with that is appreciated.
Why its not working?
How the frick do you do contains in Array (for an item that has more than one var in it) but only search for one var. IE: Object array is full of objects that have values [A,B,C]. I want to see all objects that contain [A]. I don't care about B,C. Those can be anything
IE: Array of structed items
or do I have to for loop
https://blueprintue.com/blueprint/63ume812/
try this out, see if it helps at all
Oh wow thanks, I'll try it out 🥹
no problem 🙂
Interface is not a replacement for casting. Why do you need to use interface at all?
You can make use of component or inheritance for your damage system
You have no actor you're testing against, you need to assign 'Other' in the Is Overlapping Actor node.
Thank you
np, you could also just add an overlapping event that checks the box and returns the overlapping actor as soon as they trigger the overlap.
Did not really work, but thanks anyway 😅
oh my
yea unfortunately without the same character and animations etc I wouldn't even know how to replicate that issue. I tested on a standard skeletal mesh xD
Yeah I figured this won't be easy :D
Now, here is my code that is working correctly. When I add two blueprints into the scene, the one I click on first and press "F" will play its animation, while the other one does not.
Multiply your return value of Z (Yaw) by -1. I wanna see if it fully inverts the issue.
Don't cross pin like that
And ofc the bottom one don't work. Execution is run with white pins
If you need to call something multiple times, turn it into a function
what exactly are you trying to do here?
also, @frosty heron I'm not sure if you seen my DM, but I got it working, I appreciate the help the other day.
Just checked, good on you
yessir, ty ty your code really helped. I just had to flush out a few things 🙂
Nay, I also got it from internet. Had my share of issue all the same with rotation only working if the actor is in specific angle. Turns out we have to subtract the actor rotation to get the delta and everything works from all angle.
It's a door that displays a widget to press F when I approach it.
When I press F during a collision, the door should open. Pressing F again should close the door.
and it's important for me that it only works in collision
yea was super helpful.
ok, so you added an overlap event on the collision box, correct?
correct
ok, then Is Overlapping Actor is not needed, delete it and the reference you have for the target.
done
check that 'other actor' is valid
and put that into the branch
(I like using validity checks, habit from c++)
Like this?
yea
Yes.
You and me both 
cause multiplying by -1 should change the value
so 55 would now be -55
it definitely should not have done that.
Yeah I'm sure it's something in my spaghetti blueprints, this is my first time with coding anything 😅
And I guess I can live with the odd tilting, I'm making more of an showcase for my modelling and animating skills.
I don't think I did it correctly.
that's fair, you'll get used to it, just takes time. 🙂
you did
wait no
remove the connection from overlap exec to the branch
that will cause it to trigger everytime you touch the overlap trigger
I did it but it is not working again.
if it really bugs you, you can send me the project and I can try to find a fix, just without having the exact issue I don't know how I would fix haha
just the first animation?
Stop cross pinning!
Oh wow thanks, I'll pack it up for you.
It only works on the initial blueprint and doesn't function outside the collision. However, if I approach each one first, press F, then exit the collision and press F again, it works.
are you doing this inside the doors BP?
show me the collision for widget_animation_collision in the map
ok here's how I would do it what I said before was kinda stupid looking back.
if you're handling it in the BP door at least (which it looks like you are)
I don't know if this is a good way to, just what I've used small scale
also you collision boxes can collide with eachother iirc (I could be wrong)
it worked, but only the last blueprint that I added to the scene is functioning.
untick consumes input
Wow its workiiing. thank you🙏 🙏
yep, again if anyone else gives advice for better practices, use it. I'm new to UE so my practices aren't very good.
The thing I am trying create password pin like blueprints, in a form of some terminals with around 20 to 30 buttons, button blueprint contains mesh and text renderer to create 20 to 30 buttons I have to create around 20 to 30 child actors in the construction script using a loop it does not lag in the runtime but it does stutter in the editor, so my question is there a alternative to creating buttons using child actors for better performance in the editor
Show how you're doing it.
these are blueprint in how I am achieving it
Is there a channel for asking questions about packaging builds? Im having an issue where the character begins animating/moving in place in builds, despite not doing so in editor.
Personally, I would just have a dummy cube that's created to show in the editor but destroy them when you start the game and replace them with the button actor.
hello everyone, i'm using this blueprint to move a camera along a spline while it always look at the same point of interest (on scroll), this part is working fine, to make it look less static i'm trying to move the camera based on the mouse position on the X and Y axis of the screen, i'm storing this in a vector and I thought by rotating the vector it would work but it does not work as expected, does anyone have an idea how to solve this issue?
would it lag a bit in the beginning if there are mutliple of those terminals if were to replace them all at the start of the game
For the first frame yea but the player would just see it as loading time. Not much else you can do if you want it to be more performant in the editor.
I guess you could try moving everything on the construction script to a call in editor function. Then you just call the function in the editor to spawn the buttons. Not always ideal though.
Guys you can assign an Ai controller to a pawn controlled by a local player. It is to move my character to a location respecting the navMesh and using AiMove
?
if I want a data asset list to hold my data assets what type should i use? Primary data asset?
A pawn can only have one controller. You can unpossess the pawn and possess it with an AI controller but this can sometimes be finicky. Don't forget to have the pawn be repossessed by the player controller when complete.
As an FYI, the simple move to on the player character does work and uses the nav mesh. Depending on your overal goal, this might be an option.
Primary Data Asset would allow it to store any data asset regardless of its type. You probably want to select the specific primary data asset child you created for your data assets.
thanks!
Is there a better way to get a Reference in my Character to an object in the Level other than Get All Actors of Class with Tag?
Depends on the context, what is that object you are trying to access?
In general, you should avoid using that function as much as possible
I'm trying to access a Volume that is placed on the Level. Well actually its not for my Character, but for my Behaviour Tree Task. I'm currently investigating Blackboards, they in theory should help me with that problem.
For what purpose? Is it something pre placed in the level? (via the editor)
Yes, a Volume.
The problem I have is that when I try to get my AiController in my pawn it tells me that it does not exist, that is, null and I save it in a variable in the begin play
Why do you need to store it in a variable? There's a 'Get AI Controller' node. Just use that when you need the AI controller.
As for your issues, it's because there's a tick delay for the controller to actually posses the pawn so is normally null on begin play.
All tutorials are teaching how to make Characters to move to a random location in ALL reachable navigation, but obviously that is no good for actual game behaviour. A character is suppose to roam only in its specific region, that is what I'm trying to make.
My code sort of works right now, but it has 2 issues:
- The way I'm getting the reference to the Volume is not optimal
- Random Point in Box is not the same as Random Point in Custom Shape. There is no internal function for that as far as I'm aware and writing my own will probably be quite a challenge. (Alternativelly I could just use square shape regions. They are limiting, but not horrible.)
If you want to place specific (named) volumes about you can use a system like in the video to register them with a manager which you can then retrieve it from (by name) when it's needed.
Regarding getting a point. I would probably look at using EQS for this.
Welcome to this tutorial on how to create an actor manager system in Unreal Engine 5! In this video, we'll go over the basics of setting up the system using Unreal Engine's powerful Blueprint visual scripting language.
Whether you're a beginner to Unreal Engine or an experienced developer looking to better manage actors at runtime, this tutoria...
I have assigned a delay to it but the AiController always returns null. I don't know if I should create an AiController.
Blueprint Runtime Error: "Accessed None trying to read property CallFunc_GetAIController_ReturnValue_2". Blueprint: ThirdPersonCharacter Function: Execute Ubergraph Third Person Character Graph: EventGraph Node: Possess
Is it set to automatically assign an ai controller?
I think you can make reference in the boss to the box he is in and just plug it after placing it in the world. That way you can have 2 modular items that can be reused (box can be asigned to any unit that needs to use volume).
I think you can just get random location in the box, add Z like +400/1000, then shot line trace down, and this will be your new location to go to 🙂
Hello! I need to properly calculate an angle, but I am having trouble. The result is always slightly off
The camera is rotating around the sphere, and the cube is a child of the camera, but also freely moving with mouse position
@worldly skiff You can also simply make an exposed variable in your actor/component of the AI to reference the volume to move within
Many was of referencing world actors via variables, managers or even subsystems. In 90% of cases, there must be some sort of relation between your world actors that should allow to reference in between without the need of getting all actors or so. And even if not, having a manager similar to what @dark drum suggested would be ideal. Also helps managing your actors better than working with tags all over world actors.
Ye I thought about making an instance editable variable for my Character. That is a decent solution. Although the problem is that later I want my Bosses to be dynamically spawned and not preplaced, so it won't work.
Random loc in box works, but again it draws a Box that is close in size and shape with the Custom Volume. It works okayish for the regions that have close to rectangular forms, but absolutely no good if its something more freeshape.
To calculate an angle you can do:
- Dot product between the 2 direction vectors
- Plug the dot result to an Acosd node to get the angle between them
in case you also need the positive/negative value of that, you can also Cross the 2 vectors, but I suppose that wouldnt be needed
It should still work, because whatever spawns your bosses can also assign them some volume
hm
@dusky cobalt@devout tide Nav Area Filters. https://www.youtube.com/watch?v=vzvOM--Zv0I
Create Nav Area Classes and then apply Navigation Query Filters to them to change where Pawns on different teams are allowed move on the NavMesh.
Need help creating custom volumes for NavModifers?
Custom Shaped Volumes: https://youtu.be/3_A7WTIo9Ws
Custom Shaped NavModifiers: https://youtu.be/7CYSoJYpKtU
Follow along:
0:00 - Intro and Setup
1:...
I suppose if I spawn them in the Level (which sounds like a good practice), then I can easily pass the reference to the spawned Character.
Yeah if its set to Exposed on spawn & Instance editable
I do need the negative values, as the cube is also rotating around , Both cube and camera are children of the same pawn
then you can also cross them, get the Z of the cross, sign it and multiple the angle with the result of the sign
you can still get their world directions with Get World Forward Vector of the components
I thought about Nav Area filters, but thats not exactly what I need. I just need a point in a shape, a math function.
Volumes would be your best bet honestly
Something like Location in Box, but for custom shapes. Although I wonder if thats actually computation heavy.
there was also this plugin that allowed for custom collision shapes that could also work
Its definitely heavier, using boxes and some sort of filtering or even an array of multiple walkable box collisions would be better
better to ask in #chaos-physics
forward vector is the 'look at' rotator, actually
FindRandomLocationInNavigableRadius, and FindPathToLocationSynchronously both take in query filter classes. EG You make a filter class for your boss that cannot path on normal area, but can on a special boss area, you use that filter to determine where it can go.
Forward vector is the forward direction of the component, if you dot that between another forward vector, you get the angle
Completely different from look at, look at is a function that calculates the rotation that points to the target location from an origin location
But it will still generate points outside of the region and try to go there. Besides, I don't want him not to be able to go out, its just for roaming before the fight.
What node changes the image?
You're probablly after 'Set Brush from Image'. As an FYI, if you're not using common UI lazy image, you'll need to load the soft ref first.
oh right
I can't load a soft ref in a UI can i?
You can, but not in a function.
It has to be done on the event graph with it being a latent node.
Won't finish in the same tick.
There is a 'Set Brush from Soft Texture'. I've never used it but it might load it for you. Not sure if it loads blocking or async though.
works great actually
fixed my infinite loop issue
im using starter content textures to resemble icons
It won't generate out of the area. Here I set up a simple test case for you.
On the right is a special nav area modifier with default settings. On the left is a filter setting that accepts that special one and excludes default.
I made an actor that I placed in the middle of the level. I call GetRandomLocationInNavigableRadius from this with the special nav filter on the left. This runs on beginplay.
NavTestActor is at the gismo location. The radius is bigger than the entire platform here.
I only get points within those special nav areas.
Hm, gonna try to set it up.
how do i make an event in an interface with inputs and outputs? when i try to it just becomes a function instead.
ah nvm, i figured it out. removing the output and only having an input did what i wanted
@dark drum any clue why the item base stays on the first object interacted with and doesn't change?
nvm again, its giving me an error now Graph named 'BeginQTE' already exists in 'BP_GuardAI'. Another one cannot be generated from Event Begin QTE
if i cant invoke the event like this then how am i supposed to do it?
Idk what I'm doing wrong, but my NavArea don't work. It suppose to draw orange color to indicate that its working, but it doesn't.
Edit: nvm, now it does. Turns out you need to restart Engine after you've added a new filter. Now everything works. Bless Google.
Im not sure what you mean.
If the event already exists on a parent, you need to override it.
I overlapped with the primative_sphere and got primative_sphere. Then overlapped with Primative_cylinder and got primative_sphere
im not too sure if thats what i want, from what i can gather from other blueprints i want to send a message to invoke the event like here
Thank you, thats actually a perfect solution. Both problems (the reference and the random point in shape) are solved now.
Plus I figured that if I do ever need to pass some Level data (like a reference to a Volume) to Characters, its better be done in Level blueprient. If they are spawned in the Level, it only makes sense to use the Level to pass any Level specific data.
Guys does the Sphere Trace also lags for you as hell in the editor but causes no problems in the packed game? Like it's almost unplayable in the editor but in the game it works like it wasn't on, but everything works.
The error message is because you're created an event where the name already exists in an parent BP. It looks like you need to override the 'Begin QTE' event.
The item that gets added to the inventory?
ok, then how do i do that in bp? like i know what that means but the workflow here isnt obvious to me how thats supposed to work
I have a static mesh with a Material Instace. Is there a way to get that material instance and change one of its parameters?
Thanks!
Double click the event under the interface section. If you need the logic to be called from the parent, you can add a call to parent as needed.
this section? it is read only, not sure if thats causing any issues here
Happy it worked. 😄 Also to note that you can make special nav filters like this for specific AI too and they'll use them on all of their pathing instead of just using it to find points to go to.
isee, that return node is what causing the issue i think, but idk how to remove it since its read only 
You mean this parameter in my AIController Defaults? Ye, that could be handy. But for now I'll be needing it only for Roaming task.
Yep
hello i try to send a message from the widget to the character via interface but it dont work the boolean do not goes on "True" after on clicked the buy button wtf?
i mean the game is on paused while the widget "shop" is on the screen... but i dont think that that is the reason because all other buttons work
Make sure the ref is valid.
I was referring to in the actor itself where you implement it. (example in the screenshot) Just double click the one you're wanting to implement to override the parent call.
Instead of using the 'Player Char Ref' just get the controlled pawn from the owning player of the widget.
ok let me try
^nothing happend and im stuck again the last time i try it out it was working but now even if i try it with an actor that send the message after colides with the player nothing happend... -.-
So the interface event doesn't get called?
no it dont do his job ... "set the boolean to true"
So from you screenshot you have to two print strings, do any of the print?
Show the updated setup for the click event.
there is no update setup for try i just have an "buy button" and an resume game button that close the shop and continues the game
ok why ever i dont know but it works now ... same bp nothing changes but now unreal get it
but thanks patty... anyways
So you handle the button click like this and it doesn't print the bool?
So without lying it hasn't worked the whole time, now all of a sudden it works also with "PlayerCharRef". The only thing I changed briefly to test was I set both bools to True, which would be nonsense because it would buy 2 skills at once and Voala it works now whether I set it to true or false it works both in the shop widget and as an item that can be picked up...
I have no idea what to say about that
For some reason if I save a struct in my ue5 project it saves all of its variables but not textures, is there any reason to not just save the texture name and then when its needed loading it from the disk?
I mean that's the concept of SoftReferences
Which is in theory preferred, yes
Not nececssarily the name of course, but the path
oh ok thanks
hey guys
need some help
so i want to creat some subtitels based on character interaction for example the character interacting with a light switch thats broken and says the swith is broken
is there a way to get pi in a math expression
hey idk if this is the right channel, but i have a first person camera set up with a headbob and same movement for when sprinting, but its not really realisitc looking, ik i can use vcam but i also wanted to see if theres a way i can use the motion i do in the vcam and use it as the headbob animation instead? ( hopefully that made sense😭)
Is it possible to set variable's default value through code in runtime?
You'll need to provide more context. I would imagine exposing on spawn and setting the variable as you spawn it would be what you're after.
for example i have an integer with default value 0
and in runtime i do something and close the game
and then it stays default value 5
something like a save
Not that I'm aware of but if you need to set values after closing and reloading, you need to setup a save system.
Do you want 5 to become the default value for the CLASS or the value that some specific instance of that class has when loaded, like part of a map?
default value for the class
i would make a save system but its really complicated i need it as default value
i mean the reason is complicated not making the save system
As far as I'm are it's not possible to change anything about the class at runtime using BP. There might be a way using configs if you're using C++. What are you trying to achieve?
why is referencing things so difficult
I did watch the training on communication, I still don't get it why my references here are wrong
How do you set the 'BP Pizza Prep' variable? You have to remember object references are empty until you set them. (in most cases)
how do you set the reference?
A cast doesn't get a reference, just checks the objects type.
I have BP_pizzaprep as a variable of type BP_pizzaprep
So when you add an object type variable, all you're doing is getting an empty box and putting a label on it for what can go inside the box. The box remains empty until you put something in it. (set it)
Beat me to it 😀
but here's the thing
(that i dont understand)
I have that variable (which is empty), how do I set it? I don't want it to be any particular object in the game world really
so.. do I find it by using "find actor of class", and set it that way?
I need stuff an array from BP_prepstation for a widget
is the BP_PrepStation a type of BP_PizzaPrep
Then you can set it to the prepstation. You could have multiple prep stations in the level so you would set it to the one you want the data from.
Where do you create the widget from? The prep station itself when you interact with it?
it will cover the entire screen when a prepstation is interacted with
currently it's on a hotkey just to test it
Ok but
the logic here is -> interact with prep station -> open WBP_PizzaBakingWidget -> use PopulateIngredientsList function from WBP_Topping widget -> display all toppings in a horizontal box of WBP_PizzaBakingWidget
Key word there is interact
So if the widget is created from the prep station, it will be able to pass a ref of itself to the widget or just the data the widget needs.
For example if you have an overlap event on the char, you can drag the other actor, cast to the prep station and that’s the ref
