#blueprint

402296 messages ยท Page 581 of 403

trim matrix
#

Ok, i see

#

So if I want that it displays a game over screen when the ball hits a surface with high velocity, basically, like you said, it "does stuff", right ? Or should I consider it doesn't ? Finally, I'm not sure to understand what the Hit Event does exactly... ๐Ÿค”

#

It looks like a simple Event On Overlap to me...

tight schooner
#

If your ball is a physically simulated object, and "generate hit events" is enabled, the Hit event will fire every time the physics simulation detects your ball impacting something

minor galleon
#

How do I lerp an exp slider on the HUD?

trim matrix
#

oh, so it's more like an Event On Overlap but with physics, somehow

tight schooner
#

Yeah, it's similar to an overlap but provides some more info (e.g. impact)

trim matrix
#

yeah I get it

#

@tight schooner Ok thanks to your very clear explanations. I'm gonna try it again ๐Ÿ˜‰

tight schooner
#

@minor galleon idk if there's an optimal way, but you can always lerp update the bar on tick

minor galleon
#

Sorry, didnt mean to interrupt anything. I have my exp slider set up to add exp, level up, carry over etc... I just want it to smoothly lerp from current exp to new exp or zero to new but everything Ive tried has broken it.

#

Is that going to affect performance? Been told to try and stay away from event tick if I can help it...

#

tried connecting it to a timeline in BP_player on exp event

tight schooner
#

If you're spawning dozens of ticking actors then yeah, it could affect performance, but it's ok for one widget. You can also adjust the tick rate, enable/disable tick (Set Actor Tick Enable node) so that it only runs during XP gain, or use a looping timer event (Set Timer By Event node). Not sure if Timelines are available in widgets, but if they are then that's another way.

minor galleon
#

ah fair enough. Seems when I lerp current exp from 0 to 1 it makes the current exp jump, and at a lower exp gain than set.

tight schooner
#

Huh. Well, you can try an FInterpToConstant (IIRC)

#

and that'll make the value move toward a target at a constant rate

minor galleon
#

might do. Thanks for the help, @tight schooner

north void
#

help i have a horse following a spline how do i drive my blendspace to make it goto idle at the end

faint pasture
#

@north void have your blend space driven by speed

north void
#

how do i get the speed

trim matrix
#

Ok, I have done this very basic setup for my ball actor. I have also checked "Simulation Generates Hit Events" into the Collision pannel of my Static Mesh Component. But it does not work. The print string does not appear when the ball hits a surface. Though, it works without the Get Velocity. So the issue is with the Get Velocity but I don't know what it is :

primal bluff
#

Is there a way to get the default parameters of a material in a BP?

rough jay
#

@trim matrix it returns false, x is not greater than 0, try to print out the velocity of X see what it actually is

fallow epoch
#

Anyone here have a good understanding of running character animations off of root motion?

covert kestrel
#

Whats wrong with this blueprint for a level streamer? I've taken it from Unreal's example docs. I've used my own mesh to define the collision boundaries as just a box or sphere wouldn't be suitable. What happens is that as soon as I walk into the collision to load the level, it immediately unloads the level. Just using it to load the level, it works, but that's just one way and not suitable. Whats the big secret to getting this to work the way as described.

odd ember
#

sounds like you're triggering it twice

#

try debugging

#

might be two components overlapping on your player actor

covert kestrel
odd ember
trim matrix
rough jay
#

put it on a event tick to keep printing it out

covert kestrel
#

the answer seems obvious. This 'custom mesh' was originally a Level Streaming Volume, brushed into a custom size, and it worked as expected as a level streaming trigger, but after being converted to a static mesh, and then pulled into a blueprint to be used as the level streamer, it has failed. Why have custom collision meshes if they aren't going to work, boxes and spheres are restrictive.

odd ember
#

the surface needs to have generate hit events ticked as well

#

which it probably doesn't

#

@covert kestrel lmao I mean you basically had it working and the decided "no I want this as a static mesh" and then wonder why it doesn't work

covert kestrel
#

no I wanted it as a blueprint

odd ember
#

custom collision is complex and expensive, and 99 out of 100% of the time completely unnecessary

covert kestrel
#

the level streaming volume could not be pulled into the blueprint as is

#

I would like the blueprint, to add a delay to the unload

#

so back to using it solely for streaming the level in, without the blueprint. I'll just have to make the volume a bit larger for my needs

odd ember
#

you really just need a volume at every choke point

#

you don't need to cover the entire level in it lmao

covert kestrel
#

its a room within a floorplate dude, whats with the attitude, are you 15yrs old?. I've got about 2 weeks experience with blueprints

#

20 yrs as a visualiser

odd ember
#

if it's a room with a floor plate, why can't you use a square volume?

covert kestrel
#

not everything is square , and the door entrance to it is in the corner, so go in, level stays on, leave, level switches off

odd ember
#

so... cover the door entrance?

#

I mean you're asking to have your cake and eat it too currently

covert kestrel
#

ok, and what happens when I walk around the room, I have to pass through the volume, no?

orchid garden
odd ember
covert kestrel
#

point me in the directon of a node

gusty shuttle
#

When using OpenLevel, the previous level I am on closes right?

odd ember
#

open level is a server travel to the level you mention, so yes

gusty shuttle
#

Just making my level loading system, so for a single player game, using OpenLevel is fine. I seem to be having a issue with showing my dang HMD loading screen when transfering for some bloody reason

#

I'm not streaming any levels though, just going from one, then Opening another

odd ember
#

that was a reply to someone else

odd ember
#

I thnk you tagged the wrong guy maybe

covert kestrel
#

to cranz

#

yes, halfway out the door literally, to make dinner

trim matrix
rough jay
#

sure

odd ember
#

collision is a two way street

#

both objects collide with each other

#

both objects need the correct setup

trim matrix
odd ember
#

good

#

are both blocking each other in the collision settings?

#

also for your ball (which I assume is the player), did you change the collision on the root sphere/capsule or on the mesh?

gusty shuttle
#

Make sure your Object Type is the correct type you are trying to collide with too eh. @trim matrix

trim matrix
#

I did not change anything in the collisions, except click on Simulate Generates Hit Event and Simulate Physics

#

I'm gonna check the settings you are talking

odd ember
#

it should be set to both query and physics

trim matrix
#

So I assume the collisions are good, aren't it ? ๐Ÿค”

odd ember
#

well yeah

trim matrix
#

Hello 1 (the first Print String) appears. Though, Hello 2 (the second Print String) does not appears.

odd ember
#

anytime you hit something it's going to zero out your velocity

gloomy walrus
#

hey guys! needing some help here with the wheeled vehicle anim, specifically the WheelHandler! I've set it all up, but somehow the wheels don't turn and rotate. I've got the Anim BP correctly setup, and my vehicle is a child of Wheeled Vehicle. Do you have any idea what may be causing the issue?

trim matrix
#

If I uderstand well, the Event Hit works good but the Get Velocity does not

#

So I presume the issue is not the collisions but the Get Velocity

odd ember
trim matrix
#

ok, I take note of it

gusty shuttle
#

Alright, should be a easy problem to solve but somehow it's not. So I am making a VR game. I need loading screens. UE4 comes with nodes seen in pic below. I figured, I should add said nodes to the game instance because it's persistant. So I cast and call ShowLoadingScreen_GI when I am about to OpenLevel, then I HideLoadingScreen_GI inside the level bp (I put it after BeginPlay and a 5 sec delay to simulate a longish loading screen). When I do, it flashes for a second, then I can see my level, but can't move then after 5 seconds I get my hands and move. What gives?

#

First pic is inside the game instance, second pic is in the main menu level bp

#

My Game Mode also has None for Default Pawn

#

I spawn in my pawn to be used after the loading screen drops

odd ember
#

loading screens is one of the few things you really need cpp to handle

#

along with saving/loading

gusty shuttle
#

Agreed, if it was traditional game, loading screens are a breeze, but for some reason this node is bugged out, the SetLoadingScreen

#

That or ShowLoadingScreen is mucked up

odd ember
#

no I mean

#

you need cpp to get it working

gusty shuttle
#

Thing is, it was working fine when I was doing level streaming, this morning I switched to using OpenLevel so I could have fresh levels at start

odd ember
#

like it wasn't a choice lol

gusty shuttle
#

I feel like using Open Level node some how nukes it even though I am using it inside the Game Instance, or calling from it rather

#

Which is persistant

odd ember
#

open level is server travel

#

for which you will need to dive into cpp to make a loading screen for

gusty shuttle
#

Gotcha

odd ember
#

there is no way to do this in BP

#

for good reason too

twilit heath
#

i think there was a BP plugin for it

#

but its ancient

gusty shuttle
#

So then, I'm cool with level streaming method, but I need to know how to reset a level on LoadStreamedLevel

odd ember
#

it's like 1 function in cpp too

#

not difficult

#

and it's all well documented on the wiki

gusty shuttle
#

Aye, I have 0 knowledge in Cpp haha

twilit heath
#

you need to start sometime

#

baby steps

odd ember
#

flush and restream

gusty shuttle
#

Flush and restream you say?!?!??!

odd ember
#

I reckon that should work

#

but idk

#

it may not

gusty shuttle
odd ember
#

yes

#

it may kill all your of stream levels

gusty shuttle
#

"Flushes level streaming in blocking fashion and returns when all sub-levels are loaded / visible / hidden" Define "blocking fashion" haha

odd ember
#

freezes game until done

#

aka when you'd deploy a loading screen

#

or, perhaps more fittingly, a technical difficulties screen

gusty shuttle
#

LOL

#

So pop up the loading screen, run the flush if I want a streamed level to be reset

#

I really think that's a negative, I mean, it would be cool if there was Load, unload and reset/load

odd ember
#

you can unload though

gusty shuttle
#

for specific sub-levels

#

So unload in my eyes basically just hides it

errant path
#

hello

#

we dont have TanH fonction in BP ?

#

Math.tanH

odd ember
#

I mean it should unload it

#

you even have the option to make it a blocking call

gusty shuttle
#

I feel like when I use it, if I make a change in the level, unload then load back in streamed level, the shit's the same inside the level as I left it

#

Might be wrong

odd ember
#

it shouldn't be as far as I know

#

but who knows

#

otherwise you gotta flush

#

and redo

gusty shuttle
#

Yes, I was using that fine this morning. I am familiar with that system, like I said, I don't have a problem with it, just resetting a level seemed to be my issue. Maybe I need to try again

odd ember
#

and you're back to square one

gusty shuttle
#

Aye

#

Well it's good to know

odd ember
#

best thing you can do is just do everything in cpp

#

most of the good stuff isn't exposed to BP for good reason

gusty shuttle
#

And also just took me 3-4 hours of my life to figure out OpenLevel somehow does not work with the loading screen thingy

#

For sure

#

I wouldn't even know where to put any code in order. I'd need atleast a week of study to even get that far

#

Thanks for bouncing some ideas @odd ember

odd ember
#

literally explains everything

gusty shuttle
#

Indeed it does! Thanks man. I'll fav this page

maiden wadi
#

Whew. Broke down and went C++ with some of my gamejam stuff, but I'm pretty happy with my 95% blueprint project!

#

@gusty shuttle Just curious, have you done any sort of scripting or coding besides blueprint?

orchid garden
#

what would i need to look at if i want to say add a widget to the screen when a player is looking at a object that they can interact with?

#

should i just use a trace? or ... is there a better thing to use for that?

maiden wadi
#

Probably best just to use a single trace from the player. Or if it's not FPS/TPS, collect all actors in the radius of interaction and sort them by however you like, like closest one, closest one in front of actor, etc.

#

Traces are incredibly cheap though. The debug line draw in them is the killer, but that's disabled on shipping packaged games.

orchid garden
#

yeah its tp/fp

maiden wadi
#

Probably just a line, or small sphere trace. Makes it even easier if you're using interfaces. You can use multiple or specialized widgets by having the object itself add the widget to the screen with it's own stats.

odd ember
#

depends on if you use triggers or not

wooden mural
#

Hi, could someone help me with an error I get when I try to open my project? Basically, I switched to 2.26 and now, when I try to build the project and plugins it says that there are modules missing

dense mica
#

Cranz, which theme is that?

#

Your blueprints look different

odd ember
#

it's very old blueprints from the age before time

dense mica
#

Yeah I only saw that on older posts of answer.unreal lol

gusty shuttle
#

Another question, is there a way to extract from a class and destroy whatever the (pawn) is?

#

I know it's going to be a pawn class, but I need to destroy a specific one. Maybe a ==

odd ember
#

name

gusty shuttle
#

Name? All I get is GetDisplayName haha

#

Which returns a string

odd ember
#

that's your unique identifier

maiden wadi
#

Which pawn are you trying to destroy exactly? What's the use case on it?

gusty shuttle
#

The scenario: When I use my wrist widget to head back to main menu, I need to kill the pawn I am using so when I stream in the new map, my character will be there

#

Using level streaming, my main grub is I don't want to fall through the world

#

So I need to destroy on load and spawn at loc/rot on stream load

#

So from Level 2 to MainMenu. Both are level streamed

maiden wadi
#

So a new pawn is spawned for the player after the new level is streamed?

gusty shuttle
#

yes

#

In theory, if the level gets unloaded, then my old pawn should go with it, but it seems to not

#

then agian, its been a long day and im in "making silly mistakes" mode

maiden wadi
#

Wouldn't it work if you called destroy on the player's pawn before calling the level stream function?

gusty shuttle
#

Like yesterday, I thought I lost my persistant level and all the sublevels. Turns out I was looking at the outliner, not the levels tab. That's the time to shut r down hah

#

That's what I am doing

#

I call the loading screen, destroy the char, then load stream main menu

maiden wadi
#

I'm a bit confused then? I thought the issue was referencing the correct pawn to destroy?

gusty shuttle
#

Indeed, that is the issue. So in my game instance, I SET which pawn to spawn. it's a purple wire. Can't specify which pawn it is and destory it from my wrist menu haha

maiden wadi
#

Right, but if the player's controller is currently possessing it, can't you just use GetPlayerPawn?

gusty shuttle
#

Duhhhhhh, there you go

#

That's all I needed man. Okay im gonna set this up and sign off before I can't even tie my own shoes haha

#

Thanks a bunch @maiden wadi

#

I shoulda figured that one out

maiden wadi
#

Haha. I feel you. Still a little loopy after submitting my final GameJam copy.

gusty shuttle
#

Oh? How did you do?

#

What was the theme?

maiden wadi
#

I'm happy with my first entry ever. Theme was "It's been a long time, but we're not done yet."

gusty shuttle
#

๐Ÿ˜› That's cool. Good luck with your submission dude! Hope it does well!

maiden wadi
#

Haha, thanks. We'll see how much the judges appreciate my arcade style niagara particle mess.

daring thistle
#

Hello. I need help again. I'm trying to create a task system for levels.
There should be a base Task class and more precise tasks (for example, to go somewhere, kill something). I want my level designer to be able to attach as many tasks as he wants to Gamemode. But I have no idea how could I make it possible to configure these tasks in editor.
What I would like to have is an array to which designer can add a new entry, set its Task class there and set variables for this class (for example, in task where it's necessary kill someone there would be a public variable of target class). I can make this array of type BaseTask class, but then I'm not able to set config. I can make it of type BaseTask object, but then I have to provide object in editor which is not possible. I can make a struct which holds BaseTask class to set and config, but this config will have to be a generic one and have properties for all the possible Task classes. Does anyone know what could I do to make it possible to set a Task class type and config specific to this task (i.e. set its exposed variables)?

rough wing
#

@daring thistle you can rather create an object blueprint

#

Not an actor, but an object.

#

An object can holds blueprint however does not have a transform value

#

You can create a BaseTask blueprint and create a function inside of it

#

Then you can create child tasks and override that function

#

And so there will be a uniform way of calling a task

#

(by calling the default function)

daring thistle
#

Yeah, I want to do it this way. But the trouble is that I want to be able to define these tasks for level before the game starts. So I would like to set exposed variables values of tasks in array of tasks

#

For example something like this but besides the class I want to be able to define its configuration

trim matrix
#

@orchid garden @odd ember Now it works. Finally, no need to add array or timer or whatever... UE4 has planned everything ! ๐Ÿ˜ƒ

#

@tight schooner ๐Ÿ˜‰

orchid garden
#

quickslotxx is a refrence to a widget

odd ember
#

yes

#

yes you are

orchid garden
odd ember
#

depends on what you want to do

orchid garden
#

kinda figured the picture was self explaining on that part

odd ember
#

it's not a given

amber marsh
#

Hey, anyone here know how to make 100% sure overlap events happen even when you spawn a character inside of a collision volume?

odd ember
#

maybe you would want the player to fill in their own quick slots for instance

orchid garden
amber marsh
#

right now spawning a character inside of a box or sphere collider does not result in overlap event

odd ember
#

why not have them in the array by default?

#

am I missing something? or why not use a loop to fill the array with quickslots if you have to do it that way

orchid garden
#

how does that work in blueprints?

odd ember
#

... a loop?

orchid garden
#

the widgets aren't created on the fly

odd ember
#

so this is inside a widget

orchid garden
#

yes

#

preset

tight schooner
#

@orchid garden if the array is empty at the start, you can use a Make Array node and set the variable

odd ember
#

yeah I mean that's one way

#

but I think I'm not understanding your setup. you're putting UI widgets into an array... for what reason?

odd ember
#

I could understand if this was the backend

#

where you'd want an array for your items called "quickslots"

#

but for your front end you don't even need that

spare gulch
#

Yo. I don't know where exactly to ask this, so I'll take a shot in the dark. I have made an insanely simplistic Battery in blender I would like to use in my game, where do I even start to make a custom material to make it look like a battery? Maybe a youtube playlist or something, I'd just like to be pointed in the right direction

spare gulch
#

thanks

fathom cobalt
#

So apparently you can't make a whole game with Blueprint?

#

If that's the case when do I use C++?

sage marsh
#

Says who? You definitely can, I wouldn't recommend anything major with it, but simple to mid size games definitely can. It's all about the resources needed, whether or not you really need the performance improvement, or lastly if you are doing something too complex for blueprints to handle

#

BP and C++ are not directly made for different tasks, but they are more for people with different skills and roles.

rough jay
#

anyone know what "find look at rotation" would look like without using it and instead using math and all that?

twilit heath
#

its just TargetLoc - MyLoc turned into a rotator

scenic scroll
#

So I asked a while ago about how I could do replication on a script and i was linked a video and stuff, i've learned about it and watched the tutorials and tried to make my code with what i learned but i'm having an issue i'm stuck on

#

this is my code

#

my problem is

#

well the goal of this script is

#

a button

#

that if you stand on a specific place and press E activates a shield

#

so for the host of the game it works as intended

#

for the client, however, nothing happens when they do it

#

however if the client stands in the activation area and the host (even if far away) presses E, the shield is activated

trim matrix
#

anyone here who's experienced with blueprints help me rq?

wind void
trim matrix
#

I have tried to make a character reference based on a bp interface but it fails with access node error all the time. Maybe someone knows what the problem is?

#

Blueprint Runtime Error: "Accessed None trying to read property CallFunc_ZombieRef_ZombieRef". Blueprint: FPS_Character Function: Execute Ubergraph FPS Character Graph: EventGraph Node: DestroyActor

dawn gazelle
#

I'd put an IsValid check after that ZombieRef call just to make sure you're getting something back that is indeed valid before trying to destroy it. Apart from that, getting Player Character 0 doesn't seem like the appropriate reference - you want the target actor that was hit with the linetrace.

trim matrix
olive sedge
#

add movement input takes a pawn as argument but only works if the pawn is a character, appearently?

#

can someone confirm or tell me what I'm doing wrong?

olive sedge
dawn gazelle
#

@olive sedge yes, a character can be used for the add movement input node. This here works for me on one of my characters:

olive sedge
#

@dawn gazelle does this work for you if it is a pawn instead of a character as base class?

#

because it breaks for me if the base is pawn instead of character

#

but it takes a pawn as target so that's weird.

dawn gazelle
olive sedge
#

aaah

#

ok

#

aw maaaan

#

but when I use default pawn it does the mouse movements too

dawn gazelle
#

You mean the camera moving around?

olive sedge
#

hm, yes. as soon as I inherit from that, it automatically has controls

#

wasd/freelook if any of the mouse buttons are pressed

#

I'd prefer it if it just made add movement / add yaw and pitch input available

dawn gazelle
#

Then create a child blueprint of the default pawn class, then just create override events for the mouse input axes

#

Ex: in my game I have inputs bound for the mouse like this on my character:

#

If you overwrite these events, then the controls from the parent class won't fire.

#

So your mouse movements shouldn't move the camera around.

scenic scroll
olive sedge
#

depends on what you want to do

#

since you ask if whoever is doing the thing you want to do has authority, the client won't do it

#

probably best if you fire that event onto the server?

#

and then the server decides if the client is allowed or no

scenic scroll
#

everyone should be allowed to use the shield, the problem i had before is that the shield wouldn't sync (only the person who activated it would see it) if it's not too much to ask, could you show me how you'd do it?

#

if its on server it executes the shield up on all

#

if it's on client then it executes a process on server that calls the process that executes on all

maiden wadi
#

@scenic scroll Your issue is ownership.

scenic scroll
#

can you elaborate a bit if that's alright?

dawn gazelle
#

Here's what I think @scenic scroll

  1. Your character pressing E should make a call to a "run on server" event, no need for the "has authority" call.
  2. Your new "run on server" event should then make a call to a "multicast" event.
  3. All logic pertaining to the shield turning on or off, should be done within said multicast event, not the onrep function you have where it's looking for all copies of the shield in the game, as that function would only run locally on clients after they've received a replicated copy of the boolean you're using, and will not effect their appearance or effect on gameplay on the server.
maiden wadi
#

@scenic scroll If you want an actor that is server owned to be accessible by all, you need an interface usually. What you'll do is have an event in your Controller or Pawn that can pass along a reference to the server. When you enter the triggerbox, you'll enable input LOCALLY, not on server. This allows the local player controller to press E in their game. But then that local object on the client will call an RPC that is actually in the controller or Pawn. Because it's in the controller or pawn, this allows you to ServerRPC, since you can only contact the server through a client owned actor. Then you can pass self from the object, through the server RPC and let the SERVER version of the client's controller/pawn run the interface code. That can then turn the shield on or off.

scenic scroll
#

hopefully Datura's answer does the trick :c

maiden wadi
#

Still an ownership issue.

scenic scroll
#

do you know any way i could fix the ownership issue without editing the pawn or controller code directly?

maiden wadi
#

In short, if you want your client to affect the game at all, it has to ServerRPC to get from their machine to the server machine. This can only ever be done through ServerRPC, ServerRPC can only ever happen from client owned actors. Client owned actors by default is the client's Controller, and the pawn that it possesses. To give something else that control you would have to set that actor's "Owner" Actor variable to the client's Server version of their controller or Pawn usually.

scenic scroll
#

maybe i can make a code like get player controller > set owner of self?

maiden wadi
#

It's possible. I'm not used to modding, so I'm not sure how they normally handle stuff like that. I'd be shocked if the game already has multiplayer and it doesn't have some form of server rpc interface event in the pawn or controller to hook into that you could use from your actor.

#

Is it just so you can't open the classes for the Controller or Pawn and edit them, or you cannot cast to the classes at all?

scenic scroll
#

i cannot access or edit the code of any vanilla class, this game has no SDK nor is it open source

#

basically all i can do is throw new code in by including it in my maps

#

so the open/close shield blueprint has to always be owned by every player?

maiden wadi
#

Hmm. I wonder if it'd be possible to dynamically add a new replicated actor component.

#

I mean you could make it so that the latest one to enter the field, or closest person could own the actor. But that's going to feel kind of 'eh' for players most likely if they're fighting over control of it. Cause an actor can only ever have a single owner at a time.

olive sedge
#

@scenic scroll sorry, can't help you there. this is beyond me

#

I could save this in a variable but that would pollute my namespace

#

or get it from a function but that seems overkill

scenic scroll
scenic scroll
maiden wadi
#

@olive sedge Possibly a Select.

scenic scroll
maiden wadi
#

You have to set ownership on the server. So you'd want to set ownership to the overlapping pawn.

#

What game is this for by the way?

scenic scroll
#

brick rigs

#

i can do the overlapping pawn no issue

maiden wadi
#

Sort of. All Input is client side. So you'll want to branch your logic. What might be best is to just do the Owner setting on the overlap and then call a ClientRPC to set the input to PlayerController0. Cause right now that'll set input on the Lisenserver's controller or the first person to join the game's controller. Edit: Too early.

nimble talon
#

I have three questions:

#

First:

#

Is deadmau5, the real one, actually in this server?

#

Second:

#

Do you work on brick rigs?

trim matrix
#

bruh

nimble talon
#

Third:

#

Are people nice here

trim matrix
#

find that out for yourself bud

nimble talon
#

Okay, so I have a problem

#

with cubes

#

I made the character a pawn for more freedom

#

But I canโ€™t use the jump function because of that

trim matrix
#

make jump function idk

#

are you using template?

nimble talon
#

Is there a way to detect floor without messing with the code of every single thing the cube can step on

#

No

trim matrix
#

okay

nimble talon
#

I know there is an onLand function, but it is exclusive to characters

scenic scroll
nimble talon
#

Is there some other way to detect land?

scenic scroll
#

wait there is

nimble talon
#

?

trim matrix
#

yeh idk bro

#

btw

#

merry christmas

#

tomorrow

nimble talon
#

Thanks, merry Christmas to you too, lol

trim matrix
#

yes

trim matrix
nimble talon
#

But itโ€™s unity

trim matrix
#

lol

#

yes

#

unity is unreal

#

same engine

#

also

#

happy halloween

nimble talon
#

Uh

#

Now Iโ€™m confused

trim matrix
#

yes

maiden wadi
#

@nimble talon The Character's CMC(Character Movement Component) that handles it's movement handles the OnLanded event via collision. If the character is flying and it hits something, it has a function to check if the hit can be used as ground, if so it allows it to fire the OnLanded and change the IsInAir boolean.

nimble talon
#

For more freedom

#

Since my game is physics based

trim matrix
#

that's weird

#

you weirdo

nimble talon
#

I didnโ€™t want capsule collision, I wanted box collision

trim matrix
#

jk I love you

#

in a gay way

#

of course

nimble talon
#

What

trim matrix
nimble talon
#

Uhhhh

maiden wadi
#

Someone missed their morning dose of Xanax.

trim matrix
#

should help

nimble talon
#

Thatโ€™s Scratch

trim matrix
#

scratch, unity, unreal- same thing

#

potato pitato

maiden wadi
#

@nimble talon Do you already have the launch set up for your pawn, to make it jump?

nimble talon
#

Yes

#

I used impulse

nimble talon
trim matrix
maiden wadi
#

Do you want it to bounce on landing, or just stop?

trim matrix
#

๐Ÿ˜‰

nimble talon
#

I donโ€™t care if it bounces or not

trim matrix
#

you needa choose one

nimble talon
#

The jumping system is supposed to be physics related

trim matrix
#

bounce or no bounce

nimble talon
#

So if I use impulse it depends on the surface

#

Why do I have to choose one?

trim matrix
#

BRUH

#

@nimble talon I actually found a tutorial on what you are looking for

nimble talon
#

Letโ€™s hope so

maiden wadi
#

If you don't want it to, use EventHit, and on a hit, check if the hit was both from the negative up vector direction and if the hit surface normal is mostly facing upwards, IE could be stood on. If both apply, you could stop velocity and place the actor at that location. That's mostly what the Character's CMC does for it's landing.

maiden wadi
#

@trim matrix Can you just stop?

nimble talon
trim matrix
nimble talon
#

Thatโ€™s not really bullying, though

trim matrix
nimble talon
#

Template level?

scenic scroll
#

@maiden wadi sorry if you saw but just in case, i asked if this might work, sorry if my ping is a bother

trim matrix
#

no, just so you have jumping down and everything

#

then you can work on physics side

nimble talon
#

Iโ€™ve already been building the lobby and the characterโ€˜s input

trim matrix
#

this can work for you

maiden wadi
#

@scenic scroll I'm not sure what the OtherBodyIndex returns.

nimble talon
#

Oh, thanks

scenic scroll
maiden wadi
#

@scenic scroll You might test that to be sure with some prints. But you should also branch the SetOwner and only do that on Server.

scenic scroll
#

also sorry for my lack of knowledge on the engine and all

maiden wadi
#

Use SwitchHasAuthority from the hit event. Use the Authority side to set the Owner.

#

Is this game a Listenserver setup, or dedicated servers?

wind void
#

I asked in #packaging as well, as this happens only in packaged projects, but it's BP related so I'm crossposting

So I have a function inside my BP that is causing my fatal error. I have a log before, inside and after.
The function has been modified so it's literally, function node -> print -> return node.
the before & inside prints, get logged. but then I get the Unhandled Exception: EXCEPTION_ACCESS_VIOLATION reading address 0x00000000 error so my after log never get's called.

I know it's this function, cuz if I either skip it or not connect to it, I don't get an error.
Why is the `Return node causing this issue?

scenic scroll
tight schooner
#

@wind void I'm going to give a "dumb" and dissatisfying suggestion โ€” have you tried deleting the function and remaking a functionally similar replacement?

#

Sometimes BPs are cursed and I'm not technical enough to dig into why

wind void
tight schooner
#

It sometimes works. You can also try a process of elimination โ€” adding inputs/outputs until the function breaks (assuming it will)

#

Maybe you'll discover a genuine bug that you can replicate in an empty project and submit to Epic.

#

I've done that a good number of times

orchid garden
#

function name length?

#

i know that might seem like a silly thing but..

wind void
# orchid garden function name length?

Just tried that, real quick. Shortened it's name down to legit: ShortenName and still failed ๐Ÿคทโ€โ™‚๏ธ
I'm doing seanny's suggestion, but not copy/pasting anything just in case smt is

cursed

orchid garden
#

make sure your return node names don't conflict with internal names in the engine as well, i had a function failing because a return node was empty but it conflicted with a internal name, after renaming the return node problem went away.

olive sedge
#

can I somehow handle trigger events in the player controller?

#

or at least in the game mode?

scenic scroll
maiden wadi
#

@olive sedge How do you mean?

olive sedge
#

I have a trigger in my level and I would like to fire the overlap event in the player controller

#

instead of the level

#

because this will be in every level

#

or even better would be in the game mode

maiden wadi
#

@scenic scroll I can't set anything up since I'm currently reinstalling 4.26. But start with just that cast to character, then a Switch Has Authority, on the Authority side set the owner do the character.

orchid garden
# scenic scroll <@!143471961723371520> it didnt work- could something like this be a possibility...

maybe underscores videos on replication might help you KV? https://youtu.be/a8ukx6nPub0

An introduction to multiplayer replication in Unreal Engine 4. In this video, learn some basic techniques to effectively produce multiplayer mechanics involving server and client logic. Topics covered: Blueprint scripting, level blueprints, RPCs (Remote Procedure Calls).

LINKS:
Part 2 - https://youtu.be/TuyLaN3FJGo
UE4 Network Compendium - htt...

โ–ถ Play video
maiden wadi
#

@olive sedge Multiplayer?

#

@orchid garden Unfortunately he's modding, so he doesn't have normal access to classes. So he's trying to work around it without being able to touch the Controller or Pawn classes. Kinda brutal.

wind void
torn kettleBOT
#

:triangular_flag_on_post: Kiwi#3757 received strike 1. As a result, they were muted for 10 minutes.

orchid garden
#

@maiden wadi r yeah but he does show some methods of overlap events for mp using replication that may give him idea's on how to overcome his issue

#

was Manny sleeping on the job? lol ๐Ÿ˜‰

#

abit delayed there

scenic scroll
#

followed it to the letter

orchid garden
scenic scroll
#

and i got the "only host can use the button" issue

olive sedge
#

@maiden wadi yes. I trigger in the trigger blueprint now and get the controller from the pawn

maiden wadi
#

Are you running the overlaps on the server or clients? If it's Server, you could just GetGameMode. Otherwise you need your client's local overlapping thing to get the local player controller to ServerRPC to get the server version of that client's controller. Then you can GetGameMode, or whatever.

#

@scenic scroll Does that game have a melee button? I feel like this could be solved easily by making it into a large button that can be meleed. Then everyone can just hit it whenever with no ownership issues. Haha.

orchid garden
scenic scroll
scenic scroll
orchid garden
#

what did it do when you did that?

#

it looks right, you'd be calling the multicast to the clients the person triggering it being the target, then the onhost i saw you had to multicast so its excuting it on server & clients as the player switching the var, then the rep notify should handle the shield toggling on / off

maiden wadi
#

You can't multicast from a client. And Input is client side. So not server RPCing from a client wouldn't work.

orchid garden
#

then that would be the problem

#

cause he's hitting a multicast for the onhost from the client.

scenic scroll
#

because like i said only host could use it BUT when the host did it replicated just fine

maiden wadi
#

@scenic scroll Actually, I'm dumb, I just realized something you could do. You can create Actors. Create a new actor that's replicated. Create it on the server, one for each PlayerController when they join. Make the PlayerController the owner of that actor, and use that actor for your ServerRPCs. It'd be like an extention of the Player Controller without actually using the player controller.

scenic scroll
#

thanks! :)

orchid garden
#

my double jump routine just needs to pass the velocity to all the clients, so, it calls serverdblejump that then calls a multicast to all clients and the clients excute the launch of the player who called it

scenic scroll
#

I'm getting an information overload (little of which i underestand, remember i'm mostly new to this and haven't ever dealt with replication) i really appreciate the help a lot (i'd still be stuck without it) but i have to go trying the suggestions one by one or i'll get badly mixed up

#

sorry if i sound like a boomer lol

orchid garden
#

no worries KV ๐Ÿ™‚ i understand completely

#

best of luck time for me to head out

#

set speed is just a routine that sets preset speed settings to the character movement depending on 2 booleans. this sets the speed for both standalone / dedicated for the player at hand.

#

im gone ๐Ÿ™‚ happy coding!

scenic scroll
#

so you probably wont believe me (i find it hard to either lol) but this i sent before?

#

it worked perfectly

#

everyone can use it and its synced to both the client and the host :)))

#

at least with two people it works great! it's still largely untested but i haven't seen any issues

#

thank you all for helping me and guiding me through this :D

maiden wadi
#

@scenic scroll That'll generally work, but it will be a little buggy. For example, if anyone leaves the trigger area, even the latest owner won't be able to trigger it I don't think.

scenic scroll
#

huh? he went in and used it and it worked, then i went in and it worked too, then he tried again and it worked again, we went in and out of the area multiple times and that didn't happen- i think??

#

unless i misunderestood

maiden wadi
#

The latest person to enter the trigger should own it. So if one person enters, then a second person enters, the second person owns it at that moment. If the first person then leaves the trigger, it should disable the second person's ability to use it.

scenic scroll
#

wouldnt it be as simple as getting out and in again then?

#

plus the trigger area is like the front of a little terminal i dont even know if there's space for 2 people

maiden wadi
#

It should be that simple, yeah. Just depends on how you want to use it.

scenic scroll
#

well- if when we play with this version i see any big issues chances are you'll see me back here xD

#

thanks a lot for the help

#

and goodnight! (i go to bed)

olive sedge
#

I have a race condition here that I don't know how to handle:
on the server, I spawn a unit. after spawn, I assign a team to it, then I trigger an event (initialize)
sometimes, the team variable hasn't yet replicated to the client when the event triggers
how can I avoid this? Can I observe the variable somehow?

dawn gazelle
#

Whatever variable is storing the team value can be set to repnotify which then creates a function that is called when the replication takes place.

#

You can then call your initialize from that function.

#

Or, set up your team variable as an instance editable variable that is exposed on spawn, so you can set the team value while spawning the unit.

olive sedge
#

that's perfect!

#

I've been looking for this for a while

#

oh that's even better

stable fjord
olive sedge
#

Or, set up your team variable as an instance editable variable that is exposed on spawn, so you can set the team value while spawning the unit.
this does not work with spawn AI from class tho?

spring hare
#

@stable fjord There is a option you can click that says "twosided" or "bothsided"

stable fjord
#

oh nicely

#

thanks buddy

#

but I dont see this widget during gameplay

#

@spring hare

olive sedge
#

@dawn gazelle RepNotify seems to be just what I needed, thanks!

spring hare
#

Under the render tab

stable fjord
#

I have following

#

there is nothing to display hmm

#

but why

spring hare
#

@stable fjord Can you show me the viewport of the character

olive sedge
#

so.. I fire an event on the server to create an AI unit. Who should own that? the player controller of the calling client, I guess?

spring hare
#

@olive sedge Are you spawn actor from class or casting?

olive sedge
#

spawn ai from class

spring hare
#

@olive sedge Spawn actor from class should fix the problem if the actor is the ai with the code attached

olive sedge
#

well, but still.. who should in the end own that character?

#

it's controllable by a player

#

and there can be multiple of it

spring hare
#

@olive sedge Not sure about that sorry

olive sedge
#

ok

#

the reason I'm asking is this: LogNet: Warning: UNetDriver::ProcessRemoteFunction: No owning connection for actor bp_Manny_C_0. Function execHit will not be processed

spring hare
#

Is there a class to the widget

stable fjord
#

yes

#

cpp base

#

and bp

#

I am using bp class

spring hare
#

And you have size set? @stable fjord

stable fjord
#

of the widget?

spring hare
#

On the character

stable fjord
#

size of character?

#

what it means?

#

I am gettin you

spring hare
stable fjord
#

one moment

#

i have null ptr

#

thats why i am getting an error

#

connected with invisibility

spring hare
#

Are you coding with blueprints?

stable fjord
#

with cpp

#

and later I am exposing to BP if needed

spring hare
#

@stable fjord Probably go to #cpp With this problem then

stable fjord
#

no no, I know where is the problem and what to do to solve it

#

but I have never see it before

spring hare
#

So you know how to fix it?

stable fjord
#

No I know

#

I thought that I have problem with viewport

spring hare
#

Oh ok

stable fjord
#

and something like this

#

but I found that I have a nullptr so there is not possibility to have a widget component set up correctly

#

to make sure

#

I have following settings checked

spring hare
#

@stable fjord Maybe change the draw size but thats good

olive sedge
#

how do you get the player controller of whoever calls an event on the server?

stable fjord
#

It should work without checking IsTwoSided's checkbox

#

and works

#

thanks @spring hare and have a good day

spring hare
#

@stable fjord No problem and you too

dawn gazelle
#

@olive sedge If you're calling the event on the player controller blueprint, you can just pass it a reference to self and it should work.

#

ie. Player instigates a call to a "run on server" event on the player controller BP, server should be able to call self and it'll know which playercontroller it is talking about. Otherwise, you could pass in the value of self through the event as well by adding an input node on it.

olive sedge
#

@dawn gazelle I'll try

#

server should be able to call self and it'll know which playercontroller it is talking about.
that's how I handled it so far but it seems I'm having some issues with it

marble violet
#

Hi guys, I want to know, how can i version every release game and display it during game launch?

stable fjord
#

@spring hare ehh sorry that I am bothering u too much but I dont see this widget within gameplay

#

from cpp side is everything correctly

marble violet
#

every time I look up in internet i get VersionControl, with Git or SVN

stable fjord
#

god dammit

spring hare
#

@stable fjord Is your widget attached to the capsule?

stable fjord
#

what the fuck is going on

#

If I clicked F8

#

I see this widget

#

XDD

#

my dear god

#

@spring hare could I share my screen at #Support channel? Just stay muted, I would like to show this very weirdly behaviour

#

I dont know how to name it

spring hare
#

Sorry ive got go if im back and your still having the problem ill come help @stable fjord

stable fjord
#

great, It appears and disappears

#

wtf

#

right thanks

#

be well

dawn gazelle
#

@marble violet You mean just having a version # displayed in a widget somewhere? There's a value for Version in the project settings, and there's a free plugin on the marketplace called "Low Entry Extended Library" that gives you an easy "Get Project Version" function that calls that value.

marble violet
#

@dawn gazelle I see... yeah, cause sometimes I don't remember what version was the compile, and when play in multiplayer it actually can cause problem, but okay, I will check it out thanks for the help ๐Ÿ™๐Ÿผ

olive sedge
#

UE says a variable I want to delete is in use

#

find references comes up empty tho?

#

unfortunately the name is "team"

#

I've been through the entire project by hand and can't find anything

maiden wadi
#

Recompile and Ctrl+Shift+S to save all a couple of times and try it again.

olive sedge
#

ok, I've had another variable with the same issue and it clearly wasn't in use

#

so I deleted both now

#

next time Ii will do what you said

#

Ctrl l+ Shift + S is save all, yes?

#

Is there a compile all?

surreal peak
#

There is a CompileAllBlueprints thingy

#

But I never looked at it outside of some automation tools

twilit heath
#

kinda sounds like "Crash the editor button"

maiden wadi
#

To be honest, I've never noticed it. I compile and SaveAll so often that it's like breathing. I don't even think about it.

surreal peak
twilit heath
#

yeah, freezes occasionally just doing a BP wide search

surreal peak
#

Well, it's not a crash button. It's actually super useful

#

We have a local script before commiting stuff

#

And Jenkins also runs it

#

Makes sure to find things where UE4 didn't adjust a pin or so really easy

#

Sometimes you rename a variable and some god forsaken child BP didn't update and you only notice if it gets loaded

#

So the CompileAllBlueprint stuff helps not having people run into issues later on.

twilit heath
#

i usually notice those when packaging fails

#

๐Ÿ˜ฆ

surreal peak
#

Yeah

#

The script catches it a bit early

#

Which is faster, because we would fail lots of builds

#

Now it only fails the Compile step

#

And we can fix it before it destroys all upcoming builds

twilit heath
#

nod i can see the usefulness

#

never expected it to be stable though

surreal peak
#

It's probably not. We had issues. I wasn't the one fixing them.
I know you can do that via the Test in the Editor, which probably is not a good idea.
But you can also do it via command line

twilit heath
#

that makes sense now

surreal peak
#

I think it's just -run=CompileAllBlueprints -unattended or so

#

+- -IgnoreFolder=/XYZ,/X/Y/Z

olive sedge
#

I see

slow valley
#

I'm trying to make a HUD with a character icon that changes based on a button pressed in my main menu. I've tried creating an event dispatcher on that button but I do not know how to get my HUD blueprint to recognize the result of a button press in my MainMenu blue print

#

Any suggestions as to where I should start? I apologize if I'm missing something, am fairly new

twilit heath
#

you can easily access HUD directly from any widget

jade zinc
#

Hey, i recently migrated my project to 4.26. Inside my playercontroller i create a widget (OnBeginPlay) However, suddenly it wont show up, and gives a error on addToViewport:

#

So, is it even common to create UMG inside playerControllers?

twilit heath
#

GetOwningPlayer from Widget returns the local PlayerController, GetHUD from there gives you the HUD Actor, Cast it to your specific type and you're good @slow valley

#

just need to connect the PC to OwningPlayer pin when you instantiate widgets

jade zinc
worthy frost
#

begin play on a pawn

#

?

jade zinc
#

Hhm yeah, that should work..

worthy frost
#

oh

#

thats controller

jade zinc
#

It is in my player controller yeah

worthy frost
#

i use a AHUD subclass for that kinda thing

#

reason: Its always local, no need to check local, etc

#

should try it ๐Ÿ˜‰

#

literally use it as a UMG container for the HUD

jade zinc
#

Hhm right so, in theory my blueprint above 'should' work right?

worthy frost
#

it should yes

jade zinc
#

Thats so weird

worthy frost
#

but

#

you need a player

jade zinc
#

The pawn is just working..

#

Its setup in my gamemode like usual

worthy frost
#

its not the pawn

#

its the player, which is odd

#

Widgets get attached to the viewport

#

which is via LocalPlayer

#

Player != pawn

jade zinc
#

Ah, right yeah..

worthy frost
#

apparently there is no Player

jade zinc
#

So when is the player being constructed?

worthy frost
#

clearly after beginplay

#

for some reason :/

#

well

#

attached

#

what happens if you put a delay

#

before you call it?

#

does it work?

#

i honestly recommend moving that logic to AHUD tho

#

it makes so much more sense

#

and will take you 1min max

jade zinc
#

So, AHUD is like a actor placeholder? How does it work?

worthy frost
#

make your own AHUD

#

bp

#

in your game mode, set it to use that new AHUD

#

then in begin play of that hud bp

#

create your widgets

#

dont even need to check local

#

HUD is always local

jade zinc
#

However, its a widget for Chat, and needs to Replicate

worthy frost
#

you cant replicate widgets

#

widgets are local only

#

they can't hold replicated properties either

#

nor can they do RPC's, etc

jade zinc
#

Right, so all my code just works in AHUD then?

worthy frost
#

HUD is also not replicable

#

PlayerController only replicates to owning client

#

so with that in mind, you might need to rethink your chat.

jade zinc
#

yeah, just been thinking about that

#

hhm

faint pasture
#

You probably want to make a delegate in game state so when the chat updates, it'll notify your chat widget

#

If chat is global you can have the chat data be repnotify and whenever a message is added you'll know so you can do all the updating.

gritty elm
#

should i set material to two side? or something else

#

but when i do in editor, it works fine, at runtime it looks like this

worthy frost
#

this is not a BP issue

gritty elm
#

thanks, so the issue is but when i do in editor, it works fine, at runtime it looks like this

#

@worthy frost

jade zinc
#

@worthy frost so, created a AHUD blueprint, creating widget OnBeginPlay, however its not visible:

#

I did changed the HUD class in my gamemode

twilit heath
#

its probably offscreen

worthy frost
#

btw AHUD has a proper function to get the player controller, i advise using that, but did you break point

#

to make sure the nodes hit

twilit heath
#

set alignment and anchor both to 0,5 0,5

#

other options is

#

you either did some c++ overrides and forgot to call super

#

or you mismatched GameMode with GameStateBase or the other way around

#

so BeginPlay never gets called on any of your Actors

jade zinc
#

Code runs, now using the proper player controller function

#

changing alignment wont fix it to

#

Is it maybe i still use other widgets that got created inside my player pawn?

neat mulch
#

Hey, i'm trying to create event when my mouse hover one of my BP, is there anything more to do than making this ? Cause it's not working at the moment

maiden wadi
#

@neat mulch Enable Mouse Over Events in the PlayerController class.

slow valley
#

This might be very bad, but I'm just trying out whatever I can to see if I make any progress:

#

I'm trying to have a button press in my main menu draw/change the player icon of my HUD. But it seems to be failing to cast to the HUD

jade zinc
#

@worthy frost @twilit heath So yeah, it was because i created the main widget in my pawn, works now

calm cargo
#

Any way to disable these pesky bubbles that give me no new information and are only visually intrusive?

jade zinc
#

just select the comment and set it in details @calm cargo

calm cargo
#

Thanks

orchid garden
olive sedge
#

i have pawn sensing on.. it senses my player pawn but not other characters.. any ideas?

gritty elm
olive sedge
#

godlike!
thank you!

gusty shuttle
#

Is Character>Pawn or Pawn>Character in hierarchy?

olive sedge
#

@gusty shuttle actor -> pawn -> character

gusty shuttle
#

Reallllly? SO when I'm trying to off my player, I should GetPlayerPawn instead of GetPlayerCharacter

#

I ask because I have a Character AND Pawn I can use

worthy frost
#

btw pawnsensing is not that good

gusty shuttle
#

And I just want to use pawn

worthy frost
#

best to use Perception

odd ember
#

or write your own homebrew

celest oar
#

hey guys, i have a character with 2 weapons attached to a socket in each hand, but when i simulate physics the hands go crazy like if they are colliding with the weapons despite the weapons having all collision turned off

#

does any 1 know how to fix this?

wild moth
#

Hello ๐Ÿ™‚ Is there a way to use the SpectatorMode and states and still be able to allow the player to attach/follow other Pawns?
a simple AttachActorToActor isn't working

lucid dove
latent arch
#

@lucid dove Hmm not sure ive seen that before! but if your working on tanks id very much like to talk to you as i am making some for a project i am working on ๐Ÿ™‚

#

Question for people, how do i rotate these vectors (the yellow ones) so they line up with the bounding bos

pine rain
#

Is there a way to (automatically) convert a level into a Blueprint? (Possibly with Child Actors?)

tight schooner
#

@latent arch we'll need more info to give you any pointers. How are you determining those yellow vectors?

#

I can't tell what's going on by the viewport screenshot alone

#

generally speaking, for any static mesh you can Get Bounding Box. It'll return a localspace bounding box

#

and you can fiddle with the vectors to get the four corners in localspace, and then apply the actor's transform to it to make it worldspace if necessary

#

("compose transforms" might be the node to use for that)

exotic cradle
#

This is how my editor inventory grid is generated for my editor inventory UI. Im trying to figure out how to get a reference from this so that my drag and drop operation will work. I know there is a missspelling but it has since been fixed after this screenshot was taken.

dawn gazelle
exotic cradle
#

It does allow me to do that without any compiler or bug errors when I close the level. But from what I can tell it looks like I cant actually drag and drop any of the buttons from the grid panel to my hotbar. Maybe I am missing something?

dawn gazelle
#

Are you overriding the OnDrop function?

exotic cradle
#

Yes. I was following the UMG Live Tutorial series and stopped near the end of video 2 because of how I setup my grid panel to generate only as many buttons as there are names present in the data table. The videos method uses a set number of inventory slots not generated by a data table.

dawn gazelle
#

Is your concern that you're not seeing the drag take place? You're not setting a visual, if that's the case.

grizzled rain
#

Anyone notice that with 4.26 it makes delay nodes not work when you pause the game? same with "Unload stream level" nodes

dawn gazelle
#

@exotic cradle Are you sure the OnDrag is even being called? Perhaps do a print string on the function to see?

#

Your set up looks similar to what I have in my project.

#

Thinking perhaps there's a setting on the widget's button preventing the mouse being detected

exotic cradle
#

Maybe. But the button changes color when clicked or when mouse is hovering over it and each section I have like in the short video I posted atleast confirms that when the mouse is over a slot in the hotbar or the inventory it is detected.

#

Im going to rewatch a couple videos to see if I didnt maybe miss something

exotic cradle
#

Yeah Im definitely missing something. Also added a few images to even see if an image would load along with the buttons themselves based on the data table and that doesnt work as well. So I think at this point what I need to do is probably redo some of this system like from the tutorial than go back and edit it the way I want it after it is fully functional.

dawn gazelle
#

I'm guessing that the "inventory image" is valid isn't returning true, so the drag is never happening.

exotic cradle
#

Yeahh because I dont think I set the image to the button as it comes from a data table i beleive

#

Or atleast the icon for it is shown in the data table

coarse marten
#

anyone know how to clamp a vector within another vector?

#

im trying to use the left and right values of a vector along with the actors location to limit how far the player can move something

exotic cradle
#

Split the struct for the vector

coarse marten
#

i did it by splitting it before but my approach only worked for a single camera view in game

#

hoping you can see this well but i did something like this for both left and right and up. I dont have the left and right one anymore to show but

spark steppe
pine rain
#

Don't know why, but didn't work

#

maybe it didn't work because I had selected the folders instead of the objects inside them

latent arch
#

@tight schooner ahh thanks man ill have a play with the transforms of the actor and see if i can get it to line up ๐Ÿ™‚

tranquil canyon
#

Hey - I'm trying to spawn two niagara systems (of the same blueprint type) with keypress so it emits when i hold a key and reduces to zero when i release.
This works in the emission however if I press two keys (emitting both systems) the previous system keeps emitting and stops updating the decrease // why is this happening?
Is it something to do with cache handling - as they both should be updating simultaneously. (or if you have a link to something i could read up on that would be great too)

faint pasture
#

@tranquil canyon do you have a reference to both systems or just one reference?

#

You're probably overriding the ref with the 2nd system therefore losing your ref to the 1st one.

tranquil canyon
#

I have two containers of the same blueprint in the scene

#

thanks! will have a look at referencing / wasn't sure what to research

faint pasture
#

@tranquil canyon what variable is the target of that "set niagara variable" node?

tranquil canyon
#

@faint pasture that's a niagara system component

faint pasture
#

Yeah but which one? You're dealing with 2 right?

sterile pagoda
#

Hello, i got a quick question...
so I made a Landscape everythings fine but i want the player to be able to pick up Objects but it wont work and I dont know why i followed several YT tutorials etc. but still nothing, so I finally got here. Anybody out here who can help me?

faint pasture
#

@sterile pagoda That doesn't exactly narrow it down. Start with trying to make a keypress do something, literally anything.

sterile pagoda
#

well i placed 3 Object and they should be able to be picked up with "E"

#

and they should be droppable as well

#

by pressing "E" again

#

thats what i got so far so it should work technically but I somehow cant manage the objects to be pickable

maiden wadi
#

No one can read that.

sterile pagoda
#

^^ okay ill send better pictures

maiden wadi
#

@sterile pagoda If you tighten the nodes up a little, using WindowsKey+Shift+S is the easiest way to take a screen.

#

But other than that, that looks fine. Can you print the HitActor and make sure it's hitting the correct thing?

#

It's possible that your pickupables aren't blocking the Visibility channel in their collision.

sterile pagoda
#

and how do I fix that / check if they are blocking the Visibility channel?

maiden wadi
#

First try this on your trace. See if the hit component prints anything, and if it prints the correct component class type.

#

If it prints nothing, you're not hitting anything.

sterile pagoda
#

okay seems like it hits nothing

#

oaky wait

#

it prints the coordinates

maiden wadi
#

Turn on the debug draw. Use ForDuration. It should show you a red and green line where your trace is for five seconds.

#

On the LineTrace node.

sterile pagoda
#

it shows a red line

#

and it hits the object

maiden wadi
#

Red square dot thing at the end of the red line?

sterile pagoda
#

yes

maiden wadi
#

And that's hitting the thing you mean to pick up?

sterile pagoda
#

yes

maiden wadi
#

But the Print from the HitComponent isn't printing the component's name?

sterile pagoda
#

nope its not

maiden wadi
#

That's.. Odd. Try switching that to HitActor instead of Component.

sterile pagoda
#

oh -.-

#

I know why ^^ i didnยดt change the GetWorldLocation to Get Display Name xD

#

okay now it prints the name obviously

maiden wadi
#

Let me check something really quick.

#

@sterile pagoda Hmm. I set up a quick test, and I can't seem to get a sphere to be grabbed by that physics handle.

sterile pagoda
#

so somethings wrong with the physics handle?

maiden wadi
#

I guess so. I've never personally used it, but from doing some general testing, I can't make it grab an object whether it's simulating physics or not.

#

Might require some form of black magic.

sterile pagoda
#

^^ thats kinda sad -.- but if not with a physics handle how should i make object pickupable?

latent arch
#

@maiden wadi hey buddy hows it goin? you got a few minutes to look at some vector math? ๐Ÿ˜„

#

@sterile pagoda what sort of actors are you trying to gram? static mesh actors? Skeletal Mesh actors?

#

Grab*

maiden wadi
#

Ah, the audio stuff. I completely spaced that.

mortal wharf
latent arch
#

hey no worries man tis all good, not in any rush for anything just more pet projects / experiments ehehe

maiden wadi
#

If I understood right, you are more or less trying to lower the sound based on things in the pathway?

latent arch
#

but my vector math is crap lol

maiden wadi
#

Finished my gamejam project day before yesterday. Still frazzled after the week.

latent arch
#

to simplify it yes, but the idea is to try and generate those paths and then clone the sound around the edges of the object

#

haha no worries dude i figured yyoud been busy on that

#

how did it go? happy with your project? ๐Ÿ™‚

trim matrix
#

I know it has something to do with the override function On Key Char

maiden wadi
latent arch
#

ah cool ๐Ÿ˜„

maiden wadi
#

@trim matrix What kind of UI, like inventory window sort of thing?

latent arch
#

So a quick one to see if i can figure it out myself. Ive got the SM Actors bounding box from a line trace, and ive done alittle math to get its vertexes from its bounds. How can i now rotate / line up those vertexes with the objects rotation? :)

maiden wadi
#

@trim matrix Input is normally in the player controller or controlled Pawn. So I'd just bind the input there. It's a slightly tricky question though, because of best practice. Normally you would construct a widget if it doesn't exist yet, and if you already created it, you'd store that one in a pointer somewhere like the HUD class and just add it back to screen when you want to use it again.

trim matrix
#

I have a SpawnWidget

#

I'm using the default first person controller for this as well, not sure if that makes any difference

maiden wadi
#

@latent arch Hmm. I sort of thought of that, but my concern with using bounds is what if you have a really tall object? The bounds would be huge and make it seem like it's very wide too.

#

I mean if all objects in the level are cubic, that would solve that immediately, but oddly shaped objects skew that badly.

latent arch
#

yeah i did wonder that too, but then i dont think it would matter too much for just emulating sound passing around it cause i can fudge the attenuations i guess

#

right now im just trying to get my vertex vectors to rotate corectly to line up with it ehehe, then im going to try get closest point on a line between each of them and join the dots for paths (i guess)

maiden wadi
#

I wonder how many traces are too much. I mean I've heard of people using thousands of them a second in C++.

latent arch
#

yeah lol

#

well im only planning on generating a path if its shorter than the sound attenuation

#

and also if there is a pathway, so like i wond go under or over something if there is another object in the way to sorta check for the floor and ceiling

#

also probably only do 5 times a second at most

#

can allways interpolate it a little

maiden wadi
#

Like. I'm wondering if you could trace from the sound point to the player, if it hits the player, full sound.. if it hits an object, you could basically draw spherical points around the hit object and trace towards the player. Of course you'd align this from the closeset point to the player, and the first one to hit the player could provide the best placement, and you could use it to do a slight reduction if the trace is straight from the sound to the second point to the player, or a major one if it needs multiple points between.

latent arch
#

hmm thats an interesting idea

maiden wadi
#

Theoretically it should provide near enough results for something like that and it should work in 3d with differently shaped objects.

latent arch
#

the only thing i liked about this method was that it gives you the option of having sound come from above bellow and either side if all the tangent points are within audible range

#

luckily with wwise you can clone a sound emitter for this and it wont take up any more resources

#

its just the traces generating the pathways thats the sticky bit

#

I fugyred bounding box was the simplest 3d geometry to try as even simple collision can be more vertexes

rough blade
#

Sets vs arrays? When should I use one over the other?

maiden wadi
#

@rough blade Sets avoid duplicates. Sets are to throw things like a list of objects in to avoid getting two pointers to the same object. Arrays allow two of the same value.

weary crown
#

Hey Guys, So I am trying to store the position and information about some actors to allow me to spawn them in the exact same location with certain variables being the same as the were before. Whats the best way to do this? The main issue is that different actors have different variables so I can't just store them in a singular type.

rough blade
#

@maiden wadi perfect, thank you

dawn gazelle
#

@rough blade Sets are also good for comparing. So you can see if two sets contain similar members or get the differences between the two, where Arrays you can only do something similar by iterating through them with loops and doing a lot of comparisons.

rough blade
#

@dawn gazelle Thank you for the heads up!

wind rose
#

Hey guys, I'm not sure if this is a question to ask here but in C++ I've created variables that are available to the editor, however I can't actually set it (Even though the editor acknolwedges what Im looking for)

#

Then when I select BoundaryBoxOne, it just goes back to saying "None" in the editor

latent arch
#

i wonder how to rotate the vectors of a box extent from an actors bounds?

#

im always getting world space location without rotation

maiden wadi
#

@latent arch The BoxExtent should always be from the Origin to the top front upper corner in Unreal, usually.

#

@wind rose What kind of variable is it?

wind rose
#

ATriggerVolume*

#

Do you think its because its a pointer ?

maiden wadi
#

You're trying to set it to something that exists in the level?

wind rose
#

Yes

maiden wadi
#

Hmm. It shouldn't null out like that. Are you positive you're not setting it somewhere like OnConstruction or the BP Construction script to null?

wind rose
#

Let me check one sec @maiden wadi

#

Then in my constructor I insert that variable somewhere else

#

but I feel like in the header that should still show up even if i commented out my constructor thingy

latent arch
#

@maiden wadi hmm ok, so how would i match the box extent location vector to the actual objects rotation then? cause in the screen they are on sepparate rotations

mortal wharf
odd ember
wind rose
#

@odd ember No idea, my issue seems to be with the editor actually setting a variable so I was hoping maybe someone had an idea here, I'll def give it a shot over there too

dawn gazelle
#

@mortal wharf are you hoping for a FPS style camera where it just moves around your weapon and you're not seeing your character?

mortal wharf
#

i mean the problem is that when i look down / up only the mesh actually goes down / up i want the camera to do too

worthy frost
#

@wind rose stop using std::vector and std::pair,

mortal wharf
#

@dawn gazelle

wind rose
#

@worthy frost its a map

worthy frost
#

yes why you using std::pair then?

#

why are you using std::map?

wind rose
#

no idea lol the implementation on geeksforgeeks did that

#

Its for a data structures class, need to implement a structure

odd ember
#

guys

worthy frost
#

stop using stuff like that

wind rose
#

what do i use

odd ember
worthy frost
open gulch
#

Hey guys! I package two different versions of my AR project. Android and IOS. But for some reason, only the Android version can scan QR codes and Images. The IOS version can sometimes scan QR codes but never images. I'm pretty sure that the processes for image tracking work are the same... So I really don't know why IOS devices can't scan images but can scan QR codes. It just doesn't make sense.

mortal wharf
#

How do i fix it?

odd ember
#

reset your camera if you can from a backup

mortal wharf
#

Reset it's position, rotation and scale?

odd ember
#

my thought is that it's probably a child of some other component that isn't root

#

and that's what's causing it

#

but I can't say for sure

mortal wharf
#

The camera is a child of the mesh i think

#

Yep

maiden wadi
#

@latent arch I had to double check, but this pretty much. Use the component's local bounds and transform that into world space.

#

I'm out for the night though. Well past midnight here!

pine trellis
#

can some one tell me which node is better to get a reference of a door for my actor? should I use get actor of class or get all actors of class?

odd ember
#

neither

latent arch
#

@maiden wadi ok thanks buddy no worries GN ๐Ÿ™‚

odd ember
open gulch
pine trellis
#

which node can is better does anyone knwo?

odd ember
#

they both do the same thng

pine trellis
#

ok im gonna try the other one, if I have more then 1 door I should use get all actors of class or does it matter?

odd ember
odd ember
#

generally you should never use GetAllActorsOfClass or GetActorOfClass

#

it's symptomatic of that you haven't thought out your system well

#

whatever it may be

pine trellis
#

I need to use an event dispatacher on my event begin play so I can open door the door after the player passes the mini game

#

I have more then one door on the map

#

or maybe I should use a cast node? but what wild card could I use for the cast?

odd ember
#

I don't even know what you are trying to do

#

but your logic seems highly suspect

pine trellis
#

I am working on a multiplayer coop where the player comes to a door and needs to hack it, after they hack it the door needs to open

#

so on the on sucess it binds to the open door activate of the door

odd ember
#

you should handle the logic for opening the door inside the door blueprint

#

otherwise a) you'll have problems when you spawn more than one door

#

and b) you'll have to copy your logic constantly

#

at least as far as I can see

#

read up on blueprint communication

#

it looks like you're trying to hack things together basically

pine trellis
#

yeah but if its not a pawn it has problems sending RPCs

worthy frost
#

ofc

#

you need to send your interaction/hacking via the PlayerController

odd ember
#

which isn't a problem

worthy frost
#

the player does not own the door.

odd ember
#

there's a pinned post on blueprint communication

#

I recommend going through that

pine trellis
#

do you know how to resize the windows for testing multiplayer I cant rememvber where the option was to size them perfectly together

slow valley
#

What would be the best way to go about editing an image of my HUD widget based on the button press on my mainMenu widget?

trim matrix
#

@slow valley I'd save information like that in the game instance

#

If you plan to have a lot of settings like that I'd make a struct called HudSettings in the game instance

slow valley
#

Ah, it would only be one spot that I do that in. I'm having the player click their preferred mascot in the main menu (a cougar or a husky) and eventually when the menu closes and I run the level I want the hud to either display a cougar or a husky icon. I tried binding an image texture in my HUD but have had no luck in accessing what button was pressed

#

(this is probably horrendously bad but this was me just experimenting with what this button could even access)

wind void
#

@grizzled garden wrong channel

wind void
slow valley
#

@wind void Thanks for the tip, I'll take a look into that

swift dome
#

Hi guys i am learning about blueprints in unreal, i created a button UI widget and want to display text when clicked

#

but this does not display anything on the screen

#

Thanks in advance

wind void
# swift dome

First off, the print, isn't being ran. Second if the print was ran, you'd need to check every tick to see whether it is "being pressed"

It's much easier todo all this in the widget's built in blueprint:
In the event pre-construct have the text's visibility set to collapse

Then in the onButtonClicked event, have it put the text's visbility to visible

#

Also make a get player controller from id and attach it to owning player on the create Sample UI Widget

faint pasture
#

@pine trellis Why not do the RPC through the Pawn?

#

@pine trellis client pawn sends interact RPC to server-side pawn which calls interact(hack) on the door, setting a replicated bIsUnlocked and bIsOpen