#blueprint
1 messages ¡ Page 221 of 1
no no i meant i made a static level with no proc gen to see if it works at all
that works fine
Baked is as in the name, baked, fixed to a predetermined landscape/area
in the proc gen area nothing works
Ah ok then we just talked around each other haha
Cant you query the recast to regenerate?
query?
i know what query means, i meant how đ
yeah so i generate the level, i find my nav mesh volume actor, i expand it, and i run the console command, the loading screen stays as long as "is navigation being built stays to true"
Thats what you do today already?
yep
Rip
yep
If you dont , add it
Crap
@gentle urchin I'm gonna try an alternative tomorrow that I wanted to test out anyways where the entirety of the maze is already made and the nav is baked but I block off paths
Under the build menu where you buildmlighting etc
Im sorta out of things to suggest at this point đ
Been a while since i had to deal with it
didnt work either
it's ok, i'll try out my other method
when using rebuild, it creates a long load time
like 5-12 secs
I'd rather do something faster
ty
This game looooks like it barely needa navigationnbut
Could need at some point i supposw
Some A* implementation would do the trick
Oh nvm its not actually tile based
it is proc gen rooms and the floor is also instanced since rooms may have holes
I generate box colliders that act as obstacles
but then I can just do that
anyways, i'm, off
Hi everyone,
Need your help with Save system. Currently I need to save my Actor Transform with Current Time (float).
I made instance and BP_SavePoint.
The system must work like this:
Actor overlaps BP_SavePoint and save game.
If player wants to continue, the game loads from main menuâs button Continue.
Upper is 3 BPs (Instance, SavePoint and MainMenu).
When I overlap BP_SavePoint and then start from âContinueâ button, itâs place me in the beginning of the level, and next time I stepped into BP_SavePoint, it displayed error Accessed None trying to read etcâŚ
Whatâs wrong with my BPs? Thanks in advance
Hmm yeah, Iâve got it set up so that it gets the players forward vector and the forward vector of âDoor Open Locationâ. Itâs then plugged into a dot and then I have it setup so that if it is greater than 0 then the door open side is 1.0. Then likewise if itâs not then the door open side is -1.0. When you mention about inverting the rotation - how would I go about doing that?
First , try to get the correct value. What you said sounds about right, compare the forward vector of the character and the door
this will determine which way it's facing
if 0 or great then do X otherwise do Y
you can use select node to determine which value the door should rotate to
also show your code next time
I did, I sent the blueprint in my post. I can resend it if that would help?
Is that picture suppose to show anything? I can't see what handle door does
Don't c the point of using tick either, you prob can use timeline here for resident evil1 door animation
Handle Door has its own section down a little bit - this handles the door rotation
And that's the code that we should look at?
Unless it's there and I just cant see it on my mobile
In a nutshell, to partially open the door the door open side is multiplied by 15 and is then moved to another part called Handle Rotation. To open it fully, door side is multiplied with door open angle (which is set to 90). This should then obviously be that if the door open side is 1 or -1 it will open accordingly
Ahhh yeah itâs for desktop, itâs the entire blueprint from UE5 so that it can be shared
Same setup as when youâre in UE so you need to move around by dragging and clicking
I prefer ss but regardless if you have direction instead pulling the door toward you, just inverse the rotation when the dot product is less than 0
Iâll see if I can give that a go and then Iâll send over a ss to help. I get roughly what youâre saying with this, thank you. What did you mention about Tick before? Could you explain a little further, Iâm relatively new to blueprints so Iâm unsure haha
I don't see why you want to run your logic every frame which got driven by a boolean
How I would do it is player interact with the door, the door plays the animation using timeline
And that's that.
And Iâd just plug each state of the door (partially open, fully open) in as animations rather than logic?
That will be driven by the float from the timeline
Interact with door -> check direction, if dot product greater than 0 play timeline A else play timeline B
And since you have curve you can control the animation more by editing the tangent, allowing for constant and ease in anim
Alright awesome, thank you! Iâm loading up UE now, could you help me with another issue? The issue is the auto close functionality. I wonât try to explain it right now, Iâll send over a ss as it could be just be a logic error Iâm not noticing.
This is the code for the mathematics (dot) for the door
This is for Handle Door which rotates the door
This actually rotates it
And this is for closing the door automatically behind you
And here is the start too
I would re-do the whole thing and can only repeat what I would have done
No need for event tick
no need states
Just Timeline that gets played when door get interacted depending where the player is at relative to the door
I have a strange issue where Enhanced Input System events starting spam triggering all outputs if they're triggered just a moment before loading into a new level and the input continues to be held. Anyone know why this happens / how to fix it?
For example if I hold the "sprint" button on my controller to trigger the IA_Sprint event and then loads a new level, then both the "Started", "Completed", and "Triggered" outputs will be fired every frame until the button is released.
erhm need help with a formula
max amount 20
gain 10
if u at 18
you only get 2
how would i convert that "gain 10" to 2 ?
You only get 2 what? Are these items or do you want to change the value?
i got 15 arrows my max is 20 that i can carry
i get a item that replenishes 10
so i can only get 5
Max - Current = Gain
Hi, Please help, waiting for reply for long, while reattaching to component ball stays at ground , if you want I can share blueprint
Please help, what's issue here for the above gameplay issue
I am using UE's water plugin, is there a way I can change the dominant wind angle variable in runtime? I have dynamic wind system to put simply yea
Usually this should probably be a Material Parameter Collection property that you can set somewhere in BP. Any material that relies on it can get it from that MPC. Am not sure how they specified it in that plugin though.
Hi, can anyone help a way to create a material for astroturf please?
https://stock.adobe.com/uk/search?k=astroturf
I'd like to avoid any tiling and have some small height effects, thanks
you sure though?
did tried this, always return false
Oh, they did that in a data asset. That's an odd thing to make a static setting. But Epic does have an issue with considering dynamic worlds in a lot of their level design. I mean they're still using ALandscape for shit.
Still. If that needs changeable, it should be in an MPC
is "cast to materialinterface" the first parent class of all types of materials like for dynamic material instance? i am trying to get the best cast to for asyn load thanks
Unsure of what you're asking for here? You async load, and then cast the return object pointer to whatever class the method you need to call is on.
I use Material Instance as my Asset type to load
Seemed more versatile
correct, Set Material on a PrimitiveComponent uses MaterialInterface as input too
why do i get this error if i do size to fit?
you are trying to access the Fifth item in the array, but you only have 4
but size to fit says it will expand if theres no index?
It's likely talking about what's plugged into the set node
Basic 2D animation question: while walking, stand-by and flying works, attacking and Death doesn't I did "Hit Q to set flipbook to attack" and HP => 0 set flipbook to death animation, but nothing
i got it now, its trying to get the item before expanding the array
strange that manually adding elements to this array beforehand doesnt work
also noticed the stupid truncate đ
Anybody have any ideas how i can stop my FPS camera clipping through walls when aiming up or down?
hi folks I have a question
I'm passing an actor to a function, I need the function to branch out based one of like 20 tags
right now its just "is tag=xyz, if no, is tag=zyx, if no, is tag... ect ect"
This seems like a really dumb way of doing this, what would be a better way than like 20 branches with yes/no decisions?
i think it's a node called "contains" or "has tag"
maybe better to have all the tags in an array and have a single brach with a "Contains" check
yeah in this case its one tag in (the item) and if it has one of 20 tags it runs down one of 20 different "paths"
however making an array of the tags is a great idea incase later i add a new one
sorry, I am bad at expressing what I mean , lol
same
yeah so that isn't the question
I have one actor in, it has one of 20 tags
each tag does a different thing, right now i'm using a ton of branches (one for each tag) which seems like a bad way of doing it
technically i have an inventory system that also sorts thing by tags, i use marco functions to speed up things but the idea is something like this
Switch on tag/name/string
yeah i'm doing something similar, in this case the tag determines what socket to attach to and what secondary logic to run
It does the branching for you
oh yeah i have this too))
ah there we go
they run separately
But strings are terrible imo
Gameplaytags are the way to go
The new world
Life is good then
i'm fine rn
Rn being keyword
it's basically just text
you can just deconstruct the tag into the string and its fine
doesn't matter if it's a "string" "name" or whatever
yep
It matters hugely
tags are just strings with more steps
how?
because you're not doing it his way and his way is the only way to program or somtehing
Lol
Enjoy
thanks, see ya
Grouping, management, not prone to typos, dropdowns, categories, queries, are just some of the things that makes it superior
ok
@gentle urchin thank you mate after doing the practical today i got it working and its completely modular perfect many thanks!
Obviously there was more to it than just modulo and static mesh component as i had to sort out the interaction of said buttons but i was able to sort that logic because of the call buttons was basically the same setting the collision types to be the same
hey, do i need to set the struct after i modify it?
You shouldn't in this instance.
No worries, glad it worked out
In the construction script is it possible to spawn a mesh or add a mesh in an array that I can then select in the details panel in the level?
so that I can position it in the level ideally, with gizmo
The FOV is not lerping, it goes straight to the value
The timeline goes from 0 to 1 though and I can see the values if I print them
Is it because it's at the end of the execution?
What does that mean? Also you prly just did the track wrong. But you may want to switch that to Play From Start if it runs more than once in the game
You cannot spawn things on construct, itâs a safety measure
You can however add placed meshes to an array, sure
you can do a Lerp From To using EnhancedInput OnTriggered node, you can set it up so it fires every tick when you hold the button
For what purpose?
It's a lerp when I release the button basically
changed it to from start and it still doesn't work
gotcha, thanks. if i need, i get a warning right?
As you can see the fov increase works (also on a timeline, triggered On Start of the input)
Alpha in Lerp needs Delta time and to have a tickrate Exec node, idk if timeline provides such
I don't think so. There are just certain things where you may need to use a set, like if that structure was replicated and you wanted to trigger an onrep.
look at that glizzy go lol
So should I just leave the timeline alone and try another approach?
I thought this would be the easiest
yeah, i dropped using timelines way back in 2016
i would personally advise using EnhancedInput method, just so you won't have to gate out Event Tick and roll back values and such
What do you mean by enhanced input method?
using Enhanced Input nodes
something ike this (ignore the bools and everything after the events themselves)
you can find how to set-up EnhancedInput on youtube, i think Epic have documentation on how to set them up too
I see
the "Triggered" can be setup to fire continuosly akin Event Tick as far as you hold the button
Yeah it's just that I don't know if I want to change my whole input system
to support one feature
You know what I mean?
yeah, IMO EnahncedInput is very cool and project independednt, but up to you really
i mean if you can add 1 more key to it idk if it's that much trouble
Timeline is frame independent provided you donât do it wrong
Define âdoesnât workâ. Did you put a breakpoint to see if your timeline is even firing ?
Also your track length is 0.5s so if it completes right away that really shouldnât be a surprise
Half a second is not enough time for a smooth transition
What do you mean? I have the exact same track on the trigger and it works fine
It's supposed to be a quick transition also
Oh hang on I thought that was wrong but then I figured I was hallucinating
Your track goes from 1 to 0
So youâre trying to go from B to A instead of A to B in that lerp
I have a question. I am copying actors and spawning new ones. I want to keep all the variables from the copied actor. Is it possible to get a copy of all variables with a single node or do I have to set them all one by one. "Its annoying to do it one by one"
as you can see in the right image. When I use the spawn actor node it didnt expose all the variables with spawn actor so I had to set them all manually later on. This works its just ALLOT of work
Jesus H. Spaghetti
yeah I hate it but it works....
Have you considered using structs?
I have but this is not my project. I cant simply restructure the actors
so I figured there was a built in way to do it but im not seeing it
What are all these variables covering? Canât read the text in the second image
so essentially I am taking an actor from runtime and creating a new actor in the editor with all the runtime actors variables. The variables you see are replacements on the newly spawned actor
That 2nd image makes me feel uncomfortable XD
wasn't there a duplicate actor node in BP?!
not sure if it was editor only or also works at runtime tho
Do you have C++ access?
unfortunatly no otherwise id make a duplicate actor mod. I dont even have plugin access.
which makes this project.... difficult
Those are some.. interesting constraints.
There is. It's editor only.
UEditorActorSubsystem::DuplicateActor
well in anycase my current method works its just laborious
Well you should add cpp to your project if it get that laborious
I dont have the ability to recompile
im working in a mod editor of a game its a bit different
Im essentially takeing the actor from the game world and spawning an actor in the editor world with the same params. I just wish there was a way to transfer all params without having to break them all out
help me
i'm using the fps blueprint and whether or not i use pawn rotation - if im looking down or up i stop moving. ive tried getting the forward vector of my capsule instead but that didnt make a difference so im sdtill using character forward vector
Code please.
comin' up, though i havent touched it (im basically fresh into the FPS blueprint, have only changed out meshes)
What about the...
Input Context Mapping
I'm assuming that for some reason the IA is passing back odd values, but not sure why yet.
?
Should be easy enough to check by printing the action values
Actually nvm you saying when looking down or up completely? Cause if so it could make sense. You add the action y movement input to the actor forward vector. If the vector points straight up or down then yea you wonât move cause gravity and the ground.
Did you perhaps when replacing meshes remove the default scene root? Does your new root get rotated with look direction? If so try reading a default scene root to your actor that doesnât rotate.
Does anyone know how to fix simple move to location not going to exact click location? Someone else posted this pic online and I cant find very much information about it.
Even when changing the capsule component to a size of 1, its still off by up to ~50 units
Hey, I need help with a weird glitch I've been getting, I am new to unreal and have a basic ai setup. I just added randomized enemy types and a bug has appeared. The code works on the non-randomized enemies. But with the ones with randomized armor, when they die the armor appears above them for a brief tick. Ive tried everything I can think of to stop this from happening, and have narrowed the code down to when the deathpose is set for my ragdoll (before removing physics sim and lowering it into the ground to be destroyed). I've included a quick video, the code for setting the ragdoll position and the code for the randomized character skeleton
Donât know too much about this stuff but I did notice that before rebinding the leader bone component in the construction script, parent tick is called. Might wanna check there if there is any rebinding happening in there that has anything to do with it.
the root shtick is possible, i use Terribilis Studios mixamo converterr
The parent tick is due to it being a child class of my enemy types, the parent doesn't do anything in the construct script
Hmm no idea there, but just try to add a new root to the actor that doesnât rotate at all and see if it works. You can then easily attach everything with its previous hierarchy to that root
Or just print the forward vector of your actor to check
Hmm yea then unfortunately I wouldnât know what could be the issue, was just something that caught my eye
Thanks anyway
50 is about the default acceptance radius.
Is it possible to get it to exact?
Which function are you using for movement? Or are you using BTs?
You could try teleporting the last 50 units, shouldnât really be noticeable at such a small distance.
50 units would be pretty noticeable for that.
Yeah I tired to just shift the capsule component, it looks kind of janky
Could also try to get the vector from actual end location to goal and lerp position along it to make it smooth
Lerp position. Iâll mess around with that when I get back. Thanks for the suggestion đ
Nw also depending on if itâs an AI or player. If itâs AI you have some options and an Acceptance Radius value you can set. Check out this forum post https://forums.unrealengine.com/t/why-is-simple-move-to-location-not-working-as-expected/279113
Iâm trying to create a simple a-rts(moba) kit using blueprint. I started messing around with the Top Down template. Iâve created the camera but now I canât figure out how to âclick to moveâ properly. Iâm using the âSimple move to locationâ but it seems that it doesnât work as I expected to. The character never reaches the click location. It ju...
Btw in set leader pose component did you try checking the bools to see if it helps? Force update sounds like something you might want and canât tell with the other but checking doesnât hurt
Had to read through code. You could fix this with C++. SimpleMoveToLocation will add a PathFollowingComponent to your PlayerController, which will be used to guide the pawn. This PathFollowingComponent has an AcceptanceRadius float on it that dictates distance. If I read correctly, this defaults to the pawn's nav agent radius. But you could set this to like 1.0 or 5.0 in code. I'm unsure if this can be set somewhere else in BP, but it didn't look directly BP exposed.
Just tried it, no luck. Still getting the empty armor popping up
Ah unfortunate. A temporary/crude solution you could attempt would be to just hide the armor, delay until next tick, and then set it to be visible again on event begin play of this actor. Doesnât fix the actual problem but might be good enough for a while.
That is a good temporary fix, might just have to do for now, until I can sort out whats happening in the code, thanks!
Just got back, what could / would I do with this?
Edit Nvm wont work
Edit Edit : Idk what happened but its working perfectly now???
I mean to start youâre showing a node that is not connected to anything. And if it only works sometimes you probably have it running on begin play which does not fire at a precise time
I was just trying to see if I can do anything with it
Use Event Possessed to make sure your char has a controller when you run it
I don't think we have direct access to path following components (in blueprints). I think you can only in C++
Correct
I was just asking in general if I could pull from that, and It didn't seem like you could.
Ah. At first it seemed like youâre saying the cast is failing
My bad, I probably didnt explain very well
Are you just trying to set the acceptance radius?
Are you the one thatâs using move to with no navmesh?
I have nav mesh, and yeah If theres a way to change acceptance radius without C++ that would be sick
Or sorry, navmesh but no AI controller
Ah yeah, that's correct.
Yeah, the AI move to nodes have acceptance radius option
SimpleMoveTo is kinda named that way for a reason đ
I don't want to have to unposess and re posses when using AI move to. If theres a way to do that, I would also be open to that
Btw for your top down game thereâs nothing wrong with having an AI controller move your pawn
Shouldnât be necessary to possess and unpossess, you can just have the AICon possess it, altho idk why you need the PC possession
I don't want to lose control at any point
Why would you lose control?
Unless I'm just not thinking of a way to do it. With simple move to I can click somewhere, and If I change my mind, click to a different location and it will go to the new location isntead.
Can you do the same with AICon?
Yep
Oh..
You may need to call StopMovement first
If you want to interrupt the current move
I did all of this in my RTS project btw đ
And donât worry, your PlayerCon can still run logic without being in possession of your pawn
I need some feedback on my logic. I'm trying to make Mario style jump attack... Currently there is a "bounce" event handled via interfaces that makes actors force a jump out of the player, as well as resetting its velocity beforehand and tweaking air control.
However, I feel the default reaction of one actor trying to jump onto another and getting a weak bounce away is still affecting the results
Hi there, I'm trying to create some simple logic so that when the player character falls beneath the world (if at all) that the character will teleport back up to the surface, allowing for the user to continue playing.
I've got this, but it doesnt seem to trigger , when i cause a "falling" even to happen.. how can I fix this ?
Hi there, I did this not too long ago, It might work for you?
It still isn't great on performance, but is better than event tick. Until I figure out a better way to do it.
hmmm, thanks i'll try your method and see what happens
Even easier, just have a volume that when you overlap it, teleport to the last safe place
Like a kill volume, but for teleporting back up to last safe location, or last checkpoint or whatever
What @thin panther said, might be better in your case.
For determining a last safe location, set up a looping timer for a second, store an array of locations, and trace a short distance down (to hit the floor).
Store these last, say 3 locations, always clearing out the old ones, then when it comes to respawn you can check each location for validity (I.e. not too close to objects, not inaccessible, etc.)
Yeah basically check if falling and if not store it in a variable every so often, then if you do hit the volume, teleport to the last spot you were not falling
But then youre basically still using my code, just adding a bit to the false branch and no need for the volume
I would advise against a delay loop, a looping timer functions preferably in that case
I'd also personally check more often than 5 seconds :P
Looping timer might be better đ¤
5 Seconds was all I needed in my case because I didn't want to put them back where they were
I tried use a timer and it wasnt working , maybe it was how my logic was set up đŚ not sure..
your example didnt work for me đŚ maybe altering the delay ?
Send screenshot
Didnât work ? At all? What was the result ?
the result is just continual falling
ok ill do that
Right now you have it run and it checks if you're falling, branch says youre not. Then doesnt cycle, just stops
should i turn off the world bounds check ?
Depends
ya it just stops
if you're not using kill z
then you can uncheck it
ah
youre hitting kill z in that video before it teleports you too
so either lower kill z or disable it
also fix the loop in your code so it doesnt stop on the branch
All right I'll look into that, yeah what I'm trying to do essentially is not have things destroyed if they fall below the world but instead if the character somehow glitches through the map and starts falling endlessly I want there to be a failsafe so that the character can just be teleport right back to the surface, negating the chance for there to be a bug
ah, then you probably want an aditional bit of code
Basically in Addition to the loop youll want to set a safe area vector variable
then when your branch turns true(Actor Location < z), set actor location at the safe area location
You can modify it to work for you, but thats the jist of it.
A problem with the way I made it, and if you set it up like that is
It depends on how often you check if youre falling
why is my hit event not firin' ?
I still have my other bit of code that was a bit longer so what if I were to merge the bit you made and the one I put together would that work?
Not sure, you could try off the capsule component instead?
Neither of these are the code I made
The top one is the bottom one was mine
youre missing the function to reset
Your set actor location should also go into the delay
then after the delay, call the function
it fired if i bump the npc but not via the scan đ¤
Again, mine isn't the best way to set it up, just the method im using at the moment, but it is better than event tick. It might be better to just set up a volume and execute an event on event actor begin overlap
Ok I'll try the volume method
If you want to set actor location strait up from where you fell off though, youll have to make that loop anyway
Ill see if I can make it real quicjk
im learning as i go along
I think this is what you need
Or a modified version of it
You could combine both custom events into one also
but basically a continuous loop that checks actors location, if its safe, set a safe variable for safe location, if its not safe, set location to last safe location
In my Character.cpp class I have a variable ThrowableClass which is set in BP_Character's Details to either BP_Grenade or BP_Claymore. How can I set ThrowableClass to either of the two BP options, inside Character.cpp or in BP_Character's event graph?
progress
It's a bit difficult to set a blueprint class within C++, it can be done but requires file paths which probably isn't what you want.
You can ensure that the ThrowableClass variable is of type TSubclassOf<YourC++ThrowableClass> and its UPROPERTY() specifiers include BlueprintReadWrite and even EditAnywhere while also under either a protected or public, which will then allow you direct access to the variable and set the value as a default in blueprints.
If you're not currently using a C++ throwable class, create one and reparent your throwables to it.
Thanks. Yeah, I've got ThrowableClass as a subtype of TSubclassOf<YourC++ThrowableClass> and can set the default in the BP_Character. But I want to be able to switch that assignment from BP_Grenade to BP_Claymore and back and forth
If you're wanting to change it at runtime in blueprints, then you'd be able to just set the variable as needed.
snippet from the Character.h at left and the BP_Character at right. I've got ThrowableClass as EditAnywhere, and can set it in defaults. But in the blueprint I don't see anything for getting or setting the variable outside of defaults
I'm not seeing it exposed in the variables list on the left of the BP_Character either
Ahh! It had to be set as BlueprintReadWrite, and not EditAnywhere. I see it and can set it now
Thank you!
EditAnywhere means it's editable in class defaults and on instances you place into the level.
BlueprintReadWrite means you can Get and Set the variable directly in BP code.
hey ik these is a few months late but I am also having the same problem in 5.4.4. Have you found a solution for this? Sometimes my comments also disappears, even after I have compiled and saved the BP and and project file.
just reload. closing the blueprint and reopening seemed to work most of the time, on rare occasions i had to relaunch
got it. thank you and thanks for the quick responseđ
np
Same happens here after 5.4.4
Rare (1-2 timer per day), but it hasnt happened since 4.xx something
And also, just for sanityâs sake make sure you didnât open UE twice by accident
Tho thatâd be pretty obvious when you try to save and get errors
Hi.i have a question. Is there any way for me to get the value of a variable in another bp without casting ? I know about BPI but idk how to make it to just get the value without making it too complicated. So any help would be greatly appreciated.
You have to cast to the type of the BP that has the variable to get the variable.
If you want to avoid linking the bps, add a method that retrieves thr variable to an interface and use that.
You are using an and gate before the branch and have one input set to false. This will never be true. And is only true if both inputs are true.
Quick question. im creating a variable in my gamestate, then realize that i dont need the variable so i delete it 5 seconds later. now it checks the WHOLE DAMN PROJECT for refrences for +10 mins. Thats not the first time happening which puts me in this situation that i have to leave that var for a while and later forget abt it
The checking part is normal though it only should take that long if you have a really big project or slow pc
This just means that a lot of things depend on your GameState.
ohh okay that actually makes sence
thx
Don't be afraid of casting just because some Noobtube video said so.
Especially for default gameplay classes
Hey guys, somebody knows why my spline work like this?
you've mixed up the +1's
you want location and tangent at index
and location and tangent at index+1
I have a audio file byte, whether it is read from filesystem or fetched from a URL. How do I turn it into playable audio in UE? Basically I want to make like a radio that players can play music from soundcloud
What Squize said, plus this should likely be -2. Reason being, there are one less spline sections being connected by spline points than there are spline points themselves, so that's the first -1. Then the first index is 0 despite it being counted as 1 in the number of spline points, so that's the other -1.
#gameplay-ai anyone?
is there a way i could add a niagara particle system component that already references a niagara system variable?
nvm figured it out just add your niagara system as an actor in the level right
and then reference it?
Ok thx, when Iâll come back home I will tryđ
However, I follow this tutorial. Itâs my first time with spline
đŽLearn to create a game in Unreal Engine 5: https://www.unfgames.com/action-game
Want to learn Blueprints from scratch? Watch this: https://youtu.be/W0brCeJNMqk
đ¨Download the Rope Spline Blueprint here! https://vault.unfgames.com/p/unf-art-tools
How to create a spline tool to generate ropes in Unreal Engine 5? In this tutorial you will learn ...
Hey folks,
I am considering designing a locomotion system for my 3D realistic horror game. I have the options of using Lyra and Motion Matching systems. I am proficient in Blueprints but donât have much knowledge in animation. I would like to create my own advanced locomotion system by taking advantage of some tutorials. For creating a lightweight and realistic system, should I use the Lyra system or take inspiration from Motion Matching? Also, is Motion Matching production-ready?
Yeah, it should be -2, not -1. You can see in the tutorial the end of the spline looks strange since it's generating an extra mesh there
I am trying to create a third-person character with an isometric camera angle. I'm trying to smooth the character rotation but RInterpTo function just not working properly. The main logic was developed in C++ and I also tried creating the same with Blueprints, but neither works properly. If I change interp speed value from 0 to something else it either flickers or doesn't move at all. Here I captured a video with Blueprints.
https://streamable.com/5klrxg
I'd appreciate any help
Sounds like youve got 2 things trying to update the rotation
If this is a player possessed character, then SetControlRotation.
hmmm, is it 'legal' to set an enum to E_Max if you don't want it to have a value?
this seems to work for now , but will it make an error down the line packaging or anything?
wonder what happens if you type an invalid value đ¤
it stops the Exec line
i usually have an UNDEFINED as first enum value, which you can even hide from BP
that was plan B, but I didn't want to have to edit everywhere the enum is used if this works
wonder what a Select does...
you don't want to know... trust me đ
It worked! Thanks!
How to do i stop an enemy ai from attacking after a player is dead using a behavior tree?
Does anyone know why when i edit the waterbody blueprint of the water plugin it keeps moving it in unpredictable ways when I compile it? have I messed up the setup or is it a bug?
Also if I move it/rotate it in any ways and then ctrl z it fixes itself
It seems to check the "affect Landscape" box without actually doing it because if i check it and then uncheck it it fixes it
Unity Convert Noob Question: I have created an Actor Component that I want to add to a Blueprint and reference a specific collider (there are multiple) in the Blueprint to work with. In Unity this was just exposing a serialized field and dragging the GameObject into it. How do you go about this in Unreal?
Can anyone help my, I have a widget when i use right click in the inventory, but i set an event on mouse leave to remove the widget, but i want it to be removed when i put the mouse a little mor far away than just leave it? pls help
heya guys any clue on how do i check or fix this
Under which circumstances are you getting it?
MallocBinned2 issues are low-level and often related to some form of memory corruption. Often the cause is stomped memory, which happens (among others) when you write out-of-bounds of arrays, etc.
When tracking these down, using the "stomp allocator" is handy. For a DebugGame you can run it with the switch -stompmalloc to run the game in a mode which forbids memory stomping (at the cost of performance).
It will then assert in case a stomp occurs.
I'm having some trouble with the structure of my blueprints. I could be wrong, but I think the way I want things set up is to have a playercontroller where I set up all my input code, a pawn that is the camera and also recieves the input from the playercontroller to dispatch all my unit actions, and then my units themselves which hold the code for the actions the pawn has them do, does that sound correct?
i've got a canvas in blueprints i got to write data per pixel to, i guess i could draw hundreds of boxes but anyone got any ideas on how to just access the data like an array? any ideas on where i would even start researchign this?
welp i at least figured out the box method it sems, at least its working
or not, they are bleeding into eachother....
so this error happens when i try to run the game a low settings (change using my ingame setting) which cause this error
but when the game runs on higher graphics it dosnt show the error at all
but after reading your explanation i think i know the issue now
Is there some way to apply root motion (outside of animation, with code) without using GAS systems?
I need that for a basic thing though implementing GAS solely for that is overkill
how would i check for a float being a positive or negative value, i swear there was a node for it or am i insane
Also , if you search a variable name type, you can see a list of all the cool tools and ways to use it
yeah, ill be sorting through it for a WHILE
Hi everyone I was wondering if anyone could help me with my movement, Im trying to replicate tekkens movement style where itâs 2d but can move 3d, I got it all working but for some reason no matter what I do the w always makes the player go down and s always makes them go up but itâs supposed to be vise versađ hereâs what I have for it
Im having issues with my hold crouch system where when i exit from under a object i remain crouched until i hit the crouch button again
try adding this
If up is down , and down is up, then you want to invert it , so multiply the X by -1
Oh my god I cannot believe the fix was that simple your the best thank you so much for your help
I currently have a BPI called on left click to select a character and apply an overlay material. I have a blueprint that checks if the character being clicked is currently the selected character, and if so, deselects it - if not, it deselects the current character and selects the new one. How would I set it to deselect the selected character if the thing I'm clicking on is not a character?
Current blueprints attached
a switch on hit actor, maybe?
or check the hitactor against the floor (this seems like a bad idea but it would work in theory)
im running into this problem where changing the resolution yeilds bad results for the UI (the cursor doesn't match where the buttons are highlighted etc)... is there something wrong with my resolution change settings that causes this?
You want to undo your overlay of the previous actor (if valid) , then set the new one, then apply overlay to new actor(again , if valid)
this is my go-to setup for keeping track of 1 selected thing
I guess my confusion is how to set the leftclick input to determine what I'm clicking on, probably the validated get?
Right, but if I left click an actor, it is selected - I want to be able to left click off the actor to deselect it also (not just on another actor) - would that be the validated get functionality?
hey everyone, I am doing a big dumb right now. I am trying to cast to a Custom Game State but I cant for the life of me figure out what the object I need to pass into the cast to Custom Game State is. I have tried every custom blueprint in my project out of desperation, as well as player controller, character, and topdown player character. is there an easy way to find out what object i need to pass in from the custom game state blueprint? Thanks in advance!
Try above, sorry didn't tag^
Is your custom game state not a child of gamestatebase? Isn't that how you do it? :S
you are likely correct I and I am just bad :|, will try to make my custom gamestate a child of the base and get back to you
wait doesnt this mean its parent is game state?
yes, the second is valid checks to see if you actualy clicked on something
try off game state base
the cast to gamestatebase does not have spawn song actor event so i dont believe i could directly cast from gast to gamestate base. also creating a object reference variable of gamestatebase and passing that into cast to customgamestate does not work either. I also tried setting the parent class to gamestatebase just in case you meant for me to do that but it doesnt show as a potential parent option đŚ
Your "CustomGameState" needs to be a child of gamestatebase, and then the stuff you want it to do can be in the "customgamestate"
your customgamestate is a component actor, I'm unsure how that works
you don't cast to the base, you cast to your custom GI
It doesnt' work
It appears crushed
I'll have to refactor how I'm clicking/selecting I think, but the validated get thing helps a ton, thanks
Show the code again
You're still mixing the indexes
You want location and tangent at index
And location and tangent at index+1
ops yes
ok it works
working on a topdown game and i can do this to make sure audio reception is based on where the player pawn is in the world as opposed to the camera/eyes. Is there something similar to ensure world-space camera shakes affect the player if close to the controlled pawn?
Hower I dont understand why it appears crushed
Your "CustomGameState" needs to be a
can someone please help! I think my entire project has ben currupted since I upgraded Unreal Engine, I get errors and when I check I cant see the issue, for example
Compiler] In use pin As Replicated Character no longer exists on node Bad cast node . Please refresh node or break links to remove pin. from Source: /Game/CardReader/BP/BP_ActorCard.BP_ActorCard
but the blue print compiles fine
i get alot of errors
please
You are missing the CardInteract function. Can you recreate and add the function again in your bp. It seems that it causing most of the problem
I dont see it there I never removed it
I havent touched that blueprint in months
like 8 months
What version are you using rn and what version were u using before
im on 5.2.3 I use to be on 5.3.2
Does anyone know why certain components or actors won't receive any damage, CanBeDamaged is ofc on, does collision channel matter?
Does anyone see why this code is returning an accessed none error in terms "Call function Get Blackboard ReturnValue"
It could be empty the first time it fires
Post your nodes
Iâd recommend to revert back to your old version. Unfortunate that it happened; but unreal sometimes breaks bps and other features when u upgrade it. Iâd recommend to stick to one version of unreal when making a project.
Im not sure what happened but I think i fixed. it seems to have been a collision problem where it was overlapping with something before the behavior tree would be possesed by the aic
So my player keeps looping his death animation after death, what is causing that?
Folks, you'd have a much easier time getting an answer here if you post your blueprints and explain what goes on instead of just asking a broad question.
Got it Iâll post it
this is what i use for the death function of my player character, he dies and then the animation loops for 5 seconds and then the actor is destroyed but i need him to just lay there
It's not gonna lay there magically, make a montage section at the end and make that section loop
make a node "stop all animations/Stop All Montage" and link it to "OnCompleted"
I get these errors now butI dont know where or how to fix EnumProperty FInworldConversationUpdateEvent::EventType is not initialized properly. Module:InworldAIClient File:Public/InworldPackets.h
my pawn is standing in the PainCausingVolume, Binded Event isn't firing
(for clarification, OnActorHit event binded the same way, works)
Is it against good practice to put an input in an actor component that you would put on a player. I saw someone do it in an inventory component. I thought it was interesting and was thinking it might be useful in another situation. In the actor component he cast to the player controller and added the mapping context. If you have any thoughts I'd appreciate it thanks! đ
No, a template does that too
what should i use for the target for stop animations @rich locust
okay will try
your mesh
also you put wrong type of "stop animation" it's the one for the Widgets
you need to pull it from the mesh
you can also try this, which would put animation in a "pause"
i might suspect Stopping animation would result in a t pose
i notice yours is saying body mesh mines only has a character mesh and when i attempt to connect it, its not compatible
so i pulled that out
when i attempt to connect it to the target it keeps saying not compatible
you know how to drag from a node?
how to do that again?
you might need basic Ue control walkthrough on youtube, i can't explain it in words
look for "SetPlayRate" in Skeletal Mesh category
here
copy paste this into your BP
replace BodyMesh with your mesh
good job you made it, now connect that to "OnCompleted"
let me try it now i compiled it
Nice Ok Thanks so much! Really appreciate it
I like to have my input events all in the player controller and then send them wherever they are needed (except for UI) just because it makes it much easier to find things.
it's just nice to have a list of all inputs and easy access to the logic they trigger
it didnt work, he is still getting up after death in a loop so i tried adding a notify to the montage
@rich locust
you can technically set animation parameter Looping to false, is it's not already
maybe try stopping the animation like i was thinking at first
This is intentional. And is a new way that was added recently to allow people to make more modular inputs without forcing inheritance. It is good practice.
Just add a montage section?
@frosty heron can you show me a coding example?
i tried using a montage notify @frosty heron
This works in smaller projects. This is a disaster waiting to happen for anything scalable.
Open your montage asset. Right at the end of the montage bar, right click and add montage section. Call it death
Then make it loop
Quick google should demonstrate on how to do it. I don't have editor to show.
Animation Montages are animation assets that enable you to combine animations in a single asset and control playback using Blueprints.
@edgy ingot like that? i added a notify i believe thats what you meant and its right at the end
Gotcha so I could start it in controller then call the logic in the actor component if I wanted. Very good TY for the insight!
mind explaining a bit more, this is something I've been thinking about
just created the montage section checking on how to loop it @frosty heron
Please look at the link I showed
Yeah that's better.
Death should loop to death
On the tick box, click it and select death
PlayerController has an input stack. By default this is PossessedPawn, Itself, Level Blueprint, and any actor you have explicitly called EnableInput on.
When you press a button, Unreal tries to apply it to UI first. If nothing consumes it, it'll reach the GameViewportClient. The GameViewportClient passes this to your PlayerController.
The PlayerController then uses this to broadcast inputs generically using InputComponents. Every actor has the ability to have one and when it has had input enabled, it'll create one. When you put an input action in an actor that has had input enabled, the controller sends the input through that component which runs the event in it's owning actor.
This was recently extended to subcomponents of input enabled actors as well.
Now take for example the idea that you have a generic open world game. You can walk, ride a horse, drive a car, pilot a drone/chopper, pilot a plane, drive a boat. All six of these things can have very different controls sets which you also may want to rebind specifically.
Now imagine putting all of these in your controller class instead of just putting them directly in the class they're used in. You're now making your PlayerController care about the humanoid, the horse, the car, the drone, the plane and the boat classes because you stuck all of the inputs in the controller and it needs to reference all of these classes to be able to send the inputs to them now instead of simply doing it generically the way it was intended through their InputComponents.
thank you, nice breakdown
I do only do this with my player character base class
I simply do not let its components receive inputs
it might be good to move inputs addressing character components to the character event graph, though
You need to set the key to something that's not the default to be able to add another manually. When you click the plus it'll try adding a key/value pair with default values, but it can't do that if one of the keys already there is already the default value
but what IS the default value?)
i looked up it seems it's an old bug, surprised it hasn't been resolved
but are there ways around it?
In this case it looks like you're using an object reference as the key? The default value of an object reference is null, and since it's greyed out you can't change it to anything else. How are you trying to use this?
ok i see, the left side has to be different
yeah i wanted to couple Item currently equipped and slot name for equip/unequip calls
i just reversed the order
since Slots are predetermined and items aren't
Btw, do you know why OnAnyDamage event doesn't output anything?
Without seeing code, "Because {RandomReason}."
yeah , i posted it before, it just got buried
The OnDamage event doesn't fire, when a pawn stands in PainCausingVolume
similarly binded OnHit event does work
What about the ApplyDamage call?
i mean, how does PainCausingVolume applies damage?
i haven't looked into it's C++ i'll be honest
Should be automatic, yeah.
but i imagine it uses the same Damage backend of the engine?
i suspect something might be with the Capsule component, but what exactly can prevent damage from registering?
or what does actor consider for registering Damage, since OnDamage only binds from the Actor, and not Component
Seems to be solely based on whether the volume can detect any overlap from the actor at all.
Technically this pawn is no different structure wise from a default character, is uses Capsule component as a Primitive shape or bounds
and it's collision profile
void APainCausingVolume::PainTimer()
{
if (bPainCausing)
{
TSet<AActor*> TouchingActors;
GetOverlappingActors(TouchingActors);
for (AActor* const A : TouchingActors)
{
if (IsValid(A) && A->CanBeDamaged() && A->GetPhysicsVolume() == this)
{
CausePainTo(A);
}
}
// Stop timer if nothing is overlapping us
if (TouchingActors.Num() == 0)
{
GetWorldTimerManager().ClearTimer(TimerHandle_PainTimer);
}
}
}```
hmmm
so again, what does Actor consider for receiving damage?
since ofc actors can contain as many components as you can shove into it)
i almost feel like i need to write my own pain casuing volume and profile every step of it to see where the chain breaks
Can be Damaged is just this.
bool CanBeDamaged() const
{
return bCanBeDamaged;
}```
yeah i know i use it
Pretty sure that is true by default.
Also I know damage needs to be not zero to be broadcast.
Should start up the editor via VS or Rider. Can debug it without having to create a whole different set of stuff.
What is the painvolume's collision settings?
Should be fine, yeah.
ok this is extremely weird
i just wrote a custom pain volume really quick, and it works...
did Epic break PainCausing Volume somehow??))
i used it to test damage all the time before it was fine
you can see i tried to copy the OG as close as possible
so idk if it's a differen type of overlap detection or something
&& A->GetPhysicsVolume()
maybe this is a bit sus
i'm not sure what it checks for, but there is no node with the same name
I was able to fix the looping death now i noticed my character dies in one hit, his health bar doesnt event touch zero
@rich locust @frosty heron did i do something wrong with the coding?
move your nodes away a little i think there's something back-connected to something that it shouldn't
okay
maybe your OnDamage node is connected directly to Death
you made a loop
you are setting current health and then immediately to Death
disconnect the bottom white
the top one too for that matter
yeah death is connected to something backward
if the player is not dead
update health
check if it's now 0 or below
if it is call death
you can just make a macro or a function
do you understand what the white lines are
the white lines were calling death
it's the execution order of the nodes, going from left to right
it's an event so it's whatever
so do i leave it like this? or is there more i can do
well, you do want the player to die when the health falls below 0
How to fix this? Why its two cursor
I changed the cursor the white one that i dont want
yes, dies when equal to zero
yes, dies when equal to zero @undone bluff
lower or equal
<=
right, but think about the execution wire
what you have right now isn't quite right
yea, remove some health, then check if it fell below zero
im gonna remove death for now, use a print string to check
What is even current health 3? Why the naming?
lol i made multiple because i was referencing different youtube videos i didnt want to confuse myself so i kept renaming them, i didnt delete the others, to keep up i made it 3
thanks for the help @frosty heron @undone bluff and @rich locust
@chilly geyser After trial error and some modification including a line trace to it, this is what worked for me...
So, thank you for your & anyone else's advice.
You still need to fix that branch at the top
the false needs to skip past the set location
Might be why it wasnt working
the delay has two connections
yep
not sure what the teleport is for, but should work now
Might only need or the other
alright, i removed the teleport node, i was trying get it to move the character sort of like a spawn here type thing..
So recently I have been having this problem that I can't interact with a specific character, and what I basically do, is when my player interacts with the npcs collision box it sets up a boolean, and everytime you press left click for example it checks the boolean and it stars the dialogue/interaction, well this works sometimes but mostly not, and I have no idea how to do it else. The first screenshot is a screenshot of the npc's code for the collision, and the rest is how my character is supposed to interact with the npc
I am doing it like this, because each character has a different dialogue, and the characters do repeat in the game, and for that I have to make children of the characters and make the dialogue variable public so I can change it easy.
Is this site closed? does Anyone use blueprintue ?
I have a float value of 0-1 which represents a longbow string being pulled to max , and I want to play a sound as the value is increasing to 1 and play the sound in reverse as it decreses to 0. and also pause if its not changing How Would I do this.
Hello. Is there any way to make post processing effects like a celshader and outline visible in a scene capture 2d component?
I just tried this and it works fine, https://blueprintue.com/
depends on how you change the value
you could increase/decrease the volume of the sound instead of deciding to play/stop it
and your sound has to increase its volume over time as well
or you could use 2 sounds
Its not currently looping. its a sound of a bowstring tension increasing as its pulled back. if anyone has any good ideas Im listening
I thought of using meta sounds but its a bit of a black box. or like fvrkan0995 says using the volume and a looping SFX might work
So if I understand you corretly , having it play the same sound at different stages along the 0-1 float range with corrosponding volume
thank for helping me brainstorm I might try this, seems like a solution and I would not need to worry about reversing the sound either
Help, please!
I have a flight, I control it through the nodes 'Add Torque in Degress', like an airplane roughly speaking~
Overall everything is fine, except for one thing
When I press W button I have to tilt down to the ground, but I take vector from 'Get Actor Right Vector', if Roll = 0 then everything is as it should be, but if not then it starts to tilt not straight to the ground, because it uses local data
It's hard to explain everything in text, so I'll attach a video
So it's like it's tilting down, but only at its local coordinates~
So I need to somehow find a vector that will take Roll into account and direct the character downwards
I use a translator, I hope there are no mistakes in the text
Feel it looks right. The only problem is once you rotate the character, the camera should rotate with it then it looks more like an airplane.
If it was an airplane, it would be right, yes.....
But I need that when pressing W the character is always directed to the ground and not to local coordinates
I do not know how to formulate it correctly~
Roughly so that no matter what position you are in in the air, when you press W, you fly to the ground, for example to land
So I think instead of rotate your character, you might need to just rotate your skeletal mesh then you can keep the controling consistent.
Honestly, if just list up a game has the similar control would be much more helpful to understand. Like you need to rotate the character or not? if so, how?
Nothing comes to mind from games, maybe Day of Dragons since I want to make a similar game
I'll try to explain it again
I have character controls like an airplane, and I need to adjust the behavior so that when I press W, the character tilts down towards the ground, regardless of its current orientation. Right now, if the character is rotated 90 degrees and W is pressed, it starts turning to the right or left, but not tilting down.
How can I change the controls so that when I press W, the character always tilts downward, regardless of his current position?
I'll attach examples of how I want to do it, i.e., so that at this angle (and any other angle) the character behaves like this when W is pressed:
So that's why I said you probably just rotate the skeletal mesh while you want to rotate the character instead of rotating the whole character bluerpint.
Nope, but you need to setup the value every cycle.
what do you mean by every cycle? when i reach to location?
I'm rotate the Capsule Component
I'm relatively new to UE, so maybe some basic things aren't clear to me yet
character movement binds the capsule = character itself. So instead of doing this, rotate your skeletal mesh.
Or just don't rotate at first to see if it meets your requirement or not
I'm totally confused...
So I should use skeletal mesh instead of capsule component?
If you want to rotate and keep the controling consistent, yes.
No, I want to make all the controls like an airplane and only the forward tilt works differently as I described above
I've checked day of dragons, it doesn't rotate the character. So I guess it is not like as you said the control is like airplane...
I just don't know what else to call it, the first thing that comes to mind is flying an airplane
Then just copy the control of Ace combat.
Usually if you want the W and S keep consistent, you wont rotate the character but giving a side speed when you press A or D
I made it so that if Roll > 25 then not Right Vector but Up Vector is used, but then it is still noticeable in the control, so I thought maybe I could find a vector that would always give a âRight Vectorâ vector but regardless of the Roll axis slope.
What can it be called then?
So as not to confuse people in the future...)
Frankly speaking, I think I still didn't get 100% sure what you really want, but check about 2 ways of Ace combat controlling and most of in-air controlling is one of this. I don't recommend to create a new controlling unless you are very confident about it...
Or maybe check panzer dragon, drag on dragoon and etc to get some idea from them how to control a dragon.
I'll try to explain it like this
When flying and turning left, you kind of make a circle, and pressing S (lean back) kind of shortens the radius of the circle
But when you press W, you just fly out of the circle
I want you to fly to the ground without flying out of the circle
At the end of the video, I press W and fly out of the circle, and I want it to go down
I apologize for not being able to articulate it properly
Hmm, so how do you lift your dragon up? if S is leaning back. Usually your left stick left or right will be controlling rotate left/right or circular move left/right (depends on what you want) and your left stick up/down will lift your dragon's head up or down right?
Yes
Accelerate or break will be using two another buttons like probably RT/LT
Well, I've only got keyboard control so far, acceleration on Shift, deceleration on Space Bar.
That's also good. So I guess you want circular move left/right when you press A or D?
Let me explain the whole logic behind the flight.
When you enter flight, the flight speed is set (screenshot) and always pushes the character forward in the direction of his gaze
The control is done through tilting the character (Add Torque in Degress)
That is, I just change the direction of his gaze by rotating/tilting him.
Accordingly, when turning on A/D, the character turns a little on the Yaw axis and mostly on the Roll axis
On W/S, the character rotates in the Pitch axis
Hey i'm kinda wondering how yall fix rotation issues when converting a stored rotation value to setting the actual rotation once it's set. So I got two items here, their item positions were saved as 180.0 but when loading them back in their rotation is.. weird. Is there some kind of math I have to do to avoid this
I am using stored value to set rotation
but the set rotation comes out different it seems
It was just an example to try and explain what I want from the W button...)
I'm not sure if I understand totally, but you might need add yaw to your character and put roll on the skeletal mesh means do it in your character animation blueprint to rotate the character from a bone.
I'm thinking about whether to clamp or normalize to an axis to see if that fixes it
use those nodes to rotate your character roll
I have a lot to learn, I realized xdd
Haven't really figured out how to fix it yet, but thanks, I'll try to look into it and apply it!
I think i figured out vital information aka the y axis is somehow fucking everything up
I don't know why that would happen when setting rotation
I found some stuff online about euler angle aliasing or gimbal locks or something
Maybe that kicks in when the y isn't 0 đ¤
that's.. painful
tbh rotation values seem wonky in general when I change this in my blueprint sometimes i get the most random changes
like what the hell is this
or maybe it's floating point errors or whatever
Maybe it's because I used a transform instead of saving it separately..
Who'd have thought simply rotating a object along the z axis would become one of my biggest struggles in this project lol
Hopefully storing values separately helps avoid this, if I knew this I would have straight abandoned transform as a variable lol edit: no one will care but by switching from transform to separate values.. issues seem fixed wow
anyone here have any experience they can share with a targeting ranking system?
this is my current calculation, and im using a bubble sort to rank an array of actors
the one that I copies just use dot product to determine the next actor
so just the looking at component? i have that + distance
ye not sure what your use case is
mine sort of work (not that I understand how it work)
As a side note. I recommend EQS for this.
đď¸ will look that up
heck yeah thats a good tip
dumb thing of the day question - I have been using a pawn as my moveable camera in a top down game i was working on from scratch, but I tried the same setup in the topdownlevel example and every time I start the game in PIE the camera zooms in to 0,0,0 - but I don't know why
Usually best to uncheck the collision test in the spring arm for an RTS camera.
I just unchecked it, but it still does it, I hit play on PIE, it starts out a little above 0,0,0 and then slowly zooms in - none of the controls are registering either, will tinker a bit
Wrong camera maybe?
I don't think there's any other camera it could be, I checked for any sneaky actors lol
From what Im reading online EQS doesnt seem to be commonly run on the character. Have you had success with this yourself?
I wasn't setting the default loc/rot/zoom variables in beginplay womp womp
Of course. I wouldn't suggest it otherwise. EQS was originally put in as a helper for AI. So you'll see a lot of AI BT stuff for it. But you can just as easily run it without an AI. There is a RunEQSQuery function. This passes back an object you can bind OnQueryFinished and do whatever you like with the results.
Hi, a little unrelated question but how do you display the coloured numbers on top of your characters, is that via a debug material ?
just some text and a function
Ok thanks !
nws!
i must be missing something id love if you could help me out?
the player character sees the enemies with the perception component
I'm not following? This isn't EQS.
the EQS portion that i want to use to replace the crude sight sense get
its returning false
if i do just a regular "get actors of class" i get my actors
but the hook for the perception component is what i seem to be missing?
Does it work if you change the actor type allowed?
no
ill try change my query actor
setting the querier to the ai perception component also did not work
how to split array? this does not work
I'm migrating some assets from UE 5.4.3 project to 5.3.2 (SoundCues and WAVs to be specific). But for some reason assets are not migrated but the folder hierarchy from the source project is reconstructed. Is it an expected result? Are assets not migratable to older versions of the engine?
space delimiter doesnt seem to work, but this is correct
i got it working with a custom generator lol
this returns the actors that i need, its so weird that the native perceive generator doesnt work
Ah. nice. đ I can test that sometime later too to see what is up with that. Working atm so can't do much.
its all good ill keep investigating, im very fresh to AI in unreal
sadly not, I don't think UE lets you which really sucks. AFAIK the binary .uasset files are marked with some sort of EngineVersion value or something, to tell UE what engine version the uasset was last saved in. And it uses that to make sure that older UE versions can't open newer assets. Or something like that. I'm not 100% positive but I think I read that somewhere a while ago.
Hi guys, any ideas why it takes a full 5s. for my zombie to attack me?
Oh, ok, thanks. Sad to hear
Hi! I've been trying to make a BlueprintInterface Shoot function but I've hit confusion.
Removing "Event Shoot" in BP_Shotgun and putting "Event Tick" instead makes it work but I want it to only shoot when I use my "EnhancedInputAction"-key.
What am I doing wrong? (left image is Character BP, right is Weapon BP)
Hey guys, what I have to put here? I'm tryng to control the UI from a Dialogue Component? Somebody could help me please?
Announce Post: https://forums.unrealengine.com/showthread.php?101051
This Training Stream takes a look at Blueprint Communication. We find that Unreal Developers of all levels can sometimes struggle through the concepts behind moving data between objects. So in this video we'll take a look at the different ways to make Blueprints talk to one an...
Relatively sure that your InputAction is not a Weapon.
Ok I tried with this but I don't understand how to fix the error
Anyone knows?
Reference/pointer "Player HUD" is empty/invalid
the issue is wherever you are setting it
target is the actor in which to call the interface, it needs to be a reference to the weapon BP
Hey, do you have a link to this bug?
how can i update sky sphere in game
Hey everyone, when using a custom game state base do you have to initialize it somehow? everything I am finding online is the difference between game mode and game state but the issue i am having is whenever I cast to my custom gamestate base the cast always fails. For context I am trying to follow the flow chart in the first image and attached the relevant blueprints that are not casting properly
Get Actor By Class -> call functions and set variables on it
I forget if it also has an "update everything" function but if so you call that afterwards
making an elevetor with maps, one holding floor int and the other floor location for vinterp, when i press the button (first screenshot) i add the value to the map and hold it as a queue where the elevator should stop, after reaching the floor, i remove the key, but when i press the key again. It gets added to the front of queue not the back
does adding a map value, add it to the front by default or the end of the array?
Hello. I'd like some advice. I have a cutscene, but as soon as it ends, it switches back to the player view. I don't want that, I would like it to stay at the end of the cutscene indefinitely.
Maps are unordered
So yes
Youd want a queue
Make a struct to act as a pair instead, if you don't need the hashed lookup of a map, then put it in an array.
Does anyone have a good method to set variables on an actor that can be read from another blueprint using Get Hit Result Under Cursor by channel? Essentially I want to change text visibility on a widget based on if variables on another actor are true or not.
Edit : trying with interfaces
hi
i have a blueprint while every single static mesh in the blueprint is Movable but i cant move thing around!
its a flyingpawn from Airsim plugin.
would you help me?
beacuse always updating location
just changing the static mesh into a simple sphere would solve this
maybe it only works with that static mesh?
I don't know how it's setup so I can't tell you why
either way, let's talk about why you want to use the gizmo at runtime in the first place
i just wanted to attach this to another actor and it was not able to move with it. so i have checked and see that i cant move it by hand too so i have asked this,
the movement logic is using world space
actually it should still move along with the actor its attached to
but again, I do not know how it's set up
you can always just do it yourself on tick
switch on gameplaytagconteiner bug? the next nodes dont trigger wtf
I am in desperate need of help, Im unable to either
a) Remove a widget and delete it (so it doesnt consume inputs)
b) set focus to another widget
none of theese nodes work
all of theese nodes do not set focus
the only thing that happens is my widget plays an animation of it closing itself, but continues to exist
Like how đ
Is it possible to access and tweak these parameters on my decal through blue print at run time? Like how you can use "Set scalar parameter Value on Materials" for Mesh Component
Hey all. I'm new to mobile development and I wondered if there's a way to prevent the default touch controls from moving around when the player touches the screen
Is that was "Prevent Recenter" in the Touch Interface Setup bp is for?
Hello quick question, how can I define the montage play rate based on delay time and animation time?
edit: Ended up using a multiplier to set play rate than dividing the animation time by multiplier to get the delay time.
Yeah there's a checkbox in the default bp that allows you to keep them static
I would advise also switching to left side joystick only and making the turn movement done by swiping on the right half of the screen (think how pubg mobile does it)
Hello everyone. I hope someone can solve this blueprints problem I have. I don't think its very complicated but I am a novice for sure. I have screenshots for context. I need him to ONLY "weave" when another input is pressed, like cntrl for example. Then when I let go of cntrl, he just walks again. Currently wasd controls both "weave" and walk simultaneously. Because I don't know how to trigger one by holding an input. Thanks so much to whoever knows what I'm talking about.
Idle
Weaving backwards forwards left and right
Blueprints
Hey sorry to bug you again about this. But was wondering do you usually use an interface when player controller triggering logic in player character. I want to have decent modular code that can scale well but don't want to over complicate things either. Is hard ref fine or better to use interface? Small but robust rpg type game in mind.
if you need the interface to support a variety of classes it is better to just have the input event in those classes
Interesting ok ! đ ty very much
I have a base class shared by all characters, I keep a variable of its type which I set to whatever the currently controlled instance is
Gotcha ok cool!
if you have vehicles or similar usecases then keeping character specific controls in the character itself might be better
I'd mainly just keep them out of components
input events in the main graph > call function in component
Ahhh ok yeah i like that.
Trying to get better about using components so that helps trying to organize this
Anyone used the MoverComponent yet? Anyone know why this thing doesn't work?
I thought a bit about it, here's a better reply:
That used to be the proper way to do things, but with the enhanced input system having contexts now and actions being separated from the player controller it's not necessary.
As already said, the player controller would have global inputs that are not specific to any pawn, also UI inputs with the input mode set to GameAndUI,
then the actual pawn classes have their own mapping contexts that are registered on Possessed and unregistered on Unpossessed and are implemented in the event graph.
Same thing if one pawn has mechanics that require a different mapping, you can make a new graph for that to keep things clean.
Mine is an endless runner so there is no aim/move. Just jump and dash.
Very interesting . For sure bro. I'll keep this in mind. Really appreciate all the help
Hi, is there a way to copy an actor and all of his attached childs/internals or do I have to do it myself ? Here I do a symmetry on the component and want at least the geometry to be copied.
to whoever just had a question about some janky get actor of class setup and then deleted it, you can pass in a subclass of a specific type like a pawn by using a function and then the get actor of class will know the output is a pawn:
Aye, @rugged wigeon I just fixed it by adding the generic cast to it. Thanks for answering. The actual answer was infront of me but my memory blanked the hell out haha
hi im trying learn how multiplayer works but cube not spawns on client only spawns on server how can i fix that
make sure the cube class is marked as replicating
Doing a simple silly BP.
Any idea why it wouldn't work?
Literally just AIMove đ
Yes navmesh exists
Acceptance radius is set to 444. You're asking to move it 222 on the Y.
So it's within range.
Im aware
It won't move if it's within the acceptance radius.
ohhh
I thought that meant accepted distance it is allowed to move
from startpoint
It's just to make sure the AI doesn't continually try to move the position, especially if it may be blocked by something - at some point you want it to stop when it gets close enough kinda thing.
Got it. Tyvm
Are you sure switch on a container works that way?
Try doing a Container To Array and loop the items with your switch.
The switch has authority is redundant on spawn cube as it is running on server.
Your code will spawn the cube if server press E and replicate it to clients if the spawned actor is marked as replicated.
If the actual issue is client pressing doesn't do anything it's because you didn't have anything on the remote pin after the E input. You can run the server rpc there.
Also calling server rpc as server is redundant, you are already the server why do you need to request server to run a function.
Is there a way to get simple move to, ai move to, move component to, ect: to work even if its <50 units away?
Hey all, I'm having a weird issue that when landing the gears do not align (see images) properly after flying, I've tried everything i can and the last image is the code of where it stands right, i dont know how else to fix it. I'm sure it is solvable, but im coming up blank... any help ?
Where is the root of the mesh?
its a scene component
if you drag it up in the view port, then hit the end key, does it go through the landscape?
one sec just reloading the engine
i hit end and no it just goes back to the surface
default map might not be at 0
this is my landing gear up code
figure out the elevation of your landcape
make sure its 0
or whatever youre setting the location to
i set it all to 0, and still the same outcome
whats your player start set at?
also ill have to watch your video again, guess it doesnt matter, all of your set location are realitive and not world
Send a video of what it does, the whole animation
Let me read again what youre trying to do
ok one moment
and my player start, is set just a bit behind the ship
@chilly geyser
Try to set the realitive location on a timer
then reverse the timer when its time to land
ok i'll try that, then post an update..
I'm not sure which channel to pose a question/discussion about the general game design for player movement, so I'll start here. Please let me know if there is a better channel for this topic.
The game genre is a Myst-like, slow paced, exploration puzzle game.
I've implemented a walk/run toggle on the Tab key and a sprint toggle on the Shift key. When exiting sprint, it will revert to whether you were previously walking or running. However, when sprinting, if you hit the Tab key, it will take you out of sprint and toggle your walk/run (causing you to walk if you were previously running when you entered sprint or vise versa).
I'm not 100% sure if this is a good system or not. It feels good to me, but I wanted to get other's feedback on it. Maybe Tab should not ever take you out of sprint. But if so, what should Tab do when sprinting?
Sounds good to me
Thanks for that. Do you happen to know any games that handle mouse/keyboard walk/run/sprint like this?
I'll check that out, thanks
It doesn't look like Ark has a walk, just a run and sprint. I know I've played games with walk/run/sprint, but I just can't think of any.
GTA V has a walk, run and sprint mechanic
pretty sure you used to have to spam a button to start the full sprint but they later made it so you could just hold the button down in the settings
I don't happen to have that game. I did just try Hogwarts Legacy and that one has a walk run toggle and when sprinting, if you hit walk/run, it doesn't take you out of sprint, but it does toggle your walk run. If you were walking when you started sprinting, hitting the run toggle makes you run when you stop sprinting. Maybe I should do that. I'm still undecided.
@chilly geyser in my BP i had a scene component and the landing gear "under" that component, so once I deleted the "gear varibles", and just left the "landing gear" varible and 0'd out the X, & Y, ..... THEN THE Z WORKS AS IT SHOULD! the gear is aligned.... i guess it was my own error..
crisis averted lol
Glad you found a fix XD
same, thanks đ
Is there a way to make something invisible without using set hidden in game to true or material trickery? I think the plugin I'm using is resetting the hidden in game to be visible so I'm trying to see if there's an alternative.
Why not either of those ?
You can scale it to 0, move it elsewhere, disable collision
But its all trickery
What plugin is that.. sounds rather annoying tbh
It's Dungeon Architect. It was supposed to have been fixed a while back but seems like it's still a problem.
Moving it somewhere else isn't a terrible idea actually as an extra precaution.
Okay so I spent some times in some games with walk/run/sprint mechanics and here is what I found:
Shadow of Tomb Raider:
Run by default
Shift toggles sprint
Left ctrl to walk, have to hold it
Ctrl while running = instawalk
Ctrl while sprinting = instawalk
Letting go of Ctrl always returns to running, even if you were sprinting
Horizon Forbidden West:
Walk/Run toggle on Alt
Sprint toggle on Shift
Hitting Alt while sprinting = instawalk
Toggling sprint off = running even if you were walking before sprinting
Both Hogwarts & Starfield:
Walk/run toggle on C
Sprint toggle on Shift
Pressing C while sprinting toggles walk/run in the background, but doesn't stop sprinting
The Witcher:
Walk/Run toggle on Ctrl
Sprint toggle on Shift
Pressing Ctrl while sprinting does nothing
When you come out of sprint, you go back to the mode you were in when you enabled sprint
Conan Exiles:
Walk/Run toggle on Backspace
Sprint toggle on Shift
Sprint toggle only works if running
Shift while walking does nothing
Pressing backspace while running or sprinting = instawalk
Bottom line is that they all kinda do it differently so there is no real common way to do it.
I've changed mine to function like Hogwarts and Starfield.
sounds like several games got bugs with their sprinting /walking
Just pick one
i spawned an actor infront of me on widget blueprint constructor
and on destruct the CaptureActor not destroyed
is there something wrong with destructor or this is not the way to destroy the capture actor?
ofcourse i can spawn it using controller and destroy it, but why in widget its not working to destroy
it works now magically đ nvm
probably a basic issue, but I'm having a problem creating a basic widget component. I've made the widget, attached it to a springarm which is attached to my character... Viewport looks proper, but in game I get a message - MID_Widget3DPassThrough_Translucent_OneSided_0 is not a valid parent for MaterialInstanceDynamic
Issue seems to be with Lyra Character, as it works fine on other actors.
It seems you are trying to create a material instance dynamic out of the widget 3d material
Which as the log says, ain't compatible
I'm just doing the standard stuff. I made a cube actor, added the component, slotted in the widget, and it worked. Did the same on my lyra character and it started popping off an error.
Seemed to have identified the issue. Lyra Character seems to load differently than standard actors. Instead of adding a widget component, creating it then adding it after the character loads seems to resolve the issue.
how do I load image buffer into texture image? Basically I fetch a jpg file from the web and load it as a usable texture to show on UI or something
nvm just find out the node exists for that
you want rocks to fall?
i only saw that be done with skeletal meshes
not static ones
theres a reason theyre called static lol
@sweet silo
yah no it's working i was talking about the rows of bp4
hey guys im having issues passing an enum to my save game. The enum is set in a widget (game mode with easy,normal and har difficulty) and when i click on it it sets the enum and changes level. Then in my character blueprint on event begin play I modify some variables (health for instance) based on the value of the enum. This works fine as I can see how the health changes but when I try to save it, the value of the enum is not in scope. The actual enum is within a game instance (which I cast to in begin play before execution), what could it be the issue please?
The first part of my code is the widget, setting my game instance (GI_GB) and also my save game (400) and then below is a screenshot of my save game function (in my character bp which again is executed after casting to GI_GB). The green circle here is when the 400 variable is valid and the red circle below when the game is created and my 400 ref is not valid. The breakpoint will always show me "not in scope"
Cast the game instance in on event construct and then make a ref from it and use it instead of take a ref from casting in pre construct
Can you show me your save system or tell me how you save your variables in (400)
sure, i use this function. The not valid path is what i shown in the previous screenshot set my 028 (enum) from my save game (400 , below in my second screenshot) and then when the reference is valid (above in the second screenshot I get the value from my game instance (GI_GB) and set it from my save game (400)
I think my logic from where I take it (400) is wrong and I tried both ways why it says is not in scope as it is definitely working in game
it would be clear in this one sorry, the red is the "not valid" and the green is the "is valid" node
You need first check if save exist and if exist load and csst to the save object and set the 400 or not Create save and ref
There is a node named save exist or something like that
yes but wouldn't that be when I load my game? I am using that when I load the game ( i used the epic documentation video on saving and all is saving/loading correctly as exception of this variable)
You can print the value from the enum after you set it
yes and that is the odd thing, the value is fine even when I pass it to a different level it is . Is only when saving
actually is not (I was debugging the health variable instead), many thanks for the help. I now have something where I can check!
Put all the components refs in an array and foreach
That's sort of what's going on in your current code implicitly right now anyway
oh ok thanks yeah taht's what i thought tahnks a lot
I strongly recommend using data assets instead of enums for difficulties.
Why?
Generally the same reason you should have a data asset for anything. It has associated data. Name, Description, gameplay data, editor data, etc. Sure you can link the enum to a rowname and then use that to put the data in a datatable. But at this point you've just made an indirection to your data that costs a lot more than simply passing a pointer to the data asset around.
Does anyone know how to solve this problem?
I tried to retarget the new Unreal 5.4 animation package to my own model and I seem to have done something wrong.
never used but will have a look at it, many thanks
anyone can help? im trying to make a builder game where u can like place stuff. but i want the placed stuff to be actors and not static meshes so they can be interacted with. now the problem is when i want to give every static mesh a actor it says this:
any solutions? i tried using class actor and object actor and both say the same thing
its just an array of a class i made and the one thats not working is a "actor class"
Can you show how you did this as a class type? Because that should work.
