#blueprint
1 messages · Page 123 of 1
Wait this is bizarre, this has no effect the FIRST time I go through this collider, but subsequent times work
Can anyone tell me why im getting thiss error?
Blueprint Runtime Error: "Accessed None trying to read property K2Node_DynamicCast_AsBP_First_Person_Character". Node: Branch Graph: EventGraph Function: Execute Ubergraph BP Chest Blueprint: BP_Chest
where does it take you if you click on it ? your variable is most likely empty
this is jsut to make sure audio doesnt play if i press E while i have inventory open
Yeah so you're dereferencing Target to get InventoryOpen, and Target is none
oh because you're not setting it
I dunno where that blue line goes but probably an entirely different execution thread that isn't being called
"DynamicCast_AsBP_First_Person_Character" <-- but it says this tho
i do ahve it getting set its just AFTER first interaction
what is the target on inventory open ?
so i have an input where tab opens inventory thats located in fpcharacter BP
the target plugged into the boolean is it a cast before that ?
yes it is
you don't want to cross execution line like that
data across execution
i would cast the player on begin play if you can
then promote to variable
so you have a reference you can use on either event
this is the inventory event
and tab just calls it and only it
its constantly changing tho whenever i hit tab so i need to ssomehow send it back
thats why i ahvent promoted to variable
when i first tried it, it just broke the inventory cause the variable was only in chest and not in fpcharacter
i mean since your casting to the player, and using it in another event you don't know what will be in that
you would hope it's a successful cast and there is data
but if you cast then set it as a variable
you can then use that reference in the events
when i hit tab to exit it i need to reset that variable somehow
defs dont want to do event tick
and beginplay will only do taht once
once you cast to it your all set you have a reference
i don't see the problem but you can program any you want
ill try that real fast then
ill send a pic to make sure im not messing it up
oh but i need to cast for the inventory open call
you also want to make sure the cast succeeds
i'm still learning but i have a good idea of why that accessed none happens
your variable is empty
until its opened for the first time i beelieve it is
this si what youre talking about right?
its not reading that the value got changed after opening
but the cast did succeed
no thats not what i'm talking about
wdym then?
i was saying to just get player, cast to your player bp, then promote to variable
so you can use that variable in place of a cast on the events
so you don't cross lines or you could just keep casting every time ig
isnt that what im doing in the image?
oh are you saying just to promote the "As BP First Person Character" as a variable?
like this?
whats connect to the object pin ?
get palyer character
but yes like that
im jsut too lazy to make another node
ok so now where your dragging off onto the other execution
because your casting
just use the reference
like that but with power going to the branch
ypu sjust connecting things now
as long as the cast succeeded and it's the same bp, it should be fine
you can just use that in place of a cast in that bp
youre a G engage
also
when my inventory is open, (inventory is just a widget with 0 functionality atm) if i hold leftclick i can stil walk around and move my camera. how can i stop this wihtout pausing?
in theory its a multiplayer game although its absolutely not going to be
i'm starting to learn a little about multiplayer
wdym "in theory" ?
in single player you sould just use a boolean
switch the boolean and then branch it so it doesn't work, switch it back it works again
im trying to do like a mini replica of the popular nextfest game "DungeonBorne" for my final assignmnet (due in an hour) and that game is multiplayer
switch a boolean?
in a way like this yes how you have a boolean, but you would do your movement code on isenabled or something, then enable/disable it by flipping the boolean
thats how i would do it other than paused
ahhh so up here IF newbool==True, run and in the inventory area set the newbool
yep
gracias senor
im losing my mind i need help
how can i override the animation from within a child animation blue print? there is no AnimGraph within the child abp
another question, is there a way to make this door still have its fucntioning holes but for my line trace, not?
this is the child ABP thats created by defualt. its compeltely empty but it works. how?
Collision channels.
It's not empty if it's derived from a class
just create a box collision attached to the door in the veiwport editor?
yeah and have it set to a different collision channel than whatever you want going through the holes
@simple falcon you want to read a concept called inheritance in object oriented programming
whats a collision channel?
This stuff
right i get that, but if its simply inheritence, why is it that when i assign the skeletal mesh to the parent ABP, the character doesnt animate, but when i assign the sm to the child abp, it animates as intended
did you make this door ?
i wonder if custom collision effects line trace
Also highly recommend setting up some custom collision channels in your project like I have. Something like interaction is so important to control
also how can i override the animation if there is no animgraph?
Yout parent could be a template class, it's hard to tell from here
if you made a door with holes and cust collision in blender would a line trace go through the holes ?
asset is from UE store but the interactivity was made with massive help from squize
You can only override animation from a template class
what would i set LT to?
You can change the anim in the detail panel somewhere
Your brand-new custom interaction channel 😄
If your parent class is a template class then it make sense that you can't assign Sm to it
Interaction is really important to isolate because it's SO often the only thing you want to block. Like this door is a great example, everything should go through the holes except your interact trace. Or a broken window should allow almost anything through, but you probably shouldn't be able to pull a switch through it
how do i make one? keep in mind i only ahve an hour till this needs to be submitted and i need to package before that
hmm ok in that case, how does the child abp make the animation work. which field is controlling this functionality?
I see an Asset Override tab, but its not interactable
Oh rip then screw that, just add in a collision cube that blocks whatever channel it already is
@simple falcon if u are indeed working with template, there should be a video on youtube coverting this
can you please link if you have it on hand or know the creator name
Afaik last time I used it, the anims to override are the in the right panel
one of these?
I don't remember, any video covering it should do
or do you mean go into the SM itself and change the collision?
got one of those
just renamed to full collision
cause thats in the bp viewport editor right?
Oh sure!
what setting do i need to change for it to stop LT
This stuff
I'd change everything to Ignore, and whatever your trace channel is to Block
you could do custom channels but i don't see how that will make holes
As far as you care right now, they're just different channels. What they do depends on what you assign to them.
Okay I'm at my wits end. This code works exactly as expected, but NOT the first time I pass through the collider. Second time, third time, whatever it does what it should. But the first time, the constraint does nothing.
Things I've tried:
- Just calling SetConstrainedComponents twice
- Putting a delay between the SetWorldLocation and the SetConstrainedComponents
- Calling SetConstrainedComponents on BeginPlay
- Waiting a super long time before I go through it, in case it's about time
wish i had a solution for you as you did i
But if I remove that SetWorldLocation call, it works first time every time.
Screw it, it's 530 on a friday, I'm needed at the pub.
have one for me
actually amke that two
tis been a long week
is there a way to make radial force ignore a specific actor? I am using it to create a shock wave out from my caster and it works perfect but it is also is effecting the caster(Note I know it has ignor self in options but the spell is spawned so all it is ignoring is the spell)
Anyone know if there's a way to lock a spring arm component from lagging in a certain axis? Or an alternative?
I think this is your only option
Yea that don't help
Any npc can cast the spell
trying to use luanch charactor now but its not anywhere near as good
The char is not moved verey much unless they are in the air already and if they are they go flying at insane speeds
trying to knock them up first then aply the knock back but its not going well at all and I am not sure why
what is the like white line stuff on my game window. won't let me click inside it or do anything while its on
when i go to a blueprint and hit play so it opens up a new window to play it works fine
looks like some sort of bug from moving editor windows around. i just jiggled some parts of the interface around until it fixed itself
Yeah, it's the panel snapping overlay not going away when it's supposed to. Been a bug for a long time now, but it happens pretty rarely. The fix is to just drag another panel over and back off of it as if you're triggering the overlay to go away again.
Hello, im getting some very weird stuttering issues while trying to do some Finterp To with an Actor rotation, anyone had the same issue ?
Is the launch velocity different from a vector? because the trace shows things going the right direction but the actors all ways fly off in weird ways or not at all...
If you're using a location as the velocity, which you are as you're using the actor's location + a modifier, then you would definitely get them flying off in weird ways.
It seems like you already have the vector you want to use and are multiplying that by 1000, if that's the relative direction you want them going in, that should suffice.
ah so drop the get actor loction for the target?
Yep
Thank you I have been at this a while and had no clue what was wrong. Also is there any way to radial force to ignore a specific actor?
That worked perfectly! thank you lol
Don't think so.
ok
thanks again. I am still haveing the weird proplem of when on the ground the targets don't move much
I cannot for the life of me get root motion working on this so Here I am. Pls help
is it enabled in you abp?
In your ABP->Class Defaults-> Root Motion mode should be set to Root Motion from Montages Only. Also show AnimBP and logic of how you play this anim
I already had the abp setting on and it still didn't work. This is how I play my anims. This is in the player blueprint.
I just realize that its not that the target are ground its that they are in the middle of a root motion animation. They can be moved up but not in any othere direction while in the animation.. Is there any way to fix this?
Sorry to ask again, but I'm pulling my hairs one by one since a few hours, cannot find a proper method or get rid of the stuttering while doing a Finterp to toward an character rotation. Any hints are welcome !
How do I get the closest bp actor to the player?
Im making a system where the character looks at the nearest bp actors
Sorry, not sure. Both animation and physics are probably my weakest points.
When loading a sublevel with 0 lights in it the lights in persistent seem to flicker every time without fail. Is there a way to avoid this? I'm just trying to stream in a different level
Probably do a multi-sphere trace by channel at the player's location at whatever max radius you want to check. That should give you an array of hits. You'd then need to check the distance of each hit actor and retain a reference to the closest one.
I can do this in the animbp?
Sure? I mean, you can do anything basically anywhere so long as you know how to get references.
Then make sure you're using a good trace channel that you know the actors you care about respond to.
I've disengaged some settings in the character menu to be able to move it freely around, not sure why it would be locked only during the Frinterp
im dumb here
using "switch on name" or "switch on gameplay tag" how do I change the name/tag of the pin?
This is finding the look at target component i put in another actor
ah ha there's an interface on the right
Hey guys! Anyone can help me with this? I can't solve yet
What would the default position for looking be?
Say the character isn't around players, what should i set the var to?
Would it be like this?
You move it underneath the level, or somewhere people can't see
They have to be in the world for you to see it. That or you need multi world plugin which cost u more thna $300
Even though it's simple, I wouldn't come up with this solution anytime soon 😅 . Thank you very much!
They have to be spawned in a world somewhere, another way is to spawn the mesh in the other world.
Unfortunately Unreal only support 1 world at a time out of the box. Someone did a MultiWorld functionality (in a form of plugin)
But it cost quiet a bit of money. Those method are what the AAA studio would probably use but honestly for our use case, spawning it somewhere in the same world will do the trick
I used to wonder why something 2D would be spawning in my viewport, now I know and it makes sense, tnx. For other uses, this can actually cause more headaches.
Is this how I can smooth a float variable?
Im trying to slow the looking speed as the players head snaps to the other player
instead of moving slowly
Alright I'm drunk as a skunk but I couldn't stop thinking about this problem at the bar. Came home with new things to test.
So RIDDLE ME THIS: Why does THIS version of the code not apply the physics constraint the first time I pass through the collider (working every subsequent time)...
But THIS version works!
Do you see the edit there? Squint, if you gotta. The ONLY change is I'm no longer calling GetForwardVector on the collider to make the plane I'm mapping to.
It has nothing to do with the calls I'm doing. A works, B doesn't. IE, it works when the plane normal is 0,0,0, but fails (just the first time!) when it's 1,0,0
That "closest actor" output array is sus.
Why not just use "find look at rotation"?
hello there, new here, seeking for infos and maybe some enlightment about what's going on with my UE5.3 trying to do a simple task : spawning a train track to a location then move it to the desire spot . track 1 spawn at coordination 500,500,14. track 2 got a box collison detection set-up for floor ( if up and down) ( suposed to be ruled by a procedural runtime world so the track can manage to follow the map bumps ) thing is track 1 spawn correctly , track 2 get to the correct attach point. ( and then track 3 : spawn at 0,0,0 of the world (not okay) , track 4 spawn at correct attach point of track 3 ( correct) ( track 5 and more spawn at 0,0,0 of world) (doubly not okay)
here the system inside the track themselves to guide the attach point results.
here the function in the gamemode to spawn the tracks in runtimes. shouldn't be something to hard to acheive yet everything goes worng ( been doing 8 different function all same result ) ( is UE5.3 broken ? ) im currently redownloading 5.2 and see if this work ( used to work wth some previous project until i had a SSD crash for no reasons lost 1 and half year of progress ._. )
- UE5.3 random bugs like moving an box collision makes path unreadable until you either delete the box itself and add a new one, or compile every damn blueprint that affect it in the engine. ? normal ? never had to do that in 5.2 and less
Why remove (and resize) index before setting and resizing?
Also.. backup to another disc and/or sourcecontrol.
If your array was 1,2,3,4,5 and you remove 3, then set that index to 6, then you'll have 1,2,6,5
I don't think that's what you're looking to do.
You're ultimately removing 3 and 4 by removing that index, then setting it.
hello, the projectile has the Homing function. but do you know how to set the targert? I was thinking i had to put my target actor to the Homing Target Component but it doesn't match so i can't
You need a reference to a component on the target actor. So it could be the mesh or the root component, or any other components you have attached to your actor.
thanks i will try with that 😄
TargetActor->GetRootCompoment is usually solid
thanks
Hello!
I would like to stop blueprints from compiling when launching the editor.
I think bRecompileOnLoad is meant to do this (https://youtu.be/j6mskTgL7kU?t=3047) but I'm not sure how to properly check that.
bRecompileOnLoad does get set to false so I think my DefaultEngine.ini is correct
[/Script/Engine.Blueprint]
bRecompileOnLoad=False
It would also be great to not automatically compile a blueprint when loading it in the editor, but I'm not sure how to do that.
Any help would be greatly appreciated 🙂
Soo i created a working button that muted audio, the problem is i duped it to have multiple buttons for each audio. Now only the last created button works, the rest lose interaction entirely.
My guess is its the getcontroller thing but i cant tell
Yep
If you were to run with this setup
Youd only want to enable input when the player overlaps
And remove it when end overlap
(And remove the gate, its not needed)
ok, how do i go about ending input overlap?
ah ok, i have 2 input nodes, "enable input" and "InputAction Interact"
Enable input is what makes the InputAction work on this specific actor.
So
-
Remove EnableInput from beginplay
-
add it to BeginOverlap
-
remove the gate
-
add disable input to end overlap
Thanks so much! that worked easily
would you also no how to create it vice-versa, so i press it again to reenable the sound?
Im not very familiar with the sound setup
Does pushing a sound mix modifier remove sound ?
You probably wamt to invert that push
it overrides the mixer to set it to 0, i think i can figure that part out its just the button REinteraction part
Usually you wanna track the state yourself
So having a bool (for a binary state) makes sense
Then youd simply do a bramch on that bool
And invert its value every time
So inputaction -> bool = NOT bool -> Branch
Hi all,
I am working on an RTS and I need to be able to show the cursor permanently but showing the cursor makes it so that I can't get the cursor position using enhanced inputs mouse movement. This problem can be easily replicated in a blank project by the following steps:
- In the blank project, create a gaming mode and player controller and set them up as defaults.
- Create an input action and mapping context for the
Mouse XY 2D-Axis. - Set up the player controller blueprint like the screenshot.
Removing the connector before setting the mouse cursor and moving the mouse, displays "Foo". But if show mouse cursor is turned on, no matter what game setting is applies, I can't get "Foo" to be printed without holding down a mouse button.
I have seen some posts like in here https://forums.unrealengine.com/t/how-to-show-mouse-cursor-without-losing-mouse-capture/578191/3 which talks about how to workaround things using CommonUI but since I haven't started working on the UI, I was looking for an alternative way.
This is probably a question that has been asked a lot, but I haven't really seen a good answer, or the answers are for pre 5.0 like https://forums.unrealengine.com/t/mousex-bindaxis-returning-0-unless-mouse-button-depressed/325857. So, asking the question again.
its been a week and i still cant make it happen its just a simple freaking spawn coin system
Likely because its already captured elsewhere
Instead of the location?
How do I know where its captured. In the blank project for eg. there is literally nothing except the player controller and the game mode.
Havnt checked anything but id bet its related to how the cursor is avtually handled in engine..
Does the same apply formold input method?
@gentle urchin Pretty much the same, yeah
The only difference is that the old axis mapping always triggers an event, even when the mouse is not moving, hence the branch. The new enahanced input only triggers when the mouse moves
But neither gets axis values while mouse is showing?
Yep, unless a mouse button is held down, then it shows
You could just calculate the delta manually
To avoid dealing with engine 'defects' 😅
Yeah, I am trying not to use tick, else it's trivial to solve
Its fine to use when you need it and the alternatives are few
Doubt engine canvas got an option to bubble cursor events
If thats the culprit then your option is either custom subclass that you use, which does this (guaranteed c++ territory) ,
Or calculate it manually
So, even if I am not using any UI stuff in my project (yet), its probably a UI canvas that is capturing it?
I believe there is already a solution someone created to work with an older Lyra project that does something similar, but they are utilising CommonUI and creating an action router subclass in C++.
Since I am not using any UI (base UMB or CommonUI) yet, I was wondering why would I need to implement a CommonUI based solution right now
ty so much for your help, i sadly couldnt get the branching bool method down tonight but im trying again tomorrow
Thats true, and perhaps theye xposed the nexessary classes with commonUI actually...
I am starting out in Unreal...is this kind of weirdity common in Unreal and should I stop getting surprised 😅
Theres a few of these waiting around for you 😅
is there some way i can access the list of sublevels of my current level? without manually creating some array or whatever
How can I make the camera snap back to start position (behind player) with the press of a button? I can't figure it out😭
How can I set Skeletal Mesh bone locations manually in runtime?
I have a bone that should also go backwards as it rotates
got it its the velocity settings
-1 in the x direction
@meager iglooSet Bone Location by Name, but ideally bone manipulations are better done in the AnimBP
I can´t find that action in Event Graph
Get the mesh in the graph and drag from it and try searching it again
Still doesn´t show up
oh does it only work on poseable meshes, but not on skeletal meshes?
That idk I'm still kinda new to unreal.
If anyone knows how I can fix this feel free to ping me.
how do i ensure an actor is always loaded if i place it at 0,0,0 regardless of how far the player is from it? i was thinking of creating some sort of a lighting manager for my lighting sublevel basically
I have the actual movement of the character in a different blueprint
Its not in the default thirdperson one
The actual clicking movement is in another blueprint
So?
Also why not include that in yhe initial question if you think it changes anything ..
Well i didn't wanna make it too long
And the other blueprint doesn't have an actual camera component only the third person one does but I can get a reference to it
I just don't know the node I need to set it to go back
I tried to set it to be on middle mouse button
but that did nothing
So do I just get rid of the "Set control rotation"? I'm still new to this and I haven't played around with cameras before so this is uncharted territory
Whats your method for originally rotating the camera?
Hey I just finished watching a video on Blueprint Communication. So am I supposed to use "Cast To" every single time I reference another class?
Hi, is there a node that allow me to know which actor in a table has the biggest X position?
X or Y, or to know which actor is the closest to me?
no
why not?
go PM
Casting is a very expensive operation. In BPs where you'll be referencing the same class several times it'd be better to cast once on BeginPlay and save the output to a variable, then just reference the variable wherever else you need to access something from that class
Its not an expensive operation. Of course, if you're going to be need to cast the same item multiple times it can make sense to only cast once and store the new type so you don't have to repeat the cast.
Yes that's what I meant, only use cast the first time when referencing a class
Hey, I really would appreciate some help. Could someone tell me why the casting works in the function but not construct? Works:
Doesn't work:
More info: It's a UMC widget
when/how are you constructing the widget?
If you're struggling to understand casting, it usually means you don't yet understand classes and hierarchy.
If I create a variable of type Actor, I can store any object in that var that inherits from the actor class. That object could be a chair, car or even the player character. I could instead set the variable type to Character which would mean only objects that inherit from the character class can be stored in it.
When we cast the var, we are checking to see if the object inherits from the casting type. The cast node then returns the object ref as a new type which allows us to call functions specific to that class.
You cast when you need to. It's as simple as that.
As a little advise though, you want to avoid casting chains (where you perform another cast when a previous cast has failed.) If you need more than 2 or 3, you might need to instead look at possibly using a Blueprint Interface.
I'm creating it withing the player bp
so that's the same player which is the widget owner?
Should be? It's working within the function
How does a Blueprint Interface take the place of casting?
I was under the impression that casting was expensive because of the tooltip when you hover over a casting node which reads: "NOTE: This will cause the blueprint to always be loaded, which can be expensive." Does anyone have more detail on what exactly "to always be loaded" means, and/or under what specific circumstances is an individual cast expensive as the tip implies?
I'm completely new to Unreal, tho ^^* I assume it's getting the right player because it works within the function
Execute a "message function" and if the target meets the type condition, it will run the function
is there a reason that you use this get player controller from platform user function?
ah okay
otherwise try with just get owning controller and cast it to a playercontroller
That refers to memory usage. Casts create hard references which means that BP forces what your casting to be loaded even if it's not being used. This is why you use base classes you cast to that don't have the heavy stuff like textures, sounds etc...
For example, the character class has a skeletal mesh in it but doesn't have a skeletal mesh assigned.
Also if a class is going to be loaded anyway, it's not an issue.
The reason for the message is because you can run in to problems where a single BP could force your entire game to be loaded.
or, if this is only single player, use just get player controller
you can see casting like : Something applies something on someone
you can see interface like: Something applies something on itself
I will try that, thank you 
if i cast to my player, since the player is already loaded does this make a copy of some sort in memory ? or it uses the same one ?
If you only have one type of character the player can control then it wouldn't make much of difference as the character would already be loaded anyway. It's still good to be thinking about it though so you get into good habits. 🙂
Got it, thanks for the clarification
I want to make a saving system that when you load the game, it goes back to the moment you saved it, kind of restarting the level to the point where you saved
How excatly could i do this?
All the tutorials I've seen dont restart the game at all
you have items and stuff in the game ?
That's not true. Casting is just a type check for an object that allows you to call specific functions for the class type on the object. (if successful)
An interface is a way of calling functions on an object without know (or even caring) what type of object it is. This is used for classes that need to share the same functions but don't have a common class they inherit from.
Yes
try to simplify that for people who don't know it, you arrive to my definition
it's the best open point to understand how to use them, after to go depper and understand what they mean
interfaces are more or less casts, too, just without all the overhead of the asset which may implement it
but you can't come with that kind of definition for new "dev"
one way might be to have id's for items, and the ones you got in a list. but idk about the save stuff in unreal, i just use flat files and have not serialized much data yet.
I wouldn't.
Cast is to call a specific function for the class.
Interface is calling a function that can be shared across different classes.
@spark steppe Lol, my editor crushed and after starting it again it works now.
yes
i still feel like you are doing something wrong in the code

the way you get the player controller is... unconvenient
unless you have a reason to do so
i've never seen someone use that method
either just get player controller for singleplayer
In Blueprint Interfaces, who is the Sender and Reciever?
or get the owning controller of the pawn and cast it to player controller
receiver is whoever implements the interface
I get that error
show what you did
okay thanks
get player character ?
Just the same
no, i meant use that whereever you construct the widget
the get owning player pawn in the widget was fine
The sender is what ever calls the interface function while the receiver is the target of the interface call. (assuming they implement the interface function)
A sender can also be the receiver.
I want to remove footprints in the footprint system when a certain number of footprints spawn, not in a certain amount of time. how can I do it.
Oh yeah, it works in the widget
But it doesn't work ion blueprint
weirdly
Singleplayer
then replace this with GetPlayerController
and that's the only change that you should make, the widget was fine
Okay, I did this and the casting still fails
that's unfortunate
lol
can you try to add a delay until next tick node right after begin play?
so that it waits one tick before it constructs your widget
Lol
It works
Thanks!
i guess that actor is placed in the level?
so that was some kind of race condition, even tho i thought the playercontroller would be ready before beginplay fires... but who knows
which also explains why it randomly works, as you can't determine the spawn order

Thanks for your help, appreciated
Hi i have a qustion. I am more or less creating a canon that shoots a projectile. the projectile has a hit event and if it hits the character it should apply dmg and be destroyed.
However, when i dont make the static mesh the root component it wont always apply, but when i do make it root component it always applies, why is this?
Hey guys trying to take enter/exit a car and get this error when doing so. How do I remedy it?
Blueprint Runtime Error:
"Accessed None trying to read property CallFunc_GetLocalPlayerSubSystemFromPlayerController_ReturnValue_1".
Node: Add Mapping Context Graph:
EventGraph Function: Execute Ubergraph BP Gill Mrap Blueprint: BP_GillMrap
Don't do this, It doesn't have a ref to Interactor in the 2nd function
You should promote to Variable the Interactor in the top event, and Get it in the 2nd
Why would I need to communication to a sub-level? For what purpose is this used?
Im not sure what you mean.
Hey Ryck when I do that I get even more errors for "Accessed none". Ive traced this to the Add Mapping Context on the BP_MRAP but I dont know what to add to make this error go away.
Did you Set it in the top event ?
Also, right click the Get Interactor, and Convert to Validate Get @pure copper
This is a seperate question, I was referring to this video. Why would we need to use this method?https://youtube.com/clip/Ugkxnfnnlb7rAgIfi7BKL3xGXMsv0AURlC1X?si=qFSzv32MUSo0aFdy
15 seconds · Clipped by jma3032 · Original video "Blueprint Communications | Live Training | Unreal Engine" by Unreal Engine
Ryck Thanks for trying to walk me through this. Tried what you just said, same error. No difference in functionality
hmm, i think the err is down here
When you want to turn off tick do you do that in the general actor tab? Becuase I think components such as skeletal meshes have their own tick as well
How can i make it so that a variable decreases by time?
Like a timer
that goes from 100 to 0 in 10s for example
Yup thats what I suspect too. I just don't know what it "wants" everything is working perfectly its just aggravating to see the error keep coming up no matter what i enter.
does it just give error , but it works ?
Get Player controller > Is Valid?
it might run once before controller is set ?
Yes gives error but everything works. How do I check for that?
Dude you are my fucking hero. It worked perfectly. Thank you so much. I almost have this vehicle working exactly like i want now. Just a few more things and im done!
@dark drum ^ (in case you didn't already see my message)
possibly a timer or a timeline
100 to 0 over ten seconds sounds a lot like a timeline
I could see components being a good solution. "One is an actor, one is a character"... sure but they're also both actors. For me, I find my interations with NPCs are so different than objects. Objects have a lot of additional functionality so I have them as their own class. Some of the base functionality of interacting (showing a widget etc.) though could be moved to a component and then used as required with the different types (i.e. NPC, Item).
finally after one week here is the spawn coins logic made by chatgpt
cool now what if you want to change something in it? there's not a single comment and you don't understand your code!!
W learning
than i wont change anything
The generic act of interaction could still reside in a comp, even if item vs npc do totally different things
You dont need the full interaction code in the component, just the commonality
Yeah agreed. That was my point in the last sentence.
Right, sounds like we agree then ^^
Was a test in between the 8 variant ive done fprgpt to delete it, basically it does absolutly nothing. The problem still remain without it.
When you want to start decreasing, flip a Boolean on, then in tick get your current value, subtract delta seconds * decrease per second, then set your value with the result. Make sure to clamp the value and that your logic to turn it off will def get hit.
what do i do the get parallel lines like the picture i attached my results with the loop i have trail like line when i use a single socket but when i use a loop well you see the results!
Youd want a vector array
Of the same size as the socket array
And store the last socket position in that array
like instead of getting socket location i pre store their location?
Thats just one.
You want an array
And "setArrayElement"
With the same index as the socket index
First frame you only cache them. Next frames you trace between current and cached
Perfect^
Draws line from Prev(0) to Current(0) , Prev(1) to Current(1) etc
without clear , it would re-trace everything each frame
Wait.
Not like this
Perhaps this works aswell
I spoke to soon.
No reason to cache the socket locs one extra time
Especially not each frame
I assume this really is triggered from a animNotifyState
So we got a start, a tick, and an end
yes
So id basically gate it with a branch
Start -> set bFirstFrame to true
Tick -> branch(bFirstFrame) -> true -> cache locs -> bFirstFrame = false
.. -> false -> trace from cache to socket loc
Possibly enable / disable tick at start/end
Depends on if you need it for something else
wouldn't previous locs be empty the first frame?
Hi there, I've been attempting to add corner correction to avoid bouncing away from corners but SetActorLocation causes some jitteriness. Is there a way to smoothen the movement between locations?
and throw an error?
Predict the collision
yes, and that would make the For Each loop not fire, no error
shouldnt error
Yesh foreach is safe that way
i mean that!
true only in bp but i got what you mean!
i mean if it's an index out of bounds it just crashes
so what do i do for the previous location when i was doing it for a single socket i just set the endloc to start loc after the line trace
i do same here?
Sorry, how exactly? I've been using raycasts to predict collisions but I'm guessing you mean to test for collisions at the new location before moving there?
Raycast yepp
@gentle urchin you there man?
yes, and it didn't draw anythin prolly cuz there's too many elements in the arry
Ah yeah that part seems to be working okay, I moreso meant how the sudden change in location causes some jitteriness.
my will should work just fine with 1 socket
and clearing it as he suggested would mean the array would always be empty
ohh i mean i had no issues with one socket!
Clearing your Current positions so they can get re-assigned next frame
i just use the sock loc and after trace i set endloc to sock loc
with gave me a tail like line
With the trace you can interp the offset over a few frames and not instantly
i wanted to do it withmultiple socks each like parallel to eachother!
does that not ?
you mean the one you suggested?
yes
yes that's what i set up based on you suggestion!
it doesn't prolly cuz the array has add 50+ element each trigger
if i clear it as you suggested then each frame the array would be empty!
did you test this on your side?
You cache it first each framez so it wouldnt be empty
aright one sec
testing now
Can you use VInterp between the current and new location?
Sure but you need a few frames for it
So you gotta start it before it needs to be done
something like this
this is set at the start of a notifystate
and at the end to fales
This method usually breaks as soon as you have low framerate
same as this one?
Im useing tick because i dont have anything in project that is animated
yes
that's okay just asking!
yes , first frame Previous Locs is empty,, but it gets set to the same as Current Locs
Thanks
I'll try it out, although not sure on how you start it before it's needed. 😅
so 2nd frame , Previous Locs = the frist frames locs
i think the first pick you sent was little blury i thought you cleared both array!
You define "needed" as a give distance before the collision
You assume their intent and guide them a tad
Id have two values. One for diatance for start moving, and one for max moving
So if they're to far from the edge id just ignore it
Ahh okay gotcha thanks
https://app.screencast.com/GtZAukYaGSsIk in action
Don't mind the logs it's all fixed just need to remove the logs😅
yea i know it's Frame rate deepened
Ive seen plugins do some anim substepping tonsolve itn
i'll have do a work around for thar, prolly subdivision based start and end locs and
just incase!
Minimum playable is +20 fps id say
def!
Which is a stretch
i guess that could be a start!
Hello! Does anyone know how I could make essentially a pointer for widgets to use with a VR controller (exactly like the debug line of WidgetInteraction), trying to learn how to make interfaces but I cant figure out how to make a simple dot show where im pointing... I know theres the get2DhitLocation but how could i draw the dot after?
I'm using Instanced Static Mesh to spawn some Cubes and then move them towards a location using 'Batch Update Instances Transform'
This works but the moving cubes have no collision with each other?
They can block other actors from going through them, but they themselves pass through other actors
How can I prevent this?
I guess trace manually before moving to check if the there is nothing blocking cubes from moving
I made a mistake where I created an infinite loop in a blueprint which causes the engine to crash. It also crashes when starting the project. What are my options to restore the access to the project and fix it?
I could try deleting the blueprint, but then I loose it.
Any way to safely run the engine, and prevent constructions scripts to run?
Rename the bp 😅
Itll break but you might still be able to open it
might
I managed to fix it, since I'm just starting it wasn't a huge loss as I only lost one test actor.
I'm trying to figure out how to rerun construction scripts.
It updates on:
- drag (setting)
- when placed
- when finished dragging
- when an instance editable is set
But what if I have a spline component that I update. The script does not seem to rerun the. What am I missing?
Yeah I understand, but what's the common practice here!? I want to build a road system, how would I auto update the generation after updating the spline component. 🤔
you can make functions/events Call in Editor
^
So there's no way to automatically rerun the construction when updating a spline component? 🤔
I already added a button that calls into a c++ function to rerun the construction script, but that feels somewhat tedious to do every time.
I think you can hook into it in c++
Perhaps even enable it as default for that actor ... #cpp would know
okay that's interesting, I just checked this video to see when the road updates on their spline
Introducing the Crossroad Generator designed for Unreal Engine 5. This tool is tailored to produce realistic and dynamic procedural road infrastructures for your game or cinematic projects. With just a few clicks, you can effortlessly create a complex road system that would typically require hours of manual placement of individual assets in your...
for some reason they update the spline by selecting the actor, not the component
is that perhaps a special logic?
Is the spline the root component ?
in the video it's under the DefaultSceenRoot
Class setting of Component
That would be very performance intensive imo
I'm talking about 500 instances moving at a time
Can do 500 traces
Your options are limited
You might wanna frame slice it a little, for the price of some accuracy
Got it working, thanks so much!
Final solution was? 😄
VInterp seemed to do the trick, had to play around with the Interp Speed a bit
the component doesn't have this, the blueprint class setting has that setting which is ticked by default. In the linked video above they always have the bp actor selected in the outliner. They can individually select spline points and drag them around without the the details panel to switch over to the spline component. 🤔
ISM aren't made for moving around ... I change ISM instances to Static meshes, move them, then convert back to ISM
that actually works 🎉
move with collision ?
But I want to move them constantly
Basically Vampire Survivors where enemies are ISMs
They barely have collision 😆
thanks everyone, I appreciate the support 🙂
But they do not overlap onto each other, there must be some kind of collision
Currently, in my setup, all the enemies just merge into one eventually when chasing a target
Hey everyone I need some help with the logic of this jump system, it still double or infinitely jumps. Here's the logic break down and the script:
Starts at the world location of the capsule collision and ends at upvectory times return value times trace distance times 0. This enable ray tracing at the bottom of the egg always.
Then we extract data via hit result and check if jump detection is greater than or equal to 55 in order to determine the distance against the ground.
Next we set jump detection to true if it is in fact greater than 55 and false if less than.
Next we apply impulse if jump detection is true.```
https://blueprintue.com/blueprint/1sawr-py/
Let me know your thoughts on this
Not using built in jump are we?
I built a custom pawn, the character component wasn't working for my purposes
The trace only accounts for initial jump(if even)
And if dist is >= so ofc it alloes multiple jumps
You reset the detection the same frame..
You want to retain jumped status untill you've landed (or done something that should reset it)
Right right, I've made those changes but now my ray trace only works on the first frame... any thoughts?
Why is there jump detection in the first place?
Isnt that simply Jump() ?
Jump(-> apply force -> jumping = true)
If anything you might want ledge / fall detection
when i hit some objects with line trace with character i want to change the blendweight of a postprocess, how can i do that_ cant call events on lvl bp
Is there a way I run an exec based on if a particular pawn is possessed? Event Possessed seems to not work properly for my setup - I believe it's because I'm using the same Player Controller for all the pawns. The "RecordedLocRotData" string is being printed even when the HumanPawn is not possessed in this case
Read above
Hello, I'm new to this and i realize this is a pretty beginner question, but i can't really find any tutorials on youtube or in the forums that explains it. I have an invantory system that uses a vector point infrount of the player to target an item to delete/add it to invantory. I was only able to get it to work by "Get actor of class" I want this to work for all items using my item parent class, but to use get all actors of class you need an array, but i am using an equal blueprint to check the actor hit. Do i need to change what i am checking or something?
You want to comparenclass if anything
so get class of actor hit then check if equal to arroy coming from get all actors of class?
Id suggest doing some proper encapsulation of the logic and move the responsibility of what happens if the item is interracted with
To the interracted item
that event possessed is on the controller ? mine says pawn not controller on the event
So pickups can be picked up, doors can be opened, traps can be activated, by the very same interaction logic (seen from the player bp)
I sorry, i neither under stand how to do that nor what it means, do you have a tutorial you recommend on learning it?
Key input in level blueprint executes Possess HumanPawn, then in HumanPawn there is the Event Possessed exec being fired into a timer event for print string
The char should care what it interracts with, it simply wants to interact
right so the problem is the timer doesn't stop ?
because the event should fire when you possess it, i just tried it out seems work fine
but your timer may keep going
Problem is that timer starts before the pawn is possessed
It starts as soon as the level begins
and those events are on the humanpawn ? and they are firing off early ?
idk when it "really" fires off, but i would guess on possessed
The event is in the HumanPawn. All the level blueprint is doing is possessing the HumanPawn when a key is pressed. The event is firing as soon as the level starts instead of when the HumanPawn is possessed
what is your default pawn in world settings ?
I have it set to another Pawn, SpectatorPawn. The SpectatorPawn does not have the same event code that the HumanPawn does
I want to remove footprints in the footprint system when a certain number of footprints spawn, not in a certain amount of time. how can I do it.
What could be causing my ray tracing jump to double jump?
where do you set the boolean back to false ?
After jumping
I still dont get why this is a trace
after pressing the key, or when does this execution run ?
Trying to make it constantly jump?
After pressing the key the boolean is set to false
you can double jump at any distance ?
If you're using physics you want to use Event Hit to detect when you're back on the ground
start drawing the event hit hit impulse and normal and you'll figure out how to proceed
Yeah I was trying to do line tracing but this seems to be the best method
im trying to get a smooth transition from 179 to - 179 the character is looking behind and when the player rotates the mouse past tipping over the -179 i cant work out how to get the character to smoothly turn head and not just snap
is there a way to get landscape/terrain heights along a predicted path/line for an actor? I'm working on a dash ability, and i want to modify how much Z axis launch is applied based on what might be in the way of the actor. A ton of line traces would maybe work, but seems hacky, and could potentially miss local maximums in the landscape
for example, if i were to activate the ability here, i'd barely move without taking the landscape height into account
you might be able to play with Predict Projectile Path to help get what you want
you could maybe have some preset Launch Velocities. You could loop thru and Predict each once to see what would give you best result
oooh you don't even need to spawn in a projectile to use that functionality? Sick i was thinking i'd have to spawn in an invisible projectile or something
ok this is really interesting, i'll look into what kind of data that prediction returns
tyvm! Much appreciated
nah its fairly instant , as long as you dont use too many Sim Frequency
I used it to preview Launching myself in a catapult
I'm not sure what that means, but i won't be firing this off a ton of times in a row or anything
hahaha sick
Its how many preview points are on your arc, you only need the end point
oooh right, so if the end point is super close to the pawn, we can assume there's something in the way and adjust the launch accordingly
So we'd always be launching the player with the velocity that gets the furthest distance?
1 way of doing it
wouldn't that always return the same launch? Whichever has the highest X/Y values?
Err, hmm i suppose you could have your Velocity List contain launches for like "long and low to the ground" and "short and higher off the ground" type velocities
i think uphill a higher Z would help , downhill a lower Z
might have a tree in front so launching too high would hit it so a lower launch is better
exactly,
riiiiight ok
and build them right before depending on your char rotation
and give air control to make it fun to steer
ooo you're so right about the air control
nothing better than swerving through some bad guys
yup
i should be able to get something working with this :) ty again
is there any node that can download the contents before the game starts?
Download what contents? Before what part of your game starts?
In the main menu, downloading meshes and compiling shaders.
I will try to use the ChunkDownloader plugin.
Is there a common way of creating a semi-paused game state? Like for example opening the inventory pauses the game clock and all npc movement, but you can still interact with the inventory, organize chests, and the surrounding ambient sounds and music continue? The only nodes I know of are the Set Game Paused and Set Input Mode ones, but neither really accomplishes that.
your widgets and actors have a TickWhenPaused flag you can set.
Hey guys! Is there a way for a blueprint actor to not evaluate while in editor? I have a heavy BP actor and it keeps evaluating in the editor and making it working in the editor next to impossible due to the lag. So I was wondering if it would be possible for the BP actor to be placed and then not "evaluate" itself every time a change in editor is made.
You technically wouldn't need to cast for that particular function. OnDestroyed is an event dispatcher that exists at the actor class level - The return value "get player pawn" should be sufficient to plug into your OnDestroyed bind.
hey everyone, how are you? happy sunday ❤️
does anyone know, why all of a sudden, my character will not move or look around when running the game in the editor? here is the blueprint for the character. this issue is rattling my brain because i do believe im pretty good with ue5, im sure its something simple ive overlooked.
is there anything i need to do with enhanced input action setup?
again, im pretty confident with these tools and its absolutely stumped me.
I think you need to connect to "Triggered" or "Ongoing" instead of "Started". If I remember right, started will only fire one time, where your movement input needs to be continually firing.
Apart from that, are you certain your character is being possessed?
thanks Datura, I did try that, however none of them are working. Yeah I double checked game mode etc, I have widgets running on the char BP that are working. I just cant move or look lols
Set up / init your input mapping context somewhere?
Unsure how to do that/ what that is.
I just connected the inputs to logic in the char BP
and setup IMC
Ahhh that fixed it
I forgot to initialise the subsystem... thanks @dawn gazelle ! ❤️
I have an animation state in the mannequin's AnimGraph that transitions based on a boolean variable in the graph. How can I toggle that boolean from the third person player controller event graph? Is there some other method I should use to trigger it? It's a one-shot victory pose for now, but ultimately it would be an attack animation.
You have your animation blueprint read the value from the owning character in the "Update" event and set a bool value in the animbp. You'd then use that animbp bool to drive the state change.
In otherwords, the character has the state, the animbp reads the state and sets its own bool for it, the animbp bool then controls the animbp.
Wow that's pretty wild. That's backwards from how I figured it would go.
...and with that I got it. Two hours of my life.
How can I make comment section titles larger whenzooming out?
You cant
yea i figured :/
But theres an option for showing iit as a bubble when zoomed out
wish it dynamically sized
how tho
or where's the option
Where you change color etc
Colors help aswell
If you manage to stay consistent^^
Also functions
They're amazing
yea I only recently got into making functions for the other systems
I plan on adding colors to coordinate with specific systems when i integrate more mechanics
Also, seems like your char is responsible for more than it should regarding pickups
Its usually cleaner to separate put the logic of "what happens if this is X" inside X bp
yea so I would love to make this separated into my existing Inventory system, which is the Inventory widget along with the graph and functions
More maintainable and expandable aswell
i'm working on making things more modular
I recently learned that view bookmarking in BP editor is also possible. You can zoom in on certain parts of your BP graph and mark the position with CTRL + 1-9 (not keypad) and then quickly switch to bookmark locations you want to work on by pressing Shift + 1-9. Perhaps you already know that but it's worth sharing anyway.
appreciate it!
does anyone know how
I can eliminate this overlapping flickering effect in the background?
I'm currently using a tile map separate from the platforms that I've added as a background
So it's not all in a tile map, but that's how it was before and I had the same problem
If I want to detect if an enemy is in proximity, is a line trace or attaching a collision sphere to a player less expensive?
I have an actor compoent, with an ower, and i want the component to be able to execute or signal the parent that something happened.
Is there a good way todo this?
do i have todo this up or down?
i would like todo this up
i want the component to handle itself and its master
not the other way around
i dont think this will work...
Ypu dont want the component to own an event that belongs to the master
ah shit
This also implied that the comp must know the owner
But why would you.....
You dont need either of them...
Just use a dispatcher
And let the owner do what owners should do.
If theres something they should react to, they should implement it
hey folks, can anyone help me to figure out the correct way to "spawn" an "NPC actor" with a custom "AiController" and "BehaviourTree"?
i figured out some things but struggle with the correct order of function/event execution so that the NPC gets spawned with i cutom "AiController" and a cutome "BehaviourTree"
In the npc settings you can set its default AI controller, and ifnit should be spawned automatically on spawn
yes i did set my custom AiController as default controller in the Actor. it gets strange at the point where i try to "GetControlledPawn" in my custom AiController which tells me is "none"...
i also did set "Auto Posses AI" property in the NPC actor to "Spawned"
to specify my situation: the NPC gets spawned, but the "GetControlledPawn"-Function gives me none when i try to use it, which i do realy need in order to get and set the BlackBoard-Values of the referencing BehaviourTree... at least i think i do need it to do like that...
How do I make a Curve on runtime?
how do I add values to "Float Curve Structure" ?
not sure you can in bp only
runtime float can add in defaults or external curve pointers
if you do any c++ you can make function for it
not straight forward to edit them tho
hi there when i am duplicating a skeleton , some bones are getting like this "The Bone exists only on the skeleton but not on the current mesh." and all the sockets atteched to it i can't really move , please help spent already 2nd day on it
How can i keep applying damage if character still in the zone?
I know i can use event tick but idk is it the most optimal way
I just like to make a curve and then get the value from the time line is there any other way to do it in BP @gentle urchin ?
Found the c++ code here https://forums.unrealengine.com/t/how-to-get-a-value-from-a-runtime-float-curve-structure/146059/4
Here is a basic setup to do 10 damage every 1 sec while overlapped
how many points on the curve? i have a system that makes a curve from 3 points
there is an edge case here, where if something else end overlap, it will cancel it
yup, basic setup
lots of checks and such to do
makes sense
creating a blueprint function library in c++ was fairly simple starting with blueprint project, it just changes it to c++ and you load up the ide first instead of editor
if you need some functionality that c has, BFL ftw
Does anyone know why a "Get Controller" node inside a player character BP could return null in a multiplayer scenario?
I am using a BP interface to set the reference inside of the player controller, yet on the client and on the server, we are unable to get a reference based on the Get Controller node
What is especially strange is that I have the exact same code in a different multiplayer project and there it works absolutely fine
Controller may not exist yet
And that BPI looks whack
Why is it even there 😐
Cast to your playercontroller instead
Was following a udemy tutorial on multiplayer dev in UE5 and the tutor recommends to use BPI's for getting the reference instead of casting because casting will slow down the load time
Now I know that casting only gets problematic when you are doing it dozens/100's of times, but didn't want to immediately deviate from the tutorial
Is it possible to hide these "LevelData" stuff ?
Casting is mostly bad when you cast to something that may not be loaded
Controller will always be loaded
Changing it to a cast produces the same results I am afraid
You also create a hard link between the bps in question but thats another issue/consideration
Beginplay is not really suitable for init in multiplayer
You can try event possess instead
You could filter it out of your content browser view using the 3 little horizontal stripes in the top left of your screenshot, but not sure why you would tbh
Ah okay, I am gonna change it to onpossesed to see what happens
Because I don't like seeing those as I never use those but I click on my levels most of the times to open them, so it will reduce the cluter there
Right I see, then yea maybe you can filter it out or you just place them in a subfolder
Right, but how would this then work on a client?
Try the other event instead
Onswappedcontroller or whatever
Still the same issue it seems
Not possible😅
I also tried adding a delay on an isvalid macro to see if ultimately the reference would become valid, but that also wasnt the case
Print displayname of getController
Hey guys! Is there a way for a blueprint actor to not evaluate while in editor? I have a heavy BP actor and it keeps evaluating in the editor and making it working in the editor next to impossible due to the lag. So I was wondering if it would be possible for the BP actor to be placed and then not "evaluate" itself every time a change in editor is made.
Results:
Beginplay = No displayname is printed (null)
Event Possessed = Print string is never fired.
Controller Changed = Print string is only fired on the server and prints nothing (null).
Also, just for reference this is the full code in the project where it works flawlessly:
Sounds like ur not possessed
Also, you csn get the enhanced suubsys from playercontrollet
And this is the code of the non functioning project
Yea that must be it
Also AFAIK you cannot get the Enhanced Input from the Get Controller, seen as it is a Player Controller system. But I cannot just get player controller, because then I need the Local ID of each of the local player controllers
Get controller -> cast to playercontroller
Right so when I do that, and I take the Receive Controller Changed event, the reference is valid, yet it still cannot retrieve the enhanced input system
Its a listen server setup at the moment
This is the code for possesing the character
It gets called from the gamemode on the server
So I have definitely run it through the server before I come here. Print strings confirm that is what happens too
These interface events makes me cringe 😕
just cast to everything 😎
This spawn event is in the pc?
Yea
No need to cast a hard ref thats already the correct type
Server or client side?
well then why use an interface?
PC sends event to GM server side to verify if we are allowed to spawn anything. After confirming, GM sends signal back to PC at which point we follow the above logic
So... server side?
Yea
you don't need an interface for that if that's what you mean
I have removed the interface as I realise it is obsolete
Completely bypassing the spawning and possesing logic and letting the gamemode take care of it also does not solve the issue
which is strange
Valid default classes in gamemode?
Yea nothing in the default pawn, as I am spawning those later, and the player controller class is also the right one
Then the gm cant do that for you atleast 😅
I don't understand. All the GM is doing is getting a server verified spawn transform, who then passes it on to the player controller that requested the information
and I can see the characters spawning too
and it works perfectly in the other project, which confuses me quite a bit
It does sound kinda strange
There might have been a function output node not passing on the correct integer for setting the game input mode
So I was only controlling the UI, which meant I thought I could not control the player because the ref was wrong
So now it works on the client
😆
but not yet on the server
probably because Set Input mode is a client only thing
Yea indeed
my god, I hate it when these types of bugs happen, they cost so much time, only for it to be such a small issue
Controller reference is still not valid though on the server
An interface is for when you have different classes that don't share a common parent but need to have the same functions.
Something about your logic is flawed 😅
#multiplayer is no easy gig
Yea it really isn't 🫠
I'm sure this is a FAQ but ... Any one not happy with the right-click / drag on blueprints for a few versions now ? It seems since they moved to the enhanced input system, this has affected how I can't drag my blueprints efficiently anymore without the context menu appearing before or after the drag ...
This doesn't happen for me in 5.3.2? Maybe your mouse is adding an extra click input? I had that a few months ago, had to replace the mouse
Hmmm. You're probably right. It was still a relatively new mouse.
hey devs!! this is a stupid one... so basically I am trying to get the normal from the line trace and the image is how I am doing it... however, the debugged angle of the normal is not what I was expecting coz its more than 90 degrees between the player and the normal line... what could be the issue
You're inverting the in angle
So exit angle is the same ,
Its 90 between if you aim at 45
its the same from every angle
basically, regardless of where you start the ray from... it points towards the same direction
see this
this is no way a 90 degree
probably because a normal is normalized and your going to those coords is probably around 0,0,0
you are getting the parkour arrow (the blue one) from it's world location yes? Where are you spawning the parkour arrow? Where is start pos and end pos going to?
not sure if thats the case coz the dot product is somewhere like -480:
Hey folks, dumb question
I have a data table, I want to dump it into an array of structs, all the data table nodes i'm finding is like "get a list of names"
is this possible or am I not supposed to use them this way? lol
the parkour arrow is basically a child of the player... so when the start position is the forward vector of the arrow... and end position is just a straight line
and the blue line is the normal which this is producing on hitting the block
Unreal 90 degree
Jk
Ur right, and as pointed out its normalized ^^
Its a direction vector not location vector
Hit loc + (hit normal * 100)
my brain farts now🤢😂😂
lemme give it a shot
im prototyping a mirror based puzzle game, and since not all people have rtx cards, i cant use ray tracing.
i also cant use sphere reflections cuz i need to rotate the mirrors in the game, and they also dont give a good reflection when mirrors are used as the main object in the game.
planar reflections works fine, but problem is that when i have multiple mirrors, it creates multiple duplicates of the level for each mirror, which ends up lagging.
so my last idea was like in portal, use cameras with clip planes. this would work fine in theory, problem is that i have a bunch of problems with the camera rotation and such. this can be seen on the attached images.
since i havent found any info on this online, if this ends up working, i'll make a youtube video on it.
any help would be appreciated!
You might be expecting the impact normal as opposed to the normal.
not sure if thats the one... coz I tried using that as well instead of the normal vector... but the result is the same
Thats also normalizedn
Having multiple cameras would be the same as using planar reflections. Each camera would have to render the scene multiple times. (just like the planar reflection)
So same thing applies
yea, but if i remember correctly, planar reflections create a duplicate of the level for each instance, while using cameras only use one level
i could be wrong tho
As far as im aware, planar reflections don't duplicate your level. It just has to render the level again from it's perspective.
Are you trying to do bounce direction?
re-reading the documentation yes you are 100% correct 😅 . it says it just renders the scene twice, and i completely misunderstood that. thanks! 😄
I am just tryingto get the 90deg angle from the hit
Why 90?
I believe normal is exactly what it means in physics terms
Cross of initial direction and hit normal. Then cross of the result and initial direction
Cross(direction,Cross (direction, normal))
You got silent. Did it work?
Does anybody have a better way to build out this data asset library ? It’s a list of about 350 cards and I’m currently on 51, I was thinking if I imported a the excel sheet as a data table I could create an editor widget to run through the data table and create the data assets along with their needed data but wouldn’t know where to start. Also is this a good way of doing it having 350 data assets 😅
You could import the table as CSV.
That’s what I planned on doing but how would you create assets using blueprints ? I’d need to loop through the data table, get the stats and create asset at the correct path location eg - CreatureCards_Set01_Fire_Common then the asset by getting the name from the table DA_CardName then with this new asset add in all the data, I could finish doing it manually just thought they’d be a quicker way
Hmm yeah. I gotta look deeper into this.
I think you would need to use something like the Construct Object From Class node to which you pass your typical card class.
Yeah I had a look at the python script executor, you could run a script to but you’d have to edit the script each time it ran to set the cards to the correct location
Use an append node to set the correct location and then run the script but I’ve never used it before
Unfortunately I cannot see how to save package other than in C++. UPackage doesn't have any UPROPERTY decorator.
Does anyone know how to make this work?
I tried /Game for Package Name but it always returns empty array
I've read dozens of topics, but none of them have been able to use it. Does it really not work?
You have to search for a class reference with that one
Make a variable of class type and then plug that in to the class path name I believe
am i doing it wrong
Yeah I think it’s get class name off of that pin, I’ve got the setup at home but I’m at work right now other wise I’d have the exact answer 😂 I’ll be home in a few hours if you haven’t got it by then
Phew!! finally I got it to work!!! @gentle urchin 😛😛 actually I was going with the wrong approach... Actually I am working on a parkour mechanic and the reason I wanted to get the normal was to calculate the vector at which the player will grab the platform edge... however, I figured out that the problem was that even if I managed to find out the normal, how would I manage to figure out which direction to project it on... coz for climbing the normal has to be a +ve on the Z axis... which is why I decided to go with the bounds approach... now I am calculating the bound from the hit location to the top extent that gives out the distance
If i have an actor loaded in the level, and inside another actor i cast to that actor, this will not make a copy ? or when does it actually load another one ?
I'd really appreciate it :)
Actor A gets loaded when Actor B who hard ref A is loaded, or when A naturally would be loaded if B is out of the picture
Not really the instance either, but its cdo or smth
Which can be basically nothing if you have an asset free parent class
Just a tip I’d probs try and use an interface for something like this instead of casting
devs, help needed! I have two timelines: one opens/closes door and another which moves lift up/down. At pic1 there is only up/down animations, but when I add door animations (pic2) both start playing at the same time. How to make them work one after another, w/o delays?
I’ve created a custom player BP from scratch (for the learning experience I guess). Whenever I create a new level and try to drag the player BP into it from the content browser, I get an exception access violation crash when attempting to play in the editor that points to UCharacterMovementComponent. I don’t get this crash if I simply duplicate a level that already has the player BP in it and play that.
I’m using the third person template game mode and I have set it to use my custom player BP by default. If I use the third person template BP and have the game mode use it by default, there is no crash. So I’m assuming the issue is with my custom player BP. Any ideas what could cause this crash when dragging it from the content browser but not when duplicating a level that already has the player bp in it?
Is there a reason you used tons of magic numbers in the vector?
I'm gonna come back here later, had I few problems with relative locations so that's why
I want this to be true of the actor is looking at the self ref (spell) but I am not sure exactly how to do that. I think it something like if less then 35 and greater then -35 but I am not sure
Wouldn’t you just see if the actor’s rotation matches the look at rotation to see if they are looking at it?
oh yea that works sorta but it to precise they have to be looking at it exactly I want it so if they are looking at it within a 35-45 degree arc.
Think like if you are looking at a bright flash light. If you are sort of looking in its direction it blinds you if not it don't effect you to much
Gotcha. Once you have the floats in the look at rotation I think you can use nearly equal and mess around with the error tolerance node to get what feels right
Isn't that something to do with dot product
I think the nearly equal node just sees if a float is within a certain range of another float, but I may be wrong
Output should = 1 if looking directly at target, -1 if looking directly away, 0 if looking perpendicular
Thank you I will try it out
Question: how can I limit mouse cursor position in the viewport, so it won't go to edge, "give mouse a bouding box"? Just do the simple If check for mouse position and If it goes above set coordinates number fail it? Or there is smarter and simpler solution?
I have an actor with a physics control component when i get closer to the actor i destroy the component and stop the physics then drag that actor around by attaching it to me when iam done draging when i get out of the specifed area i create a new physics control compnent and intlize it with the new location and rotaion but it immediatly snaps back to the original place where i draged the actor ( the compnent is destroyed before i begin dragging) any idea why this behaviour happen ?
Thank you! That worked perfectly!
Hello, I have an array of structs converted a struct that to a JSON string. Does anyone know how I could get that exact struct out of that struct?
break node or right click on the pin and select break
I'm asking how to convert a string to a struct using JSON
I am not sure you can do that but you can map> add and break the input and input into it
try that
sorry that should read "break" of your structure, not make,.
Brilliant, thank you
Oh, actually though, it doesn't seem to serialize 🤔
I guess 5.1 doesnt have that function :/
try that one ?
I can paste that but its only "Get Assets by Class"
I have it
I cant have Get Class Path Name
so you cant do that one either ?
If you have time, can you print "Get Class Path Name" value and tell me so i can understand its logic and use manually
I dont have other engine versions :/
I'm working on a tool that works in editor, not run-time/pie
Does anyone know how to create an event when either:
- The user's selection was changed
- A particular item was selected
I can check if an item was selected. But I need a way to create an event when this happens.
? that, if it helps i am working inside an editor utility widget ?
I meant print the return of "Get Class Path Name" function via "Print String" 🙂
