#blueprint
1 messages Ā· Page 90 of 1
im trying that
i would print string the x, y as well make sure it's working if it doesn't work
but doesnt seem to like my spring arm target
or even just a print string to see if the event is firing at all
show the code
im not as fast as you guys typing xD im tryna do the things yall said
alrr
But
btw, this should already be implemented in ue5 if you chose the correct template
the thing is, this is the default template xd
of the vehicle one
im just trying to look around the car bruhhh
using print string on the local rotation, to my surprise, it does print that the axis are working
every, axis
but camera wont move
You don't want to touch the local rotation
show ur code
You want to add to your controller rotation
i cant get my spring arm if i use controller yaw input, says not compatible
how tf im supposed to rotate around the car
if the camera works left-right shouldnt it be more easy to make it look up-down too?
We talking about the camera? By rotating the control rotation
im talking aboout the pawn of the chaos vehicle templat
im using the "backspringarm" to move camera
I never use the vehicle template. But if you want to move your camera, you should try to do what's shown by engage
But if any advice given is met with barrage of protest then it's kinda hard to help
its not protest, im just saying what i think
is your spring arm or camera by any chance freezing rotation on certain axes?
but ight imma try for second time the engage bp
it makes sense not using control rotation in this case.
I see, I never dealt with vehicle
well, complains to unreal devs, this was the default BP xD
ill look
would this work? im trying to make sure i output a reference to the struct instead of a copy so i can directly edit it without needing to re-add the edited copy into my library / map.
or does the node keys and values create copies to begin with? so id probably need to just have two separate arrays instead of using a map?
yeah the values array is a copy
you'd be editing the originals in the values array, but not in the map
this doesn't make a lot of sense though
just use find on the map
that will return the struct for that key
but find doesnt return a reference it returns a copy, no?
you aren't returning a reference to the map here anyway
well if you want a free cam use a different method, this is a control thing so your turning might f'd
Hey, shouldn't this rotate the manhole's Y axis from its current value (0) to -4.5 and then back to 0 again? cause its just rotating it to -4.5 but it stays there?
you are lerping from Where it currently is to -4.5
Replace Lerp's A with 0
ok your bp, did kinda work and by kinda i mean now i can move the camera around the car yes but it doesnt seem to rotate well?, i dont know how to explain it its like not only moving updown left right, it seems its also sometimes rotating on itself its kinda making me feel dizzy if i look at it xD
okay, dont ask how or why, re-opening the pawn bp fixed it
with this method could i make limits to the camera so its doesnt for example: move fast/slow or change where the limits are so it doesnt clip underground?
yea
its called clamp
Can I take my impact point and set cursor in UI?
i really need to make the camera move slower its way too fast xD
Current;y not getting accurate location
ty imma look it up
divide the number
you mean the pitch/yaw input value?
yea
or multiply by 0.2 or something
multiplication is typically faster
true
does it work now?
yup, i tried both and multiplication works a bit better
yeaa
thank you gentleman for your time, and im sorry my lack of knowledge i wanted to fix this and the tutorials/stuff on forums wasnt very straight forward
np
now i added also the collision to the camera, it wont clip through the ground so now i just gotta make it also doesnt clip through the car either
bro deleted lol
make the car collider block whatever channel it uses
wich it worked ty, only left thing is its figure out how the collider for the camera works
It just does a sphere trace from the components position to the desired position at target arm length and stops if it collides. That's where your camera ends up that frame
yeah it kinda doesnt stop, thats what im tryna figure it out now, if i move camera to the floor and keep moving the mouse, eventually the camera starts getting closer to the car, and thats what i dont like
you need to define what you want
you can check if is colliding, then shut off the move maybe
no don't do that. What do you want?
The options are move throught the floor, not closer to the car, or not move throught the floor, but go closer to the car. Unless you want to limit the vertical pitch angle of the spring arm. What do you INTEND to have happen when you look up?
or maybe just stop it from moving anywhere except z on collide idk but this might help
I got this first image moveing the player to current piece which is working. But upon dice roll the second function will not move the pawn. Any idea why? it will tell me what the piece is and will tell keep repeating as its supposed to till 0 but it never moves the pawn
i want the camera to have a fixed lengh related to the spring arm, so its always the same lengh related to the absolute location
with that i could make another bp to control the zoom
thats what i wanna do
So when you look up, that fixed length will push it through something
Because you haven't decided what you actually want.
Do you want this?
the camera and controlls can be annoying
or this
i'm still learning them, having issues with different things
like right now because i rotated by spring arm, i guess the rotation doesn't work anymore ?
im already doing this
OR, there's a 3rd one.
This.
the thing is, when the camera DOESNT clip through the floor, it gets closer to the car if i keep "pulling" the axis
you may be able to clamp the target arm length ?
that's what i said lol
You have 3 options for what to do when you try to look up.
Clip through floor without changing length
Change length without clipping through floor
Limit angle spring arm can look (Camera can still pitch further up though)
im trying that one
That's what WoW has as an option
1 and 2 are the ones i dont want, so ig 3 its the one
That'll take a lot more work but it's doable
I'd probably do it like this.
Spring arm does NOT enroll with control rotation, you'll have to set its rotation on tick yourself
as i told you an hour ago?
you read control rotation and clamp the pitch
did not see your message, sorry then
camera uses full control rotation, spring arm uses clamped control rotation
spring arm does the usual collision test so it never clips, just can't look so far up that youre looking up your cars ass
@frosty heron I RETURN! AND LOOK AT THIS š lmfao
ight im getting a bit overwhelmed with info here, im gonna try everything yall said, if i try to keep up imma do mistakes
you said you were going to look at it...........
did i? well i forgot then sorry again
as i said im getting a bit overwhelmed here imma try to scroll up and take it slowly
hey folks. i am searching for a specific kind of topic whose name i cannot recall.
i have seen a youtube tutorial long ago where someone created a custom blueprint actor with which you could e.g. create a wall dynamically on the map by dragging a gizmo/indicator around on the map and the BP just created the wall in an instant.
especially the part with the gizmo was interesting since i already know that BPs can be used in the map in editing-mode like via constructor and certain flags set in the properties of the BP.
it would help if someone could give me some topics or terms which i could search for to find what i seek. can anyone help?
hi i have this code that prints these 6 numbers on the screen depending on an condition but i want to make it so that the numbers get stored in a row in a variable e.g in this case(604030105020). is there any way to do this
is using an array an option?
are you trying to make it a single variable?
as in "604030105020"
yes i want to later compare that with something
can be an array i can combine that later too
well, using an array would lead to creating a for-loop in which you "append" all elements to a string-variable.
just use the "append"-function for that
my select node only sends one value at a time when the condition is true how do i add them in order if it can be stored in an array that is fine as well
this would be an example. maybe like that?
ah thats nice i made something like this pretty un optimized but kinda works
You can do that with 1 append node
add pin
which append node this one doesnt have an add list
or you can also use "Format Text" function, if your array has a fixed set of elements
@faint pasture refers to this
you don't need to add multiple appends, just use one and "add pins" as many as you need
oh that append i see
or use "format text", with that you have more control about the structure of the outcoming string
these brackets define a new node on the "Format Text"-Function dynamically as you but them in the textfield.
you can even put text between like so: {a} is not like {b} or {c}
ooh didnt know that did want add a - in between that should help
but how do iadd more values in it
QQ: anything can potentially be an NPC right? Like if I just stick a manny mesh into a scene I can make it into a npc I can do BP for talking to it right? (Albeit it wouldnāt be animated or anything)
Thereās no special restriction or requirement as to what a npc is or can be ?
Well the term NPC stands for non player character so by definiation it should at the very least be a character. If you have a talking rock for example then its just considered an actor.
I guess Iām going for something that has some idle animation eventually, but doesnāt interact with me in a game sense. All it can do is be clicked on, talked to and animate itself to a degree
So actor is more appropriate as a term here?
NPC is fine, that doesn't have to imply the Unreal concept of ACharacter
It all depends on your game design
Id call it an npc because its a character. A character typically has a capsule collider and movement capabilities but also in a non technical sense a character is part of a larger story whereas an actor is just something like a door that the player can open.
Oh I see what you mean
Ok that makes sense. Thanks for clarifying.
Yeah I was mostly going for like.. a town vendor thatās got a āsitting idleā animation, I can click on them to open a buy/sell menu and maybe another option to do āchit chatā. Thatās as far as that goes.
But I was wondering if that can technically be done to any object
Character usually refers to some subclass of https://docs.unrealengine.com/4.27/en-US/InteractiveExperiences/Framework/Pawn/Character/ in the context of Unreal but you can do whatever you want.
Yes that can just be an actor if you want
It might be useful to make them a YourBaseCharacter if talking to movable characters and doing inventory actions with them is meant to be a thing. In that case make "doesn't move around" the unique thing about this guy.
For the time being Iām trying to save time by implementing what I consider priority stuff (dialogue, menus, ui) so I donāt want to spend any time animating. Just wanna stick a standing manny in the level and make it able to be interacted with for the moment
I feel like the polish such as animations and actually pretty ui can wait until the basics are down
You can ignore animations, but I'd think pretty hard about what the base classes of your game should look like
What sort of game is it?
Like, what does the player control, what do they do, and what do they interact with?
Itās a fps dungeon crawler. The only time you get to fiddle with NPCs is in town. And really thereās only two types of them - vendor and regular. Vendors are self explanatory. Regular NPCs will just do basic stuff like trot around a given area and you can click on them to stop them and talk to them. Some might give you a quest. Thatās sort of it
So eventually I was gonna make a base class for all of them
Yes
And move the code from the shit non animated object over
I would make a base class that applies to EVERYONE
So that I can subclass these
monsters, player char, static npcs, trotting npcs
I guess the mesh can be anything anyway
Iād save myself some time this way
(Your way I mean)
and you can just have it be empty and attach a static mesh, the only implications are that the root component is a capsule
root is the parent component within in actor
the scene component that all other scene components are attached to
I mean if you wanted your NPCs to be stackable like blocks it might not be a good fit
Oh heavens no
No they all need to be individual entities without any special mechanics toward one another
Enemies will just be side by side.
The fighting mechanic will be kinda like⦠ever play phantasy star 2 on Sega genesis?
but if capsule works for your use case then I'd just go with something like:
ACharacter
YourBaseCharacter
Subclass
Subclass
Subclass
So like this. But imagine three 3d mannys where the mosquitos are
is there character movement walking outside of combat?
No. Itās first person. You move east, west, north south and turn with Q/E kinda like legend of grimrock
Oh, on a grid, not smooth walking with momentum and jumping etc?
And you donāt see enemies until the rng dings and you get a random encounter
In that case you don't need Character
Yeah no jumping. Moving X units at a time
Perfect. Thanks for helping out. š
Character mostly gets you 3rd-person / FPS style movement. If you don't need that, don't bother
Yeah even the fight anims will be like idle > attack | defend | spell > idle >> dead
all from standing. They won't REALLY move
Yeah you can still do whatever animation stuff you want
sweet
but you aren't stuck using a capsule, skeletal mesh, and 10,000 line movement component you won't be using
Pawn gets you possession by playercontrollers and aicontrollers, with aicontrollers getting you a nice modular ai system
Just for clarity's sake - atm my player is controlled via two distinct controllers, but it itself isn't anything more special than the FP character you get in the FP starter. I assume it is totally fine to make a pawn that's distinct from the player and then use it for all monsters and npcs
just to be safe im not misunderstanding
how do i get the closest player instead of player index 0
I am trying to learn how to setup a widget for when I transfer from normal gameplay to battle mode. In battle mode, the input context mapping changes and a widget comes up. I want the focus to start on the Attack button. Currently, the widget comes up ok, but there's no focus on the attack button, and when I stop playing I get an error that says "The PlayerController is not a valid local player so it can't focus the widget" Anybody know what I'm doing wrong?
Is there anyway to use an ImpactPoint from linetrace to position a crosshair in UI
with the aptly named Convert World Location to Screen Location node
What do you mean by controller?
Not working
it's off where it should be
Well there's the FP controller which handles EIA stuff, so I have one per game mode
And char movement code is in there
one set of movement in town one in dungeons
try project world location to widget position instead then
I want to make an object rotate around another object. How do I go about doing this? I saw that there is a node that assigns rotation and allows you to shift the pivot point at the same time How do I find it?
Hi all
I just want a basic Cube following my "Ocean waves" if anyone can help me please
I made a "Gerstner waves" code and put it into the "World Position Offset" of my Shader.
Now in my Blueprint Actor I want that my Cube follows the height of the waves.
Anyone has an idea ?
Hello, I was wondering if anybody could help me with my fps game. I want to add an ADS/Iron sight system my project is based on pixel helmets fps template.
ooh no a bp only multiplayer fps game, that sounds like pain
Don't do multiplayer as a first project or with blueprint only
both are unfeasible
That was a nice DM, but seriously. Start small.
Working with ADS and animations is a lot, and you'd benefit from doing small things and working up
If you're so insistent on doing this then, you may want to consider asking more pointed questions, like what specifically with an ADS system you're trying to do, what you've done so far, why it isn't working, and post screenshots of the code. There isn't much we can go off with that little information, or knowledge of the project
But again, you're better off starting small if you're in the course stage of learning.
(And stop DM'ing me, read the #rules)
Fighting with ghosts in the machine? š
I am grateful for discordās auto DM block lol
I'd turn it on if there wasn't a handful of people I sometimes talk to lol
how i make line trace for entire anim montage?
š¦
What's the goal
Can't you "Tick Enable" at montage start, Line Trace Event tck, then "TickDisable" when montage over ?
I tried using ticks instead of visibility and for some reason that didn't work out
It staaaarts to trace but just... One frame. Goal is to trace for a period of time
you can use montage notify states for duration-based occurences. its like notify events, but they are defined by a duration over frames
UGH. Of course š¤¦āāļø I'ma try that in a mooooment
I want to have a confirmation prompt (a 2D element) so I use a widget, right? And I implement it using āadd to viewportā, right? But, the node says itās client-side only and shouldnāt be used for gameplay actions.
Don't worry about it
client-side only talks about multiplayer
okay i lied. added a notify state but now i'm stupid and dunno what next. can't find anything that seems to be related (and working) in my graph
you can run the trace in the anim notify state
hold on whaaat?
what have you attempted soo far?
Did you not create a blueprint of Anim notify state?
ain't gonna lie i don't know what you're asking
Create Blueprint -> Derived from Anim Notify State -> Name it ANS_MeleeTrace
open it and you will find a function that runs on tick as long the anim notify state is alive
mine opens empty
you can override the events on the left
Just post a picture everytime you reply
make it easy for both of us
What's the base class? show a picture on top right corner
parent class is anim notify state
nah
On tick runs every frame
Begin runs when the ANS is called in your montage
Ends called when the ANS ends
So if u want to run the trace every frame within the duration of the ANS, do it on Tick
"received notify tick" ?
when you drop ANS in your montage, don't forget to use your version instead of the vanilla one
okee dokee, got it in the montage for the duration of the swing - should i be calling something for the line traces Draw Time?
I could use a snack.
But i'm not sure how to now make that trace trace after adding ANS t the montage
You pull out the trace node
trace channel, complex, color?
You can figure that one out
i'm not your dad
you can put any color you like
Just a tip for weapon line Trace, you want to use capsule trace
Then probably draw a line trace at the tip of the sword backward to previous location, to compensate for low FPS users
and this is your skeletal mesh that is playing the montage. If you need reference to your character,
You can . GetMeshComp->GetOwner->CastToMyCharacter
hey, im pretty new to Blueprints and im trying to make my character move forward a bit (relative to mesh) after a mantle/vault animation is played and i feel like im almost there and the solution is very simple thats going over my head, here is my code before and now
the first screenshot of code works but only in one direction, so i decided to try the Get Actor Rotation and Forward Vector route but i cant but a vector to a float
and i know i can split the vector but it doesnt go any direction if i do and connect it to the Add Node EDIT:Fixed I got the rotation -> Forward Vector and Multiplied by Distance i wanted then added to actor Location
If you need a jump function, there's already a function for that in the default movement component
it was for a mantle or vaulting up a wall whatever you want to call it
Ahh, ok
yes, i knew it was a super simple fix, i just added and added when i shouldve multiplied then added lol
I'd just use make vector, and set x and Y to zero. Then multiply it by the distance you need to move
Then use add location offset.
yeah im just folling a tutorial but had to switch to a different tutorial cuz the first one used something that i didnt want in my controller so i was just going off the second tutorial
I see your interping it with tick, which requires your setup
also is there a way i can change my key to Hold Space without jumping first? i currently have the vault key to X which isnt very good in game so i want it to be space but when i try to make the key space it always jumps first, any fixes?
do i have to make the jump delay ?
No, you could use your implementation that you have created to check if a vault is possible to decide if you should allow jump. If this is a function with a returned bool, just set thi S up before your jump input and a branch.
You would only be able to move along the x axis. Your game is side scrolling?
No just for that moment, i have another fuction that allows normal movement after the animation
uhh so in lamens terms, add a branch right after the jump input?
Yep
the condition would be a "CanVault" ?
@sturdy leaf Glad you found your answer š
thanks
@foggy escarp would any of these work or would i have to make a new bool variable?
I'm not sure you would need a variable because it's something that the code won't know until write after the input is pressed. I was thinking that within your function where you call your vault event, you would have a function that does the trace that attempts to find a vault able surface. You could use this to also decide if it wasn't vault able, you would jump.
Can I see your main event graph where your inputs are?
like the whole event graph?
Yeah, or at least where the jump input is calling your vault.
does this work?
the second screenshot or you mean something else?
Yeah, so you have options on how to do this, but if the vualt key is meant to be adjustable, you would want to keep them separate how you have them, but you do need to select all you logic after the vault input and convert it to a function. The goal here would be to return a bool weather or not a vault should happen. This would allow you to use the function in multiple places. I would just put it right after the jump input and (Can Vault) true then nothing, if false, jump. Then the opposite for vault side.
I know I can just us IsValid node and connect the character ref but just curious, what is/how do I place this node? I cannot seem to find it aha.
It's a normal variable getter, but you right click and convert to validated get.
Ayyyy thanks aha I don't really use blueprints so could not figure that out š
ok but would i have to do Set CanVault in the vaulting section or have its default be true or false or? cuz the vault works like any other input
It's a good time saver
I recomend you to copy your logic for the vault trace and convert it to a function, if you haven't worked with making functions this allows you to experiment and test while still enabling you to reconnect it the way you had it if your function is breaking things.
But basically you just need to create a boolean output parameter. And in the function branch it and return true or false depending on your trace result.
Blueprints gets much easier when you collapse things like this to functions because it allows you to simplify bigger problems into a couple small ones.
sorry if im being dumb but youre saying i put all the Vault nodes into a function and make it return node with a output of CanVault? if i got that right do i make that true?
'CanVault' is just what I would name the output pin for the function. Once you've created the function you can create multiple return nodes which will return 'CanVault'. This sets the return pin and exits the function.
Sorry if my typing is difficult to read, I hate typing on phones.
no its not difficult to read im just extremely dumb when it comes to blueprints lol
We all were at some point
also would the return node with CanVault have to be at the end and would it have to be set as true or false?
currently have this if this helps
If you look at your current implementation of the vault logic if you still have it there, you should see a point at which the code is basically asking the question, "can I vault?". Where ever this is you could belasically just adapt that to return a bool within the function.
Oh. I see you aren't handling this with you current logic
Your vault trace is the relevant part here.
If the trace fails, return 'CanVault' false, if trace successful 'CanValut' true.
Yeah, instead of using the branch in the function, simply return the boolean after setting the vectors you have. You would still need to add the branch back in after the function, but this enables you to reuse the function where you need it after jump.
ok lol so move branch to back after the SETs and wdym reuse? are you saying for if i want to be able to change keybinds?
The reason why you should be converting this to a function is because it allows you to have a quick and easy way to ask the question, 'should I jump or vault'.
Now for the branch, I mean to add it back in not in the function it's self, but after the function call in the same graph of your vault input.
You want to call and stream instead? It'd be faster.
uhh yeah probably lol
and thatās how a romance began
Hey guys , i can't find nice aim down sight tutorial do you know any ?
How can you quickly get the current loaded slot name?
Anyone know why a widget with visibility of Not Hit Testable (Self & all children), still absorbs my clicks? I can't click on the UI element below that one, even though the click should go through
Edit: Figured out that for my custom drag-drop solution, setting the Image's texture in beginplay via Make SlateBrush and Set Brush would also set the visibility to visible, even though personally I think setting the texture and setting the visibility should be 2 different functions, but it does it both in one node. So I had to set visibility to non-hit testable after setting the slate brush and now it works
Be more specific
Slot name of what?
The Slot name when you put into the load game
have a little collision on component begin overlap if i put a print node on this and run in standalone it works fine if i run on listen server or client it doesnt work. i have another component set up the same in another actor and it works on all three but i need this one to work as well
That will be the name of your .sav file
U need to provide the name
Think of how you want to do your save system
Easy one is to do fixed slot
Where you assign slot name on each slot
I want to do a multiple save deature
Remember you could always use widget reflector to see what the cursor is hit-testing.
Can I get a reference actor/controller/pawn to whoever the local player is whether is be the server host player or the client player? Im trying to pull location data from whoever the current player is and I'm having an issue where only the host is being stored in my actor variable on both host and client.
Im working on an isometric game.
So i set the camera to ortographic and its working.
But in the editor its still warped/perspective
is there a way to make the camera ortographic in the editor so i can see what im doing properly?
perhaps by calling a Brutility ?
I think orto cam has some bugs right now
Check with #multiplayer and show screenshots
@shut yew
In controller use islocalcontroller. In pawn use islocallycontrolled
yup it sucks cause everytime i need to check how my iso game is looking i need to press play to see the orto cam š¦
its really a pain in the orto lol
does this symbol on the top right mean anything?
Yes, it means it's a replicated variable.
can anyone help me find out why I can't find engine rotation in vehicle movement even through I am able to edit it in it's proprieties?
Hi, how do I load multiple levels at the same time? my setup is I have a loop with a list of names of the Levels I want to load,
The problem I'm having is the Load Stream Level is a latent node. It only loads one level most of the time. can anyone give me ideas as to what workaround for this? Thanks for the help.
Is this really the best way to check for which type of projectile hits an enemy? (FYI, this was just my thought based on a tutorial I saw and I just want to know if there is a better way). I'm currently doing at least two casts, (and a third to see if I hit the player and deal damage to the player).
- Cast to see if the enemy is hit by my Darkness projectile
- If the darkness is NOT valid, I check if it is hit by my Light projectile
- If the light is NOT valid, I check if it was the player.
I feel like there probably is a better way and I just do not know it. š
The projectile shouldn't really need to care about what it's applying damage too. The project would just call the Apply Damage node on what it hits. What you want to recieve damage would then implement the OnTakeAnyDamage event and handle the damage. You can specify custom damage types that the projectile can specify when applying damage. The hit actor can then check this if needed to perform any calculations it needs.
Okay, and there I could say "Should only hurt when hit by Light and not by darkness?" as an example?
Yea, so it would be what's hit that decides if it should recieve damage.
I want to select different units with a rectangle, these units should only be selected if they have the bolan "OwendbyPlayer" set to true. Does anyone know where I have to install the block?
code in Unit:
[Chaos Vehicles]
Hey good folks, quick question from a noob, how can I "know" when I'm in reverse gear if they have a separate index seemingly? As you can see I'm attempting a primitive reverse lights setup. Currently using point lights as placeholders for bulbs' emission later on.
Is the Add Data Table Row node bugged in UE 5.3 ?
I am trying to write to a data table using an Editor Utility Widget but I am getting this error:
LogScript: Warning: The data table type is incompatible with the RowData parameter.
EUW_Utility_C /Game/Maps/GameLevels/Office_Space.Office_Space:EUW_Utility_C_12
Function /Game/Blueprints/Framework/Utility/EUW_Utility.EUW_Utility_C:ExecuteUbergraph_EUW_Utility:0184
I am absolutely sure that the struct type I am passing is correct.
Only if you do multiplayer
Thanks. Will read up on it!
Solved. Being the noob I am I forgot to do the most important thing in debugging. Print whatever I'm checking. Reverse gears are actually not "0,1" as seen in the index, but "-1,-2".
When using GLTF Exporter with Object that comes from Get Sequence with target as Start Recording, the editor crashes. It also crash when i click an random object to export. Asset list is empty, how to solve this?
I want to export animation subscene and it would be possible with that function
Just to clear things out.
An Instanced Static Mesh Component is not worth it, if the meshes are distributed along the map, and you only see 10 or 20 of them at one time. Is this correct?
In that case using just plain Static Meshes is better?
not sure about Sequencer, but i think you need to use '/' and not ''
And have the .GLTF extension on the end
you can also use built in Get Directory to get your folder/file path
If you can handle the extra drawcalls and whatnot
Not sure id call it better but
Depends on the criteria for being better is
Dont the engine auto instance these today anyways ?
Hi all ! Anyone knows how can I acces to my WPO infos of my Material in my Blueprint ?
Like for example I have Gerstner Waves to make my Ocean and I would like to access to this into Blueprint to make an actor "floating" and following the waves
not that i know
i mean more performant
because ism is good for when you have many instances on the screen
but if they are not on the screen then it doesnt matter
Like for example. You have 200 meshes on the screen, then make it ism
but if there 10.000 meshes on the game, but only 5 on the screen at all times then it doesnt matter
maybe im wrong...
Hey, I don't know why the result on the top left says "You have enough space" it should say "You don't have enough space" because the amount of coins in total which is 205 is split in half due to there being two backpacks so there's 102 coins in each bag. And the greater condition has 100. And because of the not boolean it should result as if the amount of coins is not greater, then it is true which is "you have enough space" and if its false then "You don't have enough space". I tried debugging it, is there any other solution to fix this?
I hope I understand it properly now, ive got this:
So basically I make a Delegate that another system(in my example the buff system) wants to "hook" to.
Said delegate will be called(getting damaged) whenever I want something to happen in the buff system.
Then the buff system binds a function to said delegate and - in my case- reduces the amount of stacks on the buff.
does this look correct? š
I can't tell if something work or not from this picture alone. Multiplayer is hard btw, you are warned
if my tool is BP only, I will never attempt doing RPG or FPS in networked environment
thhere's soo much you can't do in BP especially networking stuff
ye thats why i explained it in the text above,i can give the other blueprint too, np š
i know MP is hard but im motivated enough lol
better learn CPP then, motivation alone is not enough if you don't use the right tool
you can't even expand CMC with blueprint
soo many walls that it's not actually viable to make bp game for multiplayer
this is the construct of "buff"
and this the bound function:
Well good thing I know c# already, "just" gotta lean c++ when we hit that wall š
With delegates, you want to do 2 thing. Binding will hook a function to be called and it will start "listening'.
When the delegate in the BP you binded gets called, it will run the function that you assigned, in this case SRV_OnPlayerGetDamaged
wether it work or not, I can't tell from here, you have to test.
yoyo, it seems to work, each time i get damaged the duration of the buff is reduced by 10 š
just wanted to double check if i am doing it right in the first place,as we all know,just cause something "works" doesnt make it right XD
in the future i will change it so the stacks of the buffs will get removed, but just wanted to make a "quick test" and duration rduction of the buff seemed to work š
Oooh yea it worked. Awsome š
Set looping to true, then do a for loop. On Completed , clear the timer
the for loop where exactly before the spawn or after it
on the timer event
delete all your spawning logic
On Begin Play -> Set Timer by event -> Set SpawnIndex to 0
On Timer Event, Get all Actor of class Trigger Box -> Get array, use SpawnIndex for the index. Then spawn
If SpawnIndex > 5 , clear and invalidate timer
ok i will try it
ye nice, this proves i understood delegates correctly,thanks š back to work š
can anyone help me?
there is on little proplem here i use the trigger box index as spawn points in the level so if i used spawn index that cant work
it named like trigger box 5 and 6 and 7 and 8
Hello!
I have a marker system in my game that i am coding, i want to make a marker visible on the edges of the screen when the player is not directly looking at the marker, like an arrow pointing in the nearest direction to the marker?
I am struggling with the math for it š¦
Hello hi i'm having a bit of a struggle haha. i'm doing a line trace for objects, getting the hit actor and i would like to test if the actor's parent class is one of my custom classes, but the line trace seems to only be returning static mesh actor and then, returning "actor" as the parent. Which makes sense cause the line would be colliding with the actor component, but isnt the result i'm looking for.
this is my current logic
I have an umg widget i want to rotate accordingly...
I guess I need to replicate my calculations of my gerstner waves in my blueprint but I'm using a "Custom" node HLSL and I'm stuck.. :/
what is wrong here
For starters, get actors of class crutch used with no for each loop and getting copies instead
A smorgasbord of nodes lol
you gonna be asking question constantly and never figured out what you are doing wrong
yea
Should prly start with āyour first hour in Unrealā , BP comms live training, the basics
If you expect people to help with your problem, you gotta make effort. Most people here are willing to help showing how to catch a fish, not catch the fish for you
Here freebie
if you don't understand, then learn all the basic
- Create a BP actor, name it BP_SpawnLocation
- Drop the BP_SpawnLocation to the world
- Follow the Picture to start spawning
Bonus points for reroute nodes
thanks for the tip
My spaghetti is no longer a Spaghetti monster š
Hey, when Iām about to rename my level this shows up, am I gonna lose anything or is it safe?
its sad though that im one year almost one year and a ahalf and cant figure out what im doing wrong
Renaming the level can cause some serious issues.
Most other things can be fixed by fix redirectors but Iāve seen people break their project renaming their level so have source control ready
You gotta know what does what first. You don't have a clear picture of array, timers and nodes, you won't know what goes wrong in your code. Take the time to learn the tools and understand what each node does
probably its the game/editor startup map. you need to change it in project settings. should be safe to rename, but use source control in case
Mine one was broken but I think it only happend for WP one? I am not sure. Ditched WP maps and never had the problem soo far
Try going back to the basics we recommended so you can grasp those and build from there
i understand alot but there is alot more to go
Youāll nvr really stop learning
But slowly youāll get better at it and develop a good foundation so new things will come easier
The first part of that is important tho
Idk, I havenāt had the issue myself more than once but Iāve collected tears here
im scared that i will be spending alot more yers in this without knowing what im doing wrong
maybe i should quit instead
learning absolutely takes years. You never stop. I've been using the engine for just over 4 years, and I still find new things every day
I'm 8 years... and probably know only 5% of what you know @thin panther
im jealous of smart ppl š
Have you got somewhere else to be thatās more pressing? Building something takes time and learning to make it well even more so, Rome wasnāt built in a day. Also taking that defeatist attitude will not get people rallying to your aid to boost your morale. You need to find your own will to keep going, and sometimes itāll be harder than others. Whatās important is that you keep at it, something is better than nothing. No one else can help you with that
There's a point of time, if you keep learning. Blueprint Communication can click in your brain. You know how to pass data and work with references
once you understand that, you can start doing your own thing imo. I didn't look at tutorial for my dialogue and inventory system
Yeah having that foundation is certainly a leg up
can;'t say I am doing it efficiently or right but I can start making things work
hope i reach that
I think it gets to feel good when you finally start being able to make basic things without wondering if itāll work or not lol
i havent got anything harder than unreal even in the 4 years that i spent in college
yup. Just like drawing I suppose, if we keep doing it everyday, there will be a day where we can start to enjoy it
Idk, I canāt art š
i don't know anything about art, i have a friend who helps me with that stuff
same but there is the 10k hour golden rule
Speaking of not knowing how to pass references š
College is only there for recruiters that donāt know wtf the job requires to be able to differentiate you from the other candidates.
Nowadays itās mostly a business, not rly there to teach you much in itself. Learning a whole giant engine, mostly on your own, is much more challenging
But alas thatās more of a #industry-chat / #lounge topic
this discord has helped me a lot
yea even if its computer sciene
The class check is soo redundant
just cast right away
Cast
Oops beat me to it
But wont casting break if i"m grabbing the wrong kind of object?
it will just run the cast failed exec
if you cast to the parent it should find if it's of that class
Casting is your friend, ignore anyone that says otherwise until you get to a massive scale where other tools are needed and not before
My personal struggle with unreal is how much stuff it takes care if for you like that. I never would hav thought that woukd just work
i recently learned about parent, child class, it's pretty sweet actually
Thanks homies
OOP is great, but tbh it took learning UE for me to actually get it
Visualizing it in code was much harder
for me the code is easy, it's just getting around UE and all the settings, configuration that's hard
Anyone knows if I can copy an HLSL code into a blueprint ? Or how to convert it ?
Is this correct?
Or am I missunderstanding how to use this?
That looks about right.
Thanks! And is that better than casting? Just trying to figure out the difference. š
Because what I did before was to check on the "Hit" event if it was hit by a projectile or not.
And now instead I apply "Damage", but that seems like i can't handle the "hit-normal" and I would need that for the knockback of my character.
Cache the rotation for the A rotator before the timeline
you mean world rotation?
You are suppose to go from point A and Point b in fixed value
If the value changed mid way u are not gonna get the same result
well the idea was that i'd just lerp to 000 rotation
because the cameraParent is a child of the spring arm
You can try to use fixed values
ye, i'll try world
Don't know what else to say for your timeline part
ok world works perfectly lol
i should've asked way earlier, why the fuck didn't i think of "just cache it"

What did you actually do? I don't think we r in the same page. Post a pic
i press alt (freelook button)
i cache the current camera world rotation
i let go of alt
i lerp towards it
actually good point, yea
i mean- technically it still works because in the end it's 1 one way or another-
but for cleanliness, ye
Probably
i think i've poorly described my problem or misunderstood where or what to cast, but the cast is failing every time. it's still getting the static mesh instead of the root object š«
still wtffffffff even after you gave me a picture they are still spawning at the same time wtffffff is that
Not on my end
yea i hope someone can find a diffrent way
The last thing you want is to hope someone to solve your problem
Because u are not solving the problem for good
you should use Wish
If someone do your homework , can you do the next one?
Try to understand it instead. Node by node
ok i tried but failed
give it few days
even chatgpt couldnt help at that
yes the only one that can help you is your self
you can ask quick question, people would be willing to help
but for tutoring and hand holding, you will need to pay someone
how much
for foundation, go for the free option and scour the internet
i will try asking in the internet if i didnt find a solution i will pay
From last pic
Is there a way to get the "hit-normal" from a Apply Damage node? Beucase I need to get the hit normal to see in which direction I want to "knockback" the player, but I can only see it on event hit. And Now I'm wondering if I'm doing something wrong because of this. š
Because right now I'm using the event hit and "casting" which actor hit it and then do different things. E.g.
- If the enemy is hit by a player projectile it will take damage
- If the enemy is hit by the actual player they will insteal deal damage to the player
And based on a question earlier, I "ideally" shouldn't cast when checking for which type of damage to deal. But maybe I'm just missing something.
hello, i am having some weird memory / googling problem, i can't seem to remember / find the shortcut to add a reroute node to an existing line
Double click on the line
Unless I missunderstood what you wanted.
Use which ever is most applicable. It sounds like you might need to use the point damage one if you're wanting to handle knockback. The apply damage could be used for handling generic damage whilst the point and radial could be for different projectiles.
I did not know about all of these! I googled apply damage, and didn't get that point was the one I wanted.... Of-course point is the one I wanted. š
Again thanks!
No problem. š
which one exactly?
that is probably it
i guess the if node
yes š thank you
not sure whhat you mean by the if node
isn't your question about how to get one of the value from the 2 floats
One of these nodes is a float2 and I need to turn it into float1
the output type ig
need to know the actual problematic node to even begin
the multiply node
you can't multiply 3 floats with 2 floats
how can I change that?
you just don't multiply 3 floats with 2 floats?
I don't know how to hide some of the values except in Mask (RGB). You can select to only expose the R the G or the B
where?
I am new to this sry
I don't know what storm Alpha represents or it's values
can;t tell, but the error is you can't multiply a 3 float with a 2 float
so your solution is either multiply 3 float with 1 float , or 3 float with 3 float
i don't know what this material does nor the result you expect from the result
are you following tutorial or something?
delta (Rotator) ?
I don't know
just suggestion
thank
Hey guys just a quick one, is this working as intended or is it a bug?
I'm just telling it to spawn the fire BP at the world location of my cube component. I've also tried 'get actor location' too and it spawns in the same place. In this scene, where the fire is, that's actually world 0 on the Y axis I think. But X and Z seem to corrispond to wherever I put the overlap cube
Or maybe it's 0 on the world X axis that it's spawning on, but corresponding to the Y and Z axis
surely not a bug, your reference to the cube is probably wrong
It could be, I'm just trying to do an overlap without using a cast
just a learning experiment
just do: if, other actor == cube then...
and why the do once node?
So it only spawns the fire once
looks like X, Y is working but Z is f'd ? it's directly above the cube ?
Na man it's on world 0 on the Y axis I think, but for Z it's corresponding so it's like z = 260, x = 1870 but y = 0
it's weird
but like Cat said I'm probably doing it wrong
try print it's location x,y,z after spawn
Z is usually up/down
and it looks like your x,y is correct
but z is way high
but they could be off also, but if it's directly above it that's probably the issue
good point I'll do that
Just placed a cube at the exact X and Z location of the overlap actor
but 0 on Y
the fire is kind of off that
yeah
looks way off, make sure the reference to cube is correct
looks like all three are f'd
well 2
one looks legit, your Y
in this part we will edit the base sky material to include some panning clouds and we will make sure to detail our clouds so it matches with the effect of the eye of the storm.
#unrealengine #techart #ue5 #shaders
discord : https://discord.gg/dr2QnpH
check where is cube in world space.
Go to your level, select the actor that own the cube and select the cube. Make sure it;s 0,0,0
it should work for you if it work for them, so long you pull the right node
I checked and the cube is 0,0,0 and the actor itself with the cube is x1870, y1040, z260
He used a custom node, I used the if nodes instead
so he could make the output float1 instead of 2
so it's baffling..
this is after the spawn ?
Using what? You can just grab one of thhe value from float2
the fire itself spawns way off
use component Mask
i would check your reference
I just did actor location too
same thing happens
I'll keep looking into why this is happening because it seems like a bug to me
I've never had this issue before
try a different reference
or a different cube
somethings probably messed up with cube i'm guessing
log cubes location before the spawn
and then log the data after
so you compare
read it? you have the project on your hand, it's hard for us to see the missing link
Are you able to translate what you write?
Sorry, it's just a very simple overlap collision. Pawn ((me) overlaps the box, check if it's true, then spawn 1 fire BP from the starter content at the location of the overlapped actor (the box)
and how is it?
does it spawn in your box location?
Everything works except the fire spawns in the wrong location
That's not helpful, go in and print screen
I never seen this before
Me either, I'm assuming it just means multiply the scale value by the current value, because the other option is to override it
what version are you on? it doesn't exist in 5.1
open the drop down and check the options
5.3.2 currently
and if I 0 out the scale it spawns where it should
but no fire because it's zero
and change it back to 4 , should be fine
this is at 1.0 ?
nahh
read what it says
Multiply transform by scale
So your current Location X, y, z * 4
Just leave the option on default, which is override root comp scale
I don't have 5.3 but thhe top one isn't what you use previously
you might have changed it accidentally
I promise I didn't change that dropdown to multiply manually
so ofcourse it's scalling by 4 but also offsetting from the root by 4* too
weird
thanks for helping me get to the root of this
Actually this has just made me think, in another project there was an issue like this after migrating to 5.3
I'll have to check
Is there a function for 2D spaces, that works like look at? I need an angle as output
i have to vectors too
i just dont know how to calculate them
@fast finch I'm bad at math but dot product, sin cos tan, all that can be applied to 2D
See
Finding my angle for rotating a 2d player to the mouse cursor was using dot product.
2D is the same but without Z
maybe acuppa is on something there
the dot product between my 2 values is GIANT
its at least 9 or 10 digits long
i know because of distance v2 that the projection is a success
but the dot product is completly insane
completly insane
i got that fancy 2D Dot going too
i am getting angry
Gonna normalize my vectors
Hey I like the clean node connections, is that a plugin you got?
ya electric nodes
Very nice I like it, thankyou
what the.. I already own it
it's like finding money in my coat pocket that I forgot about
Thanks @fast finch
this is looking so ewww
I hate it
lol
I'm playing with it now, I just noticed the limitations but I think it looks cool still
Hello , can someone know why , when i respawn/spawn (and possess ) a actor the speed of movement is 10 time slower
I just need to calculate an angle from 2 vectors...
My version of that , not as clean as you XD
you figured it out?
no
use reroute nodes
This calculus 3 video tutorial explains how to find the angle between two vectors in a 2D system and in a 3D system.
3D Coordinate System: https://www.youtube.com/watch?v=EzJP9uwV3ms
3D Distance Formula:
https://www.youtube.com/watch?v=0c6cP2zLC2c
Equation of a 3D Sphere: ...
ty
maybe you set the movement somewhere ? it that code didn't run again ?
Hi, I am trying to convert an FName into a gameplay tag, i've been able to do it in c++ but i can't see how to do it in BP
nope that is why it is so puzzling
(temporary test setup ) the only thing i did is that
well your previous character and the one you posses might have different movement speed
check their movement logic as well as the movement speed
it is the same that i respawn
what is your default walk speed in the movement ?
i mean since you can use c++, a blueprint function library is handy in c, then you can do a lot more in bp
well yeah i could wrap c++, but you would expect it was already done in the engine somewhere
what does the code look like ?
as far as when you respawn n stuff
Anyone know how i can go about modifying the blueprints from this video so each gun is different like one is a pistol that does something different one is an AR one and one is a shotgun? https://www.youtube.com/watch?v=M8BVyNDlGQQ&t=1430s
šYou'll learn how to:
- Setup Character Blueprint.
- Setup For Each Loop with Arrays.
- Setup Sphere Collision.
- Setup Overlap Events
šFollow me on social media:
Discord Server: https://discord.gg/ZB7SMbbxQz
Twitter: https://twitter.com/LocoDev7701
Instagram: https://www.instagram.com/devloco
ā
Download the project files:
https://www.patr...
hi guys do anyone of you know how to spawn enimes one by one i tried this but didnt work
tried it
yea i know
you also need to set the array at the top
not inside the timer function
Get all actor of class promote to variable
gave you the literal node, try to use that as reference
the proplem is i dont know what the main proplem is
like its just 4 freaking shere boxes
sphere
yea and it's easy to do if you are willing to learn the foundation
eg Arrays
But you are forcing your self to do something without knowing how to use the tool
you are just gonna be lost forever
is there any simple tutorial in the internet
if you want to solve it out for good, bite the bullet and just learn how to use array
read anything you can find about array
find when is the problem it is on beginplay it didn't do a script when it spawn
ok i hope i dont end up asking the same question again
asking question is welcomed, ppl will try to help but they can't go through the basic for you. Read whaht you can, keep on reading until you can make a working example. Ask when you get stuck (not with something specific like how to spawn, but ask about array it self)
I have this pickup system that takes a gun model that is simulating physics from the floor, attaches it to a point i have set on my fps character and stops simulating the physics but it just instantly teleports into the spot i have set for it when i click interact to pick it up. Is there a way to have to visually and smoothly go from the ground or wherever its currently at to the point i have set for it on my player?
ok
Timeline or Interp
this the main part of the code i have for the part i mentioned, would i just put a timeline in between set simulate physics to off and attach actor to component?
You run it when you want the interpolation to hapend
hey , i was wondering if theres a way i can spawn a sub level in specific locations in the persistent level ? (check image )
once a player steps into sub level 2 , the base in the first location unloads , and loads in the second location as shown in the pix
I think UE5 going to use World partition as the new standard
He just a grumpy one don't take it personal
why is this failing? this makes 0 sense. The CharacterRef is valid
you have something in bp player component ?
Blueprint corruption is the likely culprit.
It can happen. If the details panel of the component is empty when clicked in the BP editor it's very likely the cause.
How do you know
You've hidden the rest of the code and you never check character validity
because this is in animbp and the character moves
Ok and how are you setting the reference
It wouldn't go past the cast if not valid though, would it?
cast is validity check
ye wouldn't past
I've seen weirder happen
Load Level Instance (by Name)
There is the ability to create instances of levels at runtime with a specified transform.
the component has details
appreciate it champ
Okay so if i put a delay before the character cast it indeed works. I guess my animbp is too fast
any reason to even set the component?
you already have a ref to player
so how do i wait for init without delay
but why do u even need to set it?
cuz i use it
but u have ref to your player
so when you use it you just go player -> get component then plug w/e u want
yes cuz my other code is on comp
well I don't know what's best practice
ye so when you want to use the comp in anim bp.
Get Player-> Get Component -> Get something from the comp
also instead of delay if you want to set the component that way
that is what im doing?
Maybe do it one vent tick, if not valid try to set, if valid just keep going
no i can't im using thread safe
i mean i just need to grab it once
Ye so the player character ref is valid right?
Anim BP's don't really need to cache anythin
You can get away with casting and getting
if player char ref is valid, you don't need to have a player ref component declared in your anim bp.
Simply access player then get the component from there
yep, just grab the ref every time you need it, no point in storing it
it'll also improve readability
by a fair amount

rather than a random value in some variable, you'll see it's clearly a component from this actor
yea you are right. kinda useless what i did
works without delay now
and you can check if its valid on init or whenever you need to beforehand
did you not assign the anim class in the component previously?
I never recall using any delay in my anim bp, would like to know if there is something I need to keep an eye for
no there is nothing about the character nor anim class in the component
i mean just character parent class
hmm I still don't get how you fix it w/o delay
but hopefully I don't have to worry about it
i just removed everything and it works lol
Hello guys !
I'm back with some basic implementation questions. I saw that in my Vehicle blueprint, there are functions like triggers or callbacks on the list of functions. these functions are specific to the inputs that came with the CitySampleVehicle pack, I would like to understand how are these functions mapped to the blueprint, like.. How does the blueprint see them and import them these automatically.
I am doing the same on the character blueprint, but I cannot find those input actions functions ( or triggers )
the image above shows the list of functions on the left, which includes the input actions triggers
that is in BP_vehicle file. it works as expected. Now doingthe same with character pawn BP
if they are listed there that just means they are implemented
there is something telling the vehicle BP where to look for input triggers ?
why use a data table instead of a struct with a nested struct, if theyre pretty much the same thing?
They also are NOT custom functions ,which is the only thing i know for now
they're just events that get called when the input action is triggered
again, the list on the left just means the blueprint is subscribed to the event
the names match perfectly with these
yea that's how you define them
now the question would be , how to subscripe the character BP to other inputs
and then you can implement them wherever (though there are best practices ofc)
i want the mapped with these , for the character
that's an input mapping context
and actions inside the folder
you need to add it to use the associated inputs
enhanced input
if you want to make ctrl key do different things for example you can swap out input mapping contexts
and have an action bound to ctrl from both implemented for different things
that's the point of the new enhanced inputs AFAIK
that's what i need actually, between the vehicle and the character, keys would do different things
yea you just add the mapping context and then receive the input event you define in the data assets
that's kinda it
when you enter the vehicle remove the default mapping context
add vehicle one
have another always on mapping context for menus and stuff
I assume you are working with blueprints someone else made?
that one, i made, and it works using the Vehicle BP
except it also has these
for my character
yea those are the events that get called if the corrosponding mapping context is added
I had the third character BP inherit from a default C++ character file
i removed that inheritance and inherited from the default "character" BP
I assume you mean ACharacter
i readded the possess/unpossess actions above, but missing the other nodes
the c++ class you inherit from if you add a new blueprint of type character
yea
this should work
are you sure that the input actions are in the mapping context you add?
and if so I'd do a bare minimum test
with just the input and nothing else going on
either you notice there's an issue with the setup somewhere and double check all the enhanced input files
or you'll know to look for an issue specific to that usecase
wait, i'll summarize
If I wanted to find a specific struct in an array of structs, does the Find node search for something that has every value accurate, or if I just entered the TeamName would it find the one with the right TeamName?
It finds only an exact match, so it'd need to have the exact contents you want to find.
Okay thanks for the info. Another struct question, say I did find the struct, is it possible to update a single value in the struct or do I have to add a whole new struct to the array when I want to change something
You could "Get (a ref)" from the array then use a "set members in ...." to that reference and update the specific fields you want.
So just wondering if anyone knew how to do this but I'm trying to make a countdown timer for the start of my racing game and i have the ui setup but idk how to make it so you can the enemy ai and the lap timer doesn't start going while the timer is going
how did you make a countdown timer
can you send the code please
I have it in the game mode
No the actual code
like c++?
that is very low res
like split it in 2 parts
and does it work tho
like the countdown
yea I have ui count down but idk how to make it so you or anything can do anything while it counts down
can't ?
ah ok
idk hwo to pause the game
set game paused
but you could also just use a boolean, and disable the stuff you want
Does the set members in node automatically update the struct? Or do I have to do something with the struct out?
did you get a copy or ref ? that probably matters
ref
well it's odd that you drag from there to there, just promote to variable and use it, i usually don't like to cross lines on the execution
oh ok thanks
With that "Set Members In..." node selected, you should have an option on the right hand side and it lets you show the fields - select only the ones you want to update and then you can plug in the values you want.
I see that š I was just wondering if I have to do anything with the output or if the array value automatically updates after that?
If it's a "Get as Ref" then it should update the value within the array automatically.
Okay awesome. Thank you so much!
