#blueprint
1 messages · Page 4 of 1
Sudden onset paralysis ?
I want to apply an impulse to a ragdoll when it gets hit by a gun and have the impulse push the ragdoll in the direction the bullet was travelling, which one of these do I use for?
i.e. if I shot the ragdoll in the face, it the head should move back, if I shoot it in the back of the head, the head should move forward
Oh ok
Yeah no that’s good I got confused for a sec lol
Do you rmbr what you did last before it broke?
Did you mess with the mapping contexts at all
I was messing with looking left and right and also I messed with the inputs
on the screen I showed you
Ah that’s prly why
Yes but I don't know what I did
Well for starters
I might have changed some stuff from -1.0 to positive 1
The stuff in project settings is the old system
Yeah that’s the wrong spot
those shouldn't effect the enhanced input stuff it's seperate
Unless you’re using both for the same thing
well as far as the event that is in the image is enhanced input
You’re using EIS because that’s what gives you IA nodes
You prly went from a template
So get rid of the stuff in project settings
how do I get rid of it?
I delete
ok I deleted the action mappings and axis
in regular input
I still can't walk
it messed up after I fixed something here
@lunar sleet
Guessing you don’t have source control?
Why would my sphere sometimes block on a wall on some angles and sometimes it just goes through? Why does the same sphere sometimes block on a pawn even though it is set to overlap only? I'm setting linear physics velocity on the sphere
no clue what that means but when I pressed a w s d it activated the IA_Move event
It’s an easy way to undo fuckups, should set it up sooner than later, see pinned guide in #ue5-general
Did you play with settings on the char?
maybe
Like use controller rotation
idk I think I did that somewhere
maybe in the project settings
It would be on the char settings
.
You have 2 skeletal meshes ?
no?
Your panel says otherwise
You should figure out which one you’re using
it doesn't let me delete the one im not using only the one i am
ive had it since the start tho
@lunar sleet
Have you changed anything in the mapping context?
Did you recently change game mode or game state?
not in ia_move or in enhanced as I never knew about it before you said
He’s able to move the camera on the char but not the actual char it’s weird
when you float around can you see your character like it's just there not moving ?
I’d still get rid of that 2nd skeletal mesh if it’s it in use tbh
ok i just moved the character spawn higher
and my character just floats
and doesn't fall
that isn't normal right
@lunar sleet
None of it is normal 😀
Blueprint Runtime Error: "Accessed None trying to read property CharacterMovement". Node: Set isfalling? Graph: EventGraph Function: Execute Ubergraph Anim BP Character Blueprint: AnimBP_Character
I got this error after i restart the engine
Also what is cmc
oh it does look pretty empty
Yeah
Make a new char bp, copy all your stuff in it
Can I just make a new char bp and drag character movement?
Hi everyone.
I'm a bit confuse... habitually I never get trouble with Interfaces... but now...
On the BP_Lantern itself, start game event if I refer the function control lanthern that work, but on Third_character when I trigger the right thing, nothing come up...
Any idea?
or no
so I have to make the variables over again?
wait how do I make me the new BP Character @lunar sleet
Right click content browser, blueprint class, character
yes but how do I make me it and not the old blueprint character
It’ll come with a CMC and skeletal mesh
that might sound dumb to you
oke so It should just be me when I press play after?
do I have to delete the old one too
You’ll need to delete the old one
ok is there any easy way to copy the variables
Might need to set it up as default again too
where
When you copy the code, it tends to ask
Just start with the rest first
anyone got an explanation why the one with higher priority doesnt work when in the documentation is noted that higher priorty goes first
I can’t rmbr off the top of my head but I think you need to reference it somehow or use the player controller to send the msg
The mapping work, I tested it with print string
It just don't call the interface
That weird
so the way to do It is just select all the blue prints and crtl+c+v it
?
Bp interfaces are weird that way, but where are you setting the bp lantern ref
i cannot see the user settings tap, im gonna restart real quick
@lunar sleet I never get any trouble before... but maybe I forget something?
The ref is inside the asset on left
Third character blueprint
No no you can’t do that
You want the instance not the asset
So if your char interacts with the lantern somehow, overlap or hit, then you drag off that overlapped/hit actor
Is there any best practice about what type of component should be the Sceneroot component of a blueprint? Of can you just use whatever?
Then, how can I access to the BP_Lanthern function?
bro I don't know how to properly copy it over
Are you interacting with the lantern in any way?
yes, with the input, the lantern is on the caracter... but in the begin, we don't have it
If you’re not that deep just start fresh from a template. And use source control
Wait, it’s a component on the actor?
i have checked my settings for the user settings tab but i cannot find it even after restarting the project
What user settings?
@lunar sleet yes, it's a companant referencing a blueprint
Umm yeah don’t do that 😀
this one that is referenced in #enhanced-input-system
Watch the blueprint communications video pinned here, it helps understand things a bit better
Why are you looking for that?
I told you to go to that channel and watch the pinned tutorials, read the docs, then ask questions if you get stuck, in that channel. After you’ve done all that, preferably
@lunar sleet ok I copied it over how do I change it to default
how can i detect if a nav modifier volume is hovered or clicked
THanks @lunar sleet
Say I have a Blueprint that calls an interface and I declared a variable for that interface in the Blueprint. Can I assign that variable somewhere in the editor? I want to connect it to blueprint in another actor.
where can i learn Blueprints from?
The actual unreal website has some good beginning blueprint tutorials.
Ik this dont belong in this channel but idk where yo ask. Where can i learn how to make Skinned Decal gore so its realistic and sutch bc i dont wana buy something i could learn and make myself
I can see in the details of the actor that calls the interface that I have the public variable for the interface, but I can't assign it in the details view. Nothing comes up as a target for it despite me having an actor in the scene with a blueprint that implements the interface.
thanks
Sure, if you have specific questions the folks are are pretty good at helping around!
I have 2 actors. 1 the characters interacts with and the other one that should be destroyed once the player interacted with the 1st actor. How do i set up the BP for it to get destroyed?
how can i detect if a nav modifier volume is hovered or clicked
I have a simple question. When in a project in unreal and I click into my game anywhere besides my UI elements my mouse cursor disappears
getplayercontroller -> set show mouse cursor
what other alternatives are there for fog of war? what if i dont want fog of war? Should i just cull units that are outside of my units range?
fog of war looks ugly
i dont want a black shadow everywhere in my game
or some weird clouds :/
World partition
thats the one that makes a grid and its like lods?
the purpose of that is performance, right?
my problem is not necessarily performance but more like aesthetics
and also gameplay mechanic
maybe it isn't that bad to have the whole map visible?
thats how total war does actually
and stronghold it seems
So make it all visible and use LODs/nanite
i noticed when games do that they make they replace the units by symbols at distance
How can i set "can fly" bool in the character movement component in run time?
Can anyone help me, that why I am getting error of
"pure virtual function being called while application was running (gisrunning == 1)."
when I open any level in my game?
what would be the ideal way to set up a system where, once every enemy in a room dies, a bunch of new enemies spawn in set locations?
Is there a way to connect a blueprint that implements an interface to a blueprint that needs an instance of an interface in the editor before the game starts? I guess exposing a variable for it only works at run time.
Through a wave manager id say
Well it looks like I can pass an actor to the blueprint, not an instance of an interface.
So I cast it to the interface, cast that to an object, and set it as the target of a call to the interface. I did test prints on the initial case to an interface: Cast Failed doesn't print but the other event (I assume for success) does print. However, I don't get any affect on the other actor.
Yeah like squire wrote
Give each enemy a Ondeath delegate bind to it and register them in an array before
If called remove from array and if array is empty done
For set locations depends how precise you want them, but for control either designated points or volumes ( and select a random point inside )
Not with just BP iirc, but make it instance editable works for Actor
Assigning an actor and cast to that interface is typical for BP only
But maybe check if the instance editable variable can be the interface and allows you to select said actor directly
I tried to declare an interface instance editable and I can't assign it from the editor. It was the first thought I had. I've been told it just doesn't work that way.
In the Blueprint, the actor version is instance editable.
And both sides (the thing taking the actor and calling the interface, and the actor that has a blueprint that implements the interface) are doing everything in blueprints.
https://gyazo.com/85ac7ab6484a1834e7655fdfcd3485a5
hey Guys Question,
how can i make the "text Field to keep all the text inside the frame ?
Set wrap rules
How should logic be in event tick, this is from my friends enemy logic , its just lots of nodes with branches everywhere, so when i am about to add something after , i need to figgure out their branch logic aswell. So that my foley sounds wont get interupted.
You would use an input axis with enhanced input. If your y axis is positive and greater than 0, you are moving the mouse up
Just remake it from scratch because damn
And all of this is running on tick?
Personally, I would look at either behavior trees or state trees (experimental) and redo it. Whilst there's no issues doing AI based stuff like in the screenshot, unless its fairly basic AI it just ends up becoming a mess and difficult to expand.
ye
But how would you make it if not run on tick,
Its kind hard to understand were to put things , dont like nodes. I mean if just coding in C# you just use the methods when needed.
And behaviour trees for ai harder to get the logic there or whats the difference ?
@dark drum @native ferry
Behavior trees aren't to bad once you understand the basics. Spending a day or two learning them should be enough to create some nice AI behavior. They have a lot of features that work with other elements in the engine. Any AI controller can run a behavior tree.
I personally prefer state trees but as it's still an experiment feature so doesn't have as much support but they do offer a lot more flexibility regarding moving to and from different states an AI might have.
If you're not wanting to use the built in AI tools, you might need to look at making your own system. This would normally require the use of UObjects that would serve as tasks/actions (similar to behavior trees) and then you would create a manager of sorts (Actor component) that would then check what actions it should be performing. (Not recommended for beginners)
As it doesn't seem like you have much experience with AI, I would however recommend just using behavior trees. This would allow you to separate your AI behavior into separate tasks and the tree will be used to control what tasks are performed.
Does anyone know why this would return none even if the action index is 0 or 1? These are gameplay tags.
Never mind, it looks like its just not showing the value inside the function for some reason. Seems to showing the relevant value on the outside of the node.
Oh really nice, why thaaankuuu!
Well i know both BH and ST but find the node system BP in unreal clogy when in projects. So its more a matter of convinving them of using BT and dont missuse tick
is it possible to change Text color in a format text ?
if my spawn system uses "get all actors of class" to spawn enemies when an event occurs, how would I adjust that so I don't have to make a new class for each subsequent grouping of enemies?
not 100% sure but aint there like "HTML"-Like tags you can use like <red>TEXTINRED</red>?
hmm dose it have to be a rich text style then ?
Havent done it myself just when I saw your question thats what came to mind first 😄 was just a suggestion,no clue if its doable this way at all 🙂
Can someone help me
my character movement component wiped itself for no reason
And I don't know how to fix it
I tried making a new one and copying everything over but it seemed like it would break everything
When i looked at setting text colour, you would need to use rich text and as you mentioned a rich text style. I never got round to setting it up but from what I found it's the only way to have different colour text in a single text box.
yy thats what im doing now
ask your self how you are spawning and under what condition
you want to avoid get all actor of class unless you are trying to get all actor of the class.
People that just start, over used it because they don't know how to establish communication between blueprints
5.3 Bug Rip
Have you restarted the editor? If you have, if you create a new character BP, do the details show up in that one?
yes I restarted I am currently trying to copy everything over and fix it all but if this doesn't work my project is basically ruined because I don't know much of what im doing
I am changing all the refrences to the old character to the new one
my condition is when the player enters a trigger volume (though I also want to add something that spawns after enemies are killed), and when this happens, the trigger takes the location of every "spawnpoint" blueprint and spawns an enemy at each one before destroying itself and the spawnpoints
You need a blueprint that manages the spawning and track the enemies. Call it BP_Spawner for example.
store the relevant information to bp_spawner such as the relevant enemies and spawn point, the rest would just be applying the logic
hmm, I def need an overarching manager, but Im wondering what it needs to do
but how will it know where to spawn enemies if it cant use all actors of class?
Depend on how you create the spawn points
is it pre-placed on the map, or created at run time
If it's created at run time then you want to add it to the array of Spawn points in the Bp_spawner everytime you spawn the spawn points
rn Im planning on pre-placing them
if it's pre-placed in the editor, which isn't ideal imo. Then you can get all actor of class at the start
Create a transform array and set to show 3d widget. You can then add locations to the array and move them around in the world via the editor. 🙂
really depends on the scope of the game, if it's a replayable game with generated spawn points for example, You don't really want to pre-placed it
Instead
Begin Game -> Spawn 5 Points at Random Location -> Add each to the SpawnPoint Array
I want specific pawn points for a linear game atm
is there a "default" variable with all the objects that are in "ActorBeginOverlap"?
Then you can get all actor of class at event begin play. It's an ok node when not used incorrectly
wouldnt that just bring me back to square one though?
like I dont want to spawn enemies at literally all the actors of the spawn point class
then don't?
Example of spawning 5 enemies at random point between many spawn points
For Loop (5 times)
{
Get Random element of Spawn Point -> Spawn Enemy at the Spawn point
}
that makes sense, tho rn I want to use every single spawn point, just not all at once
If you are not fammiliar with array, how to shuffle elements, or to randomise it. Maybe you can start with that
like each room will have a set layout(s) of enemies that'll spawn in once I enter it (and occasionally a second/third wave after killing every enemy)
it's all about feeding the data. Add relevant spawn points to an array, use that array to spawn the enemy.
I rlly need to figure out how arrays work in unreal then
Hey, anyone know why AI MoveTo is being annoying? It keeps failing
for sure, you can't really survive game making w/o knowing how array works imo
Earlier, it gave an error of 'movement not allowed'
I'm trying to make this barrel asset follow the player
Your pic is annoying but you can look at the result
print the movement result just below the exec
rn I have a rlly convoluted idea tho
you can't make any complex stuff without knowing how array works. especially for something that takes in X number of objects
just start with that and take it slow
start simple, improvise later
oh not complex, just convoluted as in dumb
Chances are you are going to scrap your entire system anyway once u have better way to do things
Movement result doesn't do anything; I have it linked to to string and to print string, it prints nothing
how are you printing it?
print screen please
why the tilted camera
You didn't connect the print string
hook it from the OnFail exec
I was gonna give the spawn triggers and the spawn points variables, so like if I go in trigger 3, then enemies will spawn at all points with the variable 3
You have to convert the byte to string
I have
anyway my grandmother is dead, Im gonna pray with my family. Gl on the debug.
Last I checked it's Aborted. there could be number of reason why
Yeah, I get aborted
My condolences.
Possible, yes. But it requires C++ and a new decorator class. You can sort of do it with predefined rich text spans. But if you want to dynamically set it in code, you have to create your own text decorator that can take that in and manage it.
any reason why it would go through both True and False in the branch? 🤔 i'm stumped and confused lmao
dont mind the mess, I was just trying to narrow it down lol
wait, I might just know why now.
I'm trying to save some corrupt blueprints and I think the old is still being somehow used in memory.
how tf do I delete old corrupt blueprints 😂 the editor crashes when I try to delete them
So, I have a question, in my character class I calculated 3 vaulting positions used for my motion warp. Then After getting those I am setting my "bCharIsVaulting" public value to true. ( it does work, debugged as much )
But now I want to do something out of this true state in my blue print, so in my character Event Graph I added this graph but it never triggers looking at the absence of log, any idea what I should change?
whats the universal way to call a blueprint within a different blueprint?
Can someone help me
my wasd isn't working properly
W is making me go right S is making me go left
A is making me go backwards
D is Making me go Forwards
swap the X and Y
@Kiro #enhanced-input-system
"There are many ways to skin a cat"
References. Events. Interfaces.
well I can walk backwards and forwards normally
but left and right is still inverted
after I did that
just like, if I have the 1st blueprint with one variable, and I want to set the 2nd blueprint's variable to match the 1st, what would I do?
then take the y pin and multiply by -1
ohno it long ty
It goes through a lot of different scenarios
I am personally a big fan of Interfaces
But it depends a lot on the use case
that makes sense
You tend to cast when inheritance makes sense. And use interfaces when interaction needs to be class agnostic. I.e. interaction can happen across many base classes, so should be an interface. Shooting is only going to happen with weapons, so doesn't need an interface
The blueprint communication video is pinned here too if you prefer video format
damn there's so much
Hello, I have this blueprint class and want to create child blueprint classes of it where I can edit the RGB values in the timeline to have a custom colour for each child when the interface function triggers, how can I do that?
Right click create child
Yes but in the child class the blueprint event graph is empty. Can I edit the timeline from there somehow?
No but you can override the event iirc
how would I change the variable for every object in a class, or cast to an entire class at once?
Use the resources we just gave you
im lookin bruh
How do I do that? Just add a new timeline that's connected to the event?
Either that or have a standard track and multiply it by variables so you can change them on each child
Not sure that’ll work for RGB values tho 😅
Hmm okay thank you
It feels inefficient to create a new timeline when the parent already has the timeline
You can have the track control the alpha, and outside the timeline you can lerp colors
Ooh nice
Ohh so basically having 3 lerp nodes in that case then (one for R, one for G, one for B)?
So I can switch from one colour to another
Oh wait no I can just have a vector lerp to do it all in one node
Thank you, that's really helpful!
how could I get the blueprint to not interact with a blueprint, but a specific object in the scene without the two overlapping
An object is an instance of a bp. A cast checks if an object ref is of a certain bp class and then lets you access its insides. It takes a bit to understand this stuff and that video really does help. Ik it’s pretty long but if you don’t understand these bp comms basics you won’t get very far in Unreal
and someone said the video is pinned?
did they mean the live training?
damn 2 hours okay
well it does seem important
rn I found a workaround for my specific issue (switched to using gamemode bc that has rlly easy referencing), but I'll def watch this later this week, ty
Blueprint Communication is essential to understand, I only recently learnt how it works too
its so weird rn bc i've been super comfortable with anything that involves the player or collisions, but now that I'm reaching something that has neither i *was at a wall
This page has a quick-to-read overview of how you could communicate with other Blueprint Classes
is there a way to have a blueprint check when a variable reaches a certain amount, but not when its steady at that amount?
like if I reduce something to 0, it'd only trigger once and not for every frame that it's at 0
do once?
You could dispatch it as an event when it reaches 0
(I don't know if that would be the most efficient way though, so someone correct me)
oh ig I could use events yeah
I've done the tut - run into some problems I can't seem to fix -- but thanks for the link on it ! 😛
do once seems neat as well but I want to do it more than once
cause Im tracking how many enemies are left, and when that number reaches 0 I wanna check if another wave of enemies is scheduled
Do N
might havesearch Flow Control
Hold N and click on graph
wth this looks cool
Okay I'm going to do it this way but instead of adding a black box i'm just going to add a sizebox and increase padding for every 1000. Question is should I use a for loop or should I just do
if stam consumed == 1000
{
set padding for sizebox += 7
max stamina -= 5
stam consumed = 0
}
I wouldn't do padding, just Set Width Override on the Sizebox
then keep track of stamina consumed, and update as needed
I dont see a use for a For Loop
I don't know if I clearly stated what I need
nope...
How would I do every 1000 units of stam consumed for the branch condition?
would it just be what I wrote which is if stam consumed == 1000 then reset to 0 after?
not reset to 0, Remove 1000
What if you are at 999, and spend 200?
That's what I meant, my bad for how I phrased it but yeah its more like
if stam consumed => 1000
stam consumed - 1000
if a connection to other actors already exists, I don't want to execute the function for that connection. e.g. the key (actor1) is connected to: actor2, actor3, actor4 and if the next key (actor2) has actor1 in its values, it will ignore it and go to the next values for this key
someone can help
?
or maybe there is a better way, instead of using a Map variable
What do you mean by a connection? How are they formed? How are the connections stored?
I simply store the references of actors that have been linked to a given actor and check their position on an ongoing basis and at any time these actors can be removed from the value
I just want to not execute a function if it has already been executed in previous actors
How do you store these references, just curious?
I mean how are you getting them
How can I make the delay only after it has been triggered
So it gets triggered and it can be next triggered in 60 seconds
If this is for an #gameplay-ai it might be best suited for the cooldown feature in behaviour trees
yes for an ai
After It gets hit it is mean't to run away but I don't want it to repeat the running away event every hit because It will make it look jitery
Set a bool to false until the run is complete and check for that bool before running every time the function is called
I just wanted you to help me with this ;p
Thank you
wait why is this not changing it after I shoot
It should change it to true until it is done running ?
I'm not quite sure how to use set width overide so thought it might be better to just increase padding instead. I'm not sure how to link it to the size box though
@lunar sleet
Set a breakpoint on it and see when it fires
someone can help?
only on the Ai move to
not on the boolean
it doesn't break on the is fleeing
i set reference when actor spawn
but I put it on both to check
Ok, set the bool to True right before the move to node and back to false when it’s done
and the player connects them together by clicking on them
you should prly answer patty’s question: #blueprint message
ok think that worked
thanks
right now I have a system so when you die you return to your last checkpoint, but I was wondering if there would be a way to just reset the scene entirely, with the only change being the player's new position?
Game mode has a reset level function and all actors have a reset event (which fires when reset level is called) that you can override
I want something like this
I just don't want the connections to be repeated
(this is Map with Array)
Got an issue where I'm trying to reduce the stamina bar width but doesn't seem to work, In the video you can see the stamina value does a jump but doesnt have the bar itself move. The issue might be because I am using another blueprint to host all of my widgets so the width overide might not be following through but the stamina bar value is
what event would be death plane? like if I wanna reset the level when I hit the kill Z, how would I do that?
I just override the end play event of the character and use that to tell the gamemode to spawn default pawn at transform and reset level
i made this
there cannot be an identical connection
where do I find the end play event of the character?
but I guess it's not good in terms of performance :/
Can anyone recommend a better solution?
It's a dispatcher you can bind to which is called when an actor is destroyed
would it count as being destroyed if I'm using the "open level" function?
No.. the gamemode dies then too. You'd have to use a save game object or the game instance and grab the info on construction or begin play
oh weird
<@&213101288538374145>
so now the checkpoints work, but the player starts at the default checkpoint value instead of the player start value which is kinda weird
I have a check to see if the checkpoint value is 0,0,0 and if it is, then use player start otherwise use the checkpoint.
Could also use player starts and give them name/tag, then you can use that to pick which one they go to as well
Still having this issue. Not sure what's causing both True and False to go through
wdym both ? the execution shouldn't go through both at the same time
I have prints after True and False. Both prints gets printed upon passing the branch
well your branching in a forEach so maybe one is true, one is false
I just removed my Does Implement Interface check and manually set it too true and false. Prints for both when the condition is true and on False only the false print gets printed.
Hmm. Well, its for a door so it's only a single action when pressing F
Well theres pretty much no way it would go through both
a boolean is either true of false
it most likely because it's in a loop and your seeing two different looped values
Actually, I get double prints if I manually set the condition to false. So maybe there is something with the forloop as you said. although.. In my old (now corrupted) blueprint where I first had this function, I didn't have this problem.
well your getting overlapping actors and looking for one that implements a certain interface
so if there is more than one actor overlapping it will run for all of them
idk much about interfaces, but your looping over all overlapping actors so if there is more than one you will run it that many times
it's just the door and the character currently
Print your array elements
I have a widget on the screen and it goes to this when my character dies. Telling it to add again to viewport doesn't put it back, how can I fix this?
I'am. Only getting the door.
Show code
So we use this to get a data table. How do we do the same to get a specific data asset?
Make a variable of the asset's type, and populate it.
Can also make static library functions as getters too.
are you seeing "should now interact with" ?
correct
followed by the door name
is it not interacting ?
It's fully functional, it's just bugging me lol. I guess it's not the end of the world but as I had it not double printing before it was just annoying me.
so it also prints failed to interact ?
yesss
probably because there is another thing overlapping it
is there a solution to ai breaking?
i wouldn't worry about failed to interact, that's just because you have something overlapping that does not implement interface
not sure what it could be, but that's why you do the loop and check to only interact with the things that use that interface
yeaaa I guess. Cheers tho! It's working atleast 👍
ah so maybe is better to use data tables because it doesnt need any variable
i have a hard time understanding the difference between data tables and data assets
they seem to be the same in terms of use
except data tables are more useful
Why is having a variable a concern?
And they're really not. Data Assets are a lot more useful. Datatable is just a list of the same data repeated for different keys. A data asset is like one row of a datatable, except that it's a lot more dynamic. It doesn't require a predefined struct to hold data, it can hold anything you want. It can also contain functions to manage that data. You can also use a data asset similar to a datatable by just putting a Map of Key/Struct in it.
Datatables have their uses, but they are not more useful.
It can also contain functions to manage that data
ah thats great
well but, it does need a struct
those are great tips
or i can use an array in it
and put all my character names in it
Using overlaps for determining interactings can be troublesome at times. If you every decide to switch to a trace based system, this tutorial will set you up. There's even follow up tutorials for different types of doors. 🙂
Welcome to this tutorial on how to create an interaction system in Unreal Engine 5! In this video, we'll go over a different approach to making an interaction system using Unreal Engine's powerful Blueprint visual scripting language.
Whether you're a beginner to Unreal Engine or an experienced developer looking to add a modular interaction syst...
I have this for my light sources ^^ I may switch that to my doors aswell tho
You should make sure you use the same system for everything the player can interact with to help prevent weird issues. 🙂
that's true. I'm currently not making a game or anything though. Merely just learning
As an FYI, one of the main issues I've had with using overlaps for interacts is when you have a few close together. I find using traces easier to handle as it's what the player is looking at.
Ahh yea, you're right. I might aswell change tbh, do it properly from the start 😎
i would make an InteractComponent to handle sorting of those "few close together" to select which one exactly to interact, but then, i was making a top-down game
I'd still use traces though. If you don't need pin point accuracy, you can do a 2nd, smaller sphere trace and then just get the closest to the end point of the first line trace.
https://i.ytimg.com/vi/jDvIwq8c9BY/maxresdefault.jpg
How are these farm tiles done?
Are they planes with textures? Or is there something more tricky about it?
not exactly when i needed their name and info to show up instead of just "interact"
the way you get the object to interact with doesn't interfer with that
if you use a trace, you can trace at specific intervals
to find the current object the player is looking at
and display information from it with UI
well, in the end i use overlaps and traces to check they are behind an obstacle
if the nav mesh is just f*cked up and you have no idea why what do you do
I made one line trace that the character uses all the time that I can refer to when needed. I dont suppose one constantly would be bad?
for increased responsiveness, you would have to trace at small intervals anyway
@kind estuary To give you a kind of idea of how you might implement both. Just depends on your needs.
I have a bunch of items. Weapons, crafting items etc like coal or iron ore. Right? These are all individual DataAssets. Cause weapons need a lot more data in them than a Coal item. Coal is largely just a mesh, an icon, some association tags, descriptions. Weapons need all of that, plus defaults for their stats, associated abilities, etc etc. The amount of data differs wildly and putting all of that in a struct would be a great waste of space for a lot of smaller crafting items.
But crafting can take any item. Maybe I need a recipe for an Iron ingot. Or maybe I need three recipes for an iron ingot. Maybe I have three different forges and each processes iron a little more efficiently, so I make a table for each forge to house their own craftable recipes. Those tables can reference the items like coal and iron ore with amounts required and output their results. This data is ALL the same. Regardless of how you structure it. You have an array of input items, and an array of output items and some description data thus it's easier to put it in a datatable. Though you could also put these in a dataasset with an array of structs.
Datatables are easier to add/edit/manipulate and pull data from
if for example you need to list all recipes/all entries in that table/etc
Right, but as structured above, it depends on the data set you're working with. If the data is all the same, structured into a struct, datatables are great. If you need a more dynamic set of data while identifying something, it's not so great.
rookie question, how can I grey out the Code Required String??
grey out as in make it non editable?
Easy in C++. Can't remember if you can do that in BP only.
i dont think you can do that in bp 🤔 except hiding it in advance menu or something
weird they are both the same name
That video I sent shows how you can set one up on tick or at an interval. 🙂 For something like an interaction system tick is normally fine.
This Timeline works fine, it animates the UI elements as needed. But, I want to stagger the animations. If there a way to delay each element of the array. I don't see a way to adjust the float curve evaluation of a timeline. I could do something super convoluted like switch statement the index with a buncha different curves, and if that is what I need so be it, but maybe there is a better way?
There's an entire system for animating UI, you don't need to use a timeline
I'm sort of concerned about seeing a Timeline controlling UI. Why aren't you using a UMG Animation track?
#gameplay-ai is better suited for this question but depends on what you define as the navmesh being f8cked
Honestly, cause unreal is a vastly complex engine and often times I unknowingly overlook best practices with in the engine even though I make an effort to do things the "right" way. I guess I will look into using the UMG Animation Track.
alright, thanks
and yes
thanks
UMG Animations are basically the same as a sequencer. You can get and affect everything internal to that widget. You can also make tracks that evaluate every frame to run an event that you can do stuff on to use for more dynamic animations.
If your Inner widget there is all the same class it can be fairly easy to put an animation track on it with like a 1s start gap. I did that with some vertical boxes housing buttons. The buttons held the animation track, animating themselves. When the widget was brought up, it just ForEach loops over all of the children in the VBox, and based on the ForEach loop index, multiplies that to start the animation track closer to the 1s gap mark. So you get a ForEach loop that instantly runs to start a lot of animations. But each animation plays starting from a different start point on the anim track. Makes it look like they're delayed but without the hassle of actually doing that.
thanks. though its quite confusing. So let me see if i understood it.
So having a data table for units for example can be innefficient. Because the simple basic melee units require less data. Whereas if you have archers, and knights they will differ with their properties. So to have them all in one data table, all the basic melee units must also have information about the archer and knight type, even if they have no arrows, they must have a reference for the arrow mesh.
Thats correcT? And that means its a waste of space.
But then i lost it on the recipes. So you would create a data table for each different unit class ? Or you would create a data table that can have a reference to each different unit class?
You have an array of input items, and an array of output items and some description data thus it's easier to put it in a datatable. Though you could also put these in a dataasset with an array of structs.
And here im GG too. Where do you put the input items? An array of input items? In the data asset? Or the data table?
Here. This might help a little better to actually see it. I made a few assets. The DataAssets are made out of PrimaryAssetLabel types, but I personally would make these out of a PrimaryDataAsset from a C++ base and set them correctly in the asset manager. But for a BP only this will work okay.
There's two structs. One has two arrays of the other. Thes represent entries and the counts. For requirements this is how much of the item you require. For output this is how much of the item you would get for the recipe.
Then there are two datatables. I would give these two my forges so they can look up what data they need for their own crafting. The first datatable only has an iron ingot recipe. It's a bad forge, takes a lot of resources to make one ingot.
The second table has a better iron ingot recipe, and a sword recipe where you can craft a sword from the ingots you've made.
In this particular case, these crafters would need to interact with some form of inventory to get their requirements and output the results.
In the case of units. It would be much the same to create unit types out of a data asset. Specify their meshes, skins, abilities, actor class, etc in an asset.
Then make a table where you can create these units from a barracks or other buildings. Maybe you upgrade your buildings for cheaper unit costs. Can just make a table for each building tier that costs less and less per unit.
This is a great modular way of handling it, just an addition depending on usecases you could set these as classes/inheritence (BPs) instead of data classes
A suggestion/idea (depending on recipes of course) but instead of having a data table per building, you could have a single data table with ALL recipes and then list the recipes each building can craft in their respective Struct/DataAsset/Datatable Entry where you define each building's info
Howdy there, i'm attempting to create a little slide mechanic and using some blueprint to try and make it a automatic stand up if there is nothing above:
Now the issue currently i find is that i cant get it to "slide" (Add velocity) to the direction the camera is facing, i've messed around with the Forward Vector to the Velocity node a bit but it doesn't yield the intended result (IE Add velocity to where the player is looking) and was wondering if anyone could throw a bone or maybe help.
Thanks for the time.
you tried the camera, forward vector * SomeValue ?
No actually, thank you that worked i mainly used +(Value) because i thought the *(Value) may mess up stuff.
hey guys, where can i ask for someone to help me?
thats awesome. will try to make something based on that. thanks a lot.
usually you find the proper section and ask there
well I'm trying to use an interface but I'm unable to, can i ask here?
you are using blueprint ?
yes
then probably it would make sense, i usually just pick the closest and ask you would probably be redirected to the right place if it's not correct ig
What is the best practice for animating Camera Modifiers. Basically I want a reusable animated camera modifier. in the modifier I can animate it with a Timer that ticks up from the provided delta time. But that Timer value does not reset and the value isn't accessible from what I can tell. Is there way to do this with the nodes inside the modifier so it animates the values then resets?
So guys here's my problem (I'm quite new at this).
I did a system with line traces and an interface to interact with objects and i added a widget (the letter E) that shows up whenever I can interact with an object that is interactable. Everything works properly and it is set like in the screenshot.
Now I want to add a feature where if you enable the option on an item whenever you pick it up it shows up in front of the camera and you can inspect it and rotate it.
I created a new function in the interface (with an output as a static mesh) I'm already using (second screenshot) and I tried adding the message in the thirdpersoncharacter blueprint where when the object in the scene gets hit from the line trace and after interacting it should set the mesh i put in front of the camera as the mesh of the object i picked up, but it is doing nothing, someone knows why? I hope I was clear enough and I appreciate anyone trying to help me
Is it printing hello ? @drowsy steppe
Im Not sure why My Items are not being removed from this actor component inventory's Array, What did I do Wrong?
no, even if i put it earlier. Is the reasoning behind this right?
well the reasoning is if it's not printing, then it's not firing
yeah i mean the reasoning behing the logic I'm trying to apply
On your Remove Item Event, see it the Removed Item is valid
maybe does implement interface is failing, print string out of the false
Seems to be valid as the print text is working
it prints nothing 😦
one thing is you don't change number of items, not sure if you need that but it looks like if you want to keep the number of items you should get length and set it again
how about out of the true, does it print ?
Well, Check to see it the array Contains the Item
no
then it's not executing
Also, the array length Print is printing on the add item ?
i don't understand, it doesn't print even if i put print string before the interact event which is working because i can interact with my items
and , you aren't deleting the item before removing it from array ?
Yes Im printing the array here when an item is added.
well if you put a print string on the white lines (execution) and it doesn't print then it's not running, but also you want to make sure it's when it should be ran
its obviously not going to show right off the bat if it's on a click action or something
but i don't understand because what happens after gets executed as i can interact with my items, and that needs the interact message to be possible
what am i missing?
a separate spawner is adding the item to the actor component array when the player overlaps it. then I cycle the array and spawn a actor in the players hand . when I drop it thats when I need to remove it from the array
i disconnected interact and everything is working the same, i am confused
are you compiling ?
maybe your in a different bp ? some sort of copy or something ?
yes, i must be missing something really dumb
Try on the Remove event, seeing if the array Contains the item, If not then For each Print the contents of the array
I disabled everything on the first input action and everything is still working, i'm really confused
Yeah there something going on in the background because i disabled everything and it's still working
there must be other code somewhere running
yeah looking into it
not printing here so I assume its not even in the array?
alright, getting somewhere
See if it is valid before adding it to array
ohh...
there is a Contain node for arrays
And do this before and after adding to array
found it
On cycle array in player BP im destroying any valid helf actor and spawning a new one from this array. and setting it as the held item. but that is the same thing I am telling the array to remove when I drop it. the cycling of items in the hand is actuall working ok but they are just not being removed 😦
ahhhhh, so its not the same exact item, its a copy ?
Contains was not true 😦 Must be adding items as a different actor
You might want to switch the array to a Class Ref
yeah. I will try that
yes, that should do it
just incase child actor issue?
not child actor
instance
the array hold a list of EXACT actor, once you destroy the actor in your cycle , its ref in the array is not valid/ gets destroyed or somehting
I get it . I Made sure to destroy the actor after removing it from the array.
You should change your array to keep track to what Class the actor is, not what actor it was
Change that variable type to Class ref like this
dosnt have to be "Actor", use whatever your blueprint is
Yeah I already have one setup, But working with arrays is still a bit new. The add and add unique is always a point of contention
Like you don’t understand the difference?
Is it normal that OnBeginOverlap events don´t fire all the time, even if it should?
I do But One Time I didn't ; )
It wont fire if its already overlaped before
Use getOverlappedActors and iterate
When does it not fire?
Begin Play?
Can I use it when I want to make a bullet?
When the bullet hits it target, but sometimes it fires
You should use begin overlap if it’s a projectile travelling through something
Yeah I'm not sure what happens with the stock ProjectileMovementComponent, it's pretty ass IMO
If it doesn’t fire check your collision, if you’re doing like a sphere or similar shape it can have weird effects
Collision is okay, it fires, but not on every hit, even if it clearly hits the target
Are you blocking (hit) or overlapping
overlapping
On the collision settings I mean
Not the event
Like check settings on both objects, the bullet and the target
Need to see the drop-down (all the checkboxes)
Bullet
What object type is your bullet
Target
Actor
Yes
Check ✅ the generate overlap events on the target
Works Great ! good call on the Actor class.
I still don’t know why my projectile phases through Event Hits at certain velocities and fps. Temporarily switched it to overlap to fix it but it’s not accurate enough for what I want
Oh
Thank you, that fixed it 👍🏻
Wonder if CCD would help
Nice!
The downside to Class is it wont retain info about weapon (Ammo, durability, mods)
Hmm I haven’t thought of that outside the context of AI movement. I know the CMC has it, is it on the PMC tho?
CCD=Constant collision detection on the collision settings I have no idea if that will help its a shot in the dark
Is it important that your projectiles can be hit by another projectile?
No, not really
I'd just lose the projectile movement component and do your own
Maybe I’m thinking of the wrong spot I can’t check rn
Like cpp code my own PMC ?
you can do it in BP.
Tick -> update Velocity (mostly gravity but homing too) -> calculate NextPosition -> trace from CurrentPosition to NextPosition -> process hits
Oh neat
do you have Sweep on? Doesn't that trigger Hits ?
no collision on anything in the projectile. It's just a thing that moves through space tracing every frame. Cool thing is it will devolve into a line trace if you turn up the initial velocity high enough
You don't even need projectile actors for this, projectiles can just be structs in a subsystem or gamestate or whatever
depends on your needs
Oh the overlap? I haven’t checked if it has that
This is exactly what ProjectileMovementComponent does but it relies on collisions with the collision body, not on doing traces
The event hit doesn’t have sweep, that’s on traces iirc
I was thinking on this
I’ll try this when I get a chance
Oh I’m using velocity not set location rn
I set it to X:500 by default, which becomes Y in local space at runtime but either way
Dropping it to 400 made the event hit work at 60fps, but 30fps and it’s gone
At 500 only 120fps registers it
Maybe my disc is moving through frames like Neo 😅
Normally When Using actor I can use reference to self, Here with the Actor class how would I do the same, as this actor is removing itself from the player
Quick Inventory>Get WeaponRH>Get Class
Get class
this ? method
That should work no?
I think is should. I will test
I’d tell you to remove that medal but it’s a Super:: so I’ll allow it 🙃
haha
works Great
was doing it as you said it
What?
Guys I had some strange issue while attaching NPCs to vehicle mesh. They seem to attach to the actor but not the mesh.
I wrote about it here. Please help !
I made a simple code that attaches NPCs to the desired socket on a vehicle skeletal mesh inside it’s Blueprint.The problem is, they don’t seem to really attach. I was executing code and found that Sedan Vehicles (low in height) appeared fine but SUVs were causing problems as the NPCs were sinking. So I picked a sedan Blueprint and lifted it up t...
Super reactions
Oh.
took me a while to understand it. basically the data tables have an array of recipes to make weapons. and each recipe is a data asset so that means each weapon fabrication is unique and can be customized because the data asset recipes can be made specifically for that one. thats very smart and versatile. i dont know how you came up with this. thanks for sharing
Not quite. The recipes are not data assets.
The recipes are a struct with two arrays of a second struct. The second struct holds IDs to the assets.
You might be familiar with how people identify items via keys? Like Enums, GameplayTags, FNames, or Integers? Instead of those, I identify an item by the asset it holds.
No point abstracting it out to a key when you can just directly use the asset that specifies the item's defaults and descriptions.
If I declare an interface as an instance editable variable, is there any way to assign to that in the editor before play starts? It looks like I can't do anything with it that way, and I instead have to assign the actor containing the interface and extract the implementation out from it. It's just a bit more brittle that I would have expected.
not sure what "declare an interface as an instance editable variable" is , but you can Bind things in construction script
Im pretty much done here with My Quick Inventory, But when I cycle through the 3 weapons with each press. Im hitting an area where 2 of them are nothing, Can Anyone see an issue here
What exactly are you trying to do? An interface variable is basically the same thing as a hard pointer. It's just referencing an object in a way that it can only access it's interface functions.
I was trying to use it to notify something had been activated. I've been trying with events too and have been trying to weigh them all. So all I needed was the function to call when something was activated through the rules of the interface.
cycle through the item array one index at a time and when it reached the last is goes back to the first item
Hi guys any idea of how to convert an (automation editor task object refrence/output of a screen shot) into an image
well your not checking if the currentIndex+1 is within a valid range of the size
so ig technically you could check if the currentIndex is valid, it may be at the last one, then when you ++ and try to get it's out of bounds or something just a guess
Theres always a better way, and probably a better way than this
Save the 1st item and remove it and place at end of array
This seems to work thanks .
change to this lol, think it makes more sense ?
i would check +1, i think ++ actually changes it which you probably don't want to do if it's not in range
then do the ++ on true
i mean you are setting it back to zero on false
so ig that's fine
Yeah I Like how I have a index with no actor so I can select nothing
Think Im done with this, Got the end result I wanted, Thanks EVERYONE now I will add some polish
++ sets the get value? So confusing blueprint wise. I would think they would at least annotate the ingoing pin that it is modified
They kinda do. It's by reference.
What do you mean
if i accidently created an infinite loop in the construction script how can i open the blueprint to undo it?
Woah shooting yourself in the leg, just like C++
i was saying it alters the value
but they reset it so it didn't go out of bounds
I mean the left pin on the ++ is a diamond, meaning it's by reference. Usually if something is passed this way there's an intention to edit it.
Ah
If you weren’t too deep into it, delete the bp and remake it. Otherwise source control might be the only option
What’s the property matrix
Erh, the bulk edit option for assets
Oh maybe idk
Right click -> asset actions -> bulk edit via prop matrix
nah i found another way
Ok, what was it?
tho i still cant believe epic hasnt fixed this
apparently its been since forever and its still present in unreal 5
Not a prio would be my guess
It's not really up to Epic to fix though. Adding in something that would not run the construction script sounds like a nightmare if someone leaves that off on accident on some parent class. If a studio wants to implement that themselves, they're kinda free too, but most people just source control it and eyeroll and revert to the last working class.
That said though, usually if you wait long enough, unless the editor actually crashes, the BP will open.
i tried that but it doesnt show any construction script enable/disable option
uhh why not? its kinda ridiculous that accidently having a node connect itself crashes the whole thing and makes the project unable to open unless you delete it
and having no way of editing it
What node was it? O.o
it was a function to disable shadows on the meshes on my actor... lol
i mean it doesnt matter what node it was
Is it actually crashing, or just hanging for a long time?
it was just while building the script i was moving the node around in positions and i accidently forgot to remove one of the exec wires that was connected to a node before it
Could also probably lower the loop limit detector to make it faster if it's just hanging. Wait for the BP to open and disconnect it.
hanging for a long time then it crashes
i tried setting loop to 100 and even 0 and no fix
You could create your own Actor class where you'd let yourself disable construction script 8-)
Did you ever say how you fixed it?
by causing a compilation error
deleting related asset would be one method then i guess 😛
Oh nice
yeah u delete somthing the asset references or uses, you open it, fix it save it then u add those assets back and reload
anybody ever face this problem? Enhanced input action for my character to aim the gun, sometimes the "Completed" exec doesn't go through, neither does the cancelled, to reset the two bools i have there. Why would it not "complete" even though i have released the button?
I am also not sure of how to replicate the issue, i am currently trying but it seems kind of random when it occurs
I'm having some trouble getting a pinch to zoom gesture to work in UE 5.2. I need to make this work for a windows build that will run on an ELO touchscreen monitor. I have multi touch set up on the ELO. In UE I have enabled 'Enable Gesture Recognizer' and created an axis map that is set to the pinch gesture. However in my blueprint, the pinch event only prints 0.
Since I am not building this as a mobile app, I think unreal is recognizing the touch events from the ELO as regular mouse clicks. Anyone know how I can get this working?
damn i just lost myself in my mess of a project. i have an ai pawn being spawned, i dont know where is it being spawned from. how can debug this?
how can i see where a pawn is being spawned from?
trying to use the reference viewer
but cant locate it like that
you can search for spawn in the blueprint
idk how you would search through multiple but in a single one you may be able to find spawn
Is it a chorded action/combo?
Either use ctrl+shift+f to begin with or ctrl+f , type word, hit binoculars @kind estuary
i tried that. made me realize its not in blueprint, so i found it in the cpp
thanks
thanks
would some one please give me ahand on a blue print? its for stamina drain and gain i did this and it works but you have to spam the w insted of it just looping tell you let go of your move button
I'm trying to add a static mesh component to an actor runtime in UE5.1.0, but cannot find any functions that could help. Basically looking for something like this image (snapped from this unreal engine forum post [the question they have is irrelevant for me]: https://forums.unrealengine.com/t/how-to-set-static-mesh-in-add-static-mesh-component-with-variable/508155 ) Anyone had similar issues?
You have a do once in there that’s not being reset until stop stamina drain is called
That is the correct function, are you saying its not showing up for you?
are you in a Blueprint? or a widget? player controller ?
an actor blueprint
YES, THANK YOU will circumvent this way (your question was perfect, i was trying to call it from an actor component of the player controller, THANK YOU!!! )
thats okay, will add a function and will just call that, THANK YOU AGAIN
don't ask to ask, just ask
I want the dog to attack every 1 second while chasing
but for some reason it can spam continously
I removed the delay
from the screenshot while trying to fix it let me put it back
@lunar sleet Do you get a lot of satisfaction from helping people lol because you helped me a lot
no, I'm just a masochist 🙂
do you know how to use set timer by event?
nope
it attacks me then takes a pause but when I stop moving it can spam attack me really hard
like pauses to do the bite animation
Idk about timer by event
It's not, it's set up like this:
you're saying your completed pin never fires?
if you remove the delay, does it wait for the montage to complete before applying the damage ?
I think so
It fires most of the time, but on some occasions it does not fire, but i haven't been able to pinpoint what causes it to not fire. I could be walking around and pressing and releasing aim over and over, and it will work 99% of the time when i release it, but 1% of the time it does not go through
Im not sure but the animation to attack is only like almost a second
and how do you know it doesn't go through, are you watching it live, printing, breakpoints?
I want a delay while it chases me till it can do another bite animation
right, but your delay is using the montage duration, not the duration it takes to get to you
and either way if he's right next to you that'll be instant
well I want when Im on the spot for it not to be able to spam attack me
maybe like 2 second delay
or 1.5
what im doing isn't working
yeah cause delays are often misused
Do this instead: on Success of the Move, Set timer by Event
Create a custom event called Bite (or w/e)
drag from the red square (delegate pin) of the bite event and plug it into the timer's Event pin
Set the Timer's Time to whatever you want it to be, set it to looping.
When you want the dog to stop biting, drag from the timer handle (you can also promote to variable), and use clear and invalidate timer by handle to stop it from biting
When it does not fire, the char will be stuck in a weird position because the rotation is not turned back on, so then I know it happened, I pause it, and go examine the blueprints and I see that the "IsAiming?" is still set to true, and the "Action Value" coming out of the enhanced input action event is still set to true as well. The only place where "IsAiming?" can be set to false is when it either completes or cancels from here, so my conclusion was that it does not fire
I had the same issue, following a tutorial. The issue is that the follow player event is called every tick that vision happens, so the animation can still play despite the delay set up. Move it to set canAttack to true on Play
...why not just change the default value to True then?
that makes more sense lol
im very new to ue, but i had the same issue so i thought id give my solution
well tbh I haven't played with montages enough, so if that lets you control the timing, good enough
Put a Print String on the Completed Pin to make 100% sure
i did nothing with the event so I was wrong lol
Almost. The way you have it, you're clearing the timer after the first loop, so that's not gonna bite anymore
For starters, remove the clear and invalidate node and move the stuff after it down to the Bite.
how can i fix it
ive got a similar issue atm, my animation works for both my player and enemy, but the damage is no longer working
yeah, I'm trying to account for preventing it from trying to bite while it's chasing the player around, before it reaches it
if this an #gameplay-ai , BTs with cooldowns might be much better here
does my method apply to yours?
with the current code?
At all?
not even once
is the Play Montage node firing (breakpoint)?
no
playAnimMontage returns a Value- that value is your animation length. You dont need to set a variable called BiteDelay
oh
yeah, that's also redundant now
you can then use a multiplier to change the time
this is what I got from the tutorial. I can send the tutorial if youd like
what's the default value of CanAttack?
@lunar sleet how would i fix that if you no how
false
are you following some crappy tutorial too? 🙂
set it to true
ya
Your current code is If True run this, if False, fuck it
im loring blue prints
im still confused on why you have the custom event here. Is it all for the timer? cuz you can cut a lot of this out
still wont bite
I was just listening to Neo
oh
well, if you look at the code I posted, you can go right out of the second set can attack into the animMontage
Reset the Do Once when your initial Drain event is completed, not just when you stop draining, because if you don't let go of W Stop draining is never called as far as I can tell.
Or get rid of Do Once altogether.
Also, if you're following a tutorial and it works for them and not for you, watch it again, prly missed a step
did you do this
this is where the delay comes in
Sorry I am tired and new
i would just use the code i posted. I got it from a tutorial
yeah do what works for K2000 rn, realistically this should prly be done in a behaviour tree, but for now duct tape and glue is fine
lol
How can I communicate between blueprints easier? I've been trying to get an collision part to relay that it has been hit to a widget "interface" and im struggling a lot xD
finally fixed
there's a blueprint comms video pinned here that's worth watching. as for a collision "hitting" a widget, idk that you can do that, but maybe ask #umg
is your damage working now?
no, i havent gotten anywhere lol
I'll give it a Shot! - I've literally just been trying to make a countdown system, with time bonus pickups (Hence the collision - widget situation)
is this the same code you're giving to Kiro?
i tried to swap code between the player and the dummy instead of finding a tutorial
you usually collide with actors not widgets
different section of code
show
Would anyone know how to fade out a widget after its full (fade out stamina bar when at 100%)
#umg is best for widget related stuff
Oh thanks, i was looking for a ui chat
did you print out the hit actor to make sure it hits the right thing?
that part looks fine
go off the hit actor on break hit result
print the value
Camera trace channel is a weird pick but who am I to judge? 🤷
trying this
lel
no no
right now your code says: Do A Line Trace, don't care where, then print something, don't care if it hit anything
drag from the hit actor plug into the in String
break hit result happens before the print anyways, it's just not ordered right on your screen
is there any way to disable the air control for the flying movement mode in bp? im trying to make a simple dash, and i want the character movement during the dash to not have gravity and not respond to player input (except rotation), until i decide that the dash has ended. is there any semi-legit way to make this work without writing my own movement mode in c++?
it wont let me go from there
do this:
obv connect the execution path on your end
nothing
so your line trace is hitting nada
yeah
try using Visibility channel instead
ok
a little more complicated than that
still nothing
you're certain TriggerSword is firing?
good question
the Trace lines are goiung and the animation is playing, so it should be
it prints when I hit walls and stuff
so just not your dummy or w/e
Test with Trace Complex ticked on. If not, check your collision settings on your target
of course
I turned off camera bc it was acting wierd when the enemy swings
but i should turn on vis
visibility is usually good to stay on yeah
overlap would be good yeah? to catch the hit but not affect position?
no, because Block = hit, overlap is different
just gotta figure out how to get the enemy to damage the player
similar fashion, apply damage from one end, receive it on the other
Does anyone know the best method to making a variable for "is too close"
Ie, is too close to a wall / actor
Trying to make a system where my actor plays an anim montage when too close to an actor/wall/static mesh
Am thinking maybe a collision sphere?
Box might be better
Help please: On widget drag, how to make an actor material start during drag of widget??! images attached below...
Like in the image below, I'm trying to drag the tower from the widget and place it on the map below, what I want is the second I take the tower from the widget on the left, I want the ACTOR (Circle material shapes) to start/begin, I think I'm close to solve it but need a bit of help, the pictures of the blueprint might help alot!
please tell me the solution with a picture, thank you soo much guys!
Try #umg
@lunar sleet are you able to answer some more questions?
could we call so i can stream? I cant stream in these vcs
Am i using the wrong node? :/
Can’t rly do that rn and I’m not into it tbh. Ask questions here in chat and people will answer, usually people smarter than me
ok
usually cast have execution, whats up with that not having that ?
was a purecast
Oh i c that, why would you want to do that ?
To detect overlap? Yes. Also don’t use pure casts unless you really know what you’re doing, as engage said
Actor begin overlap is the node to test for overlaps
Well one of them
well you can check if the event is firing, and then check if the cast succeeds
is there a way to allow the player to use the foliage tool in game?
i think you need to add the end to the start, and plug that into end
@onyx galleon
i would also check the return value is true before trying to apply damage
Shouldnt matter if its an interface ¯_(ツ)_/¯
Do you mean the hit bool?
I thought it doesnt matter for interfaces
line trace is working, bc i iddnt have things connected :)
;'y
All this gives ya is a bool for whether it got a blocking hit or not
right, good thing to check if it's hitting before you try to apply damage is what i was saying
Yeah, but if its hitting nothing, you're not applying damage to anything