#blueprint

1 messages ยท Page 318 of 1

robust flicker
#

When I connect Draw Spline, the entire movement function stops working for me.

lofty rapids
#

it says actor deselected

#

so does it fire when you click on something else ?

#

put a print string of works, or hello tight at the beginning of that event

#

so you can see when it fires

robust flicker
lofty rapids
#

as far as that event goes i would check when it fires off, and also check the branch if it's false or not

#

debugging usually helps

#

but i don't even see where you fire off this event so i don't know when it should be running

#

either way some print strings will help you see if it firing

#

this way you can see if it's the event not firing, or the branch going to false if it is running

#

the branch checks if the component has tag gridToMove which i'm guessing is how you setup your grid only click to work

#

as far as no on the print strings, i mean it does show whats going on but do whatever you like

#

maybe you can use debug as well see what is and isn't running

robust flicker
#

Thanks, I'll try.

lofty rapids
#

if the event isn't firing you do one thing, if the branch isn't working you do another

#

it's just standard debugging

#

i prefer print string, but some people use the actual debugger and trace where things go

#

debugging is essential, its not so often the problem is obvious

random pulsar
#

hello for everyone

#

can i get some help regarding vfx?
when i dash i want to spawn a niagara system like a trail ,but i didnt succeed with this setup(i know the nodes are disconected)

undone sequoia
#

why even when I set here any trace channel this trace is detecting literally everything on map?

#

should not it trace only picked one?

lofty rapids
#

if you want it to work on just one thing, default it to ignore, then set it to block on the thing your trying to hit

lofty rapids
random pulsar
#

i think the main issues is i cant understand how to set the Dash End Location
so i launch the character then set its end location ,but he already made the dash so first point cannot be identified or something

#

idk

#

i think of an idea maybe have a component that draws permanent a trail after player movement
but enable it when he makes a dash and disable when he does not

lofty rapids
#

maybe justt guess the end

#

if your hardcoding the dash

#

then you can pretty much say its x or y length

#

just a bit of trial and error

#

possibly use velocity and direction of character

#

after you dash, you may be able to check velocity and calculate something using that

dark drum
random pulsar
trim matrix
#

hi, im trying to make a lazer tag minigame, i have this setup just using the weapon component but the line trace has an offset it dosnt ever shoot from the gun and i wasnt sure how to go about fixing that, ik its prolly something stupid but ๐Ÿ˜ญ

#

๐Ÿ’€ why did it crop the video

dark drum
dark drum
dark drum
trim matrix
lofty rapids
#

because your not shooting from the gun, your shooting from the center of the camera

#

your whole gun is offset, is this the template ?

trim matrix
#

yea

lofty rapids
#

right so if you notice the gun is offset, what are you doing with the trace is this supposed to be the shot ?

trim matrix
#

i tried using it from the gun and it started tracing behind the player

lofty rapids
#

what are you shooting ? thats not a projectile ?

trim matrix
#

its setting scale of a cube, im not shooting anything

dawn gazelle
#

Were you hoping that the laser would be travelling to the hit location from the trace?

trim matrix
#

yes

dark drum
#

Starting a trace off center is tricky as it results in a few problems. Tracing forward will never hit where the center of the screen as distance starts to be a factor.

You kinda have to do 2 traces. An initial trace from the center (what you currently have) to get the end location of the 2nd trace. The second trace can start from the end of the gun to the hit location of the first trace.

You can then add some additional things like rotating the gun to face the initial hit location as well.

dawn gazelle
#

Here's an image to indicate part of the problem if you're not manipulating the end point of your laser or rotating your gun so it aims at the target location from the camera.
Another issue is if you just change the end point of the laser, it'll look strange as the beam won't look like it's coming straight out of the gun.

#

The red line is the camera trace, the green line is the laser ๐Ÿ˜›

lofty rapids
#

would of been nice if the gun in the template pointed at the center of the screen lol

dawn gazelle
#

It does at some point.

trim matrix
#

so, next step is another trace?

lofty rapids
dark drum
maiden wadi
#

It's fine. Popular games have gotten away with shooting literally from the middle of the screen before.

trim matrix
#

i have a scene component added to it, would getting the location of that work? or am i wrong lol

dark drum
trim matrix
#

like this?

lofty rapids
trim matrix
#

yea

lofty rapids
#

your not shooting a projectile tho ? you have some sort of block your scaling ?

#

so you want that to hit the center ?

trim matrix
#

yes

lofty rapids
#

what did you do just add the block to the gun ?

trim matrix
#

yea with a pivot point on one of the faces, and then when u shoot it scales it on the y based on how the line traces distance to wall

#

only other issue i see w doing it this way is the line trace can hit walls far away, but the mesh wont scale that long so sometimes youll shoot and it wont show the lazer bc of that

lofty rapids
#

your weapon is placed in your firstpersoncharacter ?

#

so you don't have to pick it up ?

trim matrix
#

yea

lofty rapids
#

ok so one good thing if you want to do that second trace i think thats right what they were mentioning

#

as far as i think you did it right you just used this lazer thing for the start right ?

trim matrix
#

yea

lofty rapids
#

but usually you have to add start to end then plug that into end

#

but if it works then thats good

#

but what do you want to happen the gun to turn ? or just the shot

#

you can use the lookat rotation from the lazer to the end of the first trace

#

then rotate it

trim matrix
# lofty rapids but if it works then thats good

thats working now, but the issue of the trace hitting walls too far away and the mesh not scaling, but i feel like if the trace isnt long, the lazer wont shoot as far, giving the player kinda a shittier radius to have to be rly close to others to get them

#

bc like, the line trace is hitting this back wall, but the player isnt close enough for the lazer cube to scale with it so it just stays hidden

lofty rapids
#

where is that line comming from ? lol

#

i c so your lazer thing only works so well

#

thats odd, your saying if it goes to far then it doesn't scale ?

#

or it just does nothing ?

trim matrix
lofty rapids
#

somethings definately off with your trace for one thing

#

but i'm not sure thats a great way to make a lazer

trim matrix
#

was the only way i could fin online ๐Ÿ˜ญ ๐Ÿ’€

lofty rapids
#

i would shoot from the center, get the endpoint, rotate the lazer, push it out halfway forward

#

because your size is going to be actually half

#

it scales both ways

trim matrix
#

its only scaling the one way tho

lofty rapids
#

oh nice

#

weird it's not showing up is it a plane ?

trim matrix
#

no its a cube

lofty rapids
#

i would rotate with lookat if you want it to hit center

#

shoot your first thats find, then take the endpoint and rotate your lazer to the lookat

#

another thing i would do

#

just make the lazer a huge length

#

and make it visible/hidden

#

so it doesn't require you do to a distance trace

#

might not work with collisions after a wall

#

but i think your block hit is the first one anyway

#

that second trace

#

use that for the collision

#

but you need to shoot from the lazer position to the end point

#

thats what i would do

#

that would be your hit of target

#

and the lazer would just keep going for however size

trim matrix
#

so this?, and i made the lazer hude already, now im confused w lookat

lofty rapids
lofty rapids
trim matrix
lofty rapids
#

i believe its find lookat rotation

#

or something lookat

#

it takes a start and a finish

trim matrix
lofty rapids
#

well for one thing the line trace doesn't look like its hitting center but i could be just seeing it off

#

but the lazer still not showing up every time also ?

trim matrix
#

the trace is centered more than it was

lofty rapids
# trim matrix

with the lookat, the start is the position of the lazer and the end is the location from the hit result

#

and then you can rotate the lazer using that

#

it should point to the center

lofty rapids
# trim matrix yes

thats weird you just made it big, maybe make it taller, you may be just too thin i thought it was a plane

#

or the delay is just too fast

#

and it's shutting off

#

you may want a retrigger delay if i remember correctly

#

so it only happens when your done shooting

#

you can fix the scale thing so it only goes to say a wall and not through once you figure out why it keeps disappearing

#

once you get it working so the lazer shows the scaling shouldn't be an issue, but you should use a second trace for the scaling and the actual hit of your target

#

this would make it seem like the lazer is shooting from the gun, into the center

trim matrix
#

i made it bigger again and still not every hit makes it visible

lofty rapids
#

maybe the delay is to short

#

try a retrigger delay so it keeps resetting untill you let go

#

this way the laser shows up untill you let go

#

but just as a test a longer delay might help

lofty rapids
# trim matrix

honestly i think the enhanced input action as completed as well if you click the down arrow ?

trim matrix
#

a retriggerable delay of .05 worked

lofty rapids
#

ok nice

#

did you rotate it ?

trim matrix
#

no, when i did that it snapped the rotation to behind the player

lofty rapids
#

strange

#

did you rotate world or relative ?

trim matrix
#

i think relative

lofty rapids
#

try absolute

trim matrix
#

it seeming to look ok without rotation slightly but lemme see rq

#

how do i get absolute location?

lofty rapids
trim matrix
#

its still doing it

#

i think its fine without i dont plan on the players gun moving more of being attatched to the hud

lofty rapids
#

well your trace and lazer are off

#

so what you hit with the trace isn't what you hit the lazer

#

so i would atleast do another trace that is where the lazer go

#

i would also set the scale again

#

since you got it fixed and you can now see it

trim matrix
#

where at? ๐Ÿ˜ญ

lofty rapids
#

i'm assuming you will have enemies ?

#

that you want to hit with this lazer ?

trim matrix
#

yea and stage targets that will either be stationary or moving

#

my thinking was a custom trace or collision channel of "shootable" and set the enemies or objects to have it that way the gun knows if the player gets points or not? i feel like im prolly wrong ๐Ÿ’€

#

i also wanted to add a sprite of the impact point, to the impact point to further sell the visual of it actually shooting the lazer not just making it visible

lofty rapids
#

this actually pointed the block at the center

trim matrix
#

mines not doing that

lofty rapids
void crescent
lofty rapids
#

i also don't know why your scale only goes forward usually it goes both ways but i'm still learning things every day

#

i put the center at the barrel

void crescent
lofty rapids
#

ya must be a way to make it work you change the pivot or something ?

#

that might make it react different i'm not sure

void crescent
#

I've just tried it with that cube scale thingy... works fine. You just have to make sure you do something in case you don't get a hit (like aiming towards the sky) you need some min disctance or it would scale to 0.

trim matrix
#

i copied the blueprint u made and its still rotating it to the side ๐Ÿ˜ญ

lofty rapids
lofty rapids
trim matrix
trim matrix
lofty rapids
#

possibly your forward is messed up

#

x should be forward

trim matrix
#

so i should move the pivot to the x?

lofty rapids
#

however you can make x forward

#

the red arrow should be forward, it could be pointing in the right direction but your forward is off to the side

#

looks like your forward now is probably y

#

and that would make it do that

#

basically you scaled the y

#

scale the x instead

trim matrix
#

like this?

#

shit my pivot is flipped

lofty rapids
#

right thats almost correct but then it would be backwards

#

when you click on the translate objects, the red arrow should be pointing out

trim matrix
#

i got it to do that now

#

but its not rotating to the point

lofty rapids
#

you compiled and saved ?

#

where it's rotating to ?

trim matrix
lofty rapids
#

somethings weird about your trace line

pastel plume
#

hi, im very new to unreal and have got a weird bug is anyone free to help

lofty rapids
lofty rapids
trim matrix
lofty rapids
lofty rapids
# trim matrix

idk whats the issue they should be a straight line from the camera to whats in front

#

but your lazer looks correct imo

pastel plume
#

the interact event is another bpi that handles player interactions with objects

#

im not sure what ive done wrong bc i did basically the same thing twice elsewhere

trim matrix
lofty rapids
#

is hello printing in event interact ?

pastel plume
#

yes

lofty rapids
lofty rapids
pastel plume
#

neither are working

#

@lofty rapids

lofty rapids
pastel plume
#

100%

#

i dont use the event elsewhere

lofty rapids
#

what is door ref

#

make sure it's a valid reference

trim matrix
pastel plume
#

its got the bp_door actor ref or whatever its called

lofty rapids
lofty rapids
pastel plume
lofty rapids
lofty rapids
# trim matrix wdym

think about if you shoot at the sky, try to shoot at sky you will see it happens, because there is no hit location, you didn't actually hit anything

pastel plume
#

sorry if thats ignorant

lofty rapids
trim matrix
lofty rapids
#

if you don't get a blocking hit, then you can just use the endpoint as the hit location

#

i think atleast

trim matrix
#

so a branch from the break hit result?

#

to check and see if theres a hit

lofty rapids
#

from the break hit result, theres blocking hit

#

that will tell if you hit something or not

lofty rapids
lofty rapids
# trim matrix

on false you want to do find lookat rotation but use the end point of the trace as the target

#

and do the same thing rotate

pastel plume
#

wait no, i mean

#

this bp only opens one door at a time

void crescent
lofty rapids
heavy perch
#

hey, did anyone ever ran into an issue of a single widget being stuck around after seamless travel?

lofty rapids
trim matrix
#

that worked

#

now trying to check n make sure its not broken in some other way ๐Ÿ˜ญ

lofty rapids
pastel plume
lofty rapids
pastel plume
#

yes

lofty rapids
#

yiou can use self

pastel plume
#

its a timeline

#

in the lock_bp?

#

the message node?

lofty rapids
#

oh ok

#

so there is a lock_bp that you place the key in

pastel plume
#

yes

lofty rapids
#

you would need a way to link the two bp

pastel plume
#

yes

lofty rapids
#

probably i would think a variable

pastel plume
#

yes that is what I have done

lofty rapids
#

some thing like lockid

#

is the lock inside the door ?

#

or are they seperate things

pastel plume
#

seperate things

#

seperate blueprints

lofty rapids
#

then you may have to get all, loop through, find the one

#

find the one with the variable that matches

pastel plume
#

there is just one door at the moment

lofty rapids
#

right but if you have multiple doors and multiple locks

#

if each lock and door has a lockid variable

#

when you put a key in a lock
check the lockid and find the door that matches

trim matrix
#

adding the scaling once again adds the issue of the trace will hit a wall but the mesh wont scale to it till im closer

void crescent
# trim matrix wdym

If you hit something the distance for your laser is fine. If not (like if you shoot into the sky) the distance might be infinite so you can, in theory, use a big value. Lets say 1000000. I would still use the trace length value to avoid your laser gets to big in case you don't shoot to the sky but make a trace for 5000 that does not hit the wall at 6000.

trim matrix
pastel plume
lofty rapids
faint pasture
trim matrix
#

the trace is hitting, but not scaling the mesh

#

weve gone in a circle

lofty rapids
#

i mean i would just work on the scaling when you can, use the solid one for now in the meantime

void crescent
trim matrix
#

it was fixed till i added the scaling back

lofty rapids
#

what does the scale code look like ?

trim matrix
pastel plume
#

the names of the bps are in the alt text

lofty rapids
trim matrix
#

even if their scale isnt one to start?

lofty rapids
#

well set it to whatever it is at start

trim matrix
#

it is

lofty rapids
#

oh i c

faint pasture
lofty rapids
#

interesting

lofty rapids
lofty rapids
# trim matrix

move the retrigger delay to the other delay spot and get rid of the regular delay

trim matrix
#

changed it and nothing changed

quartz arrow
#

Hello, how can I simply blend 3 blend spaces and a state machine in anim graph?

faint pasture
lofty rapids
pastel plume
pastel plume
lofty rapids
faint pasture
#

You only need 1 interface here though, Interact. If you start seeing interfaces with CLASS SPECIFIC functionality in them, that's a big smell

pastel plume
pastel plume
faint pasture
#

why do you need a cast?

#

you know it's a door, just call the door function on it

#

show the lock's variables

#

make DoorRef public and instance editable

#

edit it in the instance in the level to point to the door in the level

pastel plume
#

this might be obvious to you but i am entirely new to this -_-

#

and i realied my mistake anyway

lofty rapids
#

ya you can just hard code the door

#

make a variable on the lock pick

#

the door ref

#

and just hardcode the doors

faint pasture
#

no what he got will work, just need to tell the lock which door it cares about

lofty rapids
#

i was thinking have a matching lockid, but hard setting them might be a better bet

pastel plume
faint pasture
#

search

pastel plume
#

i've got the door and lock mesh

lofty rapids
pastel plume
#

what do i need to do

#

both have blueprints attached

faint pasture
trim matrix
lofty rapids
trim matrix
faint pasture
#

I can't make it any more clear

pastel plume
#

perfect

#

thank you

#

ill test now

#

it worked LMAO

#

ok thanks

#

sorry for being a stupid idiot

lofty rapids
#

it's a common thing i have seen people do it

faint pasture
#

Just remember 2 things.

  1. All tutorials are shit until proven otherwise.
  2. The computer will do exactly what you tell it to, no more, no less.
#

You were telling the lock to talk to the door it cares about, but hadn't told it what door it cares about.
That's like asking an unmarried person to ask their spouse a question.

lofty rapids
#

i've seen several times in here people do the same thing, they pick a variable type and assume the type makes it that thing

faint pasture
#

My biggest bugbear is the interfaces

#

idk where they're coming from but I've seen some goofy ass interfaces lately lol

trim matrix
#

this is what i have rn, the trace is working fine, the scaling isnt, and then once it fails to scale if u try to shoot in the sky it dosnt do anything even tho it was working before that

#

that prolly sounded stupid, just trying to describe ๐Ÿ˜ญ

#

the second comment was bc i was testing w the scale how it was also

lofty rapids
#

but idk why it just isn't scaling kind of strange

trim matrix
#

would how it was before trying to add the scaling back rly be bad?

#

bc thats all thats worked ๐Ÿ˜ญ

lofty rapids
#

i mean if you don't need the scaling thats fine, but your lazer will go through walls

trim matrix
#

like just visually?

#

not the line trace

lofty rapids
#

right

trim matrix
#

then thats fine bc im planning rn for it to be mostly single player

#

the player cant see

#

that

lofty rapids
#

at certain angles you can

trim matrix
#

the lazer goes away so quick tho i dont think itl be too noticable, as long as like collision wise its fine then i think its ok

lofty rapids
#

ya if you do a line trace from the lazer to the end point of the other trace

#

thats your actual shot

trim matrix
trim matrix
lofty rapids
#

this is why like mentioned early you should do a second trace

#

this will give you a hit for the actual lazer

trim matrix
#

i mean yea it is still slightly offset i didnt notice

#

but i wanted the player to use the center of the camera for aiming

#

like the crosshair in minecraft

void crescent
#

You're using some FineLookatRotation anyway. So should be fine?

lofty rapids
#

you have only one camera on the player ?

trim matrix
#

line trace is centered i think but the lazer is slightly off, i think it may be ok but this shit is throwing it off

trim matrix
#

how could i add a sprite to the hit point so i can see it without the debug shit in the way?

#

plus just bc i think that would help visually

faint pasture
trim matrix
faint pasture
void crescent
#

Homebrew GPU. ๐Ÿ˜„

trim matrix
#

nvidia 1650

lofty rapids
#

it should be close to center

#

idk what that stuff is on the side but i would turn it off

faint pasture
#

gpu artifacting looks like

trim matrix
#

thats the draw debug.. thats litteraly the only thing i have on, and it goes away when it off

#

never comes up any other time

lofty rapids
faint pasture
#

yeah just move the actor or mesh component around on tick after the trace

lofty rapids
#

get that stuff off there take a good shot at the wall

trim matrix
#

looking at it that way i can see its lined up

#

the draw debug has always done that when ive used it, ive never seen it any other time tho, so idk

#

ty

lofty rapids
#

looks cool

#

you just need that second trace and you'll be killing enemy in no time

lofty rapids
chilly jacinth
#

A question about curve tables:

  • How can re-import a curve table set to cubic interpolatino? If I re-import it just switch to linear;
  • Is there a way to auto interpolate missing values imported from cvs (and not just considering them as 0).

Thanks!

tranquil bronze
#

Can someone answer a question about Bp scripting using the first person and third person templates?

I've made a basic inventory system, which I have added (I think lol) to both first and third person character templates and am now working on a podium that you place inventory item on (see pic) to unlock a door. Obviously I'm a beginner cause I have not one clue how to connect both of these player instances to the same logic. I've got a thought that says ok, you have to help the logic know or choose which player character either this or that, but I don't know the node to help me do this. Then another thought says, maybe you have to make a second instance of this for each character?? That seems pretty inefficient though. HELP please!

Even help phrasing my question better would be a step in the right direction, I could ask any 'ol large language model to help me poke at this. I now enough to be dangerous and fairly ignorant.

faint pasture
tranquil bronze
#

I've been taking a coursera UE professional class and the instructor bounces between first and third person characters in the lessons. Some of the BP lessons he's worked on one then switched to the other. But it doesn't make sense that I'd need to recreate the wheel.

Is this not how games code things like switching between character viewpoint? Totally open to suggestions and best practice ideas.

lofty rapids
#

"how to connect both of these player instances to the same logic" <-- what is a player instance ?

slender dagger
lofty rapids
#

so your sockets are not working ?

#

are using attach node or trying to manually do it ?

tranquil bronze
ornate trail
#

I have several static mesh actors then I put several of this in a parent actor, I want to dynamically change the material slots on these meshes from the parent but can't seem to access their materials.

tranquil bronze
lofty rapids
#

i think you can just have two characters and switch between them

#

one 3rd witha full mesh, one first with just arms

tranquil bronze
#

Appreciate that help here.

lofty rapids
ornate trail
#

why have 2? just stick the camera to his head and add a zoom with the mouse wheel.

lofty rapids
#

right then you can just zoom in and out of 1st 3rd

gentle quartz
#

My bad. I figured it out before you said anything So I deleted my message

ornate trail
#

yeah, you won't have strafing out the box but that's more of an animBP issue

lofty rapids
tranquil bronze
ornate trail
#

why are there no names on your nodes crying

tranquil bronze
#

Whoops too zoomed out

lofty rapids
#

i'm not understanding the switching between projects thing ? is there something specific wrong with each one ? take it one at a time

lofty rapids
ornate trail
#

starting your trace from the capsule should be fine in either perspective, but a print after the first true branch and debug that, worry about the interface after

tranquil bronze
#

I was mostly trying to get the same things working from lessons in each character template. It seems like I would be able to make one piece of code that either could inherit or use but I might be going down the wrong route.

ornate trail
#

just remember you're firing straight from the half height of the capsule forward

#

it should work for either, you might also be hitting something else before it gets to the target, log it

lofty rapids
#

Maybe make some functions in a blueprint function library

#

something you can carry over to the other project

lofty rapids
#

just use a boolean and a branch, isFirst or something

slender dagger
# tranquil bronze Hi OnlyJoe I'm a little embarrassed that I don't completely understand, what you...

it's all good, no need to feel embarrassed. For most setups I've seen where you go between first and third person, it stays in one class and just switches which active camera is being used.

also iirc you can set the mesh on the camera change between the first and third person to avoid clipping issues, probably best to do this with a flip flop.

What reason has your instructor given around this? More context would probably make it easier to determine if you need 2 separate classes because it might be beneficial in your project depending on what you're going to be doing with it

Take GTA V for example. Michael, Franklin and Trevor would all be separate classes, but they would all inherit first/third person camera switching from a parent class. The first and third person don't need to be their own classes typically.

tranquil bronze
# lofty rapids "working on a podium" <-- in the first or third person template and your saying ...

In this podium part of the lesson the teacher uses the first person player but switched to the third person when adding a camera to switch between the first and third but sadly my trace on the third person doesn't seems to work, so I'm been throwing wetTP at my first person template (with working trace) at the wall hoping I can get inventory and interactions working the same in both.

Thanks for all your help! @slender dagger my instructor gave no indication why he used one template or anther for these lessons. Maybe just expeditious, or hoped we'd experiment? It is not a live class, just an online one but slightly more organized than Youtube, but less than an actualy degree program. Sending my kids to college, can't afford to go get a master's degree. ๐Ÿ˜„

lofty rapids
#

show the code that does the trace

#

and whats not working about it ?

blazing yarrow
#

Hey girliepops - why would the Asset Manager crash the editor when I try to assign a directory to the manager?

slender dagger
tranquil bronze
slender dagger
#

just try something like this inside your function where all the set actor stuff is and see what happens

#

obvs you'll have to sub in the actor variable and the look at event

#

replacing this part of the code

tranquil bronze
tranquil bronze
slender dagger
# tranquil bronze What would happen if the false is left unset? Does that matter?

well if the line trace is false then I'm assuming that you don't want anything to happen, same goes for if it doesn't implement the interface.

How your code works in the screenshot is if an actor is hit, then it sets the actor to look to null,
else it sets the actor to null.
then checks if the actor the line trace hit implements the interface.
If true, set actor to look to null, and call the interface,
else set the actor to look to null.

If you're ever setting references or anything that doesn't have a dropdown or slot you can type in, you have to plug something in otherwise you're just setting it to nothing so it won't call anything when you try to reference it.

tranquil bronze
slender dagger
woven pond
#

Does any one know if box overlap for actors follows parent ( actor ) rotation (Theres no rotation pin available)

tranquil bronze
#

This is working but trace is shooting out of bellybutton or lower ๐Ÿ˜„
Doesn't look like I can relocate the arrow where the trace originates in the viewport or delete the one in the template.

slender dagger
ornate trail
#

when you get the capsule location you can split the vector and add / subtract from the Z to move it. Also there's no reason you can't start the trace from the skeletal mesh (socket) or just make a new scene component and start it from there. then you can move the component where ever you want the trace to start

slender dagger
ornate trail
woven pond
#

think i got it though im print stringing each actor overlapped and it seems to be working

ornate trail
woven pond
#

im trying to create a spell indicator theres only a decal component i was trying to match decal and collision

ornate trail
#

oh you said box overlap so thought it was collider box

woven pond
ornate trail
#

huh, I never used that node, that's pretty expensive to run on tick

woven pond
#

it seems to be working so i should have maybe checked better first

tranquil bronze
#

BTW I really appreciate the help.

ornate trail
#

make a scene component, not arrow

woven pond
ornate trail
tranquil bronze
# slender dagger what does the error say?

On first arrow, Character.ArrowComponent is not blueprint visible (BlueprintReadOnly or BlueprintReadWrite). Please fix mark up or cease accessing as this will be made an error in a future release. Get ArrowComponent

On second get runtime errors

slender dagger
ornate trail
#

don't use arrows for location at runtime, that's not what theyr'e for

#

the arrow you see from manny is just for orientation, it has nothing to do with capsule half height

tranquil bronze
#

Yes unhappy engine. I am learning a ton here, I think.

slender dagger
woven pond
# ornate trail just enable / disable collision on a box collider when targeting

it's just i had seen a lyra video that only had a decal component and it then traced on tick for overlap actors so being the beginner I am I thought it was the way to go.
Once placed the actor is deleted so is solely used for visual feedback to show targets so was unsure. Out of curiosity going forwards is there anywhere I can view or lookup for future reference what nodes are less expensive?

#

@ornate trail Thank you for your replies i will update the indicator actors (Its a lot less in the event graph!)

ornate trail
#

smth like that, personally I prefer sockets

tranquil bronze
#

@slender dagger if you're near Seattle, I owe you a coffee or a beer, your choice!

slender dagger
tranquil bronze
slender dagger
slender dagger
tranquil bronze
# slender dagger I mean it won't change any functionality. I was more meaning like if you plan to...

The homework has the trace visible, when it hits an items with inherited interface it prints a verb/noun direction for the player. So it only needs to be located in a logical place where it will hit things the third person character is "looking" at?

The trace works perfectly in FP, maybe I ought to stick with it? I tried to add a skeletal mesh to the FP template but it didn't work as nicely as when I added an additional head camera to the third person. Again throwing wet TP at wall. I'm sure once I've done this a dozen times it'll make sense - I hope.

#

Hey thank you all for taking some time to help me trouble shoot.

I'll stick with my first person template for now but you've given me some fun ideas to work with and I'll be trying to troubleshoot my third person more tomorrow.

lime crow
faint pasture
#

Where do you want to trace from?

dawn gazelle
# lime crow Accessed none is my dread man. I understand why it happens but I really struggle...

If you understood why it happens then you would understand how to fix them. It happens because whatever reference you are using is empty when you are trying to use it, and therefore it's not a valid reference, and cannot be accessed.

The way to fix them is to ensure the reference you are trying to use is populated with a valid reference before attempting to access them. If the reference isn't valid, then it shouldn't be accessed.

The first image below is an example of how one could potentially cause an Accessed None error. This line trace may not hit any actor, and then its "Hit Actor" value in the hit result would be "None", thereby invalid, but I'm immediately trying to call a Set Actor Location on that reference and could then cause an Accessed None error. Because the reference could be invalid, you should make sure the reference is valid first before accessing it. In the second image, I put an IsValid check in there to prevent the node afterwards from accessing the invalid reference, now I should only ever reach the Set Actor Location node when the reference is valid. No more Accessed None error should ever appear from this little bit of code.

lime crow
# dawn gazelle If you understood why it happens then you would understand how to fix them. It ...

Thanks for the comment. Although I understand this and could fix this no problem, using a get valid node is not always the answer, especially when doing things like destroying the character and respawing in. It takes quite alot of set up especially if you have more things going on like inventory systems, components on the player ect. They all need to be set. I get what you are saying. It happens when you try to get a refrence to somthing that dosent exist. Believe me when I say I have heard that about a billion times so I do understand it, and I use is valid nodes like there is no tomorrow. But sometimes an is valid node is simply not enough. Especially if you have multiple blueprints, components ect. I have issues with setting refrences ect. I can't quite explain but its just something I really find hard to do, if there is alot of ui stuff and components ect.

dawn gazelle
lime crow
# dawn gazelle Yeah, I getcha... It can be tough when jumping between different classes and eve...

Its probably me just being slow or having learning problems or somthing. Its weird because I would say I'm starting to maybe evolve from a complete noob. I have been learning about architecture, learning about oop patterns, using interfaces and dispatchers more, avoiding circular dependency, writing cleaner code with functions and function libraries and macros and stuff. But when it comes to referencing blueprints (not direct refrences) my brain just shuts down. Its strange man, I should understand it in theory. I don't know man.

sand shore
#

Hey it takes time to really absorb these abstract concepts into the ol noggin

#

Is the issue that some parts of your system are initialized, you expect that they all are, but suddenly one wasnโ€™t initialized?

lime crow
dawn gazelle
#

If you're doing stuff like the first image as an example, then it could definitely be part of the problem. You're making an assumption that the reference will always be valid after the construction of the widget here, and if you happen to destroy the player's pawn and then end up calling SomeEvent, then your reference will be invalid and your widget would be none-the-wiser and you'll get your error.

The second image shows a function that gets the reference for you whenever you need it and the third image shows an example of how you could leverage that function. So long as the player is possessing a BP_BasePotato, the reference would be valid, but I still like to put an isvalid check in there to ensure that it is valid.

visual crest
#

I need some help the left is the screen capture the right is a high ress screen shot the problem is that highress screen shots are editor only. As you can see the screen capture is dark and does not look good at all compared to the high ress

visual crest
#

I know take highress screen shot does not work for sure... Tied for hours

#

I'll try the automated

visual crest
#

in build

dawn gazelle
#

Well, for sure the scene capture component isn't meant for taking screenshots - it doesn't have the capability of properly capturing the UI since it's a camera that exists in the world space which wouldn't include the UI, and look at the roundabout way you have to go to try and do it like that.

I just tested using the console command "shot showui" in a packaged game and it worked, saving the file to <ProjectName>\Saved\Screenshots\Windows

#

@visual crest ^

visual crest
dawn gazelle
#

It was a shipping build packaged game

visual crest
#

ok

dawn gazelle
#

There are settings that can disable console commands I believe.

visual crest
dawn gazelle
dark cedar
#

im so stupid i cannot figure out how to simply access a variable that is set in another blueprint

visual crest
dawn gazelle
#

This is in editor.

#

This was in packaged

dark cedar
#

Could someone help me?

dawn gazelle
dark cedar
#

Sorry could you explain a bit more

ancient moth
#

Is there a way, I can reference the Trace Target from the for loop when WaitGameplayTagAdd triggers?
Currently I'm having the issue, that StartBoneTrace always gets passed in the last array element, which kind of make sense.

I was thinking of creating a function to avoid that, but I can't call WaitGameplayTagAdd from a function.
Any idea what I can do in that case?

dreamy marten
#

You could use an event instead

glossy cloak
ancient moth
dreamy marten
ancient moth
#

So if a tag A is added i want to trace for a bone_xy

#

But i don't get why it won't work, especially since I'm passing it by value

dreamy marten
#

And why do you need to add it with that latent function? Can't you just get the gameplay tags container and add it directly?

ancient moth
#

No the latent function checks if the tag is added

dreamy marten
dreamy marten
ancient moth
dreamy marten
#

Well, you can just use the functions provided by the tag container

#

That way you can process everything inside a function and don't have to bother with latent actions

ancient moth
dreamy marten
#

Don't you have it there?

ancient moth
dreamy marten
#

That's why I am suggesting you to use the functions I've shown above

#

Those aren't latent

#

You just need to have acces to the gameplay tags container variable

ancient moth
#

The latent function listens if the and when the tag is added to the actor

#

it does not add the tag

dreamy marten
#

Hmmm

#

In this case you can do things a bit differently, you can have a map with that "Async Task" and the "Trace Target" structure, you add an element to the map on the first output execution pin of the Wait Gameplay Tag Add, and on Added you just "find" in the map the Async Task and use the Trace Target from there

#

Assuming the Async Task object is still valid and is the correct one on the "Added" pin

blissful brook
#

does set game paused fully pause all input? I want the game to pause behind my ui but if I then want to close my ui it doesnt register pressing the key again to unpause it

ancient moth
#

But won't i have the same issue when passing the task to the start bone traces, because of the latent function?

dreamy marten
dreamy marten
ancient moth
#

But it's the same right it#s also just in the loop

dreamy marten
#

Not necessarily since it's on that latent function, it should be outputting the same Async Task object on both output pins if it's done right

dreamy marten
#

In this case you might need to rethink a bit the logic there. Maybe you can consider adding an event that is called by anyone adding those relevant tags, and you execute directly the "Start Bones Traces" function when that event is triggered

#

If you need to do that action specifically when someone else add the tag, that would be the best way of doing it in my opinion

ancient moth
#

yea sadly i probably have to rework this, it's just really annoying

dreamy marten
#

It's always better to work with explicit events rather than latent actions

ancient moth
#

I'm using it in a anim notify, to know when the window starts for tracing e.g. the right hand punch

ancient moth
#

Maybe I have to write a custom anim notify state, that will send two gameplay events on start and end and also rework the thing to listen for those events instead of the tags.
It's more overhead though which i don't like but ... :/

#

Or maybe extend the latent tag added function from the gameplay abilities

#

but that pass by value is not working with the event really bugs me

dreamy marten
#

It works, but not with latent actions since the value will have changed :p

ancient moth
#

It makes no sense to me, how does the value I pass to an event change, when i pass it by value.

#

This should be it's own scope.

#

But BP is probably different, I would understand if they change the memory directly ok, but not even copying the struct or passing it by value works.

dreamy marten
#

Because the value is cached on the event every time you trigger it, so when you go to read that value, it will be set to the value that was last set at the time of checking it

#

So it breaks with latent actions

ancient moth
#

I dislike that really dislike choice of BP's ๐Ÿ˜…

#

But thanks for helping!

#

But I still can't believe it, there must be a way, this has to be something more common and not that you have to desing around that to avoid it ๐Ÿ˜…

dreamy marten
#

I mean, usually designing stuff to rely around latent actions is not a good idea

#

Direct events/dispatchers is the way to go

ancient moth
#

Not sure about that one, for a GameplayAbility that will start a trace of the right hand, dependent on a animation it started, as far as I know this is the way to go.
But maybe correct me if I'm wrong here.

#

I especially reworked it that way, so that the GA has control over that and take away control over it from the animation.

dreamy marten
#

I don't know your specific setup so I can't say for sure but anything that can be expressed with a latent action can be with an event, it's just a matter of how you design things

#

The latent action is checking checking for something to happen in loop, the event will tell you when this something happens

ancient moth
#

Yes but this something, is happening in an animation.

#

So it would e a anim notify (state) that handles the action.

#

but it's a "punch" gameplay ability

#

so then the ability just starts a montage and the montage handles everythign else

#

which is not ideal for many reasons

#

so we kind of need to have the notify alert the GA about that happening

dreamy marten
ancient moth
#

which is a latent function in one way or another

ancient moth
#

did you work with GAS?

dreamy marten
#

Not that much

#

Which probably explains why I don't understand that logic fully tbh

ancient moth
#

yea ๐Ÿ˜…

dreamy marten
#

But from a pure code logic, I don't get it why you wouldn't be able to use an event

#

๐Ÿ˜…

ancient moth
#

I had a setup before, where the NotifyState did the line trace, did apply the gameplay effect.
But then you have this all in your animation, you have thoren up the ability into so many pieces it's hard to manage, that's just beside all the other things that you have available in your GA.

#

and then you want to add logic, have to check other things, and it gets worse and worse

dreamy marten
#

What doesn't make sense to me is that you can't uniquely identify those "async tasks"

#

It should be the whole point of it

ancient moth
#

it's not an argument to the latent call

dreamy marten
#

That's bad design right there :p

ancient moth
#

you can tell that to epic games ๐Ÿ˜…

#

but for me the bad design is, that a variable passed by value changes ๐Ÿ˜…

#

that's even worse tbh

dreamy marten
#

That makes sense though in this context

ancient moth
#

how does it make sense if I pass a variable as value to an event, why should it ever change

dreamy marten
#

Because the event is unique, it's not creating a new "instance" of it every time you call it like it does with a function

ancient moth
#

see that's bad design to me ๐Ÿ˜…

#

also a function does not ever have a "instance"

#

I still can't believe it, I still think that there is something wrong, maybe it's somehow a reference ๐Ÿ˜…

jagged raptor
#

Hello! I was wondering if anyone more maths oriented than me can help me figure this out, I have a system where players can pick up an object and inspect it, rotating it with WASD.
my problem is that using add world rotation obviously rotates that object relative to the world, add local rotation or relative rotation rotate the object relative to itself, which means that if the object is 90 degrees on the Yaw it Rolls from the player's perspective.
Does anyone know the maths needed to make it roll on the Yaw relative to the camera perspective?

lofty rapids
boreal basin
lofty rapids
#

that sites for blueprints

boreal basin
lofty rapids
boreal basin
lofty rapids
#

well the link you posted just has text, thats why i mentioned it

#

it's not any nodes on it

boreal basin
lofty rapids
#

what is that one that says script/engine ?

#

what does that do ?

boreal basin
#

Its a doubleInput instnace that tells them if the Dash key has been triggered twice, only then the character dashes.

#

As seen here:

lofty rapids
#

within the duration ?

#

interesting thats cool

#

so your dash you have to hit it double

#

neat feature

lofty rapids
lofty rapids
#

i mean all your doing is launch character, i don't think theres much to make more efficient ?

dark drum
boreal basin
lofty rapids
trim matrix
#

ive remade the lazer from yesterday to use a particle instead and it has been less clunky but ive noticed an issue, im not sure how to fix, if i try to shoot something that hasnt been marked with the trace channel of lazer target, it snaps to the floor, or if i have shot one that is set to a target, it will stay snapped to the last hit location until i shoot another location that has the trace channel

lofty rapids
boreal basin
trim matrix
boreal basin
lofty rapids
#

because you get the direction aftward

boreal basin
#

Huh

dark drum
# boreal basin Like how would a custom `Input Trigger` work for this?

Input Triggers controls what state in input action is in. So take the tap one for example, this check that the button has been pressed and changes the state to ongoing. If released within the specified period changes to Triggered, activating the input action. If the time elapses without the release sets its state to none.

boreal basin
lofty rapids
#

it looks like they are all doing the exact same thing

#

try it out, you'll probably see it works the same

boreal basin
lofty rapids
#

can't you assign multiple under one ?

#

like IA_DASH can be multiple keys

#

?

#

if i remember correctly

#

i think you could just have the dash and set all the keys for it

steady night
#

hey when in a actor class, if i jsut want a "location holder" compoenent or whatever is what would be best preformance wise or dosent matter ?

#

i have 3x spawning points in an actor and i wanna visually show them

#

i normally use arrows

#

but there might be some less costly ones ?

#

a picture says more then 1000 words...

#

like this,

ornate trail
#

or if its on your skeletal mesh you could just have sockets and get those

steady night
#

sceneCapture componenet is the only ones i can find :/

ornate trail
#

not scene capture, its just scene in blueprints

steady night
#

ah

#

thanks

ornate trail
#

these guys

#

but if you're downing something like projectiles sockets are usually the way to go

steady night
#

yeah

#

tyty

dark drum
# boreal basin How would you turn this into a custom `Input Trigger`, if I may ask?

Something like this would sort of work but you'll probably need to make it in C++ as the 'Update State' is only triggered/called while the key is pressed making it difficult to keep track of how long its been since the key was last pressed.

I believe 'bShouldAlwaysTick' is required to make it check continuously but this can't be set in BP. (from what I can find)

#

how it is in the ICM. (Ignore period as its not used in what I showed above)

robust flicker
#

When you create a top-down preset, the character movement is created using the left mouse button. How do I remove the camera movement that is also added there?

lofty rapids
robust flicker
#

I didn't find where the camera is used when the left mouse button is pressed.

lofty rapids
#

so the camera is in your character

#

and that thing just follows the player based on where it is

#

i would delete that camera, put a stationary one in the level

#

then use view target node to set the camera view

robust flicker
lofty rapids
robust flicker
#

I couldn't find where exactly in the blueprint it is used.

lofty rapids
#

it's not used, the camera just follows the player because its on the actor

#

remove it from the player

#

like this ?

robust flicker
#

I don't have a camera in my character

lofty rapids
#

ok so now add one into the level

#

a CameraActor

robust flicker
#

I have my own camera there.

lofty rapids
#

ok so now in the player bp

#

on begin play

#

use set view target

#

this works with one camera

#

if you want more you'll need to make som sort of manager or something that switches them

#

and that should be it, it should work like i have in the video

#

if you want to do any movement of the camera you'll have to do it manually now

robust flicker
#

I deleted all the cameras, created my own, added my own motion functions, but my camera moves when I click the left mouse button.

lofty rapids
#

you created your own camera ?

#

is it outside of the player ?

#

show where you put the camera

#

show the player components, probably a camera in there

#

because no code is doing that in blueprints, it's just that a camera on the player will follow the player

#

it won't follow it if it's outside

robust flicker
lofty rapids
#

you have two player pawns

robust flicker
lofty rapids
#

i can only say it so many times

#

you need a CameraActor

#

outside of the pawn

#

and then use set view target like i showed you

lofty rapids
#

you don't want it in there

#

you said you deleted it, but it says player pawn in the outliner

#

the movement is and clicking is seperate from the camera following

#

the camera following is a built in feature when you attach it to your character

#

it's relative to the player

#

so as you move, so does it

robust flicker
#

I created my camera through player pawn, there I gave it a movement function

lofty rapids
#

well i can only help if you can go along with me here, i told ya how i got it to work and how it works

robust flicker
#

I will do as you said now.

lofty rapids
lofty rapids
lofty rapids
robust flicker
lofty rapids
#

i would just use one player

#

so that when you use begin play it's like the beginning of the game

#

on the player

#

instead of running for every player that you have

lofty rapids
#

you should be able to do forward,backward,left,right while keeping it withing a certain range it's a little difficult but can be done

dark drum
# boreal basin For my IA_Dash then.

Pretty much yea. It seemed like an interesting side project so I setup a c++ base class that allows me to start a timer in the trigger. So the multi tap input trigger I've setup works flawlessly (as far as I can tell) and can work with any input action.

So this allows all the movement keys to output the relevant XY axis value when double tapped. If you're partial to a little C++ feel free to message me and I can share the setup.

lofty rapids
#

i would personally use a camera actor that is like the player, and just have the player not possessed but possess the camera actor with nothing in it but a camera

#

this way you get player movement with the camera you can move it around

#

thats what i did here

#

i used floatin pawn and wasd for the camera movements

#

stuck it on a z

#

theres multiple ways to do things

robust flicker
#

I will try.

lofty rapids
#

it should work with little change, but i would take it one step at a time

#

the way i first mentioned is good, but leaves out a few things that are built in to something like floating pawn

#

or even a character with just no character in it if you want it to walk a floor or something

#

and you would possess the "camera actor"

robust flicker
#

How do I make the camera move by moving the mouse cursor to the edge of the screen?

lofty rapids
#

then you say if your x and y are within a range

#

so if your mouse position . x < 50 you are on the left side

#

if your mouse position . y < 50 you are on the top

#

and get the viewport size to get the right and bottom

#

but as far as 50 thats just a number you can use whatever you want

#

basically 50 is padding that you can set to anything

#

then when that branch is true that you within the range then move the camera

#

you will probably want to do this on tick

#

even a variable like location that you just check on tick and change on mousemove

#

this is just one check, but you would do all four and save a variable as state of which side you are on or not at all

#

or you could just in place of the print string do the actual moving
it might be smoother on tick instead of the mouse xy event

#

you just check one if its false check the other, you'll have to work out if it's in the corners or not as well

#

this will allow you to move in four directions

#

if you want a full 360 then thats different, this requires more maths and calculations

lofty rapids
#

hopefully that makes sense

glad mesa
lofty rapids
#

its possible because physics is on, it's hitting some part of the character ?

#

this is first person view, so maybe bumping into an arm or something

glad mesa
#

when its held it has collision and physics disabled, I enable it on montage notify when its thrown, but I'll take a look at this

faint pasture
#

gotta turn on simulation generates hit events

#

i guarantee it's hitting the character mesh

#

If this is single player and you don't really care about any of the players stuff hitting themselves, you can do it through collision, just have a collision channel for the player's mesh and use the other for the enemies.

#

Basically on throw, it blocks all it usually does except playerchar. You can then have it block playerchar as well a bit later (or never)

#

Then in C++ there's options to disable collisions between specific pairs. Or you can hack it with a constraint that does nothing except disable collision.

snow halo
#

Hi, I seem to be having a problem with my function over here

#

it doesn't decrease my health, even tho Its getting called on runtime (ive put breakpoints on it), it executes โœ…

#

here's how it works on the insides ๐Ÿ”

faint pasture
#

you got a psionic bear, but he can only attack the first player's character

vestal totem
# snow halo

Where do you set Health Amount? I see it as an input on Set Health, and then you use it to set Health Level.

If this is a promoted variable in the function, you may still need to set the variable using the function input before trying to access it.

I just experimented with this by making a boolean input and setting it to true on the input. But in my function the variable is defaulted to false. And when I access it I get false.

Maybe you have Health Amount set to something somewhere, and because you didn't stitch the function call parameter to the actual parameter, setting Health Level to Health Amount doesn't change anything.

--

Also, might I suggest using a names like "Health Current" and "Health New" vs "Health Level" and "Health Amount" which sound ambiguously like the same thing?

snow halo
#

there were some functions not connected on the other side

#

It was a problem inside of my widget, now I fixed the widget functions/connections but still have a problem with this

#

I even made an interface just now

#

I have a blood splatter image inside of my widget that I wanna be enabling only when the player gets hit

#

my blood splatter image sits in here and by default is set to opacity of alpha: 0

#

this event gets hit, whether inferface or regular event it still doesnt work even tho it executes

#

so I have a feeling it might be because of this widget, should I make another widget that is created by event begin play of my game on character & just made it visible or invisible depending on my needs?

#

or destroy & recreate it every time i get hit?

#

that doesn't sound very optimized to destroy and create widgets

#

and Im always so discouraged from creating new widgets this is why I made it all nested inside of one widget

dawn gazelle
# snow halo

Your interface sets "Blood" to be visible, plays an animation and immediately sets the "Blood" to hidden again. This would all happen within a single frame so your "Blood" would just remain hidden.

If you're wanting to wait for the animation to finish before hiding it again, then you may want to use the "Play Animation with Finished Event" which then allows you to do something when the animation is finished.

dawn gazelle
#

In terms of the logic you have going on here, it's better to try and make your widgets listen for events (using event dispatchers) rather than having your game code calling into the widgets to perform some action - when you are constructing the widget you may need to give it some data or a reference to something that it needs to know about, and that should be about it for the game logic interacting with the widget directly - everything else the widget may need to present should be handled internally to the widget but based on values from references to objects that the widget needs to care about. So if this widget just needs to know about the "Stats_System" component you have on your controlled pawn, then on construct of the widget you can get the owning player pawn, get a component by class (Stats_System) and bind to any event dispatchers you set up in it. If you want to ensure you rebind after the pawn is destroyed, then on construct you can get the owning player and bind to "On Possessed Pawn Changed" and use that delegate to re-get the Stats_System component and rebind your dispatchers as needed. (See attached images as an example of how to do this)

It's also not a requirement to use Interfaces, especially if you're getting a direct reference to the widget class anyway - it's just creating additional work for you and making it harder to track your code for no benefit. The use case for interfaces is when you have a variety of classes that don't share a common parent class but need some kind of shared function call that they can then implement as they need. An interface call with the name "Show Blood Splatter" seems very much like a single use thing that would only ever be implemented in one class.

#

First image calls "Rebind" manually to set it up based on the current "Owning Player Pawn" and then binds to the "Owning Player's" OnPossessedPawnChanged dispatcher to call Rebind whenever the possessed pawn of the owning player changes.
The second image shows the contents of "Rebind" where it first attempts to unbind from the previous pawn's "Stat_System" component if the pawn and the component it finds is valid, and then it binds to the new pawn's Stat_System, again if both are valid.

leaden raven
#

Can someone point out what's wrong with my anim notify? It used to work but ever since it just stopped and I don't know why. I've remade the notify twice with no luck, it just doesnt fire at all, but ive had no issues with the notifies for steps or even melee attacks, it's only the jump that doesnt work...

jagged wolf
#

Hey
Do anyone know what maybe causing that delay while opening the door...

I think it's something to do with the way I am retrieving the location? Because if I'm standing away from the door or facing it there's a longer delay

I checked the collisions and the grab component is set up right and have attached screenshos... I'm fairly new to unreal so please let me know if I'm doing something wrong

https://blueprintue.com/blueprint/b9_iaw00/

livid elm
#

is there an AI that can generate a blueprint based on high level text request?

glad mesa
#

or a copy of it

#

But it is fixed by ignoring collision response to my character so I just need to figure out how to enable it back

#

okay got it working, thank you!

mental trellis
livid elm
#

various but i dont know if u guys tested if they actually work.

chilly crane
#

Someone able to just double check for me this gives the correct result? If the affinity value is null/void or less then 1 (indicating that the object is resistant), it checks if an affinity was actually present, if it was present, it returns true, and selects the lowest attack grade (0). If an affinity wasn't present (null/void value), or the value was greater equal 1, then it should give the attack the random chance to be a critical, influenced by the chance modifier (the higher the modifier, the greater the chance)

https://blueprintue.com/blueprint/g52so2gk/

winter pebble
#

Does anyone know why interaces are more performant than casting? I would have thought anything that wanted to communicate between two actors would have to call those actors into memory

ornate trail
#

when you cast the UClass meta data / class object has to get loaded into memory. With an interface it only checks the classes interface array at the UClass level. ie was this class declared as this type of interface

winter pebble
#

Is there something that stops the engine from being able to do that with casting or is there an independent use case for casting that requires it to load the meta dataa?

#

Actually I think I can answer that question. I guess you can call functions from that object and stuff directly in the object you're casting from if you're casting which you can't do with interfacing

ornate trail
#

right since you're casting to a class if it succeeds you know the functions / members you want are there. in most cases this is fine but say you need to do this many times a frame you could just have an interface with a virtual function then define the actual function in your class. This would be faster since it doesn't need to look at the entire class each time but you won't notice a difference unless say you have a bunch of actors doing it several times a second

winter pebble
#

Sweet, thanks NeuroSpice ๐Ÿ™‚

dark drum
dark drum
dark drum
lofty rapids
#

interface doesn't replace casting, common misconception

chilly crane
#

ie. I use an interface with my combat system because I know that there will be a damaged actor when this is triggered, but I don't know which one. So I send the message out through an interface, and the correct actor picks it up

dark drum
chilly crane
#

I know it will be a value in a range. So basically weapon overlaps object. If it is part of X list then it can proceed and send the weapon data & attack notif to the hit actor

#

also, in the same way, I'm not interested in anything that doesn't fall into the category. So it can send messages all it likes to an actor that isn't interested in it, because I would through it away anyway, so oldmanshrug. Maybe I didn't explain it well...

winter pebble
lofty rapids
#

"Interfaces do a cast in the background."

chilly crane
#

also remember, at the end of the day, if it works, it works. Your code won't always be perfect, nor does it need to be

#

this is not to say be lazy, just don't beat yourself up too much about making it perfect

winter pebble
#

Fair, that is a lesson I need to drill, but in this case I'm mostly just trying to satisfy my curiosity for understanding what's happening under the hood better (if I can) ๐Ÿ˜…

ornate trail
#

huh, guess there is more differences in BP interfaces and c++ than I thought. Basically just use interface to decouple like everyone says, just learned that if a class is already loaded unreal actually uses that to check casts so it seems it's really not an issue ๐Ÿคทโ€โ™‚๏ธ

chilly crane
chilly crane
lofty rapids
#

not "all" casting is bad

dark drum
winter pebble
atomic hollow
#

Do any one know that how to create custom category option for all custom categories created for variables in actor like we already have General, Actor, LOD, Misc, etc...

#

Please Help

storm solar
#

Does unreal not have a way of firing an event when a selection of a combo box is highlighted?
I want to have a description of each option the user can choose before selecting it.

chilly crane
chilly crane
storm solar
chilly crane
dark drum
atomic hollow
dark drum
boreal basin
#

Is there a way to make a GAS Blueprint revert itself back to 'Is Data Only'?

merry mirage
#

If there is nothing in the blueprint graph it should do that for you iirc

#

engine restart might be needed (?)

maiden wadi
boreal basin
#

How is it his and mine data-only blueprint layouts are different?:

lofty rapids
#

different bp ?

boreal basin
#

I did labled them as GE like instructed.

maiden wadi
boreal basin
amber cape
#

Hello, sorry if this is the wrong place to ask this. Does anyone happen to know how to make something shatter after a condition is meet? For example getting a block of ice to shatter after the player lights all the torches.

boreal basin
#

Where do I find SetMovementByProfile and BreakSMovementProfile?

dark drum
lofty rapids
#

it looks like setmovementbyprofile is a custom function, wdym find ? are you trying to run this code or copy it ?

boreal basin
#

My friend's showing me how he does his I think his GA_Sprint or GA_Run function.

lofty rapids
#

well the purple i believe is a function

#

and the break like mentioned is probably from a custom struct

boreal basin
#

How do I make both of those?

lofty rapids
#

so you can make a function by clicking this button...

#

idk much about structs

#

but you'll need to create one i think, and usually it's recommended to do that in c++

#

but just as a test you can do in bp, but i have heard bad things about bp struct in here

lofty rapids
# lofty rapids

you can also make a blueprint function library, and these functions are accessible from anywhere in bp

boreal basin
#

Ah, right.

lofty rapids
#

this is where you can create a structure

#

in the content drawer

#

right click

#

then go through the menu to see the structure

boreal basin
#

Ok

lofty rapids
#

so once you create the structure

#

set an input to that structure

#

then in the function you can break it

boreal basin
#

Gotcha.

lofty rapids
#

Its basically letting you choose different settings

#

so you can have many profiles and different settings

boreal basin
#

Ohh, that one.

lofty rapids
#

i would probably put in the character

#

the function

#

because you can easily get the movement component

#

or you can do bfl, but you'll need to get the character or pass it in as an input

boreal basin
#

ok

delicate torrent
#

Guys how can I spawn a widget in the pawn and then remove it later?
I can't think of a way to do it

#

like, make widget, alright, and how do I set a location to it?

dark drum
# delicate torrent like, make widget, alright, and how do I set a location to it?

With it being for VR I'll assume it's a widget in world space. You'll need a widget component to be able to display a widget in the world. In terms of settings its location, you would set the world location of the widget component the same way you would any component.

And just in case you're not familiar with widget components, they pretty much render a widget to a material and then displays it on a plane. You can create a widget and then set the component to use it.

delicate torrent
wheat viper
#

Hello,
does anyone have any idea why my Projectile component doesn't move when I activate it, I have simulating physics off, and my aim to activate it once I want to throw an element. I have a pickup system.
Sorry if nodes are messy.

delicate torrent
wheat viper
delicate torrent
#

MoveX is absolutely the same but get right vector

sharp rapids
#

When I load a level with the 'Open Level' node, the Camera in the level stops working for some reason.
When I load the same level manually in the editor PIE, it works as intended, but when loaded via BP, the camera output returns a black screen.
Why might this be happening? How can I fix it?

#

If I press F1 in the game viewport, it shows the wireframe of the scene which is correct

#

But it does not show the rendered scene, instead its a black screen

azure walrus
#

Hi, does anyone know what is wrong in my function? is it possible that I am using the wrong add node?

spark steppe
#

you are trying to add an Object to an Actor array

dawn gazelle
#

Alternatively, disconnect the array and the array elements, connect the array first ๐Ÿ™‚

azure walrus
dawn gazelle
#

The reason why - when you connect either the array or the array elements pin it sets the wildcard pins on the node to that particular type. The order in which you connect to wildcard pins can matter as it sets the type and in some cases the engine doesn't appropriately assign exactly what you may actually need. It's always best to connect the array first before the array elements as that way you know you'll be looping through the correct type of object.

trim matrix
#

i have tried to make a pause menu that shows when the player presses pause, then if pressed again resumes the game, but when i press the input again, it dosnt "reset" for lack of better wording. it just stays on the screen, ik im prolly not going ab it the best way lol ๐Ÿ˜ญ

#

this is all in my player bp

lofty rapids
#

does the game unpause ?

dawn gazelle
trim matrix
lofty rapids
#

basically a print string comming off of b in the flip flop

#

see if that flip flop is working right

trim matrix
#

its not

lofty rapids
#

switch a boolean

#

to do basically the same thing

trim matrix
#

so make a bool thats set pause, and then maybe a branch put here? im confused

dawn gazelle
trim matrix
#

no

lofty rapids
#

does the same thing

#

idk why that flip fop isn't working though

#

but i've seen weirder things

dawn gazelle
#

OHH

#

I know why....

#

I'ts a flipflop in a function

#

Flipflops can only retain their state outside of functions.

#

Multiple calls will have the flipflop reset itself.

lofty rapids
#

i c, so boolean should fix that np

dawn gazelle
#

Mine worked cuz I just had it hooked up directly on the input action.

trim matrix
#

the bool is working n that makes sense ty

dawn gazelle
#

Also, instead of having a specific bool...

#

Built in function to check ๐Ÿ™‚

trim matrix
#

its working like this, but. i have to press my input twice for it to work

lofty rapids
#

default the boolean to true, or use is game paused like mentioned above

trim matrix
#

ah i see

#

ty

kind estuary
#

i have my data table for all my units.
Each units uses a specific mesh that has specific properties such as color and scale that differ a bit.
So i need another data table to set up all the meshes.
How do i reference these meshes with properties data table, in my other units data table?

dawn gazelle
#

Sounds more like your first data table needs an array with a structure that contains the details about each mesh rather than another table.

kind estuary
#

i dont understand it

#

you have a data table with all your units, the name of unit, hp, attack, defense

dawn gazelle
#

You have a data table that contains your units. That data table would have data about the unit. That data should include the mesh data.

kind estuary
#

because lets say you have 50 units and they only use cube or sphere

#

then you are setting the same data for all entries manually, with color and scale, that is always the same basically (changing only if it is sphere or cube)

#

the unit in the datatable should have something like -> what mesh you are using?

#

and the other data table would define the meshes

#

right