#blueprint
402296 messages Β· Page 908 of 403
Not sure if anyone can help with this? I have a widget that is displayed on right clicking items in the inventory. It contains a list of clickable actions for the item and those actions change depending on the item type. That all works fine. I want the widget to automatically close when the player moves the cursor off the widget. That bit also works fine. But then clicking again on the inventory items doesn't do anything. It only lets me open the widget once.
I'm pretty sure it's something to do with the focus not returning to the inventory widget after the list widget closes. I'm literally telling it which inventory widget to focus on afterwards (there are a maximum of 4 'bags', so it should focus on whichever one was open when the list widget it opened), but it doesn't. Any ideas?
could you show me in voice chanel?
Print string.
No hand holding here, just right click, add a print string node, and see if the axis event is firing. You haven't said what actor this code is on, whether or not you're even spawning the thing or possessing it, nothing.
like this?
it started to show "hello"
Ok now drag the axis value in to it and make sure it's not just 0s
Then set something to USE the control rotation. You're modifying control rotation, but not using it for a camera or spring arm anywhere probably.
Yeah.
Now move your mouse up and down in game and check that the value changes between 1 and -1
Ok so can at least confirm the input is making it to the Control Rotation. Now show your camera settings
Anyways. Do you have a spring arm?
Fast mouse and low fps
Camera or spring arm whichever you have
Oh.. I thought it caps it to the set value.
This goes up to 10
Nope on your component list
No it's degrees moved that tick
Oh okay.
@finite venture find where it talks about control rotation in the camera settings
where i can find it
In your components list. The first list on the left.
Click on the camera and check the default values on the right
Just dig around. You're in for a bad time if you can't take some initiative and figure shit out.
Honestly... You even need a few online tutorials or documentation
i was
and in the first time it work
What changed?
Anyways. Click on the camera and look for use pawn control rotation check box on the right.
@finite venture Show the settings in the camera component that talk about control rotation
See the use pawn control rotation box? Tick it
thanks it work
Great. Now go and learn properly how to navigate the engine.
Not everyone has the patience to answer mundane questions.
Good luck.π
thank you
Yes go Learn.unreal or documentation
hey guys can i convert a Skeletal mesh into a static mesh ?
Does anyone know a tutorial or how to do parallax 2d backgrounds?
How to change Axis Config values at Runtime
You could have Googled
Lol. Cool
do any of you guys know a tutorial on how to create a portal gun similar to the one in portal/portal 2?
first time i googled. i got a 45 min tutorial on it
You can't?
Ah..I see
Just use a float multiplier variable
altho a questionb
if i make a static mesh from a skeletal mesh then remov the skeletal mesh from project will the copy get messed with ?
No
even if i remove the textures ?
any video tutorials or only docs?
It might mess up if you remove the textures.
oh okey
But the mesh itself is safe to remove
There are videos but I haven't watched them so I can't recommend one. Honestly working with docs is (usually) faster anyways and it's important to learn how to work with docs in programming.
I've created a new struct. I go to make a variable of that struct, but it doesn't appear. I've saved/compiled everything involved. I restarted, saw the struct as an option in the variable, but when I chose it the variable didn't change type and the option vanished.
Does anyone have any idea what's going on
can i get scalar parameter value from dynamic material instance? this node is not working for me.
and i have to put there the white arrow, for other nodes "get" i dont have to put them
Have you input the correct name?
i give screenshot without the name but yesterday i set them
I checked again and it doesn't work. I just send my script.
are you sure thats the right parameter name
im sure
generally i'd say your out for some fun if you question if every node works first, before figuring out if your setup is correct
mabey because you using the vector and i using the scalar
No
Doesn't make a difference
It's not logical to think that way (first)
thats like the very very last thing you'd even question
My guess would be there is something wrong with the material
Question is rather, is your dynamic material created in the first place? Is the parameter in use? If you print the value from the Get, does it return the value you expect?
i can send the material nodes
Seeing default at 0.0,
set default to 0.1, print it and see if it reads it
etc etc
Do nav meshes cut off with distance?
Have you tried manually changing the value in your material and seeing if it changes with that
^That too
I'm not saying every node is perfect, but most of them work just fine π
And its not at the bounds i take it?
Yes it works fine and if i change it with node 1 time, it works fine
and it's inside the navmeshboundsvolume
It's a volume. Make sure it's scaled properly.
https://cdn.discordapp.com/attachments/864511860651851806/976204343348961320/unknown.png
https://cdn.discordapp.com/attachments/864511860651851806/976204393370243113/unknown.png
https://cdn.discordapp.com/attachments/864511860651851806/976204727245230181/unknown.png
https://cdn.discordapp.com/attachments/864511860651851806/976204800037367929/unknown.png
anyone know why when I play the game plays from network player start instead where my character is? I was attempting to switch from third person to first person project by adding in first person template and deleting my third person character controller.
followed this tutorial.
https://www.youtube.com/watch?v=XEad8JFNetk
Unreal Engine Tutorial 12 - How to Add Third Person Character to Unreal Blank Project
======================================
Follow the link for next video:
Unreal Engine Tutorial 13 - What is a Level ? | How to Create, Open & Save a Level in Unreal Engine
https://youtu.be/n35x13_gXfg
Follow the link for previous video:
https://youtu.be/hdHeY...
In the project settings there's a bunch of navigation mesh settings you can try adjusting. Screenshot them before hand so you can reset them if they don't do anything. But it's worth a shot.
i can change it event with node, but when i implement every tick add 0.1 to param this isnt work
these?
Yepp
Yes there might be some issues where its just too big of an incline. Or something is colliding with the nav mesh oddly and is blocking it. They're normally annoying to set up sometimes
Now this works fine. The test variable is by default 0.
After the created material instance. Try setting it
Create the material on beginplay
then edit its value on tick
assuming you want to edit it every single frame.
sounds like a weird thing to do tbh, and more something the material could handle internally, but oh well
Though it seems you're setting it to a fixed value
yeah, I removed the incline and it fixed itself
The last shot works because the float itself is saved, and fed into the newly created material, every frame
Opp yeah lmao
ok, i try to do it
This is why people shouldnt use tick lol
You should use tick for the things that need it. If you must smoothly modify something per frame, then tick is where you do it. But making a material every frame is just goofy.
Yes
Exactly
Make material on BeginPlay and update the parameter on tick is how you'd do it.
if it must smoothly update all the time.
Ideally you should never create something every tick. That just sounds bad
ye i know just goofin. new boot goofin
now this can work good? The time variable is 1 so this event is called every 1 second
Maybe?
Depends on context
Not sure what FlagStone is
You dont need to set the material every Timer() either
just set it once , on beginplay
ok i try
now working fine and this is optimized. Thanks for help.
Hi everyone! do you know what's the easiest way to show memory usage of a game in "play" mode on screen?
Say I need to apply a 0,0,-90 FRotator offset to another rotator, whats the best way to do that
Anyone know why the line (box) isn't spinning with the player or even going out in front of the player?
you need to add the end location to the actor location
Guyz, do you know what Objs means at the right ?
wouldn't that just make the line stay inside of the player and never go out?
ahh ok
Any idea why these might not work, the projectile doesnt do anything when it collides with the enemy, what should my collision settings be to fix this?
so. i got this menue that is just a canvas. how do i enable my mouse to click a button?
Are you sure the actor has the tag?
Just checked and added it to all components of the AI, still not working
not workinng
So when printing the resulting branch, its true?
code
Ok I'll try
Component, you're checking if the actor has the tag...
You also need to add halfsize to the box, otherwise swap to a regular linetrace
Yeah just testing out as the box size I need is too big for me to see
Works though, thanks a whole lot π
Sweet
.
How do I hide that white circle in blueprints?
Hi, people! I guess I have a very common issue but I couldn't find yet a way to solve it.
The thing is I have a menu that should pause the game, is a menu that pop-ups up when character overlaps a box. If I pause the game while character is moving and then unpause it, when I unpause it character keeps moving on the direction it had when entered the collision
I disable/enable inputs on entering/leaving the menu
I tried to stop movement immediately
Ingore/Reset move input
nothing worked yet
Hello everyone. Iβm trying to learn Blueprint, and there was a few times I followed tutorials online and after successfully making the action, my keyboard suddenly has huge lag during gameplay preview mode. I canβt seem to find anything online regarding what may cause keyboard lag. Any suggestions? This playlist is one of the tutorials Iβm also having these problems, https://youtube.com/playlist?list=PLNTm9yU0zou4M6cER2Scyi3lj8jBnHhAL Hope someone can help or point me to the right direction π
Hey I've got a child class implementing an event defined in an actor component on the parent class, and I want the subclass implementation to call the parent function, but for some reason it's greyed out? Why can't I do this?
Is the parent a custom actor component or the actor component itself.
If you understand?
The parent is an actor, implementing an event which is defined on a custom actor component attached to the parent
Yeah.. you can't get any parent implementation that way.
The definition is local only to the parent class.
Question?: I have a player character with a Blue Print in it. In the Blue Print I setup a Function to allow me to change the Color of each Static Mesh Material in it. The Spikes of the Choker. But I can't figure out how to access it in the player character since it's in it's own Blueprint. Could you please help. It's in the Player Character.
Does anyone in here use these two functions built into UE5?
what do I initialize in the Construction Script, and what in Event BeginPlay? is there a rule of thumb for what goes where?
Things in Construction happen in editor too. Vs Event Begin Play is only at game start. - Is one basic difference
also according to this https://docs.unrealengine.com/5.0/en-US/unreal-engine-actor-lifecycle/, you can't use components in construction, so there's one difference
hey sorry to bug but is having a bunch of empty actors bad for performance?
Probably. Especially if they tick.
like say if all the actors are used for are spawn points
and just have an arrow component
to them
It's so relitive to devices, hardware, your target fps, what bunch means. Your best option is to test it.
Probably a dumb question but Im not great at math so Im sure the answer is a simple formula but how would I make these random floats weighted
So that 3 seconds would be the most common, and .2 would be extremely rare
which would be a graph for the occurance of each float
One really easy way to do that is using curves
Create a curve with the distribution you want, between 0 and 1 in the x axis
then you can generate a random number between 0-1, and sample your curve for the actual value
I'm a noob but what about something like
There are a few you might play with just looking at the options.
@mental trellis fixed in 4.22+. Unless your actor tick does anything it is disabled.
That's good to know.
@novel wagon trime setting global time dilation to 0 instead
@mental trellis otherwise there is too much to manage
what does variable not in scope mean?
It's not available at the place you're trying to reach it
Like say you had something, and it had a function, and there was a variable in the function, when you leave the function, the variable isn't in scope anymore.
Show the error and where it's complaining
New problem, level flickers when I crouch
I have a McDumbDumb question - where do I download this asset? https://docs.unrealengine.com/4.27/en-US/Resources/Showcases/BlueprintExamples/FogSheet/
This is what it looks like
The timeline is this
@balmy apex I forget but what does the crouch fn do?
I think you have to put that at the end instead
It makes the player crouch. That all works fine, the level flickering is the problem now
@balmy apex the flicker happens because of quick translation. You are crouching and then changing the size of your collider. When you do that you change it from the middle so you kinda start falling.
I have a puzzle piece here that needs to move in 3 directions depending on where the player hits it with a line trace. In its current state, I have 3 colliders and depending on which is hit, the puzzle piece moves in the direction opposite - this is illustrated below.
Unfortunately, this feels pretty clunky, a player standing behind the piece can line trace to the left, hit the left collider, and the piece moves to the left. I also just don't like having three colliders on the actor, it feel unnecessary, like there is probably a bettor solution out there.
I have two theoretical solutions for this, both involve one collider. 1) When the player line traces the piece, they send their location relative to the piece, then the piece does some math to determine which direction is best. 2) The collider on the artifact detects where it is hit, then move in the direction opposite.
Are either of these solutions viable? Which one would be best? If so, could I have help setting up the math for these?
BoxTrace refuses to detect my enemy character
I tried using the Cast To the NPC method but it didn't work so I tried a Physics Material Surface and alas that doesn't work either
Everytime I fire the weapon it doesn't detect the NPC
Is there a way to fix that?
yo I need help
I cant drag an event from an interface onto something for some reason
when I try to add it, it says "This function was not marked as a Blueprint Callable and cannot be placed in a graph"
Idk why it does that
Nvm
I figured it out
@cyan birch do you want the hits to be realistic or based on the player's position? You could just make it register the hit based on the position of the player relative to it instead of several coliders
@keen crest detection goes both ways so make sure they can detect each other.
I'll turn on trace blocking for my player too and see what happens
All my detection issues have always been me doing bad detection
Once fixed it always worked
So probably pebkac
Same thing is happening, I turned on Block Trace visibility on both the capsule and mesh
Am I missing something?
Will try π
@zealous moth Nope, doesn't change anything
Though I did notice that it is actually detecting the pawn, but instead of a green dot it's a red dot
Yea, I think it's more intuitive to the player if the puzzle piece most in the direction opposite of themselves when the line trace connects with it.
So when the line trace hits the puzzle piece, it finds where the player is relative to itself, determines which direction is closest to opposite of the player, then sends the piece in that direction.
@keen crest hmm try setting the query to query and physics on both
@cyan birch you don't even need to do that
@cyan birch get actor location self and get actor location player and get the difference
On the Collission Enable setting?
My character disappear when that happens π
Pparent inheritance matters
Capsule component is the root and the mesh is under it
And the other actor?
Same hierarchy
What was your event that detects hit?
Line trace or on actor hit or on actor overlap?
It's in a function which is fired by cliccking the left mouse button
Show?
I'll try changing it to detect the actual actor instead of a phys material maybe it'll work now
Still doesn't work aha
So fusturating π£
As in make a new player BP or a new NPC BP or both?
Np happens
Okay, so I've set up a BPI that passes the player's location to my puzzle piece and I have a puzzle piece reference to it's own location. how do I 'get the difference?'
Vector - vector?
Difference is the result of a subtraction
Sum, difference, product, quotient
Right but like...I have no idea how to implement that, it just spits out another vector. Actually, let me think on it a little longer. I like to solve things on my own.
I would brush up on vector physics if I were you
@cyan birch there are a few ue4 yt channels on that topic
I could do without the patronization. I'm a designer trying to get a prototype going to help me onboard.
In your case you have 2 vector locations. Difference gives you a direction
Telling you what to look into isnt really patronizing Id say, just helpful
Oh I am not patronizing. Honest advice.
Vector math and trigonometry refreshers really help so you don't have to mess around for hours @cyan birch
Best I can do on a phone
Well, this is what I get for asking a question before thinking about it, much. Thank you, though. The real hard part is adjusting these number as the piece moves in a circle, with the front always facing inward.
Like a series of rocks circling the player?
Just add the directional vectors and normalize at the end
The puzzle moves like this along a track
I... what? Not sure I am picturing it right
So I'd want to know the player's location relative to the puzzle piece.
Dont wanna come across as patronizing but this site really helped me in asking effective questions on tech stuff http://www.catb.org/~esr/faqs/smart-questions.html
The site itself can be a bit patronizing in a tech-bro kinda way
But it has good tips
That way, as the piece goes around, I can know if the player is in -1,1 or 1,1 space, for example, because the sides of the orientation of the piece change as it moves in a circle.
Chill, dude. being told to 'brush up' 'if I were you.' are phrases that are patronizing, I'm not saying receiving help is patronizing.
...
I was just sharing a resource I found helpful
No need to constantly feel attacked when we are taking time to help you out
@cyan birch for that coordinate system you will want to use the dot product
I honestly don't know how to respond to this.
Thank you, I will look into dot product and come back if I have issues, I haven't heard of this before.
I highly recommend you read up o the dot product because it will be your #1 best friend in physics for anything directional and angular
I dont know, "thanks for the link" is what Id go for personally but its up to you
I don't know what you're on about, but this isn't the place for it. If you have a problem, feel free to DM me and we can talk it out.
Question about multiplayer save games. What is the best way to reassociate player data in my save with player characters the next time I run my game and load? I'm saving the names of each player, but when I load, I don't know which client's character should receive its old save data? Does that make sense?
I don't have any concept of accounts or anything in my game right now. Is there some way to save off a client ID?
is it a bad thing to make your own blueprint culling?
I have some modular houses that are actors with a bunch of components and particles that can be changed on construct, except I can't find a way to cull everything out when the player is far away, so would it be optimal to make my own cull box that just sets the entire actors visibillity to false?
but if there is a way to cull them I'd like to be informed, because I have looked up and tried cull volumes, setting cull distance on the meshes themselves, set the component draw distances, and I can't get anything to cull, and yes I have tried everything during run time as well.
You may want to look into using Steam or EOS - by the sounds of it you're going to want some kind of multiplayer subsystem anyway, and with those, you can use the player's associated Epic or Steam ID to OAuth and identify them.
If you're not wanting to go that route, then you're going to have to design a login system and store IDs and passwords yourself.
New question, this is my WASD movement for my game. When I look straight up or straight down, the character stops moving. What can I do so that doesn't happen?
I don't know what to use instead
Get camera rotation
Break rotator
Make rotator
Connect only yaw(?), and make rot fromX if im not mistaken
I have no idea how to do any of that
I can't find camera rotation in things I can add
Get
Get world rotation
Ok, and what am I doing with that?
Got it
Be a hero to yourself and figure the rest out. It will help in the long run
Unless u get super suicidal. Then plz ask for help again lol
I don't learn by just figuring it out though, that's the problem, I don't even know what I'm supposed to be replacing
I see
Well, I got it working following this and hoping I did it all right. Now it looks a lot more confusing lol
Wait a minute, now it doesn't move forward when I change the way the camera is facing
I only go forward and backward in a straight line
for most types of characters, you don't move based on the camera's facing, but on the facing of the actor itself
I don't know why you're using the camera, or why you plugged yaw into roll
or what you're trying to do
but normally you just GETACTORFORWARDVECTOR
I believe you want yaw into yaw, pitch and roll nulled out
Not if you're using camera direction as relative movement direction , like in this example. I assumed it was on purpose
Instead of all that complicated break and make shit. You can use get actor forward vector and get actor right vector
Do I just swap out the Get Forward Vector for Get Actor Forward Vector and the same for the Right Vector?
Yes
Should work. The reason you cant use camera the same way is because when the camera is looking up, the forward vector is also up and pushing you up while fighting gravity which is why you can't move
So with this setup, it still stops movement when I look straight up or straight down
Then there might be something else that isn't set up correctly. I use that same set up for my first person games.
In your input axis are you sure the axis value in the project settings is 1?
Is this only when looking up and down?
Or all the time?
Let's start with pt character can you show me the inherit pitch and yaw section of that?
This part?
Yes
^
Not sure where I find that info
You should be able to click on pt character, then on the right you should have a bunch of variables you can alter. It should be in there somewhere
Might be inherit controller pitch, yaw, and roll
Make sure the only one checked is yaw
These?
That did it! Thanks!
Basically that sets your actors pitch to the controllers and is making the actor rotate up and down with the camera
Np
Hello, Backspace does not seem to work on quest 2 for some reason. It sends "C" char instead. Any workarounds? I need it for text fields.
brainfart, i want to scale meshes in a "curve", i have an array of random length i want the scale to start at 1, progress upwards to random value at the middle, and then scale downwards to a scale of 1 at the end
ah i need it to be a smooth curve in scale, small at the ends, large in the middle, a bell curve basically
Ahh
1 /( array elem - (array length/2))^2 + 1 =this works
in android back button is not working does anyone know a fix for this ?
hm i made a variable, for a type. then i removed the variable. now i make another variable with another type but with the same name, but it wont let me use the variable name anymore, unless i make it the type as before again and use the variable name.
did it get cached anywhere or so?
weird bug
if so how to fix this?
i did
if thats fucked then restart uinreal?
i did too ^^
i defined the struct in c++ what is also weird is that when i use the struct now, it still uses the older version it seems
ah ok, weird, sorry no ideas, don;t have much experience with c++ ;_;
it seems as if the blueprint has cached the older version of the struct and also still has that variable in the old struct format sitting somewhere
weird
Anyone available to help me with my rising water volume? I need to make one and have it damage characters that are submerged in it for too long
Please DM me if so.
Hi, I have made a raycasting system to detect if you are looking at an interactive item. I was wondering if any of you could guide me to the right path on how to highlight such items. Thanks.
Look into interfaces π
unsure what u mean... i am using blueprints btw
They'll be your friend when creating a interaction system
^ I'm working with him
We're trying to get the items to highlight physically when you look at them so not sure how that relates, but will still look into it. We have the targeting working so just unsure on how to highlight the actor.
anyone?
Yes, then look at blueprint interfaces
we looked and it is either c++ or not very useful (the blueprint one)
he means you line trace, hit the object, and send an interface message to whatever you hit (if its a blueprint), then you can have that event trigger in the looked-at blueprint and do the highlightingas for highlighting theres a load of different ways, you could use a post process (google "post process outline" and tom loohman has some good examples you can download)
Hey guys, in today's video I'm going to be showing you how to highlight and object and give it an outline in Unreal Engine 5. This works great for X-Rays too!
NOTE: I forgot to mention this in the video, but I didn't come up with this originally. It has been within the community for years and no one really knows the true origin. However, I have...
and if it's just static meshes then you can have that controlled from where you do your linetrace, if it hits a static mesh just set relevant stencil or custom depth value for your post process etc
Will this work for ue4?
We are using static meshes. Is what you described hard?
Just seems really confusing and no real "start here" kind of thing
Linetrace, get the component, mark it to be in custom depth (Set Render Custom Depth)
i mean, assign outline post-process material to game camera, line trace to mesh, hit mesh, set custom depth to true on static mesh, outline appears
Can't get any easier than that
We have linetrace but hm, ok
Do I call that on the hit component?
yeah, you can cast to static mesh if you want
then it'll only apply to hit static meshes
Item only has one static mesh
Or cast as Primitive Component to apply on anything, even skelmeshes
Sorry, Cast as Primitive Component is bloat, the output is already Primitive Component
Yeah
So I have the set render custom depth, I guess I check the value?
Not sure what to do then
you will need to store that hit component as a variable and then disable the custom depth when the line trace stops hitting it - like "lastHitObject" or something, then update that variable with the new hit component - otherwise once an bject has outline it will always have outline, but you'll see that when you get that far
i mean check all the other stuff posted here, you need to get your game camera, assign a post process material that is using CustomDepth to mask in an outline - there's a bunch of materials you can just download and use, gotta google a bit or click the links
I've read over those and not too sure is all. But I'll re read them I guess
Hi guys is there a way to check which widget element is the mouse currently hovering at?
Widget Reflector (only in Editor i think, not in Standalone)
where is open level bp in ue5?
Yeeeah I have no idea π
I believe Level BP got removed in UE5
so how can i set camera to character?
static camera
As in oldskool fixed camera?
how?
camera location, pawn location, findLookAtRotation node, run it on tick
will make a static camera track the player
^
Also the function can be contained and reused in an actor with camera component
if u have a camera in your player pawn it will be used, remove the camera from there, place a camera in the world
and if i wanna re attach or something ?
oh well, then leave the camera in yur pawn and use Set View Target With Blend to change to a differtent cameras
where ?
in character?
wherever you want to control the camera switching from, doesnt really matter
you'll need a reference to the new camera so somewhere you can easily get that
i need a solution before i blow my brains out
This mess this spaghetti finds to players, It does that by using a get all actors of class which is set to the player actor then a for each loop which will see if the player has already been set if it has then it will just go to the next and if it hasn't then it will set a punch of variables and the players position it also sets a variable called Assigned player to that found player, all this stuff is in this big sorta play mat with cards on top it will also set this found player to the cards so each card has the player it is assigned to it all works fine except for some reason with clients only all this stuff does not work out side of this big loop so
to shorten what i just said
the variables in that loop are not setting outside of the loop they work in it just not out, in the cards it is also not setting right it all only works in that weird loop (this all works perfectly fine server side) i have tried playing around with replication that doesn't seem to be the problem i have put debugged the whole chain it seems like it is working but if i try to print the assigned players name outside of that chain then it does not work
(i am typing all this in chunks at a time so tell me if it doesn't make sense and ill just correct it)
how can get map actor refrence
?
https://www.youtube.com/watch?v=ylwlw8KCNIs heres a few methods
In this quick tutorial, IΒ΄m going to show you how you can create actor references inside of unreal. I quickly explain four different approaches. ItΒ΄s based on a question of our community member RogueScholar.
The methods I use here are:
-Get actor of class
-Get all actor of class
-Set variable (single)
-Set variable (array)
If you need any hel...
then can't directly get ref
please anyone i am getting mad desperate now
i have no clue why
it just doesnt work out side of that chunk of code
sry i dont think i can help, the image is also super low res for me, cant really see what is happening
hold on
i can send different chunks
first and second half
so what it does is in the game there is 2 mats and when the players join they get assigned to it
which is what that code does it looks for players then assigns them to it
that code is in the mat
the cards on the mat also have a assigned player so that way i dont have to cast every time and stuff like that makes it easier so it goes through each of the cards setting the assigned player to the same as the assigned player on the mat
you can't put delays in loops
with out the delay it errors
it isnt a full loop i just call it that it loops if it doesn't find a player
but when it does it then ends
putting a delay in your loop doesn't do what you think it does, for each loop will call it but it won't actually wait with the next iteration of the loop it will simply continue
i feel like that delay at the end of the assignMatt? bool is gonna cause some issues
you should probably gather all players first on a loop, then once it has everybody it runs the next part
You can create your own loop macro and add the delay in there
so by the time your delay completes, in this case, it will actually get the last iteration of your array. you'll have to do what ToyB said
i got rid of the delay in the loop and it didnt change anything
the delay at the top of the get all actors of class is out of the loop
that is called when the for each loop is over
that just starts it all over again if a player was not assigned
I'm sure that didn't solve your issue, but just important to note that you can't use a delay inside a for each loop body. I was talking about the delay after the 2 branches inside the Loop Body flow execution.
ahh
yeah i got rid of that
still have no clue why it only works for server side
like
it works for client side but only in that big chunk of code
everything out side just doesnt work
so like if i print assigned players name in that chunk of code it works
but if i say do this
this does not work
but if i put the exact same thing
in the chunk of code
it works
hello anyone know how to fix (MetaHumman not giving blueprint ) ?
It sounds more like an issue of the variables not being updated client side, you say it works in the big chunk of code which is in a Server event
hmmm how would i go about fixing that tho
i have tried not using a replicated event
i have tried multicast
i have tried a run on server then to multicast
nothing seems to work
well.. it's more of a #multiplayer question but since we're here already, you should probably have an event inside of the player class that has Run on Owning Client (maybe different name don't have the engine available atm) that takes an input of the variables and sets them client side this way.. not sure if that'll work I'm not exactly a multiplayer genius
then you can just use the array element and call that event to change the variables that need to be used by clients, if that makes sense
yeah i think i understand what you mean ill try that real quick
what about the assigned player tho
actually i have an idea
i am going to neck
i found the solution
in mat
i just set it to run on owning client
that fixed it
it works fine now
no errors or anything
ok
no
Using an impulse to make the controllable ball jump. Though i'd like to have a collision condition to reactivate (don't want flying ofc). Am i being a dunce? I can't find the propper function, get or set to change into a bool for the condition in the branch.
there still is one more problem but i might know the solution to that
wha
i dont understand that
you making a physical ball rolling game
It already is. And also jumps. But since it's a pawn i had to use the "add impulse" function.
It's not a charancter so i can't use the "player jump" function
And when ya press space the ball does jump. But you can jump infinitely by just pressing space. Do i need to add a condition
ok
easy fix
gg ez brov
i think
do you mean like you can spam it
and keep going up
and you are trying to stop spamming
if so
i know the fix
I DON'T want to use a delay btw.
no delay needed
just
what is it called
hold on
integer
so
you have a integer which is the max amount the player can jump
Yeah but. That would mean that if you exceed that ammount. You can't jump anymore?
yeah
bam
that
stops people from spamming
then
you have a line trace firing off a lot at the bottom of the player
so
when overlap set jump to what ever you want the max jumps to be
use either a line trace or a very small sphere trace
so that way player cant jump on walls
unless you want wall jumping if so then thick sphere trace
just google some things about it
look into it
i cbf rn
i need a break
this shit pissing me off
i have encountered more problems with my stuff
so gonna fix tmrw
Goodluck
How do i get this fancy getter version ?
When i try to get the character i'll end up with the non-fancy version i.e
What is the diff between the circle and box in the tasks list. In behavior tree
Rightclick it
There is some option to convert it
I see, thanks :D
Right click a reference variable and choose Convert to Validated Get
Thanks But i got the answer already π
Nevermind me, I lagged behind loading the messages
I have a scaled (in Editor) static mesh and a cull distance volume. I need to position volume and set size on it to slightly encompas static mesh. How can I do that ? (It's not for runtime, but rather for when I drop BP actor to the level in the Editor and set new static mesh on it)
I'm really a nOOb at this and don't know squat...just following along to a video and trying to piece together items that will work for my purposes. My purposes? To make a morph interface that I can adjust on my models when they are placed into the scene. I have two blueprints, one just for the MorphSliders and another LevelBlueprint for the CursorControls that will call the Morphs. All was working well until I wanted to Bind several morphs to my CreateMorphSliderBlueprint, the Binding went well but when I try and hook up the Execute to my other morph binds it will only do one at a time. Again i don't know squat and more than likely whatever you suggest will be foreign to me. But is there a way route the MorphSliderBlueprintWidget to my multiple morph bindings??
is there some kind of variable type that is only valid inside a event graphs scope?
or do i need to make a blueprint wide variable every time π
if i have a blueprint actor that binds to an event, will it automatically unbind itself from that event when the actor is removed?
local variables inside macros maybe? https://forums.unrealengine.com/t/local-variables-in-macro/2283/5
what seems to be the problem here? aside from the execution lines not all being connected
ty for your help. it seems this is only possible inside macros?
yes just that Kira, i need them all to hook up. I just read somewhere that if I double click on the execute line it will branch off...would that work? (i cant test because i have to rebuild the whole thing it broke! lol)
I am not sure what you mean by branch it off
I think he means reroute
Oh... well that is really beginner stuff how well known are you with UE? you did say you weren't that familiar but if you're totally new I would recommend looking at some of unreal engine's videos to get used to the engine.
I would look into functions too if you haven't. Functions have more rules to them, but that allows their graphs to be sensibly "local". Whereas event graphs are like, anything goes.
yes i do mean reroute
Im using the FPS template, and for some reason, my player camera starts the game initially by looking left a little, and the player will not move forwards to that current camera rotation, in the actual blueprint however, the camera is facing forwards, which as me confused, anyone happen to know why this could be happening?
They also start facing the other way for some reason Ive just noticed as well
Okay i rebuilt it, when i move Execute to BindHappy, BindSnarl, BindEyesWide they all work. Problem is I need that one Execute to link all 3 BindEvents together, because only one of my sliders is working with this current setup. Hope that makes sense
maybe i should be asking is there a way to loop all 3 bind events together??
But there is also an amazing node for this called a 'Sequence' node. You could use that instead and what that does is execute all the output pins 1 after the other.
This doesn't actually explain the fundamental problem that you're facing, which is that you don't seem to understand how the execution pins work, but this will fix your current problem.
I have a scaled (in Editor) static mesh and a cull distance volume. I need to position volume and set size on it to slightly encompas static mesh. How can I do that ? (It's not for runtime, but rather for when I drop BP actor to the level in the Editor and set new static mesh on it)
you can do that in the construction script of the blueprint
construction script gets called whenever you put an actor in a level or move it in a level
yep, but I'd rather do it in the Even Graph on the even that exposed to Editor, so I can press a button on the Details panel to make it happen. If I do it in the Construction script, the logic will execute every time I touch that actor in the scene.
that's besides the point though - I wonder about logic itself, not in what graph it's located
you should look into editor utility widget then oh seems I misunderstood
Hey, what can I do to stop the wheel burrowing into the ground? Wheel radius is set right, physics asset is ok. Wheel width does not seem to be doing anything. Any other ideas?
@teal nexus there are some nodes you might find useful, like Get Bounds, Get Actor Bounds, and Get Component Bounds
for figuring out how to make one thing envelop another thing
Can cull distance volume be a component of a BP actor ?
Can I make it so an enemy increases speed if the player presses a button on their keyboard?
@teal nexus idk offhand... I never tried it
Really depends on the context of the enemy. All enemies in the whole map? The enemy closest? All in range? the one a crosshair is looking at?
Only one enemy, it's like a one-off boss.
Personally. If it's single player. I would just make that boss BP EnableInput with the player's controller when the boss fight is started. Then disable it when the fight ends. Put the event for the input in the boss's BP.
@last abyss thank you for your help, i will look into Sequence node as i do want to learn. i'm basically using Unreal as a render for my 3d modeling and my brain does not compute nodes or code...but sometimes if you hit your head enough it starts to sink in.
Ah thank you! :) Just to clarify, is this the correct way to enable/disable input in an object that isn't the player like this?
Yeah. You don't need to disable input if you're destroying the boss though. Only if you leave the boss there and don't want the input anymore.
Ah, thank you! :)
Hey, i want to rotate a plane with foliage in blueprints. The plane rotates but the foliage stays stuck. If i rotate the plane in the editor foliage moves accordingly with it. Any suggestions?
hi all, im looking for a method with blueprint to create an extra window on start of the game that needs to be populated with an minimap widget (minimap already works) are there any methods or approached someone might know? or can help me create one? Thanks in advance
Hi, guys!
Is anybody knows - is it possible to add keys to a level sequence during runtime? or changing a level sequence asset and save it during runtime?
I'm trying to do it and it works perfectly in editor, but in packaged game it doesn't work
As in new widget canvas/container?
yes, that newly created window should only contain the minimap widget
Create a new widget containing just the minimap, perhaps
Not sure what kind of HUD design you're looking for, as you say minimap already works.
it should also be moved automatically to a second screen. It is an a-symetrical vr maze. 1 person in vr, and another player uses the second monitor to guide player in vr
let me take a better look at the creation of that minimap widget
Ah, then I don't think it's possible with just BP, some C++ work would be needed
dammit. thanks though
There is nDisplay for outputing to multiple displays, but I think that's more suited for virtual production than games.
yeah i guess so. the project does not require xr. thanks for the suggestions
Hey folks, can anyone point me in the right direction to fix this? I'm a blueprint guy and I have no idea how haha
is there a way to get an input action key?
like not doing the event, just getting the key value
like if moving forward is binded to W, then can i ask for "moving forwards key" which would return Key.W???
quick question
i got this variable
and i wanna use it in a different blueprint
but i get the error
Blueprint Runtime Error: "Accessed None trying to read property fpsCharacter". Node: Set is_startGame? Graph: EventGraph Function: Execute Ubergraph BP Main Menue Blueprint: BP_MainMenue
what do i do?
your variable is not set
how do i do that?
2 ways, either when you create your widget from the return value find 'set fps character' or inside your widget make the variable exposed on spawn + instance editable (in the details) then on your 'create widget' node you will get an input pin for the fps character variable which you can then connect self to.. assuming you're creating the widget inside your fps character?
how do i do keyboard events when ui mode only?
Usually easiest to do by getting input settings and looping over the keys returned for an action name.
By having a main widget added to screen with focus and overriding OnKeyDown
Hi everyone im having a little trouble with a youtube tutorial, its a quest system and i cannot see to find why my drop down button isnt working, please see images to follow
so whats going on is the drop down arrow seen in the first image is supposed to drop down when clicked but it doesn't respond
are u sure there are items in ur listview ?
would be better to make a vertical box and add the items in the edior
then just make box visible/not visible
but its hard to figure out with just some images
yes there are "Text blocks"
You should start by breakpointing or printing between these executions. Make sure the clicked is running. Then make sure that the cast is succeeding, then make sure that the function returning the Not Boolean is returning what you expect.
Is there a good way for a controller to "wrap" an input event that then gets sent to the pawn IF the pawn is alive and the controller didn't use it?
Basically to have the controller OPTIONALLY consume the input event, based on conditions?
would you be able to spare a couple minutes on a voice call? i am walking in the dark currently, i printed onto the blueprint and i managed to see that, my interact button is working. but the drop down is not.
Guys, I'm trying to make a build, but I keep getting this error. Haaaalp!
I guess failing this, what's the cleanest way for a controller to manually pass an input event call to a pawn it's controlling? Dispatchers seem too general
So you can use get controlled pawn in the player controller and then an interface to create and call events from that pawn
Just have a layer between input and the doing of the stuff
InputAction Shoot -> ShootEvent -> Do the shooting
or implement the input in the pawn directly, what's the use case here?
What's the easiest way to make my game fade in from black?
It's an "interact" button, so it's carrying a lot. It needs to work as a menu interact whether the pawn is alive or dead, but if there's no menu open AND the pawn is alive it tells the pawn to pick up items and such
Post Process would be my guess
Full screen black image in a HUD, put the opacity on a timeline
(You said easiest, not best π )
Post process or manual exposure, depending on the effect you're going for
The camera manager has an event for this but I forgot what is called. Would be the easiest way
That might be good too, depending on UI etc
Start camera fade?
Haha wow so many good options thank you all. :)
Okay, I'll try these out.
How would I access that in the level blueprint?
Somehow I have to make a reference right?
Why do you need to manage this from the level blueprint? HUDs and widgets can have their own blueprints
Well, I want it to happen as soon as the game begins but the HUD blueprint doesn't have an 'Event Begin Play' from what I could tell.
True but everything else does
That's true.... I guess I could just make a new empty BP and have it accessed through that!
I didn't think of that. XD
Hmmm, so I would 'cast to HUD' then the custom 'Fade from Black' event, in this BP?
I made a ref to the HUD and stuck that in the cast and it seems fine but it's not doing the fade which is weird.
OH Wait nevermind I think I know why.
If there are way I can select the HUD as the HUD Reference? It won't let me, I've tried dragging it in though.
Nevermind, sorted it, just did the Camera Manager thing! XD Thanks all. :)
is there a way to show which components are inherited without hovering
Why does this assignment work when the pawn is placed in level, but it fails when I spawn the pawn via BP?
I made a blueprint for grabbing objects but they go through the floor and such when I pick them up how do I fix that?
How do I simply get and set data of a static mesh, I want to set things like the vertex colors
how do i fix this problem. Whenever i start my game editor/packaged i need to click always once to get my mouse in there
you might need to change some of these values that suits best for you. I think you need to disable (or enable?.. idk) capture mouse, it's enabled by default
it's under project settings
Is this the right spot to ask why my Cast Keeps Failing?
yup
Imma stop you right there. What do you think casting is?
How about the mouse capture mode
Ok so I'm trying to Cast from my AnimationBP to my PlayerBP and I can't figure out why the cast keeps failing.
I'm also super new to Unreal
Capture permanently?
That's not what casting is. It's not a "get"
is there no way to get the variable from another blueprint?
In your AnimBP, you are trying to cast your local player character to Player
depends on your project. I found these best for mine
There is, that's just not what casting is. Casting is not the verb that you use when you're talking about getting something.
just that when i launch the project i dont ever need to click on the screen to use mouse
Idk tho if its supposed to work on editor
inside editor when (it's inside the engine) it needs to focus first, if you do a play preview in a separate window it might work differently (like an .exe would)
yeah thats what i thought also. Thanks very much π
Casting is a type check / conversion. It's a question.
Well, I think I'm generally meant to use references instead of the times I seem to try to use casting.
Those are completely orthogonal concepts. Every single day I see multiple instances of people using the word cast as if it was get. It's not. You get the thing, and then you cast it to the class that you need if necessary, then you can do the subclass-specific things with it.
hrm... So if I want to get the result of a variable that's inside my PlayerBP and use it in my AnimationBP, would I need to Cast To the AnimaitonBP from inside the PlayerBP?
Cast = "check if it's a"
While this is a common issue I am unsure why you're bringing this up here, XetaChron is clearly using a Get and then Casting the result which is the exact thing you're suggesting
In your specific case, is the player Pawn a character?
So you're saying this cast just fails all the time?
By the way you should have set up your animation like that, you should try to get the owner of the anime instance or whatever the word is for the specific actor that owns the mesh the animbp is driving
Then the player character for player 0 isn't a Player
What's the parent class for Player?
Btw rename that class, that's super confusing. PlayerPawn or PlayerCharacter is better. A Player is something else.
What is the parent class for Player?
a player is not a cΒ΄player character
a player is basicly a character class controlled by the player
player is another class
It looks like he made some sort of class called player which he's using for his pawn, I don't know.
a player character is controlled by a player
Yes.
The "Player" (which is the name of the Blueprint) Says it has the Parent Class Character in the top right corner
He made another class called player, that's the cause of all the confusion
First of all rename it.
Rename it to MyCharacter or whatever
ok, that won't break anything in any of the BP's will it?
In a sound cue, I have multiple sounds hooked up to play randomly. Is there a way to choose what chance each sound has of playing?
Do the cues have a weight?
wait what's a redirector? sry just really new to all this
#audio but not sure if there's weighted rand audio nodes. You can pad it by putting the same audio in multiple times maybe.
Don't worry about what a redirect is but just right click your content folder and hit fix up redirectors
Hm, not sure, never heard of that before.
Ooh, that's a good idea!
Thank you.
@sonic oracle ok so back to your issue. Getting the player character for this is pretty bad. You want to get the animBPs OWNER.
Hi everyone! question about GarbageCollector and emptying texturePool.
does something has to be done to make your texture to be auto garbage when GC runs?
Otherwise if you have multiple characters they'll all be driven off of whatever player 0s character is doing. The animation doesn't care about the state of player 0s character. It cares about the state of whatever actor owns it
Try get pawn owner is the node you want. Or used to be, idk if things are different in UE5
Ok so what I'm trying to do is play an animation of a gun that the MyCharacter is holding. I have it set right now to attach a skeletal mesh (Which is the gun I'm trying to animate) to the hand socket of another skeletal mesh inside of the MyCharacterBP. So would that make the animaitonBP Owner the MyCharacterBp or do you have to get the skeletal mesh somehow?
I guess to simplify (cause I know I'm gonna have to rewrite everything eventually anyway). How do I get the state of a variable in MyCharacterBP from inside my AnimationBP?
It worked fantastically, thank you! Made good use of multiple random nodes. :)
Hey, i want to rotate a plane with foliage in blueprints. The plane rotates but the foliage stays stuck. If i rotate the plane in the editor, foliage moves accordingly with it. Any suggestions appreciated!
guys and galls, do you know how to keep variables values when restarting the game in the BP?
you need to use SaveGame files for that
lookup nodes like
"LOADGAMEFROMSLOT"
"CREATESAVEGAME"
"SAVETOSLOT" (or something like that)
trying!
post pictures of your setup if you have trouble
it can be a little odd to work with at first
the general approach is you want to LOADGAME or CREATESAVEGAME and these provide an output pin for you.
Then, you save that output pin to a variable right away. Then you can access the variables on that SaveGame object and change them.
Then you use a SAVEGAMETOSLOT node.
No, because you're making no change to the object between its creation and it saving
so it will contain no information
CreateSaveGameObject -> Use the blue output pin to save this SaveGame object as a variable.
Make changes to the variable.
Then SaveGameToSlot
ok! trying!
did you create a SaveGame object class?
that's a start
"CreateSaveGameObject -> Use the blue output pin to save this SaveGame object as a variable."
awesome
next
oh wait so i need to put that at the begining
but how can put an integer value in that variable?
as it's an object
You need to create your own save game class. Then you need to populate it with variables you want to save. Then you need to set the values you need to save into that object when you create it. Then you can use the "Save game to slot" to actually save the values you stored in the object.
Why can I not find this? do I need to somehow reference a namespace or something? https://docs.unrealengine.com/4.27/en-US/BlueprintAPI/MeshDescription/GetVertexPosition/
Get Vertex Position
Try turning off context sensitivity?
No. What you've done there is create a "set" type variable and you're adding your save game object to it.
You need to go into your save game class (you create it like you would an actor, but you select "save game" as the base actor class) and within that class you create whatever variables you need to save.
Once you have created your save game class, you select it in the "Create Save Game Object" node. Then the return value will be an object of that particular save game class in which you can then set the values of the variables you've defined.
ok! trying right now
i don't get this.. you create it in the BP? using a spawnActor node?
but i don't know where to create a saveGameClass
Can someone please explain to me how I can Take a variable from one Blueprint and use it in another Blueprint?
Quick question for someone familiar with widget components on actors and using ArchViz for the player pawn. I've got actors with a widget component attached. The widget is set up to show certain metrics that will come in, in real time, and to keep the clutter down, I have it only showing one metric at a time with buttons at the bottom to switch the view being shown. However, I haven't been able to get the widget to register the mouse events at all, so I can't change between the different visibilities. I have created a new PlayerController, with Show Mouse Cursor, Enable Click Events, and Enable Mouse Over Events, set to true. My GameMode references this class as well as my ArchViz pawn.
Did you set the variable to public?
I did
Are you creating a variable of the main class to pull the variable into the other blueprint?
By main class, I'm talking about the class that is housing the variable, not the main level bp
right click on the content browser and search for "SaveGame"
it's a blueprint class
Any blueprint can read the variables on any other blueprint, all that is required is to have a reference to the blueprint we want to read. There are lots of ways to establish references.
ok got it to work!
For instance, if one object creates another, the "Spawn actor from class" node puts out a blue pin that can be saved as a variable, thus serving as a reference to the object created. There are about a dozen other ways to get a reference to something.
Sorry I'm kinda new to all this, can you explain a class because I feel like I have the wrong idea of what a class is.
The blueprint is a class
Sorry I am a programmer before I starting working in unreal. Some of the jargon is handled a little differently
A class is a concept which can be instantiated into Objects, like FORD ESCAPE is a class, and you could create that class 5 times and you would have 5 ford escape objects. A class is like an idea for an object - not yet instantiated.
You can also think of a class as simply a file on your computer that describes an object to be created any number of times.
so i've create a save class, and within i added a variable.
now how can i add value in that variable in the main BP?
ok that's what I thought, but what would a "variable of the main class" mean?
variable of the blueprint you created to store in
yeah now drag off of the GAMESAVE, and see if you can GET or SET the variable you created by searching for its name
trying!
I still have no idea what that question was asking so I'll just try to explain what I'm doing. I have a Boolean variable inside my "MyCharacter" Blueprint, I want to get that variable and use it to build my "GunAnimation" Blueprint. I want to use it to fire my recoil animation.
Say you have a blueprint called "MyBP" and inside that it has a variable "store". This variable is public and you want to access it in another blueprint called "secondBP". In "secondBP" you just need to create a variable of type "MyBP", set it to equal "MyBP" and access that variable through a node from CastAs"MyBP" -> variable name
can't get or set that variable. this is the variable in the Save class.. is all correct right?
So you can create a variable that's directly linked to another blueprint?
it's a copy, so it won't change between blueprints unless you reference the change, but sorta.
ok I'll get a pic of what I have in the AnimationBP
The problem now is that your GameSave variable is not specific enough. I assume it is of type SaveGame but you need it to be NewBlueprint2, which is a subtype of that.
Pull off of your GameSave variable and CAST TO NEWBLUEPRINT2
then pull off of that cast, and try to access "SELECTOR"
would this be how you do it?
Is your character the pawn?
I want to say yes but I'm not 100% sure what a pawn is
I wrote a geometry script in blueprints that crashes the editor when being executed (I guess out of bounds access to triangles), and that of course immediately happens when I open the project since the actor that is created by this script is placed in the default level. How can I fix this and access my project again?
Player character, in a third person, it's the third person character BP
ok working!
Yes it is.
now i guess i need to load like this
Ignore that my cast says ArcVisPawn_BP, yours should be CastToThirdPersonCharacter, but to get the reference to the right object, you'll need this to set up the correct starting reference.
My Player Blueprint is named "MyCharacter" does that make a difference in what I should cast to? Because CastToThirdPersonCharacter doesn't bring anything up
Yeah, cast it to your player blueprint
Since this was buried, I'm going to ask a final time if anyone has any suggestions for my issue
Yep, that should be referencing the variable stored in the blueprint
thanks it's working now
weird question though, it doesn't work if I run the program from the play button in the animation bp
but it does if I run it in the viewport
That's just something strange with Unreal. It won't affect how well it works in the build, so I wouldn't worry much about it.
damn, well that explains a lot of headache
Thanks for the help, I really appreciate it
How can i call level functions from actor blueprint, dont understand?
i would need to set trigger box to generate overlap events once actor is interacted, how would this be possible?
@mellow folio @dawn gazelle Saving in BP working great! thank you both for your help!
Hey everyone Im trying to get a frame counter with some information to be outputted to my print string. Basically I have a 10 second video @ 30fps and I was wondering how I can have it like
- "information"
- "information"
and so on. I know it probably has to do a with a loop and then +1 every tick Im just not sure how its suppose to look. Thanks
Does anyone know about an enum returning "E MAX" instead of the actual enum state itself? I've made enums hundreds of times and this time it doesnt want to work. Im trying to use a switch and it doesnt go through any of the outputs and it prints out as "E MAX" even though its set to one of the states.
Event Tick
Frame = Frame +1
Print Stuff
Is there a way to make a input of a function its own node, just to visually clean up my blue print
The parameters are automagically function variables
you can just get them
inside the function
So you don't need to drag any pins off the input node except execution
Oh your right lol I should have just tried that
Is there any kind of superclass of both StaticMesh and SkeletalMesh? I've got a lot of super objects and actors with components that can really be either and need to have the same functionality either way
Is anyone familiar with the "File Helper Blueprint Library" from the marketplace?
@flat coral iirc no. When I was doing socket work there were 2 functions for each
@tall oxide you cannot. Use game mode or game instance or a level manager actor
I can actually. Just created some values within the actor bp and then called them on level blueprint.
Oh you can do that, but not the other way around mb
Level BP is not "classed" like actor BP, so referencing level BP from actor BP would be difficult.
It's not
Best not using level blueprint at all tbh
can I use debugger inside Construction Script? better, how do I trigger debugger in construction script
That's just a scene component named DefaultSceneRoot
Yes
thank you
every component that can exist in 3d is a scene component. It's the most basic component with a transform
sorry for the dumb question
Every actor has at least 1
yes, because I override it with a mesh but the actor's origin got kinda messed up
An actor IS at it's scene components transform
er
it's root component's
whatever scene component is the root, that's where the actor is. That's why you can't move the root component within the actor, it IS where the actor origin is
Hi guys, I am new to gamedev and I have a question , do all games made with blueprint have to be rewritten in c++ later ?
no
BP and C++ go hand in hand, with some exceptions you can do anything you want in either. Whether or not that's smart is up to you.
You'll find yourself wanting to use C++ more for high performance stuff, fancy systems, and multiplayer. But it all depends on what you're trying to do.
I sure as hell wouldn't want to make a Minecraft or Factorio or Stellaris all in BP, but a Super Mario 64? Sure.
Yeah
As i understood depends from complexity of your game
But lets say i would like to make something like outlast , will i be able to implement it using BP ?
You may not need to ever touch C++ , but you still need to know how to program π
Blueprints is just a visual programming tool.
IDK if you yourself would be able to, but it's totally possible. Start with Brick Breaker or Flappy Bird. How new are you to programming in general?
unfortunately most blueprint tutorials don't teach you that.
Hence my name. Tutorials suck.
I know basics of C# and GDscript , so i am familiar with programming
cool, they'll all apply
YEah no problem just dive into BP. Look up the specifics if you get stuck but try to do something simple on your own.
Tutorials maybe suck , but i am using books to educate myself
lol, that's already an advantage right there
On z-library there are a lot of books about gamedev
The best way to learn is by doing. Start with a template project, think of something you want it to do differently, and do it.
Thats true , but before starting you are at least should know basics
If you're coming from Unity
https://docs.unrealengine.com/4.27/en-US/Basics/UnrealEngineForUnityDevs/
fantastic video on why you would choose one over the other in certain circumstance
but the bottom line like always, is use what you're used to, and use the right tool for the job
https://www.youtube.com/watch?v=VMZftEVDuCE&t=2446s
It's not an either/or decision. Learn what makes C++ and Blueprints different, what they have in common, and how to use them together effectively. We'll also learn a thing or two about performance optimization and some basic software design concepts.
Read the article version: http://awforsythe.com/unreal/blueprints_vs_cpp/
00:00 - Introduction...
Does anyone know if its possible to have an event dispatcher use different events depending on the player that is binding the event? Or would I need to use multiple dispatchers for each player?
You can simply check to see if the player is the one you expect in the listeners.
or before firing the event
In my case, the problem with programming lies simply in the plane of time, C++ in particular takes a lot of time, it's not even about complexity, you shouldn't go to game dev if you 're afraid of difficulties, the fact is that when you need to engage in engine, game design, narrative design and art direction, you need to speed up the process of implementing logic .
This is VERY true. that's why my prototypes are done in blueprints in separate projects, before I merge it to my main CPP project
Okay thanks, the only thing is that each player can bind the same event so would there be a way to know which player to expect?
are the players of a different BP class?
Hell my custom tire model is still in BP lol.
or is there another way to diffirentiate the players from one another?
I should have said most of my core mechanics
I still do A LOT in BP and leave it in BP for my project since it was just easier and faster, and doesn't need to tie into any of my cpp core systems π
@desert juniper What kind of games do you make ? and by the way , how long it took you to learn c++ ?
I make the games that never get finished. Hopefully until now π
So I've got an on hit event dispatcher on my projectiles, and each time a player gets an upgrade that triggers on hit I want to bind a new event to this in the projectile class. But each player would have different upgrades but spawn the same classes so I'm not sure how to add these dynamically. Each player can choose a different character, but they could each be the same one and all inherit from the same base character class
You're always learning C++, but it was a steep learning curve for my small brain. even coming from Java and a small bit of c#
but to answer your question, I'm working on a multiplayer survival game. I need C++ to work with certain features that aren't fully exposed to blueprints such as GAS. That, and I feel more comfortable writing all the network logic in C++ than I do in bp. My theory for the core logic was might as well keep it all in one place, rather than jump around from CPP to blueprints
Player A's projectiles should only be bound to Player A's OnHitEvent.
There's no reason for them to bind to anyone elses.
But I would do it as some sort of data payload, binding events feels gross.
I 've always wondered how much you need to learn c++ , let 's say that you study it intensively for several hours a day in order to be able to program complex AAA games ?
Okay thanks, so should I use a few dispatchers in a row for each player, and then just bind each players upgrade events individually?
Projectile binds to Projectile's Instigator's events.
Where do these dispatchers live
I have a projectile base class which contains the dispatchers, one for on fire and one for on hit
K so it should be communication between the projectile and it's instigator (pawn that fired it)
Pawn A binds its event to the projectiles it spawns. Not to all projectiles that ever get spawned, just the one Pawn A is instigator of
uhh, if you were taking a class in college, I'm assuming two semesters would be enough to get you by. since first semester doesn't really teach you the important stuff
If you were studdying on your own, and could deal with not getting burnt out, a few weeks would go a long way.
as long as you were learning, and actually putting the things you learned to into practice
but π€·ββοΈ everyone learns at their own pace
I'd honestly just start with BP if I were in your place. Like I said, BP is programming, just a visual representation. You mostly do everything the same in CPP than you do in BP, so when you start diving into CPP, you'll have a better understanding of what's going on in unreal
Okay thanks, sorry to keep to asking but how do I bind an event to an object thats created dynamically at runtime?
Not sure how your logic is set up but it can be as simple as
in pawn:
Fire Projectile -> bind event to projectiles dispatcher.
Uh, how have you been doing it so far?
I mean how crazy are your upgrades though, this sounds like it could just be a function passing some data into the projectile and call it a day.
Yea that's how I've got it currently working tbf, just pass in a list of strings of what effects to trigger, and then just call the relevant functions on the projectile
I thought the event dispatcher would be a better way of doing things but maybe not haha
This being said, unreal's C++ does have a steep learning curve for smooth brained people like me
What helped me was having the right IDE/IDE plugins. After that I no longer had to worry about cryptic (to me at the time) errors about missing imports, incorrect use of pointers, and a few issues
@desert juniper Colleges in my country are terrible especially when it comes to programming , so i have to study everything myself , firstly i had to learn english language just to be able to absorb information from around the world .
you think it'd be standard with any IDE but Visual Studio is pretty terrible with unreal without any plugins imho
Because when i started i didnt even speak english
Your English is pretty good.
Rider or die
Risk of Rain 2 style?
