#blueprint
1 messages Β· Page 63 of 1
Based on my needs as commented above
I can only explained at the best of my ability what mpc and dynamic material is. I cant help you if things r stretched in your dynamic mesh
Ok tks
You were given advice with mpc earlier, if u have multiple actor that use the same material but you want different UV tiling, u cant do that with MPC
Would appreciate if anyone could shed some light on this
Got it
can someone help me, I make a camera shake using Legacy Camera Shake, and I make the camera go up and down z axis when walking, but when I look down the camera the camera still go z axis but when you are looking down the camera rotate so the z axis is not above anymore.
There must be a way to use the Local axis of the camera for the shaking
Does anyone know why when I use my webBrowser plugin the page loads blank?
How can i get a specific collision box on the other actor from hit component?
You can utilise tags for this. Click on your collision component and add new tag like this
That works. Thanks!
No worries!
I followed a tutorial to create a grabbing mechanic in my game, but I have two issues. First, there's a bug causing the player to fly when standing on a grabbed object. Second, I want the object's mass to influence how easy it is to lift, push, or pull. Can someone help me make these modifications?
hi everyone. My unreal shows this but the tutorial im in was doing the old input ones, can i still tag along with this going forward?
This is for C++
Anyone up? Need some help
Why not just use the new input system?
U don't have to follow everything from tutorial especially outdated one
the old input system and EIS are quite compatible when it comes to conceptual, you can translate what he does to EIS
oh ok i try. thanks you two!! because i dont know how to really convert it to the new input system. kinda worries me hahaha. but i will try first. thanks again
is there a difference in an animBP between deltatime and GetDeltaSeconds ?
oh, I guess the latter accounts for time dialation
They are the same value. You just have a direct reference to it in any tick function.
doesn't seem to be the case, delta time is since last frame, delta seconds adjusts for any time dilation that has occurred
Perhaps I'm confusing it with the cpp variant. Hovering over the node will tell you what you need to know.
you're giving the tooltip too much credit.
are you using time dilation?
I need to ensure that the character rotation is able to handle it
My experience has been that adjusting global time dilation extends to timers and delta time values.
I really need to expand my ssd so I can reinstall all the symbols
I think that's what they're going after in lyra, if there's a slow down you still want to be able to look around even when moving slower maybe? eh, if I remember I'll test it later
Ah so you want to retain a dilation of 1.0 for some behaviour when dilating below 1?
If so, I'd handle that by multiplying the value (say rotation) by 1/current dilation.
that's the theory of it at least. Right now we're just rebuilding a lyra-esque anim framework
with all the new warping and locomotion goodies
Give that a go then. Should work on theory. If your global dilation is .5, multiplying your yaw by 1/.5 (2) should always give you a relative dilation of 1.
Hello! This is how my BP works:
https://blueprintue.com/blueprint/o6t_0hp1/
https://blueprintue.com/blueprint/p4jd52_0/
https://blueprintue.com/blueprint/3wgfj-hp/
And I want it so that when the Player clicks 'Confirm' Button, it subtracts the Price of the object the player is currently building from the Love (currency)
How do I do this? I've brainstormed a bit, but it doesn't seem like i can figure it out. Could somebody help me? Merry christmas!
Btw if you need more information on how the blueprint works together or something, just tell me ! π
Okay, so I've tried to figure something out, but it gives me an error (You know? That one when you compile, it shows an icon of an error) Here is the blueprint, would be very appreciated if someone could take a little look at it! Thank you! https://blueprintue.com/blueprint/jzlrc8fp/
Okay so I've tried adding an array into the Get node, but I want it so that when the player doesn't have enough amount of a variable, then he cant build, but when he clicks on a building he cant build, he cant build it, but when he levels up he instantly enters build mode, let me show you in a video. https://blueprintue.com/blueprint/lvfbexbr/
Sorry for the weird message, I've tried to post this in another server but they couldn't help me, so I've made a little recap on what I did to the blueprint, would be super appreciated if someone could take a look. Thank you!
Why this is not working?
In the debugging i see the value changing and being stored in the Health
but then it doesnt actually change it
because the loop doesn't give you a reference
use a get reference node on the array and use the index from the for loop
that might work
Given itβs a bp struct
yes its working. thanks
yes it works
because it seems to get the struct by reference
so it changes it
the iteration without get seems to copy the struct
yes π―
i saw that, and i'm happy that you removed it π
lol it was too big
I followed the Epic documentation to automatically respawn my character on death
Now, I have 2 problems
- The Character respawns, but not able to posses it
- The Character only respawns on one client, on another client its invisible
Can anyone help me with some questions about UI?
Where would I normally store the various states of UI visibility, or who would be the "owner" of the widgets I create?
Is this the intention of the HUD class, to manage all GUI?
Im trying to shoot a gun, but need it to have a cooldown time.
Im using get world delta seconds but that doesnt work, its very off.
Should i get the time and store it, then compare it?
Whats the time node for this situation?
Use timer by event, I think it's a lot easier
You can set a variable eg CanShoot to false after the timer node, then the event can turn can fire back on
yea you can do that, but you shouldn't
https://www.youtube.com/watch?v=uRPc574DqSw How to do this to a sphere or pipe that you cannot jump on?
What is Can Character Step Up / On and how do we use it in Unreal Engine 4
Source Files: https://github.com/MWadstein/UnrealEngineProjects/tree/WTF-Examples
Note: You will need to be logged into your Epic approved GitHub account to access these examples files. https://github.com/EpicGames/Signup
Could somebody please help me with this?
i am trying to cast to my hud from my gamemode but i have no idea what the wildcard would be?
Not sure, but I might have an idea
So
Make a variable
Make the type 'W_PlayerHUD' and make it a class reference
let me know if that works
i did try but i dont think it will plug into the object, the variable is exposed and instance editable
Oh your right, it must be an object reference. Is the HUD in the level itself?
yeah man the huds in the level
Yea, then you should make a variable with the type 'W_PlayerHUD' and make it an object reference, and in the viewport select the 'W_PlayerHUD' as the variable
yeah im spamming out here, i got so many widgets i was trying to create variables fro the inventory widget
thanks man,
So that works?
i dont know man, im trying to find where the hud is at lol,
Ohh okay, let me know if you find it and if it works, glad I could help, not that of a pro in UE5 myself, glad where I can help π
the hud is associated with the player controller
so get the playercontroller and get the hud from there
->
no, i wont read all that now, sorry
Ohh thats okay, its a long story lol i completely understand
sorry man, i know you need help too, the hud is created in the controller, but the actual hud must inherit from another class. No idea what though?
ohh thats fine! Eventually itll work out (: let me take a look at the img
Okay, I might need to know a few things
create your hud in the player controller
it is
i also suggest using components and librarys instead of casting
I think this is out of my knowledge guys, sorry i couldnt help you further (:
thanks buddy
lol nah you were, its got to be somthing super simple, it just eludes me
Yeah, you just have to know the fix and it would never happen again
If it would, its also okay ofcourse
why do you need to get the hud?
i need persistant lives which need to be stored in the gamemode, it makes no sense because its created in the controller
maybe this?
thanks bud, im mythed
im tripping out what the hell is the HUD? i have no HUD?
you make the W_PlayerHUD , right?
i never made it, it was from a template
it probably has nothing to do with the built in "HUD" other than the similar name
can you cast to a umg widget?
try the Get Widgets of Class, and get the first one
i did try that but bear with
sorry man im a bit of a noob here,
it does print so the flow is working
mm interesting it dosent remove the hud?
how many are there? You're just removing the first
print out the Length of the Array
gonna need to loop over the array right?
nah, length
are you trying to get the hud ?
if length = 0, then you are looking for it BEFORE it is created, thus not Removing it
If length > 1, then you are creating multiple HUDs, which is bad
its 0
not 'The' HUD, just a custom widget
plop a Delay, or Delay until next Tick, node before your Get Widgets of Class node
o yeah - it removed the hud!
so i can just leave as is? That cast is successful, right?
hey guys i want to paly the shoot sound but it does not play well i think its because of tick
No need to cast to W_Player_Hud, you already know it's a W_Player_Hud because that's what you asked for
no need to add a component, just play the sound
thanks im really confused though because i need to call variables from the hud
casting just checks if it is the class you cast to
you already know it is
didnt fix it its still plaing the same
show current code
i dont understand how the controller knows where the hud is without a cast though?
you asked for all widgets of class
so it searched and gave you everything that is of that class
do i need to keep that?
you know the results are of that class
What are you actually trying to do? What you're doing doesn't seem right.
i am trying to set up player lives in the bp_gamemode so it carries across different levels, i want to set up the life logic in the bp gamemode, so i need to get the life variable from the player hud.
hold on - this works
i fixed it it was because of tick i pasted the sound in another event
Hello everybody! Im trying to make a reload system for this cannon but i'm kinda lost. I want to click to a cannon ball, spawn the fuse and then fire. I can do it only one time, but what can I do to make this sequence repeat itself for each different cannon ball ?? Does somebody have an Idea what I can look to?
@versed sun @faint pasture Hey guys, thank you very much for all your help,
I have made for every single cannonball on clicked to to something. I can destroy them no problem on clicks, but cant respawn the fuse
How many actions does the player take to do the sequence? Just click the ball and it spawns fuse, lights, fires? Or does the player gotta light it?
First off, when you see repeated code like this, it means you oughta think about making a function or event
actually clicks ball, show fuse, clicks fuse and fire 3
im very new to blueprints
Make 2 events, call them LoadCannon and LightFuse
ok I will search on how to do that then
LoadCannon should take as a parameter one of whatever those cannonballs are, a static mesh component I assume?
just right click the graph, add custom event
Also, on begin play, stick all of those cannonball meshes into an array so you have an array of the cannonball meshes for use later
just make array, and drag a ref to each of them into the make array node
LoadCannon would check that the array contains the passed in static mesh component (so you cant just call LoadCannon passing in the frame or any other random mesh, you check that it's one of the cannonballs)
Then it'd hide that cannonball mesh or whatever you do to make it go away
then it'd set a bool bIsLoaded true, and show the fuse
You'd also want to branch on bIsLoaded before this to make sure you can't load a cannon twice. If it's loaded, just do nothing when you try to load
LoadCannon -> is it loaded already? -> false -> is the static mesh that got passed in one of the cannonballs? (check if it's contained within CannonballArray)-> yes -> hide it -> set bIsLoaded true -> show the fuse
just a quick question, by the looks of it you cant actually cast to a hud can you?
do you know what casting is?
cast WHAT to hud?
casting isn't like casting a video from your phone to your tv
casting is a question "Is this thing actually of this class?"
You can ask "Is this character a HUD?" and it'll be false
If by HUD you mean a widget you're calling the HUD widget, then yes you can get some random widget and cast it to that class. If it is of that class, it'll succeed, then you can do HUD widget stuff to it.
i thought casting was just getting a reference to another class to share information between them?
no
@faint pasture Thank you for the info I will try to implement it. In order to summarize. I all all the balls in a array and then make two custom events with the if's ?
Start with the load cannon event
I sketched it out above
cool cool
Casting is when you have a reference of some more general type, and you want to check if it's a more specific type, so you can treat it like that specific type.
You have an Animal, you want to tell it to Bark. You cast it to Dog first, and if it succeeds, then it was a Dog, and you can call Bark on it.
If it was a Cat, the cast would fail. But either way, it's still an Animal.
yeah thanks, that makes sense, but casting between blueprints and widgets are the same thing then? i thought there may be some differences between them?
hey,i tried to add running sound but if i connect those 2 nodes its playing constantly from start
it plays even if the character stays on place,i also found another place i can pun play sound 2d but i cant find the spot
Quick question, how do I intergrade the On clicked to a custom event ?
are you actually using a hud ? it's set in the game mode override ? or your trying to get some other widget ?
or you have more than one hud ?
just call the event from the on clicked event
Are you sure you want to be doing it directly on the character? What about on an animation? The linked image could have your sound play there too
nice! and one last thing, can I connect the array to the event ?
Yes, use a For Each most likely
its possible in level blueprint for ex?Like get the character if velocity is greater than 0 play the sound?
thank you!
what kind of sound are you trying to play ?
a looping walking sound
If the sound is for a character (it's a footstep), it doesn't make sense to put on level BP. The Character or it's ABP makes more sense
is it just footsteps ?
yes
you can use anim notify
so when the actual foot hits the ground
it will play the sound
Yeah anim notify is probably best
or is it first person ?
the game is 2d from flipbooks
ahh
if you do in in the animation update it will probably be the same
just firing off like crazy
So what is the sollution?) how can i play it?
You have to call it, but you only want to call it when to turn on or off. So an update or tick is probably not a good idea
i made this one in the character is it good or not?
If you call PlayWithSound once when you start yea, but it'll keep playing if you stop
maybe a boolean with a timer
where you can turn it on and off
because playing that in a loop doesn't just happen and if your firing that off multiple times it will just keep playing
are you setting max speed at all ?
you could use velocity, but a bool and some sort of timer would probably work
idk much though, might be a better way
How can I make the individual ball that I press disappear? Because Now they are on the array whenever I press one ball all of them disappear. Is there a way to destroy only the selected ball and not the hole stack?
You have to know which ball in the array is the one you want, then only pass that one to your disappear
no,its in defaults 600 i think
do you have time for a quick call ? I could really use your help π
Yeah sure, I got 5 min before my meeting
perfect
vector length
this one?
or do i need to create it in content browser
nice
i made it
thanks guys
Instead of that, play the sound ALL THE TIME, but modulate its volume based on if you're walking or not
that event fires every frame
I'm pretty sure you don't want to start playing a sound every frame
the computer is doing exactly what you tell it to do
you're telling it to destroy everything in the array
so of course it is
instead, destroy the one that got passed in on the LoadCannon event
Lose all those events, do it the way I said
You don't need an onclicked per cannonball
just have On Clicked for the actor, and pass the touched component into LoadCannon
then check if the cannonball array contains the touched component
if it does, then you know you clicked a cannonball
yeah got some problems with the arrays and events need to read on those a little bit more. I am a beginner and have much to learn
i am going to try it again but thogh because I did it with another way but got stuck on other problem
the child actor is not attached to the main one when rotated
Are there nodes for hex to num and base2 that kinda stuff?
is there a specific blueprint that I'm missing that separates the touched component ?
because whatever I do I destroy them all
just destroy the one PASSED IN on the LoadCannon event
add a parameter
do you have a little bit of time for a quick call because im really lost ?
if you can
How is it that each blueprint graph i see made from other people all the pins are perfectly formatted?do people lose hours on fixing them manually or is there some "beautify" command i'm not aware of?
There is a blueprint assist plugin but generally people probably have ocd + more clear to read
Whats ocd?
I spend hours making it look pretty if I get real overwhelmed and need the small win
Start boxing it all adding notes xD
ye i just waste time beautifying if i'm stuck somewhere lol
Electric Nodes Plugin helps too
If not on a team and you can read it, spaghetti it up
i'm physically unable to do it
Oh ok...that OCD lol
I think part of it is just keeping it organized as you go along so it never gets overwhelming. Make use of collapsed graphs and functions as best you can and try to never have copy and pasted stuff over and over
there are hotkeys for alignment
https://docs.unrealengine.com/5.2/en-US/organizing-a-material-graph-in-unreal-engine/#align (applies to normal BPs, too)
nah i would avoid collapsing anything. it's like adding files 10 folders deep in windows. you'll never find anything
I have found a method for completely killing off the need to cast, to the point where casting can be removed from engine.
who can I contact at Epic to talk about this and show them how to remove casting completely?
the wizard department
for some reason i feel that is not a helpful answer, dont be a troll as that is not cool
@toxic jay mind to confirm my answer?
Does anyone know how to Spawn a random Actor from an array of multiple actors? Specifically AI, Im trying to spawn random animals
use the get random item node (to get a random array element)
Thank you!
refering to the casts... what epic probably could do is getting rid of the expensive cost of having casts in a BP graph (as currently that loads the whole class)
by some "interface" in the uobject baseclass?
which just returns the actual class
for the cast node
meant to be used where you need a cast
yes
how do i make these check if what hit them was the player or not?
singleplayer or multiplayer?
single player
has your player an exclusive character class? (which is only used by the player)
or that
i would try to cast otheractor to the player class, if it's valid you know it's the player (as long as the player has it's own class which will never be used by NPCs)
im using the third player character that comes with the examples
well the issue with casting is it loads the file into memory and casts to everything the new loaded file casts to.
thats where interfaces are better since a has interface check does not load that file and does not continue the cast load web.
so the fix is simple yet brilliant
if every file had an interface that returned itself when called then we would get the same result as a cast but without the need to cast.
you can do this manually by making an interface for every file type
as example "PlayerController_DoCoolStuff" is the one i want to cast to
so I make "BPI_PlayerControllerDoCoolStuff"
i give the BPI the function "Cast Killer" and give it an output of the target file, in this case "PlayerController_DoCoolStuff"
I give the controller that interface, then implement it and give the output "self"
as you can see calliing the interface will return the same as what the cast does, but without the cost of the cast.
if Epic change the code that every file automatically have a cast replacement interface that return itself in this way on an interface call, then they can get the same function and even replace cast itself to call an interface this way instead of the old cast logic, so we dont need to do it ourselves.
this is the cast killer
isn't having the return type enough for BP to load the asset?
no, if that fail the return is nul and nothing gets loaded
also i feel like the "solution" assumes that the cast is meant to succeed
it would be possible to do validation checks as well
Can anyone help me figure out the issue that is going on. I have a blend space to detect strafing and the animation inside the blend space shows how I want it. Blend space example is set to (0,300) but when I do the animation it just results in sliding
the novel Idea is to have epic code it in so by default you can use an interface call instead of a cast to get that file type,
also taking into account this interface will only exist in its matching file type, and to do the interface call that file would have to already be loaded.
so it takes "This" and see if it is "TheTypeIWant" and if it pass a does use interface check it returns it, if it does not it returns nothing.
see, the only real benefit of getting rid of casts is to not have the Class loaded all the time, which with the interface solution still is the case.
so there's no real benefit over an actual cast imho
Both interface calls and casts exactly do the same logic in the code, only difference cast node registers its reference to the target class to the graph so it grows memory size of the BP asset
Interfaces, if you have params especially, are slower than mere casting because they are cast + params marshalling (an expensive bpvm operation) + function invoke
a cast does the include" call in C++ and do the same for everything sub-casted
a interface sends a message and see if it gets a reply
they could just change the nodes so you can call functions
how so, though?
node is not the thing they should change here, the whole uobject and reflection structure is
wouldn't a pile of class skeletons just for BP casts actually solve this? π
I cant imagine its being easy as that, AddReferencedObjects doesnt work like that
does it only affect BP classes? i thought C++ classes are affected aswell?!
even if it has components with references in it's CDO? (ok unlikely....)
thats how I enforce to every team I work with
Yes I'm a freelancer working mostly in blueprints and basically fix other people's bad code for a living, mostly killing casting and other hard references I spend many hours doing just that
i have seen projects where a cast spider web have everything load when the player controller loads
hmmm im getting an error
LogJson: Warning: Ignoring excess properties when deserializing CallFunc_GetField_OutValue_2
here is the blueprint line i'm using
its messy i know ill refactor it when it works.
here is the Json file its trying to read
{"Map": [[0, 0, 0, 0, 1, 1, 0, 0, 0, 0], [0, 1, 1, 1, 1, 1, 1, 1, 1, 0], [0, 1, 2, 2, 2, 2, 2, 3, 1, 0], [0, 1, 2, 3, 3, 3, 2, 3, 1, 0], [0, 1, 2, 3, 3, 3, 2, 3, 1, 0], [0, 1, 2, 3, 3, 3, 2, 3, 1, 0], [0, 1, 2, 3, 3, 3, 2, 3, 1, 0], [0, 1, 1, 1, 1, 1, 1, 1, 1, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]], "rows": 9, "columns": 10}
yea i didn't think that through in the first place
i don't think you can have 2d array in blueprints
might be a problem
The "Map" field wouldn't return an integer array. It is returning an array of integer arrays.
an array of integer arrays is an 2d array?!
Not sure what the Json parser would want to use as a return type in blueprints.... There's no predefined type of array of arrays.
either change your json to smth that you can parse in BP or do it in c++
or use smth that let's you access the actual json nodes (then you can parse them with loops... big fun times)
if you know the row lengths you should be able to use one array of numbers
odd 2D arrays dont exist in blueprints they seem usefull
this method would tell you if a human is in control of the other actor or other component
there usefull*
i know it's actually a bummer
cheers for the help i can figure this out o7
and this logic would tell you specifically if the controller is = to controller 0 on this machine
On this machine?
If you are talking multiplayer then that screenshot should just be an IsLocallyControlled Check on the Pawn
Could be useful for Local Couch Coop I guess
But very specific
controller 0 will be the controller indexed at 0 on the PC it is running on, it will not be the same controller on the server or client, instead each client will have its own controller 0 and server will return invalid
Yeah, just use IsLocallyControlled on the Pawn pin
Returns true only for the local player
on the client only?!
ideal the is player controlled logic would run on server and then compared to player states to find the matching controller
Hello, I make a perk system and each perk has incompatibilities with others or not. I can't remove the incompatible perks from the ones I've just added? What am I doing wrong? Ping me please
That's what IsLocallyControlled checks for anyway
see the other post a few lines above it
Which one? I'm only talking about your == GetPlayerController0 stuff
the first one is the better solution, and then cheched against player states to find its controller for multiplayer needs
idk where to start... but what is bugging you currently might be caused by the fact that you are removing 2 items at a specific index from your array, which shifts the array index (if your first random pick removes the 2nd element, then the index for 2 would just not exist, if you remove the 1st index first, the 2nd item will be at the index position of the first...)
Hm, seems okayish. Does Random Integer include max?
Ah they are removing twice. Spaghetti on phone
AH, yes that's right, since I'm removing an index finger beforehand it shifts everything...
Yes ^^
another thing. there's a get random array item node (so you can clean up a bit of your spaghetti mess)
I can only repeat that for limiting to the local player you just use IsLocallyControlled and not == PlayerController0.
That has nothing to do with the Is Player Controlled part
If I use a remove item can I put the row name in delet directly?
Yes, I know, but I need to set the random index and then retrieve the row name with it, otherwise I can add the "fat" perk, for example, but that could delet index 2 when "fat" is index 1. I don't know if I've made myself clear, but that's why I use "lenght" with a random integer
Thanks for your answers!
yea makes sense
so you saying that getting a pawns controller and testing if it is = to controller 0 would not work?
it would work just as good as IsLocallyControlled and would 100% work for singleplayer as OP described.
both methods are valid
You can argue like this for everything. Only because something works doesn't mean it should be preferred over the intended way
You can compare to index 0 if you do couch coop or have multiple local players
Otherwise it's better to simply check IsLocallyControlled
OP asked for singleplayer tho
and it's likely that his player actor class is exclusive
so a simple cast to that class will do
For Singleplayer neither of the two is relevant. A cast for a specific BP class would be enough.
That's why I only commented on the screenshot itself, not the rest
but i still don't understand the isLocallyControlled check, for MP that would only work for/on the client, right?
on a server nothing will ever return true there?!
yes casting to a single controller class would also work, but OP never said he have a single controller class
he said he uses the ThirdPerson template character, so it's likely that he just started... (and therefor it's highly likely to be exclusive)
Character class, not controller. Fwiw also controller but if you base it on the controller you can use the PlayerControlled stuff
Which I never said is wrong.
correct, that is why I said the better solution is to use the first method and then follow with comparing player states to find the correct controller (if multiplayer)
Yeah and that last part I disagree on. But you can do that if you are convinced it's the right way
Pawn is already controlled. There is no need to do anything with PlayerStates here. On clients the other PCs don't even exist
One last question. I have negative and positive perks, is it better to have 2 data tables or can I manage everything from 1 data table? (This is for a multiplayer project).
correct and wrong, you do need to do stuff with player state in multiplayer
a player controller exists locally and on server.
you only have your player controller on your PC
the server have all player controllers.
if you do first method, as server you can confirm something is player controlled,
on the client you cant see other player controllers, but you can see player states.
on the server you can get the player controllers who created the player states and interact with that controller on the server.
on the client you can not get the other player controllers, not even from the player states, but you can get the pawn controlled by that controller and replicated to you.
it gets complicated
it all depends on what you want to do really but ideally this is logic that need to run server side
you can do it from one, but i would highly suggest to use a different approach to rule out conflicting perks...
e.g. add another column with a perkType index, and put them on the same index
then pick/keep only one perk of the same type
or use an enum for the type, which gives you better way of naming and keeping track of them
Is it possible using soft references and load async node to load only ONE specific object from a sublevel?
Ok thanks a lot for the answer, I'll probably use 1 data table with an enum
you can use "Primary Data Asset" class to make a parent class,
then use data asset blueprints where each line in a table would then be its own file, its different.. but you can have a variable for data asset and load in "stuff" that way and would not have to deal with tables
How can i trace different channels for interaction at the same time and use the same widget for both. I don't see how that's possible because they overlap.
As a followup to an earlier video we show how to use the C++ Data Asset class using Blueprints only using the Primary Data Asset class type.
Original Data Asset Video: https://youtu.be/gLWXZ3FXhO8
Oh thank you, I didn't know that at all, I'll have a look too !
is there a way to disable objects, where they don't tick or use physics?
Or should I just spawn/destroy actors instead?
use these
the simulate physics you have to call on the component that is simulating physics, something with mesh or volume
there are use cases for both, if you no longer need stuff it's better to destroy it
but as example if you place your character in a car and dont want it to tick or simulate, but still see it, then its worth disabling (and perhaps unposess it)
I am struggling with a CharacterController problem that is almost certainly an easy mistake to fix, but I cannot locate it. If anyone could offer their perspective, I appreciate the help.
I am using a game controller for controls.
I created the most basic CharacterController setup: 2-axis thumbstick for movement, 2-axis thumbstick for camera, and a button to jump.
Movement and jump actions work correctly.
Problem: Both X and Y on the controller thumbstick move the camera Yaw. Pitch does not get adjusted at all. The problem suggests I have the same axis from the thumbstick assigned to both axes X and Y in the Input Manager Context, or in the BP, however I don't appear to. Here is a screenshot of the Input Action, the Input Conext, and the BP using it:
Where else could those axes be mixed up?
Or what else could produce that result?
hi, ive been trying to solve this for a couple of days now. how would i spawn an actor then set its mesh from a file path all via async.
I can't get this to work if the client doesn't have authority. As far as I can see, this actor should not be replicating. Yet if the authority client runs this, it changes for everyone. What might I be missing?
this is my code so far
For something like skeletal mesh, just do a rep notify and change the skeletal mesh in the on rep function
I don't want it to replicate
Then you will have issues with late joiners
I suggest reading compendium in mp pins
Its for a character select screen, so local-only
Not sure what u mean by local and select screen. You mean it's a local multiplayer?
The game is multiplayer yes but the select screen should only show myself -- the character I picked
but for some reason it doesn't work without authority. I suppose I'll need to debug
even for single player it uses the logic that server owns stuff
actors are generally owned by server and replicated to clients, this is default behavior and explains why it need authority.
Is there any way to not have it do that? I'm not finding how
β¬οΈ
With Launch Character, how would I avoid launching my character into the ground if the actor is rotated or is rotating?
Seems that Launch Character is influinced by this rotation
You pass in a world space direction into LaunchCharacter. The direction it launches the character towards is only influenced by what you plug into it
If you're using character rotation or directional (eg forward) vectors, rotation will have an effect on launch direction, but as haft says, you have to calculate your vector in absolute world space.
How could I do this? What you described is the exact issue I am having.
I am using a Forward Vector of the Camrea, and when the character Rotates and I launch at the time it's rotating, this launch issue happens
Is the character rotating with the camera?
No, I'm Rotating the Actor with Seperate Code, and it's rotating the Capsul Component with the Mesh, but the Camera stays the same
So you want the character to launch in the direction the camera is facing, correct?
post your code
Sorry, it's wrong 2 seconds
This is the part of the code that launches the character based on Camera Forward Vector that worked based on pressing F
Then this is part of the code that Rotates the character around the X Roll for visual purpose
The issue is when my character is fasing to the left or right, and is Rolling, is when the launch doesn't work properly
If they are facing right when they roll and launch, they get launched upward in the direction, and facing left, they get launched downward
You're using the character velocity as your vector, which will launch in the direction the character is moving
Use the camera forward vector in both functions
That part of the code is unrelated
I'll test with it off though
Even when bypassing it, it still happens
The issue stems from Add Actor Local Rotation, and the Launch from the first screenshot
maybe the velocity is being affected by changing local rotation
My current guess is that the Camera Forward Vector is getting messed up with the Actor Rotating, and that is causing part of it
But the Camera itself is stable
I can show a screenshot of why I think this with a Linetrace.
As you can see, there is a straight Horizontal line where it worked, then the rest are everywhere, when the camera itself remained the same
Can someone help me understand why my begin overlap isn't working?
Both generate overlap events and both overlap the player collision response:/
Can you post some close ups of the vector calculation part of your graph pls
Also why are you launching on timeline update? This would launch multiple times between timeline start and end. Is that what you want?
Yes it is
All my Launch code is from Timelines just due the nature of the momentum I'm building up. I don't mind if it's inefficent, as it's a prototype
The code for my Vector is as what you see though. There is nothing influincing it outside the code you see. Unelss you mean the pics I sent were small
I can't see it well. That's why I'm asking for a close up
Can you open it and Ctrl + Alt + Scroll up to zoom in on the picture on a browser?
At a resolution of 4 pixels, yes
Interesting... It's a 4K image
Not really any way I can make it any better for you without having to send like 8 different images
Ok good luck
lol, I'm just confused why you can't see it unless you are on mobile
Can you send me a screenshot of what you are seeing then? so I can understand how to help?
This is what I was refering to when I mentioned opening it in browser
Forward vector from the camera is just multiplied by 50 and applied to Launch Character as the Vector. Its very simple.
I just want to know if and why Rotating the Actor effects this Launch Character, if the Cameras forward vector stays the same.
Somebody help this guy though, because I'm at a loss for my issue and I don't think anybody knows either. Thanks for trying to help though.
Are they spawned in while overlapping ?
Player collision is suppose to be Pawn right? Neither of them are set to overlap pawn.
That too
He has a custom Player channel
Then its because neither of these is set to that Player Channel? They are both set to World Dynamic
Youβre thinking object type but yeah
Yeah, sorry. Their character collision needs the object type to be the Player thing they made for their collision
On the phone so can't see much. Character rot offset shouldn't be affecting camera vectors but you can isolate the problem. On press some key, draw a debug line in the cam direction, add an offset, then draw again. If the lines don't match, that is indeed your issue, otherwise it's something else.
It may be worth zeroing out your forward vector z axis before doing your calculations and instead using a constant.
I keep getting a stack overflow issue that causes my project to crash. I've done it 4 times and I have no idea how it keeps happening. I have pictures of the suspected blueprints.
The project is super simple so if anyone is interested in helping me out, DM me and I'll send you the blueprints I think are causing it.
Do "child Actor Components" have bad performance? Comparing to spawn a whole new actor?
Subjectively, But in my opinion. It's about as bad at optimization as the classic Actor.
Only with a couple more bugs π
Ok I got it somewhat figured out. Whenever I add the W_CardHand to the W_HUD designer I get a stack overflow issue.
Can anyone help me solve it? I'm not sure what I'm doing to cause it.
IS there a way to do a Select node based on FName? I see that the switch node is dynamic (I can enter values to match) but I don't need exec pins, I need to basically convert from FName to an enum based on FName values
Hi, so I use I use binding get text and it works but the problem is it keeps on repeating the name from index 0. How do I make it so that it won't repeat. Or is there a better way for index 0, 1, etc to display in the "component" widget tab without adding the text block one by one? where it will automatically fill the "component" tab according to how many index there is?
Don't use get actor of class. Just learn to pass references.
All you have to do here is to create a text dynamically depending on the component size.
Get a ref to the car, get the name comp, create the text per name in the comp
Stack overflow? Can you post the error picture.
Blueprint is pretty forgiving when it comes to mistakes . Most of the crash normally happend when you do something unacceptable like creating circula dependencies (infinite loop). In your case you might spawn something that spawn another thing which spawn the previous thing
How do I grow the X scale of my cube every tick?
- You define a "GrowSpeed" variable (this should be the amount of Grow (Scalar) by Second)
- You take the current Scale of your Cube, break that value to access just X
- You multiply the GrowSpeed variable with DeltaSeconds of the Tick function (to make it work with differenet framerates)
- You add the result to the X value of your Cube
- You call Set Scale on the Cube and connect a "Make Vector" node with the Scale Vector (or split the Vector pin)
- You set X as the result of your math, and Y and Z to the original one
And for the Screenshot you posted, you need to utilize DeltaSeconds in these situations.
is there a way to identify the local player from the input action that took place ?
For like Couch Coop?
Where is that input placed?
Like this?
Almost, you need to connect the Y and Z still
more like pvp
from add world offset?
If you want to call both, yeah
thank you!
basically, I have a button that makes the player overlap instead of collide with the platform (to pass through it), but I need to get the reference of the player who pressed the button to propagate to the server (via rpc) so its client who falls down .. not the server
Button as in Keyboard/Gamepad key?
yup
And where do you handle the InputAction?
I'm trying to handle the input action from the Tile's blueprint
So in theory the input should be in the Character. And by that you already have the Reference to that Character.
You'd RPC in the Character to the Server, which brings you to the Server Version of the Client's Character.
And from there you can do whatever you need.
Is there anything like RandomPointInBoundingBox but instead of random its arbritary? So the points are nicely spread.
In an Animation Blueprint, if I set a bool to transition from Locomotion to Attack sequence. How do I make it transition back after finishing the Attack animation?
So, to answer your question directly first:
If you add an Animation to your AnimState and then add a Transition from that Back to Locomotion, you can then inside the Transition search for something with "Remaining Time" (not the Ratio version). And with that you can check if that Time is less than e.g. 0.1.
What would be easier, however, is if you'd use Montages for one-time Animations
I would still have to reset the IsAttacking bool though, where/when do I do that so it doesn't keep looping infinitely.
Thanks, I will look into Montages.
Yeah with Montages you don't really need that
For the "Where to reset?", check the Details Panel of the Transition
I'm sure there are function bindings you can use
Or of the State itself
I am trying to setup my quest system currently the quest is stored with a array of structs, inside this struct array there is another array with each stage of the quest and what is needed to be done, I am trying to make it so when you kill a enemy it will check the active stage and see if the correct enemy is killed, if so decrease the amount left and update the array, however using set array element i am unable to set the element of the 1st outer array with the updated inner one as set array element does not have a output with the updated array nodes and I have to get the value from the original break of the outer array
I have included a picture of the blueprint which runs when the npc is killed and the quest array
in the 2nd picture you can see inside the array each item has another array called quest stages which has the value, Amount left to kill which i am trying to modify
Array Struct of Array Struct stuff is super garbage to handle in BPs
Cause BP copies all sorts of shite where C++ would allow you to just grab a reference
So it would be better to try do in cpp?
If you can use C++, yes 100%, because there you can just do
FQuestOverview& QuestOverview = Quests[i];
And modify QuestOverivew would modify the actual element
But you would need to move all your Structs etc. to C++
So that could be a bit of workload
would i be able to edit the kismet array library to include a output pin of the updated array? which i could then use
Moving structs to c++ is never a bad idea.
I don't think that's your best option here :P
If you want to do that in BPs, you simply need to start making Local Variables where you save the Arrays
Modify that
And later use that to set the outer container again
Alright i'll see what i can do in cpp tysm for the help
But tbh, moving this to C++ would be your biggest win
Cause you'll see that the whole code section you have there is a lot easier in C++
for (FQuestOverview& Quest : Quests)
{
FQuestStage& CurrentStage = Quest.Stages[Quest.Stage]; // Could be a function on FQuestOverview
if (CurrentStage.EnemyIdToKill == EnemyId)
{
CurrentStage.AmountToKill -= 1;
}
}
That's more or less the whole code for your stuff there
If you are using C++ already, I would also suggest you change your approach for the Stages
And turn them from Structs into Instanced UObjects
With those you can get Inheritance working, and since they can be Instanced, you can fill them in the Outliner if you need to.
@jaunty crow
Ah okay that sounds good, I'll do some work on that now thanks again
Just keep in mind that UObjects can't replicate by default, which can be done in C++ though
So if you are doing a Multiplayer Project, you'd need to let some Actor/Component replicate the UObjects for you.
Which usually isn't that big of a deal, given those Quests usually sit in some Component or so anyway
But in theory, I would always go with a UObject here over a Struct. Way easier to reuse, code custom functions into, extend.
Way less restrictive than structs
Where did you learn C++ for UE from? I have C++ knowledge but there are a lot of boilerplates for UE and decorators.
How to auto scroll text in scrollbox ? When the text is at the bottom of the scroll box, I needed it to auto scroll.
(Also using a free plugin called Typewriter effect [SixLine Studio].)
For reference:
It still doesnβt auto scroll.
You'd need to call scroll to end every time it updated, not just before it started...
Some sort of timer?
timer might not be a good solution. bcz i'm receiving the (text answer) from post request. sometimes the answers will be short or large, depending on the questions that i ask.
either change the plugin to provide you with updates or a finished event, or calculate the timeout based on the character delay and message length (eventually the textbox even has an updated event?! π€·)
Im trying to make an astroid float in a random direction and have a random rotation. It kinda works but the rotation feels laggy/choppy, am i doing something wrong?
you wouldn't want the rotation to constantly change per tick, you would want to add the same rotation again per tick
and super small, like .01
remove the Random Float
Make Rotator = .01 x , .02y , .01z
Hello, does anyone here have any experience with the SPUD plugin? I need some help with saving using it
see what that looks like
ok ty!
anyone knows if there's any way to create a render target in a regular object bp class? the node's seemingly only available in actors or components, or if the blueprint is editor utility
How can i trace different channels for interaction at the same time and use the same widget for both. I don't see how that's possible because they overlap.
True....need to do little bit of research.π₯Έ
Yeah I'm replying to you
An object don't have transform. Anything that is placed in the world needs to be an actor
Thought we r talking about scene capture 2d?
I can already instantiate my object from another class, what I can't do is call Create Render Target 2D from that object's bp
Which renders the texture to rt
yeah no not scene capture, I'm trying to create a RT that I'll then draw materials into
with this, which for some reason isn't accessible from regular object bps
even with a world context object, despite a bunch of other kismet library functions that use a wco working fine in objects
No idea π
hi, RepNotify and set member in struct doesn't work?
Thanks. If what you said is my issue, would you know of a solution I could attempt?
@thin cradle is your project bp only, or do you also use cpp?
right now it's all bp but I can do cpp if needed
you could make an UObject child class which implements GetWorld() and therefor would provide a world context object
would rather not since it's not nearly as practical to access specific materials from cpp though, and I need one to process the RT
oh that I can do yeah
if that's all I need
you can inherit that class in BP
weird thing is, objects already have getworld and can get their outer object's world so it's weird it won't pick up on that
but then you obviously have to provide a world to the object at some point
and also the fact that it works fine with several other bp library functions that need a wco
hmm
i'm not 100% sure if it will fix the issue with that specific node, but for others it did for me
will try it regardless
and i don't even understand why it would need a world in the first place for a RT
seems the RT needs a world
hmm, it needs an outer, but no idea why that has to be a world
possibly so it can create the corresponding RID or whatever in the proper RDG/RHI or whatever
you could also try to copy the code from that node and provide your object as outer, eventually that will work just fine
as long as you are fine with the RT lifespan to be bound to the object lifespan
yeah that's fine with me
Hey folks
I'm struggeling with memory on how to register a keyboard input when in a widget.
I'm basically trying to create a "go back" function in the main menu when a player hit the escape key.
Would I have to go to the character (TopDown Character template thing in my case), put the event "on escape key pressed", then cast to my widget, and call my function inside widget to do intended behavior?
Or is there an entirely different approach?
a userwidget has a function you can override, i believe ''OnKeyDown'' is in the function name
You mean something like this?
no, like this
except ur actual logic is gonnna be different ofc
Thank you. Found it:
(want it to happen on 2 different keys, so this seems to do the job)
Good point
seems to only register after I've clicked something (something else with my mouse). Do I need to set a focus for this event to happen or something?
ye the widget needs focus, or it will not register until the widget that contains this, is active
Thought the "Set focus" node would be enough. Seems to not work.
I get this error though:
isfocusable is a details settings (the panel on the right with the size etc)
its a toggable setting
ye i think its that
Still get same error if I tick that box
Found out the parrent also did not have that box ticked. Did that too. Still no difference.
My bad. fixed it
I made a rock with unreals modelling tool, why cant i use physics like "addforce" on it?
I set the actual button to open the menu to allow focus. Not the widget I was opening π
Sorry for that
not a problem at all π i make mistakes too, could have been my mistake just as well
Thank you for the help. π
hey i so i got a really wierd problem
the thing is i got some code and i had to chnage it for it to wrok and when i compile everything is fine but when i save it stops working?
before changing it it doesnt work when i change it it works when i compile its fine when i save ( i chnage nothing during saving ) it stops what the hell?
here is the code
anybody had a simelar issue?
thnaks it was the problem
can you hover over the node please and check what the tooltip says, i'm pretty sure that is editor stuff
ok, nvm
i used it to fix a diffrent issue
but it works fine now
thnaks agin
i dont wanna know what kind of issue...
only place i'm aware of transactions are editor actions which you want to group together, nothing you would ever see in game code
Is anyone able to help me in figuring out why this isn't actually sending the player information?
https://youtu.be/oXwj2ahifgY?t=427 Michael Patterson hasn't replied yet to my question so maybe someone else is familiar with this system? https://youtu.be/oXwj2ahifgY?t=427
Welcome to this tutorial on how to create a dialogue system in Unreal Engine 5! In this video, we'll go over the basics of setting up a dialogue system using Unreal Engine's powerful Blueprint visual scripting language.
Whether you're a beginner to Unreal Engine or an experienced developer looking to add dialogue functionality to your projects,...
There could be many issues here.
Do the overlapped actors implement the interface?
Have you added a breakpoint to ensure the code is firing in the sequence you expect?
Add a print string off the 'false'. That should help narrow it down a little too
The overlapping actors do both have the interface and it was functioning fine before, but then randomly started giving me null values. I'll throw the print in though and share the results.
The number of overlapping actors could also be zero, which is why I'd recommend to use a breakpoint. This way, you can hover of the pin to ensure everything is good.
im not 100%, but you can try swapping 'Get Owner' for 'Get Player Character' and see if that works better?
The false string isn't printing.
If this is a character it would work.
If you set the debug object and just view the code firing live, things get much more simple to understand.
^^
Whoops, that wasnt supposed to be a reply lol
Look at the code for the 'Interact With' message
It shouldn't be because my interact feature is working, it's just not returning the player data. I should be throwing the breakpoint on the overlapping actors array, correct?
It's an empty function with just the player character as an input
Just put it at the beginning after the input and step through every node.
Yea, Stinger has a point, if its zero actors, then it wont run at all
anyone know how to get the screen position of a widget?
what issue are you having
If the parent widget is a canvas panel, you can use the node "slot as canvas panel" and then get position.
its a overlay
There are limited ways to get the position of widgets, most of the time you are limited to wrapping it with a canvas panel. There are some other ways, but may not work.
i see, is a canvas panel performance efficiant?
You shouldn't have performance issues with widgets.
I see, on their site it says it takes a lot of perfomance, but Ill use it for now, thx for the help!
Np
You could probably reach a 50 or so canvas panels before is becomes an issue. Most of the time though, UI solutions this big are entire screen, which also means framerate becomes less of a concern when viewing it.
Should all my interface widgets be separate BP or is it ok to have them all in 1 widget?
can u show the code that makes the widget apear
Is this indicating there aren't any overlapping actors?
Rn their separate but I forget why
This part which calls the function is in the actual NPC.
Progress dialog should be attached to player pawn or Smth right?
Cause self references the widget right?
This stuff is in the first person BP.
Oo gotcha
Canvas panels do take a lot of performance relatively. You should strive for only one normally, at the root of the main on screen widget
Needing more than one canvas in a lot of cases points to bad UI design
Still not sure why when E is pressed, the widget with the options doesn't show up.
Or show the character name and that stuff.
can u show the widget blueprint
Epic: Avoid Canvas Panels as they are performance heavy
Also Epic: The default root Widget will be Canvas Panel!
How do u go about making a widget outside of canvas panel?
anything but canvas panel
It's the only one I learned lol
i use one for my main menue in a UI heavy project, and that's it
and idk if the one in the main menu is even necessary
i usually use a sizebox
You'll use a lot of horizontal and vertical boxes with elements wrapped in size boxes
That's how you shouldβ’οΈ do it
What am i doing wrong here?
A good root widget is the Overlay
I believe each canvas panel is a render target, so each one you stack up can eat performance unnecessarily
I strongly advise not doing what was suggested earlier with "you could probably use 50 and not notice it"
I mean I have like 6 or 7
Just hp, mana, stamina, money, souls very simply implementing just slowly learning what I can do
For example, each of those could be smaller widget blueprints that only get put on a single canvas panel on your hud wbp
A health and stamina widget can be built without using canvas panels, and then you just anchor that whole set of elements onto a canvas
You'll probably find doing your UI the intended way will make supporting different resolutions and aspect ratios easier
Sure.
You sir are a ledgend
Regular dialogue widget.
When I set it up I'll come check with ya to be sure I understand and do it properly
Dialogue Options.
are you calling the UpdateDialogueText function
when u interact, do you get any errors or warnings?
place some breakpoints on the functions that are supposed to be called when interacting with an NPC
you can also insert ''PrintString'' nodes inbetween certain parts and gain information that way
Nope.
I am adding force to a shipand want to land it (think lunar lander). What would be the best way to check to see if the landing impact was too much and should destroy ship or let it land?
Probably check if the Velocity Length is above a certain threshold
Hello everyone! Anyone experienced in UGC/Mods? Would it be possible for a UGC/Mod to Add a new Level Sequence (ie Cinematic) and/or Actors to an existing Level UMap?
check if the force is >= destroyForce
with a branch
haven't messed around with this yet but just something I was thinking about. If you have a control rig it's linked to a mesh / skelly but how do you handle this for modular characters where parts or all of the meshes change? The skelly is still the same (UE5) but since the meshes change do you just need a copy of the control rig linked to the other mesh and somehow switch them at runtime? Sorry this has just been running through my head π
you usually set one skeletal mesh as leader skeleton or copy the pose in the anim bp of the other meshes
Create characters by combining multiple skeletal mesh components.
it's all explained in the docs
yeah that's pretty much the basis of my setup but I didn't catch how this would work if you need to replace every mesh. Perhaps copy pose might help or I might need to have a dummy mesh in my base layer as the driver. Anyway I'll have another look at it, I'm sure this is a fairly common workflow.
So, apparently Actor Rotation that you apply, like a spin, changes the Camera's Forward Vector Values, in my case, the Z Velocity. Is this a bug? Or can this be avoided?
I would imagine it's the use controller rotation yaw in the pawn settings or something to do with orient rotation to movment / use controller rotation in the movement component. Try messing with those
or the camera could be moving because of collision, depends
I'll take a look at that
I've pretty much summed up the issue to "Actor Rotation Effects Camera Forward Vector, and I'd like it not to) Visually the camera doesn't really move or change, but the value's jump around.
hmm maybe check the spring arm then
i have 900 sphere blueprints colliding with eachother and with a (kinect driven) skeletal mesh.
each instance is also getting velocity component and sending it to its material.
can i optimise this setup for increase in fps ?
is there a way to have an event play when an object touches the floor or a wall?
I have a ball drop and it's supposed to explode when it touches the ground but it just doesn't. Though it still detects collisions with the player and everything else, it just stops on the floor or passes right through (I tested with overlapping collision and physics collision, and neither are triggered by the floor)
my WASD movement for my pawn doesn't move it.
the code is simple and when I press either of the 4 keys it prints hello, so the input event is running, but it doesn't move my player pawn
any ideas?
here are the default for reference (i believe they are un-edited from new project
(third person)
thanks but im just tying to get a camera where the player can move it around with wasd
let me send a pic
apparently this is non-valid
have no idea why it fails...
u have nothing set in the IsValid node
just fixed it but still no movement
this code always prints when i press the keys, but theres no movement
does the camera actor have a character movement component
apparently i needed this, dont even know wtf this does
i was literally programming ambush style custom pathfinding for AI last week. I'm pretty good at creating systems in programing.
never started from scratch before, this is my first time creating a pawn from the ground up and this crap makes me feel like a 6 year old with a caveman brain.
way too much terminology, dont understand why inputs need this entire spiderweb of a system to do basic 1 key presses
AI Sensing in BP's was one thing.
this whole wacko input system is wild.
i guess Theres no other way
there's plenty of ways. Are you really not trying to use movement component? I've done custom floating pawns before, there's plenty of tuts out there
movement component is fine, but I cant add one in the components tab in the BP window, so i don't know what to do
characters come default with a movement system but I dont want the player to be a character BP considering the fact the the player will only be a camera and making the player a character would make them the same level of scope as the AI (because AI will need to be Characters)
just had a revelation.
I am assuming the player will have a sensing component for AI's. but they woudlnt because they are not playing the game with the AI like an fps game.
so Ai will only ever sense AI because only AI will have a sensing component
@hushed ferry @ornate trail
any tutorials for basic character movement you could recommend?
when I set my player to a character instead of a pawn, they fell through the map. As if they come default with gravity
that's a collision issue.
sorry i didnt mean fall as in no collision, I meant fall as in they head towards the ground
If you want to use the movement componet you have to start with ACharacter and strip away what you don't want
the character has a camera but the camera falls to the ground, is this just as simple as disabling physics?
think so ye
if you want to build your own movement entirely from scratch that's pawn movement but get complicated and I wouldn't recommend it
ok, i just switched to a character and it seems the be doing fine
maybe explain the goal and I can point you to the right series on this.
just an RTS camera.
I just disabled gravity on all compnents but it still falls to the ground
yea somethings wrong
all gravity is off in components as well as no simulating physics
you shouldn't do any of this
?
wa6y too much code it seems to just morph that into my own thing
im certainly going to use it as a reference
https://www.youtube.com/watch?v=rLe6Jrdqu3w
check out Ryan's series then. He's really good, first episode is all about cameras
Assets Available from here: https://marketplace-website-node-launcher-prod.ol.epicgames.com/ue/marketplace/en-US/profile/PolygonBlacksmith?count=20&sortBy=effectiveDate&sortDir=DESC&start=0
In this series we are creating the common mechanics found in RTS games, everything from unit selection, AI combat, and base building.
In Part 1 we create o...
if u set gravity scale to 0 u wont fall
its not the enhanced input system, will this cause an issue with adding controller support with inputs later on?
its easy to translate the old system to the new system
I don't use enhanced input and all of my controls are driven in c++, no problems with controller support
I see, but that seems to have brought the speed of movig left/right down to a very slow speed
Probably, why 900 and why are they all colliding?
how do i make an enemy apply damage to itself. I am using apply damage and setting the damaged actor as "self". only problem i am facing is that all the enemies that have this script all die if one dies.
probably because of the refrence to self
its a virtual ball pool area
Maybe try using Particles for the balls instead :P
i can get niagara meshes to deflect eachother as in blocked collisions ?
So, I've been going around in circles as I'm learning multiplayer blueprints with the player controller and widgets. When I play in editor with 2 players for "listen server" apparently the player controller is called 3 times, which makes some sense, but it even does that when I specifically say "is local controller" and it still runs as true. The only solution I found in the player controller class was to use a reference to "self".
My question, is what the heck is the difference between a player controller's reference to "self" and GetPlayerController[0]. Isn't player controller [0] specifically supposed to grab the client's player controller?
The disconnected line of 2 nodes up top actually runs different than the connected ones. Why?
This isn't an issue at all when I run stand alone with 2 clients, or when the game is packaged, but going forward learning multiplayer, it bugs me when something doesn't work and I don't understand why. Typically I won't be running a listen server in editor.
(edit: the top line where it says "is local controller" should be "is local player controller" but I get the same result
my issue started stemming from an error I got where blueprint would bug out and say "cannot assign widget to player controller" or something
i would start by making sure they have simple sphere colliders, and probably use an ISM for the meshes. What are they right now, 1 actor per ball?
yes, 1 actor pe ball
yeah get away from that asap
all in one bp ?
Im trying to drag animations into an aim offset blend space but only one places and the rest dont while saying animation should be additive, all of them were retargeted from an asset pack and all worked in the native version the asset pack was taken from
how would I go about getting an actor to move without using physics?
I'm tring to get an object to move down and collide with the floor
Any idea why this is empty? I have 2 microphone connected to my computer (@white lynx maybe?)
@hushed ferry I am still stuck at where the issue occurs.
have you used PrintString nodes to check where it goes wrong and with what
You could use a rough method of: line traces and a timeline, lerp from start to end of trace while setting the position/location vector
Hi there do u know any good tutorial for only passing an object like table while running?
basic parkor syteam for als
like outlast
Weird one here... every time I close the editor and re-open it I get this issue
If I right click, refresh, recompile, it goes away.
I've tried deleting the node and remaking it, no dice...
so i have this car and its fine on the server but on the client its bad
i have a few costom events
and i can set one of them to multicast and it fixes it some
anyone
so i got it to stay tame but once you drive for a bit it slowly gets worse
How can i animate this rotation? Making a asteroid game for learning and i'm trying to add a bank when i turn my space ship. Right now it banks but it instantly snaps to my 20 degree bank
What can I use instead of Add Actor Local Rotation, or Set Actor Rotation. Doing so screws up my Launch Character Physics.
I'd like to visualize the Actor Rolling. Trying to find the best way to do this.
add torque maybe
Rotate the Mesh Component, not the whole actor ?
does anyone know anything about replication
Where do you suggest?
Does anyone know if it's possible to get spotlight to use color from a material?
(I have an emissive light material that I'd like for it to be synced with the spotlight)
Thats very #multiplayer specific
You can just get the vector parametre from the material
And set the vector as the color for the spotlight
Thats rather easy?
I'd like to, but the Rotation point is at the bottom of the Capsule Component, and not the Middle like i'd like for it to be
hello π , got a question, what could be a way to make something like an OR statement but for floats?
Thereβs a select node, if thatβs what you mean
There should be compare floats macro iirc
im trying to use 2 floats to drive the same animation but without them overlapping
which node is this?
Get vector parametre
kk let me try!
anywhere where you expect something to happen or where data is supposed to change
hmm I am not familar with the collections. Is this the right node? (I am working in constructionscript)
Oh anim blueprint
i really suck at math sorry
No, thats global, you want vector parametre value from dynamic material
Also not 100% sure if its gonna work on construction script. Move it to begin play instead. Dynamic material gets created at runtime
You can just do two near equal nodes, an OR node and call it a day @split rose
how would i plug the bool to the blendspace then?
Idk much about #animation sorry
oh my bad
hmm Feels like it should be working but its not haha
Your parameter name in the material is called "None"?
If not, you should probably check that :P
ohh it should be called Light_Color
Soo many things wrong as well
LOL
Why is intensity 0 and u expect it to work
And yeah, type the color parametre name
Its easy and straight forward
Well show the new updated screen shoot
kk one sec!
Hello guys, I have an issue with spawning projectiles and move the player. When I do this its like the projectile is spawning "in air" because its taking the player location as reference to spawn. It mostly noticed when I use a dash because its like the player is moving faster than the projectile spawns. Anyone already faced this kind of issue and know a work around I could do to fix this?
That thing happend in real life too, a jet fighter can shoot it self if it flies faster than the projectile it fire
Altough im not sure if theres anything related to spawning on air if whats expected is spawning on ground
Try to take a video so others have better picture
this is something that happens
That's how they should behave though. Your bullet wouldn't move with you
I figure the way it works right now is what would make sense to players
best way to see would be to put together a little demo and give it to people to test
is it right? I feel a bit strange about it haha
see if the bullets feel right
It would be weird if i could dash faster than bullets
The ss is indeed strange because the character is moving at the speed of a moving bullet
Or close to it
I do figure your appropriate course of action is to speed up the bullets
though, if they're intentionally slow projectiles, it still makes sense to have them as is.
For weapons like that, moving into your own projectile and harming yourself is one of the risks of using the weapon, and your playstyle adapts around that
Lot's of games just deal with that as a consequence of the slow moving bullet weapon, as it is what makes the most sense
Here is a video of the bullet behavior, what u think about?
https://streamable.com/ip4h81
Updated parameter name & intensity
Bullets look alright, albeit a bit short on range.
Player is definitely dashing too quickly
It would be nice if the dash started slow then end slow imo
Peak speed would be when dashing to end location
K whats the issue? Is this on begin play?
Check if the parameter is correct as well
You'll find a lot of dashes you don't actually move that quick.
Maybe 1.5x speed at most.
It just feels quicker because of things like motion blur and other sneaky visual effects like speed lines or whatever
You also don't appear to be assigning that dynamic material to anything
Right lmao
hmm ah I think the issue is that I am not using a linear color
Oh wait target is primitive comp
Thatd indeed an isssue
Thank you for the explanations, I will take a look on the dash then. Good to see the bullets are fine
Ur light color2 is a texture param
Which u can also get but thats not gonna translate to light color. Maybe light function ?
Thank you, I will take a look on the dash π
yeah
which light function r u referring to?
Im gonna use light function in my game for church mosaic
Ive done one for water cascade
Just use color?
Unless u want to use texture but i cant help you there
Been a while since i did light function
Docs should explained how to use it afaik
Keep it simple for now and just get the color from your emmisive material
basically, I am working on a live music show. I am using a media texture in the light material to make it match the video that's playing on the screen
https://docs.unrealengine.com/4.27/en-US/BuildingWorlds/LightingAndShadows/LightFunctions/
If you want to look further into light function
You can set the texture as param
And read the texture from the materiak
If you r using render targer and need to update every frame, im not sure how heavy the cost be but no pain in trying
I'm going to lose my mind over this, anyone experienced this?

Because the color of the light will be based on the texture
So setting color is irrelevant
It will just output the color from the texture
It says
It should be noted, however, that you cannot change the color of lights using a Light Function, only the Light Color setting can do that.
so i don't think I can use light functions
I stand by what I think would happend and that doesn't contradict what the note says
https://youtu.be/eVd9PwiODSc?si=_WFbWLLumHUXwerC
5:55 but my suspicion is right. It's expwnsive
Need to make some fake shadows? Do you need color in your light functions? Flickering shadows? Trick shadows (where an object casts a DIFFERENT shadow? Then this is the video for you!
https://docs.unrealengine.com/5.1/en-US/using-light-functions-in-unreal-engine/
Related: Need to do Light Linking in unreal? (so a light JUST hits the obj...
You basically need 3 lights, one for each channel
π₯Ά
Guess I'm gonna rethink on my level design
Imo for your case just use color. It's just a spotlight anyway
yeah I am trying to find an easy way to control spotlight to match what;s going on on the screen
without having to use something like DMX or manually setting it
Hi! This the right place for getting some guidance?
Well the bar changed quickly. I mean how do you determine what color to grab from the screen? You would also need to access that info
That's beyond just getting a color parametre from a material
Don't ask to ask, just ask and if someone can help, they might just do that
yah that's what I meant earlier by this: #blueprint message
This would have been easy if u take out the texture out of the picture. Which what I thought u initially tries to do
agreed!
Well I got my self Philip hue. It changes color depending on the dominant color of what my screen display
Not sure how to do that in UE. If the #materials guys can't help, it's probably cpp territory that needs to get the screen buffer
yeah I was hoping I could find something like that, except on UE spotlight 
Hopefully someone has an idea π
If billycorn is around u can probably ask him
He knows a lot when it comes to material
Specifically, trying to call a function in a specific ISM from a raycast. Seems like I should be able to use Hit Item as the index, but after looking through docs, forums, and videos, I haven't found anything that does what I'm looking for
I want to animate a roll on the x axis with a timeline, but i don't know the x value when the animation starts. So i cant set the first keyframe value to 0 since that will make the space ship instantly snap to 0 then start the timeline animation. How can i solve this? can i get the current X value of my ship and use that to set the value of the first keyframe?
Print string hit actor or hit comp. Cast the one that yield the correct result. I'm guessing it's component but print string to make sure
Lerp between current rotation and target rotation. Don't hardcore them
Try shift+enter instead
In the instr I suppose
oh
U prob want an actual new line
it didnt change anything
No idea then
Never attempt to do so but does \n even recognised as line break?
In string nonetheless
Try {/n} @grave apex
