#blueprint
1 messages · Page 122 of 1
As i just said
This
If you want it to change instantly then hook up the set text logic to OnInteract instead of OnEndInteract
liekt his?
Can someone explain why this is printed 10 times?! This is a print statement I put in the construction graph of one of my actors. So it should be run once for every instance of the actor but there's only one of them placed in my world.
I can see it being printed twice. Some compilation of the actor and then again for placing it in the world. But I don't know why it's printed 10x?
Test it
works but new issue, trying to close the door wont activate
ok so i got this it can read which side the attack is coming in on now can i get launch character work on the opponent actor now thats the question
youre gonna need to show your code
Wont activate or progressbar still hidden?
Maybe we should just leave it visible, but set to 0 percent instead
wont activate, progress bar works and it chagnes to open and if i run again changes to closed but the actual door movement woint change after first instance
event begin play?
nothing
im not certain about constructionscript
like put the print string on event begin play
that's not the question
Sounds like your door logic is flawed
i mean i dont doubt it
Dragging the actor ? Is it a parent actor ?
Check that OnOnteractnis triggered again
Add print string or enable breakpoint on the node
Get used to debugging :p
its only running once
It's an actor with nothing in it but the print statment. All I'm doing it compiling the actor.
It doesn't matter. I can only assume it is what it is I was just curious as to what's going on in the background.
im not certain where to go to try debugging why interact is only running once
Chevk whats triggering the interact
Its the timer startednin StartInteract
Isnthat triggered the second time?
Still weird behaviour. You can try printing displayname of the actor
Just to verify
You try. It's the easiest thing to replicate. I want to see if it's just me.
woudl it be because of this variable? the interaction time gets reset no?
Off the computer so cant atm
No
This variable is not changed during runtime
Is Interact called twice ?
its created on true and called if false
During debugging........
why am i calling interact on false?
If there is no interaction time, then it immediately calls the interaction rather than creating a timer with 0 time that calls Interact.
ahhh for an instant interact vs hold to interact
A timer with <= 0 time is invalid acccording to node comment
Yes
I must have compiled twice the first time and got double the print statements. So It prints 6 times. 3 statements are printed when compiling the actor and it's not placed in the world. This is the BP_Test_C_0 and then if it's also placed in the world you get 3 additional BP_Test prints.
So the construction event is run 3 times when compiling and it's doubled if in the world. Still weird that it's run more than once.
i feel like im so close
i just need a way to apply a force to push the opponent back but i just dont know what to use to do so\
i can identify the hit and whats getting hit
Agree, that is weird. Surprised it runs even when not in the level... shouldnt be constructed at that point
It's constructed for the actor viewport no?
i feel like i should be able to use the what is getting hit and then apply a launch or something
Could be, I guess
I haven't played with this yet but you apply an impluse to it right?
i tried that but it wont allow the array reference from the line trace
How realistic is your game?
Are your opponents using human skeletal meshes? You can get a hit animation from mixamo?
its just a 2d fighter so im trying to get knockback for z and x
You can move your opponent back x amount and then run a lerp node to do it smoothly
.
Cat is trying to tell you something
lol
and now my brain is trying to understand it lol
interact is not getting called twice
I know sometimes it's hard. You can use chat gpt sometimes to help explain things
why is it SO close lmao
it's like perfect
Is StartInteract called twice?
the nodes being so close together?
yea, well done
theyre almost as close together as i am to dropping out of my school
i cannot figure out why interact is onyl runnign once
my school advertises that they will teach us UE adn the most theyve done is "this is ue, how to import, blueprints exist, create a level"
went and got some fresh air to clear the mind. tart interaction is getting called twice ehre
@trim matrix it works! thanks for the tips and hints not only does it work i also learned something how about that lol
why is it getting called twice tho?
np!
np!=p
(np!=p)==T
Thank you!! That helped me immensely! What I want to do, works now thanks to you 🙂
Do enums transend through multiple actors?
I have a setup like this
Character spawns projectile - Projectile reports Hit location to Interface - Interface triggers event in Componet - componet Spawns Actor at Location
Character can destroy Projectile, but Spawned Actor from Componet remains.
Enum be a best setup for this? this way i can load all the BP with a state of what its doing?
Basically when the character Destroys the projectile i want it to call down to destroy the Spawn actor from the Componet.
how can i make a boomerang effect with my ProjectileMovement Component? I tryed using timeline, but no results 🥲
what if you made it a homing Projectile, So when you throw it out the inital velocity sets it to fly out, but the Homing starts to move back to the player after a small delay?
Then just use the a setup to rotate your boomerrang
what would be the most convenient way to gather references to my existing audio volume actors? the level blueprint?
Not sure, maybe get actors of class in this case? Could try #audio
maybe thats a more appropriate place to ask yeah
Has anyone ever thought about using a Spring arm Attached to an actor for a grappling hook Constraint?
That wouldn't really work very well
im finding this out, after a .2 delay i attached a spring arm from projectile to character, it instantly teleports a ways out and glitches around when i move.
length set to 0, all transforms 0
On to constraints i guess
hullo all, so turns out i cant use a timeline node in a Blueprint component.
is their an alternative ? or do i need to go back into my character ? to use this node.
https://dev.epicgames.com/documentation/en-us/unreal-engine/components-in-unreal-engine I recommend reading up on this, but your right you cannot call a timeline to a Blueprint Componet
cheers
there an alternative ... i now need to make my code a heck of a lot more complicated.
Neither projectile or character will respect a constraint unless they specifically are set up to play nice with physics stuff
how so? Seems all im getting is a refrencing issue
any examples?
after my projectile hits, im trying to Add a constraint from the hit location to the character, so far nothing but troubles
sorry to keep bugging you, i tihnk i ofund the issue, everytime the linetrace changes the events are unbound where as it should be when it leaves the hit actor. rebind only happens when i look at actor
and from what i can tell the issue lines within this photo
anyone able to help me fix this?
how did you get your spaget like that?
Accessed None = You have an empty reference. While you may have set the type of the variable to "BP Third Person Character", that doesn't mean you've set it with a reference to a specific spawned "BP Third Person Character".
actually its the fact that rebind is happening before unbind when i look at the door
Hey guys so im having an issue with media player and materials.
Basically, I have this little Tablet that you can bring up in the game and the screen is hooked up to a material that has a media texture and media player connected.
This enables me to play pre-animated videos for the screen whenever I want.
The problem is, the media player plays the same video at the same time on EVERY Tablet opened in the game. I want to make it so it only plays on the specified Tablet but I don't know how to make a media player play on only one specific material when all the Tablets in game have the same shared material....
Any help would be VERY Appriciated
Unbind happens first, as seen in your picture. Execution flow is left to right
Sounds like the second time aroundz you pass in a nullactor or smth
We know the original code works so just gotta keep digging.
on initial hit of an object, it sends rebind, on second hit it runs rebind and then unbind
should unbind be running at all when it hits the door?
is there any chance you could post all the code again so i can double check everything matches?
Alright will Check on this.
what's the best sql database plugin to use with UE?
and are there free good stuff?
Is there a way to show vector variables ( exposed as 3D widget ) - to show up as world location instead of relative location?
Basically my problem is, I have a few different actors, they have different anchors/pivots which are the exposed vectors, when I select a bunch I want to set the anchors for instance to 0.0.0 i.e. the origin of the map, but since its relative, the location is different for each actor
Why would a PHYSICS constraint affect the movement of 2 non-physics actors?
I just finished going through everythign we did, mine matches exactly yours. im not certain where the issue is here. the only thing thats different is your debug key vs my enhanced input key
Probably not built in, but you could have another vector that exposes its position in world space using the construction script and an editor function that can set it by world location and translate it to relative.
Not the right kind of question to ask. How you connect to them and how you use them are all very different so there is no "best" database plugin. You'd start first with finding the database system you want to use based on your requirements of your database, then you'd find out if there is a plugin for that specific type of database. If you have multiple choices of plugins for a particular type of database system, maybe then you could ask between them which is best, but that also could be extremely subjective depending on the features provided and how it exposes the access to the database.
anyone have any theories on why unbind is activating again in my code?
Working on a paint / cleaning blueprint in unreal. I can change the color, but I'm wondering, is there a way to like DELETE that area where I draw or make it transparent?
Currently I'm using a Brush Material that takes a texture and draws it over the static mesh's render material using the "Draw material" canvas function. I tried using a fully transparent material, but it just seems to leave it the same color as it was before.
This might be a material question so I'll ask around there too
im referencing this
you shouldn't ask twice... #rules
I just want something to make a table into and be able to read and write from/into it, basically like a data table but in BPs
...but why?
U can use map + structure combo with add & remove functions
the included data tables do not support runtime editing and any plugins I've seen only add the ability to import at runtime, they're meant for easy formatting of larger amounts of related game data, especially in third party software like google sheets or excel
Key is something unique and value is a structure
But for any changes u need to recreate ur map pair
Hey everybody 😄 I was wondering if any of you know some ressources to be a better gamedev? What I mean by that is that so far in my learning, I've been ''cutting'' corner! For example, I now know that a state machine should use Enums State instead of multiple booleans. I tried to find a resources/video that would explain how to implement enums in a state machine but it was so far in vains :/ If some one could direct me to one, it would be greatly appreciated LD
Anyone know how i can clamp my movement distance between 2 spots?
Clamp(float)? No connection between the question and the screen
where do i put the clamp though? i tried doing it between the multiply node and add local offset
but that just clamps the 0-1 action value i think
U need just specify min and max
yeah i did that but that just makes my movement infinite
because the action value is -1 for down and 1 for up so any number i doesn't clamp it
its more like a clamp for the speed
Do u wanna do?
Ur question is a clamp distance between 2 points but u said that u want to clamp movement speed
Im just trying to make it so i cant go up too far, and i cant go down too far
oh mb i meant like clamp the distance the player is able to move
smooth movement
If you want your cube to not go farther than its base local position by a certain distance, then you just need to keep a base vector and check the distance when you move it around
I get the spring arm, but constraint should still work with character. If the 💊 is affected by gravity which is a physics setting.. I wouldn't see why not. I'm not sure understand. Regardless of what happens I'll find some solution to what I'm looking to do.
Which is a clamp on distance from grappling hook.
@frail onyx For example
ok thx
But this example won't let you move if your cube has moved beyond the maximum distance, you also need to add logic so you can shorten the distance but can't increase it
oh, do u know how i can get it to do that?
Extrapolation
Or u can just tp ur cube to max distance if it beyond max dist
why this cast fails?
Check gamemode
this is an ai character derived from the base character
and what gamemode has to do with ai?
U answered on ur question
you says i have to check game mode, you think ai should be using different game modes?
No, if problem with AI, no
yes in my image posted, i am clearly trying to cast to an AI which is failing
Get Owning Player Pawn
Gets the owning player pawn that's owned by the player controller assigned to this widget.
The widget shouldn't be committing any such logic at all. It should just be fed with data and that's it
The only logic it can do is cosmetic
i can get access to the character from widget this is not the issue
And even more so, it should not know who exactly owns it
getting access to ai class which is placed in the level is failing
my character and ai character both are derived from mybasecharacter class
U do not need to cast to any pawn from ur widget
Owner sends info into widget
Via interface or widget functions
get all actors of class did the trick
Only if door is different from what was trgeted before
why could make set simulate physics node to false not acctually set it to false ? iam not updating the set simu phsyics anywhere else and when i untick in game manualt it stays unticked
Show me the trace and the function after, in the character
Along with how the input is setup rm
means i can get user widget in the bot class itself and update it from here?
this way i can use one widget with all ai characters?
I don't know what and where you want to display, but the widget doesn't need to know about who owns it, it's the owner that needs to know that
You can assign absolutely any owner class to this widget and it should not break the game with this
@vivid kayak he is more capable of doing that. Just a known troll
How can you test whether or not the saving works? Does simply running a standalone save, or does it not have a save location so it just doesnt save?
Im making an autosave system where it saves right before leaving the game, how can I know that this saves it, or do I have to test it with putting it on keybinds, and manually test it? Doesn't feel right. 👀
Hi!
I have a Blueprint actor class that inherits from a C++ class. When I didn't set the root component (SetRootComponent), I got a warning in the editor saying that no root component was set and that it took a random one. To solve the problem, I added a USceneComponent and set it as root. The warning no longer appeared in the editor, but the collisions stopped working. Only when I made the mesh the root component did the collisions work again. Do you know why collisions stopped to work when I use a USceneComponent as the RootComponent? Thanks.
Any reasons why a C++ GameMode would be selected over a BP GameMode when the default gamemode is set to the BP version? This is with a barely changed ThirdPersonCharacter tutorial
Say I had to test something manually in actual game, what do I have to do to achieve that? Create a separate executable in a separate folder?
How do you usually quit your game in the editor? Note that using Esc doesn’t technically quit game, you can use some other key or functions to go into the quit game sequence, so you can perform the Save check before that.
I think I managed to figure it out now, though not sure how good it is in technical terms
hi guys do any one know how to create spawn coin system in unreal i tried so many things
I personally use the level blueprint for that. Create an actor blueprint that will be your coin, and use level blueprint for spawning. Not sure if that is the best way to do it, but it worked for me.
yea but i want along the path it spawn coins just like in subway
I would guess you would have to play around with offset and loops? How do you imagine the spawning? In a straight line, or will there be elevation?
stright line
I wouldn't say this is a very scalable approach. The level BP has a lot of limitations and anything done in it will probably need to be repeated if you create a new level. Using an actor component you put on the game state would be better.
Then I guess I would create a delay on tick event in level blueprint, create a variable that would be your offset, spawn coin and then increase offset
Yeah you are probably right, i'm also just starting out pretty much
It was just simpler for me to get my head around it this way
ok so whats the offset i can create a delay on tick but dont know what offset is
you mean the location?
ok and how i increase it
I'm not sure if it's useful for you if I just show you the completed product in terms of learning, if that's your goal. Look at the direction where you want your coins to spawn, and then add to X/Y/Z, whichever you need.
ok ill try
I would create a BP, add a spline to it. When you place it in the level, you'll then be able to manipulate the spline. The coins would then spawn a long the spline.
Add a spacing var (float) to define the space between coins. Then you get get the length of the spline and divide by the spacing var to get how many coins to spawn.
On begin play, you would then do a for loop using how many coins you want to spawn and get the position along the spline and use it to spawn actor of class (You're coin BP).
This then become a reusable BP that you can use multiple times in the same level or even in different levels.
Edit: You can check out the unreal documentation for how to use splines, it's not a bad starting point.
Delayed tick in LevelBP isn't a very sound advice 🫣
An actor possibly with a splined version makes far more sense
thanks adding a local offset didnt work because the path is very long ill try the spline method
Yea, it just delays the tick from starting not the time between ticks.
Thanks for correcting me, haven't tried it, but spline sounds easier for sure. I've tried learning programming for a long time now, and always found it hard because I was learning by trying to do perfect techniques, as soon as I dropped the idea of doing it perfectly, it was way easier to pick it up, at least in my experience. 👀
I find it useful running into problems to then later have to fix it
It does create fixed intervals at delay rate but its not a good method for achieving it
Oh yea, I forget the delay ignores additional triggers if it's already counting.
Why does widgets lose focus when pausing the game? 🤔
morning squize heres what you requested
Is anyone able to help with interpolating/lerping between two separate Post Process Settings struct variables using a single Post Process volume?
I've googled around and I'm stuck on this, the only conclusions I've come to is users saying I would need two separate Post Process Volumes and lerp the Blend Weight to accomplish this
Ideally I need to do this with a single volume
I have an issue with "server travel" not working properly. The Target must be a "PC Core" reference, however I'm trying to use "PC Lobby" which is a child class of "PC Core", could this work or is it mendatory to have the parent reference ? How can I get the parent of "PC Lobby" then ?
@tropic bison normally, one loads from the main menu
what reason do u want to load the save game object inside the character?
this is pretty bad design too, considering all other elements that need to be saving, requires to access your character
what if the character is destroyed for w/e reason?
You should use game instance to save/load your save game object
Who can start the game?
the host of the game
then why do you need server RPC?
if only the server can start the game
the start game button shouldn't even be visible to clients
it's not visible to clients
it's only visible to the host
then don't need server rpc
just run server travel
don't even need to pass controller
can I do that in the HUD class ? As that code abvoe is in the HUD Class
where ever make sense
tho I would just do it in the widget
on button click -> Server travel
why overcomplicate it
Hi all, i try it physical model with tire skeleton for deform, but wheels go out from chassis,
it doesn't work
Static wheel mesh is ok, but skeleton go out
@main lake check out online on how to execute server travel
i don't use it my self (yet)
Looks alright
the only difference that i can see is that you use get node twice in widget whereas im only using it once
ic ant see taht causing an issue though
Should be fine
already did but doesn't work on my side
all I gotta say is keep trying 😄
I haven't used it my self, can't tell u exactly what to do
So, is your updateHovered called twice?
@main lake u are playing as listen server yea? and you also said the start game only visible to the host
which I assumed to be listen server
yes
? 🤔
that's the right command and don't see any typo, so that's why I'm confused
the updateinteractabel or update holdvalue?
First one yes
its only getting called once when LT changes
Only reason it would unbind and not bind would be if its called again with invalid interrsctable
hi do you know why there is infinte loop here
you possible run a code that spawn it self (new blueprint as you name it) which spawn it self, over and over
hence infinite loop
i did a branch check to see if bpi interactable != the alst interactable and if true it works for the widget but interacting becomes impossible
how do i solve it
We just wanna unbind instantly because thevevent is only called if interactable changed (to null or other)
So we dont need to check that again here
it shoudl be fine if unbind runs again right? as long as rebind is happening after? in theory anyways
breakaway the infinite chain, don't spawn something that spawn it self
Yepp
Infinite loop detected. Blueprint: NewBlueprint Function: Inputs Call Stack: show
would this imply that the line trace is updating twice?
when does spawn coins run ?
Thats what it sounds like.. debug 😆
Add breakpoint and see
on event begin play
of the type that you are spawning ?
wdym by breakpoint? like just disconnect exec line?
yes it cause infinte loop on new blueprint
Found the issue, it looks like I can't test as "listen server" and had to be in "Standalone", why is that ?
Right click node -> add breakpoint
Then play
so like was mentioned, for each one your spawning your calling begin play and spawning more, so it's just constantly spawning and never end
oh ok than how i stop it i just want to spawn the coin multiple times
I can only make assumptions. it does make sense but I wouldn't worry about it
what exactly are you trying to do, spawn a few coins at the beginning of game ?
where do i add it to then? if its unbind or rebind, as soon as i look at the door it breaks
yes i tried event tick but it didnt work if this work i will expand it and make alot of coins in my endless runner game
The 'continue'
maybe begin play of the character ?
I'm not sure to understand what's the purpose of "Standalone" compared to listen server
And see how many timed it happens
Vs expected
While staring at the door it should fire once when looking at the door
Then not again untill you look away
ok ill try it on begin play of the charcter
so it's infinite, so you don't have to worry about resetting the levels ?
if you do it on character you'll want to figure out which level your on
well I didn't care enough to pursue it
as long it work in packaged/steam
it's gucci
the infinite loop is proplem not a solution
i'm saying it's an infinite runner
yes
are you resetting ? and loading a new level ?
because if so you'll just need a way to determine what level it is
so you spawn properly
if that makes sense
when i look at door, breaks, look away, breaks, look back to door, breaks and get 2 strings, unbound and rebound, look away, breaks
yes i have logic for this one sec
this is what detrmine it if it overlap with the shpere i set it to true
Bu what happens when you
- look at it
- interact with it
look at first time, jsut rebinds, interact at that point, not a problem works both ways, look away and abck at it. rebind then unbind and interact wont activate cause no events are bound
i'm not really understanding, i see an event and you set the x ?
x is usually forward ? what are you using for forward ?
So thats what you need to investigate
if i interact the second time the door does nothing but interact still breaks
Whats failing
its hard to understand can we just get back to the for loop proplem plz x is determine the left and right and 0 because i have lane1x and lane2x and lane3x
Swap out the door code so it only swaps the boolean
Reduce it to minimal
did you try on character begin play ? again this will have to be altered per restart if you have levels
also if you die, do you re spawn the character ?
yes i tried it but the same error i get actor of class and begin the spawn on switch on int and the for loop
if i'm in my blueprint event graph, is there a way to open the "world outliner" to drag a reference to a level actor into my blueprint?
i didnt reach this part yet
hmm, what does the begin play of the thing your spawning look like ?
looking away and back causes it to no set the value. also added a print string before the flip flop and its not posting after look away
on beginplay you spawn coins ?
i don't see that function
this is the item you are spawning ?
this is the function
yes
ya so you don't want to call that function on begin play of the thing your spawning
because it will spawn, run play, spawn the next runs play, spawn this runs play
put it on the character and take it out of the item your spawning
ok ill try this
first image runs print in widget, second one doesnt run print inside door
it worked thank you so much
How to make a blueprint class start on Event BeginPlay if I already used Event BeginPlay in level blueprint? Event Init doesn't seem to do the trick and Event Construct is not available either.
where is this node going to? i know its the event dispatcher but where does the dispatcher go to?
Doesn't print when I run the game
shoudl i be getting this printstring everytime the hitacctor changes? cause im not atm
where is this?
blueprint class
what blueprint class?
named gameinstance
ok well
it would be too early
game instance run before your world even spawned
afaik print string need world context
no, level blueprint communication goes one way in bp land
in short, don't use it
99% of the time it's used for the wrong reason
well there's a way to call a custom event in a level blueprint by executing console command
but that's like 🤮 , just don't use level blueprint to make your life easier
what can I put my game logic in if I wanted it to start on event begin play and not in level blueprint?
Basically this, it randomly picks a country from a data table, then puts that country name into a string varibale and then when player writes something in TextBox it tests whether their input was equal to that randomly chosen country variable
you will have to figure out when to have the data ready and when to read it
it all depends on your game design
If hitactor is valid yes
It's just a sequence, when you run the game, it randomly picks the country straight away and then you can keep trying countries one by one until you get it correct so once your input was equal to the correct country string you win the game
sure, so you can figure out what's to be called first, where to call it and when to read it
only if hitactor==True okay
why is unbind old events running on hit actor? it shoudlnt right?
I'm trying to learn about casting and have my button make a floor move when I touch the button. I'm attempting to use tags that I added to two actors in my level. Am I doing something blatantly wrong? When I touch the button, the actors don't move at all
Idk what that means, but I got another question, can I store my custom events in game instance and then when needed call them from level blueprint?
Hi!
or is that the same case #blueprint message
Why can't I create a custom event?
I have declared OnStop this way:```DECLARE_DYNAMIC_MULTICAST_DELEGATE(FOnStopDelegate);
UCLASS()
class TETRIS_API ATBlock : public AActor
{
GENERATED_BODY()
public:
UPROPERTY(BlueprintAssignable)
FOnStopDelegate OnStop;```
Thanks!
That's where the event reference is supposed to go, you have to create your custom event separately
am pretty sure
I think it is because I'm inside a function, not in the Event Graph.
It's because and I'm trying to declare it inside a function.
Thanks.
ah my bad then
If hit actor changes we need to unbind from old events
so it needs to run on both hitactor and hit notactor
Unbind, Yes
But only if last interractable was valid
(Which is checked inside the function)
Hard to say at this point
Gotta test your exact scenario on my setup to see if its an oversight
I'm attempting to use tags that I added to two actors in my level to move them. When I touch a button on my level, the actors don't move at all. How am I communicating to the level actors incorrectly?
thank you
Did the Begin Overlap trigger at all? Try putting in a Print behind the outputs
yes it did. I added that and it registers
your door open and closed are the same numbers btw
haha yes I realize that, but the target actor doesn't move regardless =\
check the length of the array you get
are you getting the print strings ?
yep!
^
Cant replicate it here
I am doing multi-sphere trace from character. Why it is detecting only 1 hit point on chair? Shouldn't it detect multiple hit points on chair?
I am trying to calculate IK points for two hand pick.
No it only reacts once per thing
Youd wanna trace for that I thinkn
Or have sockets for targets
thanks for this suggestion! could you explain how to do that? theres only one array so its [0]
What is the other approach to calculate IK points dynamically? I am trying to calculate points dynamically at runtime.
How do I recenter the transform icon?
Got that! So I was wondering if multi-sphere will detect multiple points
when you get actors with tag, drag out from the result and get length, then print string it
it might be 0
could you post all the photos again in a dump message? i want to go back and check everything again
i feel like theres an issue between the old interface method and this new component method where interface is messing it up somehow and i want to check and remove anythign i dont need for the component
cause you started with a blank project right? or did it have the interface method in it beforehand?
thank you
i love it thank you. im going to double check EVERYTHING
Included the bp name at the top of most pics so you know where they are ment to be
hmm i'm not sure how to do that. Just to be clear on how i'm originally doing it, It is possible to cast to an actor that isn't a blueprint but a static mesh?
well your not casting, your just trying to get all those actors with that tag
are you trying to get static mesh with tag ?
or i'm a bit confused
oh i see. But yes, I have a static mesh placed in my level as an actor that i'm trying to get to move by pressing a button with a collision box. If theres a better way to do that i'm learnin haha
Is the BeginOverlap being triggered in the first place?
it is
How did you confirm?
when I touch the button with my hands, I get both prints on screen
yeah both "print strings"
Might have been that they all opened and then closed, but so fast so you don’t see it
Try disconnecting the one behind Set Is True
And see if it changes
wdym "button with a collision box" ?
I'm wanting to touch this and then the door opens / closes
I tried making a boolean Door_Open that will represent if the door is
It sounds like you are somehow triggering it twice with one single touch
well thats a small box, what are you using the collision for ?
when I collide with my hands, to trigger the door opening sequence
Tried this yet?
I did, when I touch the button it prints to the screen, but nothing moves
So only one print?
yes
If that’s the case, reconnect it
Then try to check the outputs of that array
Like loop and print the object display name in the array
The ones with Get Actors with Tag
See if they output the correct actors that you want moved
How did it go?
or to start just check the length
thank you!! yes, it prints 0
that's the problem
there is zero so it's not doing any
i'm surprised no error in the set location
but make sure you put the tag on your actor
and spell it exactly the same
So that was it
Check if there are any typos in the tags of your actors which you are trying to move
Like upper/lower case
If there are no typos or extra space
Then maybe is the wrong tag
Start from the base again and search for Tags
I remember there is an actor tag instead of component tag
are you spawning the thing in or you place it in level ?
Or something like that
it's already placed in my level
your putting it on the mesh, put it on the actor
self
Tag on components works with * get component with tag
While tag om actor is.... yes you guessed it
GetActorwithTag
hi, is there any downsides of using the built-in crouch system? Actually i really like it but i dont want to rewrite again because of a stupid bug
re-write what?
I'm using the in-built crouch system
So are you saying that I need to create a blueprint actor class for just that one floor? I can't tag the static mesh that's in the level?
rewriting a crouch system from zero, sorry if i cant explain myself my english isnt so good
all good, it's also my second language
i wouldn't recommend writing a crouch system your self
especially if you need to change the capsule size when crouching
the calculations are not beginner friendly imo
and you will end up re-writing what cmc alreay do anyway
What do you mean by “static mesh in the level”? It is not an actor?
doesn't it create an actor for you anyway ?
that you can just tag
I created a blueprint actor class with a "button" static mesh and a collision box. Then just dragged and dropped into my level
Firstly i tried that but i realised drawing a raycast isnt so accurate. When i was using godot i was using a "shape cast" but i cant find that in ue eighter. So looks like i will go with the built-in
so ya, just tag the actor
it only says component ?
i create actor and put in level, i can change tags np
Sorry maybe i'm confused on the terminology. But i'm just trying to move this single floor thats in my level
thats what I thought I did
so is that a component on an actor, or an actor itself ?
because i would tag that because that's what your looking for
think about it, your getting the actors with that tag, your looking for the floor
isn't it just a static mesh I dropped into my level?
ohhh hmm okay. I guess I don't know how to specifically do that
Click on the Instance and search Tags
This?
You’ll probably see an Actor Tag and Component Tag
AHH!!
Yep add to the one below
I made the same mistake before too
lol
Unforunately, the floor still is not moving
Both prints still appear, right? Disconnect one of them again
Yeah I deleted the component tag and just have the actor tag now
this simple mechanism still doesn't move the floor. hmm
Recheck the array, does it return correctly this time?
whats the length now ?
let me set that up again
i would probably use world also, get world add/subtract it or something
not sure if it matters but idk what that actor is relative to
array prints 1
Hmm
From the array try to get element 0 (first actor) before passing it to the Target of the Set Relative
Not sure if plugging an array directly to it is the reason why it’s not working
is there a better way to just move a single 'actor' on my level without having to create a whole blueprint class?
Have 1 actor that manages all other actor movement
i ahve no idea whats going on man, is there any wway that i can quickly send you my project and have you take a look?
Any idea why after randomly picking an item it doesn't remove that item from the array?
Sure
Dm dropbox link or smth
btw thanks the for help @frosty heron I fixed that issue I had earlier
I didn't even remember what we talked about lol
btw you probably want to cache the random result
you are calling random twice here, what you plug to row name doesn't neccessarily be the one that gets removed
You deserve a pizza
ah thanks i'll try that
I treated my self with peperroni from costco this morning
Why do you need to create another blueprint class?
Have you tried this btw?
what's the right way to throttle down blueprint execution when the actor is out of view frustrum?
what do you want to throttle down?
like reducing tick rates?
yes, and know when the enemy is within view, it's for a side scrolling shoot them up
wdym? is the goal is not to get an element from the row, then remove the name from the array list?
Yes, but my game has multiple rounds and I'm using the same array every round so that it always removes that item from the array so it cant be picked again in any other rounds
thats what i meant by picking 2 times in a row
hard to tell what you want to do from this picture alone. If you run the whole function again and expect to not being able to pick the same row then you would be mistaken
because row is populated before you run the remove logic
I would recommend writing the algorithm first before breaking them into function
Custom event -> Init Row Names
Custom event -> Pick random row name ( also delete from array )
If First round, Init row names, Pick random row name
If greater than 1st round -> Pick random row name ( also delete from array )
If anyone could tell me what I am doing wrong, it would help me out a lot. I have this function to detect mouse movement and sent an Enum for that direction. The issue is, Left, Up, and Right all work correctly, but when I move the mouse downward, it processes as Up. Can anyone see what I didn't wrong in my blueprint?
That wasn't what I wanted to do, sorry for the confusion, me being me... forgot to remove the getting all rows of data table and override the array in every round
thanks for the help though I really appreciate it <3
min is 360, and range is to 360.
lol it happens
Could i kindly suggest doing the logic differently ?
yeah, I'm all ears
I understand what you mean by offset by 45, but how would I do that?
I'm new to blueprints, so I'm just learning by trial and error lol
yeah I don't need to and was trying to avoid doing that. But I'm still working to figure out how to move a single "static mesh" that I placed in my level to be an actor
Do you mean a part of an actor?
If something is in your level it is either an actor or a component of that actor
so this staircase is an actor correct?
Depends on how you structured it
I wouldn’t know unless you show me the Details box
It could be an actor on its own or it could be part of another actor
Yep this is an actor
Ait, So I added a tag to it. So shouldn't this blueprint move the staircase?
Like I said, instead of plugging the output array directly to the Target, have you tried getting element 0 of the array and plug it in instead?
oh, no sorry I haven't. I'm not sure how to do that honestly =\
Drag out from the Array output, search “Get”, you should be able to find a node something like Get Array Element
hmm
Yes
still didn't work =\
Erm is there another plain Get instead of Get(a copy)?
no just these three
Ok
Print this Get and see what it returns
Just to confirm that we are getting the correct actor first
If the actor is correct, try using Add Relative Location instead of Set
should'nt it be getting all actors with "Floor_Door" as a tag?
is there a node that allows me to use an integer to specifically use a route instead of having to use a branch to a branch
It should, so let’s check
Case switch
interesting it doesnt pull up a node with that name
What is the Switch Node in Unreal Engine 4 Blueprints?
Source Files: https://github.com/MWadstein/wtf-hdi-files
Search for “Switch”
Still can't figure it out. Is there another easy way to just move the stair case when my hand touches the button collision box on the wall?
Can I see what’s your code like now?
it's the same. i'm not sure how to implement what you were saying =\
i'm still at the basics I guess
on the switch node is there a way I can set specific values on the int instead of it auto selecting 0,1,2,3 etc
I think you can remove the unwanted nodes?
You can edit the values
im trying to put in .3
but its just isnt working lol
unless it has to be whole values
Point 3? That’s not an Integer, that’s a Float
You can’t really use Float on a switch
Try changing this to Add Relative Location instead
And don’t forget the Get Element 0 earlier on
Integers are whole values
What exactly were you trying to achieve?
still no movement =\
Is there no Add Relative Location?
only for the blueprint class button i'm touching
Drag out from this and search again, what are the available options?
What should I search
“Add relative location”, see what turns up
Also try to print this
See which actor is being retuned at runtime
based off a certain integer i want to set a variable but the integers are not consecutive
How is the Integer derived? Any particular reasons why they are not in running order?
Try printing this and see what you get
And what are the intended operations following the switch?
knockback
I see
so setting the knockback variable and then a launch character
Unless the numbers are too far apart, you can have 3-7 (starting index 3), just skip the even nodes
Or see if you are able to remove them by right clicking on them
gotcha
I really appreciate your help, but i'm still so new at learning blueprints. How print the results?
Right click, search Print, then connect the Get Element 0 to In Text
Not directly from the array
hope someone could help me with this
this?
What are you stuck with?
like everything i tried to do this for one week
This prints "Box153"
So how far have you gotten? Are you able to spawn one coin?
yes only one
Then something is wrong
Stay in runtime, look through the actors in your editor and see which one is “box153”
this is it
And why does it have the tag
do you know how to open the world outliner that lists all actors in the scene?
from window world oultiliner but im not sure
Just minimize the Play window
thanks
Do you have some code somewhere that is spawning a Box actor object with that tag?
I do not. I guess I could try just creating a tag on a wall right?
No, don’t complicate it
Just go to the outliner and search for Box
Does it always return “box153” or does the number change?
there is only one box153
So you found it?
What object is this on the level?
it is a "ceiling" that is above the button i'm working with
Ah ok. Remove the Actor Tag on this, you might have tagged it wrongly
Then run again to see what it returns this time
You possibly tagged the wrong actor
guys, is just me or unreal changed something in blueprint? for example, on this screenshot, I'm disable a widget, but besides everything works in game, console gives me an error saying the widget variable is none
Can I not have one tag for multiple actors?
Are you intending to move all of them?
Yeah
same thing here, what fixed was checking if the widget is valid before doing anything with it
I paused the development of this game for 3 months, and at that time, no errors regarding this
Hey I'm unsure if this is the place to ask but:
I'm working in 5.2.0-0+UE5 and have an issue with test builds where a music cue and most SFX don't audibly play. I can confirm that it is playing via the au.debug.Sounds 1 command and it has volume (au.debug.Sounds.Sort Volume) but it's not coming through the audio device.
Has anyone experienced this issue? Is it a known problem?
is it a bug? or they updated it?
everytime I mess with widgets, sounds etc, it gives me an error saying it's none value
Ok what is the existing location of Box153 before running?
if I add a branch to check if it's valid first, there is no errors
no problems before, so idk what to think
Means your reference is invalid at the point where you called this
but I never got problems with that before
unreal would just ignore such things
Now when I touch the wall button, "Stairs" is printed in the terminal and represent the stairs right here
Great, now link up the Set Location, use a bigger number like 1000 instead of 100
first check if it's valid before using it on another branch
wth
it was working just fine without checking if isvalid
also, I can't open the game on standalone mode
maybe something is broken?
If it is invalid then it would result in a null reference error
I wasn't getting errors before
Anyone know how to get the forward facing area of a mesh/actor (IE the red plus the blue)? I want to simulate custom drag which changes depending on how the mesh would be turned.
Prints "stairs" and does not move the stairs
Then somewhere down your work you have changed the code such that it reads that node before your widget is created
Check your code again
I checked a really old branch on github of my project
same errors
btw
this is what I get when trying to run the game on standalone mode
and I get this error even on older branchs
it's not my project
or something I did
maybe unreal updated and changed some stuff?
Hi, guys. When i open my Widget that contains a Render Texture 2D the objects spawn on my map???? How can i solve it?
any idea?
if I'm not wrong, in the past I had errors trying to run on standalone mode, I did something and fixed it
I just don't remember what exaclty
Based on your description and screenshot, it simply means that when you run the Remove from Parent node, the starttalkwidget is invalid, simple as that
but the error just occurs when I do something specific that uses that blueprint
why my game won't run on standalone?
just on editor viewport
Trace through your code to see if it was called prematurely by accident
Alternatively just do a validity check
Hello
I have forget the name of the node allowing me to write strings with parameters
maybe I will clean cache
do you remember the name? where i can put variable into {}
the error is
Unhandled Exception: EXCEPTION_ACCESS_VIOLATION reading address 0x0000000000000000
Append String
not that one
the other one
not that one
the other one when i can write a text with {} and input automatically appear on the node
Idg what you mean
“Appear on the node”?
I will give another example
is this wrong?
because it gives me errors now, before it was working fine
Error message?
LogPlayerController: Error: InputMode:UIOnly - Attempting to focus Non-Focusable widget SObjectWidget [Widget.cpp(954)]!
if I add a check to see if it's valid, everything goes back to normal
you guys are more used to blueprint than I, is this wrong? should you really add a verification? or maybe something is broken on my end?
Iirc this is not a fatal error
i remember it's format Text
yes I know, the game never crashes, but it shows me the errors when I leave the game
Never used this before, interesting
instead of 300 append 😄
whenever I try to reference a widget or sound, an error occours
never got that before
strange
@inland wolf
Like I said you’ll probably need to check where that variable is set, maybe you tried to create an invalid widget, like file or path name changed etc
fixed it
Test if your input mode is changed correctly when you run
yes it's help a lot it's easier to build text to debug
won't run on standalone
By this code if WidgetInvetory was invalid then it would just go the False route and not trigger any change in the mode
but I guess that's a different error
Anybody got a link to a tutorial i can use to change locomotion states when collisions happen?
I've tried casting and such but...
maybe permission issues idk
but even with the errors, the game works
that's the stranger part
it's like it's trying to do it before the widget is referenced in the variable, but then tries again and it works
or something like that
idk
It would, since you are probably on Game and UI mode before this
Could be the case
Which is why I suggested relooking into the sequence of your code again
Iono man, there could be a thousand and one reasons depending on your code somewhere else
I think I will just add branches to check if it's valid, I'm just afraid the blueprints or something is corrupted etc
and adding branches is a lost of time
Corruption if you are using GitHub is a possibility
Especially when conflicts happen
as I said, I don't mess with the project since 3 months ago, maybe unreal updated in the meantime
and some stuff changed
Nothing to do with Unreal seriously I doubt
maybe it was not giving errors because it was a bug, and they fixed
well, the engine has a few bugs
collisions for example, it won't work if your character is rotating
it won't detect the collision
and it's a bug on bug lists of 5.3
yeah
but I just saved the project there, no conflicts
Well if you are certain what is happening to you is the bug then I’m not able to provide any insights
or maybe it was giving those errors, but not showing when I closed the game, and I never realised
idk
I'm just afraid of continue the development if everything is corrupted lol
Maybe add a Print behind False to see if it gets triggered, likely it did
trying to go back in time on github changes nothing, so I don't think it's my project the problem
kk
I will check that
strange, nothing occurs and the error is there, maybe it's not in that place idk
LogPlayerController: Error: InputMode:UIOnly - Attempting to focus Non-Focusable widget SObjectWidget [Widget.cpp(954)]!
it's being set
stuff work but there is this on console
should I ignore it?
It’s different error, the widget is non-focusable
I think widgets and stuff aren't being initialized fast enough
or something like that
Possible
but it's focusing later on lmao
maybe a configuration on unreal?
Maybe set a Delay or something?
A shipping build may run different thread orders from editor.
oh I found it
wth?
okay but what explains the errors when trying to check or deactivating other widgets?
maybe
Case by case, you’ll need to look at the flow
sure
did you have problems in the past regarding standalone mode?
Unhandled Exception: EXCEPTION_ACCESS_VIOLATION reading address 0x0000000000000000
I saw some people with the same problem in some foruns, but no solution
This still doesn't move the stairs, but prints "hello"
Hmmm
check to see if your get node is returning a valid output?
We checked that already
From my understanding, you don't normally get access violations from blueprints alone. If you're getting them in a BP only project it might either be a bad engine install or possibly an engine bug.
If you look at the error logs, it should give you more information about the stack trace.
I don't believe it's my project the problem
if I'm not wrong, I had problems with standalone mode in the past
prob something with permissions, idk
I already tried to verify unreal instalation
What is the location of the Stairs in the Outliner before and during runtime?
it think it's a little configuration that I need to change
my graphic drivers are updated btw
You'll need to check the crash logs then. There might be a corrupt file in your project which it might help identify.
How can I determine during run time? shouldn't it not change since nothing is moving it during runtime
it might be moving somewhere else because you are setting relative location
After triggering
Is what you're trying to move set to movable?
well damn, lemme check that. Is that a setting in the details pannel?
Yea. Static meshes by default are well static. (If just dragged in from the content browser)
Oh damn, that could be
how can i make that if player presses buttons in order then a easter egg would happen
Input action with a chord trigger on it.
k thx
That makes total sense, but where do I change that setting?
actually its movable*
have you tried just setting the world location instead of relative?
is there a way to project a custom mesh onto a plane? So that essentially you get the outline of the mesh from the perspective of the plane as a polygon?
THAT worked, thank you! What is the 'relative' node relative to?
like why would I want to use one versus the other (besides this time it worked lol)
What it's attached to. (If it's attached to anything)
I see, so if it's not attached (where I just dragged and dropped in from the content browser), I need to use World location?
I've been having trouble getting my enemy character to just move forward at a constant velocity. I've also tried setting my velocity from the character movement component. This event is being called on a timer set to 0 seconds looping.
Yea, although I'm surprised it's default attachment wasn't the world. 🤔
pretty much
Timers can't have a time of 0 seconds. Use set timer by event for next tick.
I read somewhere that having it set to 0 makes it happen on tick. I just tried event for next tick and that doesn't work either
The custom event does work when I insert it into tick tho
After the add movement input node, add the timer by event on next tick. Hook the red square to the red square on the move forward event. Then just call the event on begin play.
Same
I always thought SetRelative would be like local position or something
3am here, goodnight all
That worked, thanks!
Is there any reason you're not just calling it on tick?
So weird, When I added the "Floor_Door" tag to another static mesh (thats movable), nothing moves when I trigger the overlap function now
Are you adding the tag to the actual actor or the component inside it?
UPDATE
it looks like all my problems are correlated
I will need to deep search and add isvalid to each widget and stuff on my blueprint
at least nothing is corrupted lol
strange since I never had problems with it before
using "Add actor world offset" ended up working.
Now i'm learning to smooth the movement over 1 second. Is this the correct location to place the timeline? Second picture is of my timeline sequence event track
Note to self: Dont be lazy when putting together code, it might bite you. Unbind All was our curse and my demise. Ofcourse we want to retain the owning actors bindings.(and any other bindings we dont 'own', as a widget.)
Does an in-scene reference have to be an Actor? I was hoping to be able to use a blueprint interface array to only select objects that inherit that interface
Im sure that wont work 😅
yeah it didn't 🙂
You could make a small utility thing that does it for you tho
Grab all actors -> filter by implements interface -> display list
(Such a tool could be handy regardless)
yeah I agree
Filter by inheritance and/or by interface^^
Perhaps i should dwindle something together sometime
What reason might there be for this to fail on the very first input, yet work for every single input after it?
It's not the first time I've had something fail on only the first input either, I can't seem to find the reasoning for it
The blue line and its direction suggests you're doing something you shouldnt
(Crossing execution paths and variables)
Will give that a look then. Guess it matters more than I thought
I'm trying to build a card stacking mechanic where you can stack cards on top of each other with an offset (to show the name of each card in the stack.) Ideally this is done with planes in 3d space, but I'm struggling to find a way to prevent the stack from getting so tall that my dragged cards end up underneath the stack.
I was considering just adding a rotation to each card in the stack, but I'm basing this mechanic on Stacklands and their cards seem to be perfectly flat, so I feel like I'm missing another option.
Here's an image to explain what I'm trying to do:
Not really grasping how a 'dragged card' would end undermeath it. I see it in the pic but... wouldnt you just limit dragging under the stack?
But the rotation sounds like a good idea
When you click to drag a card it floats up a certain amount in Z, but stacks will eventually go over that height, so the card ends up under half the stack and above the other half.
Cleaned it up, doesn't seem to have changed things.
It has nothing to do with positioning in the graph and everything to do with the order that references are available. If that input action gets called before the actor exists or that variable is set, then that reference won't exist.
Id imagine the stack offset was fractional (as the cards are mostly just planes?)
Yeah. I think I'll go this route. I was kind of hoping for an "Oh. Just change the rendering order of the cards." answer of some sort. lol
Yeah. I could do that as well. I was worried about z fighting, but I guess even just a .01 offset will fix that...
oh, wait yeah I think I see where my stupidity is lmao
thanks for the help
yep fixed
Well that worked perfectly. Thanks!
I can't seem to use a key input like G and Is Hovered for this widget.
If I use event tick and is hovering, then it fires
but not when i press G
I assume this is inside a widget. Widgets aren't controllers so they can't receive input.
(They can but you must enable it)
how would i enable it
Listen for Input or something like that
Been a while...
Its the node youd use to activate it.. adds a inputcomponent the widget uses
I would have the keyboard input on the player's blueprint, but id rather keep it contained to the slot widget
You can override the OnKeyDown/OnKeyUp functions on the widget.
Theres those too!
I'm not sure of another way to do it.
Other than binding to your player controller and listening for the key press there.
Listen for input key adds an inputcomp at the top of the stack, and can grab the input before anything else
Found a work around
But it'd feel weird to use on a per slot basis
Waste of tick but alright ;p
yeah but I can juse use a sequence modifier
Keep in mind that that means you won't be able to use key binds.
not necessarily
I can use the Key input and get the player controller's blueprint, then the player's settings from there
so it would be
Get Player Controller --> Cast to Blueprint --> Get Key Settings --> Was Input Key Pressed
Not sure I follow. But I trust you'll get it sorted. : ) I haven't played with built in keybinds in Unreal before. Only used a third party option.
Ah.
I'm only in my prototyping stage so there will be dozens of tests 🙂
Fair enough. No point in wasting time on keybinds when you're just prototyping then. : )
yea that comes after the foundational systems of the game lol
hey i got an issue
i have 2 actors that are both on the screen, thay both have an action assiend to an input event, so that when i click something both of tham shuld do the action, but when i click it only one activates at a time
any way to make it so thay both activate on the same input?
client requirement
Input is routed through your player controller and then to the possessed pawn (if there is one).
Actors do not receive any input unless you "Enable Input" on them, however, it's usually not great to continually enable/disable input on a variety of actors. You're better off using the player controller, getting a reference to the actors you're wanting to control, and then using the input from the player controller to then call functions on the actors that need to respond to the input.
client requirement
Can anyone tell me why connecting this physics constraint throws me across the map? Before I trigger overlap -> After I stop flailing around and can take a stable screenshot of where I am. You can just barely see the rainbow cube there tha'ts the AttachTarget.
what sort of table ?
Actually something's occurred to me just now. I'm pretty sure that the place it's connecting me to is 0,0,0 on this map. But why is it doing that, instead of connecting the pawn to that cube that's clearly specified?
before you overlap it happens ?
Nah I meant that first screenshot is before overlap
i use flat files and parse the data as a "table" like a csv
Actually all that other code is irrelevant. This snippet ALONE attaches me to 0,0,0 instead of the AttachTarget cube.
The component itself? it's just attached to the root component
how can i call a custom function from fpCharacter inside an actorBP
Hi guys ! I'm trying to add/edit data of a data table from a custom tool made from Editor Utility Widget, is there anyways to do it in blueprint or I'll have to add some cpp in my tool ?
are both constrained components simulating physics?
No just one
Is that a problem? The idea here is to "catch" a physics-based pawn in something like a net
Hi ! after smashing my head on the desk i have to ask here.
The thing is, I made a custom directionnal gravity in my game, and the rotation is controlled by a variable, which gets all the required updates and is then applied to my pawn.
But the problem is my 1st person camera, especially the left-right look around : normally you would plug the mouse action value in delta rotation Z (Yaw), but if i'm not in a normal Z-axis gravity this can't work anymore 🫠 I have my gravity vector, my actor rotation, but i don't know the maths to rotate around a custom axis. anyone have an idea ?
May wanna try #game-math
i'm affraid they'd talk to me in C++
Translating C++ to BP is easy for stuff like math, all the nodes have the same names
depends
Why the assumption?
idk i'll copy paste then
Okay so we're in the weird zone here. I've "fixed" the earlier issue by swapping the attach component from a box mesh to a box collider. Why did that help? No idea!