#blueprint
402296 messages Β· Page 866 of 403
I don't believe that can be resolved in blueprint
have you tried #graphics
(at risk of being meme'd)
Is anyone aware of a way to add/remove/modify layers of a material in Blueprints?
if this is UE5 you're better off asking in the UE5 section. as far as I know for UE4, no
you can use static bools in either case on a dynamic material instance
but that's as far as it goes
@thorn trellis Happy to report that the I improved the interaction system by setting the input to the actor and not to the player, this way each actor references the player and no the player referencing multiple actors breaking the system. even reduced the trace ticks by using a Set timer by event in 0.1 and using Get valid nodes to prevent it from firing if invalid or conditions are false...
The Player still stops on its tracks tho... I will keep working with the collision settings, I'm that must be the issue here :/
I will, thanks !
be sure to remove it from here then
My post got buried so quick, can you help me out over there?
it's against the rules to ping people like this just FYI. I'll take a look but please read the #rules
Oh, sorry about that
Is there some weird no no I don't know about when it comes to handling instanced meshes for replication
probably a good question for #multiplayer
Is there a way to access the OnPossessed event of an actor component's owner?
Would it make sense to call something on the actor component's BeginPlay instead and just activate or create the component in the owner in its OnPossessed event?
you need to access it from the component when the actor is possessed?
Yes
would it make sense, in this case, to use an event dispatcher that's called in the actor owner?
part of your problem might be that the component may or may not be present on the actor, and most methods may want you to ensure that it is present
Hello there. Can anyone help me about the problem I have. I want to simulate physics but nothing happens. Capsule component is deleting successfully but simulation doesnt work. π¦
Or just call a custom event on the actor component during the OnPossessed event?
the owner's OnPossessedEvent ^
there's a node called "set all bodies simulate physics". Try that first and see
you could. that would work well if the component exists on the character initially and won't ever be removed from it
I tryied what u said π I have a crash now π
oh, well whoops
I think that the crash isn't directly related, maybe
I use it just like this and it ragdolls as expected, so my assumption is that the other node isn't the correct one
UE5 bug? π€
Alright, I tried again witout crash. Nothing happen again
what if you try just disabling the capsule component's collision instead of destroying it?
I feel like that may be contributing here
this isn't better than setting up an event dispatcher in the component, unless you're spawning the component OnPossessed
Does anyone know how I can make my character rotate in the direction i am firing or aiming? or any videos I can follow :)? Gif: https://gyazo.com/34c29309a750565b8027512c46fbf0b4 , https://gyazo.com/40250d5c30265da4b207fbc3d98c9948
hey, im kinda new to unreal. is there a way to do "reusable" blueprint. like for exmaple having a blueprint to handle health and be able to add it to any object
try an actor component, thatβs probably what youβre looking for
does anyone have a tutorial or idea as to how to make the player automatically move up onto a platform if they just miss it by a hair?
almost like a saftey net type thing
short answer: yes
long answer: blueprint is programming, and programming is made to be reusable. in your case, you could have something like a component control the health, but it could also be achieved by other means
it all depends on your usecase
there isn't really any magic to this. some games where platforming is essential they extend it by adding ledge hangs, or in rare cases, individual extra invisible collision
but generally if you're testing it and you're missing a platform by a hair... extend the platform
gotcha, for the extra invisible collision, you mean extend the collider a bit?
it really depends on the context. I would never recommend invisible collisions if other options are available
anyone know why the engine would start crashing if you try printing large floats?
and yes, i have confirmed it is the act of printing them that crashes it
connect a single print or set text on a text render that transforms just that float
and it crashes
try asking in #cpp perhaps if you have a crash log handy and are willing to dive into the code?
it's a blueprints only project
otherwise this isn't really a place to help with that
the alternative would be filing a bug report
but again, not knowing the circumstance it's hard to say what's happening
hmm what do i have to install again for a full stack?
Debugging symbols
right, debugging symbols
tnx
and it'll work without any setting up even for bp projects?
i have visual studio if that's needed
aight, cheers
That's a component. Good to start thinking like that already.
I'll echo what @faint pasture said. I'll also want to highlight creating Blueprint Function Libraries for common code that you write. If it is generic enough, you can make it a library and just use it across projects.
Why have I only just started using BP interfaces they're so damn useful
Hi guys, does anyone know how to view a specific AI behavior tree? like I have 6 characters for an example but i want to view the 4th character behavior tree
Hello everyone. I want to be able to make some kind of blood painting on a skeletal mesh. https://www.youtube.com/watch?v=gyAFtpEpBnk&list=PLIgAwiyzX4NA4476ZvU9Xl0EH82YPrgur Found this way, but it's very expensive. Is there any way to get the skeletal mesh vertex position, or maybe you have ideas how I can make it. Want to use vertex position in order to add mesh to it.
no because blueprint library functions are static
best bet would be to just have a parameter for whatever you need to pass in
you cant throw a compile time error for runtime code. for runtime, im actually not entirely sure. you can UE_LOG(LogMyThing, Fatal, TEXT("Empty Param")) which will crash the game, or Error instead of Fatal to make it red in the log window but continue running the game
oh crap im sorry, i didnt realise this was blueprint channel
blueprint compilation just makes sure the logic makes sense and that your blueprints are constructed properly, it doesnt do any runtime checks
Guys, what solution do you think is better if I need to make separate slots for weapons and separately for ordinary items. Use one array and add weapons to the first and second slots, and the rest of the items to the rest. Or create two arrays for weapons and items? But then there will be problems of dropping items and removing it from the array you need
I have an entire personal project without any interfaces. Correct class hierarchy and implementations are better than interfaces.
Do you use casts instead then? I think I remember someone saying casts are bad because instead of just referencing the part of that class you need it loads everything in the class so if you keep using them it will eventually impact performance.
If its a small project I'm sure it's fine but it's also best to put it into practice
I use casts all of the time. Whoever told you that doesn't understand what they were saying. There is no such thing as "referencing part of a class".
Super anal that's a new one lmao
With interfaces you just pull a function or multiple depending on how many you have but with a cast you're referencing the entire class
Pretty sure the Unreal devs say themselves not to use casts somewhere
If they are so against it why did they add it lmao
Interfaces are fine in the specific use case that they're meant for. They are not a replacement to casting or correct framework.
I can't think of something a cast can do that an interface can't?
Not cause me a fucking headache with accessing data because I have to add extra shit I don't need.
It's really not.
I guess its fine if you mix but idk why you'd have an entite project with solely casts
Anyway I gtg back to work you guys have a good debate
Just gonna pitch in here and say that interfaces are great, I love em. Use em all the time. But using them as a replacement for casts is just straight up misunderstanding the purpose of them
To give you some background, the interface love came about because some twit wrote on Reddit that casting is a terrible demon. This is because they didn't understand how Unreal instantiates and holds CDO objects in memory relating to assets and such.
They were whining because their memory footprint was absolutely massive and they got around it by reworking their project using interfaces.
Which is doable. But they got lucky. Interfaces don't solve the problem of requiring a correct framework.
Honestly interfaces make it hard to follow how objects are connected
Interfaces are meant for interacting with differing class structures in similar ways. If you have an NPC base, and 6 different children, and you're interfacing all six of those children to do the same thing, you're doing it wrong.
Do you, anywhere in your project have an interface function that you call to get a reference to an object?
You can get the same data with the camera manager. You can also get the same camera just casting to your player character class. Which is always loaded, making interfacing pointless there.
Fair. It'll save you a single node.
I couldn't live with 20% slower runtime performance and that kind of abstraction. Would be difficult to follow. π€·ββοΈ
OK, just made a few tests myself. BTW, I had no idea that you can simply paste asset path the way you did, at first I didn't know how to put Widget Animation reference in the Data Table field. π As in your case, it's working in the editor, but not in the build. My best guess is that Widget Animation soft references simply can't be passed this way, especially considering the fact that they cannot be added to the editor fields, as they don't "exist" as content browser assets.
What kind of confirms my suspicion is that if I attempt to load a soft reference for UMovieSceneSequence (which is a direct parent of UWidgetAnimation) it gets loaded both in the editor and in the build. The difference between those two classes is that I can add for example a level sequence from the asset browser as the UMovieSceneSequence
type soft reference, without any need for path-pasting workaround, as in case of Widget Animation.
Does anyone know how I can make my character rotate in the direction i am firing or aiming? or any videos I can follow :)? Gif: https://gyazo.com/34c29309a750565b8027512c46fbf0b4 , https://gyazo.com/40250d5c30265da4b207fbc3d98c9948
hi, how can i get all maps name on persistent level?
Get forward vector of camera instead of pawn
You want to get the names of all maps/levels you have in your game?
yep
I'm afraid c ++ is requires :/
but I hope I'm wrong
I think you need C++ for that. In BP you can get the level name only if you're in that level.
@gentle urchin Thank you for telling me about the rules But as a member how can I showcase my update then?
#work-in-progress
Thanks, buddy π
Guys how can I change the VehicleMovement component settings on the fly ?
I need to override the vehicle mesh Z axis inertia and set different wheel class for about 5 seconds when the overlap is true
I want to create an effect when vehicle runs over the oil leak stain and losses control or steering becomes really skiddy
To do that I need to: 1st reduce the Z inertia, so the car becomes much more unstable, 2nd I need to alter the rear wheels wheel class and reduce the LatStiffValue and LatStiffMaxLoad
but I don't know how to cast since there is no such function available
Which bp would that be in, my character bp :)?
Which bp would that be in, my character bp :)? - most probably
GetActorForwardVector
Ty :) because I started the project from scratch I generally have no clue where it will be.. do I use GetActorForwardVector whenever Im shooting or aiming?
Give it the player camera manager: GetPlayerCameraManager
Aiming. Shooting happens afterwards
https://gyazo.com/469dd6bef6d81fc358e725ae9b0be05a and were would this plug in?
Alright :) Ill try
Well probably both. You can shoot wothout aiming
GetCameraRotation->GetXVector
Wherever you need it
Wait. Does camera manager's rotation follow the camera?
I guess you can GetPlayerCameraManaget that way from several places
Yes
It does what you said
Oh. Neat shortcut. Will have to remember that one.
@jaunty summit Sorry if this sounds completely stupid.. but I'm confused where I plug it? this is my simple aiming function: https://gyazo.com/e60fd23c6bf9953fa8dfcb568e6ae586 , and this is my character components https://gyazo.com/307751580f2ba90cb5085c06b7ceac04
Guys can somebody help me?
Guys how can I change the VehicleMovement component settings on the fly ?
I need to override the vehicle mesh Z axis inertia and set different wheel class for about 5 seconds when the overlap is true
I want to create an effect when vehicle runs over the oil leak stain and losses control or steering becomes really skiddy
To do that I need to: 1st reduce the Z inertia, so the car becomes much more unstable, 2nd I need to alter the rear wheels wheel class and reduce the LatStiffValue and LatStiffMaxLoad
but I don't know how to cast since there is no such function available
the activator in form of actor will be placed / spawned on map
and will cast to custom event
Hey guys, is there a way to make "reusable compartmentalised" blueprints? Let's say I want to make my player character, but I want specific functionality that would be mostly consistent across any game I make in the future. So I want specific interactions and abilities by default, which I can extend or change for games depending on what kind they are, but for all of them I'd like to keep a template. Is there a way simple way I can make this kind of template blueprint? I keep thinking that because of how we have many cross-blueprint functions and stuff, it would be difficult since a new game does not have those other blueprints being listened to or referenced, so I'm unsure how to go about it.
@trim matrix I see. Yeah in the project I was working on (complete now), I used a few event dispatchers and that seems to be a good way to keep things reusable. Could you give me an example of "components in plugins"? Since I'm not writing C++ and sticking to BPs, I haven't really touched plugins in that sense so don't know how it would work in a project. I've mostly seen them as things I can add to my project rather than something I'd make for my own use.
As I'm learning different things, I'd like to be able to keep whatever I learn as the main template from which I'd create other projects. Right now the problem I face is that for a new project, I'd have to once again recreate whatever I learned already instead of just pulling in what I made from a tutorial earlier. A long time ago when I was learning C++, I quickly figured out how to make those things I learned in class as reusable as possible, so later on towards the end when there was some big project, all I had to do was copy paste what I had written months ago (since I knew what it did) and it all nicely plugged in. Poor-man's #include library lol. Yea library is a good word. But these are just text files and stuff in unreal is usually a bunch of files, whole projects for just one tutorial and I'm trying to wrap my head around how to make those "libraries".
you don't need any C++ to make plugins
you can just put BP's in a plugin and share it between projects
just look up a basic tutorial on plugins
(go to plugins section in unreal and find option to create one, then just put files there)
So when you make a plugin, you're trying to write logic which is as self-contained as possible, a decent example of this would be a Hit Marker widget which is completely in charge of destroying itself
quick question-
so the default character blueprint controller can be a little bit annoying.... Like rotating the mesh independently from the capsule, etc. etc.
Would it make sense to just... make my own character by pushing a capsule with a mesh inside around?
or is that kinda stuff doomed from the start and should be done via c++ ?
you'll lose all sorts of expected functionality by making your own
well, that's kinda part of my question - what stuff can the default character controller do that i want besides... well- walking and jumping predictably?
just toy around with OrientRotationtoMovement and UseControlRotation nodes in the player controller
there are a few other settings there, and on the player character
sure, i did that - but it all feels a little bit like i'm constantly fighting against the controller...
Like with OrientRotationMovement - there's no easy way to make it smooth - it's always snap instant.
So since i want my character to turn smoothly, i gotta ignore OrientRotationMovement and instead manually set the world rotation with a lerp - and then activate it
and that of course gives the problem - if i do an action that overrides that turn - it still gets activated, so i gotta build a bunch of redudencies in order to stop that from happening...
know what i mean?
well if your movement changes are instant, then rotation changes need to be too
and if you want your rotation changes to be gradual, you need to make your movement changes gradual too
yeah, the movement changes are gradual
then use your Lerp Rotator and you're done
basically - i draw my sword and enter "combat stance" - where the character always looks towards where the camera is looking.
So trying to scuff together my own character controller using blueprints is probably a bad idea you'd say?
for what you're trying to do, yeah
are plugins only able to be made using C++?
I just told you no
alright fair enough, thanks 
whether or not to use characters is a big decision that has lots of implications
huh?
ok but where did you tell me no?
Oh, they just didn't tag you. Just look up, π
Yea the tag from Lorash skipped focus over Panther's message
I'm not sure what you're trying to do but it smells really bad
I'm looking for plugin tutorials but they all seem to be geared towards C++. If anyone knows of some better tutorials let me know or if there are better more specific keywords because lord knows how algorithms are dealing with searches these days, can't find anything exact anymore
yeeeah, i figured once i used "add force" on a capsule and it bounced off the ground once more every time i jumped 
what are you trying to archive?
I would stay far far away from physics unless you're counting on nondeterministic outputs
asking me?
Ok, let's see. I have made a few plugins, mostly c++ but maybe I can see if I can help you, are you looking for a way to extend the editor using blueprints? Perhaps Blutility is the keyword you may be looking for, are you looking to make a Plugin that contains blueprints, that you can share between your projects? Then you can simply use the Wizard from the 'Create New Plugin' for example. It will really depend on what you are trying to achieve.
Basically i'm following CE's advice of just rewriting my entire project from scratch with the new knowledge i have learned making this.
And since i'm starting new, i thought to myself "welp, might aswell try out with stuff that annoyed me"
One thing is
If i have my sword sheathed, i want the character to turn in the walk direction.
If i have my sword drawn - i want my character to always look in the direction of the camera.
And of course i don't want the transition to be instant - i want it to be smooth - but the epic character controller doesn't provide that feature, so i have to kinda scuff around and do it via lerp and set world rotation.
i dont think that you have to lerp
iirc the CMC has a turn rate setting
if you set a new control rotation, it won't snap there
it does, but the OrientRotationToCharacterMovement bool is just a bool...
And if you activate it, it instantly snaps towards the look direction of your camera
Thanks. No not extending the editor, although that may come in handy I'm sure later on.
I want to make a collection of things that I can reuse in projects. I don't know if plugins is the way to do it (which is why I'm asking here) but if so, then that's it. For example, in my previous project, which was based on the first person template, I added many abilities to the character, e.g. different modes of crouching, camera shake when walking, jumping or running, sounds, perspective change. But this character has no body and I want to now make a proper first person character, properly rigged and animated etc. Ideally I don't want to re-do all that work earlier that added all the functionality. Especially considering how different the FPP template is, where it's geared towards the traditional "half body" first person approach which doesn't work nice the moment your game has reflections. Things are getting messy just thinking about how to tackle this lol.
Another example is if I want to reuse my day night cycle which was made with help from many here here including Ben. I'd like to be able to just insert it into any new project without having to worry about rewriting or doing a lot of complicated stuff beyond reason. Now of course part of the problem comes where in the previous project, it was all made according to the project and without much thought of reusability.
this is where having VS installed is handy
ok, then you only have to lerp when you switch the state tho
you can check what bOrientRotationToCharacterMovement actually does in the code
and mimic that
i've never used c++ ever tho 
reading code is easier than writing code
(to some extent)
(don't @ me with non readable code)
mimic it as in - override that function and still use the character controller-
or mimic it as in - try my best to recreate the epic character controller from scratch just using blueprints?
1% of crashs are a miracle
99% my own code, which i dont need editor symbols for π
the latter. try to understand what it is doing and how you can make it work for you
not recreate the entire character controller
just see what the code using that bool does
and see if you can leverage it
you don't need to craft another wheel just because a spoke broke on the one you're using
(just replace the spoke)
well i would guess it probably takes the world rotation of my spring arm, and just... copies that onto the character controller 
considering the spring arm always rotates independently afaik
actually you rotate the character which rotates the camera
not the other way around
it doesn't? 
i thought the point of the spring arm was to ignore the whole parent-child stuff and just rotate by itself independently of everything to make camera rotation easier
so the spring arm just accesses the rotation of the root and rotates that?
both is possible
maybe
it's almost as if we're not here giving out bad advice
this would probably show it right?
WHO WOULD HAVE THUNK
i was not saying that 
wasn't implying it either, i'm actually following your advice from yesterday and re-creating my project, but now more neat 
I posted the code for that particular function not one day ago
in this channel
but it doesn't give you the whole picture
you really need to examine the rabbit hole
you mean this?
well first i gotta find a smol tutorial showing me how to get VS running with ue4
seems like epic made one
There's some stray pixel but dangit crop it yourself lemao
alright will do
Bright mode bonus for your enjoyment
What's this? I'm far into ue5
You're in UE5, so pretend nothing happens
Ok cool. Yeah take Panthers advice and just look on google how to make a content only plugin. basically you can then distribute your awesome blueprints, and any assets really as a plugin, and access them by showing Plugin Content in the Content Browser. the key is Content only Plugin.
it is actually super easy to make, if you use the Wizard from Epic, Create new Plugin, you choose Blueprint Plugin, migrate your blueprints into this new plugin ( the Plugins\PluginName\Resources folder ) and then copy your plugin where it needs to be used in the [MyProjectThatNeedsThisPlugin]\Plugins folder.
Thanks a lot! Will do some digging π
Would be good to know how seasoned devs do it (reuse previous stuff). Plugin approach as well?
I see, thanks
Hi all, I'm experiencing a strange issue which I can't track down - hoping you might be able to help...
Little flappy bird clone... when the game first starts the bird is positioned in the middle of the playspace. When the player clicks play, the bird is repositioned slightly to the left and down (when the instructions are displayed)... when I clicked play, the bird should remain where it is, but physics and player input is enabled.
What's happening is that the bird is being returned to the "start" postion in the middle of the screen. I've tried all manner of things to debug this and I can't seem to find where its happening.
I have two variables that are in use for these two positions, and to check that it was definitely re-using the "start" position, I set the X axis value of the vector to 80 so that the bird would be on the far right of the screen (rather than just appearing at 0,0,0 which might happen other other situations). Sure enough... the bird gets placed at the start vector where X = 80 - yet I cannot find any code I have that would be causing this to occur?
The only thing affecting the birds positioning one these two stages is a Timeline I have in place which does the autoflight (up/down movement) - but the X value is passed in from one of the two variables based upon the current game state (Started / Get Ready / Playing / Game Over etc)
What's also interesting is that the Y position, which would typically always be zero gets a random value, I've seen -12 and -30 (plus floating points values etc)... this made me wonder if a collision was occuring with something... but I've added code to PRINT out collisions and nothings triggering that...
Little video example... any thoughts?
How do I make a component use the lifetime of another actor?
I need to spawn it in an actor which destroys itself but before it does that I wanna "assign" that component to a different actor so it won't get destroyed
without knowing much about the project, my first inclination would be to check your interface widgets. Maybe there is some interference there? What if you're passing some sort of relative coordinates instead of World?
its definitely using the value of the "start" variable, as its off to the far right with a value of 80 on the X
I have some Mixer Truck, which I don't want to convert into skeletal mesh because it's too much work and performance consuming. This truck is intended to be a obstacle, that has it's own collision and crosses the road, then turns and goes back like forever in a loop
I would update the Truck world position through event tick
What do you think ?
The other thing that is weird, is that it doesn't happen "every" time... some times it does appear in the correct position...
I'd consider using AI and navmesh for this
hmm, maybe try disabling blueprints./logic connected to everything else one by one? That's how I usually debug when nothing else works.
Yeah, been trying for a little while, and with the PRINT nodes... but everything seems ok... just randomly, its behaves oddly... almost as if its remembering an old value for the repositioning, but I have no idea how that could be occuring... its only called from the Start button being clicked, after that, the variables isn't used... its really odd...
OOOOOOOOOOOOHH! ~~
~~
Can a Hidden UMG widget still receive input? Maybe I'm clicking in the same place where the Play button was on the Get Ready screen... ?
Clicked elsewhere... made no difference, issue still occured π¦
try setting it to collapsed instead of hidden
damn
I'd consider using AI and navmesh for this - do you think it's gonna work with static ?
you'll have to make a pawn actor. but yes that pawn actor can have a static mesh
trying to create that via the PRINT nodes etc... just can't seem to find the "moment" where it changes its position on the X... thought it might be one last frame of action hitting the timeline after I'd called Stop but even if that was the case it would still be using the "get ready" position variable at that point..
print nodes are not a substitute for breakpoints
use breakpoints
pawn, not an actor ?
you will find the issue
a pawn is an actor
where would I put them in Blueprint? I've only ever used them in VS...
on any node
will give it a whirl... ta..
does this allow stepping through frame at a time? I was trying to find the value of the characters X position but it then appeared to be dead... as if the game carried on whilst I was looking at something in the breakpoint
it does. but you can hover over any pin and see values at each point as well
in your case I'd try and figure first what happens on begin play and the afterwards what happens on click
So I have a breakpoint on my function which is called when the game state changes to "Play" from "Get Ready"... that only has a couple of other nodes, the last being the one that enables the phyiscs... after I've stepped over that the game just runs, the player hits the floor and I can't step through anything else... I dont really want a break point on Tick do i?
I'm struggling to navigate around the engine between windows like this π¦
Thanks for validating! Now to decide if Iβm not too lazy to send something to epic about trying to fix it. I made a workaround without the soft references but they woulda been nicer to have.
@keen wedge I think you should just strip away everything and only leave your character spawning on game start (assuming this does not create the issue), so this will be a start point. You can then add very detailed PRINTs on every step of every other component, so that you know when a certain component starts. Then enable them one by one and you can track with the prints what is being activated and when. It's very ... unprofessional but it works almost always for these high level issues.
also if it helps, disable the general flow of the game so that it's just the player spawning and you don't have to worry about dying and all that stuff
I'm current "in" a break point... the character has moved across to the X=80 position on the screen, but when I select the actual component in the Blueprint its reporting an X value of -55 (like the PRINT nodes were)...
litererally now idea what I'm doing now π¦
Do you have any other ideas on implementing the player's position, different than what you have right now, some other approach? You can try doing that to figure out if it's the approach which is flawed or something else
I had an issue with my doors where the engine deals with it regularly 0-360 degrees, but then in the editor itself it only goes from 0-180 then flips into negative values. Lots of headaches with that
I cant see how the approach is flawed... the pawn is spawned at a specific position. The player clicks play, the pawn is moved to another specific position. The player clicks the screen (anywhere), physics is enabled, the scenery moves.. its not complicated as an approach etc.. ?
I don't mean what you're doing is wrong, I mean to say that there is something that is getting lost in translation between the what the implementation is and how the engine is dealing with it
like the doors issue I mentioned
usually things spawned in a place should stick there
That's what I cant seem to find...
all the values are greyed out when in the breakpoint mode... so I'm assuming those values aren't "current" etc...
sigh
so the next breakpoint should be on input?
this is a ballache
they are
just hover over them
to see their values
I added one to tick, but disabled it so I can enable it just before I step out of the other function I mentioned... then I step over... I didn't realise I could hover over a greyed out value... I will try that... but this seems to occur after three "step overs" on the Tick... there is no player input at that time (as I'm starting at the debugging)
why on tick
that's pointless
...as this happens without any player input, e.g. the game just ticks along, there were no other functions I could really add a breakpoint to which would be called?
input
you click
the player clicks the get ready screen... the code runs... the issue happens (sometimes/sometimes not)... the player doesn't have to be doing anything at that point...
that's a breakpointable function
yeah, but its not the right order.. the click has already happened to trigger the function that I've already added the breakpoint to (in the order of events etc)
its also only goes into it once, so its not like a double-click and repeating the same code
so if everything else works, and click in game works
that points to enabling physics being the issue
yeah, but when I drop a PRINT node (as I was before) straight after that, spewing out the players position, its correct, at -55 on the X...
this is really bizarre... not had anything like this before...
what if it's the camera that is shifting?
or the print is executing too early, before the change in position is actually registered
it doesn't print once in game it looks like
only pre game
as soon as the game starts the prints stop
so I don't think you have the full data
not sure I understand... if I throw a PRINT into Tick its prints constantly in game?
not in your video at least
the camera is part of the player bp - but the player's sprite isn't nested etc
I'm getting confused? sorry.. not sure what you mean?
after you start the game the ticks stop. you don't get printouts after that
so you're seeing old data
in the video
presumably you're ticking the wrong class
oic... that print output, in the video, that wasn't coming from Tick but another function that is stopped (called from the Timeline to do the autoflight stuff)
ok... so just doing the hover over a property to see its true value when greyed out thing...
three ticks after the game starts, the bird is moved to X=80... yet hovering over the value in the engine still says -55.. ?
if it's on the same node it will update as soon as you move from that node. so by the next node the value should be correct
yet in the viewpoint, its evident that it is X=80
I'm on the Tick node... so when I step over an entire frame has passed... its still reports -55...
incorrect
the entire execution has to pass through once for a frame to complete
and by virtue of function scope in programming languages, you cannot know a value of a function until you complete that function
...but it has...
show me a screenshot
of your code
x=0 would be the centre
not of your bird
oh, sorry thought you meant of the breakpoint data...
yes
was going to be the next screenshot
hovering over the property with the mouse... this is for the Bird sprite.. the only thing that I was moving with code...
okay that's not code
so if you're looking at it there those are going to be your default values
ok, I'll grab the blueprints... but shouldn't that -55 be showing -80 as its updated on screen etc?
those won't change
its getting a bit hard to follow... when this occurs I'm not "in" a function... so I'm not sure what pin you want me to hover over...
you are always "in" a function
ok.... so which one am I in?
honestly... I'm completely lost..
not trying to be difficult
beginplay at worst. going from there it could be tick, it could be anything
I don't know your code since you haven't shown your code
it's really not rocket surgery
Thats the last "function" that is called... the wires going up and out are just to PRINT nodes...
after the physics is enabled, I guess things would be in "tick"... but I'm not using tick for anything...
so those nodes are showing the correct value then?
what's the issue?
what would I hover over, the pin coming out of Bird before it goes into set simulate physics etc?
then look at the transform data?
you don't look at transform data. you can look at position change per tick after you enable physics
assuming your function runs on tick
I still don't know the full extent of your code
but if you follow Lorash's advice and look at the call stack, you can see which function you are in at any given moment
Ok, I'm happy to send you anything/everything, but I dont know what to send you...
You are both talking about things I am not familiar with, so its difficult for me to follow the instructions, which probably seem straight forward to yourselves etc... I'm not trying to be awkward... but I dont know where I'd even find the call stack in here...
yep
even if you forego the call stack, your breakpoints are in the event graph
windows > dev > callstack I believe
yep, first time I've used those in bp today...
right but you understand their purpose
yes...
so you must also understand that at any given time, while the game is running, some code is running
I do... but I guess what I was trying to put across was that it wasn't necessarily "my" code that was running... after the physics is enabled... nothing of mine is being triggered... what the enging is doing with the physics/collision or anything else, I'm not entirely privvy too...
well if you have setup a game where code is running, it will be your code that is running on top of all the other code
if it wasn't, you wouldn't have a game in the first place yes?
yes so every time there is a breakpoint, that will fill out with how the functions are called (stacked) in your game
ok...
So, after it leaves my function where I turn the physics on... my only other breakpoint at the moment is on Tick...
but I dont know where else to add those breakpoints to, especially if its stuff happening in "engine" and not "my" stuff etc..
engine stuff isn't shown
it's only your stuff
well it's your functions being shown. so I really hope that you do
I'm also loosing the mouse point when in breakpoint mode, so its a bit hard to navigate around
I meant the values on the right..
that's why I suggested putting a breakpoint on mouse click instead of on tick
its the class name...
ok
those are just the actor instances in your game
really there's nothing obscure about this
incorrect
π¦
so I need to create a new event somewhere else to detect the mouse click?
you mean you don't have that?
no..
so how do you play your game?
the widget responds to the click, fires an event...
the other code is bound to that event and responds
player controller is bound to the UI event(s)
that's all irrelevant
in this case, OnGetReadyClicked
space bar to flap
okay so space bar is flap
mouse to interact through the UI
breakpoint on spacebar then
no but you want data from in game
you don't want data from pre game
so if you add stuff on space bar you are going to get an accurate picture
whereas everythign prior to that is irrelevant
ok... but, I think whats going to happen is you're going to ask me to run the game, click the screen to "play", then press space... but by that point the issue will have already occured, as its happening once the screen is clicked...
so, if the issue occurs.... I'll find out that the sprite is at x=80 - but still wont know why.
so the point is that you now have two points to differentiate between. so you can try and find out what changes between those two
ok... I'll add that now
that's how you debug things
you could also try and add it once the game starts playing, after you click. e.g. inside the actor that has the bird
so now run the game, until the issue occrs and press space as quickly as I can when I see it happen
?
now that you have that breakpoint, you'll have a call stack of things that happened up until the point where that breakpoint happened
so this looks like you don't have anything active on tick running in the background. which means all the actions are happening during the transition. where is your camera located?
Just to check, did you want me to add a breakpoint on the BeginPlay event for the bird also? wondering if this is why there isn't much in that call stack.
The camera is in the same BP as the bird... BP_Bird.. has a camera component and the sprite component...
I'm just trying to give you pointers to where you could try that. I don't know your code. I don't have the entire picture. you'll have to do the thinking yourself
its only the sprite that is moved, relative to its owner..
so that would imply it's probably in this class you'll find the issue
if that is your assumption
I'm assuming that it would be in this class yeah, only because thats where I've added stuff to move the sprite, and during testing I changed the "Start" location variable to be positive 80 so that it would be more obvious than say just defaulting to zero, which is actually where the start location should be... being that it ends up back at 80 on the X, it feels like its still using/applying the value of that variable for some reason... but, the logic doesn't seem to show me where/how...
Ive tested for collisions and none are reported... although I still don't understand why, when it happens, the Y axis gets changed to different values also, as I do not change that at any point at all, its always left/set to zero in my code... which is what made me feel that maybe a collision was happening in the first place...
wait so you knew this all along. and now you're wondering why you're having an issue?
eh?
during testing I changed the "Start" location variable to be positive 80 so that it would be more obvious than say just defaulting to zero
I knew where the 80 was coming from.... but I dont know why its being set to it... I am not setting it to use that variable after the first start screen...
show the code where you are using that variable
there are two location variables... one for the "Start" screen (currently set to 80 on the X, normally zero)... then the "GetReady" location, which is a little more to the left and down a bit...
both get passed into this function
but only when they are called from the players input
pressing Play on the Start screen...
Clicking on the Get Ready screen...
I can't make anything out from this function alone
ok.. one sec..
actually, you're setting the location of the scene component
so you're setting the location of the bird sprite itself
not the actor as a whole
wasn't this your issue?
no
so what is your issue
ok... let me break it down....
just a simple sentence please
I cant really explain the steps in a sentence
I don't care about the steps
I care about what the issue is
what specifically happens that shouldn't happen
ok, so the bird should be at the "get ready" location when play begins, and isnt
because you've moved it
no
yes
because something is moving it
yes your code is moving it
you set it to be +80
thats for the "Start" screen
the game does what you told it to do
evidently not because at the start screen it's in a different position. even during the log you can see that the numbers are reflecting this
better yet
try removing that SetWorldLocation in the function you screenshotted
Click Play in editor
Start Screen Displayed - Bird Set to "Start Location" (80,0,-35)
Player Clicks Play Button
Get Ready Screen Displayed - Bird Set to "Get Ready Location" (-55, 0, -60)
Player Clicks Screen
Play begins - but "sometimes", the bird is position at the "Start Screen" location
and see if your issue gets resolved
(removed it, it didn't)
okay, so you now know that this function likely isn't the issue
you can now look up anywhere where you use set world location (or set actor location) and remove them in a similar fashion
and see where it makes a difference
remember, the game is only executing your code, and it is much more likely that your code is wrong than it is the engine doing something wrong
excuse the messy lines...
The AutoFlightOrigin is populated by one of those two variables I mentioned earlier... this function is called from the Timeline... repeatedly... to make it move up and down on the Start/Get Ready Screens...
I'll take that one out and see what happens...
still occurs
Thanks for you help, and time.
I can't help you any more than that
ya... it's hard to watch it since they're 99018510 objects of the same class. But if there's no way around it π€·ββοΈ thanks!
Ouch π
jesus I hate physics... Does physics simulation update actor rotation/location and I'm retarded, or does it only update component's?
Ya, but in this case, it's not:
right?
that's what I'm getting here - actor location/rotation stays the same, component goes crazy
@odd ember - just as a little follow up - still not resolved it, but it would seem the issues goes away if I do not enable physics when the game starts. Leaving that disabled retains the position of the bird in the manner I would expect. Obviously doesn't help me a lot as I need physics on. Kinda feels like the physics side of things has "remembered" where it was at some point, and then moves it to that position once physics is enabled again.
what kind of movement do you do that you require physics?
just the gravity... so it'll fall to the floor etc...
I went through all of the SetWorldLocation stuff and it made no difference unless I removed the other position. As soon as a second position was involved, the issue came back. Re-enabling physics appears to be the trigger.
gravity doesn't require physics
especially if you have a character movement component
gravity is enabled... but if "Simulate Physics" isn't turned on, gravity doesn't do anything
but really, any type of movement component will handle this for you
no character movement component
sounds like it's just not setup correctly within the engine
the gravity setting?
again I would not use physics for htis
when you say maybe not set up correctly in engine... in project settings or something else?
I meant in your project. I meant that you are using physics and not a movement component
oh. didn't realise I had to etc?
well you want movement somehow no?
Yeah.. just applying a force when the player presses the space bar, and allow gravity to do the rest... was all ok, until this other issue.. no issues with the movement itself
a movement component will solve your issue instead of using physics
make of that what you want
ok. thanks. sorry if I've pissed you off or something, wasn't my intention.
I'm trying to give you solutions and you're just saying "well everything else works"
either take the solution, or try on your own
was just saying that the actual "movement" worked etc
Hey there! What resources do you suggest for learning Optimization and Profiling? Especially the meaning/naming/settings of the analysis that the 'stat' commands show and such? Any suggestions?
yeah but as I'm experimenting with a project i'm working on, my main issue rn is knowing what the names mean
things like "Unaccounted" in the GPU Insights analysis, VisibilityCommands in stat GPU and stuff like that I can't find any answers online so far
Try profilegpu
if the Docs had a list of those names and what they are and mean that would be amazing
Or probe the rendering thread with RenderDoc
yeah renderDoc could be a good idea
but the thing is more that I don't know what those names represent
for isntance, hat does the "Unaccounted" process in the GPU mean/stand for?
it's very very hard to find any decent info on some of these names
the forums have threads of ppl asking questions, that are filled with replies that ask the same question, no answers.. the docs are kinda bare, with just general tips on how to use and setup the tools. The only info I've been gathering comes from youtube videos of tech artists and a couple livestreams as suggested, as well as private blogs of other unreal users. It's quite frustrating
especially so when I have literally no idea of where to get proper information for this besides the notion of go hunting for comments on the source code from the engine ? :X
Hey there, I'm trying to create some widgets with defined values and display them add them on one list view.
But unfortunately, their value is overwrote by the default value
If I add them to the viewport, they will have the correct value
this is the blueprint
is this multiplayer?
No
I remember there being some issues with ListView in general, but I can't remember exactly what was wrong
Guys, do they use GameplayTags for item types instead of the same Enum?
I've found right now this post on forums and the last reply has a working solution for the issue.
https://forums.unrealengine.com/t/how-to-use-settext-with-list-view/431267/37
I finally got a (non-hacky) solution! Took me hours. Have been trying to figure out why I canβt set text in my child widget, why I canβt change variables. Why is tick not being called? Turns out, as people said, the ListView does not use the object you make and add to it, it uses it as an imprint and creates a totally unrelated object without th...
glad you got it working
It's no big deal. It's just a note. Not a warning. Nothing will break because of it.
Well my code isn't working, so I'm a bit confused
Do you mind if I send you a DM and can you overlook my code if you see any mistakes
It won't be because of that. You'll need some breakpoints or prints to check the data. All that is, is a C++ function trying to pass a by ref parameter to BP without it being const. BP doesn't return by ref in events though.
I'm trying to figure out how to go about making ship cannon aiming with physics on one side of the ship. Tracing the sphere, and then adjusting cannon rotation based on camera angle with constraint? If anyone has better ideas I'd love to hear it
would like to check this out, love birds, not many in games, tried doing a game using a monarch butterfly but never could figure it out
Hey... which bit, the "auto fly" stuff?
no i wouldn't understand it, was thinking a video when u get it working
there's an entire channel dedicated to #legacy-physics if you're keen @valid hill
its probably not what you're looking for... its a rather "glamorous" function name on my part... basically its a 2D animated sprite (wings flap), and the Timeline spews out an alpha value consumed within a lerp to make the sprite move up and down a little bit.
oh ok got you still cool you added a bird, I have a free roam Sun conure
its a FlappyBird clone π
Is there a way to give a description to a custom event? I have an event that is pretty much only used to create something in the editor and I'd like to document what it does when hovering over it in the details panel when on the object in the World Outliner
hm so i'm trying out the tip you gave about including event dispatchers in anim notifies in order to tell my player pawn when an animation is done-
Am i supposed to call those events inside the anim notify, or add them to the animation blueprint and cast to them inside the notify...?
@odd ember
so you've setup the anim notifies on the animation itself?
yeah
since i shouldn't use montages
yeah in the details (inside the BP) panel you should have an option for that the same way you do for functions
That's what I thought too π€
and you're now asking if you should setup the notifies in the animBP or just where ever?
that's interesting. if you create a void function it'll get treated as an event, but you can add a description there
well- if i add an event dispatcher into my anim notify-
That event dispatcher wants a target... But i have no idea what the target is gonna be 
Yeah - I just like the pretty red color π
But I have a function now.
you can convert function to event afaik
so a little hacky, but that should get you what you want
perhaps?
Eh - guess it doesn't matter anyway. Still doesn't display the description. Womp womp
the "target" is where the dispatcher is. in this case, the blueprint where that is setup. so it is correct is being self
but-
which BP is this?
follow this guide
ooooh THAT'S how you meant it
yeah it's a system that's already setup
I was hoping you'd do the docs reading yourself
can't win them all
yeah i was just confused, i thought you meant the kind of animation notify that you add into the ContentBrowser
Alright, to get this straight:
I press Left Mouse button to attack.
i pull this attack into my animBP
then based on this animBP attack bool
i play the animation in my animGraph
we just moved away from that
trying to get string from bp to widget so I can display time on the hud. Ive hit a roadblock and dont know what to put as the object.
now-
As soon as the animation notify shoots-
I capture it using my animBP and dispatch it
I catch the distpatch in my third person character BP like this
and bam. donezo. works.

how the hell would anyone ever figure this out by themselves
you can optimize it and make it a bit more automatic, but that's the general gist yeah
yea, the problem i see here is the "third person character" reference in the event dispatcher...
well- apparently it's not good practice to do montages
they're neat for little stuff but i wanna make big combat system
skyrim 
I personally wouldn't
i'm having a moment here lorash
but each to their own π
you're ruining it

Don't care about toxicity 
CE can be as toxic as they like, can call me a smelly noob for all i care, in the end my brain expanded.
a model student
So, now my question now would be why use an event dispatcher at all?
After all, i'm already casting to my third person charcter bp - i could just call upon a custom event 
sorry, perhaps there was a misunderstanding. the anim notify is an event dispatcher

oh wait-
ooooh ok i think i get it
it's an event dispatcher because i can use the anim notify in whatever animBP i like - and always listen to it
a good way to think about event dispatcher is like a subscription service
you subscribe to it, and it notifies you when something new comes out
alright that's pretty smart
yea i like that better than montages
because i can do all sorts of shit with the animations in the animgraph, blend between them or just manipulate individual bones if i want to

that's neat.
ur neat CE.
I appreciate it! now try and see if you can make enum states and make them work with blend poses
does anyone here know how to force UE to index my blueprints? it seems like the search functionality is broken. it's just stuck and "searching..."
and i'm getting incomplete results
they should be indexed already, what are you trying to search for?
is it out of class functions?
it's just an event. it's giving me results from some files that use or define this event. but not others
and it's stuck here at "searching"
try cancelling and then fixing up redirectors on root
there doesn't appear to be a cancel button.
closing down the window
depends on how often you do it
and how big your project is
remember to save afterwards
since we're out of ideas here - i wanna ask one more 
So i'm blending now.
Blending based on a spine bone, and the lower portion should just do the normal thing.
how do i take the animation that other animation states make-
and feed it into this animation state?

that's per bone blending
sure
so I'm not sure if it's a separate node, or if you have to configure this node. if you click on the node itself there should be more information in the details panel
restarting the editor did it!
it doesn't really have an option to take the animation that's usually playing "be it idle or running" and project it to the lower bones
start by creating your enum
Nono i get the blend by enum, that i understand
once you have that, you should have a blend pose (<your_enum_name>) available
ok i explained it wrong
right now i have this
so how do i make it so i only attack with the upper body?
i know how to do it in montages - caching the pose and everything-
ah my bad
or is that just a limitation of the animgraph and i gotta live with it?
you were using the right node, you'll just have to look at the bone hierarchy and decide where to blend from
this is an example of how I'm doing it
the depth is the amount of sublevels from the bone you're using
sublevels as in... the bones that come after?
bones that are affected by that bone
so like everything is affected by the root bone
sure
but the head bone is an endpoint, so it's not affecting anything else
oh i get it, so you set the bone to "Spine_01" and do 5 levels up - so it only affects the head
likewise, arms are affected by the root bone, but also have their own transforms that affect the elbow, wrists and hands (and fingers)
it's always levels down, not up
or that
right but my problem right now is this
How do i make it so the base pose takes the animation from a state that isn't active right now?
Or do i have to copy my blendspace every time for every state where i want running to be a part of the animation?
well they should all be in the same state
oh-
So attacking, idling, jumping, climbing - all the same state?
think about the first state you're making from "entry" are more like domains, rather than actual states. so one "state" node could be "standing on ground"
and then inside "standing on ground", you have an enum that blends between all the different possibilities that you have standing on the ground
does that make sense?
you only really need to make new animgraph state nodes when you're dealing with a different domain
a different domain would be...?
something where you are no longer standing on the ground for instance
it could be horseback riding
or flying
or what have you
although technically you could field those inside of the blend poses node still. you can actually hook up entire new state machines to each of the poses
the point is you rarely need to deal with transitions
i see
the transitions are handled by blending mostly
Right, so my idle animation right now is this:
it's 2 idle animations with different length and overdrive blended together on 0.5 - that way my idle animation doesn't loop
well that technically blends 50% of each animation into one
sure, i just made both animations 50% stronger.
like i just scaled all the bone rotations up in blender
right but they take place at the same time
unless you have one animation do nothing for half the length
and the other do nothing for half the other length
anyway
instead of having that in a separate state
hook that into your blend poses enum node
and it'll work all the same
Right- that gets me to my question-
This is idle, and i wanna blend to walk and run...
Should i just not do blend spaces and do it with a float?
you hook up a blend space the same way you hook up an animation. it all goes into the blend pose
think about the blend poses node as your main hub for everything that you do
because that's not a blend pose node π you have to use the anim states to determine when you blend
right now you're just blending everything at once
oh nvm
yea you're right
ok i think i get it
this does work
and i can replace it with an enum
does anyone know why my navlink proxy isn't triggered even when my agent is trying to take it (and clearly stands on it)?
all it tries to do is snuggle with it and then give up
these breakpoints are never hit
this is the way
no spaghetti states
Hey, what could I use if I'm looking to store strings in a tree-like structure?
not really a BP question because you can't really do that in any good way in BP, but a trie/dictionary tree is what you're looking for
Right, I was thinking it could involve blueprint classes since it seemed possible to create a blueprint that contains itself
So there is no way to make some easily editable data class which contains nested lists?
you can but it's incredibly overkill
your best bet would be to do this inside structs in #cpp
Overkill as in much work compared to Cpp?
and too much performance to make it work. I'd suggest structs in BP, but really writing to structs in BP is a pain, so you're generally just better off doing all the work in cpp
Alright thanks, but I'm not sure that really solves anything. Because you can't hard code the values for the structs.
no but writing to structs in cpp is much easier
and you're guaranteed that the structs are actually being written to
Yeah I see
But then I'd still have to create the data in a nested data structure in an external program, then convert that into a file format to import into UE4 and then write classes to parse it
which also seems overkill
well the data has to come from somewhere
That's the main gripe
I'd see if there are importers for this kind of thing for cpp
I'm looking for a way to store and edit the nested data in UE4 not so much process it
this isn't a new problem
I'll have another look around. Come to think of it there's probably a solution out there somewhere, related to dialogue stuff for instance
Dialogs. π¦ Ew.
it's not for dialog
but it solves the same problem
since dialogue options are also nested data and tend to get quite big
What is the problem exactly? At least in my personal project, dialogs are attached to gameplay tags.
For context I'm setting up a fairly complex UI structure. Triggering certain binds would display "deeper" binds . These binds are also swapped around a good bit.
So I'm essentially looking for a convenient way to manage a structure of nested data for these binds (icon name, bind key, deeper binds). I'd then use this data structure to initialise a nested structure of blueprint classes with some more functionality.
Mostly just sounds like a datatable of a struct.
I could just create a flattened table yeah
Or a savegame array of structs if it needs changed at runtime.
This is the plan too, but a data table like structure would be more convenient to initialise from
I don't think there is much like that in the editor as far as visualizing it. Not by default. That'd be some heavy editor customization.
What I'm thinking now is a simple table with the names of the entries indicating their depth
and then do some funny parsing business
Well. Maybe not. Maybe could cheat that with an editor widget.
Yeah I'll probably go this route for now. something like bind1.bind2.bind3 for the names with different depths. Thanks for thinking along
Can someone help? Why is the camera pitch rotating about its own axis instead of the players?
@crimson saffron Thank you!
Np
Can you use comparison operators for floats?
is that ue5?
yes
why cant i teleport the player on the y axis?
_
Casting is only a means of taking one reference and making it more specific - if you're casting to something that isn't what it is, the cast fails. Eg. If you're doing this in a widget, casting "Self" to BP_DayCycleDome will fail as I imagine BP_DayCycleDome doesn't inherit from a widget class. You need a reference to the object that contains that variable.
is there any other way to get that variable from the bp to the widget?
You can feed it in when creating the widget by using an exposed/instance editable variable. You can use Get Actor of Class. etc.
Just don't use Get Actor of Class on tick.... Set a reference to the object On Construct or something.
you the π
Guys, what solution do you think is better if I need to make separate slots for weapons and separate ones for ordinary items. Use one array and add weapons to the first and second slots (in other words, reserve the first 2-3 slots for weapons), and add the remaining items to the remaining slots. Or create two arrays for weapons and items? But then you will have to add a lot of code to drop items and remove it from the correct arrays (if we drop the weapon, then remove it from the WeaponArray, if the item, then itemArray) and other operations. But still, which solution do you think is more correct? And why?
Assuming it's 2 weapon slots, I wouldn't make an array at all
Just 2 single variables
The idea about "The First indexes of inventory are reserved for weapons" is a definite no
Assuming an item in your weapon slot is not in your "other" inventory, the other inventory should just be a normal array
Writing some code to move something between inventory slots and weapon slots should actually be quite easy to do
And is recommended, whether your weapons are standalone variables or an array
(Another slightly janky approach with a few elegancies would be to put all items in a struct array where, within the struct, the item signifies which slots it is in, in all contexts. This approach would require alot of extra looping cost which may or may not matter in your game, but would add a little bit of extra flexibility that you probably don't need)
But don't do that unless it really resonates with you
Relying on index positions for items in an array for core logic is almost always a bad idea....avoid it unless you're sure what you're doing......for instance, finding Index 0 in a list of things is a decent way to infer which one has been there longest, but you don't want to go out and create a situation where you're trying to store extra information in the index-order of an array
Is there a way for the math expression node to accept a vector input? (not having to break it)
Looks like you can click on the expression and then change the inputs.
Does anyone knows How can I Get an "Input Key Structure" from the Player controller?
I wouln't know wich nodes to pull up for that, Not even by getting or casting the Player Controller π€
so, i'm using the ball template in 4.27, but the ball is way too slippery, it easily slips off the map. it has no grip
i tried looking online and only found forums without an answer, just the same question
What are you trying to do
Trying to get the Key Event Structure without having Widget focus, so I can set an input text...
Overriden "OnKeyDown" only works when the Widget has focus
This is the overriden one, right?
Setting Has Widget focus even if its only for a single tick, disrrupts the player controller so player has to drop and use again...
Yeah, that is the Overriden function π
Well I don't think this can be done out of UMG. As I don't see where it would be needed.
There is a dirty solution though and that is to have all the input keys events one by one, and get the key name of pressed key...
Hi there o/ I am a bit of an idiot so please call out any stupidities you see
I am trying to make a floating ship rotate (gravity is set to 0 in the project settings). I have the following blueprint for adding torque, this gets done every frame when one of a few keys is help down.
The problem that occurs is that the ship just stays where it is, no rotation happening. After placing a breakpoint I can see that the applied Torque is a vector of (10, 0, 0). Power is 1 and Axis is (1, 0, 0).
Problem occurs no matter which axis it is applied to. Simulate physics is set on the ship and the collision preset is set to Pawn. No errors occur during play.
I am using UE5 preview if that matters
Edit - I have tried increasing the torque applied to well over a million without any result
Edit2: I was indeed an idiot, issue was due to the skeletal mesh having been deleted
@mellow folio Thank you, it's just my first time making an array. I did it in the first way, but I thought that this logic would not be too flexible. Regil to ask how to do it better, so as not to change all the logic later. Yes, and working with two arrays, as I think, will be easier, for example, when finding an empty slot and other things, there will be no need to loop. Thank youπ
Ok the main thing you need to know about arrays is that the order will automatically change if you ever remove an item from it
With all entries after the removed one getting lowered
So the indexes will always be contiguous from 0
Which basically just means, expecting things to be in the same place is bad if you ever remove
I do not do it through remove, I just do it by array index and change its contents to None
And it work correctly
It would be possible through remove, but then you would have to immediately resize the array
Is it possible to have a cinematic camera recording the player from a distance while playing? I want to record a bit of gameplay from an arial view while playing. But dosent seem to work by just putting a cinematic camera in a sequence and then recording.
Let me know if this belongs in a different channel, but
Are there any good guides on how to integrate projects? Imagine I got a project from the marketplace with a functionality I want and I want to integrate it into my own project. Or that I have to redownload the latest version of the project (also from the marketplace) that I'm using as a base for mine.
The faster and safer way would be to build upon that project. Although I don't think that's idea as you won't understand how things work properly there.
If you try to copy paste what you want in your project though then chances are that you will have some/lots of errors but you will get around that and get a better idea of what's going there.
This will also help you edit there code if needed for optimization purposes or any other purpose that serves your game better
assigned an actor variable to the Get Acor Of Class, but it's returning Actor Object Reference. How to fix it?
The variable not returning BP Class!
You probably missing the point of this node. GetAllActorsOfClass gets a class and returns all actors of that class
You are giving it a class variable, but you're naming it Actor which is misleading
Also Current value = None that you see means that you haven't injected a wire there, so it's none
Was it a fever dream or was there a way to compact type conversion nodes
Compact as in, making them smaller or hanging them to their output node
Renamed variable to "Active Camera", but it's still same
Nope I remember now, it was not a fever dream but it was a feature in Substance Designer
Recently jumped from 4.26 to 4.27 so I could get a startup video working proper with Bink. It seemed to have cause problems with player spawning. I'm having an issue where in this map, that's only supposed to be a sequence for the game's ending, keeps spawning the player beneath the map and falling over and over.
Have you read my last sentence?
You need to get a wire out of there. So you can do for instance, a for each loop
Because you will be getting a bunch of actors
The name that you give has no effect on your code functionality, it's just that you understand what it means. So a better name would be ActiveCameraClass
You can see more here how it can be used: https://www.youtube.com/watch?v=YoYjx9Ka9G0&ab_channel=Sir_FansiGamedev
Beginner friendly tutorial on how to set up and use nodes get all actors of class, actor of class and get all actors of class with tag.
Learn how to use blueprints in unreal engine 4, what it is often used for and how it can help with coding your own games.
00:00 Intro
00:20 Get actor of class
01:41 Get all actors of class
02:53 Get all actors ...
I've created a projectile with a collision sphere that is set to ignore on projectile, overlap on pawn and block on everything else. I want to destroy the projectile when it hits the wall but it just passes through walls. The wall in the screenshot is a basic StaticMeshActor. I'm not quite sure why it doesnt even collide with the wall. Can anyone give me a hint on what i might be missing here?
Well it's the StaticMeshActor that blocks the projectile, not the other way around. But ok. Check the collision channel on StaticMeshActor and make sure it blocks the projectile
Oh im so stupid
I did check the StaticMeshActor Collision and set it to BlockAll... but it still had the Projectile as Ignore
Now i set it to Custom and also changed Projectile to Block and it works... thanks @jaunty summit
can someone tell me why this bug happen? I cant select hearing sense. this is a bug in ue5 that dont let me select anything
but idk why it happen
Hello, apologies if this isnβt the correct place to ask this.
Essentially Iβm learning UE4 by making an endless runner, but Iβve run into an issue with my method of picking which βlaneβ to move to on a tile that has rotated. Iβm hoping for better solutions / ideas for my terrible logic.
My basic logic is:
Tile has n number of βlanesβ(current 3 lanes)
The player holds a copy of the current tileβs lane options along with an index of what lane the player is currently in and swaps between them by grabbing the Y location and adjusting the position accordingly.
This was working fine until Iβve added in the ability to turn a corner (always +90 or -90 degrees). The new problem is the Y doesnβt change if youβve turned 90 degrees as now X is the value that turns left or right.
Iβve thought of picking either X or Y when changing lanes based on what the current rotation is, but overall it seems like a messy solution.
Anyone any ideas on a better solution for locking the player to lanes?
Lane switching logic https://blueprintue.com/blueprint/1hn97wx0/
Corner Turn Logic https://blueprintue.com/blueprint/imyxlp3r/
why not have lanes as splines that you can then move between?
that will take into account curvature
and you could make each lane unique
etc.
hey super noob question but how do I restart a level lets say after 10 minutes?
Im afraid that a timer will be too performance heavy :S
why don't you try first and see if that's the case?
I want to create different Projectile Skills (like a fire ball and a frost orb). I though about creating a DataStructure for my different projectile skills. They wont only differ in damage, also in "behavior" like projectile speed, piercing, chaining, etc. Is there a way to give every DataRow a reference to the blueprint I would want to spawn? Like i have a blueprint for my fire ball and another for my frost orb. Or is it better to make a more generic projectile and all those different behaviors as attributes? So i would have a way bigger data structure that has to store values like damage, projectile speed, projectile amount, particle system, material, etc
look into GAS
@odd ember but do you think this is the best solution? I am writing here since I wanted to get some tips
this is a wrong way to think. you're not going to make your first attempt be the best solution. start with a working solution
if it has issues, see if you can fix those issues
@odd ember thanks i will take a look!
@peak wedge what do you mean its a "wrong" way to think? Obviously I am writing here to get help, if I could just "fix those Issues" probably wouldve done it
@peak wedge if thats your only answer I would prefer not getting those from you
thakns
*thanks
so you're new and you want help yet when you get help you say "I don't want help". OK, suit yourself
but what was your help? you just said I should fix it on my own
instead of pointing me towards a direction, which I could use
I said try the timer. see if you'll have issues with it first
im not asking you to fix my problems, i am just asking for advice

but thats NO ADVICE come on dude, try the timer this is what im allready doing, and im wondering for the future if there would be better ways
well it kind of is advice. He said your approach could or could not work
Part of learning is try/error
im allready doing that ......
if you don't have any issues with a timer currently, then it's the best solution. there isn't a magic silver bullet that solves all your problems for you
So just go ahead if you already got a "solution" in mind
its the same as saying "well everything is relative, you could do that or this it probably doesnt matter its all up to you"
this idea of thinking of the best or most optimal solution before even starting on something is a fallacy. it matters if you're dealing with structural elements
discord is for sharing knowledge no ?
but this isn't a structural element
if you don't like the advice, don't take it
but don't come here saying it's not advice
haha well its not
What is it with all these people lately who start arguing with people because they don't get their hand held all the way through?
I know right
and its not a very welcoming attitude btw
i am not asking to get my hand held through??
I am just asking if somebody tried other options
It was valid advice though. You are complaining about nothing
depends on where they stand on weebs I suppose π
A timer could be totally valid for your project
We dont know if it will give you problems down the road
If it works now its simple and easy
So try it
hey im out, thanks for nothing. I am sorry if you feel that youre too good to even give a simple hint , i dont need this
Programming is not an exact science. A timer could work for you, or it might not. You haven't provided a sufficient amount of details about how your project works to be able to give better advice
He was just stating that your approach could already be sufficient enough
CE is online 
I've encountered another problem.
I've done the enum thing you said i should do, to make a combo attack.
right hit - Left hit.
My hits have a "animation save" and an "animation end" notify.
The animation save is set a little earlier - so i can switch to the other hit while the first animation is still playing, making it look more fluent.
Here's the problem: If i switch over to Attack2 - Attack1 hasn't finished, and will stop.
And if i then start over with Attack1 - it will play the rest of Attack1 instead of starting from the beginning like i want it to
did it work before when you had them in separate states?
nope, only ever worked with montages
because i can tell the montage "play from the beginning"
i guess it would work if i put the "save attack" notify completely at the end...
like when "AttackSave" is triggered, at that point if the player clicks again - it switches over to the "Hit from left side" animation
this sounds to be like you just need to increase the blend time?
hm blend time makes the problem less worse because the rest of the animation that plays gets blended... still tho
what you can also do is that any of these nodes can go a level deeper. you can hook up another blend pose node to your enum based blend pose node. or you could hook up an entire state machine to it too. so if you're wanting a sequence of states to be triggered in order, you can do that too
I mean- i guess i could probably split the animations up into 2 parts 
like the hit part, and the recover part
is there no way to force an animation in the graph editor to always play from the beginning once it gets blended?
well like I said, you could make another blend pose node that takes e.g. another enum that handles attack only
idk if that would do anything either...
so you could say instead of "Attack 1" "Attack 2", you just have an "Attack" state, which leads to an enum based on where in the attack states you are
that way you can also save the attack state separate from the rest of the animation states
sure, but that would be the same problem though
well no because you can reset the saved states
the animation pauses once it's no longer active - and just resumes once it is
oh
wait - the saved states being the enum?
the enum isn't my problem
ok hang on i'll show what i mean
maybe i explained it wronig
it kind of is. you want your state saved right?
my state already gets saved
so you want to start from the beginning of the attack every time
there, see? After the right hit and the left hit - if i restart the combo - it just plays the rest of the right hit animation instead of resetting
like the enum works fine, and the logic is all good
right but what I am saying is that if you separate this into another state you can reset it at will
you mean make Attack1 a state and Attack2 a state?
so your main animation state is still "attacking", but you reset the order of attacks
Hmm
doesn't even have to be a state, could be an int as well
if you want to simplify it
but the idea is that your main animation states don't care about what kind of attacks you do
they care that you are attacking
it's all about the granularity
also, if you want that exactly as it is, you can literally recreate that logic in another state machine, and nest it under "attacking"
so your entire "attacking" state links to another state machine that handles just attacking
you mean blend 2 blend spaces with one another, one just contains the attack states, and the other one contains all the other stuff...
it's the thing where you make the transitions as you've done
you can make a simple state machine that just does a sequence
and for each transition, you check if the next state has been triggered AND that e.g. the animation is 85% done
so just for the record-
There's no way to force an animation to always play from the start is there?
that is literally what the state machine does for you

