#blueprint
1 messages · Page 200 of 1
I've done stuff like this, you'll want to increase the spring arm length depending on the distance of the characters.
Sorry im a bit confused by what you are doing exactly, so it'd probably be best to draw your line traces with the debug option, and see whats happening
Anyway, why not use Forward Vector from your sight/turret?
hmm
Should be a case of get the average location of the two actors, and adjusting the target arm length based on how far away the characters are from each other. Without seeing the blueprints, it's kinda difficult to say what the issue is
What I am trying to do is to find the enemy pawn with line trace and lock on to it. If I move the mouse to a different place at a certain interval, it will remove the lock and of course, when locked, turn the barrel and turret bones into the enemy pawn.
All the codes for positioning the sight, turret and barrel for rotation are in the main topic link I posted above.
for an equip/unequip system for weapons, what are the best practices? I know how to put a sword on the hand socket xd, but how do I handle different weapon types? also, if each weapon has a unique attack, I assume thats more on the animation side. should I create a unique animation montage for each weapon? or could I create a montage for all greatswords, incorporate their unique attacks, and then trim it to use the animations for each specific weapon? where should i start with this whole system because trying to think of every detail is very overwhelming lol
sounds like you already know what to do, just watch your scope haha
I made the same character class for both of them . chose one of them and in details => auto possess player . i chose player 0. not sure if this is the best solution because I know there must be 2 character classes but cant find a video explaining how to inherit the class or how to use them .
I added a function so they always face each other and made a variable with character class name as value for enemy.
lol does it really? Ive watched a couple of tutorials but have no clue on how to manage various weapons/weapon types, do I make a base class for all the weapons and a data table with information for each then link it to the class and then?? thats where my knowledge ends lmao. is that kind of data oriented workflow the best for my case?
Data Assets would probably be good for this sort of stuff too
but like most things in game dev theres 100 ways to do the same thing haha
true
ill try
I'm passing a TMap of AActor/Float to an actor class on spawn. On the actor that is spawned, that Tmap has the actor values, but the floats are 0 for some reason... any ideas why that would be? Sometimes it seems to work but not always
Passing how? And Debugging how?
the actor being spawned has the tmap listed as expose on spawn, so its fed into the SpawnActor node. and debugging:
hovering over the EnemyList variable shows the two enemies with the same values
Sounds like the passed in data might be bad.
I did a fast test to confirm.
I had a breakpoint on the spawn actor node, and hovered over the data it was feeding, and it was correct. hit F11 and it went into the spawned actor and it had the bad numbers
The nan is concerning more than the zeroing.
If I spawn 1000 Actors containing an Instance Static Mesh Component but only create 1 instance in each of those actors is that better or worse for performance than creating 1000 actors and applying regular static mesh component and materials from a shared reference point, I think my understanding of ISMs is a little skewed
Out of dumb curiosity. I'm curious if you make a local map and set the struct's EnemyList into that, if it's still correct, and if so, if it still breaks if you pass that to the EnemyList on the SpawnActor?
used a MakeMap and fed it insteae, and it works
Worse. But you probably wouldn't notice it. ISMs simply batch drawcalls.
Still curious if pulling the data from the struct is an issue though. Like if you put it directly into a local variable.
is correct on the variable, incorrect once on the spawned actor
That is super weird.. but the direct MakeStruct works?
yup
Just so i know, your issue is with the camera losing sight of the 2nd character?
Is your "Level Settings" Variable old or updated anywhere?
I had to swap out the ISM that contained 16*16 chunk cells into individual actors for each tile - the issue I'm now encountering is no longer with map generation performance but the fps post generation being extremely slow.
nope, shouldnt be
Ok so I'm not sure why the values are being corrupted. Did find a bug report on a similar problem in 4.7 that was fixed, so no idea. Blaming the code gremlins. I've bypassed it and got the level settings directly from the game instance, and now that part works. Just my random weight selection doesnt...
basically yes. thats the main issue. but if there are other advices on doing other stuff I'll appreciate it
hi guys can someone tell my how to not run the entire behavior tree if a blackboard boolean == false?
I'm trying to make my character to do the hit check on 3rd frame of the animation, but it just doing it immediately after button press... Any advices, if you please?
The way that i usually do cameras that are being shared between characters is to make an actor that has only a SpringArm, and a camera attached to it, then in the new actor, you can use SetActorLocation that uses the average location of the actor
because you're using a camera that's attached to a character, it will always follow that character
"you can use SetActorLocation that uses the average location of the actor " regarding this point. should I make 2 character classes 1main and one child class of the main. or use controller class?
It's fine for them to use the same class, if they're going to do the same thing. It's always a good idea to make your own PlayerController class, but if you don't need it right now, don't bother because what you're doing should work without it
for starter they will have the same health and moves . but with some skills that each player will get they will differ . some players might get health increase or damage increase.
So the players have the same characters, but will have different skills that will affect their stats?
You know in elden ring when you can touch a bloodstain and see how someone died? How the heck would you do that? Like how would you even record the player movement and play it back? Crazy stuff.
In this tutorial we learn how to use Unreal Engine 4s take recorder to capture a sequence that we can play like an opposing character to race against. This is part of our gaming an assault course game series you can follow on this channel.
Does anyone know how to set the transform xyz, yaw, pitch on an Actor inside of the sequence while the animation runs?
i think you use anim notify for that kind of stuff
Hello, would someone know how you go about fixing the issue of a character going at high speeds off of a ramp or something like it and basically don’t retain any upward momentum when running/jumping off, they just go straight forward and have no arc? And this is just using the default character BP settings aside from increased speed.
This second video shows what I’m trying to do. It’s using the Ninja Character Plugin. But I’m trying to build my own system and not use that. I just don’t understand what’s causing this to happen.
what do you mean by "build your own system"?
how is your character moving right now?
Woah awesome! Thanks for sharing 🙏
How can i clear these errors? SizeBox and CanvasPanel don't even exist
The Ninja Character Plugin changes the default gravity system for the character BP and obviously that’s all done in C++, but I wanted to understand how something like that works and build something similar in blueprints instead. So, that’s what I mean by “build my own system”.
But the main thing I wanted to figure out first was why when traveling at high speeds will cause what’s happening in the first video. It’s like you hit a ceiling.
And it’s as basic as you can get with movement. I only have this for testing. But you can see I only change 2 settings. Everything else is default.
I’ve done a lot of playing around and the only thing that seems to kind of work is setting the character to “Flying”, but that brings in a lot more complications. So I was just curious if there was a simple solution.
Launch
I made a decent looking catapult with it.
maybe you can get your forward vector and speed and math it together to make a smooth looking launch
Even a slight "jump" to make it arc higher
What you need is to detect when you transition from walking to falling and halt upwards velocity then
Not sure if you can do it in BP. If you can detect the transition then you probably can
I'd start with the detection
print a string whenever you walk off a ledge
You know, I would’ve never thought about that.
I just got the length of my velocity, divided it by 5 and then just plug that into the Z.
It may not be a perfect and permanent solution, but it actually works.
Thanks guys, really appreciate the help!
When?
TIL that's just an event that's there
you might care about the downwards case
but that should do it
Yeah, that’s why I was saying it won’t be a permanent solution. But it works for what I need at the moment.
this is fun to play with for debugging
I’ve used that a few times when making a launcher. Pretty handy.
i have a widget component added to my actor and want it so that it doesn't grow in size when I go farther. It just stays the same size. Also it is wayy too big rn and modifying the scale isn't doing anything
show widget component options
try these
Do you want it to be a constant size on the screen or a constant size in the world?
no, i want it constant in world
*i only want it constant in world
and i want to modify the size
its huge rn and ive tried scaling it down to literally 0 and it aint changing
i think i change space --> world but idk what manually redraw is. If I have a constant size it shouldnt redraw at all, unless it means like the rotating it to the player's eyes
What prevents an asset's property from being visible in the Property Matrix?
Property matrix?
Can you show what you mean
There is no property spoon.
Read From Table On Save is not appearing for most WeaponDataAssets, despite it being present in all of them (I checked). The source code for these assets is obfuscated and I have no access to it, not my game.
Oh bulk edit, I don't really use it. Wouldn't know what you dont already know
This might be related to some sort of display limit in Property Matrix. Selecting smaller amounts if assets results in more consistent behavior. Not much of a "bulk editor" if it freaks out after 100 files.
question, is it true timeline node has a boolean to ignore time dilation?
you can set it off of the Timeline Component
What is missing?
You should be able to pin properties from the right.
thanks, I was trying to find info on that
Looking for the best way to do something:
I'm trying to set up a box collision for my car that, if collided with, causes a nigara effect to spawn/fire. The problem is, I want it to fire at the location of the collision itself. Does anyone know a decent and easy way to do this?
this is what i have so far
Put the box and the niagara component on the car. On Overlap get the overlapped sweep results and move the emitter to that location and then activate it.
which pin should i use?
further more, is it possible to do this with the static mesh of the car itself? or would this not work because the static mesh will collide with the other object rather than overlap with it
Test location and impact point. Impact point is probably what you're looking for though.
impact point, thanks.
And you can do it with the mesh's onhit too.
ok cheers
Hmmm. Sorry to msg you again. Both pins seems to return 0,0,0 when hit at any point while colliding with something else. It "works", but it doesn't change the position of the spark emitter
in this case, I'm just using a single box collision
Print string the other component and actor
Find out what you are colliding with
Also what's the result of location and impact point?
Use On Hit if you want to detect collision with blocking objects
When I make a vector in BP, how can I ensure it's single precision or double precision?
Does anyone know why Unreal behaves like this? There is actually the string that I am trying to see if it contains my array called Phrases to Stun but even so, the condition returns false
The first entry you're looping through appears to be empty which isn't in your "Phrases to Stun" array. Is this the first or second execution of the breakpoint?
I think that's the first one, but in both expressions, it returned false
Then it's something to do with the text you've entered into your array or in your phrase.
It does indeed work - check for any additional whitespsaces in your phrase array.
or within the timeline editor
Hey guys
I have two working assets in UE5 and I like aspects of both. I need some help combining the two to make the actor I need
Can someone explain to me why a single line trace results in no hit, but a multi line trace by channel with the exact same settings results in 1 actor hit (the actor I expect to be hit)?
fyi, gemtrace is an overlap channel, both are non blocking hits (when I check the boolean)
I'm stumped
Wait, do single line traces only care about blocking hits and will never hit an actor with its collision set to overlap?
Only blocks. That fucked me up before.
Pfff.. Thanks for the verification
As far as I understand it FVector is double, but there are other vector types. If you're only looking for the whole values no decimals you can use FVector_NetQuantize or if you're ok with two decimal places you can use FVector_NetQuantize100 instead
Just depends on how precise you want to be
Those are multiplayer optimized versions really I only use them in RPCs, but you can use them in BP
Today is my 2nd day trying Unreal and I am facing an issue with checkpoint.
I have 2 blueprints, 1 - To detect overlap and update checkpoint location.
2 - Using the above checkpoint location to teleport the player to it when respawning.
It works perfectly with the first checkpoint but does not update the values for 2nd,3rd etc.
well it looks like your always getting the first checkpoint, so i'm guessing it just keeps loading that checkpoint ?
Yes, it doesn't update to new checkpoint
In above code, it does print different vectors though
i would probably just keep a last checkpoint variable, and set it when you hit a checkpoint
keep it in the game instance or somewhere
I have created a variable "updateCheckpoint" in my thirdpersonblueprint...
I get the variable checkpointlocation from checkpoint blueprint.
I use the checkpointlocation data to set in updateCheckpoint.
Shouldn't that work as well? as the location is updating in thirdperson blueprint?
is it possible to calculate the actual landscape size in meters from these info ?
you set the checkpoint variable of the current checkpoint bp, but your getting zero so it will always be the first one
ok, I'll experiment a bit.
iirc from when i tried doing this a long time ago, you have to get the array of landscape components, then theres some sort of node you can use to get the combined bounds
Most all of this info doesn't actually exist at runtime. It's editor only. Cause ALandscape fucking sucks. You have to rely on basic bounds getters.
Hi guys, I'm using a pawn sensing component on an actor(character). It works when I place the actor in the level but not when i spawn in dynamically using a spawner. I have done almost the exact same thing on a previous project and it worked. Any hints would be much appreciated. Thank you
In general you should favor trying to use AI Perception instead of PawnSense.
Il try redo it with that now thank you
hay yall i wanna try making rythm game for a change but idk where to look for info so im here now, its an avoider so no need to detect if a player hit the note but how will i make charting tool for myself and or players to make maps, will i use splines for the things that come down to the player, how will i detect moments in the midi file so i can fire of vfx, is there a way for the plyers to share the mps thay make without me needingg a server (im broke)
am I approaching this right?
I'm trying to create a box trace that envelops the entire car almost like a box collision.
Right now I'm using two scene compontents to define the start and end of this trace, but I wonder if I can just get the dimensions of the car mesh and use that instead? Appreciate any answers.
as for why im doing this, it's so whenever my car collides with an object, sparks spawn at the trace hit to signify a crash
Thanks for the info
Ohh i totally forgot the get bound options. Thanks
use on hit event?
Yes, use event hit and the impulse tells you how hard the hit was and in what direction
i should use this in conjuction with my car static mesh itself I guess?
is this the right way to set it up? Currenly it's yeilding no results
compared to overlap
ah its not generating hit results maybe?
damn i dont know
hello guys i would like to have ur advice or correction on a system in bp im developping about performance,
I have a ton of animation montage to have in a ton of variable to set them whenever i want to call the right anim montage at the right time throught the interaction, but i think im doing it the wrong way cause it look like when i initiate the player interaction that start this system of ton of animation it lag quite a bit and i just normaly assume that its not a good practice to have that much anim montage variable, and i was thinking about soft ref but i m curious about other method to work with a big list of anim montage to ref
what is the weight on performance of a ton of animation montage variable in a bp ?
Explanation : the system feed variable set before it launch and i want to keep this way of choosing the anim montage to set depending on the event that use this said system cause it would be far easier to manage but i dont have to set those specific anim montage in real time
it might not be clear enought but i dont realy know how to explain it rn
I thought soft references were supposed to prevent class data from getting loaded into memory. Is this not the case?
I have a single actor component with nothing in it except one soft class reference. Size map reports ALL assets in the soft reference as if it was a hard reference
If you have hard reffed assets in this class, it isn't the softref. Something else has to be connecting them.
What you see is the entire class. Empty class, with just that single soft reference.
Upon doing some further reading...it appears that if you save a soft reference as a variable, it loads all references associated to it anyway
If you save? Am not following.
I'm relatively sure your issue is the type of softref you used if this is the only thing in the BP. The base class has to be loaded. You should make the Softref of a parent type and then put your SGUIMana thing in it.
Yeah that's basically what my issue is it seems. I have to go further up the chain...which I didn't want to do but I guess I have to
Ahoy gents, I have been toying around with my camera system quite a lot for this 2.5D platformer I am creating. During certain sections the camera is locked on the Y axis, at others I have the camera center on the platform the player lands on.
This being said, and with my beginner level knowledge on this topic, I have been iterating. Initially I had an unholy setup running off of tick with a million checks and such. Now I have a timer on .2 seconds, switching on an enum as you see. My question is this. The second screenshot shows what will be the most logic by far for this. Is this too much to run on a timer, and if so how could you accomplish this without timer or tick?
I need the camera to follow the player when jumping, I can only really see this happening if this is the case, though I may be very dumb.
Depending on the BP, I'd also make note that most gameplay classes shouldn't care about a UI manager, if that's what that is.
No that was just for testing. I just picked a class at random because I saw a bunch of crap loaded into memory
Hi, can someone explain why my world delta time is not returning me my actual frame delta, but the one i'm targeting ? (i'm getting 0.167 but have 45fps)
I'm upgrading a reference manager class I have that deals with finding references for me
I would generally say don't worry about this. Put it on tick. It's a single actor in the game managing a complex state. You'll probably make thingsd more complicated and a lot less performant by not just making this a simple tick function.
Hard to say unless you have a tick time limited class.
which is not the case
if i print the world delta seconds in my main level blueprint it's still not accurate
Oh I promise, it was originally very bad on tick. Well, my checks were horrible. I have the actual camera updating on tick still. I am just setting the values on this timer. All of this was originally on tick lol. Talk about terrible and not scalable at all.
My current iteration is working perfectly, I am just wondering if its bad on performance is all. I do appreciate your response!
Im using the web browser plugin. Its quite nice.
With it i can make a small javascript game inside my unreal game.
Though im not sure how this will work once its packaged.
As of now, I have the link to my html as:
C:/SarahProjects/GreatLife/Browser.html
And that works.
Though it shouldn't be like that right?
It should be something that adapts to wherever your project is?
i tried file://browser.html and that does not work
so i have 2 widget blueprints and i want that Add Hearts function
will be the same number on the game itself.
the function is on UI_MAIN_MENU widget blueprint
and the game is on PlayerHud_BP Widget blueprint
and that code is on the PlayerHud_BP
i need to replace the Hearts Number Integer with the Lives Integer
but that 2 diffrent variables in 2 diffrent blueprints
how to do that
when i click the play button i go into new level
i want when i go into new level the number of hearts will remain and the function of lives will apply
how to do that
you would store such data on something that persists over level changes, e.g. the player state, player controller might work, too!?
SaveGames
i have this functuin when the ball go under the paddle so that increese by 1
the problem is:
in Main_Menu Widget blueprint i have option that if you click on the heart button you get 1 more Heart
The game itself is new level so i created a new widget blueprint called PlayerHud_BP
.
and the number of hearts is not sync between the Maun_menu to the PlayerHud
i dont know how to ref that
Hi all how would I increment this string so that when its called it uses the next slot in the array? I tried using a Interger variable with an increment but it didnt work😖 . Thanks
why do you not use Add?
it would add an element at the end of the array
Vector Question. I'm spawning in a reticle at my character's feet. I'm trying to have the reticle aim at my cursor hit results but it keeps using world space 0,0,0 as its reference. So when my player is standing on 0,0,0 it spins properly. Otherwise it won't as my cursor/player are off the origin.
you shouldn't subtract the location from the player position
and you should at least add a branch check to only do updates when you have a valid hit result
so add them together? instead of subtract?
no
just straight into find look?
no math except the find look at rotation
how did you learn vectors man, I just... my brain can't wrap my head around them. Thank you. I've been messing with this for hours
i'm not even good at vector math xD
better than me clearly
how do I find out how to use unreal engines text to speech system?
it's really really bad, you most likely don't want to use it at all
but iirc you just get the TTS Subsystem and call the Speech node on that
Welcome to my four part lecture on essential math for game developers 💖 I hope you'll find this useful in your game dev journey!
This course will have assignments throughout, if you want to maximize your learning, I recommend doing them!
If you are enjoying this series, please consider supporting me on Patreon!
🧡 https://www.patreon.com/acegik...
this won't be my first vector video but I hope its my last
It won't be your last. You can't make a 3D game without vectors.
Thanks I think the issues diffent than what i thought
hey yall, im trying to make bunny hopping but i cant seem to get the grounded speed reset to function properly. any input is welcome
I have mulitple of the same blue print in a level. Ive generated a unique GUID for each one of them. Basically when the player overlaps the BP it opens up new level, which is basically a battle arena. Once the battles finished the player is teleported back to the previous level. Then the BP should check on event play if its GUID is in the array. If its true then the actor should be destroyed. It kind of works but not completely. My setup is below if anyone can help please:
This one is inserting the GUID to the array in the game instance
GUID setup in the construction script
Event called on begin play
what would be some good use cases of Arrays?
question
My current system is that I spawn an actor with a collider component on the left and right side of a spline point
I'm trying to get the distance between the first spline point and the next one and then divide that by two and set that to the colliders X (forward) extent. That way all the ground is covered. The math is there, but the collider is NOT changing, at least not predictably.
Am I not able to change the extent at runtime?
node logic is -> do that math (math is good) -> Set ExtentX -> Spawn Actor -> Get BoxCollider -> Get ExtentX -> SetBoxExtent
I'm not too sure why this isn't working
If you find yourself doing the same thing over and over and over like setting a point1, point2, point3, point4 then yea.
Arrays are basically like lists where you can store multiple variables or values. For example if you had a list of names you could store them all in an array. You could then do a check on an event to see if a certain name is in the array and then "if so" do this. They can also be used if a character has multiple weapons or different items etc. This is like the most basic explanation about them
hmm, currently I have like 10 door keys I want to store or keep track of and don't want variable for each unique key, would array work?
that's a perfect use case
100
got it.
I am beginning to use arrays and not pro to work with an inventory and UI stuff yet, so for prototyping I think it should work
If you need help with arrays send a DM cause in the last week I have used an ungodly amount of them
In this video I will cover arrays in unreal engine 5 .it`s a quick guide for beginners and will get you familiar with them and their functionalities .
Hello everyone and welcome to my channel . My name is Alireza and I`m a cg artist and a Virtual Reality developer .
I founded UNREAL ART with the mission to equip you with the knowledge,skil...
Check out this vid it explains array very simply and how to use them
thanks a lot, appreciate it
why is this not working? any idea?
You're setting the rotation for a controller and when it says "target: self" it's targeting the actor of the blueprint which probably is not a controller
so whatever you're trying to set the rotation for, plug that into the blue pin
I followed this picture which seems working fine
their's says "target is actor" on the one you're having issues with. Not "target is controller"

question again somebody pls help
My current system is that I spawn an actor with a collider component on the left and right side of a spline point
I'm trying to get the distance between the first spline point and the next one and then divide that by two and set that to the colliders X (forward) extent. That way all the ground is covered. The math is there, but the collider is NOT changing, at least not predictably.
Am I not able to change the extent at runtime?
node logic is -> do that math (math is good) -> Set ExtentX -> Spawn Actor -> Get BoxCollider -> Get ExtentX -> SetBoxExtent
I'm not too sure why this isn't working
How do you hide gizmos in the Blueprint Viewport? Was hoping the G keyboard toggle would work...
Hello, I have a question about the architecture of and Inventory System. Games Like DayZ have inventories where your Items can have items stored in them as well. Fore Example you can have container items, or magazins with ammo in them or weapons with attachments. How would I build that in Unreal with a generic attempt? My usual inventory attempt is to have a list of structures. Unfortunately that would not allow me to have to have subitems in items because nested structures are not allowed.
question ignore time dilation doesn't seem to work
i have it triggered on a hit event which i know from print statements are triggered once
nvm got it to work if i set it on play
nvm it doesn't even trigger the timeline
Is PerfectDodge being called at all?
yes
it's being called when the hit connects
and i see the print statement when it happens
i moved it back to play from start and time dilation occurs but timeline doesn't ignore it
since i have the curve go from 0 to 1 over time
So you’re using a timeline to set time dilation and want the timeline itself to ignore it?
yes
cause basically what i'm trying to create is a slow motion effect on call of perfectdodge
Does it have a get time dilation ignore you can check on Update?
man is there really no way to have a timer that scales to real time rather than scaled time?
i know there's get real seconds but i'm not sure where that can be placed to get a timer unaffected by time dilation
hey guys. kinda a newbie here. Trying to check if an item is in a socket and am having a hard time
wondering if anyone could lend a hand?
I feel like there must be a better way for you to do this especially if you want to check for different items in the future
Cant you keep some kind of reference to what is currently equipped. so you can just check later what is equipped?
i'm not really sure and you are probably right. I'm simply trying to check if the item is equipped so I could give my player character a property when it is. struggling hard
i appreciate the response btw
that way you could make a reusable function like "IsItemEquipped" etc
And pass in a name or class etc
that probably would be a nice way if i'm going to do it for multiple items in the future. It was set up this way because I wanted the specific item to carry the code to apply the property. As is I seem unable to cobble the code together for even one item. do you by chance see where its going wrong in this example?
Print string both of those returned name values and see what you get
you'll probably easily find what is wrong :)
dont forget you might want to check "is valid" on the get actor of class too, to make sure its actually getting a ref to the ring actor
i'm going to sound so stupid haha, but how would that work?
which part?
Is there anyone who can help me with this please
so you are saying a print string as in after actor of class?
anyway just a guess but cant you also just do this?
if you know thats the socket youre checking
i think i get where you are coming from
i guess i thought maybe you would grab the socket and item name and see if they were =?
haha
probably not the right approach
Get actor of class -> Is valid
True -> print string (of the return value of the socket name)
false -> print string (actor not found)
On Update, with a print
again sorry if these are stupid questions
But surely your socket would not be the same name as the item name? but honestly, i dont understand the "get socket bone name" node, i've never used it
wherever you put it? i think you put it in begin play?
or do you mean the order?
no i think you got me
i've never tried troubleshooting this method so i just feel a little lost in the dark
i greatly appreciate you taking the time
so i'm getting no
does that mean the actor i'm trying to call will not work
show your graph again
it sounds like there is no actor of that class in the world
Using Get Type Name is causing my editor utility blueprint to insta-crash the editor with no error when run. I know it's this node because it was the only addtion before the crashing started. Any ideas? Is there something special about this node? I can confirm that all assets entering the Object pin in this graph are valid and are treated normally elsewhere.
What? I unchecked the print to screen argument in Print String and it still crashes, but I get an error:
EpicAccountId:ec6d6f48784c4163aa6191392a32f91d
Unhandled Exception: EXCEPTION_ACCESS_VIOLATION reading address 0x0000000000000040
UE4Editor_Niagara
UE4Editor_NiagaraEditor
UE4Editor_NiagaraEditor
UE4Editor_CoreUObject
UE4Editor_CoreUObject
UE4Editor_CoreUObject
UE4Editor_CoreUObject
UE4Editor_CoreUObject
UE4Editor_CoreUObject
UE4Editor_CoreUObject
UE4Editor_CoreUObject
UE4Editor_CoreUObject
UE4Editor_Blutility
UE4Editor_Blutility
UE4Editor_Blutility
UE4Editor_Slate
UE4Editor_Slate
UE4Editor_Slate
UE4Editor_Slate
UE4Editor_Slate
UE4Editor_Slate
UE4Editor_Slate
UE4Editor_Slate
UE4Editor_Slate
UE4Editor_Slate
UE4Editor_ApplicationCore
UE4Editor_ApplicationCore
UE4Editor_ApplicationCore
UE4Editor_ApplicationCore
user32
user32
UE4Editor_ApplicationCore
UE4Editor
UE4Editor
UE4Editor
UE4Editor
UE4Editor
kernel32
ntdll```
Progress...?
have you considered adding a branch which uses the success result?
idk if the GetTypeName does a nullptr check
guys i have a problem to understand how animation montage asset work in term of memory or whatever, when i load a variable animation montage and unload it, the animation montage asset it self is still accessible right ? does the animation montage asset take any performance except maybe at the start of the game ?
If something has a reference to an asset, then that asset will continue to be stored in memory.
I'm not sure what you mean by load and unload, as "unloading" isn't something you normally have to worry about as most things are usually garbage collected automatically if nothing has a reference to it.
Assets should still be accessible even if their content isn't loaded into memory.
As in event tick?
Oh wait you said update
So you want me to print the get ignore dilation?
Any help at all please?
Don't store your GUID as a string. Use the GUID as a GUID (you can take the New GUID's return value and promote it to a variable and check if it is valid or not). It's far less bytes than storing it as a string.
The reason it's likely not working is that you are "Inserting" into the array. Just use "Add".
Yes, to see if it changes
Gotcha. Away from computer so will check it out and let you know
Thanks for your response, i appreciate it👍 . I tried what you said but still coming across the same issue. My setup now is below
For some context I have some enemies in overworld that when the player runs into them they get transported to a new level/battle area. Obviously when the player returns to the overworld I dont want the enemy still there, so the GUID is to check if the enemies GUID is in the array that on begin play it will be destroyed. The issue I have is it will work the first time and maybe the second and then it wont work at all after that.
Also if the player touches an enemy, completes the battle and returns, that enemy is gone, as intended. But if I run up to another enemy, complete the battle and return, the current enemy is gone but the previous one is back in the overworld. Its almost like theyre not getting stored in the array properly
Are you clearing your array at some point?
no. I only will have the array cleared when entering a new overworld level, but ill set up a custom event in my game instance for that
But currently you don't clear at all, right?
yes right
the enemies all share the same blueprint, but it shouldnt matter should it, because when you place a new one in the world they will have a new GUID different from the other.......?
This might be because the enemies don't have a valid ID to begin with. Any existing placed enemies in the scene will need to have their construction script executed - you shoudl be able to do this by moving them.
Each enemy will be an instance of the blueprint and they will have their own unique GUID assigned.
Any new enemies you place should have the GUID added to them as soon as they are placed.
they do have theyre individual ids, i can see them:
each one of them is different as well
Ok, then I'd suggest checking the contents of the Enemy Array at different steps in your logic.
Apart from what ive shown you I have nothing else. Below is the only variable ive got in my game instance:
Ive literally only started using GUIDS yesterday lol
You need to know what the contents are at different points of your logic. How can you troublehoot it otherwise?
GUIDs are no different than any other type of data. You're storing the GUID in an array in the Game Instance, meaning those GUID values will persist in the GameInstance, but it also matters when you add the GUID to the array, and what values are present in that array when you're looking at it or modifying it - that can give you a hint as to what is wrong.
Thanks
All of a sudden it works now
I just removed a boolean from begin play that was from my game instance that was on begin play and now it works perfectly
very strange
That is odd o_O
Thanks for your help
it must not have liked it for some reason
It was a check to see if the battle had finished but with the unique GUIDS it was irellevant, and then BAM
Just one more question, how would I use I GUID to save a BPS location in a level?
For that you'd probably want a structure of data that you may want to save about the GUID as it may be more than just the location you'll want to save later on.
What you'd do is create a "Map" type variable, much like how you create an array. The map types would be GUID > Your Structure.
When you want to save data about a specific actor that has a GUID, you add the actor's GUID, to the map along with the data in the structure that you want to save.
You'd again read that data on begin play, doing a "Find" on the map for the GUID which will give you the associated structure - you can use the boolean to see if the data was there and if so, have the actor do things to itself based on the data in the structure.
To handle transitions to your battle scene, you'd probably want actors to subscribe to an event dispatcher on the gamestate that you'd call when you're about to move to the new level. The actors could then add themselves to the map as needed when that event dispatcher is triggered.
Thanks. The battle part and transistions ive sorted. Im a little lost with the "Map" variable. What is that and where would i find it?😵💫
You select it like you select an array.
Then you define the types for the "Key" and "Value".
The "Key" is the thing used as the means to "Look Up" what it points to: the "Value".
Thanks. Like this?:
I made it an object reference to my enemy blueprint
Don't. Object references won't work.
Objects are destroyed during level transitions.
would i make it a transform then?😵💫
Only if you only want to ever store the transform. What if there is additional data you want to store in the future? If so, then a structure with the data you want to save about the actor is better.
transform is all i need as its just an overworld pawn any way
it wont serve any purpose apart from that
Timeline exists in Blueprint
Timeline does not exist in blueprint component (actor component)
What's the next closest alternative to timelines in blueprint components?
Timelines are actor components themselves.
What are you trying to use the timeline for?
how to I substract from a variable in my case the stamina constantly while the sprint is active and when the sprint is over/not active stamina is recovering
Tick > Is Sprinting? > (TRUE) Reduce Stamina > (FALSE) Increase Stamina
The amount to increase should be the Delta Seconds * the amount per second you want to gain. ensure that the resulting stamina value is clamped between 0 and Max Stamina.
Can't use a while loop like this. While Loops must be finished within one frame otherwise you get infinite loop errors.
what bp is used to add time between actions so I can do substraction every x miliseconds that sprint is on
Tick.
event tick or which one
Event Tick.
there can't be more than one event tick or why does it say warning under mine
Because you can't have more than 1 event tick in a blueprint. If you already have one, then you need to utilize it. You can encapsulate your stamina logic in a function that you call on the tick event along with any other functions you have running on tick.
so I should make sprint a function?
I'd say make a function for handling stamina
I have an anim montage that dashes towards a target location
To accomplish this I have the anim montage have an anim notify "dashToTarget"
Where I play the montage using Play Montage, I listen for "dashToTarget". If I receive it, I will play a timeline of a spline that will SetActorLocation
It's relatively simple
However, if I have 100 enemies I don't want to make a timeline for each one. I want to move it to a blueprint component and have that handle the timeline code
hi guys. How are we doing?
Please I need help with this. Basically, I am to use the same code for two different doors but, one works and the other doesn’t. I don’t want to use the same door everywhere so I want the player to react with any door in the level, both doors have collision. here are my blueprint set up. What am I doing wrong?
I created 2 function one for stamina reduction one for stamina regen
pretty stuck here atm
Ok, a float track is somewhat easy to handle.
If you're concerned about using tick performance here and you have nothing else running on tick, you can always enable tick on play and disable tick on stop.
This does both the regeneration and the usage of stamina in one function based on whether IsSprinting is true. It will disable the sprinting if there is no stamina left.
Connect this up to Event Tick and feed in the "Delta Seconds" from tick into the "Delta Seconds" in this function - this ensures that the values are framerate independent.
looks so clean too
btw how does your handle stamina have delta seconds because mine does not
It's an input on the function.
Use "Door" as a base class for how a door operates. Create child blueprints of it if you need additional functionality per door and if needed override any functions.
Yes it does. Floats have decimal points where ints do not. Delta Seconds is always a fraction of a number so you must use float.
@lunar sleet I don't think ignore time dilation works.
very clean but atm not worth for me to buy since I barely can do bps
but thanks for letting me know the plugin
I'm trying to find a way to check if an item from a data table is connected to a specific socket. Been at it all day and am approaching despair here. If there's anyone who could point out what I might be doing wrong and how to rectify it, it would absolutely make my day! Thanks!
aside from the very obious not connected bool lol
I wouldn't use visuals to store the state of what something is. Use something that knows what is equipped. Use the visuals to represent that it is equipped.
I appreciate the reply but i'm not sure i follow
i hate to ask a lot, but would it be possible for you to demonstrate with Blueprints?
for some reason its not working I tried to print the stamina on the screen to see if it is draining but it does not even print
With that set up, you're basically looking at the mesh and checking if the socket bone name is == to the socket of your structure to determine if this thing is equipped which doesn't make a lot of sense. What the name is of the bone shouldn't have any bearing on what is equipped.
You need to have a means of determining what is equipped that doesn't rely on the mesh's state. As an example, you could use variables on your player character that stores the FName of the items that are equipped - if they are in specific slots like "Ring" or "Chest" then you can create variables specifically for those slots and store the Name of the Data Table Row for the item so you can look up the associated data when needed.
I can't create anything for you in blueprints as there's much more to handling an equipment system than I could create in blueprints within a reasonable amount of time, nor do I understand the full requirements of your system, so any suggestion I could make may not work with what you're actually trying to do.
@dawn gazelle sorry to bother you but i have a question as well when you're done helping Sabalena
I'm a bit lost on what you mean, but I will try my best to piece it together. I really appreciate you taking the time to write all that. Thanks for the kindness, stranger!
@ancient drumIn the code you have shown you are subtracing 1 from max stamina
not current stamina
i dont really know your whole system but this might be part of the problem
You should just ask your question. If I can answer it, I will, if not, others will at least see your question.
Where are you printing?
on screen and log
I mean where in your blueprint?
Are you calling "UseStamina" on event tick?
Weird. What makes you think time dilation is affecting the timeline then
don't think so
Then how is it being called?
custom event
What calls "UseStamina".
actually further testing realized the timeline is just bricked
nothing I think now that you say
like i dunno what happened to it
but it will do one tick on the timeline
and then no more ticks, it never even finishes it
and this is with just running a timer with no time dilation
meanwhile the one i used for dodge roll works
So if nothing calls it, then it won't get executed.
"Event Tick" is an event that is triggered every frame.
You should be able to call your stamina function directly from Event Tick and connect the Delta Seconds from Event Tick to it as well.
Guys how do I set a variable in one blueprint from a different one?
maybe my settings?
I got headbob at the event tick and can't drag another node to use stamina
the curves were meant to change time dilation but right now it's not connected to anything just to test the timeline in general
cause here's what the timer looks like purely
Time dilation affects timelines too I believe. If you have an extremely low time dilation, like 0 or 0.1 or 0.00001 then it can take literally forever to get further.
is it wrong if I do it like this?
right but then why else would the ignore time dilation node exist?
This is fine.
Can someone help
Announce Post: https://forums.unrealengine.com/showthread.php?101051
This Training Stream takes a look at Blueprint Communication. We find that Unreal Developers of all levels can sometimes struggle through the concepts behind moving data between objects. So in this video we'll take a look at the different ways to make Blueprints talk to one an...
2 hours 😭
Welcome to Game Dev.
ok so now I tested it and whenever I hit stam 0 it regens and my sprint is still active
Is there not a simple way to do that?
and it prints every second
Where you control the "IsSprinting" is probably the culprint. With the function we're using now, it'll only set IsSprinting to false when the player is out of stamina. If you're setting it true on some other event somewhere (like on your inputs) then you'll probably want to ensure that you're only setting it true one time and not every frame.
So you basically want to do the same thing when the player runs out of stamina as what happens when you release the shift key instead of just setting IsSprinting false in our function we made.
It's not a "simple" thing if you don't undertand OOP, references, casting, interfaces, event dispatchers...
For example, if I said, get a reference to the object you want to communicate with, cast to it, and call the functions or change the variables you want to use on it....
Would you know how to get that reference or what casting is?
Nope absolutely no clue 😃
Damn
So this is really complicated huh
Maybe I can avoid having to do that
Trying to find a workaround for a problem you don't even understand doesn't sound like a good approach.
How do you adjust Buoyancy so that it can hold a lot of actors with a lot of mass
so in sprint when stamina hits 0 set is sprinting to false?
Do timelines work in character controllers?
Yeah but maybe there is a better way to do it, I mean if having to do this was a super common thing everyone has to learn there'd be more resources on how to do it, but I could barely find anything
That's literally what that video is - it's teaching you how to do just that and it is absolutely a vital part of working within Unreal. You'd have to learn how to do it at some point.
since my sprint is in the character controller and it uses a timeline
weird ok
cause yeah my timeline is straight up busted in controllers
like they won't update past the first tick
and i know it didn't skip the finish execution because i checked to see if the timer is active and it still is
You likely want to have another event that you connect into the same execution path that your "released" from your left shift is plugged into. You'd call that event when the player is out of stamina in the function we created.
My problem is that I'm trying to play an attack animation from my AI blueprint and that works, but after the character does the attack animation it breaks the idle and running animations cause the conditions for those are set in the animation blueprint and in there there's no condition for going back to those idle/running animations from the attack animation
So to fix this issue I wanted to set an IsAttacking variable in the animation blueprint from the AI blueprint and that way I could have the animations go back and forth
Is there a way to fix this that I haven't thought of?
The usual set up is to have the animation blueprint read from its owner, but it still works the same. If you're using the default animation blueprints that are in the sample projects, you'd probably see that it casts to the character and reads values in the Blueprint Update event.
its so late and Im still processing this after reading it 10 times
what did you mean in the last sentence "You'd call that event when the player is out of stamina in the function we created."
So that means to do this I have to learn the complicated thing by watching the 2 hour video? That's the usual approach?
Damn
take 20-30 mins a day to watch it thats what I'll do starting from tomorrow cause I don't know those either
I don't wanna learn things I wanna be stuck in tutorial hell forever
Good idea
Alright I'll do it 🤑
All this to set up one animation 😭
watching 2 hours in one sitting is pointless since you will most probably forget all that stuff next day
To understand how to communicate between blueprints, yes.
Since you're working in the animation blueprint you at least have an easy means of getting a reference to the thing you want to read data from. It might even be set up mostly to do what you need, just that you may need to cast to your custom character class that contains the variable you want to use and create some variables both on the character and in the animation blueprint.
(These images are just an example)
Yeah true and I don't even have the attention span for that
Events and functions are thing that you call when you want them to happen.
You know that if you're out of stamina, you want to reverse the timeline, just like how you reverse the timeline when shift is released.
In the function we made, the last little bit of it is setting IsSprinting false, but it should also make your timeline reverse, therefore, you want to create and call an event when the player is out of stamina that also triggers your timeline to reverse.
Yeah I literally don't understand any of this, I need to watch the video 💀
ok so timeline works, it's just doesn't work on character controller
for some reason
including ignore time dilation which i'm happy
i don't know what prevents the timeline from updating in controller
so I should create a custom event with the same function for stamina and call it on the exec path between left shift released and reverse timeline?
@ancient drum can you quickly show my your stamina code/BP?
since you said it's in the character controller?
ah whoops
the sprint is in character bp
i guess what part of your code used timeline in the controller?
hmmm
looks normal similar to mine
and i assume it works cause it updates the speed throughout the timeline
this stamina is making me go insane fr
and its 5 am for me
im trying to do this since 1 am 😭
i made a montage for my first person attack, but when i click its not actually playing it
hard mood
i have a feeling its related to the animation BP
i'm just wondering hy timeline doesn't work on controller
why is there almost no first person animation tutorials
and what few ones there are seem to almost exclusivley be guns
yeah unreal community is on the scuffed side when it comes to tutorials still
ive been able to find almost everything else, but i just cant figure out 1st person melee stuff
specifically animations
i have combat and damage working
and the ai will attack you too
i even have an idle animation for just holding a weapon
but i cant get the montage to overide it through BP
sorry to bother, you sure it runs on the character controller right?
There will be many many many moments like this. Making games is hard. Learning to make games is hard. I know a lot of people say that, but it truly is. There will be many many nights ahead where you are going to get chewed up and spit out. This problem you are facing is likely not even the closest to the most frustrated you will be. The hardest truth is most things you will not be able to get help for, you are gonna have to grind to figure it out. But with some serious determination, you will push through it.
wait that's not character controller that's the character itself
eye sea
so i guess timeline just doesn't work in character controller
cause when i say character controller i don't mean the blueprint of the character
ikik and thanks
i mean the actual player controller class
oh then mb
you got this. the only way to really learn is just keep beating your head against it until yoou get it right. learn to search things online and learn to ask the question in different ways. again, you got this.
well at least i know what to use for non-time dilated affected timers
this as i learned thanks to sabalena indirectly that timeline doesn't work in player controller
xD
No... you should create an event that you plug into the same path as the released event from your shift. You call it in the function we made at the end instead of setting the IsSprinting to false.
Start thinking and following your stuff logically, one thing after the other.
You know you've reduced your stamina. You know that we have a means of checking if the player is out of stamina in the function we made. From that point you know you want your timeline to reverse so it resets their speed, so you create an event and call it to reverse your timeline.
Where? At the point in time where you want it to happen, which would be where you know that the stamina was reduced to 0.
Makes sense. You can use timer by event for this stuff, you know?
i mean i could but for my specific case i wanted a timer unaffected by time dilation
i'll test later if timeline works in player state
Not sure which thread to ask this in but should if I am putting in custom guns into my game should I have them rotated correctly before import? Or should I add a scene component so that I can rotate the skeletal mesh as needed?
you are doing yourself a favor if you import them correct
and all being aligned the same way, e.g. x axis forward, z up
Okay noted.
can you please explain with screenshots? I am very bad at interpreting words 😅
I need some help if possible. For context: I'm wanting to learn a bit about 3d since all I've messed with on ue5.4.2 is 2d. I prefer 3d games and I'd like to learn it some more. Now, I'm trying to make a linetrace activate an outline on an actors mesh without using post processing effects, I found a tutorial but out of the box it didn't work. so I've been trying to get it to work.
https://blueprintue.com/blueprint/bpy4xptu/
I know the code is messy and it shouldn't all be handled here, it was in the custom event, however I moved a lot of it to see if the issue was the event by chance, it was not.
also for reference BP_ItemOutline is where the custom event is, and BP_TestActor is a child BP of it.
No reason it shouldnt
Hey guys im using the UE5 game animation sample character and trying to figure out how to add sprinting, has anyone got this to work?
yeah but from what i'm seeing it mostly doesn't
it ticks once and that's it
timer is just left in limbo
that said timeline does work in player state thankfully
so gonna implement in C++ some logic for being able to do a counter edge during the slow-mo and implement it in blueprint
How would I go about a first person 180 quickturn like this without it sometimes deciding to get there via a different axis than intended (i.e. rotating over the top)
Lerp the yaw, not the full rotator.
oh, derp
thanks
Really sounds like wrong config or smth , engine version?
tested, works like a charm
in the playercontroller
5.3/5.4
Add timeline -> add float track -> add 2 points (t:0.0,v:0.0),(t:5.0,v:5.0) -> Play
Thanks, this worked
Feels a bit messy though having to basically re-create timelines
Also a note, might not make a big difference but the increment should come after the output (I recommend using Sequence)
Really hoping to get some recommendations from a gameplay programmer. How would you go about programming a ladder climb animation so that it perfectly lines up with every step of the ladder? We made a ladder that is perfectly spaced, and creating animations specific to that ladder.
But every time we try and program it (we set the character to fly mode and so the can only go up) the animation inevitably always goes out of sync and his feet and hand placement wont be accurate. So does anyone have any recommendations to force the animation and character controller to stay in sync with the ladder?
If you want it to sync up, you'll need some form of hand and foot IK. So when climbing the ladder, it handles where those IK spots are and the anim BP moves the hands to those locations.
I know you have a solution but in case you run into other issues or want to explore other options, you could look into motion warping and root motion. This means it'll be handled more on the animation side of things.
Not quite sure if this is the right solution. Regardless the animation will become out of sync even if IK is landing on the correct handles. It will look a bit wonky if the characters motion doesnt make sense with how his IK moves.
Hey Slackers! I was wondering if you guys know if Event End Play Triggers on ALT + F4? 🙂
You can use animation curves to define how much it should use IK. As they move the hands/feet away from the rungs, you can set it to not use the IK and then as it goes to place the hand and foot on the rung, you set it to use it. As you can use an alpha, you can have it lerp from 0 - 1. 0 being no IK and 1 being full IK. 0.5 would be half IK.
You just need to define the logic for determining the placement locations based on where they are on the ladder.
Actually I do have another issue I was going to look into
I use root motion and sometimes attacking enemies will make you get too close
In fact, someone posted the exact same thing: https://www.reddit.com/r/unrealengine/comments/196ro28/how_do_i_stop_root_motion_movement_when_too_close/
Someone mentioned using motion warping as a solution
For motion warping, prevents you from going too close even if your root motion animation is supposed to move you forward?
Probably, add a print string and then check you're session logs. If the print string is there then yes.
Where are the session logs stored? 😄
In the saves folder I believe.
Thx! 😄
Yes, you define a target location and sections in the montage that motion warping can be active (like being in the air) and it will try to manipulate the animation so it'll finish at the desired location. They use it in the motion matching example project so it might be worth taking a look at that.
Hey, I encountered some small performance problems, I could see with the "stat units" that it was the game threads that were bottlenecking, so I decided to look for details in my stats and I could see that the overlaps were rather high I don't know if it's normal there are very few actors or I use node overlaps
how to save game in unreal engine
?
i have a Heart Button that on every click 1 Heart Added
and i have text that represent how much Hearts i have
how to save the number of hearts that i have
Look up Save Game Objects
I would focus more on the world tick time. What you've shown however is just an overview so doesn't actually point to the issue. You would need to profile to know whats actually causing the issue.
I used the profiler but the majority of what it showed me was that the TSR is very expensive. I also tried using insights but it's rather intimidating at first. I'm reading the docs on it but I don't have the impression that it's super compatible with the blueprint?
@frosty heron are you around? I feel like you may be able to help me here
(Sorry for the ping if it's against the rules I won't)
just post in relevant channel, I only know like 0.5% of Unreal
mostly basic blueprints
most of the time there are other people that can help
That's fair, I apologize again.
If you disable TSR does the bottle neck go away? My old graphic card didn't like it much haha. It usually caused a 30 FPS dip in a template map. (Granted I left it on to get them crisp edges. haha)
don't be, just saying there are others that can look and help
Yea it's what makes this discord so helpful. Everyone knows a little but together we know alot. 😄
I'll try when I'm home, but actually my graphics card isn't really in top shape anymore haha. Do you know if shader stuff is counted in the world tick? Thanks again !
I feel like an ape sometimes haha.
https://blueprintue.com/blueprint/yeyh-a6g/
This is what I am currently doing, I'm trying to make an interaction system (I know there are free ones but I wanna learn). Basically it draws a small outline without post processing effects. and it almost works but my static mesh component that the material is placed onto doesn't set to my transform properly. It's just a square? as you can see in the second image.
I have been working on this for a few hours and finally got it to somewhat function I'm sure I could have gotten it but figured getting a migraine wouldn't be worth it lol
Personally I haven't work with post processing outline
that's fair
only expensive outline that double the mesh using world position offset
but I know there are tutorials out there
Have you considered setting the overlay material on a static mesh?
Just the normal material with the looks of it. There should be a specific node for setting the overlay material.
if you don't use Post Process, do you have a duplicate mesh? (one for the static mesh the other for the outline?)
it's 1 extra asset, it changes the static mesh every time you look at something else.
Are you setting it to the same static mesh?
@fiery sierra I can change the outline color because I made it a param.
Also added a function to resize the outline based on the distance between the camera and the actor in the material (Using GPU)
that's very cool
You could just add the overlay material directly to the thing you look at. No need to create a new mesh.
hmmmmmmm let me see if that works better
I might yoink this if that's ok
oh wow
if it fit your purpose, feel free
but again, it's kinda expensive since I need extra mesh
so I kind of reserve it for Items and Characters only
maybe it's just a skill issue but I can't get a nice looking outline with post process soo far
This is my PP outline.
Yea.
@fiery sierra ^ what pattym have probably fit your purpose more?
if you are interacting with item, you want that glowy effect imo
yes I do
The material is pretty straight forward as well. (I can ping you the math expression for the neighboring pixels calculation if you want it)
and that worked pattym ty
yoinking that
now all child blueprints of my BP_ItemOutline can viewed with an outline
I only take credit for about 20% of that material haha.
So setting defaults on a child actor doesn't get saved? I restarted the editor and none of the data changes on a child actor details were still there...
child actor component?
Yes
You can edit the Child Actor Template, none of the changes to that remain saved it seems
I was told to avoid them by reputable people, they are known to be buggy.
my suggestion is to not use them all together
Yea I'm learning that now
A bit in to deep to replace the ones we have now. But will definitely avoid them in the future
Damn, seems like we have also incurred a lot of data loss by making a change the base class of that actor...
This is rough
From my limited use of child actor components, they tend to be less buggy if instancable data is driven by a data assets. Sometimes they might still loose the data asset it should be using after you make edits to the BP but it tends to be a quicker fix.
don't use child actor components 😄
please send the math expression :3
It appears to be caused by changing the actor class we use as child actor.
Yea... it's an older project I joined and has been this way for years so can't really go back now
I wouldn't say don't use them. Just use with caution lol. Generally with simpler BPs.
Can't really get more simple than this though. It just contains some data and sphere for visualisation lol
Use with caution == don't use them. You don't want to rely on features that are broken
will be a pain later down in development
Yea I'm learning this now ^^ the hard way
There goes a productive start to the week lol
like bp structs
exactly
It's technically only buggy due to the editor and how it propagates changes. The same thing happens in other areas. If you have a child actor component and never make changes to the actor you select, it'll work fine indefinitely without problems.
The same thing can happen with BP based structures. It's the making edits that causes the problem. lol.
Some people still insist on using them, I am just happy to not touch it ever again
BP structs are more than just that. They're a whole can of worms
Well what does it matter whether the editing is bugged or the thing itself. It's a problem
and can break very easily, its just the matter if you run into it or not. Some do, some don't.
yeah but I edit my structs every now and then. The worse thing is the corruption comes in silently.
the best way is to not walk into the mine field imo
hello, is there any fix for the blueprint lines being crooked all the time, and i don't mean using straighten wires manually, that's what i'm already doing
show a picture of your crooked lines
I have to share something with you guys because I just feel like I struck gold
debug inspector thing is a godsend
my god
The only time I actually had issues with BP structures was when i was fairly new to UE. I've not had any issues with them for years. Things not saving correctly before I closed out were a big cause. This expands to not fixing errors caused by changes to the structure before you close out of the editor.
Kinda like the bad BP bug where if you load a map that has BP with a compile error, the BP's will go to 0,0,0. This can also extend to other variables in the BP causing them to return to the default value.
Yea it is very useful. Granted it can get a little laggy at times.
imagine if you slip one day, that is still a mine field by my definition
I still see unknown structure error experienced by people in 5.4
losing hope that Epic will ever fix it tbh
being this useful I wouldn't even mind if it used comic sans as font
Is this a newer feature?
Damn I'd love to have that
No, it's been in since forever.
We're in 4.25 still
just put a breakpoint, hover over any array
and watch the magic happen
I instantly can see what I'm looking for. It's a gamechanger for me, I have ADHD and I find it super difficult to keep a few things in my mind at the same time so sometimes it's hard to imagine the hierarchy of the objects, now I can just browse through them
I'm so excited
hovering over an array just shows a tooltip with all the items listed in text
So you need to activate it?
Or I guess it's just not in the older version
I'm used to having all that stuff in C++, debuggin blueprints can be really annoying sometimes
With stuff being optimized out as well if you use a lot of pure nodes
You should be able to open up the array to see the individual items. If they are objects, you can normally expand them further to see the vars that make them up.
No I can't. I'm in 4.25
Hovering just displays a text tooltip with all the elements listed
Show a screenshot.
isn't it just because you have a boring array with just text elements? 😄
mine holds widgets that hold data assets and other variables so it'll always have more stuff
They're child actors
oh... Does it show the break down on a single object ref?
Nope! The good old days lol
looking forward to a fresh project in up to date software ^^
just press update engine version and pray for the best
what can go wrong
man up
on a serious note, how can I compare if there's a value present in an array, and if there's 2 of those in you can't add that one any more?
You can do a contains but to find if there's multiple, you'd have to loop through and check each entry.
hmm
or maybe use a different structure than array
where I'd hold all the toppings and the value 0-2
Yea, you could use a map where the key is the topping and the value is the amount. If there's no entry then there's no toppings of that type. If there is, you can check the value.
yeah
I didn't realise they are this complicated 😄
can you actually set a value in a map? well not set, update it
I'm looking at https://docs.unrealengine.com/4.27/en-US/ProgrammingAndScripting/Blueprints/UserGuide/Maps/MapNodes/ and nothing really speaks to me
ha!
We might go to 4.27 when we have some time, but probably never to 5
trust me nothing can go wrong, just make sure you do the engine upgrade at 4pm on friday

Yea, just add to the map using an existing key. It just updates the value.
the first one is a bit bizarre
is the first record in map always empty? because I'm sure I'm not adding anything to it
I love maps now
make sure the default value is empty. Anything in there will still be there when you play.
Yea, its how default values work. 🙂
The same as an array, if you set the default value to have 10 elements, those 10 elements will still be there when you start playing. (assuming you don't clear them)
hmm
yeah that explains it
@dark drum how can you actually pull a key as value from a map?
ok it might be a very stupid question but I still don't quite understand this. when I try to "get" something from the map it's totally possible, but I can't link it with the map itself
You don't use Get, you use Find and then break struct
what struct though
the outputs for "FIND" are a value for the map record and a bool
the bool is if it has found it
it's always a copy
yes, but that still doesn't give me the juicy insides that I need that are held in a key
If you have keys that are numbers like 0-10 then you Find[0] and get Value at that index. It's almost like with arrays. If you need more advanced map then you can also use something else than numbers for the keys.
what?
for this map my key is a dataasset, I need to access parts of it
if you can find the value, you already have the key
My guess is you have to turn this around and the key should be number and not data asset.
Unless you want it that way on purpose
I want it that way on purpose, I'm counting occurences
data asset / integer
when there's none in the map - int+1, when there's one already in int+1, if int==2 disallow adding more of the same key
Ok if you are counting occurences why do you need to access what is in the key...
because key, the data asset holds important info like details about static mesh that I'd like to pull out later on
that is like trying to have cake and eat it, separate the concerns
well I could technically pull it out from elsewhere
just wanted to know if I can do it here
and as Olsson said if you trying to find the value of key, you already have key
that's true, it's more of a "wow maps are weird, where's the output socket" kind of thing
it's fine though my question is answered 😄 thanks guys
Hi, I’m trying to make a barrier trap by spawning a sphere collision, the player is supposed to be inside of the sphere collision and is supposed to not be able to leave , but when the collision spawn he’s on the top of it and not inside how can I solve it ?
you cant have multiple of the same keys
I know, I'm just increasing the int when another one of that type is detected
Alright, I have two NPC. One Guard NPC is a child of Base NPC. I thus also have two controllers. Guard controller is child of base NPC controller.
Within the Guard AI controller, I override 1 function : the "Switch to random travel" function. For now this is pretty much the only difference between the two AIC: They simply call a different behavior tree.
Yet in one of my tasks, despite casting to AIC_Guard_NPC, when I call the function, from the casted AIC_Guard_NPC, I still get the AIC_NPC_Base of the function. Which end up sending the guard on the wrong Behavior tree. How can I make sure it use the correct version of the function?
hey all, wanted to render my game at a non native resolution of 860x600, how can i do this with the camera and stretch it to fit the screen without black bars?
is this possible with camera or should i make a 2d scene capture and widget?
Hey, I want to merge all my child Actors into one Actor, holding all Static meshes -> basically a new Actor with all the static Meshes of the previous Actors. The problem is, that the Parent Actor has multiple Blueprint Actors with no logic what so ever. I would like to do this in BP because I want to automate the process.
Thx in advance
Uncheck "Constrain Aspect Ratio" on the camera.
I am tracking the Velocity of my characters capsule component while a climb bool is true, and then when its set to false I am trying to transfer that velocity to launch the character in that direction. but Its not going in the correct directions, anyone know what I need to do
Does it work if you multiply the velocity by like 1000 or 10000?
No tried that yet. it dose launch but its going either left or right when Im pulling it up or down.
I would maybe to a draw debug arrow in your first function right before the return. Make sure the velocity is setting correctly up or down.
Hey everyone, i was wondering if anyone had any good links to videos or guides on how to learn/achieve directional sword combat?
I know this is probably a long shot but I'm working on a bug I can't for the life of me figure out. (been at it for a few weeks now). I've setup a system that allows the camera to be moved/adjusted (lerp changes the spring arm, offset, fov etc..) as part of this, you can denote preset values that can be set at runtime depending on various events.
Now in the editor everything works fine but in a build, one of the presets for some reason is off. (Printed values match what they should be) Now just to make it even weirder, if I save, exit to the menu (not close out of the game) and load the save, the camera change works as it should.
The image shows how it looks the first time in a build (top) and how it looks in the editor (bottom) or if I reload the save.
Would anyone have any suggestions as to what might be causing the discrepancy?
Hello,
I have an issue making an interaction system for everything the player can interact with in the game. For now the only action I am trying to have is pickup a weapon, and opening a door. So I made an Interface shared by both the Door Blueprint and the WeaponPickup blueprint. I can Pickup a weapon, but the door interact implemented function won't work. Is this because the Interact function is expecting a Character argument ? This argument is used only when the player is picking a weapon so I can spawn it in his hands.
your checking if one does implement, but using get 0, not the one that implements it
not sure if thats your problem, but it looks weird that way
Interfaces for interaction. Much sad. 😦
Have you considered maybe an evil cleansing ritual? I think you have gremlins.
In all seriousness though. Does it only happen in packaged, or also Standalone?
how would you handle this ? For me Interactable is a shared behavior so Interfaces make sense
Composition also allows shared behavior. Much better state control and a lot less repeating of code.
I think I'll try anything at this point lol. And that's a good question, I've not actually tried standalone. (just editor and build) I'll quickly check now.
Yes, it does it in standalone as well. It also fixes itself by reloading the save in standalone.
When you get it. Do you start on this map like that, or are you travelling from like a main menu map to here?
From a menu map to the main level.
Actually, its does it in the editor if there's no saved data. o.O
Can you get it in PIE by doing the same MainMenu to MainMap thing?
Assumed it was an initialization area. Just wanted to narrow it down. 😄 Since PIE inits on a map are slightly different than travels.
That's making me question which one is actually the bugged one haha.
@maiden wadi Thanks for you're input, its definitely down to there no being a save so the one I thought was bugged might actually be the right one haha. Atleast I can get some more info now to try and actually squash the bug.
Nice. 😄 KEEL IT
hello, when i do a "Open source" on a media player. is there a way to get a feedback once the source is loaded ?
Does the world partition system not work with actors that are spawned at runtime?
What kind of media is it? They're usually pretty instant.
i have 36 files i would like to "load" to play int instantly, later. when i just load + play on the same frame, sometimes it does not play (i get a "false" on the bool )
simple video files
That's odd. I've never had that issue. But I'd also recommend the Bink player. It has identical quality, is a lot more platform agnostic, and it consumes about 20% of the resources of other media players.
ho, good to know. thx,
in my case, i want to assign the video to different movings screen in the game. so i want to "pool" my video, to just asign and play on the screen (custom shader) later. if you have a good idea how to do it, i'm interested
@maiden wadi I figured out the issue. At some point a relative location of the spring arm was changed from 0,0,0 on the character placed in the level. Whilst we don't use the relative location of the spring arm any more, we still set it when we load saved data. In summary, I had to clear the relative location of the spring arm.
I can't believe I've wasted some much time trying to fix this one. 😭
Almost not satisfying to fix it when its like that lol
One of my blueprint classes has simply vanished from the editor... It's there in my file explorer, it's referenced by other assets, but when I select "browse to asset in content browser" nothing is selected; it's not visible in the appropriate content browser folder, and it doesn't show up in any searches in the editor.
I've tried fixing up redirectors and rebuilding my project, neither of which fixed the issue. I haven't changed engine versions since I last manipulated this asset
thanks a lot
now its does work
?
Do you have a filter applied on the content browser?
Only a "show redirectors" filter - nothing else
More probing in file explorer - "resave all" in the content browser updates the "last modified' date in file explorer for every asset except the invisible one
Hey I have a question
I have 2 widget blueprints
- Main_menu
2 Game_menu
In the main_menu I have an integer
And I want to get ref on him in the game_menu
How to do that?
in the main_menu blueprint make sure that the little eye next to the variable is open; click on it if it isn't (you may need to mouse over the variable to see it)
Is the filter currently enabled? If so the blueprint won't show up.
every other blueprint in my project shows up just fine, and disabling the filter doesn't fix the problem
Then it sounds like the blueprint is corrupt to me.
If you have a backup to restore from it should be fine.
im having an issues where i have two AI with the same behavior tree and when they see me it sets the canseeplayer? to true and they chase me, but when i kill just one of them the other AI returns to to going to the first intended area as if the bool was never set to true
NOT two AI its the same AI placed twice with Same Behavior tree
Play In Editor, trigger that again but this time pause the game and look at the broken AI's behavior tree. You should be seeing the flow of logic and be able to identify where it went off track by stepping back through the BT execution chain to see what happened.
why when I click on a variable it does not show me its settings in the right?
they were showing yesterday but now they do not and I can't put a default value to a variable I need
Compile first then you can set default variable values.
it is compiled
Can you just not see the side panel at all?
the details one
Can you see that?
I can't
or if its hidden go to Windows > Layout, Load Layout
Yeah those windows can sometimes get closed by accident
there's also Windows - Details for that specific window
i'm running 5.3 so unsure what happened
I do not understand. I have the Switch to random travel that I override in AIC_Guard_NPC.
When I try to call that function from another blueprint (that I cast into a AIC_Guard_NPC) it brings the function from the parent rather than the child. When I try to bring the test function, it works.
different targets
You have defined a function in AIC_NPC_Base named "SwitchToRandomTravel". AIC_Guard_NPC likely inherits from AIC_NPC_Base and so it also has this function. But when you run the function it will reference the original implementor class. It will still run the AIC_Guard_NPC's version if this is actually a AIC_Guard_NPC .
which is evidenced by the targets shown on each function call
How can I tell it to use the overriden version instead?
You don't need to.
"It will still run the AIC_Guard_NPC's version if this is actually a AIC_Guard_NPC ."
hey guys can u do a soft object reference of a structure ?
No. A structure isn't an object. And it doesn't make sense to do that. What is your use case?
Am blind, thank you. I thought this was the issue in my logic, but it apparently wasn't. Thus I had another issue and I solved it.
thx i have a problem, i have an interaction in my game that require me to set at least 5 to 10 anim montage at the same time cause i can swap animation with input and with the current way im doing thing i set a ton of anim montage variable in a function to make it super clear and modular cause i like the ui that way but it make load and set like 40 anim montage variable and im trying to resolve this loading/set time by dividing those anim montage to set per step in the interaction but i want to keep it modular and clear and i also have A TON of animation variable as i said and would be cool* to put them in structure or something cause thats anoying to manage
i was thinking that if its not because of the function having to much variable set in one go that it might be a problem of hard ref and loading thing but i m new to this so i was thinking that if i seperate all those variable set it would be good but i would try to make those soft ref so its even better
trying to add a sort of bunny hopping but my characters max speed is being reset if falling from a higher height before touching the floor, not sure what to do
but tbf my problem is probably not a problem a memory and i dont have to use soft ref its just to much to execute that fast (those 40 variable set variable in a weird way with branch and structure check too) i tried to make it super clear and modular but there is to much to process for it to be fast enought)
i found a solution with my bs dw x) no need for soft ref setup, and i will manage all those variable
whats the second timer all about ?
you don't even have an event hooked up to it
What does the integer represent?
i would put the widget refs in the HUD, where you can get the ref and probably get the variable
I've put a camera actor in a level, and I want to use it to view all the level from top. I've tried this code on the Player Controller, but it doesn't work. How can I set the camera to be used in the level? Thanks!
you're setting the view target to be the player camera manager
why not set it to be that cameraactor
Because I don't know how to do it.
Get a reference to the camera and plug it in
You can use Get All Actors of class for that if you want
Later on if you add more cameras you can add actor tags to filter out the exact one you want
Anyone have a good reference/tut for creating blueprints that have exposed parameters for a material instance that is made up of material layers?
I have a material that uses dirt & edge-wear material layers, but I want to be able to control their parameters per-instance of a blueprint. Can't seem to get it working using Create Dynamic Material Instance as it appears to not recognize the layer parameters, even using Parameter Info
Show what you have atm.
I recall there being a material instance bug in the construction script maybe.
Hmm, do you think it was fixed in an update? I'm still on 5.3
I dunno. It's a vague memory. But is that all you're doing, setting MI properties in the construction script?
why cant divide like in the tutroial on the left?
Cause the tutorial is from the stone ages. Right click the bottom vector pin and convert it to float.
its the only tutorial that explain it 😦
but ty
Explains what?
Iam doing a 3d duel faighting game and I want to make camera between 2 character
I was searching for 2 weeks now for a solution
True Fighting Game Engine: https://www.unrealengine.com/marketplace/en-US/product/6784e2923b9f42408b270072c06354cd
In this tutorial we are going to align the side-view camera in our fighting game in the proper way, so we always see both of fighters on our screen. We are going to calculate the centered position of the camera, and we will also mo...
I don't use tutorials. I'd just set the two pawns somewhere like the GameState and make the camera manager's camera update manage camera's view location.
I'm working on a tank system that doesnt use vehicle physics, how would i have the mesh snap to the ground so it doesnt look weird when going up terrain?
now that I can pick up the flashlight in my hand how do I make it so that when I light it up my hand stays still in a direction and the light can be seen getting out of the flashlight
Why are the added children not showing?
Probably need to add them to viewport too? 🤷♂️
Tryed that, its a Horizontal list, already on screen~
its clearing and creating buttons, again and again but not adding to the list visually~
and no erro reports either~
Oh list entry?
Not the right node I think
It’s add item or add entry or such, can’t rmbr off the top of my head
Not compatible~
@dawn gazelle Thanks man I watched the video about blueprint communications and I get it now, I was able to fix the problem I had, it wasn't as bad as I thought it would be
The SlotList is a Horizontal Box so it has to be a "Add Child to Horizontal box" or "add Child"
both give the same result, item is created but not showing in the game~
is it firing on construct? maybe the Player>inventory isn't loaded yet
slap a Delay before the loop to see if that helps
That's really good. A lot of people come through here with struggles similar to yours and it's because they're lacking that fundamental information. Good on ya for going through it 😄
Its firing, that I made sure with different Print strings (one that still there)
Adding a delay (1 frame) makes the event fire on a loop since "update"(an event) calls it everytime it focus again on an non visible button that is cleared and created and cleared~
givin' errors on the process~
Maybe the container outside of Horizontal box cant get bigger?
If you are trying to do this in the widget editor , I dont think it can access the Player unless you are playing the game
Problem persists~
Notice that the buttons have been created but not showing bellow "inventory"
the one on the left was done using character class it self , the one on the right I made a new actor.
the one on the left was capable of aligning camera between 2 players for a while until they get too far from each other and then only player one do appear . there is no limit to how much they can go further from each other. but its working. the other one got it from chatgpt because I cant find any resources on how to do this. but its not following or doing anything.
https://www.youtube.com/watch?v=TuIDlTssCoc this is the guy I followed to make the one on the left but he does not go further than that.
True Fighting Game Engine: https://www.unrealengine.com/marketplace/en-US/product/6784e2923b9f42408b270072c06354cd
In this tutorial we are going to align the side-view camera in our fighting game in the proper way, so we always see both of fighters on our screen. We are going to calculate the centered position of the camera, and we will also mo...
The player is the owner of the inventory, and it is referenced regardles~
I can move around the inventory too, but is not showing the buttons that visually show that scrolling~
Wrap your Horizontal Box in a Scroll Box
looks like too much radiation...
its a VHS effect, unrelated 😅
Ok so it’s not a list entry then?
You may want to use one instead
no, its a Horizontal box in a Canvas pannel~
should I move the images there too?
@lofty rapids xbox controller user here, can you provide any tips on getting it working... not sure if it's related to my char blueprint , UE or windows.. but it only notifies me the controller is connected but i get no inputs detected in binding the IMC
So it says it connected but no events are firing? Also is it working outside unreal?
@old bough
yea it's working in most things but i am very perplexed still new to UE
it's an xbox elite gen 1 thru USB which i would think is a functionally equivalent to an xbox one/360 connected the same way
no presses are recognised
this still pops up as soon as i plug it in
And is the event firing ?
Try just a hard coded button event see if that fires off
@old bough
Hi, I have a beginner question on how to expose properties without events, just... change them in the editor with the results visible without any events?
I think the graphic should explain how I want to set values in editor/viewport with visual feedback.
the jump and movement work with KB
i am just using the standard 3p project
Try the hard coded button event see if it's your setup
How can I disable the emissive texture when I turn the lights off?
Hey, sorry for the super late reply;
I have two event graphs in my actor im trying to implment the functions from the interface in
and I tried to create the custom event from the interface in the 2nd event graph I made, but I can't seem to do so?
when i double click the function in the interface menu on the left, it just jumsp to the first event graph and creates the custom event there
I know this isn't a big deal since it'll function the same, I just was trying to have some organization in my blueprints
is there any way to tell which widget this is?