#blueprint
1 messages · Page 19 of 1
and in the top menu under collision select remove collision
Correct
that gets rid of all colliders
thanks
its greyed out
so that means probably it doesnt have collision already
Any clue as to why my mouse click is not registered?
I asked GPT, and I went through most of them. Point 8 is my best guess, but I'm not sure how to check it:
Where does this take place?
In a widget BP
That's not gonna work I think, you can only have input to things that you own
Eg your player controller or your character
Or to actors that you specifically set to enable input
In widget you have to override some function to get key events
Not on my comp rn. But try OnKeyPressed
Or if you want another method the node is called Listen for input action
That's easier mode
I presume you have put a print node behind the click to confirm that it is not being fired?
It's not gonna get fired in widget, they handle input differently
Thought breakpoint is guarenteed to fire.
It will fire if It actually get called
Listen for input action is straight forward
Just connect the delegate and type the input action name
Have you double checked that the widget is in play?
Make sure leftmousebutton is a thing in project or editor setting
I can't remember which one
Go to setting, input. Add action value call it "leftmousebutton"
Set the key to left mouse button
Then back to your widget make sure u get the exact name "leftmousebutton"
Sure. U already got one tho
"SetDestination"
So instead leftmousebutton in listen for input action node. Type SetDestination instead
Now put them in EVentConstruct
And hook up the listen to EventConstruct or something right?
Yep
And while you are at it, maybe just toggle a breakpoint on one of the Listen
Just to make sure that your widget is running properly
Crashed with breakpoint on listen haha ^^
Print string the offset. That's what u are here for
Didn't seem to work before that though. Will recreate it. Sec
Just show the bp
Tick "consume" by the way?
Nothing in that node should crash the editor. Maybe if you do it on preconstruct instead of construct that will be a problem
Consume will consume the input
If u have something else listening to the input it will get blocked
If you don't have other blueprints looking out for a mouse input then yes consume
Otherwise it will "eat up" the click and will not flow through to other blueprints
That's for you to decide based on your design.
Got it
If toggle breakpoint still breaks it then use a Print node behind the Listens instead, set the duration to say 20 seconds and change the color and text so you can tell
Gpt Is almost next to useless when it comes to blueprint stuff
Maybe 10% correct info, rest is bullshit or misleading
Breakpoint still not firing. "Done" is printed
Hook them up
Print string after the event. Just stop using breakpoint
Where are these codes on? PlayerController?
Get Player Controller and link that to Target instead and try again
0o which target?
Only "Done" printed
That's not gonna work
Ok look
U still haven't done what was said
Mb mobile resolution
Yeah that's odd. What's the input mode set to?
If game only then not gonna work I reckon
Make sure it's game and UI
Try getting a Get PlayerController node and plug that into the Target
Target is user widget. You can try but not gonna work imo
And like ColdSummer said, make sure it is input mode UI and Game
No harm trying.
Target for "Listen for Input Action" node?
Ok my mistake, please ignore
That should work if the widget exist and the input mode at the time of button press is set to at least UI. .
I'm not sure what happens on your end. Probably need to debug with making sure that the input event is set to UI
You can always try the other method. On mouse button pressed
You wouldn't be able to connect it
If you have a left mouse button being called somewhere and it is set to consume, that could also be a reason maybe
Good point. Checking. It's started from the 3D top down Template. (can't remember exact name)
Check your character and player controller
To confirm that, first try using another input instead of Mouse Click
Like a key that you are not using
If the key works then more than likely your mouse has been consumed somewhere
If you already override mouse key down in the widget or something like that. That might be an issue too I'm not sure but I would also try to remove the function just incase
Does S fire it?
Hmm
Hmm do you have enhanced input?
Was told it doesn't go hand in hand with legacy input
But I haven't use enhanced input yet so I dunnoe
@young meteor let's do it the widget way maybe
I do not. On UE 5.0
Hmm that's weird
Try to override on mouse button down and print screen
Yea the input stuff not gonna work in widget. The "S" key part
This Widget is nested in another one if that makes a difference.
Let me get a reflector screenshot
Nope, it does.
I was wrong then
I have a feeling his inputs might have been disabled somewhere
Don't think it matter for listening input
Only for stuff to detect if button is pressed etc
Then something in this widget blueprint itself is breaking them
MousePressed is triggered in the clean widget
i have "fixed" it by reverting my git so kinda solved it. Thanks though.
Can't be the nesting?
Not entirely impossible
You sure you don't have a PreConstruct somewhere in that widget blueprint that could be messing inputs up?
Looking in the reflector, I see another visible one connected to same Overlay higher up? Could be it?
That could be it, but it shouldn’t block keypresses
You can try though, set that to Non Hit Testable (Self only)
Trying to find it.
i cant get radial force to work, i have a cube and a cylinder attached with a spring, between them is the radial force, here is the event graph
when i press j nothing happens and nothing prints
Is your input enabled?
mb imma try
Does not seem to be one I made unless I'm confused.
Is there a Canvas Panel somewhere higher in the hierarchy?
That is on Visible?
oh yeah now it works i totally forgot ty
It is nested in my Main Menu which has a Canvas Panel yes.
Not Hit-Testable though
Then it shouldn’t be the issue
Right
Try to get another blueprint like PlayerCharatcer, put a Tick event there to Enable Input
This should force the Input mode to stay enabled
After that try again
Do the same in your widget blueprint
Not to solve your problem, just to try using it to identify what it could be
Just in case it matters. In my Main menu I have the "Skill_Tree_UI" (which is the original one I showed you code from) set to collapsed.
I then set it to visible on button click.
Sorry one more message. I'll start trying your stuff now.
I tried creating a widget and removing self (main menu if it works like I think) completely. Did not make a difference.
Like this in player character?
It shouldn’t make any diff
In player character I noticed no difference in behavior. Am I testing for something specific, or S key like before?
To set it in widget I get this:
Also, assuming I should remove the function in Character when I make it in the widget right?
Leave it connected to target and controller
Wdym?
Maybe just leave them for now
What do you want me to plug into "Target"? Must have something when done in Widget BP
Plug PlayerController to both Target and Controller
So still doesn’t fire?
Ok now try this
In the Tick event for the widget
Get Ref to Self > Get Visibility (enum), then plug it to a Print and see what the status is
No, you can take it out already
Hmm
So it is Visible, but simply not responding to your inputs somehow
Focusable is not important
ok
Prints Visible and True then. No difference in behavior though.
Hmm ok, so no diff
For the clean widget it prints "Not hit-testable (self-only)" and false.
And that one works.
Just to confirm again, you pressed S and nothing was fired right?
Correct. And same in clean one. Then breakpoint triggers.
Hmm
Where is this menu added to the viewport?
Try setting the zorder high and see if that would make any differences
If I understand your question correctly the main menu is created from Character BP:
Not sure if I understand where to set a Z order.
In that main menu I set the nested Skill Tree UI we are talking about to Visible:
You are highly tenacious though. I both appreciate and respect that 😄
Expand this and set the value to like maybe 5
Zorder is the order which widgets stack
A higher number means it would be layered above other widgets
Just passing it on 🙂
I will be on a flight 3 hours from though so hopefully we can solve it by then
Just tried duplicating my main menu and gutting it for everything else than what I need.
Does this fire up the menu btw?
That made it work. Just for reference, this is what I have left: (kind of a note to myself. These things are not the problem)
Not sure what you mean.
Added some back, and now it does not work:
So something that you added is breaking it
Test out by removing what you added, then test run with every addition, instead of adding everything at one go
Did not add everything. Just a small group 😄
On it..
Hello, how can i load game from different level. save system works fine but when loading if i call open level(by name) function, data is not loading. Any help?
Did you put the loading function in startup of the level loaded, or past the loading level node?
Do note that everything is destroyed when you load a new level, so whatever code you put after the Load Level will not run.
Soooo confused now, haha. Kept doing Ctrl + Z. Kept working.
All the way back to it starting to undo the checks we did with on tick, visibility Enums etc.
Just kept working.
Plugged in the original menu instead. Even works in that one now. What the.. ?
I tried both but not works, Im using SaveGame to store data and im calling save and load function in game instance. Everything works fine till i add open level function.
Why the hell are random streams from a seed in ascending order as the seed increases?
shouldn't each initial seed create a completely different stream?
as it clearly does not, what other options do i have for a random float that does not increase along with the seed?
Even works with "SetDestination" now which was the left mouse button.
Only thing is, I get these warnings in the log. Maybe it was the Controller before then? Not sure at all.
You think I should be concerned about that error?
In any case. A massive thank you for the help. 🙏
Did you save before you open the level?
Where are you storing the values? Game instance or savegameobject?
Try to post some pictures of your bp
Don't constantly create a new stream and just use one stream.
If you're not intending to use a stream where you want the same random number output every time (which is what a stream can provide you if you request the random values in the same order), you can just use the "Random Float" node.
Why are you increasing the seed would be my question
@dawn gazelle @gentle urchin I'm aiming for a multiplayer-synced RNG. So, i have an initial seed (synced over the network) for a weapon's critical damage chance, and every time the gun shoots i incremement the seed by one, so that i can get a new random float for its critical hit. Do you have any other suggestions for that?
I could try to juggle a single random stream but that would get very annoying to work with (for every feature with RNG) rather than just an integer,
Pick random seed on server, pass it to clients, and go from there is what id think initially, without any testing
thats what i am doing, yes.
No you're not. You're creating a new stream each iteration.
I wouldnt change it ever
Promote the stream to a variable.
For that specific gun id create 1 seed and stick with it
Whenever you pull a value from the stream, you're modifying it.
im storing my values in savegameobject
save and load function is in gameinstance, im calling them from a widget
Yeah, i get what you're saying, but would that not be too hard to deal with trying to maintain the usage of a single stream variable across all RNG thngs? lootboxes, gun shots, towers, etc
Big thanks to you too. Did not get around to say it mid-problem-solving.
I guess your solution actually worked. Not sure if engine was bugged, or some minor detail was changed.
But thanks in any case. 🙏
Good to see that it's fixed. I don't think it's engine bug but need some testing to actually see the problem
Well, you shouldn't have to use a Streaming RNG for everything.
Example: Open loot box: Roll dice. Replicate what was chosen by the server. Done.
No stream required.
You have one stream per thing
is there no way to get a random value, consistently, from an arbritary seed?
But yeah random is just random
Sure, you use a stream, but it has to be accessed in the exact same order.
Ok so what don't work? When you open new level, what object actually use the data and how is it loaded
Also you want struct to wrap those data
Like here.. Check it out... These should look similar to what you have.
Cuz I did the exact same thing on my end
^
yeah, that is the issue. I'd like if there was a random generator that was like
0->0.313
1->0.132
2->0.642
etc, each seed giving a consistent result, but no correlation b/w seeds (being ascending order)
i suppose there is no way to achieve that through unreal?
That is what a stream is.
😅
Would be safer if you handled them with a validated get or something
I input 0, I got out 0.211325. You input 0, you probaly got out 0.211325 too.
@young meteor so all is good now?
keeping track of each call to the random function is much more of a hassle than a fixed (synced) seed + an incrementing value
Think so. Can't find anything that doesn't work (except for the errors), and yet I'm concerned it stops working again. 😄
streams are consistent, yeah, they're just ascending with their seeds, which is terrible.
Id say you're using it wrong but oh well
I am using it wrong tbh yeah
It happens sometimes lol
But glad all is working out!
i guess i have to make sure the random calls are the same on all players now i guess
welp
How come other player need to know the random calls?
PM me
They happen on the server tho
Clients dont roll locally
So it only happens one place
If you make a subsystem or singleton in whatever shape you want, its super easy to just grab the random number from there.
im just storing variables for my PlayerCharacter, When i load without calling open level function everything works fine
My current way was:
-Sync a random intial seed from the server onto all players
-An object like a gun tower would slightly modify that seed for its own use
-upon shooting, it will use that modified seed + "number of gunshots performed" to get a random value for deciding whether current shot is a critical hit or not
as all towers on clients shoot at the same time, their "number of shots performed" increases similarly
Assuming it's single player and not server travel, your player character get destroyed. When you open new level, does the character load the values again from savegame object?
But why do the clients need to know that information? The server can replicate what it rolls (ie. whether an attack was critical) when necessary.
The problem is lets say if i saved game on map1 and trying to load game from map2, game needs to change level to map1. How can i do that
My game can have a lot of towers shooting. It makes more sense to keep the RNG consistent rather than send an RPC every shot repeatedly
It doesn't matter what map you are at. You shouldn't even need to load the savegame object after loading it once
So the question is, where are you calling Load Save? Is it from a node after Load Level?
Once your savegame is loaded. Player can just get their values from savegame object whenever he get spawned
Can we see how you call the Load Game function?
keeping the random state changing safe with a proper gameplay event rather something fragile like a pure function call is preferable to me. I'll probably just use a third party random number generator which doesn't have this weird limitation of unreal's
although, no idea where to find that haha
Shouldn't you just calculate damage on server. And you can put account critical chance etc
It's not client business to calculate damage
Only thing its usefull for on clients id prediction
Imo could be wrong
critical hits can have custom vfx, hence needing to be replicated
The server would tell the client it was a critical so it knows to spawn the VFX.
The vfx can appear once the server declare that the target gets critical damage
I agree that you probably need some kind of prediction tho
wait no more coote cat?
I don't think that's viable, a redundant RPC for all towers (which can be many, and shooting at high rates)
when they could just be simulating the same on each
At the end of this im calling loadgame function, and im calling function from a widget. Menu widget
I only keep the actual damage dealing part/gameplay state change server auth
You can do damage client side for cosmetic
But rewind if server say u r bullshitting
server doesn't need to have to say anything if the rng wasn't ascending. :(
U didn't show the part where you load the values into the character
Can be done in player begin play imo
As long you can make sure you always aquire the same target, simulating on client atleast wont look so bad, though iirc you dont really need to worry about the rpc? Unless you hit like 60 times a sec or something
it may very well be more than 60 times a sec
What do you mean the RNG is ascending? as in the numbers provided only get higher?
the random stream created from a seed's first random value is increasing order in relation to the seed
The RNG isn't ascending, you're creating a new stream which is based on the initial value provided. If you kept the stream, it wouldn't just ascend.
There'd be nothing wrong with having a stream for each actor for example.
But if you wanna use a third party lib go ahead
Probably doesnt work as you want it still but perhaps it does
yes, but that ties state change to a pure function call, which makes it much more risky, i'd like control with an integer seed
If it's just the first, skip it lol. Use the 2nd onwards.
Where is your load new level code?
Its likely only the first ye
oh, lemme check if its only the first
at the last sequence node im calling open level (byname) function
Screenshot of it pls
@dark drum @gentle urchin holy fuck thank you so much.
it really is the first. The second one for each seed is completely random. fuck yes
What is the target?
i can't believe that little detail fixed my issue
???
The state is stored with the stream if you promote it to a variable.
LogBlueprintUserMessages: [BP_HeroCharacter_C_0] Server: 0.573602
LogBlueprintUserMessages: [BP_HeroCharacter_C_0] Server: 0.45595
LogBlueprintUserMessages: [BP_HeroCharacter_C_0] Server: 0.087519
LogBlueprintUserMessages: [BP_HeroCharacter_C_0] Server: 0.606921
LogBlueprintUserMessages: [BP_HeroCharacter_C_0] Server: 0.981536
LogBlueprintUserMessages: [BP_HeroCharacter_C_0] Server: 0.389899
LogBlueprintUserMessages: [BP_HeroCharacter_C_0] Server: 0.179048
LogBlueprintUserMessages: [BP_HeroCharacter_C_0] Server: 0.656891
LogBlueprintUserMessages: [BP_HeroCharacter_C_0] Server: 0.07962
LogBlueprintUserMessages: [BP_HeroCharacter_C_0] Server: 0.505272
LogBlueprintUserMessages: [BP_HeroCharacter_C_0] Server: 0.290235
LogBlueprintUserMessages: [BP_HeroCharacter_C_0] Client 1: 0.573602
LogBlueprintUserMessages: [BP_HeroCharacter_C_0] Client 1: 0.45595
LogBlueprintUserMessages: [BP_HeroCharacter_C_0] Client 1: 0.087519
LogBlueprintUserMessages: [BP_HeroCharacter_C_0] Client 1: 0.606921
LogBlueprintUserMessages: [BP_HeroCharacter_C_0] Client 1: 0.981536
LogBlueprintUserMessages: [BP_HeroCharacter_C_0] Client 1: 0.389899
LogBlueprintUserMessages: [BP_HeroCharacter_C_0] Client 1: 0.179048
LogBlueprintUserMessages: [BP_HeroCharacter_C_0] Client 1: 0.656891
LogBlueprintUserMessages: [BP_HeroCharacter_C_0] Client 1: 0.07962
LogBlueprintUserMessages: [BP_HeroCharacter_C_0] Client 1: 0.505272
LogBlueprintUserMessages: [BP_HeroCharacter_C_0] Client 1: 0.290235
What is the target that "load " the values
You mean the Load Level is at the end of the LoadGame function, after loading your data?
yes
You are passing the value in savegame object to some target
Then of course it is not going to work
You basically loaded your savegame and destroyed them right afterwards
savegameobject
what should i do
You get savegame object from load from slot then you set it to some target
What value do you set from the savegameobject?
The issue is that a simple pure function call, random float from stream, is what changes what rng value you'll be getting rather than you controlling an integer yourself. You have to make sure its called exactly the same times on the client. I'm not saying it won't work, its just way more hidden and risky than a "number of times gunshot" counter.
I appreciate you giving your time to help though, I'll just use the second float from each stream.
Easiest way is to separate the Load Level from the Load Game, create an actor BP, put that BP in the new level to load, then on begin play call LoadGame (without the Load Level).
Gotcha. Yea, that's the big issue with trying to do it on both sides :/
This one
Did you have a Save Game to Slot node?
So what are u actually trying to load? The character stat's yea?
Are u getting the savegame object then applying the values to character then load the map?
yes
yes
One thing u need to understand here is the character get nuked qnd cease to exist when you open new level
This
Hence why I told you to load character values at begin play of the chafacter6
In character bp
Begin play
Get savegameobject , get values, set my hp to savegameobject hp
That’s basically what I have been trying to tell you @true flume
If u want to improvise, use struct
I second this, struct is easier to handle
Struct for SaveData +1
||Or if we are evil, we can use serialize() jk jk||
Structs ugh
so i should carry loadgame function from gameinstance to player bp right
No u just load the game once
U load the game to get the savegame object
The character just need to get the savegame object from game instance
Just to add on - AFTER the Load Level
U load the slot in game instance. Setting game instance savegame object to the loaded value
Should add a version number to the save if you're expecting to keep the game alive through some patches and updates
Surprisingly, if you add member to the structs, they work, just dont change the name 😅
Would you bet your game on that? 😆
I can confirm. There's been a few times when i've wondered why some changes to some save stuff doesn't work after making changes and it's because it was using old data that was still saved.
You get some strange behaviours when only have the data is valid lol.
Mine works so far 👉👈 , but i have a very generalized structs
But save version is important
Hi!
First time using blueprints, anybody knows why is this not working?
Hello,
Still trying to figure this out, loosing sleep over this lol
So quick recap, I bought an asset on the market place, it uses a Character Base BP that is parented to their C++ code.
I have my own custom C++ character as well and need to merge these somehow.
Tried to create a child of the Asset Character BP and reparent the child to my C++, i loose the logic ( which is fine ) but I then loose all the assets components that are generated trough their C++.
So I created a child of my custom C++ character and tried to reparent that to the asset's Character but same thing.
Just seems like no matter how I go about this I cant have multiple C++ character to inheret into a single Character BP.
The important question is do you use 1 save game object or multiple.
What does it do and should it be doing?
You make your custom c++ inherit from the c++ class from the marketplace, though you will need to check for conflicting functions or not.
Reparent your C++ Character to the Asset's C++ Character.
Hehe well lets hope it stays that way. Id love nothing more than to not be right about this.
Get the Actor Location (in this case the player) Set the PlayerLocation vector to that location, print it out and repear every 2 seconds, if IsDead is false
It only prints out the location once.
Can i read it as
"If the player is not dead, record player location every 2 seconds"
Yes
Theres two things i can see wrong.
Firstly, you don't at any point actually set the characters location, only store it in a var.
Secondly, you don't specify the function on the timer you want to be called every 2 seconds.
Dumb question but I'm having a brainfart... When you have actor variables which are public and editable, can you edit the values of those variables in the editor similar to the inspector in Unity?
Pardon my wording i am kinda hungover rn
Would you have any example of how to set that up?
Im no C++ expert, I tried to learn on how to inheret multiple classes but cant find any clear examples of how to inherent the asset's plugin into my class.
For example I used the include #PAthToTheAssetCharacter.h
But seems like this is not enough to get it working.
yes.
When they are instance editable, they can be edited from the world outliner
I only want to print that location out, don't want to set it
And i don't really understand blueprint loops
Thats kinda the problem
In that case, its just down to the timer not being provided the function you want it to call.
And how could i put all this in a function?
(Getting player coords, updating the var and printing it)
Ok, be jealous of me guys, am flying off to Japan in an hour’s time, hwehwehweh
Is it possible to do it if it's not an instance in the level itself, and just a file in the content browser?
Create a new function and copy the relevant bits into it. Type the function name into the timer node.
class SOMETHINGAPI AAssetCharacter : public ACharacter // This is the asset character class header
class SOMETHINGAPI AMyCustomCharacter : public AAssetCharacter // This is your class header
And how exactly could i put this in a function?
(I am really a beginner to blueprints)
Have a good one. 🙂
yes, you can modify the vars of a blueprint. There's a few ways to do it but if your not wanting to open the blueprint itself (for what ever reason), you can use the property matrix.
I just came back from Singapore 🥲 have a safe flight.
Click the + button on the function tab in the details panel. If your not sure how to make functions yet, it would be worth you watching UE's starter tutorials.
Ah, i see now!
It works, thank you
Thx! Let me give that a try.
Just curios, is that enough to create the link or do I also need to also force any function on the asset's code to get it working?
I am watching a beginner tutorial, just wanted to do some testing outside of that
If you've overridden any base class functions in your character, those may also be overridden by the asset, in which case you'd need to determine where and if you want to call the Super of the function.
The one thing that you would need to make sure is, since we are merging 2 different classes, you will want to checks for any conflicts of functions. If yes, need to resolve them.
How did you find my home country?
did you come to gamescom?
Oh damn yes I did on Friday
Which booth?
I was there from thur to sun 👍
Did you had a booth?
Indie-07
What game was it
Zombie Soup
@dark drum For some reason when i hit C, and IsDead becomes true, it still continues the timer, why is that?
Left me an impression there
Store the timer handle (the return value on the timer) in a var. When the player dies, clear and invalidate the timer handle to make it stop.
Then you would have probably seen me 😅
Cos you did not have any function to stop it?
lol oh man, what a small big world
can someone help me figure out why my character isnt regenerating stamina? (basta correre is stop sprinting)
I figured it's like a while loop, if the condition (the IsDead?) is false, it stops
Guess that is not the case here
Finally figured out what was wrong in case it is amusing for you. 😄
Before I opened an in-game menu, from which I would press "exit-game button", and then I would load a menu level in the background.
That was the whole difference.
In the BP_GameModeBaseMenu I had the following code:
Changing from Input mode UI Only to Game + UI fixed it all.
My sincere apologies for dragging you on such a long task. 🙂
Glad that you found the issue 🙂
The Red Boxes are "Events" that trigger the underlying code. These events are triggered by certain bits of logic.
"Begin Play" is fired when the actor is spawned, and everything that you connect along the white wire from Begin Play will trigger when "Begin Play" is fired.
Events do not automatically retrigger their execution based on the value of a variable. When changing the variable you can also call an event or function that can execute what you want when that variable is changed.
Thanks again though 🙂
As a guess, I would say when the character stops sprinting, there's nothing that starts the regen process.
Did you call the regenerate function?
Like this?
Yea that looks right
Yeah, it works
Thanks ❤️
Now i understand timed loops
ah, where do i put it?
Like after Basta
doesnt work, it just sprints for a sec and then stops
even after waiting more than 10 secons
That’s because it drains again right after sprinting I guess
You may want to set a boolean somehting like “Ready to Sprint”
Go into sprint only if it is True
Set it to false when stamina reach zero and stop sprinting
Then when stamina fully recharge, set it back to True again
ill try to put a bar
You could use a tick to track the values to see what could be going wrong
@frosty heron @distant hollow thank you guys so much again you are a lifesaver 
I made the same mistake the last time that’s why I know haha
Hello there,
Can someone guide me to any resource for making a light based stealth system (like Thief, Splinter Cell etc) ?
(I tried on both Google and YouTube but I could not find much)
Never played those 2 but is it like a cone fog of war or something?
If I would call this event, would that set the above button back to enabled?
This is marking the entire widget as disabled.
This is marking the Execute Button as enabled.
Some proprietery system that "calculates" how much light (and thus exposure) you got
Easiest would be some sphere overlap + linetrace with interp from 0 to max light value over the sohere distance
But im not sure how scalable that would be
Nor accurate with multiple light sources.. perhaps its ok
Seems fine, just have to build a blueprint that includes a light and a trace
Yepp
"exposure" can be always be in a map from source to value, and adding them together
Not very scalable but i will assume you also wont have many lights at a localized zone, cause you would also have light complexity issue at that point
Yeah exactly
And for broader lights you can use different volumes to maximize light value within such area f.ex
Inside a light up building or w.e.
Not sure i completely understood.
Are you saying making a Blueprint that has a Light as a child and a sphere collider child that when the player touches it does a raycast to it?
Pixel sample the color value from various points of the character and average them out to determine how "exposed" they are.
Gosh, lets goo
Foot, hands, head , ass
Especially the ass. It's always sticking out.
That's what i read the Thief Dark Project did, with a hidden octahedron model using SceneCapture
But when i set the SceneCapture to only see the octahedron then it's not receiving shadows
I have two general/curiosity questions:
- Why is it that in the templates the player pawns cast to the controller to set up the mapping context when that same logic can be executed directly from the controller?
- If you cast to something that is already going to be loaded (say something that's loaded at all times, like the level blueprint or the player controller or something) will it add additional resource consumption/strain or will it just refer to the already loaded instance of the thing you cast to?
Only real reason is because you may have different controllers. If the character requires that IMC set up the way it needs, then the Character should do what it needs in order for it to be set up right.
Good point 👍
hey guys for some reason when i am using mobile joystick in multiplayer, both players control the same character instead of their own
i tried this in both the ThirdPerson default thingy and in Lyra and it happens in both, im not changing any code, just enabling the touch joysticks
As far as the cast, you technically shouldn't need to cast the Player Controller for setting up an IMC as it can just use the base Player Controller class, or you can just call the local player subsystem if you know you'd only ever have 1 player controller active on the local machine. The cost of casting itself is negligible. The expensive part is if you're casting to a class that may not be loaded yet, that has lots of references to other classes or assets that aren't loaded, then that cast can end up costing quite a bit.
Awesome, tyvm for the helpful and insightful answers Datura. Much appreciated 😃
Does anyone have a tutorial / Link for a system that would "Save coins" from last 'play session' and show them in the main menu to be available to spend ?
I think ive just done it very wrong :/ ill look for abetter tut! 😛
In this case, you're always creating a new save game object. You can check if a save game object exists before creating and load it instead if it does.
Would this be how to check ? Also this is what i have for the main menu widget - im guessiung whats wrong is that its not accessing the total coins save reference correctly?
guys i have a problem that is fixed if i uncheck run under one process, is that an okay fix or should i not do that
Yes, but your save game object reference you're using to read the slot name is likely not valid. You may want to not store the slot name within the save game object.
That should be sufficient. You wouldn't normally have 2 people trying to use touch controls as separate clients on the same mobile device 😛
ah okay thank you
Hi, im trying to smooth out the crouching in my first person game but it seems jittery and im not sure why
https://blueprintue.com/blueprint/lgw-sfl8/
is everything about the character movement component replicated?
changing the name in the slot seemed to work -- main menu now showing up with "16 coins" but refuses to add more after another play session
P.s. thanks for all this help
Don't cross execution paths like this. You're effectively trying to read the value from the save game object and add to that value before you've actually loaded the value. That said, if you've already loaded the value earlier like in your load game event you had, you shouldn't need to load it again. Increment the value you have and then save it when necessary.
how can I disable camera movement
incremntal value instead of a 'plus node' ? sorry Im a bit confused with this one
Got it working correctly! Thanks
You need to call crouch and uncrouch after you've finished lerping the capsule height.
hey everyone, how would I assign a material to a static mesh asset? I'm generating it with geometry script and I've also got a AssetActionUtility BP to assign materials to things but I can't find a way to call that from a BP
yes exactly
I've got it working with assigning materials on the dynamic mesh component that is generated by the actor but when I save it out I didn't find a way to assign that to the asset
So it doesnt follow from the dynamic mesh?
yes
well if that's the case let me check I haven't made a mistake
alright well I'm just doing these things but the baked asset has WorldGridMaterial assigned
bake to static mesh function
assign material function
I want to have a variable that controls how much the thing on top happens (I set a variable to 4 then 1 line trace collides 1 one spawn where the other one collided and end where the other one was supposed to end, and do that 2 times more).
If someone could help me I would really appreciate it.
A forloop in a function, with last index as an input parameter (which you do -1 from) ((or start from index 1 ))
How do I handle the info from the break hit from the last line trace to be called when the loop starts again?
in a local variable
alright well turns out I should just use "Set Material" 🙂 with this appended it works as expected now
and I use those variables at the start of the function?
Yeah. You also have a vector input which sets the local variable initially
for the first trace
Where do I put the loop?
Sorry I'm a little lost.
Inside the function
Thank you so much it worked!!!
Ofcourse it did 😄
does anyoen have any good widget sources? im wanting to find out the best way to switch between screens? "Main menu, settings, play"
I prefer widget switcher
but common ui got some new fancy ones that might be interesting
widget switcher? is that a blueprint name?
hi! i was wondering if you could help me out with this one:
so everytime i trynna get viewport size it returns 0 as default value
i just want to set mouse position to the center of the screen and honestly, forums on the internet are not helpful💀
Hi!
If i simulate the physics and add impulse to the player character, how can i make the camera follow it?
(I am a beginner)
My thoughts were that the camera would follow the player, but for some reason it does not.
what's a good way to debug with virtual draws in th econstruction script?
I tried draw debug sphere but their duration is a problem
anything else i can use?
GUYS
i have this npc trader
i click e to open his trade menu
but for some reason every time i click e it opens again
i want to max it at one open
how do i do that
this is the code
oh
i switch the loop body to completed
sorry for wasting everyones time
Hello guys, I'm looking for a grapple hook advice. I tried 3 different types like Linear moving, Zeroing Gravity scale and scripted actor location snapping and pulling like in Sekiro.
My questions are what kind of grapple hook you'd like the most and is there an advice or tutorial for the grapple hook you suggest?
Because my character keeps floating when he collides with something and I have to set/change gravity which is not a stable condition every time
Mine is like this and it doesn't work correctly every time
Is there any way to lower Drag Threshold? If i hold a widget and drag it slowly, operation doesnt detect it or detects late and thats annoying
Okay, thanks
Does someone know why my mouse controls are not working?
They worked before I started using enable input
To turn on an Actor.
How can I show only interface functions I already have implemented?
https://www.youtube.com/playlist?list=PL4G2bSPE_8uklDwraUCMKHRk2ZiW29R6e
I've been attempting to follow this playlist to learn to setup AI stuff in blueprint and there's a bug in my code that I'm not sure how to fix. At runtime the AI seems to be switching between tasks very rapidly and causing the grid to spazz out like a rave show in the perception view. Next images will show the code
behavior tree
random movement
AI controller
HandleSightSense
HandleSoundSense
my guess is that the problem is that one task isn't terminating properly and is having the AI bounce back and forth between the random movement and tracking the player
but I'm not sure where I went wrong
Hello! I have a door that opens vertically. When the player stands under the door as it closes, the door clips through them and forces them into the wall. How best to push the player out of the way when the door is closing?
You could add movement input to the character each tick they're in the doorway while it's trying to close
Or play a little montage
Or teleport them
Or kill them
Or just stop the door from lowering
Extra work with physics but prly worth
I have a box collision inside the door that knows when a player clips inside
or rather I do now
was wondering if there's anything inside the character movement component that knows if the player is stuck in a wall
You wanna get stuck first and handle it afterwards?
Anyone know why linear drive is pushing my cube towards the world 0 instead of the component its constrained to?
perfect
crunch noise and fade to dark red
"Mind your head, dumbass"
If you have a blueprint interface with a bunch of functions, but only some of those functions are implemented on a given actor, are the functions that are not implemented still loaded on that actor or do the unimplemented functions still get loaded?
what i usually do is assign them a group other than default in the interface declaration, then you can filter easy on your functions
yes, they would just do nothing or return the default value which is specified in the interface
Thanks
That works thanks alot
My widget for an upgrades system is slightly tinted/opacity down. The opacity is 100% and there are no tints set; is there any other settings anyone know of that im overlooking ?
there is tint but there's also color
Ok, I'm awful at math and can't figure this out. Maybe someone can assist me. I want to Spawn Actor a certain distance away from another actor but I want it spawned in the direction of another. If that makes sense.
Spawn Actor from A but on one of the *'s depending which one of the other actors the user selects.
I know in cpp you can set a class that it doesn't have a tick function, so it can maybe have better performance.
Is there the same thing with blueprints? I have some classes that don't have a tick node, and I don't want unreal to do unnecessary calls. I know this is premature optimisation, but I'd still like to do this
Are there any global variables in blueprint? I'm unsure on whether to use GetPlayerController>GetHUD>Cast to do global things in the UI, or to pass down variables (which will give unnecessary variables to UserWidgets that may not need them, but they have them just to pass them down to children)
I have an bp(G) as part of another bp(A). Can G spawn objects and not have them be children of A?
Thanks for your YouTube tutorials man, they have been a great help.
Hello, how to prevent material index trigger? even I did not connect that but it keeps triggering. I just wanna based on mesh index. Thanks
Hello, how do i mirror 2 text block but different widget bluprints?
Can I somehow use these on just one instance of the instanced static mesh component?
thnks
Don’t really understand your question. Wdym G is part of A, is it a child of it?
- There’s a tick check box you can check off.
- If you know it’s premature optimization…
- I doubt there’s any calls being made if you have nothing on the tick event
I think you can make bp libraries if you need global stuff
Is something wrong with this function inside my animBP?
I'm trying to make my character's head follow my camera's aim
But the results are not correct:
Hey! This might be a totally braindead question (I don't know much about BPs or Unreal, just a C++ programmer). I'm trying to inherit from the base character movement component, and I figured the way to do it would be by changing it in the BP. Now I realize I should be doing it in C++, and ever since changing the component in the BP, my movement has completely broken.
I cannot figure out how to set this component back to the base character movement component. Does anyone know how?
Get rid of the one you made and add a character movement component. And ideally you shouldn’t touch it
It wont let me delete it, is there another way to remove it? I considered editing the uasset directly but have no idea what consequenses that might have.
You might need to make a new char class
Hmmm, I'm guessing there's no easy way to copy over everything from this one, either?
You can copy paste the code and the components too prly
Might need to manually remake the vars where it doesn’t ask you if you want to create them
If I'm not mistaking you can't find structs this way in blueprints? because you can't compare structs in blueprints iirc. Also it returns -1 if it didn't find anything
yeah i just needed to see if an element in the array already existed, didnt know there was a contains item node :)
bumping this because it's making me actually lose my mind
@lunar sleet In the end I used another approach. I ignored the spline points entirely and instead created my own
Maybe state what you’re actually trying to do and what is happening instead
I did say - I'm trying to make my character's head follow my camera's aim.
And I showed a video of what was happening instead
The character is looking in the wrong directions
the exact same tickbox as cpp. Look into the class defaults
invert then
though I don't know how +90 play in the calculation.
I've tried inverting, it doesn't fix the problem.
This is how I'm calling the function.
and how are u doing the invert?
Yes, but I figured it out. Its not attached so I am good. I had a math issue that was making it look like it was same place as the A.
I've tried it various different ways, all using "Invert Rotator" - I've tried using it after "get control rotation" in the event graph, after "make rotator inside the function, or before the return node, or before "break rotator"
No differences
maybe you can invert one of the out values axis. Break Bone rotator , invert one of the axis then apply it to head rotation
Do it after the function
Did you watch the values at runtime to see what actually happens? RInterpTo doesn’t work the way people expect
How do I invert one axis specifically?
break the rotator and multiply -1 to one of the axis
if that don't work then I am out of ideas
how would I then reapply that to the head rotation? I can break the rotator but the output are 3 individual pins that don't connect to "set head rotation"
You break the head rotation too
then connect each of the 3 floats
Anyone know how to check if an asset has a child component? I'm trying to make a simple pickup system, and I want all "pickups" to have a special BP_Pickup_Component, but I can't figure out how to look for a child component. Because when I'm using the "Cast_To" that doesn't work. Anyone know how to do this? So I can make a check and look for certain child components. I feel like this is something I will need more often as well.
What kind of component are we talking about, can you send screen shoot?
When I use this logic, I get results like this 😅
Yeah because you didn't connect the pitch and yaw
Results are similar no matter the axis (screenshot is from using Z)
it will always be 0
connect the Y to the Y and Z to the Z
also if that didn't work, multiply the -1 to the Y or Z instead
@frosty heron It just looks like this:
k So that's just component
You can get a ref to that actor and use GetComponentByClass node
Try the Yaw maybe or Pitch, I don't think Roll is the answer. I m still confused at Rotation and Rotator, they don't really have the axis in the same sequence
in rotation we normally work with the Z for left and right
Wait, can't I somehow just always check for if the thing I overlap with has this child component? Rather than having to get an actor reference all the time?
You can, the "thing" that you overlap with is an object reference
get that thing -> Get componentByclass
Putting a yaw invert there simply changed the direction the character is favoring, he still rotates incorrectly
Try the pitch X_X and 🙏
Show Screen shoot of what you have, im sure ppl can help. and dont be sorry, the learning never stop
This is what the yaw invert did - the character was previously looking the opposite direction
Try to invert the pitch, if that don't work then I am sorry don't think I was of help
I have two aim modes with the character btw, when I right click I enter "over the shoulder" mode
the logic should stay the same as you only care about the control rotation imo
Invert the pitch and see how that go
actuallyyyyy
If I invert either the pitch or the roll, my character starts leaning to the side
there is something that we might missed
you have to put into account the rotation of the character
I will share my head rotation code in my old proj
That is what I have, but that doesn't work, so I don't think I have understood how to use this.
but mine was done to look at a scene component in the world. When a player come in certain distance, my scene component snap to the character head socket.
Enabling the NPC to look at the player
Do you want to DM? So as not to interrupt support requests in this channel?
We are not intterupting anyway, you are gucci man and I have to go soon :(. Gonna leave what I have before tho and you can play around with it to see if that solve your issue
i was struggling with it too when I started itt
then finally worked it out by accounting for rotation
From the other actor , drag the blue pin then type GetComponentByClass
there is no need to cast here
Casting is a type check
What you are checking is to see if Actor X HAS Y Component
@narrow cove
But I'm not sure how to say "it's true"
Ok with your use case is a little different becausae u already have the look at rotation
Can't seem to figure out why my "Open level by name" won't work in a packaged build, but it works fine in the editor. I've spent quite some time searching through old discord topics/google and seems nothing I try work. I have all my maps added to the array in project settings. but It still won't load. I've got a "new game/Load game" option in my main menu. and if i try to load the game it will just reload the main menu level. O.O
In UE5 I believe you need to use "Open Level By Reference" and not by "Open level by name"
I will give that a go!
Have you added the map in the Map & Modes project setting?
if you don't list the map for package, you will end up with shipping build w/o the map
Ah, does by name not work period? damn. by ref does work but. if i try to do a bool check or something to see which ref to load. Then it stops working on me again
Yes I've added the maps to the project settings, but still it don't work for me 😛
actually its in "packaging" setting
But yea, try to open level by SoftObject reference
hard coding map name is meh
Where do I go from here? @frosty heron
Yeah I have the maps added like that picture you've sent
ok, so it's probably not invert problem, I will start by deleting those break rotator and make rotator then GO inside your Get Look Rotation function
ohhhh
Get Owner Character -> Get actor rotation -> Break Rotator -> A Result
Get Control rotation -> Break Rotator -> B result
Subtract B.Y with A.Y
Subtract B.Z with A.Z
cold summer, is this fine?
@narrow cove Still need revision I think, the subtract might be the other way around and I believe it matter
did it work?
yap
get rid of both adds?
OH
How do I turn this into a bool so I can do a branch?
It's worth noting that the HeadRotation variable has a default of 90 in Y
I was following a tutorial, and this was necessary to stop the character leaning
but i cannot get to display the textbox from the hidden BP to the main widget bp
Check if it's Valid
Empty/NotValid = Don't have the component
This logic works better than anything so far
You can make a pure function that return bool if that's wat u want
🤔
yeah im suprised why the +90 makes what you have previously work (except it's inverted)
seems like you need to add offset to it
Still not right
But a bit better
The two 90 degree additions are something to do with the character leaning
The HeadRotation variable has 90 in its Y axis by default
I would try to print the values and work from there. gtg now, sorry that it didn't help
Create the text box widget we had previously and add it to the children of the Box that you want to add to
@narrow cove More spaghetti but I inverted the roll and leave the pitch to 0, maybe that does something?
from my case I just need the player to look up and down, left to right. Don't want any tilting effect it break stuff on my end
will try to have a go at it tonight on empty project if there is time
Thank you! Now I got it! 🙂
Quick Question is there a way to make source sprite come from a tile set?
im trying to make special platforms in a 2d game and would like to use the tileset or is it not possible?
If you have a blueprint, that creates other blueprints (childs), and you need the child to know about the parent somehow, should you pass a variable reference down to the child? Or should you pass an event handler, which the child can call to get the parent, or to do certain things in the parent, without having to know the parent?
I'm leaning towards 2, because 1 isn't good because its circular dependency, and if the parent is removed somehow, or the child's parent is changed (the parent will still refer to the child), the 1-to-1 relation breaks
In order for a blueprint to do something in another, it must have some form of reference to it or a means to get that reference.
Your best bet is to create a variable that can hold a reference to the thing that spawned it and use that reference when you need to reference back to the thing that spawned it.
Anyone know how I can destroy my projectile if it goes outside the camera? I don't want the player to be able to shoot things they can't see yet, but I'm not sure how to do a check inside the projectile if it's outside the camera view?
@silent drift "Recently Renderered" maybe. Or see if Deprojecting World to Screen gives any info if it's outside of the screen.
Will try thanks!
Hi, i want to make a game with "active pause" system
(when i press "E" game pause and wait for me to pick option what to do, and then unpause and execute)
How to do that? Im trying to use built in "Pause game" node but its freeze all logic and i cant press anything
If you are using the enhanced input system you need to set "Allow in pause" for the input to work.
Then you can still do input during pause but keep the actual game paused.
Thank you SO much!! there is so much stuff in unreal i wounder if i would ever know it all
I prefer not using pause as it can cause all soets of side effects 😅 never like it
What side-effects are you talking about? Because I know quite a lot of people using so I'm curios what you have seen break.
Not 'break' but not working because its paused 😅 i cant really recall, its been really long since last i tried it
does anyone know why adding a pawn to my level could cause the player start entity to stop working and the camera to get hijacked by it?
There is an automatic possess setting on pawns. If it's set to player 0 that could be doing it.
weird, I had figured that and set that to disable override on the instance of the pawn in the game world, but double checking in the pawn blueprint it was set to player 0, and changing that did fix it. Does the setting in the blueprint override the one in the main level? I figured it would be the opposite.
is there a way to get what nav mesh modifier volume a character is in? i'm using the modifier volumes to denote areas but want to use them to detect what area the character is in.
If you happened to place it in the level first before you changed the setting in the blueprint, then the one already placed may not necessarily update its settings based on what you changed in the blueprint.
no it did, but it seemed to ignore what I set on the one placed, which is what is confusing me
a quick question this doesn't have any interpolation when setting actor rotations right?
I'm trying to make a dash blueprint which triggers when you click the left mouse button. How would I make it so that the blueprint actually triggers. Nothing happens when I click, even when I take out the launch velocity stuff and just set Z to 1000, it does nothing
hey guys "apply Radial Damage"
i dont get it why it only hits 1 target*
they are identical
hi there i'm looking at creating an inventory like a book you take out of your pocket
can i follow this ?
We are revisiting one of my first series on the channel; the inventory system series, this time with different implementations, improvements, and now in Unreal Engine 5.
In Part 1 we set up the inventory component and some of its core functions and variables that will be in use.
SUPPORT ME
Patreon I https://www.patreon.com/ryanlaley
Buy Me a ...
and then repurpose it ?
Input doesn't automatically trigger on all actors, and in this case, this doesn't need to be an actor and could instead be an actor component that you add to your character. You'd then have your input defined on your character which would then call into the component to execute the cast which should reference the "owner" and cast to character to read the values you need from the character movement component.
Inventories are all the same. The book is only a visual representation
Keep that in mind 🙂
ok thanks !
Not enough information to go on. Visually representing your inventory as a book doesn't really play into how you want your inventory to work in the back end.
Ryan's tutorial is simply a structure based inventory where you define items in a data table, and the inventory is an array of ItemID and Quantity, allowing you to look up the data table for details about the item and are able to have items stack in the inventory. He then wraps this all into a component so you can give an inventory component to any other actors so they too can hold items - like if you wanted to have treasure chests or shelves. At the end of the day, he provides you with a simple "grid" style inventory where each slot holds 1 item of a certain type, and can have a maximum stack amount held within that one slot, if the item is stackable.
ok i see thanks a lot i understand! i'm thking about diegetic i want this to be..
Doesnt sons of the forest or smth have a pretty diegetic inventory?
Isnt that the bag you opennon the ground or whatever
Yepp
oh yeah tha'ts nice !
A book for items doesnt play nice for diegetic
but actually my game is pretty low on inventory so i was wondering maybe i don't need one after all and you could just carry the stuff in your hands, even more diegetic i guess, or maybe stuff them in your coat and be able to open your coat
Unless you only want item info in there
you are right
Most things beats a book imo 😄
It can.... Like, a notebook where you have a list of items and quantities of those items 😛 You don't have to see the item directly, but it's still within the context of the story.
You could. lol
i love those kind of stuff
I don't understand the enhanced input stuff, I have an IMC created and an IA created, but idk how to use them properly on the blueprints
I have EnhancedInputAction Dash_IA and that's it
In blueprints you need to first "set them" (one second)
So you can access them, aftger you have done that.
Ok
Let me know if you run into any issues, I'm also new to them, but have gotten them working and I believe I understand it. 🙂
Ok
So this goes into the same blueprint that I'm using for the ability?
Wherever you set all the input
Is Anyone able to see something i've potentially missed here? I'm trying to do vicinity item "inventory" that only shows all the objects of a specific class. The items to show are taken from a Sphere Collision box around the player and then if the actor matches the ItemBase class, it'll add it to the Vicinity UI. Currently it seems to be adding the slots, the slots are just not visible for some odd reason of which I can't figure out myself atm. The Refresh event is located in the Vicinity Slot widget and the other 2 screenie are located in the Vicinity widget that creates the slot widgets.
could someone try to explain input and output in functions ?
I'm using a different blueprint per ability, each ability has a different key, so does it just go in each blueprint?
i understand in mathematics like input and output but not in unreal
Or do I need to make one central universal blueprint
like i'm making an interface so that the player can pick up objects but what does the input in the function means exactly here
I believe you will make the first part in the "main" bp that has all the abilites.
And then you do the enchaned input per ability
But I assume you have a BP that all the abilites are attached to.
No lol
So how is your setup done?
Because I'm not sure where to place it, based on so little info. I mean, you can also simply trying to set it in each and see if it works for y9ou.
But I haven't done that, so I'm not sure.
Tbf, I'm not all too sure on how to do this, I'm pretty new to blueprints
I've got a folder called Blueprints with Enemies, Movement and Object foldera
Movement is where the Dash_BP is
I have Dash_IA and Input_IA in the root content folder
Input: Data you want to pass into the function. Your function can use that input variables and do and calculate what you need with whatever you input.
Output: Data you want to pass out of the function. Your function can return whatever variables as output from your function, including anything you may have calculated within the function itself.
It doesn't really help me to understand with how they are sorted in the content folder.
The question is how they are setup, let's ask like this. Did you have anything weorking with the old-input system?
@dreamy mountain
No
Ah, you need to first look at some basic how to use Blueprint tutorialk.
Because the content folder doesn't help me understand what you are trying and such. I suggest looking at some example projects from Epic, and Youtube tutoprials.
Because otherwise you will struggle even when getting answers. When you know some basics you will get to a point where you either don't find the answer, or need help with something, then itä's a lot easier to help and work. 🙂
I'm far from a pro (I mean really far from), but I have gotten a fundamental knowledge how it works and slowy geting how it needs to be setuåp
Slowy, so I'm still asking load of dumb questions here. 😄 But it's usually answers I can't find googling or just don't really get.
I spot an å 👀
ok thanks a lot i'll meditate on this
Scandibavian inhabitor, Tobi?
Me? Then yes, or well, from there, but living in Germany. 😄
🇧🇻 here
Ah! 🇸🇪 here, but like I wrote, been in Germany for almost the last 10 years. 😄
Hey! A very noob question here that I can't seem to google (probably I'm just not googling correctly). I have two floar variables where float1 is 10 and float2 is 5. The blueprint is working nicely and gives the correct value that float1 is greater. Nice! But as you can see I have a greater or equal node there. How can I set it up so I can print "float1 and float2 are equal" when I change both floats to be equal? Thanks and sorry for low level question!
I'd stay there even for just their beer lol (altho micro brews are doing rly good in norway last years) anyhow!
Compare float
any clue why i cant use the poseableMesh component with the set skeletal mesh asset node ?
im following a tutorial and he can do it
they are different Set Skel Mesh nodes
I tried googling, but didn't really find any answers to this (I'm using DuckDuckGo and I'm not sure if it's a good choice or not. :D), but is this how the "Was Recenently Rendered" should be used? Because now my object never even spawns as it's counts it as not renenderd when I press "shoot". I would just like to make sure the player can't shoot stuff outside of the camera view.
i know but its not there any more
What is the object type of the Posable Mesh that you're trying to plug into the set skeletal mesh?
can you pull off of your Posable Mesh node and Set Skel Mesh ?
actor
That's why.
not there
Target needs to be a skeletal mesh component
how
he did create a actor too
That's fine, but "Posable Mesh" needs to be of a Skeletal Mesh Component, not just an actor reference.
In the tutorial's case, it's definitely a component of some kind.
This works, but I almost feel like I'm cheating the system rather than using it correctlyu
so i should try skeletal mesh actor instead of actor
Well, I'm now doubting that you have it as actor either.... As you have this...
Can you hover over this and screenshot the type?
could someone help me and give me a starting point for a blueprint that would have a point light in it and then be able to reference that in the master material of my volumetric clouds in order to have a lightning effect?
i tried to do it in a skeletal mesh actor but still the same
Ok, so in earlier versions of Unreal, there was a "Set Skeletal Mesh" function that worked with SkinnedMeshComponents, which PoseableMeshComponents were a child of.
You see how this here has a target of "Skinned Mesh Component"? That means the function is looking for that type or a child of it.
SetSkeletalMesh for Skinned Mesh Components was deprecated in 5.1. so that function no longer exists.
Now that function is present for Skeletal Mesh Components, but they aren't in the same heirarchy as Poseable Mesh Components, so you can't use that function with Poseable Mesh Components.
Hey guys im trying to do a line trace from the direction of my actor plus "500" in the looking direction
As to why that is, I have no idea... But it doesn't appear that you can change Poseable Mesh Components at run time.
what am i missing ?
get actor location
You didn’t add your actor location to it
(to both the start and end)
but im getting the actor foward vector ?
of "self"'
isent that like the same thing ?
thats 1 unit in a direction
looks like there is no way to achieve this one
gonna try another one
zoom out some
gonna try it thank mate
I had issues with that only hitting the first object and it would stop too, my solution was changing from channel to object type
that changs the skeleton not the skeletal mesh
@vital cargohm i guess but i mean it should work or mby im missing something ?
I couldn't figure it out, it just always stopped on the first and wouldn't return the rest for me. I tried Block and Overlap on collision settings, same results.
Multi traces hit everything with collision overlapping the given channel, and stop on the first block.
hmm, this ?
it says "all hits encountertered" ?
and including first blocking hit
whats the difference between a sphere trace and a multi sphere trace if it dosent return more hits O.oi ?
a multi trace does hit more
a sphere trace ignores overlap, and only returns first block.
a multi trace returns all overlaps until the first block, which it also returns
hmm'
or change to this, add the object types and it will return them all.
Obviously sphere not box
aye
That was the work around for my solution. Still does same stuff, you just need to make sure you have Object Types made for what you want to hit
aye, hm how should i make that array then ??
if that one returns them all including first block, you won't need an ignore actor array
Object types array can i base it on a parent class ?
otherise you can make it by dragging off the actors to ignore, and typing Make array and it will give you a node to add things to, then you on IsValid -> add to array and break your loop
could make a variable and make it of Actor type
AActorsAlreadyHit
or something you want
It doesn't go off a class, it goes off the Object Type you set for the actor E.g. StaticMesh/Pawn/Dynamic/etc
That's only if you still need to ignore your first hit
Wheelie said the other function returned all not just first block
Yea all actors within the specified Object Type array you set.
Anyone know why I don't see my nav-mesh? (It should show but isn't), So I must be doing something wrong.
It looks like i*m in "Water region" or something, which I have no clue what it means.
Sorry, wrong channel
Hey guys, does anybody know if there's any way to apply more than one material to a Procedural Mesh other than creating multiple sections? I believe having multiple sections would add unnecessary vertices, unlike meshes you can create in modeling software, where you can just assign materials to faces independently and without the need of separating them. Thanks!
yeah thats it
nice , yah , they usually don't depreciate something unless the have a substitute method
Anyone decent at math and can help me? 😂
I'm trying to make an Actor spawn between A and B/C/D/etc I don't want to add a scene as spawn point because it doesn't make sense that way. I went with Linear Algebra and I that did not help. It doesn't spawn in relation to the 2nd actor
Hey, I have a very annoying problem...
I have a bunch of weapon BPs (Image 1)
And I'm getting them in code via this logic. (Image 2) (and it works)
However, I have a child actor component, and I want to set its class to be whatever I select from these blueprints in the code.
I already tried several things, but I'm unsure of what I may be missing to do this...
I can't cast to blueprints, and I think that makes sense, but I still want set the actor class somehow.... (Image 3)
Input: String-> Rifle
Output -> BP_Rifle (but this is an OBJECT class)
Now I want to somehow use this to convert it to an "Actor Class", to pass it to the child actor component but I don't know how.
Please tag me if you know the answer.
what do you need ? a formula for:
(Halfway between Point A and Point B)= Point C ?
(Location 1 + Location 2) / 2 should give you the midpoint i believe.
Yea something like that, but not exactly the "middle" i'm after but that should be an easy adjustment of /2 to something else. I hope
God i'm awful at math 😂
Vector math is.... more
honestly, just avoid Child Actor Components
Ok, thanks. That got me the mid point, the rest is just adjusting now
I was literally laying down in bed last night reading Linear Algebra to see if I could figure it out, I still can't understand it . Thanks for the help
Ok, good to know.
But that's besides the point.
cuz why can't I spawn an actor, from an asset that is a blueprint of said actor?
I just don't think that makes sense, so I want to know if this is really impossible, or if there's a way to do this.
Youre probably going to run into issues with this in a packaged build
you shouldnt be trying to ref assets by name
there seems to be a bit of an XY problem going on.
hello does anyone know how to use this node?
odd. you should have a little dropdown that lets you select a function signature
Just had UE crash while fixing redirectors and now I have duplicate assets. 😭 Pray for me. lol.
its ue4.26 i dont know if it is present at that version
Not sure what this means, please enlighten me 😦
i pressed something and i cant see Print debug messeges anymore 😦
it basically means that the issue you're having is caused by an attempt to fix a larger problem, but your attempt is a misinformed way of going about it for example.
with that being said, what is the larger idea you are trying to achieve here?
You plug it into something that has the Delegate pin (the red box).
Like so
oh to get this drop down i needed to coneect with it a delegate
ty got it
EnableAllScreenMessages in the console
Basically I want to access these weapons by name. (Input String of weapon type)
This is because I want to allow my fellow team mate designer to add however many he wants, without having me to specifically also add the new weapon types he adds into the code.
So it's basically a 1 time thing I do, which works at any time, with however many changes the designer does.
Yeah I definitely wouldn't reference these all by name.
Perhaps look into something like a data asset. You could even have something in UDeveloperSettings that holds an array of all the data assets, or just another data asset for this.
You could also use data tables, and just fill out the weapon information.
This way you could have one weapon base that changes how it works based on the data asset it uses.
Lerp maybe?
aaah I see.
ok, I get what you mean... having a single BP_Weapon, which behaves differently based on the data asset it reads.
hmmmm.... I'll have to think about this.
Though wouldn't this make the BP_Weapon over-bloated?
like for example, a flamethrower acts differently than a rifle, from so many things like vfx and sfx, and even how/when damage comes out.
wouldn't that mean I need to write all of the weapons logic inside of the BP_weapon and only fire the part that's related to the weapon type?
Or are you saying I can run code inside of a data asset? (Cuz I previously only used it to store/call info)
you can have functions like that. but not what i was getting at
but when you break it down into code, how different is it really.
code wise a flamethrower is just an automatic rifle that fires really fast with a different mesh and muzzle vfx, and deals fire damage
you might get some branching for cases such as projectile weapons like rocket and grenade launchers
hell, even just using a proper weapon base will do
with all overridable functionality
then you don't care how each weapon fires, you just call fire on the base
hey friends, i'm working on a u tility blueprint deriving from EditorValidatorBase.
I want to run validation on UWorld objects. I override CanValidateAsset to return true if the class of the asset is World.
However in the ValidateLoadedAsset function i'm not sure how to convert the object passed to it to a World object. Am i doing this incorrectly?
I may have forgotten to mention that they all inherit from the same BP_Weapons_Master class.
So really inside of each bp you see is only muzzle flash niagara component, which is placed under the mesh of the master (Image), and custom code that determines what VFX + SFX to fire, and what projectiles to fire (If the weapon should shoot a projectile)
It may not be exactly as you say, but it's very very similar in a way.... right?
code wise a flamethrower is just an automatic rifle that fires really fast with a different mesh and muzzle vfx, and deals fire damage
For me I think it hurts my brain if I try to condense stuff like this a lot, so I prefer to have a BP for each weapon with its own VFX + SFX stuff and how it functions, so that I know where everything is, and keeping things organized.
oh and I do have the "fire weapon" which does exactly as you described.
Anyhow, was this what you meant I should do?
Keep in mind I'm not making a shooter game, but an rpg game like Fire Emblem and such.
I don't know why I didn't think of that, not sure if it would work but I just used the formula that Ryck0Shae gave
pretty much. as long as it works and your asset refs in the master bp are null (you dont want meshes of vfx in there) and you are moving away from referencing by strings, it should be absolutely fine for your use cases
Okay awesome.
One last thing, you said I may face issues if I kept using reference by string.
Like, what kind of issues? just so I can be aware of what I'm doing.
@thin panther I should have probably pinged you for this ^^
Well first you're prone to mispelling, which can be very annoying to track down. Secondly. paths and names can change in packaging completely breaking things
Id think most if not all projectile based weapons can run on code from a master bp
Changes a bit with something like a chainsaw
Rest would just be data changes