#blueprint

402296 messages ยท Page 553 of 403

amber rune
#

ok

lapis inlet
#

Nvm

#

I got it

amber rune
#

yes

#

now from the begin overlap attach it

lapis inlet
#

Erm, where is the begin overlap?

#

I cannot see it

amber rune
#

ok so click on the box colsion

#

in the actual level

lapis inlet
#

Drag it like the lightbulb?

amber rune
#

then in the level blueprint type in begin overlap and it should appear

#

no

#

add on actor overlap

lapis inlet
#

Ah

amber rune
#

did it work

lapis inlet
#

Yessssssssssssssss, thank youuuuuu

amber rune
#

welc and now with that you can repeat it and change it for diffrent effects

maiden wadi
#

@onyx harbor Oh. Is this in a Widget blueprint?

onyx harbor
#

yh

maiden wadi
#

You can't RPC in a UserWidget. I'm not sure why it doesn't work correctly on the server machine. But any other machine that should fail. To RPC you need to use a replicated Actor, or a replicated ActorComponent.

onyx harbor
#

ah ok

#

btw how does 'set tag node' work? how do i actually input what i want the tag to be?

#

thanks btw

maiden wadi
#

On a side note though. If you want to know how many players are in the game without using any network code. You can also get the length of the Players array inside of the Gamestate.

onyx harbor
#

oh i heard abt doing that

maiden wadi
#

Each player should have a PlayerState replicated and they're all stored there.

onyx harbor
#

what is the gamestate? sorry for stupid questions haha

maiden wadi
#

Just another actor spawned in the world. It's one of the basic classes. GameMode, GameState, PlayerState, PlayerController, HUD, etc.

onyx harbor
#

isn't it also possible to get the playercount in the gamemode right?

maiden wadi
onyx harbor
#

ok cool

#

i'll do that b4 doing anything else

#

also

#

one last thing why won't it let me change the tag of the player controller like this?

amber rune
#

the event (white) line isnt connected

maiden wadi
#

I'm not sure what that variable is, but it looks like it's part of the DragDropOperation class. If you want to add a Tag to the PlayerController, you need to get the correct Array. That's an FString variable. You're looking for a TArray of FNames

onyx harbor
#

ohh

#

ok im not sure how to change the tag that way but i'll look at how to do it

#

ohh i get it now thank you

swift sphinx
#

erh this is super weird i can't fix the issue im having with height fog -.-

#

is there something extra i have todo when using Height Fog ON the player character BP itself?

swift sphinx
#

ok here it comes again

#

So i have a Exponential height fog on the character BP and in my game when it starts the floor is lava and will start to rise (Z Axis) and on that lava floor i have a box collision (300 z axis) and when the player enters the collision area i calculate how far from the collision box bottom the player currently is and then i Map Range Clamp it to

In Range A : 300.0
In Range B : 0.0
Out Range A : 0.02
Out Range B : 1.0

and then set the Fog Density to that.

Problem:
If i stand still and let the box collision hit me (in a split second i see the fog change color but then just goes away) BUT if i start moving around the fog comes back again and then goes away when i stop moving.

Now if i disable the moving floor and then play again and this time i spawn beside the lava floor actor and move in with my character and stop moving it's fine... the fog is present and working as it should and i can move about and everything is fine :S i dont understand it and have now "wasted" 3 hours trying to figure this out....

ALSO:
i stopped the Set Fog Density and set it manualy to 1.0 and starting playing and noooooo problems at all :S

near yarrow
#

hey there. if anyone can point me in the right direction it would be great. we have melee animations for a sword weapon. if the mesh is set to owner no see the sword is not animated on the first person view. we have tried different combinations to get these things just right. So far we are stuck on camera attached to capsule and looking down looks like shit. today i had the bright idea of attaching mesh to camera for local player on begin play. the only issue we have with this is that on some respawns the camera angle is jacked and you can see the mesh again.

#

ive tried different combos of keep relative or keep world snap to target'

#

all of these jack up the character

#

any solutions to this issue without making a first person mesh. hiding bones did not work for us as hiding the chest hides the arms that descend from it which keeps the sword animations from playing on the first person camera

#

and why is begin play never true more than once for the server?

icy saddle
#

If an Impure (blue) function makes some operations to calculate a variable X and then returns X, does X get cached?
For example, here the "Out Hit" gets used in 2 different Set nodes. Does the whole function run again for each Set node when it's an impure (blue) function? or does that only happen for green functions?

proud hull
#

@icy saddle the impure call will cache the result. You can test this for yourself by making a function with a print string and returning anything. Then use what it returns twice. The impure function will only print once. Switch it to pure and test again. It will print twice.

icy saddle
#

@proud hull I see, thanks!

onyx harbor
#

i need help again, im new to blueprint so sorry if this is messy and counter-intuitive, but i get a random material from an array and when i apply it, it should be deleted from the array after, so the next time it loops (this is a foreach loop of all player controllers) it shouldn't assign the same material from the array again, but it does

icy saddle
#

In BP, is there a way to detect when two colliders start touching each other and when they stop touching?
For example, my two colliders are my character capsule collider and a wall's collider.
(I think the character can't overlap with the wall so I can't use OnComponentBeginOverlap).

final locust
#

not to be a smooth brain but does anyone know what a "text object reference" is exactly like what type of blueprint, sorry if thats not specific enough

zenith pond
coarse marten
#

I feel like this might be something simple but my maths when it comes to line tracing is not the best

#

so i finally setup a player crosshair that each player owns, everyone references the same camera for the region they can move the crosshair in

#

there's a target where the crosshair is, trying to make it so when they shoot it traces in that direction

flat raft
#

Is there a Compare ENUM to STRING node?

slate hound
#

how do you figure out where something might be consuming input? I created an input that uses E but it doesn't fire and I'm assuming something is consuming the input

#

because other keys will work

flat raft
#

Can you right click and find references, and then hit the binoculars button ?

slate hound
#

it finds reference to "E"

#

which makes a huge list

#

it isn't named well like "Action Input E" or something

flat raft
#

the string "E" ?

slate hound
#

ya

#

like this

flat raft
#

Don't type it .. right click

slate hound
flat raft
#

Oh I see

#

Try "E Key"

#

@slate hound

slate hound
#

ya that works

flat raft
#

@final locust in what context? Widgets or Variables data types?

final locust
#

@flat raft im pretty sure widgets but could you tell me both if thats ok

flat raft
#

In widgets, you can add a TEXT widget. A widget to display Text. In Variables, Unreal has a type called Text. Like, String, and Name.

slate hound
#

found it

flat raft
#

@icy saddle you can added another collider to ur character, box/sphere/capsule and use OnBeginOverlap.

final locust
#

well where it is stored or how to make one

flat raft
#

Widget text box

#

I believe that is the input you are looking for

final locust
#

@flat raft thank you for the help

cursive sage
dapper kiln
#

Conceptually how do most first and third person shooter games go about interaction with things such as weapon pickups, etc.? Some things require the player to look at them, but others can be picked up just by backing up into them. It's like there has to be two forms of communication, one for setting the text on your screen saying, "Press F to pickup AK-47" but also another to actually pick it up. I've used overlap events for setting the text notification on players screen and did a box trace to pickup the object, but I run into the issue where it's hectic to pickup weapons if there are a bunch of weapons in one place, or near a door, etc. I was just curious if anyone had a good "overview" of how it could be setup. (Again, not asking for code or anything, just advice)

onyx harbor
#

so this gives repeated random numbers

#

even tho i thought my blueprint made sure anything that was used gets deleted, so that it wouldnt give the same number more than once

sudden lynx
#

Well if you have 5 items in an array and then remove one from anywhere, then all those on higher number indexes get shifted down to fill the gap left by it so if you chose index 4 and then index 3 youre hitting the same spot but with a different item inside it

onyx harbor
#

right but im also getting the same materials

sudden lynx
#

But the random integer node is going to get run again every tome the node it feeds into gets accessed

#

And eacc time it will return a number between 0 and max

#

Which could be 0, five times in a row if youre unlucky

#

Hmm thats odd

onyx harbor
#

but even then it still should have different materials if they get deleted?

#

cos the actual content in the index will be different

#

even the index is the same

sudden lynx
#

My suggestion is instead to always get the material at index 0 but then Shuffle the array after each time you remove an item

onyx harbor
#

damn thats smart ill try that

sudden lynx
#

NOt sure how to fix yours but I think mine will work

#

My way is good if the array is small. Terrible performance if the array is big though lol

onyx harbor
#

what node do i use to get item at index 0

#

yh the array will be like 10 max

sudden lynx
#

Just drag from an array pin and type Get.

#

Simple Get node takes array index number and returns item from that index

onyx harbor
#

oh is it just that

sudden lynx
#

Yep!

onyx harbor
#

oh ok thank you

#

so much for taking all that time to help me tyy

sudden lynx
#

I hope others will be as helpful to me

onyx harbor
#

haha yh i guess everyones learning here

sudden lynx
#

Yep!

#

Unfortunately that may be why nobody seems to know the answer to my LAN problem

#

Lol

#

I needed to assign colors over network for my game project as I was adding a team game mode

#

And same colors were on same teams

#

I got that to work but the lan problem has me stumped

onyx harbor
#

oh i doubt i can help u there lol i just started unreal recently :(

#

it worked btw thank you

flat raft
#

@dapper kiln depends on the game, and you as the designer. What is your preference ? What feels good? Play games that are like the one you are trying to make. Millions of dollars have gone into Call of Duty R&D. Just copy what the AAA games are doing. ๐Ÿ˜‚

#

also, if you have a lot in one spot, look at how Battle Ground did it. They pop up a menu, and the player chooses what they want.

onyx harbor
#

how do i check if a mesh has a certain material in blueprints?

dapper kiln
#

@flat raft I know, I like how Call of Duty does it for the most part, I was just curious conceptually how there interaction system is setup for picking up weapons, etc. I didn't really want to go with the inventory system, I just want players to be able to interact with things by pressing a key and receiving what it tells them they will receive. I've setup my own system already that works ok, I just feel there are better ways than relying on event overlaps which always tend to derp out.

onyx harbor
#

is this bad practice? is it using too much processing? i set a colour variable through the server and in the client idk how else to check for the change in colour so that it can perform the change

flat raft
#

that's basically it @dapper kiln I would setup mine, if I had one, based on camera facing angle and distance to player.

#

And weapon highlighting

dapper kiln
#

Call of Duty Warzone seems to allow players to pickup whatever they are looking at. It's like it's ticking a linetrace from the player's camera in order for them to always know what is being looked at so that you can easily see that you are looking at an Ak-47 when it's inside a pile of other weapons. IDK

flat raft
#

Got a clip? I've only played call of duty 1 ๐Ÿ˜‚

#

@onyx harbor look into event dispatchers

sudden lynx
#

If you are trying to change the color every frame then dont set the material. Instead set a vector parameter on the material (it has to have one though).

onyx harbor
#

ok ty

sudden lynx
#

If you want individual actors to change their colornindependently from one another then create dynamic material instance within each actor that needs that and change the vector param on the dynamic material instance.

#

Setting material parameters is pretty much zero cost to performance. I am not sure what the cost of changing material is. Maybe also very small.

#

But remember the material has to have a parameter node inside it to set in the first place

dapper kiln
#

Whatever you look at creates a small box above it showing what it is, then you can pick it up.

flat raft
#

Cool

wintry storm
#

I'm trying to render a video using sequencer but the playback when actually viewing the final video is way too fast? Can i slow this down somehow?

#

Like it won't make it longer than 4 seconds not sure how to increase that

warm parcel
#

I'm trying to create a "scanner sombre" type effect where I draw a GPU particle where a raytrace hits. Can anyone point me towards how I would do that?

#

Right now I'm putting a new emitter that emits a single particle at the hit location of every raytrace but obviously, this tanks performance

tight schooner
#

@warm parcel Sounds like a hardcore #visual-fx or #niagara question. I'm no tech artist, but I would suspect it would involve a custom collision mesh fed into a Niagara mesh sampler, and some Nscript to figure out what intersects the scanner's frustum, and maybe some tracing on the BP end to determine occlusion...

#

you'll probably get better answers at #niagara

flat raft
#

@warm parcel does the particle do anything special ?

#

Why not just spawn a sphere?

tight schooner
#

it's a game where you paint the level geometry in order to navigate

warm parcel
#

This is the effect I have right now. It works and looks just how I want it to, its just too expensive to spawn an emitter for each particle at the correct location. I'll post this in the niagra channel.

#

@flat raft I'm doing particles because I figured spawning them may be cheaper than trying to move a bunch of spheres 10 times a second. Do you think the spheres approach may be cheaper?

tight schooner
#

so rather than spawning individual particles at hit trace locations, I figure it'd be "cheaper" to do it with the mesh sampler and some Nscript

#

that somehow gets information from BP line traces... my head spins just thinking about the different ways you could approach it

#

but either way Niagara is key

#

spawning individual particle systems at each hit location is obviously not optimal

flat raft
#

Consider not using particles, but instead use a layered shader. The trick is revealing the dotty material when you spray

warm parcel
#

@tight schooner Thanks for the info. And @flat raft my requirement is slightly different, instead of painting onto a mesh, I raycast out from the my player, get the location relative to the player, and transform that to a location relative to my miniature hologram player and spawn the particles there to make a "radar"

flat raft
#

Coolz... I was making sombra lol

#

Well...I mean, that's how I would make sombre

#

it's like the ping in Death Stranding

warm parcel
#

@flat raft The idea of raycasting and using the hit location to spawn a particle/place a mesh is the same. I'm just stuck on how to use the locations I get to spawn single particles. I might try spheres like you suggested before I dig into Niagra, which I'm totally unfamiliar with

flat raft
#

coolz

#

a particle is just a tiny sphere. Well, poly.

tight schooner
#

Niagara is a deep area, but I think it's the only way if you're trying to make something like Scanner Sombre, with tens of thousands of particles on the screen at the same time, in a performant fashion

#

Niagara can offload a lot of that to the GPU

#

the trick is getting the particles to spawn based on traces and collision meshes and IDK exactly how to do that offhand... the best way, that is

#

hopefully you can pick the brain of a niagara expert in that channel

maiden wadi
#

Hmm. Might be something for Niagara. Might look into seeing if that's easy. I've never input that many vectors into a system. But at the same time, I wonder if you could just paint the alpha channel of a pixel at the location of the trace too.

#

As in on the meshes and their materials, instead of a particle system.

tight schooner
#

I suspect it'd be hard to avoid the appearance of a texture wrapped around geometry

#

whereas Scanner Sombre doesn't have that appearance

warm parcel
#

Well, the sphere surprisingly turned out to be cheaper. I just maintain an array and move them around. Even more surprisingly, spawning and maintaining an array of emitters is even cheaper! I have 15^2 radar points updating every 0.03 seconds with no visible drop below 90FPS on a Vive.

#

This still is far from an ideal solution, but it works for now. I can save deep-diving into Niagra for another day!

#

But unfortunately, I couldn't think of a way to store my locations in a place where the particle material could access them without making a material parameter collection with 225 vector fields.

tight schooner
#

oh, yeah, people had to do stuff like that before the Niagara mesh sampler

#

yeah, I'm not sure how one would have a BP provide a Niagara particle system with very many vector locations...

#

short of making a particle system with 100 vector inputs alex

#

I'm curious enough about that that I'm just gonna ask #niagara

warm parcel
#

Excuse the footage of me putting on and taking off the headset. Just wanted to show off the final product. Thanks for the tips!

tight schooner
#

oh ok, I thought you were literally trying to do Scanner Sombre

#

with tens of thousands of particles painted on the environment

#

sorry for misunderstanding

#

If it's just a hundred "particles" or so, you could do it as a hierarchical instanced static mesh component in BP; have the BP do traces and update an array of transforms, and update the HISMC array all at once (there's a node that takes an array of transforms)

warm parcel
#

You're good! The underlaying principle of raycasting and positioning particles at that location is the same, and that's what I was struggling with.

#

I'll try the instanced static meshes tomorrow. I tried that tonight but couldnt find a way to update the position of a single instance- knowing I can do all of them at once is great!

exotic light
#

on animation started and on animation finish

maiden wadi
#

Where did you see those otherwise?

maiden wadi
#

@exotic light That's odd. I don't know why that's changed. But it might be an older engine version. Regardless, you might be able to use the Widget's AnimationFinished event.

exotic light
#

cool thanks i'll give that a try

shadow saddle
#

is it just me
or ue4.25
lag af

exotic light
#

for me if i have raytracing enabled the entire editor is unusable

maiden wadi
#

@shadow saddle What is laggy exactly? I haven't had any problems with 4.25.

manic knot
#

anyone happen to know why im able to push and even flip an actor (a vehicle) after ive possessed and unpossessed it? Im not able to do it before possessing it first

maiden wadi
#

Might have something to do with the unpossession. Are you doing anything else besides just unpossessing?

manic knot
#

@maiden wadi I detach from the vehicle mesh component, re-enable collision on the player pawn and finally set its animation mode to use blueprint ๐Ÿค” on the vehicle the repnotify sets throttle to 0 and puts in in break so it doesnt drive away by itself lol. thats all im doing

#

it feels like the vehicle loses its mass, but even if i set it again manually it acts like it has no mass

#

if i set the mass to a ridiculous number it will work but then the vehicle sinks and the wheels pop though the top of the vehicle lol

last walrus
#

Can you please help me
When I try to launch blueprint with beginplay - it works
When I launch same blueprint with key press event - just nothing
Heres source code:
blueprintue.com/blueprint/ebhqg9sj/

spark steppe
#

does someone know how to use the new control rig component with animation blueprints?

#

cant figure out how to actually apply the control rig to the character

tight pivot
maiden wadi
#

@last walrus Set the character up on the z axis about 5.0. It's an issue with the CMC

spark steppe
#

thanks, but that doesn't involve the control rig component which was readded in 4.26

tight pivot
#

oh sorry, i'm still on 4.25. Did they change it?

spark steppe
#

there's sadly not much, or rather not ANY documentation about it yet, so i hoped for someone who already figured out ๐Ÿ˜„

#

yea, they added a component which you can add to an actor and allows you to combine blueprint logic with control rigs

#

also there aren't parameters anymore (which you could pass in animation layers), so to get data into the control rig it seems you have to use the component to manipulate controls within the control rig

#

or i'm doing it horrible wrong, but as said it's new and no documentation is around

alpine copper
#

Hi guys is there any way to spawn a class with a subfix or prefix like if you have a parent class of a pick up object, but you only want a certain type ?

last walrus
#

@last walrus Set the character up on the z axis about 5.0. It's an issue with the CMC
@maiden wadi with... What? Character's script is not my its ue4 basic blueprint

spark steppe
#

@alpine copper add some type string variable for example to your class and manipulate it on the object that you created

#

or rather make and use an enum

alpine copper
spark steppe
#

well, you don't really need 4 actors at all probably

alpine copper
#

@spark steppe how do you mean ?

spark steppe
#

they probably all extend some class like "MusicTape" or something

#

rightclick in your contentbrowser, then select enumeration from blueprints submenu

#

open that, and create 4 entries, and fill them with your types (DrugTape, FirstMedalTape, ...)

#

then open your master tape class, and add a variable and set its type to the enumeration that you just created

#

then after spawning an tape you can set it to the one that you wanted to spawn

alpine copper
#

They extend from a general pickup actor

spark steppe
#

well up to you how many levels of abstraction you want, i try to keep it minimal

#

otherwise (depending on how much stuff you add) it will get quite chaotic at some point

alpine copper
#

I was thinking maybe creating a sub class of the pickup that is for the tapes is this too much

spark steppe
#

that would work

upper raven
#

How do you make a variable that exposes that object's properties, similar to how the AI Sense Config is set up?

spark steppe
#

i think its when you check instance editable in the variable details

#

might have to recompile the blueprint so that it shows

upper raven
#

@spark steppe That's not it. I want the selected object to have its variables exposed in the blueprint editor. In the image above, selecting AI Sight Config as the class gives you the variables below the Sense tab.

spark steppe
#

it is what you asked for

#

1st pic is the blueprint of the component

#

2nd pic is the component in an object thats spawned in the world

upper raven
#

Yeah, that works if you place or spawn the actor in the world. What I'm looking for is something similar to the pic I posted where the variables are exposed in the blueprint editor, not the scene editor

spark steppe
#

thats the same

#

but i dont know how the ai sense works, so maybe im not getting it :>

#

if you inherit the class it should be in the class defaults settings of the BP

weary jackal
#

so i'm working on a zombie dismemberment system, so when i detach head with the neck the mesh some kind of stretch. it works fine with other skeleton bones constrains. In mixamo character this stretching mesh is going on with detaching any bone. can someone help how to fix this?

slender hawk
#

how do I compare a custom struct?

#

do I need to break them and compare each item manually?

crimson briar
#

I have a noob question: I want to have a trigger box in my level and enable input for my player in that area so that he can press a certain key to trigger an animation. How do I have to set it up? I followed the documentation and put a blueprint to my triggerbox and it works, but I can't reference other things from my level (to change their position in the level) from that blueprint. But, if I use the level blueprint then I don't have the setactorrelativeposition node.

maiden wadi
#

@slender hawk Pretty much.

noble basin
#

mmk so i have a portal system set up to where when i push a button, a line trace is cast from my player and looks for the first worldstatic, when it finds one, it stops and creates a portal, then on the out hit I create a break hit result to get the impact point and normal to determine the portals location and to set its forward vector, but I want to set it up now where the portal instead of being spawned from a linetrace from myself,to instead spawn after a projectile hits a wall, how would i modify it? i can show my current bp is necessary

swift sphinx
#

So i have a Exponential height fog on the character BP and in my game when it starts the floor is lava and will start to rise (Z Axis) and on that lava floor i have a box collision (300 z axis) and when the player enters the collision area i calculate how far from the collision box bottom the player currently is and then i Map Range Clamp it to

In Range A : 300.0
In Range B : 0.0
Out Range A : 0.02
Out Range B : 1.0

and then set the Fog Density to that.

Problem:
If i stand still and let the box collision hit me (in a split second i see the fog change color but then just goes away) BUT if i start moving around the fog comes back again and then goes away when i stop moving.

Now if i disable the moving floor and then play again and this time i spawn beside the lava floor actor and move in with my character and stop moving it's fine... the fog is present and working as it should and i can move about and everything is fine :S i dont understand it and have now "wasted" 3 hours trying to figure this out....

NOTE:
i stopped the Set Fog Density and set it manualy to 1.0 and starting playing and noooooo problems at all :S

dusk flame
#

Hi guys, I am curios how I can go about handling a delegate inside of a function.

#

I mean I wanted to create a customEvent to handle it, but sadly inside of a function this isn't possible.

#

I did some reading, and I guess its because functions are one-time called, so can't really support setting up a callback.

slender idol
#

@dusk flame why do you need to create an event inside a function?

trim matrix
#

can someone help me for some reason when i get a client every time i get to starting on the project i get blocked

tame pecan
#

@slender hawk You can't compare a struct unless you break them

rancid quartz
#

Good morning. Lately my Unreal has been insisting on compiling thousands of shaders every time I open it or my project. Does anyone know how to stop this?

short pawn
#

hi guys, for some reason my input actions are not working in the level blueprint or character blueprint, I have tried checking them with the breakpoint and they don't fire, also they are receiving input from other regular button presses. anyone know whats going on?

tame pecan
#

@short pawn Have you implemened the action events in your PC?

short pawn
#

the input actions also don't fire in the level blueprint

#

im not sure what you mean @tame pecan

tame pecan
#

Have you implemented the action events in your player controller?

short pawn
#

i have the input action connected to a print string

tame pecan
#

In your character BP?

short pawn
#

I tried in both the character and level blueprint

#

they are both printing the string with a regular key input

tame pecan
#

So if you have an action event binded to F - it doesn't work

short pawn
#

correct

tame pecan
#

but works if it's just a usual F keybind

short pawn
#

yes

tame pecan
#

Feels like you've put it in some other bp so it's overriding character

short pawn
#

ive tried creating a new input action as well and still it won't work

#

i thought i did that too

tame pecan
#

You sure you've possessed the character?

short pawn
#

the character is moving so i think so?

tame pecan
#

Good

#

So axis inputs works?

short pawn
#

yeah they do

#

its a side scroller character

tame pecan
#

Have you tried in other projects?

upper linden
#

i need to verify that input button is pressed, how do i do it ?

short pawn
#

i have not but i guess thats my next step. thanks for trying to help

#

@upper linden attach it to a print string or toggle breakpoint

maiden wadi
#

@upper linden Verify it how? Like with a boolean return for a Branch?

upper linden
#

ya

#

i wanna verify that LeftShift + input are pressed together to trigger sprint + camera shake

#

when i keep LeftShift pressed down alone, character stops but camera shake doesnt stop

maiden wadi
#

@upper linden Basically whenever you press or release either of those buttons, you'd need to do the same check to see if both are pressed and if so, do your logic, if not, then don't. But. In this case, I assume your Input is like W and S to move backwards and forward?

upper linden
#

yes for W and S

#

that's my logic exactly, but i don't know how to do the check

maiden wadi
#

I mean. You can probably get away with an event driven method, but I personally would just do a state change on Tick. Or your InputAxis event, same thing in the end. Instead of basing it off of your input, base it off of something more like your character's current velocity.

upper linden
#

i understand what you mean, i'll be trying it right now

maiden wadi
#

IE, if you can only walk at 300UPS, and shift lets you run at 600UPS, on tick, check velocity and if it's length is above maybe 320UPS, start the shake and just leave that playing until that tick says it dropped back below 305UPS or so.

#

Doing that also allows you to easily change it later if you want to make it more shaky the longer or faster their running, like a ramp up time or exhaustion effect sort of thing, and checking a vector length on tick is exceptionally cheap.

upper linden
#

doesn't work, i dunno what's wrong

#

the logic is sound

dense pine
#

Hey guys, new to UE4 and blueprints. Working on a business project right now. I could really use some help. I've got an object I want to rotate based off of thumbstick movement. I've got it working using this Level Blueprint setup here but it doesn't hold the position it gained once I let go of the stick, it returns to it's original position, also I would like it to rotate based off of the direction of the thumbstick and not the position. I'll answer any questions, thanks guys!

upper linden
#

i believe you have to save your parameters in variables

#

save your inputX with a SET node

#

when you open a thirdperson template they have Base Turn Rate and Base LookUp Rate variables

thorn moth
#

I have a forward vector and I want to make a actor rotate at that rotation, but it is not right

upper linden
thorn moth
#

I am using the Impact Normal but how a rotate the actor 90ยบ to the right direction

dense pine
#

@upper linden I brought the nodes into it's own subclass and it will no longer work, what's the correct way to reference self? Besides the target being: Self

maiden wadi
#

@upper linden Yo, you ever get that solved? If not, how are you doing your camera shake?

#

@upper linden If you didn't, this branch at the end with the prints is an easy way to determine that switch based on the velocity.

#

First branch acts as a gated doonce so as not to continually set the bool and keep calling the other branch, and the second one acts to split your shake or don't shake functionality.

plain sigil
#

having problem creating widgets in multiplayer

#

where should i create them and how should i replicate them

tame pecan
#

You don't replicate widgets

plain sigil
#

yeah its client side

tame pecan
#

Yes, widgets can't be replicated

plain sigil
#

shouldnt this work just fine?

maiden wadi
#

I keep my Widgets mostly in the HUD class. Makes it very easy to avoid multiplayer issues.

tame pecan
#

You can use "Is Locally Controlled"

plain sigil
#

i tried it

tame pecan
#

What is the issue

maiden wadi
#

You might want to tell us what the Widget is for. Otherwise we're just speculating about the issue.

tame pecan
#

You want the timer to show the replicated value?

plain sigil
#

no

#

just create a widget to every client

tame pecan
#

Is that begin play on the character

plain sigil
#

yeah

#

the issue is that the host doesnt have a widget

#

only the client

#

does

clever cedar
#

How do I set the showflags for a scenecapture2d component in blueprint. This doesn't seem to work?

tame pecan
#

Make a print string after the operation

#

to check if your statement is true

#

Because that doesn't make sense

#

especially on begin play

trim matrix
#

Does anyone here know how to make a cinematic start when the player character opens a specific door?

#

I only have a blueprint that works when the player walks into a trigger box at the moment

sonic crescent
#

Hi there. Why do my Hit Event is not hitting everytime? It's like only hard collision are detected and soft one are not... Any idea?

sick crown
#

how does an online rpg go about saving persistent data for characters that go offline? is there a common method?

teal burrow
#

Databases and backend servers

late kraken
#

When I'm idle the ocllision aren't good. When I'm moving it acts nicely.

fathom slate
#

guys my player.. the mesh doesnt rotate on it its really annoying me

#

any rfixes

late kraken
#

guys my player.. the mesh doesnt rotate on it its really annoying me
@fathom slate Did you check one of those?

fathom slate
#

this is a screen shot of m issue

#

@late kraken

ornate apex
#

anyone have experience with unreal clr?

last walrus
#

what am I doing wrong?
my pawn blueprint is just ignoring key press events
begin play event works fine

near yarrow
#

@last walrus auto possess is set to playercontroller 0?

sick crown
#

@last walrus You've set up project settings inputs?

last walrus
#

@near yarrow @sick crown what?
I can't understand what you both are talking about
I'm pretty new to unreal

sick crown
#

ok.

near yarrow
#

mind gap is talking about creating input events in the project settings

#

which is alot better than just using key press event

#

but if your just trying to test it key press is fine

#

i do it all the time

#

but you need to make sure the pawn is set to take input

last walrus
#

but you need to make sure the pawn is set to take input
@near yarrow how to check it?

fathom slate
#

im sure im doing somthing wrong, whenever i close the media player editor the video stops even though i saved

near yarrow
#

hang on ill screenshot

fathom slate
#

anyone ideas?

near yarrow
#

i changed mine to player 0 because that is always the local controller for said machine

#

usually i have auto possess set to disabled and i use gamemode to spawn pawns from the server and then use the server to set controllers for possession of the pawns

#

you can also do checks to make sure an event is happening using a node called print string

#

move it around through a script and find where the script fails

last walrus
#

i changed mine to player 0 because that is always the local controller for said machine
@near yarrow I changed it and now unreal thinks that this pawn is character himself

near yarrow
#

ahh

#

so you have a seperate character

last walrus
#

I have a character
and I have a blueprint that must be initialized with key press
some guy told me I must use pawn class for this

near yarrow
#

ok

#

set the possess back the way you had it

#

show me the key press code in a screenshot

#

characters are also pawns where they inherit from pawn class. look into inheritance when you get some free time. but i bet you need to spawn a blueprint from a key press inside the character

near yarrow
#

okay

#

if that code is inside the other blueprint then it wont fire because the blueprint doesnt exist yet

last walrus
near yarrow
#

is that h key event inside the character tho?

last walrus
#

um... no

sick crown
#

do you want a pawn?

near yarrow
#

ok thats where you want it since that is what the player possess

sick crown
#

or a character

near yarrow
#

if its a weapon he prob doesnt need it to be a pawn

last walrus
#

do you want a pawn?
@sick crown I want a blueprint that will start working with key press event
I dont care what class

near yarrow
#

the H key event will need to be inside the character blueprint because thats what the controller possess

sick crown
#

are we talking about casting or interfacing?

last walrus
#

so... the only way to do this is call for this blueprint in character script?

#

or smth else?

sick crown
#

if you want a character to push 'k' and have something happen it should be within the characters blueprint?

last walrus
#

I dont know
and because of this I came here...

sick crown
#

ok

#

im just a bit confused on what your attempting too ;o

#

if you want 'space' to jump, thats all in the character.

last walrus
#

it's like space to jump
but with another key and another action...

near yarrow
#

i think he wants the character to be able to pick up the other actor

last walrus
#

not to pick up

#

but to create

near yarrow
#

ok

last walrus
#

if you want to see

near yarrow
#

ya you will want that code in the character

#

since its the character performing the action

amber rune
#

how can i get the screen resolution in a blueprint

sick crown
#

get viewprot size?

last walrus
#

ya you will want that code in the character
@near yarrow oookay
but you said something about "creating input events in the project settings"
what is it for?

amber rune
#

yeh i mean how many pixels in legth and highth is the screen

near yarrow
#

thats just a fancy way of reading a key press and naming it

#

so you can set it up for players to change the buttons

#

also in the input actions you can set it to be an axis input which is constantly firing but has a value from -1.0 to 1.0. like a thumbstick or a mouse would be an axis but you can set buttons to be an axis of a certain value

#

@amber rune thats a good question

#

i would like to know that as well

last walrus
#

so you can set it up for players to change the buttons
@near yarrow where do I do this?

near yarrow
#

under engine you will see input

#

you can set up input events in there

sick crown
#

@amber rune im not seeing one, looks like you can do it in c++

near yarrow
#

and then call those events in the blueprints instead of just a key or button

amber rune
#

ok

last walrus
amber rune
#

thanks

#

that worked

last walrus
#

@near yarrow I see you know unreal veeeery good. Can I pm you sometimes for help? I promise I will do this only if I'll not find own solutions

tawny hound
#

bros
if I want a blueprint actor to react to a copy of the same blueprint (two bad guys, same blueprint, reacting to each other), I obviously can't just cast to the same blueprint. do you use tags then in some way?

last walrus
#

hmmm
you maybe just can copy this blueprint and add 1 in it's title

tawny hound
#

would be neat if I could infinitely replicate the BP, since there will be a lot of the same actors

#

In my head it seemed logical to give them a tag and find a way to react to actors with that tag, so if I know that it's achievable I can try to figure it out

last walrus
#

in that case - tags I think
but I know nothing about them so wat for others

tawny hound
#

Right now I'm just clawing at anything that might work

#

I was trying to give them a quick command to move away slightly if bumped into each other, so they don't stack up like dominos

sick crown
#

you need the references of the actors

#

erm, maybe not ;p

rough wing
#

@tawny hound even a boolean would do the jon

#

job

#

Or you can make an int variable that has different values for each team

#

If your int value doesnt match with mine, I will attack you etc

sick crown
#

can you have the collision check if its collision is due to an actor of the same type, then execute the bump?

#

i donno why i uderstood it that way

#

but the analogy should work?

tawny hound
#

I mean, if I can get them to recognize each other's collisions, anything after is pretty straight forward
@sick crown yeah, but this wouldn't really work now would it

#

it's easy when you can cast to a different blueprint, but this is the same blueprint trying to communicate with instances of the same exact blueprint

sick crown
#

so you need to cast to the referenced actors capsule

tawny hound
sick crown
#

just trying something

tender sierra
#

the array is an Instance Editable, so that I can add cameras from the level.

last walrus
#

maybe cameras array is empty

sick crown
#

@tawny hound

tender sierra
last walrus
#

@tender sierra maybe try for each loop

trim matrix
#

Is it possible to change widget color on hover?

near flint
#

When i add a widget to character and set it to "Screen" space, it ignores the Owner no see, is there a blueprint way to overcome it? thx

trim matrix
#

I"m trying to change text color on button when I hover, but Not sure how

#

Set Color and Opacity, requires widget object reference when I try to pass in text object reference

sick crown
#

@trim matrix in the desinger scroll to the bottom on the right menu and theres events you can use

trim matrix
#

Yes there is onhover

near flint
trim matrix
#

so I do onhover->set color and opacity

#

But,

#

The issue is, set color and opacity wants user widget object refernece

#

when I'm trying to pass in the text object

near flint
trim matrix
#

Yes I have done that.

sick crown
#

wrong function?

trim matrix
#

What function is it?

near flint
#

create a new set color node

#

out of the text ref

#

it is specific to any ref

trim matrix
#

Is it set text render color?

tawny hound
#

That makes it react to any actor, no matter which @sick crown
it's a start, but I'm trying to narrow it down to just the same actor

I'm experimenting a bit with this type of logic ๐Ÿค”

sonic crescent
#

HI there, my Hit Event is working fine 90% of the time.
But sometimes, there is no hit.
It's a box collision that is moving FloatingPawnMovement and colliding with Moutains.
Sometimes the box collision Enter in the moutains with no hit event.
Who can point me in the right direction?

sick crown
#

might need the class, off each first

#

so that it understands they are the same actor, that will return false unless the references are the same

tawny hound
#

Ooh, what equal node is that?

sick crown
#

== takes what ever

tawny hound
#

ah, object

sick crown
#

yea

sick crown
#

good times;]

tender sierra
#

@tender sierra maybe try for each loop
@last walrus

it seems like the objects arent even leaving the array. this is what buggers me

sick crown
#

@tender sierra its seems as if you are losing the references somehow

tender sierra
#

@sick crown

but its so simple, I dont get it why it doesnt work

the above does, the below doesnt

#

the array in the lower example isnt empty, but the GET node isnt receiving anything it seems

#

sorry, it is receiving, just not sending further anything

sick crown
#

and if you use the length function what do you get?

#

i cant tell if you cameras array is in the correct scope

tender sierra
sick crown
#

nvm i see it now

tender sierra
#

@last walrus mentioned For Each Loop

maybe I should - how does the For Each Loop work?

#

how can I make a quick test?

rotund basalt
tender sierra
sick crown
#

did the length say 3?

tender sierra
#

length say 3, so 4 in total which is correct

last walrus
#

@last walrus mentioned For Each Loop

maybe I should - how does the For Each Loop work?
@tender sierra for each loop does same action for each item of array

tender sierra
#

its like it prints the name, then leaves out the three others

maybe that is expected of a for each loop since I didnt wire it properly

#

what I wanted with all this was to check if I could read the array and do stuff with it

maybe at the end, the For Each Loop is what I want, it still doesnt explain why the GET didnt work

last walrus
#

strange thing

#

it gets 2'nd element of array

#

not first or last...

sick crown
#

do the out actors of the find all actors of class give you the same array?

tender sierra
#

exactly

why the second? I didnt even specify it somewhere

sick crown
#

is this array just a variable with static references added to it?

last walrus
tender sierra
#

do the out actors of the find all actors of class give you the same array?
@sick crown

how can I check?

When I tried get index 0 it gave me one

last walrus
#

0=1
1=2

tender sierra
#

is this array just a variable with static references added to it?
@sick crown

let me see

#

0=1
1=2
@last walrus

yes, I understand that, but I mean it did pick one by random. its not that I told it to

last walrus
#

yeah I noticed

sick crown
#

well you said it printed all of them, but actually only found the reference of one of the cameras

#

?

tender sierra
#

sorry, I was wrong saying "all of them"
it printed out the one with the index I specified

tawny hound
#

now it appropriately responds to any actor who has a component with a specific tag

#

ALLEGEDLY

shadow saddle
#

what is the name of this node?

#

cant find it

sick crown
#

@tawny hound seems like good way to do it

tawny hound
#

yeah, ty for the help. made it easier to narrow it down

#

I think tags can make things a lot less complex than they to be

sick crown
#

@tender sierra you used a for loop and specified an index?

#

@tawny hound

tender sierra
#

its like it prints the name, then leaves out the three others

maybe that is expected of a for each loop since I didnt wire it properly
@tender sierra

Sorry guys, false alarm

aparently I had two things wired to the O button

So what happened is this:
The GetAllActorsOfClass (that works) printed CineCamerActor3
The empty rows, where printed by the ForEachLoop

sick crown
#

@tawny hound when they actors 'bump' will the event by done twice?

#

be*

#

@tender sierra thx for the brain tease ;o

tender sierra
#

The interesting thing is that even the For Each Loop doesnt work, and it printed empty rows

tawny hound
#

gonna check. testing with character launching just to see if it works, then locking it with a boolean as cooldown

#

yeah, both actors respond to each other simultaneously

sick crown
#

might be ok in some instances, and others i guess would need specific work arounds.

tawny hound
#

I guess a quick workaround could be to set the capsule collision component in front of the actor, so if they run the same way, it's the one furthest ahead getting bumped

haughty ember
#

@shadow saddle It's time remaining, but for a specific animation. It needs to be accessible

tawny hound
#

I just tested with two actors running towards the player, and when I jumped, they crashed into each other and got launched HEHEHE

sick crown
#

heh

tawny hound
#

a game mechanic is born

shadow saddle
#

@haughty ember are they the same thing

woven wing
#

@tender sierra - You don't have the for loop wired properly.

#

You need to link the Pressed event to the Exec pin.

#

And then the "Loop Body" pin to the print statement.

haughty ember
#

@shadow saddle I believe so. Perhaps the tooltip can shed more light though

sick crown
#

@tawny hound I think the hardest concept is in the case of 3 'bumpers' to have only 1 'bump' happen between any single bump instance, how do you balance who gets bumped with out it getting too complicated?

tender sierra
#

@woven wing

thats true, but I was demonstrating different tests
this particular test uses the GET from the array to print a value, which failed

sick crown
#

but there are so many events you might want to happen

tender sierra
tawny hound
#

Yeah, that's going to be something to figure out, that's true

woven wing
#

Ah, 'aight.

tawny hound
#

I spawned a bunch of them and they starting jumping around over each other like jumping beans

stiff hatch
#

quick question, is there a way to update a audio component to loop sounds via an event?

tender sierra
#

@woven wing

in short the above works, while the below doesnt
We've had so many brains on it in this channel and it seems simply not working

woven wing
#

Well.... I mean 'Cameras' in this case... needs to be Set somewhere right?

sick crown
#

it is

woven wing
#

Where?

sick crown
#

are you attempting both o key press operations at the same time?

mortal verge
#

Hey guys I made a game in Unreal. This is the game Premise:
I have an FPS zombie game called Atouq Slayer. The main character wields an AK-47 and can pick up weapon ammo. The character walks, runs crouches, jumps,shoots. Picks ups weapon ammo and also reloads. You have to kill all zombies before the timer runs out to win the game.

ZOMBIES:
There 3 different types of zombies(each dealing a different attack damage % ) with altogether 53 zombies appear in 2 waves.
The game has 3 outcomes for the game.

  1. You kill all the zombies, you win.
  2. You run out of time before you kill the zombies. You lose.
  3. The zombies kill you. You lose.

AMMO LOGIC:
Altogether there are 9 ammo boxes. All of these ammo boxes are placed at specified locations on the map.
2 out of the 9 ammo once are respawnable ammos. They respawn at given time.

I can send a link so you can see what my game looks like. I need permission.

Any suggestions to make my gameplay better ? anything I can add to the game mechanics to immerse the player?

woven wing
#

@mortal verge - You're probably better off over in #design-chat

tender sierra
#

are you attempting both o key press operations at the same time?
@sick crown for testing only

it proves that the above works = prints, while the below prints an empty row ("none")

mortal verge
#

Okay thank you @woven wing

woven wing
#

Hmm

#

The above would work regardless of what instance is handling the event.

#

While the below only works if that specific instance is the one handling the event.

#

Is it possible that there are two instances of this class?

tender sierra
#

can you elaborate about the "handling the event"?

#

Is it possible that there are two instances of this class?
with class, are you referring to that particular camera instance or?

woven wing
#

Like, OK, remove the "O pressed" event, and use say "On Beginplay."

#

In the bottom thread.

tender sierra
#

done:
results in no print

#

sorry, wait

#

it worked

#

๐Ÿ˜„

#

why?

woven wing
#

The graph you're showing us, is that an actor's graph?

#

What are we looking at?

#

Is it a level BP?

tender sierra
#

yes, its an actor

#

no, this wouldve worked in the level bp, the whole point is I want it to work outside the level bp

woven wing
#

Sure sure.

#

OK, so what I think is happening is that you might have more than one of those objects in the level?

tender sierra
woven wing
#

And if that's the case, one of them might have the objects filled out.

#

And one might not.

tender sierra
#

OK, so what I think is happening is that you might have more than one of those objects in the level?
with "those" what exactly are you referring to?

woven wing
#

The actor in question. The thing with this graph.

tender sierra
#

ah

#

no, its the only one

woven wing
#

Right, because I think 'Press O' is being handled by another object.

#

Not sure why.

#

Not sure what object.

#

But that's what I think.

#

BeginPlay ensures that the object in the level is the one handling that event. If you dropped ten of those same actors in the level, each one would call their own BeginPlay.

#

One thing you could try would be to print the "Self" reference's name on BeginPlay.

sick crown
#

the 'same' object?

tender sierra
woven wing
#

Because I think there's a second instance without the Cameras field filled in.

#

You have one good Actor.

#

And one not filled in Actor.

#

So the not filled in Actor can still get all the actors in the Scene.

#

It just doesn't have it's own internal value set properly.

tender sierra
woven wing
#

I know.

#

There's a difference between an instance and a class. Right?

#

I think you have two separate instances of this same class.

#

One with the cameras field filled out, one without.

tender sierra
#

this part I am not properly getting in my head

#

yes

woven wing
#

Think of the Class like a factory.

#

And the Instance like the thing that the Factory makes.

tender sierra
#

yes

sick crown
#

and the trucks?

#

sry

woven wing
#

: P

tawny bison
#

Any way to group tabs so I can open groups of blueprints with a macro or somthing?

woven wing
#

@tawny bison - Not that I know of, but if you figure it out, please share.

tender sierra
woven wing
#

No.

#

The "Get All Actors Of Class" function interacts with the scene graph. It will always work, because it doesn't use any set data.

#

In contrast, the Cameras field is a value on a particular instance.

tender sierra
#

yes

woven wing
#

So, even an instance of your class that didn't have the Cameras field set properly could use Get All Actors of Class.

#

But it's Cameras field would be empty.

#

That's what's happening - I think.

#

Imagine you have two cars. Inside the car is something that tells you the contents of the trunk.

Both respond to a radio signal.

#

You've put something in the trunk of one of the cars.

#

And sent the signal.

#

But you get back a response that says "There's nothing in the trunk."

#

Because the response you're getting is the other car.

tawny bison
#

Well I need to figure out the code that handles opening a blueprint in editor. Then I need to figure out how it handles grouping tabs together. If I can do that I should be able to write a script that takes the blueprint name and directory location open the blueprint then sets the tabs grouped window for whatever group I assign the blueprint to.

#

I am just trying to figure out where this editor code might be that handles tabs.

#

If not I could try doing it through memory addresses and write everything to memory that way the editor reacts to the changes made in memory.

tender sierra
#

with "car", is it the bp_actor you're referring to?
if so, then I do only have one actor, ie car, in the level

I discovered another strange thing:

#

Can this be related to what you were explaining, that the response differs?

woven wing
#

The values you're going to be seeing will be related to the debug instance you have selected in the BP viewer.

#

I generally don't trust them unless I'm using a breakpoint.

#

(the drop down list to the right of the Play button)

tender sierra
#

yes, I did pick the current bp as debug filter

#

when turned off, the array didnt popup anything

#

so the two screenshots didnt mean anything then?

woven wing
#

Not to me.

#

I can't understand what you're trying to do or why.

#

So, aside from telling you that the problem is in the instance that is handling the "O Pressed" event, I can't offer further advice.

#

The wrong instance is handling the event.

#

Or you are somehow wiping the Cameras field in a Tick, Update, or BeginPlay part of the graph you haven't shown.

#

Are you setting Cameras anywhere?

tender sierra
#

and this is what I am not understanding, because we only have one instance (if I am understanding your reference to "instance")

I can tell you the whole story quickly

I got a working code to jump from one camera to another, in the level BP. because there you can referr to items in the level

So I was thinking: what if I can create a instance variable, pick items from the scene and do something - anything - with them through a bp actor that I drop in the level?

So, the simplest thing I could think of was a print. If this works, then I can go further.

the rest is history: i failed to make it work

#

working on all cameras works, but what If I want to work on selected items in the level?

another thing is that I change the floor material.
again, doing this in the level bp works.
But what if I want to do it through this bp actor - by picking the floor static meshes I want to alter...

#

this is the core of what I want to do - not to work in the level bp

woven wing
#

This is an idea that does work.

#

So something is wrong with what you have built.

#

But it is a functional idea.

#

However, I would recommend that you use the PlayerController for this kind of thing, and not raw button presses.

#

As those are very fragile.

tender sierra
#

for the record, I MUST have the player controller to get the GetAllActorsOfClass to work

#

so this one exists in this BP

#

we've spoke quite a lot, spent a lot of time

if I can ask you for a big favour, why dont you try it on your machine?

create some cameras
blueprint actor
instance variable, variable type Cameras or Cine cameras
place the actor in the scene
pick some cameras

if you like, I can send you the .uasset now

#

just place this blueprint in the level, put some cine cameras and pick a bunch of them

#

never mind the name of the uasset - I never get this far to actually make it switch cameras ๐Ÿ˜„

#

it should be called "printCameraName" ๐Ÿ˜„

tawny bison
#

ok so are these cameras on actors?

tender sierra
#

no, the cameras are just in the level

this actor has an instance variable that lets me pick actors (the cameras) from the level

#

What I want to do is picking stuff from the scene and doing things through this bp_actor, not the level bp which ppl use by tradition

surreal peak
#

You can't pick Instances in Classes

#

You can only pick instances in instances.

tender sierra
#

can you simplify it for my noob-brain?

#

So even though I picked them, as shown in the screenshot, I havent actually done that?

surreal peak
#

Is the Screenshot from an Instance in your level?

#

Or is that from your Actor Class BP?

tender sierra
#

no, thats from the instance

#

the whole point is to simplyfy the picking process

#

not needing to go inside the bp to do so

surreal peak
#

"inside the bp"? You would select the instance in the level and check the details panel. Do you mean that?

tawny bison
#

I think he does not want to cast?

tender sierra
surreal peak
#

Well, but you are doing that already?

#

I didn't follow the whole conversation. Can you tl;dr your problem once more?

tender sierra
#

while this did

surreal peak
#

What does the first one cause?

#

Accessed None errors?

tender sierra
#

the first one doesnt print anything because get is giving us "none"

tawny bison
#

yea on the actors begin play you are going to want to set that array in your character

surreal peak
#

One thing after another

#

That O Input and the Array are in the Camera Switcher, right?

#

And you enabled input on that I assume

tender sierra
#

Mattox: should I set the array first, before getting anything out of it? can you elaborate? sounds like something I've seen before

eXi: yes, what you see is in that blueprint called CameraSwitcher. Yes, the input is enabled like this (if this is what you meant with your question):

woven wing
#

OK, I got it working.

surreal peak
#

Yeah you need to enable Input, that's correct.

#

Not sure why you'd need to involve the Character with all of this.

#

You only have one CameraSwitcher in the Level and you aren't spawning another one, right?

#

Can you print the Length of that array instead of the first element?

#

This should not be empty

tender sierra
#

Not sure why you'd need to involve the Character with all of this.
I've learned that input needs pawns

#

You only have one CameraSwitcher in the Level and you aren't spawning another one, right?
just one actor in the scene

surreal peak
#

I've learned that input needs pawns
That's not entirely true.

#

Input gets processed based on the InputStack.
The PlayerController and a Possessed Pawn are part of that.

#

But by Enabling input on actors you are also placing those on top of the stack

tender sierra
#

@tawny bison

I dont know if you were into this
I created another array, not instanced, for the purpose of copying the values from the instance to the non-instanced
didnt help

woven wing
#

Download that.

#

There's an object called ObjectFinder with an instance Array.

surreal peak
#

That would also not hlep. That's just setting a variable with another

woven wing
#

Pressing O prints the linked names.

surreal peak
#

It's desired to check why it fails in Haider's setup though

#

it shouldn't

tender sierra
#

jack, I am launching another Unreal to try out your project

woven wing
#

I agree Exi. Not sure why it's mucking up on Haider's end.

#

I hope they'll be able to tell us when they look at mine.

surreal peak
#

It's a pretty simple setup.

  • Some Actors into the Scene.
  • An Actor with an InstanceEditable Actor Array. Also into the scene.
  • Enable Input on that Actor on BeginPlay and add KeyPress to print Array.
  • Fill array on the Instance that is placed in the scene.
tender sierra
#

jack: your works

my brain is mush now

So why didnt mine work? What is the different?
is it the For Each Loop?

woven wing
#

ยฏ_(ใƒ„)_/ยฏ

tender sierra
surreal peak
#

The Loop vs the Get should not make a different :<

tender sierra
#

so something is spooking my actor

surreal peak
#

Your Array gets cleared

#

Please print the Length of it

tender sierra
surreal peak
#

Yeah it's empty

#

Is it by chance marked as transient or so in the dropdown menu?

tender sierra
#

but why? ๐Ÿ˜ข

woven wing
#

That would be weird.

tender sierra
#

Is it by chance marked as transient or so in the dropdown menu?
can you elaborate that?

#

where do I find this?

tawny bison
#

on the array variable?

tender sierra
surreal peak
#

In the Class, on your Variable. There is a small Arrow below the Repliation Condition

#

But if you don't know about it then you didn't press it anyway

tender sierra
#

๐Ÿคž๐Ÿป

tawny bison
#

click the arrow to expand

tender sierra
#

not checked

surreal peak
#

Can you print the length of that array on BeginPlay please

#

Further, can you rightclick the array variable and click "Find References"?

#

Are you setting it somewhere?

#

Do you do anything in the ConstructionScript with it maybe?

tawny bison
#

Great advice one of the main ways I track none errors.

tender sierra
surreal peak
#

You have two instances of this

tender sierra
#

two instance in the level?

#

two instances of the actor_bp?

surreal peak
#

Can you press play and check your worldoutliner

#

Of the CameraSwitcher

tender sierra
#

yes two

#

hmm...

tawny bison
#

great detective work haha

tender sierra
#

but one when I stop the game

surreal peak
#

One gets spawned from somewhere

tender sierra
#

great detective work haha
indeed

this is something Jack suspected, but since I ensured him there is ONE actor in the level..

#

One gets spawned from somewhere
question is how

#

what can spawn actors? where can I look?

surreal peak
#

Well, SpawnActor nodes

#

Can you rightclick the Actor Asset in your Content Browser and click on Reference Viewer?

tender sierra
#

or main level and one sublevel

surreal peak
#

Welp

woven wing
#

Hah!

#

I was right!

tender sierra
#

YES

#

you bloody Wattson or was it the other one

#

whats his name

surreal peak
#

Here is another thing though

#

The reason why your Print still didn't work is that Input has the option to consume

tender sierra
#

Hah!
And you were lurking too ๐Ÿ˜„

surreal peak
#

So your O button consumes which means nothing else in the stack gets a chance to execute it

#

If you were to click on the O input node

#

and check hte details panel, you can deactivate that

#

And then it would actually have worked

#

though still with one copy having an empty array

#

You were basically unlucky (or lucky?) that your non-setup camera switcher got input enabled last, so it was on top of the stack

woven wing
#

If I were building this as part of a real project, I'd probably want the button press to switch cameras be in my player controller, and then my player Pawn (or a component on it) would interact with volumes for these camera switchers, and they'd assign the camera switcher to the pawn?

#

So as you walk around you could like, get assigned new camera switchers.

#

That's... probably how I'd do it.

surreal peak
#

Can't asnwer that. Very specific setup

woven wing
#

Yeah.

#

It really depends on the layout.

surreal peak
#

Volumes to switch to cameras is what lots of peeps do

#

If you want to not maintain that array you could make a Manager

#

Make an ActorComponent, put it onto the GameState.

#

Make your own CameraActor

#

And on BeginPlay, GetGameState, Get Manager, add self to array

#

Then on Key Press in your PlayerController, GetGameState, Get Manager, cycle through cameras

#

Or so

#

idk, 100 ways

woven wing
#

The problem with flexible systems like Unreal is that there's no 'correct' answer to any particular feature design.

#

Just various flavors of wrong.

trim matrix
#

Anybody have a clue on how to hide player character during cinematic?

woven wing
#

Yyyes?

tender sierra
#

I have a hotkey bound to switch levels
When I switched the level, it worked, as expected

As in Jacks early example with the car - so when switching level, the right "car" replied correctly, in the wrong level, the actor array was empty

as for your comments on putting the button press in the player controller

let me give you an explanation on why I did it this way
I wanted to separate things from another

if I put this in the player controller, thenin another project, the player controller has different behaviour
How would I be able to migrate this player controller to the other project?

On the other hand, if I isolate the functions into individual actors, eg one cameraSwitcherBP, another materialSwitcherBP, I can migrate those individually and use them individually

#

lots of โค๏ธ to all of you friends, for taking your time and being great teachers, I learned a lot

surreal peak
#

@trim matrix The LevelSequence stuff has a boolean "Hide Player" iirc

trim matrix
#

Thanksss

tender sierra
#

... let me read previous messages and reply ...

surreal peak
#

Just be aware if you migrate this and someone has the same key setup and consumes the input, your input is lost

tender sierra
#

The reason why your Print still didn't work is that Input has the option to consume
@surreal peak

if I am understand you correctly
Since the blueprint existed in different levels, one of them took overhand over the other

So when I switched level (I got a hotkey letting me doing so in-game) the O button worked

surreal peak
#

Kinda

#

As said, Input works in a Stack

#

Like a Paper Stack

#

Put a paper on top of another

#

And take the last one away again

#

So whenever you call "EnableInput", you put that actor ontop of the rest in the stack

tender sierra
#

yes, that is what happened, right? one level had higher prio thanthe other

surreal peak
#

last one added gets the input first

#

There is no prio

#

The last one that calls EnableINput is the first one to handle the input

#

If that one consume the input, the rest won't get it

tender sierra
#

consume = execute?

surreal peak
#

Consume = Consume

tender sierra
#

okay, it uses it up so to say..

surreal peak
#

Consume = Do it and don't tell the rest of the stack that it existed

tender sierra
#

mm, oky

surreal peak
#

Without consume, it does it and gives the event to the next in the stack

#

Your SubLevel is probably loaded after your Persistent one

#

And your Persistent one is the one where you filled the Array

#

So the SubLevel one spawned later, Enabled Input and was last on the Stack.

#

Then it handled and consumed the O input and the one from the Persistent level never got to know about the event

#

Please read up on documentation if you still a beginner (: it helps

tender sierra
#

I cant grasp it completely, but I do now understand the consequences. I am sure over time I will better grasp it, the order of things and such

#

but its fine for now ๐Ÿ™‚

#

let me read your messages above, I think I had some followup questions before saying thanks-for-today

#

@surreal peak

about consuming, lets see if I understood this correct
The hotkey is an event
So since it got consumed by the "wrong" level, the level I was NOT in, when I tried to call the even in the other level, it didnt exist anymore? Did I understand it correct-ish?

#

(I am taking notes for myself, for future reference. plus this is how I learn, writing notes)

surreal peak
#

Not at all haha

#

It's based on the Actor.

#

The Level part only comes into play because your Actor existed in both

#

It got consumed by the second CameraSwitcher Actor

#

The one in your SubLevel.

tender sierra
#

yes, the input event got consumed, right?

#

so in that other level, the input event didnt exist anymore?

surreal peak
#

It's not about the levels

#

As said, each time you call EnableInput, the Actor that you EnableInput for gets put on that Stack

tender sierra
#

ok, actor instance then. they just happen to exist in different levels

surreal peak
#

Yeah, you could have them in the same level

tender sierra
#

they could as well exist in the same level

surreal peak
#

Would result in the same

tender sierra
#

yes

#

๐Ÿ˜„

surreal peak
#

Just that I wouldn't know which one calls BeginPlay first

tender sierra
#

okay, I just want to understand the concept of consumtion

surreal peak
#

Imagine a queue of humans

tender sierra
#

so the event got consumed by one of the actor and this means the other actor didnt have the event anymore?

surreal peak
#

| | | | |

#

These are all humans

#

From left to right

tender sierra
#

yes

surreal peak
#

Now someone tells the right most one something.

#

Like "Jump"

#

The right most one jumps and then has two options

#

Tell the next one in line to Jump

#

Or consume the "event" and not do anything

#

It can also be that, for example, the rightmost one doesn't consume the event

#

But the next one does

#

So 2 of them jump, but then the event gets consumed and the other 3 will never know about it

tender sierra
#

okay

so if I have two instances of the same actor

[ o event ] .... does it mean the other one will not have the event anymore [ .. ] because it got consumed int he first actor?

surreal peak
#

It will not get the KeyPress, yeah

tender sierra
#

aha

#

in my mind, strange. because in my head I am thinking that they are two instances, should keep their own keypress instances

but its fine, not a big deal, its just something I learn from and remember hopefully and simply accept ๐Ÿ™‚

tawny bison
#

I would store a list of those actors and just call events on them that way I am only dealing with one input

surreal peak
#

If none of them consume:
| [ Actor 1 ] - Receives O Key Press - Performs Action - DOESN'T consume
| [ Actor 2 ] - Receives O Key Press - Performs Action - DOESN'T consume
v [ Actor 3 ] - Receives O Key Press - Performs Action - DOESN'T consume, etc.

If Actor 1 consumes the event:

| [ Actor 1 ] - Receives O Key Press - Performs Action - Consumes
| [ Actor 2 ] - Does NOT Receive O Key Press
v [ Actor 3 ] - Does NOT Receive O Key Press

if Actor 2 consumes the event:

| [ Actor 1 ] - Receives O Key Press - Performs Action - DOESN'T consume
| [ Actor 2 ] - Receives O Key Press - Performs Action - Consumes
v [ Actor 3 ] - Does NOT Receive O Key Press

#

Top to bottom, top most was the last one to call EnableInput.

tender sierra
#

What is controling the consumtion anyway?
In your example, there is a scenario with doesnt consume

can you control that, how?

(out of curiosity only)

surreal peak
#

The Input Node

tawny bison
#

The consume input checkbox on the o event?

surreal peak
#

Click it

#

It has a Checkbox

#

Yeah, what Mattxor said

#

Note here though, that my example would be 3 different Actor Classes

#

You can't control it per instance, at least not in Blueprints

#

I gotta head to bed now though. Getting late!

tawny bison
#

this works the same way with umg I think. if you have button on top of other buttons you will want to set that button to consume if you dont want the button under to get pressed

surreal peak
#

Yeah in UMG it's called Handled/Unhandled

tender sierra
#

wow
I am feeling my brain is levling up +0,001

#

better than 0

tawny bison
#

yay

tender sierra
#

๐Ÿ™‚

surreal peak
#

Welp, another 5-6 years and you can do all the things I can do (or maybe faster cause I'm slow, who knows)

tender sierra
#

๐Ÿ˜‰

surreal peak
#

Hehe, na what I mean is, it takes a lot of time, so yeah, +0.001 at a time is fine

tender sierra
#

I am intending in learning how to make architecture interactive ๐Ÿ™‚

#

you guys will still be my BP-heroes

#

I am just the artist

#

I am tempted to ask: why does an event have consume checkbox, but I will leave it for later, for I dont dare staying awake one more hour ๐Ÿ˜„

tawny bison
#

Its crazy to think about it now. I am 2 years into Ue4 and I am finally at the point were I can create a game from scratch, know the flow of every object through out the whole project. When simple errors occur, it takes me minutes to fix were as a year ago it would have took me days to figure something out. Keep it up!

tender sierra
#

thank you @tawny bison

I totally share this feeling
I am a month into Unreal and like I said before, I take notes
I found an old note "is there something called material instance". Today, this question sounds so dumb. A month ago I wasnt sure I remembered the term right from some tutorial.
Today, I am able to switch cameras with hotkey, change materials in runtime and so on

I can even formulate a question to ask here, knowing somewhat the terms and so

the brain is magnificent. then of course, we got a fantastic community helping out, making things lots easier.
You're a bunch of great teachers!

#

I'll get back with two followup questions I got

#

thank you all and good night โญ

tawny bison
#

lol eXi .001 is to slow for me now. I am addicted. How about you just download your Ue4 knowledge to my brain write over any duplicate blueprints ๐Ÿ™‚

tawny hound
#

what's the tech on making sprites fade in and out with a timeline if you have a predetermined (randomized) color on them, that you want to retain? ๐Ÿค”

The actor is spawned with a random color, and I turned its respective color into variables, so when I fade it in and out it retains its new color instead of the default sprite color. But if I do it like in the picture, it doesn't animate, but rather just go from 0-1 opacity instantly.

quiet valley
#

@everyone so, this happened.. since I wanted to reduce bound collisions for overlapping I made a new mesh inside the construction script, with the exact same mesh the BP has, and disabled the overlapping effect on the outer one.. and so far so good, it worked with almost all the meshes, except the last one in the video.. :/

alpine copper
#

are there any functions in the engine to check if a bone/ socket has children ?

quiet valley
#

el fideo rubio jajaja, buscaste en la docu?

torn garnet
#

If I create a custom event call, and have two other blueprints respond to that call, will both run the event?

quiet valley
#

@torn garnet you mean a event dispatch or how would you do it? that would say if it works or not..

#

also, seems your case would be a good fit for a blueprint interface

torn garnet
#

@quiet valley It is an interface yes. Just in the past it seemed like one response canceled the other one out. I mightve done something else that made it not work, i dont know.

quiet valley
#

why would it cancel each other? how are you messaging the interface?

sick crown
tight schooner
#

For what purpose?

#

You need a thing that provides a delegate pin (red square)

#

e.g. Set Timer By Event

sick crown
#

can i make custom function, with an input delegate?

tight schooner
#

I don't think so...?

#

You could make a macro or collapsed graph but I'm not sure about functions.

sick crown
#

i was overthinking it.

#

can i update a save game object if i only want certain variables to change in the object? or do i have to load it?

#

and save it with all the variables present

woven wing
#

A save game is only saved when you call the Async Save Game to Slot function iirc.

#

As in, it's not written to disc until then.

#

So even if you have a Save Game object loaded in memory, it won't actually save until you call Async Save Game.

#

So theoretically you could hold onto the save game object - but it's probably not worth it.

#

Just write a proper save game script.

queen plover
#

For some reason, the "on component end overlap" event on one actor is triggering the same event on a completely different actor when overlapping the player, why does this happen?

#

it's the same for the on begin overlap events too actually

zealous moth
trim matrix
#

Is their any good tutorial on dashing out there?

#

I have only find some that makes it look so the character almost teleports to the dash direction

warm parcel
#

Question: does anyone know how I can transform a location in world/local space into UV space for an object? The application is that I've got a widget rending onto a curved mesh, and I'd like to be able to put buttons on the widget and interact with them through a widget interaction component.

#

Also @trim matrix If you're using a character with a character movement component, you can temporarily increase the character movement component's max walking speed.

trim matrix
#

@warm parcel I want the character to be able to dash in air with the same speed as if the player was on ground

hardy swallow
#

@trim matrix When the player hits the Dash button, have your game play a timeline. In that timeline, have it call AddActorWorldOffset in the direction you want them to dash.

#

Quick question: is the only way to add actor components at runtime still through C++?

trim matrix
#

@hardy swallow I am new to unreal is there any tutorial you can point me to on how to do that?

warm parcel
#

@hardy swallow I think you can do it through BPs. There are nodes for "add static mesh component," "add child actor component," etc.

hardy swallow
#

Yeah, give me sec

trim matrix
#

@hardy swallow What is the timelines function in this? Is it the dash duration or cooldown?

hardy swallow
#

Timeline runs for a set amount of time, calling the update pin on each tick (I think). Watch the video

trim matrix
#

do you have from 0 to 1 in timeline?@hardy swallow

hardy swallow
#

Dude, the video explains it succinctly, which is why I linked it. The timeline goes from whatever to whatever, it's up to you to set it.

trim matrix
#

@hardy swallow ye i watched the video but I don't understand if the value is supposed to go back down again in the timeline

hardy swallow
#

It's dependent on which execution pin you call. Play calls it from the beginning the first time, but after that, if you don't set a new time, it starts from the end, but immediately finishes. That's why I had it set to "play from start" in my example. I also just realized my example isn't great. Instead of using the alpha from the timeline, you should be multiplying it by the world delta time. The alpha is useful when lerping, which is another option.

trim matrix
#

How can I change how long u are in the dash?@hardy swallow

hardy swallow
#

By adjusting the timeline length. Double click on the timeline

trim matrix
#

I have it on 1 but it stays for 2 seconds

hardy swallow
#

Then change the length to whatever you want

#

You have the length set to 1?

trim matrix
#

ye

hardy swallow
#

Can you send a screenshot?

trim matrix
hardy swallow
#

Sorry, screenshot of the BP setup

trim matrix
#

oh k

hardy swallow
#

It shouldn't be lasting two seconds. You could create a timer to see how long it actually stays. It's not going to be exactly 1 second, but it should be close.

trim matrix
#

i am really new

hardy swallow
#

Alright, first off, are you saying it's lasting 2 seconds because it feels like it is?

trim matrix
#

ye

hardy swallow
#

Then change the length to 2 seconds and see how much longer it is

trim matrix
#

@hardy swallow I got it working by turning down the length to about 0.1

hardy swallow
#

Sounds good

trim matrix
#

thx so much for the help appreciate it!

hardy swallow
#

No problem

queen plover
#

I'm spawning an actor from another actor, when the "on component end overlap" event runs on the spawned actor, the same event is being run on the actor that spawned it, anyone know why?

hardy swallow
#

Are you spawning from an overlap?

queen plover
#

I'm spawning it from a custom event which is being run from a timer, and that timer is being set on begin overlap

hardy swallow
#

So... OnComponentEndOverlap->StartTimer->SpawnActor?

queen plover
#

its OnComponentBeginOverlap->StartTimer->SpawnActor?

#

then when that actor has its own OnComponentEndOverlap run, the same event will run on the actor that spawned it

#

which is where I'm really confused

hardy swallow
#

When SpawnedActor->OnEnd, that causes SpawningActor to run the event which spawns the actor? It sounds like it's overlapping again. Is the BeginOverlap being called twice? Throw a print string at the end to see if that's the case

flat raft
#

When the new actor is spawned, it overlaps the spawning actor.

#

You get 2 overlaps and 2 End overlaps . One pair for each actor

queen plover
#

Okay yes I fixed it, I forgot to ignore some collisions on the actor who spawns the other actors

flat raft
#

Coolz