#blueprint
1 messages · Page 168 of 1
It’s like an excel table
And yeah pretty sure it iterates over all of it or at least until it finds it. You can look at the source code to see exactly how they do it
@lunar sleet
Hey guys. Any idea why RVO avoidance is not working with my npcs?
Hey friends 🙂 I use the Third person Template with Enhanced Input. When I log the Enhanced Input Action IA_Move "Action Value X" I only have either 1 or -1 when I pressed Left or Right, but it never goes back to 0, and it doesn't increase progressively. Do you know why? Thanks 🙂
You are using keyboard, A or D will be 1 or -1. If you set your key as such. There shouldn't in between.
I think
what about a controller?
which isn't 1 or 0 or -1
Don't know, don't intend to plugin my analog stick to find out.
Generally this is just the difference between controller and mouse and keyboard inputs
There's probably in between for analogs
Controllers let you get smaller values
Mouse and keyboard is typical pressed or not
hence why movement looks different in games that support inputs
Yup
And you can usually tell what input a player is using by watching how their character moves
Unless there is a specific problem I wouldn’t worry about it. It’s the difference of input. Keyboard and mouse are typically much snappier
I’d have to see how your spawn time function works, can you show a screenshot?
why would you do once on begin overlap^???
To do code once in an overlap?
it seems so wrong
Well as with anything it depends on what your trying to do
But yeah on face value it’s probably not what you want
create a bool called, has been hit, set it to true when it's hit and you control it on your own
That is another way to do it yeah
Depending on the context, I rather use do once node over branch
@somber elbow also you can try using a Sequence node. On first pin, Do Once with everything up to the SpawnTile. On 2nd pin the rest of the nodes. Will need some testing but give it a shot
Don't feel like making extra variable when I don't need to.
ooooof, setting the variable to false
Speaking generally, Do once is used when you want the code to execute at least once
a branch is good if you potentially don’t want the code to execute at all
Or want to change how it’s executed
What?
resetting in this case is the same as setting it to the opposite value
Except with a lot less nodes
In your scenario you have to remember to set the variable before and probably after the branch
ofc
For a do once it’s a single node that fires the code at least once
With the ability to reset it if you want it to happen again
well I’m not speaking how to do it in c++ XD
You were asking about the blueprint node do once
Which is just a macro
Mhm
Somebody could help me?
#gameplay-ai might know
Sure it does. It's effectively the same thing as creating a bool and setting it the first time through the do once and calling another function, and then setting it false if you want to reset it.
Ah ok thanks
i have not got into macros at all yet but they look interesting
Hey thank you 🙂 it doesn't go back to 0 when nothing is pressed ?
Yea it's ugly, but it works XD
You could absolutely set up something similar in C++ by passing around a couple of bools that you have on your class and pass in a function through to your DoOnce function, but then you'll end up with a ton of bools to manage something like this in C++.
How are you printing it?
well your using enhanced input right ? if your going off triggered think about it, iit won't be zero
started, triggered
these happen when your using the buttons so they will have a value
you can use the old axis mapping and get when it's zero i thinkor maybe there is another execution comming out of the enhanced input ? i still use the old stuff
Hello, I'm trying to remove the widget during some dialog. It prints the string but doesn't remove the UI. Any ideas?
From WBUI straight to the target
No need for the cast node if you’re using spawn node in that tile function. Also try the sequence node I mentioned
Why would you ever remove it if you never added it to the viewport?
that didn't work :/ I'm trying to remove one UI before loading another
Not even on Completed? You could promote the axises to variables and set them to 0 on completed also.
You are trying to remove the UI that you just creates, which you never add to viewport either.
why is that called master ?
Hi guys, I want to make a simple save inventory system for my character so when I load a new map the data from the previous one keeps in the new, could someone help me?
ah ok, I see. I'm trying to remove a widget that's in a component that's always visible, but want it gone during a cinematic
do you want it to "save" as in like a file so you can shut it off, turn it back on and load ?
Make it so then. You will need to keep a ref to every widget you create, and bring them forth when you want to do something with it.
or just persist through levels ?
I would like it to delete when the game closes like a temporal save data
save it in the game instance
use a bunch of variables
or structs ig, but you could just use variables in the instance
these will persist across level loads
pretty much the only thing that does that
Idk, it sounds cool
and how can I do that? im kinda new with ue5
right click in content drawer, blueprint class, search for game instance
create that
then in your project settings, search for "instance"
and set the game instance class to the one you made
then yyou can get the game instance from just about anywhere
and now you have a ref that is persistent across levels
add some stuff and your all set you have a save/load untill the game shuts off
@lunar sleet It looks this way now. But now It stops counting after 1 and stops spawning tiles
And i have this error
you don't want to cross exec lines like that
make a reference
and whats the do once all about ? you only want it to score points once ?
Promote the cast return to a variable
i would probably cast to game mode on begin play
unless it's going to change at some point
for one thing you never reset the do once but idk exactly what your trying to do
what does spawn tile do ? spawn the next map ?
Here is the story of the issue
this
thanks so much! This put me on the right track and figured it out.
Remove the sequence and connect what called on the second pin at the end of the chain on the first pin.
a couple things but first i would say make it work one way going up, and if you destroy it you should be good because you won't overlap it again, but if your using it in some other logic like tick or something then you may get accessed none after destroying it
so like this? (this is for the battery of a flashlight)
Im not quite sure which one i should promote to variable
Thats how it was in the beginning
well you cast to the instance, set it to a variable, but your not setting any variable on the game instance, just returning something else
What was the issue with it being that way?
so what should I do?
this function is supposed to get the percent but you want it to persist across levels or when you load the level again still have the same values ?
I want to make the game remember for example the battery the player had in the previous lvl
you can think of in this case the game instance as your "storage" for stuff that persists, so you need variables and maybe even functions,events on there that you use in the gaame
if you just cast to the instance and don't use it then it's fairly useless
so when you cast to it, you pull off and get/set the values you want to store
in the case of a percent, instead of using the playerref like you did use the game instance and some variables on that
so then what is the battery ? depending on what it is probably an actor with some settings ? are they default settings do you change them dynamically ?
different things would need to be "saved" in different ways
your probably getting accessed none because your pulling from a different execution path
this is what I use for the battery, its just a light in the first person_character bp
so you just use flashlight active, how do you know if it's picked up or not ?
but you could store the class name and just spawn it if it's an actor
picked up what? the battery or the flashlight?
your input just switches back and forth, what if you don't have a flashlight, do you get none ?
i don't see where it knows if you have it or not
oh the player always has the flashlight
I have made just another collision box specifically to score points. And make it to be deleted after overlapping and counting. Exactly what you said
so you want to save the batter life ?
you can think of the game instance as just some variables that you replace the ones you use with the game instance variables instead
so your pulling from the game instance
because everything else reloads
first thing is to create a variable in the game instance
Ah ok, I would put the spawn tile to after the first sequence path and the delay portion, leave on the second pin but swap out the delay for a retriggerable delay. I believe that should give you what you want.
I want to make the game to remember in this case what life/battery the player BP had in the previous map
you understand variables ? your using a battery variable
something like this or
I have a pawn whose capsule collision simulates physics, im trying to get it to rotate with the floor angle but the constraints on the physics tab mess it up. Keeping it enabled prevents it from being rotated as needed, but enabling it causes the physics to have influence on it. anyone got any ideas?
yes and then in place of your battery variable use the one on the instance, and when you load the next level it will be the same because your pulling from the instance
in order to get that variable you need the reference to game instance, then you pull off that get/set
i normally do the get game instance casting in begin play
use that reference and drag off of it to use variables, functions
this is what i mean; when disabling the constraints i get this, i just want the capsule to stay upright but still follow the floor angle
and how can I change the battery variable I had in my character to use the one in the game instance? like this?
ya exactly, replace where you use the other variable with the game instance variable
it will persist
it shows this error and doesn't work the flashlight now
you need to actually set the game instance by doing the cast that i showed you
thats just an empty variable
on beginplay get game instance, cast, promote to variable, then use that variable
or just use a set and use the one you made
notice when you had player ref, you need a ref to the instance
you must have "set" player ref at some point, it should be similar
like this?
right and use that variable
when you pull out and get the variable
as long as the begin play is in the same bp
so what does it look like now ?
it's probably something in the logic maybe your still using the old variable ?
kinda works but not really lol
tried changing the battery variable in the hud also to try to fix the error but now shows this error too, also added the max battery to the game instance
your setting battery not the game instance battery
your instance still isn't there for some reason was the begin play on the same bp ?
this one is in a widget blueprint for a progress bar in the hud
so you need to get the game instance again with a cast when you set it
i would just put the whole cast thing in the function
or you might be able to use construct
how often does get percent run ?
okay did that and fixed the error but the drain battery still doesn't work
I have this really weird bug. When I possess another actor, all of my UI, Post Processing, Interaction Traces (Actor Component) still seem to be firing.
For example, my trace I have set up firing on tick from the player manager camera, fires on the new actor now instead despite not having the components for it!
If I destroy the previous actor (with an Event Unpossesed -> Destroy Actor) then all of that dissapears and everything works like it should.
However, I want to keep the actor in the world for a while because I want ragdoll. So what is causing this to happen? 🤔
might it be because of this set battery here?
notice how your setting a different variable
the battery one off the inventory your subtracting from
but your setting the one in your bp, not the instance
Okay did a set battery in the as game instance and now it works and saves in the next map : D
so for the inventory should I do the same as the battery?
save a backup then try it and see
it should work with any variables you want to persist
it shows this error :/
You're trying to set the Inventory Map on self but it's expecting a GI_Inventory reference plugged into the target.
Not sure why you would want to multiply a transform. That's a lot of unrelated data that wouldn't make sense to multiply.
Location, Rotation, Scale.
Multiply all of them all at once?
im following a tutorial
also this is exposed but for some reason i cant get it
Does this make sense ?
fixed that error but even though it just doesn't work :/
idk
if you want to set it then drag from the ref and set the variable it should auto set the target
but your target is most likely the game instance
but drag it out and search "set variablename"
you want to use that set
looking online there is actually a formula for this
Is there a dead end for learning blueprints? how much time will take to fully learn blueprints
BPS?
anything
to get comfortable enough to make a title to ship that has a chance of success, that generally takes over a year of practice.
To give a title a really good chance, people often gain industry experience and stuff first. Most of the indie games you've heard of were made by people that once worked in the industry.
Of course you don't need to, no one does, it just takes practice, which takes time.
It took me about a year and a half to get comfortable with blueprints and how to use them
Why did it take a year? do you keep watching tutorials for a whole year?
Nope, you just make things
Learn and then practice ?
it takes a while because it's programming, and thats hard.
You've not only got to learn engine specifics, but fundamental skills
programming in general is extensive thing and unreal is complicated really like anything once you know it its simpler
You've got to learn how to break down your problems, come up with solutions, express it in the simplest form, often times with no resource to guide you. On top of this, you've not only got to learn how to adapt things to what you want to make, but also learn what nodes do the job, and the various blueprint pitfalls. That takes a hell of a long time
once you do things enough you get a feel for it.
It's always important to know why you're doing something though. Blindly clicking through or watching any resource won't help you, you will learn nothing.
but the basics of bp you can learn quick, i would say like most programming goes you can't really remember everything and there is always something new popping up somehow
and so many ways to do one thing really
I prefer watching tutorials and understanding it over copy paste, is that a good thing or i should change it?
it's a good thing, but make sure you are understanding it.
people conflate it working, with understanding.
if you watch an inventory tutorial have you actually learned what an inventory is at it's core? Have you learned why the tutorial author designed the system in a certain way. Can you spot things that weren't so great, like using hard refs to store a texture icon, or using a massive datatable for all the items in the game, again full of hard refs
yea i have heard about hard/soft ref, its important and interesting
The massive datatable is a bad thing?
if it's full of hard refs yes
What if it is full of soft ref
when you reference on row of a datatable, it loads all rows and all dependencies
ow
Not bad, I still personally prefer Data Assets though
every asset has its own individual data ?
im asking lot of questions 😅
anyways do you have any good source to learn bps
a data asset is a specific kind of asset
ow
make small projects to completion, then if you need a reference, MathewW is great.
does read a bit like that ^
definitely took a few glances before i understood it lol
I made that image... I don't remember the exact source of the saying though <_<
are you okay?
your english usually sounds more coherent, so could be signs of a stroke
I think it's just all the "you know"s that tripped me up :P
That is one cursed gif
I've just re-read it a couple of times to make sure I'm not in error and it seems to make sense to me. It would be so much better if it made me some cents though.
You're not in error, it's a correct image, my brain just refused to read it properly :P
yea, it could be phrased differently to be easier to read/understand on the first read
I mean just to clarify that I understand it?
Outside circle: The things you are completely unware of
Red line: The things you have learned and know
Inside circle: The things you know you have yet to learn.
I like the scale of it, though it is daunting to realise just how much you don't know :P
2 months for me
Hey guys, so I am trying to make an enemy move continually towards the player, I do this but rapdily firing off ai move to calls and this works fine as long as the enemy can reach the player. One problem I'm having is that as soon as the player is in a place where the ai can't reach, even just on top of a tiny rock, the ai will stop moving. I'd rather them still keep moving towards the player even if they can't reach them. I could probably brute force this with some logic that makes them go straight in the player's direction if the ai move to fails or something, but I just wanted to know if there's a way to do this with ai move to or some other node instead? Thanks in advance for the help!
For BPS i feel thats understandable
dude
you annoyed the shit out of me years ago, you are learning for a decade now
👍
wait, really? I remember asking you for ONE thing but yea..
yea it was one thing
😹
still you managed to leave an impression
@trim matrixThis dude is funny XD
lmao, that'S because I talked about it a week ago...
that's not being anooying lmao
ofc, you randomly pinged me
sorry, master
alr, i'll accept the excuse
you were the only one to help me when I first joined, that's why
thats cute
thats exactly what i wanted to say lol
Hi! I've been trying to attach an apple mesh component to a tree mesh component into a socket, using add static mesh compoent node and attach component to component node, the later node's return value is true
I've created the socket, the apple appeared in the right place, but when I try to get attach socket name on the apple , I always get None
Also, when i call get all children components on the tree mesh component, I always get no children.
am i doing anything wrong?
what i'm trying to do is when the apple mesh got hit, the apple will be detached and new apple will grow in the detached socket
no, i think your code should be fine
can you show the other nodes where you try to get the child components and the socket name?
it's possible that the whole socket stuff only works on skeletal meshes
since for static meshs it's just a... static transform
Sorry I am away from my computer
I tried two places to print apple mesh's get attach socket name
1.right after the attach component node
2. In the apple's on hit delegate
Both of which output None
search for compose transform
If this is it, does that mean I have to turn the tree into skeletal mesh?
Maybe I should try some workarounds like turn the apple into BP and store the socket name into variable, but this feels so cumbersome
i would rather create a Map on the Tree Blueprint, which stores a reference of socketname <> mesh component
it's a bit more work since you have to add/remove the apple mesh mappings every time you add/remove an apple, but i would use that approach over a skeletal mesh for sure
Good idea, and I'll manage the map
static meshs are way more lightweight for rendering
Thank you so much
wait i thought that was a multiply XD
Tysm
also since you watch a tutorial... connect them exactly like the author did
since the order of operation is important for composing transforms
this for some reason doesnt connect too
hold CTRL and drag the variable on the graph
where do i get that ?
its in other bp
you wont get variables from other BPs, unless you have a reference to an instance of them
guess there's a bunch of tutorials ahead of you 😄
fr, any good tutorials ?
Nice it worked!
NICEW!
hmmm. sooo, are there blueprint class 'instances' that exist as assets so that i can assign them to properties in the bp designer without having to find some place to allocate them? what i want is just the bpclass with its default values
right now im doing some annoying shuffling by having the property be a class ptr, then allocating the actual object in the construction script
afaik, only if you place them in world manually
otherwise instances don't exist pre-runtime
doesn't get class defaults work on a class reference? (i think it does)
@steel star
that's what he's doing currently no?
no, he is currently creating an object instance from the class
ah
ive done both.
the team keeps some state that isnt really safe to be in the default object though, im pretty sure
like a TArray<AShip> of all that teams currently living ships
oO
er. UTeam is the thing ive been talking about with Class vs Object ptr
and actually uteam will ultimately need to be an actually replicated object
so this is all kinda just a short term hack how i have it atm
well, how it was
now that i am allocating a real object that gets held onto by the gamestate, it actually should be fine, imma just not touch it again until i have to
Hi! I'm having this weird issue where I'm trying to set the global time dilation to 0 and pull up a widget right after. For some reason, the Set Global Time Dilation node is being completely bypassed. It runs the blueprints before the node, and creates the widget right after, but dilation still isn't getting set. What's going on?
How might I go about making it so an actor contains its own buttons and adds them to HUD element when selected. Already have selection working and when buildings are selected, they all have Cancel and Recycle option. But I want one garage building to have "Make Vehicle" option for example.
is 0 a valid time dilation really?
Yeah, I was calling it before but needed to move the code to its own function/custom event
It's only stopped working after I moved the code
How might I go about making it so an actor contains its own buttons and adds them to HUD element when selected. Already have selection working and when buildings are selected, they all have Cancel and Recycle option. But I want one garage building to have "Make Vehicle" option for example.
potential to have unique button options for each building.
In your base "building" class have a function called "GetSelectionOptions" which returns some values you can use to then generate the options after you've clicked on the building.
You can override the function in each class if there's different logic required for what appears as well.
How does the widget talk to the building? What's the code path?
how do you tell the building "Hey, recycle"
Is there a best way for generating buttons from within a BP? I imagine id have to have a button as a widget compoent in the blueprint and duplicate that component for each option? Jus tnot sure how to go about this.
When building is clicked I spawn this BuildingInterface BP at the selected actors location, and store that selected building as the widgets owner.
Then, depending on the button clicked, within the widget event graph, I do things.
Widget owners could be several buildings.. so im allowed to have 1 widget placed at center of all selected actors. Click Recycle once, and that tells all those actors to destroy themselves.
so how will a widget call MakeVehicle?
You might want to encode it more as data.
Building.PerformAction("Recycle")
Good question. this is where im at though. Somehow this widget needs to be aware of that option that has been added to itself.
I think you want an enum or names or tags for actions
Then you'll have the array of things to pass to the widget
hmmm
and you'll have the data to pass to the building in PerformAction, then the building can switch on it to do whatever
I'd maybe use GameplayTags
Gameplay Tags can be used to identify, categorize, match, and filter objects.
alright thanks
I will have to look at this... There has to be a way to have a button contain its own actions... similar to how a component can contain its own logic. but I'll see how tags can work too.
off for dinner. thanks!
Building holds tags
Buttons for building are made using the tags
Button calls DoThing(tag) on building when clicked
Building switches on tag to do the right thing
How can I activate an ability till user pressed key and deactivate it on release using gameplay ability system?
Within the Gameplay Ability, there is a "Wait Input Released" node you can use, but it requires some additional set up if you're not using the antiquated binding system.
When Released -> End Ability.
Ok I'll try this thanks
Hello i have a question, is it possible to add my own logic for the context menu somehow?
Im tired of renaming it to local every damn time to not loose track
not unless you modify the source code
Damn, so i need C++ for this right. already thought that
and the engine source if you don't have it
you dont really have to, unless you are modifying it, function parameters can also be get-ed as though its a variable
this is true, local is not really needed ig
I do this with a set of data assets. Their class has some functions on it that are ran on each asset when things are selected and passes in the selected actors. Does different things when you're selecting multiples or singles, like some actions only show if you have a single thing selected. Only actions that affect all of the selected things will show when you have multiples selected.
Once that list of assets is filtered down, the remaining ones are sorted via a priority and then passed to a listview. OnClick an action function is ran on the asset by passing in an array of the things to affect. And since they're assets, I can gather them all easily through the asset manager. So all I need to do is make a new asset for a new action and set it up and the system picks it up.
Is there another way to pass through spawn data with blueprints? Because I have to use a delay, as the bp interface call takes 1 tick to activate.
I don't see why you need the delay there at all.
You want to destroy the actor when the damage occur anyway. As for your Spawn Params, you can expose them on spawn if you need the data to be readily available.
There is also Spawn deferred afaik
You just said so many things that made me feel like a noob at unreal.
1.) what do you mean by "once the list of assets is filtered"? I am not aware of any list at this point.. you mean the list of actors that have similar action functions vs not? List view?! Your exporting actors into a list?
2.) Clarity on Action Functions? Is this different from a usual function?
3.) Since (things to affect) are assets, you can gather them all easily through the asset manager? Is this the same as world outlined?
I need screenshots or something lol feels like you're talking about an entire section of unreal that I don't know about.
Probably better to DM me on this if this is long winded. We are friends already I believe
It's nothing complex. Data Assets are just classes meant to house data. But they can also have functions on them. And the AssetManager has functions that allow you to pull all assets of a type without manually specifying it into some array somewhere.
The Data Assets are meant to contain the functionality for an action. In one class, I have a function that takes in an array of actors which checks through these to make sure it can affect all of these actors. If it can it gets passed to the Listview.
Listview is a widget that creates a widget for an object. You can do the same thing with a vertical box and making a widget to put in it. Listviews just handle easier and perform better. Recommend checking them out.
So when you select actors, you gather up the Data Assets that represent your actions. Recycle, Cancel, Build Vehicle, etc.
Iterate through them by passing in the array of actors selected to filter them into a new list. EG if you click on something that doesn't build a vehicle, it would return false so would not show in the list.
Once you have all of the available actions, you pass them to the listview or the vbox and make widgets for the actions, probably buttons usually. The assets can contain the text necessary.
When you click on a button, it passes the array of selected actors into a second function in the selected data asset which does the actions. EG you click on recycle. This would try to recycle the buildings.
It allows you to create expanding lists of actions without the need to do any sort of hard coding or mass amounts of branch switching etc.
So in the end once the system is set up all you need to do to make a new action is.. Program the action itself to work. Using recycle as an example you'd program that into your buildings of course. Then create a Data Asset class for the Recycle command. Override the two functions. And now recycle shows in the list of actions once you create an instance of that asset.
You've just given me homework for a week. I have so many questions.
Thanks!
I didn’t realize DAs could be used for this
Hello, Im kinda stuck trying to trigger AnimNotifies to toggle a bool to trigger mirroring of an animation. It prints ItsWorking! but never LeftAhead! or RightAhead!. The animations triggering this is in a blendspace. Im assuming Im missing something silly.
You can use basic UObjects too. But not in BP. At least not without instantiating them manually into a list. In C++ you could get their CDOs to run the logic on and pull data from. But DAs are a bit more BP/scripter friendly in this regard.
Can I ask how to get the CDO in cpp?
Static class is not CDO?
SomeClass->GetDefaultObject()
Ahh okay
Worth the warning. Do not set state on any CDO that you plan to create instances from. The instances will be affected by this as well and it's considered bad form. The only useful thing I've found to change on a CDO a UWorld pointer, so that you can use World required functions in a BP child of that class. Like...
SomeClass->GetDefaultObject()->CurrentWorld = Getworld();
SomeClass->GetDefaultObject()->SomeBlueprintNativeOrImplementableEventThatMightHaveNeededPreviouslySetWorld()
Totally sound like static class that has static variable. I know it's not but I am just a little confused as I'm very new to cpp.
But I will keep that in mind. Tyvm
Testing an notify bp class instead. Seems I cant cast to the linked anim graph that plays the animation. I get fail on first cast and success on second cast.
ABP Movement isn't a parent or child of the Character ABP then. Where did you specify it with the expectation that it would run on the character?
ABP_Mov is child(linked anim graph?) of ABP_PlayerChar, the events in the screenshot earlier was defined in Abp_move so I assumed they would fire from the animation that abp_move played that had the notifies defined. If I use tag on Abp_move and cast in the notify_bp it works.
this gets Abp_move success triggered.
Id love to understand what I was doing wrong with the first case. Should the events be defined in the parent of the linked anim graph?
it's a node in anim blueprint
Whats the workflow to trigger notifies here? so far using cast with tag was the only thing that worked in the notify blueprint.
Okay so putting the events in the root anim blueprint seemd to work.
But then what the heck are these supposed to do? They are set to off for me. confused
the checkboxes for notifies from linked etc.
TLDR: the Notifies in the walk animation played by the linked anim graph gets triggerd by the Animation blueprint that has the node for the linked graph, no matter what settings the linked graph has for animation notifies. They are NOT triggered in the linked graphs events. I have no idea why. shurgs Posting this if someone else has a simliar issue in the future and searches.
HELLO ALL!
I've a very stupid replication issue I believe, I am following a simple tutorial to do a line trace that uses Apply damage function on the server.
I've attached the very simple bps
But now when I compile and run on a 2 mutliplayer setting (New editor window or standalone game)
When I do the line tracing, I get the error, No owning connection for the actor: Function Server_ApplyDamage will not be processed (ive attached the screenshot).
can anyone please let me know what is it that I must do different or anything
Thank you all!
Why would you use legacy damage system
Anyway your issue seems to be related to ownership.
You can't call RPC as client on actors you don't own.
Hence the error msg
Multicast is used 95% of the time for the wrong reason btw.
Only thing you should multicast here is the anim and the sfx
I see, thank you, I saw similar threads regarding ownership so I will try that
As client you can only call rpc on what you own. Eg your controller, player state, and your pawn.
You can pass ownership ( set by server ) but let's not go over it. It's not really good practice afaik.
If I can give my 2 cents, don't use legacy damage system. It's ancient and meant to be removed in 5.0 but got delayed
Thank you for your advice, really appreciate it, I’ll knew that in mind
@surreal lotus btw from reading the code, seems like all you have to do here is to pass hit actor to the damaged actor
Unpin that hit actor cast, and plug the hit actor to the damaged actor. See how that go.
Cold, I’ve sent you a DM when you have time if you don’t mind helping me with a question or two 😅
Ask here mate, so others may help you as well.
I mostly only pretend to know something.
It’s regarding that old system you talked about, which one did you mean the AnyDamage or?
Dumb me don’t know what’s “old” and what’s new haha 😂
As I’m quite new to this field overall
Unreal has this legacy damage system. The one where you call apply damage.
That goes as far as unreal tournament afaik, most people don't use it anymore. I prefer to roll my own as well.
2 things I won't use are the legacy damage system and the legacy input system.
Enhanced inputs yes but as far as dealing dmg you go with GAS or?😅
The nightmare for a non coder 😂
Which is what I need 😂 but so far doing it without GAS
GAS is too good to be ignored. Especially if you are doing multiplayer game. It has in built replication stuff.
It is the system used for fortnite
Oh I know but the tutorials for it are so 🫠
At best you can make turn based game with blueprint, is my opinion
If my only tool is blueprint to make multiplayer game that needs to address latency, I will give up and make single player game instead.
I'm in tutorial hell my self, currently watching Stephen ulbardi multiplayer tutorial in udemy
So far the combat (directional) is working but there’s so much more to add 😜
Did you test with latency?
was watching a video on a game releasing on steam that’s multiplayer, mostly blueprint from what he’s saying and wasn’t a turn based game
With blueprint you can't extend character movement component.
Blueprint isn’t all bad lol
You also can't do server rewind
Only “playing” with myself and AI (as client/server) but not with other players
The lack of feature is just make it impossible to make smooth fast pace action game
I’ll disagree tbh
Well that's not how to test mp
Yeah some things you want C++
It’s not gonna be a fast paced, not like mordau or chiv and def not like slow ass Mortal Online 😂
Enlighten me Master!
Use blueprint for what it’s for. Prototype and get it working. You can convert to C++ later if it requires it
Keyword IF
Add players when playing in pie and add latency using the console command
Net.pktlag 400 or something like that
Players like randoms to test it or just more players (that I control)?
Players that you control
How many? 😅
I usually do with 3
1 listen server and 2 client is a good test
I usually keep 1-2 besides the client I run to make sure things replicate and works for server and client so just add the latency and test it again then
Im gonna have to do that to make my own server build thou I suppose but not yet, I need a tutorial for that as well as the one I followed I can’t find anymore 🥲
Dedicated servers? Not even. It’s one file
My only regret is not learning coding earlier. I'm only a few months in but happy to achieve what I can't in blueprint
For the project not the server
The server thing I can manage but somehow I can’t figure out how to compile my project to a c++ like I did before 5.4 (in 5.3)
Yeah for dedicated you will need a source build
Which I have 😅
Like I told my hobby dev friend, I don’t need the server and a lot of stuff yet but I rather have them working right away 😂
That's nice, I can't figure out how to make dedicated server yet
Yeah I hear ya
Converting it so I can thinker with it in Visual messed around in 5.3 when I touched Gas
Oh ok, yeah just need to make a c++ class in the engine
Ye but I'm trying to wrap my head on how to execute the .exe in the game then connecting to it automatically.
That’s all? Not remove the saved and intermediate files? In the project or that’s after it’s compiled but before you generate the files
You don’t? Unless I’m not following
Nope, just make a class
My idea of dedicated server is to let player host the game as dedicated server.
Crash! What's this?
I'm not opting for Web services, no money for that
Cool, I’ll try that and see if that works and let you know
Oh. Well then they would just download your dedicated server and run the exe
Port forward and what not be up to them
No one wants to do that lol
That’s how it’s done
If your putting it on the players
I guess you could make a fancy auto find thing
In your game
I want it like l4d and they can chose dedicated instead of listen
And the only sole reason is because animation breaks in listen server
Otherwise I won't even bother with dedicated
ah so your trying to just within game launch a dedicated server in the background?
Interesting
Yup pretty much
Unconventional but hey why not
There is always a way, I just feel like I'm jumping too early
Rather focus on the gameplay for now
TBH I’d just do what most games do
Package the server with the game
And add a launch argument in steam for example
Palworld is the most recent one that comes to mind
They have multiple play options
0o
One of them launches a server the other launches a client
Then in game you just enter an IP
For official servers yeah
I see
And there is a setting they are testing for auto discover
So like if a player hosts there dedicated server they can choose to add it to that list
👍
Oh well my plan is still to use steam, run dedicated server headlessly without the console and have the player joins automatically after the server is made.
A problem for another day
Just have to sacrifice more grey hair
I mean that’s basically what unreal does when you hit play as client XD
When I activate set simulate physics, my character goes into the ground, does anyone know what is the reason for this?
did you disable collision anywhere?
no
then I don't know
I'm gonna guess that your skeletal mesh collision is not enabled
when you move around by default, you are using the capsule component collision
but when you simulate physich on the skeletal mesh, you should enable the collision for the Skeletal mesh and let Physic assets collider handle the collision
I activated it from here but it still enters the ground
check the collision of the actors in the level also. and the characters mesh
Check your Skeletal Mesh Component
If you read, it says no Physich collision Enabled
Just tried, this and it worked like a charm
thank you so much
But can you maybe elaborate why it worked this way im still a bit lost
i get that i cant call an rpc on sth i dont own
Remember that Server RPC is the only way for client to communicate with the server.
So as client, you want to execute server RPC, passing the data (eg the actor you hit and the damage caused (self))
Server then receive the Data -> Applying damage to the hit actor that you pass.
Behind the scene, the server will call Event damage on Damaged actor which runs on server. In here you can set the health or w/e. And since replication work from server to client, the Health of clients will be updated on the next network update
so what you are missing in your earlier screen shoot, is you didn't pass the damaged actor to the server
this way server doesn't know, who to apply the damage to. (Which is required for the event damage to be called on the damaged actor)
Perfect, this clears so much stuff!!
Thank you so much again
also in the event Any damage, pretty sure you need to set the health variable of the character that have its any damage event executed, not the damage causer health 😄
but perhaps you already fixed that
oh yes yesi think that part was missing in the screemshot, but its there
the updates are happening as i want
!! thank you
Hello!
I'm trying to implement a voice system with VOIP but I'm having a lot of trouble, would anyone know how to adjust the microphone sensitivity please? I've tried with set mic threshold and several commands but without success...
Hey, so I'm trying to make it so my ai enemies can fall off of ledges, how would I do that? They're set on an AI MoveTo set to my characters location, but when I jump off a ledge onto a lower ground, they have to use stairs; how would I make it so they too can just walk off this ledge
It's got a nav mesh which is on both the high and low areas, and there's nothing to stop them walking off physically, they just prioritise stairs, and if there's no stairs, they freeze and can't get to me
anyone know of a way to add a branch referencing each array element, so as it loops it will do a different specific action based on a bool of each ?
I have a physics constraint that spins (wheel). How do I add some friction so it doesn't spin for eternity?
Foreach loop body pin, the array element is the element. So loop body to branch, array element's bool to branch as well
thanks, only problem is the array isn't bools
Ive got seperate bools for each to reference later
I don't know what you mean. I see a bool in your screenshot, and it's attached to the branch.
And the branch is in the loop body
So it'll run for every element
oh yea, but that is where im stuck, i want to set a variable for each array element, but its different for each one. so true at the end would set a bool for free flight btn, or hover course btn ,, dependant on which one was in focus
so i kinda want to reference the array position i guess ?
Idk if it's a language barrier or something, but I have no idea what you're asking sorry
The position is Array index
so you have seperate booleans not attached the elements in the array that you want to use ?
yea, relevent to each array element
you could just two arrays and the index to match them
so index 1 would link to index 1 of the boolean array so you would know which one to use
you would need them to be in a specific order
ah.. i can easily set the same order .. im not quite sure how to set this up.. one sec ill try before asking lol
This makes so very little sense to me :p
If you need a different chain of operations for each, don't use a loop
Or, if they're actors, give them an interface to implement
That way you can just call a method, and each of them can implement their own logic
interface ftw
i think your right, my method is a little convoluted , they should each be checking and running this within themselves really
it was a quick easily solution, until i started to add more to it
an interface would work well most likely because you just call a function on the item in the array, and you can handle them all seperately in there own bp
i did this, but is there actually a way of setting a bool from here, without a direct reference to it
Yea i think ill have to backtrack and do it that way very shortly
Even better you could just plug all 4 refs directly into the function and it'll loop over all of them automatically without needing to use a foreachloop
I think as long as there's no return value
Anyone know how I can have it so I can select a box collision like you do with the pickwhip thing ?
I have that actor
Sat within another actor and I want to set the box collision to the one thats in the parent BP you could say
What's a pickwhip
so like if you have instance editable variable say on an actor in the would you can click the pickwhip and click valid object in the world
I googled it and I still don't know what a pickwhip is
All I find is after effects stuff
if it's in the parent bp, can you not use an event for when you overlap that box ?
i would think the child would be able to have an event for overlapping that box ?
no so the logic is on the door actor itself
but idk that for sure
the child actor at runtime I want it to grab the box collision thats been set and bind to it's on overlap
the bit I'm stuck on is how I can expose the box collision variable in a way where I can set it from the parent BP to the box component I want it to be
I assume eyedropper/pipette in this context.
thats the one
Half of the stuff I see in here is unreadable to me. Yet somehow people seem to understand each other. It's wild
I feel like that when I go to the c++ channel lol.
Hi, are there any side effects I should watch out for when using the 'collect garbage' node? Using it solved an issue where an input function was still triggering in my widget BP even though I 'removed from parent' and cleared the reference to the widget, but i'm wondering if 'collect garbage' might have some unwanted consequences
That's a whole different level of illiteracy: nerds
I think you need to just disable the widget instead
Remove from parent and forcing GC after is a bit of a nuclear solution I think
The unwanted side effects could be a stutter, depending on how much garbage the engine collected
gotcha, thanks!
😦 Every time I restart UE5, it blanks the contents of some data table properties in my character class. Because there are about 20 child classes, this gets really annoying to fix every time. What is going on?
Are you using c++? Does the restart happen gracefully? Is everything saved in between restarts?
I don't know if everything is saved, but I think it happens whether or not UE5 crashes. I'll test this, because I can't remember when I last shut it down without it crashing. This is a blueprint class with some data table properties in it...
Lastly, maybe it's just corrupted and the best thing to try is create a new one from scratch and see if it still happens
These are all the reasons it has happened to me before, but there may be more.
Oh, yes, one time I forgot I had changes and reverted VC but that hardly counts.
Replacing the base character class might, uh, take a while. 😦
I believe that
Don't you have a working version in version control you can go back to?
Yes, but I don't think this happened recently
Update: it happens every time I close and restart the editor, and ONLY with the data table properties in the base class; the ones in the child classes are fine. 🤔
I'll try copying those specific properties...
I've had corrupted blueprints before. Nothing worked for me, except recreating it
😭
It also happened because I was using c++ and live coding
Two separate things
Maybe it's not it though. I say stupid shit a lot
Hi, can someone help me on why my outline post process volume doesn't work?
Live coding = good. hot reload and reinstancing = bad
Status update: I made another property similar to the ones that failed to save, and set it, and this one survives a restart
So I just need to replace the properties, not the entire class... 😐
Hey I want to make a simple system that works like this: When certain actor is in a specific collision box, a timer starts lets say counting to 10. I was thinking to make code in event tick so when the actor is in the collision box, timer goes on, but when it goes out of it, timer saves and when actor enters it again, the timer continues from when it was left on
im trying to make that after player picks 1 actor all enemies start chasing the player so im using get all actors from class but dont know how to do it
I have definitely had issues with live coding. I just recompile from my IDE now.
Have fun 😄
It cannot be that difficult right?
If those 2 options are checked (they are by default), then yeah LC will trigger a HR. But either way if you’re changing cpp classes you should do it from IDE with editor closed
I run the editor from my IDE, so changes is just shift+f10
Big brain move right there
Prly the best way to run it anyway
Sounds pretty easy
Should something happen when the timer reaches 10?
Simple
In any case, you don't even need a tick
No it wont spawn in it, it can enter and exit out of it whenever
Ok then easy
OnBeginOverlap set timer by event, delegate to custom event, increase integer. Promote timer handle to a variableOnEndOverlap, clear and invalidate timer handle
They weren't challenging you to do it, let them figure it out themselves lol
The int will be saved.
Generally people come here for advice
Not necessarily to announce they’re doing something
Yeah thats what I did
Anyways, thank you
See, then ask a question. That wasn't a question 😂 I give up
Begin overlap will not work as u expect
Well I mean I came here for something I didn't want to be just cheered up
You can do it with tick too but timer is prly better in this case because you don’t need to run it 120 times a second
U should do this on tick in conjunction with a set timer by function imo
Also nothing wrong with using overlap events, collision is just a tricky lady and some people give up on debugging too early
Just make a function that increments by 1, then set timer by function off begin play to loop every 1 second, then on tick check to see if actor is inside ur collision box, if not then stop the variable handle timer
There is something wrong with overlap if u enter and leave and enter too fast it doesn’t keep up
Needs to be on tick to function properly
If u test overlap enough you’ll realize it should only be used for things that only need to overlap once then die essentially
Such as a bullet or something to that effect, imo it’s not for things to go in and out over and over again
There are ways around that.
Tick wil never fail, and ppl overthink performance. Ur entire game is a tick.. u need to use it
Especially since it sounds like a critical component to his game
This isn’t about perf but alas if memory serves arguments are pointless here
Hi!
I'm following a tutorial on the internet from a guy, and he has the "ADD" option on Inherited interfaces and I don't, is this a bug or not? I'm sure I did all the steps correctly. For my part, the two options are reversed!
What engine version ?
Latest
I’ve seen that before, it’s a graphical glitch where the 2 are swapped. But I could’ve sworn it was fixed as of 5.3
Oh right that makes sense
His engine version is older
You would not normally ADD an Inherited interface
It’s inherited
But back in 5.1 or 5.2 the wrong one had the button
Only aesthetic tho, the Add does the correct thing of adding an interface
It's on version 5.1 I think, but he told us that we could still do it on higher versions. The problem is that at 6 hours of video, I have this problem of making the bullets from my weapon do damage to enemies
oh
I am trying to load a asset from a PrimaryAssetId, why it is not working?
Yeah the button is just in the wrong spot on the UI on his engine version, but it’s the same thing you have
Yours is displayed correctly
Oh, so it's the good button, it's just inverted by mistake
how do i make boolean enabled for all enemies with get all actors of class
For each loop Set Boolean True
for some reason it gives every single error on delay note on the enemy blueprint
and says infinite loop detected
Event Destruct can be used to remove inputs in the widget.
Can you show the rest of the code to the left?
I just moved it to cpp, but it would be equivalent to this
You cannot have delays inside regular for loops
i fixed it
hey guys, basic and newbie question... why can't I add this variable to make an array when these are the same parent (character)?
try creating an array variable with class type parent and then Add/AddUnique each of those to it
I tried so but for some reason it won't allow me to add any characters (it is greyed out)
Not from there
Drag it into the graph
Then add those 2 refs
And hit compile first
mmm but how can I add these into my new variable (char)?
yes but I didn't understand sorry, none of these are compatible input/output :/
Drag from Char, type Add
ohhh bless you
Hopefully RPig and RDogo are not empty variables and you actually created those refs somewhere, otherwise this is a bit pointless 😀
would this be correct or do I first need to set char variable before adding a new one?
no no , it has a ref from a cast so it shouldn't be empty
The char variable here is just an array, so you don’t need to set anything. But the 2 refs you are adding should be actual instances, and they are from what I can see
thanks for your help really appreciate it ❤️
Np
Does anyone have advice or sources for implementing something like this? It's very simple and intuitive on paper but I am encountering some roadblocks, the biggest two being making a charge-up animation revert to idle if the key is released early, as well as separating input for long and short holds (short hold begins charge animation, long hold sets charged state and primes attack)
I'm not sure what (if anything) to put on the AnimBP vs on the character BP. Typically I do all the attacks on the character BP as montages, but I'm not sure if it's worth making a state for the charge animation loop
how is the tap detected? Through inputs or through the montage?
the charge -> heavy path should be doable as a montage
Input -> held? -> play heavy montage
-> tapped? -> play regular montage
-> released -> tell the playing montage
Hi im trying to make a ads system and every time i try to ads it isnt in the right spot. (yes i tried changing all transform spaces)
How would i make this into a bool with out like making a variable?
the row found/not found?
like having a function output a bool
oh do I need to set local var?
Getting a really weird bug where the 'date' integer is null when interacting. It doesn't make any sense, b/c in the 'new day' event, it's reading 2, but not in the 'interact' event
I'm at a loss
dont cross the streams like that
like on the date integer?
yeah just pull off the variable you want when you want it
extra get nodes don't cost anything but make your code much more readable
like that?
Much better
might not have fixed your problem but at least it doesn't look like ass
Does every TeddyMainworld have an AIController?
What pawn is the player driving around
Read Laura's unreal cpp speed run to avoid blueprint corruption
player's driving the firstpersonplayercharacter, the AIcontroller (NPCAI) is for every NPC in the game
Nah I’m good. It doesn’t happen to me anymore. Like I said, I use my ide to run the editor now. Thank you though
Hey everyone, i followed this tutorial to get an interaction system going: https://www.youtube.com/watch?v=dkeVrlRFJDk
The problem is that i'm in a first person project, and now the player can interact with the object as long as he's inside the collision, even if he's not looking at the interactable object. Is there a way to add it so that the players also has to look at the object to interact with it?
yes
Are you familiar with the Dot product?
or line traces
I am with line traces, i even tried adding that but couldn't get it to work
First off make this decision, do you want to select the actor within some radius that the player is most looking at, or select the one that they are directly looking at?
Does kinda looking at something work, or do you need to literally be aimed at it like Skyrim
I want to be directly looking at it, for example with a door, i want the player to be looking directly at the door to be able to interact with it.
Then just line trace on tick or a timer, and if you hit something, set that as InteractionTarget
then when you press your interaction key, call Interact on InteractionTarget
I wound up getting it all done in a sort of strange way, but it's all in the character Blueprint (I personally like using AnimBPs as little as possible)
The formatting here is still mess and it's missing bools I will need later, etc, but it's just to see if it works. The input is set to a hold action with an arbitrarily long trigger time (10,000 seconds). So everything is done via cancels
Tick -> line trace -> did it hit? -> yes -> InteractionTarget = HitActor
-> no -> InteractionTarget = Nothing
E -> is InteractionTarget valid? -> yes -> call Interact on it
-> no -> do nothing
Hey. New here. Experienced dev, not gamedev. Any better way to learn the engine than doing example step by step projects on YouTube?
Thank you 🙏 I'm gonna try this in a bit and see if i can get it to work
Trying to figure out how to rotate a projectile's velocity towards a particular vector
you experienced with C++?
A bit yes but not advanced.
i looked at a blueprint tutorial, wdym "not" step by step, tutorials are usually step by step
Just try to do something
something small and limited in scope and the amounts of the engine it touches
Okay. Just want to check If not missing something obvious or a good way to learn that is time tested in the communjty
make something like Super Monkey Ball or Bomberman, a one level game with a title screen and win condition
do it all in BP until you feel comfy with the engine, then consider getting into the C++ side of it IMO
a blueprint tutorial and along the way put the stuff to use worked great for me i had experiencing programming but not with node
Learn how to create games with Unreal Engine 5 in this full course for beginners. This course will give you a solid foundation and will enable you to be able to develop any sort of game in Unreal Engine 5.
✏️ Course created by Gamium Dev. Check out their channel: @gamiumdev
Character:
https://www.unrealengine.com/marketplace/en-US/product/ad...
the beginning of this video is pretty good
after the landscape stuff it's about bps and how they work
Is it common at later Experienced stage to fully do it in c++ rather than node/blueprints ?
Thank you
It's always a mix
You can sort of think of the C++ stuff as backend and BP as frontend but that's not a perfect analogy
Doesn't take ages to do simple stuff with node? I always thought programming through a GUI rather than text (writing code as we now it) is much more time consuming
It's not an either/or decision. Learn what makes C++ and Blueprints different, what they have in common, and how to use them together effectively. We'll also learn a thing or two about performance optimization and some basic software design concepts.
Read the article version: http://awforsythe.com/unreal/blueprints_vs_cpp/
00:00 - Introduction...
i would do whatever you can in bp, and when you hit something that is performance better or only in c++ then use it
Love this guys stuff
Makes sense
Thank you
same problem, backed up to check if the event begin play was the problem. It was not. It seems like it can't read that there's an AI plugged into it. IDK why
make a fully working manageable gun system, the code should never repeat itself, then you are good to go
Can someone help me understand why this doesn't work in Geometry Script?
ok question
in ordeer to make my animations change i use booleans but i need to replicated the booleans from the client to the server
this is what im thinking
but its not working
hi guys i am trying to understand why is my array not valid (the goal is to custom event - attract in BP_Cube Grab)? I am simulating a code (copy and paste) that is working perfectly with another blueprint, the only difference between this code (that doesn't work) and the one that works is that my variable reference here is looking at a blueprint that is an actor class (and in the one is working is looking at a character class instead), any ideas how can I make it valid please?
This is how I am making the reference (Ref_Cube) and also the other bp that works (3_2_9_2_Pig). Something I did notice is that when I use a reference (simply get ref_cube and plug in to the array of the "for each loop", instead of "make an array" from the reference) it will not trigger "for each loop". However, when I use the array it goes to "is valid" but then it fails and print "not valid"
Use montages....
Reserve state machine for locomotion
Also you are setting it to false all the time
Is this from youtube tutorial?
sorta yes im taking what im following and trying to extrapolate
its the gdr multiplayer youtube tutorial
Ooof the bar just keep getting lower
Reminds me of unreal sensei
Using bools in anim bp to drive attack animation
What is gdr?
its a tutorial series on making a multiplayer game
im trying so hard to figure out how to make animations work
more acurately replicate client to server
so for all controlable characters play make a character specific with the updated montages
store a reference.
@queen dagger already learning multiplayer?
do you mean like this setting the variable before the add in the array??
ye
thank you!
but when I do that it goes from the for each loop to the timeline straightaway and ignores the attract function D:
you loop through an array or 1 reference?
1 reference
bless you mate!!!!!!! finally after a few hours made it hahaha
He chose get child actor btw
The respected devs here opt to not use child actors at all as they are quiet broken.
is there an alternative ?
don't
just spawn the weapon and attach it
I would use components for equipment system
I managed to make it work! Thank you 🙏
What do you mean by that?
The component does..... what?
I'm guessing equipping an item is handled by the component which handles the spawning/despawning of actors and their attachment?
Hello, I have a way to enter a car fine, but when I exit, I can't possess the character again. It just spawns next to the car, and the car remains possessed. Any ideas?
the screenshot is in the car blueprint
That's what I have in mind
multiplayer?
Eventually yes- I didn't realize there was a difference. Am I mixing single/multi actions?
My class is requiring Unreal again and I'm trying to show that I can do UI stuff. However, it's not letting me add both an image and text onto the screen, as if the widget can't have two children. How can I fix this?
Canva -> Stuff
I have been playing in client mode
client mode or single player?
if you're in a multiplayer context that exiting of the vehicle stuff will happen on client only
note how you have a run on server event to get in the vehicle
you need the same to get out
Cooldowns and Timers: GAS allows for the implementation of cooldowns and timers for abilities, effects, or actions. This ensures balanced gameplay and prevents players from spamming powerful abilities.
Multiplayer Support: GAS is designed to work efficiently in multiplayer environments, making it suitable for implementing complex gameplay mechanics in online multiplayer games.
Modularity and Extensibility: GAS is highly modular and extensible, allowing developers to easily add, remove, or modify abilities, effects, and attributes without extensive reworking of existing code.
Data-Driven Design: GAS promotes a data-driven design approach, where gameplay mechanics are defined through data tables and configurations rather than hard-coded logic. This enhances flexibility and iteration during game development.
RPG Systems: GAS is well-suited for implementing RPG systems such as character progression, skill trees, and item effects. This allows for deep customization and progression in role-playing games.
Ability Combo Chains: GAS enables the creation of intricate ability combo chains where executing specific sequences of abilities results in unique and powerful effects, encouraging strategic gameplay.
```Is that true about GAS? I don't get why I should use it
Thank you! I knew I was missing something.
I didn't realize the key press to exit needs to be multiplayer- thank you!
Is there a tutorial on how to do this on Unreal 5.4? I'm trying to follow my professor's video, but the nodes don't seem to show up even after dragging (trying to display the UI in-game).
it's there
Did Valorant used GAS for all the ability because there's a lot...?
Hello, did anyone of you ever used Davincy Resolve? They have those satisfying ribbon sliders for selecting values where the longer you hold the mouse to the right or left, the faster the values change. Does someone know how to implement it for a UI widget?
i need this widget component to be returned by this trace but it is not
set trace response for visibility to block
same result
note that this widget is mostly transparent, but i intend that area to be hit
Thank you! I found out what I did wrong and completed the assignment.
nice!
Quick question regarding editor widgets. I have a data table that contains all my card information, I’m running asset tools to loop through and create / update a set of primary data assets, one for each card. This works fine, when data is changed inside the data table I can use my update function to update the correct data asset and save it. Now I created all my creature cards using a similar technique. However, I want to apply the data asset to the blueprint actor it’s related to example DA_card should be assigned as a variable inside BP_Card. There doesn’t seem to be a way to run through a loop of the BP card blueprint and set the variable inside to the Data asset. I could do this manually, I have 340 cards 😭 I’m just thinking is there a way to actually assign and then save it inside the blueprints using editor widgets ?
This doesn't sound right. Could you not just assign the data asset to BP_Card as a variable, and then read the value from the data asset in BP_Card when necessary?
Working on the concept of a "main menu" for what is genuinely my first ever attempt at using unreal (trying to create a turn-based game). Long story short, I'm followed a quick tutorial and now I'm committing the cardinal sin of trying to integrate another tutorial I found into my project. When running without the main menu flow, game allows me to click on pieces, move them around, and it ends the turn when I have set it to.
When running with the main menu, the game appears to assign the "NetMode: Server" screen to the "Card_Table" level, but places the "Client 1" screen on the "Minimal_default" level. I think this means I am incorrectly playing the game, or have set up something incorrectly either in a blueprint or with setting the proper gamemodes. Some screenshots of my blueprints as well as the game world not loading properly when I click on "Start Game" in my menu.
That’s what I plan on doing however, the creature blueprints are children of the base creature type, each creature needs the variable inside it. I can open each blueprint manually and set the variable of the data asset to the correct creature but I was wondering if I could use the asset tools to do this using an editor widget like I have with the data assets
You shouldn't need a seperate blueprint for every creature. Your data assets are what could contain the data and even instructions or abilities of the card. You can subclass your primary data assets as well if needed to add more values and common functions.
Then you should only need 1 BP_Card, set it's associated Data Asset, and then you can run functions and read values from the PDA.
How would you handle creature specific abilities if there is only one base creature blueprint ? At the moment there is a for each loop inside the parent, it can read the data asset for the attack patterns of a creature. Using a switch on enum it fires off an add actor component for the attack pattern so each creature can have its attack pattern correctly assigned, having it as one blueprint seems a little complex for handling specific abilities within the attacks as they can differentiate between creatures using the same actor component attack style, bit confusing
If you have varying abilities you probably want them separate from the cards themselves, and then you can assign the abilties to the card.
Like these cards, I’d have to create a lot of actor components and assign them in the base blueprint ?
I'm going to guess there's likely a bit of overlap within the abiltiies of your cards, with maybe just some values changing. It'd be best if you were working in C++ to manage it as you can instance an object that represents what an ability can do and show and hide values for that particular object.
I’m meaning to get into c++ after just finishing my uni year, it’ll make life easier, I know c# so hopefully not too hard
This was how I built all the data assets using the create asset tool
Your component is set to no collision
i noticed that too and changed to queries only, and still no change in result
You trace with vissivility
Vissibility
😄
But your component is set to overlap on vissibility channel
Change it to block instead
Do a line trace to see if u actually hit the comp
well, i don't, that is the issue
if my cursor (where im tracing) is over the static mesh (which i have collision also for) it hits
but i have a 64x64 or w/e it is widget around it too, mounted to a center socket
which is like a reticule around the ship
My suggestion would be to do a line trace manually with draw debug. Then ensuring you are able to hit the component with a print string. If that's not happening then keep checking your collision settings imo.
hm. ever try to debug a trace call? like.. put a conditional breakpoint somehow for the specific widget..
well, wrong channel for that
I just print string on hit component
I noticed the DataAsset docs now tell you to implement it in cpp and derive from it in bp. Is there a specific advantage to this as opposed to just creating those vars directly in a DataAsset bp?
hello, i am trying to build Unreal source 5.3 with VS 2022 and having Windows 11. But for some reason, as soon as the build starts , maybe after 11 to 15 / 6000 , sudden bsod happens.
2. i tried to install older versions of nvidia driver, updated the latest updates from windows update, updated the VS too but still same result.
3. I tried seeing the logs in event viewer but i could find only repeated ones which i am not sure if its related to my crash with building UE source.
Any ideas on how to solve this ? thanks for answers
try #engine-source instead
thank you
Nothing specific for normal data assets. PrimaryDataAssets have the extra AssetType stuff you can use. Can't see why they'd say that for normal properties though. But it is normal to keep your DA classes in C++ unless you're a BP only person.
I don't mind putting them in cpp, was just curious if that is any different than creating a bp class derived from PrimaryDataAsset
There's some really fun stuff you can do with DataAssets in C++ that you just can't in BP, like showing and hiding fields under certain conditions or having fields limited to certain values (like gameplay tags only allowing tags from a certain hierarchy to be selected), or the best that I've seen, is having arrays that allow you to instance objects for the asset which then also allows you to give additional definitions of properties or behaviors for those assets.
Interesting, thanks!
Can anybody tell me what the animation blueprint node that blends in your active montage is called in the pop-up? I have to keep copying and pasting it because I can't find it in the menu to create one from scratch.
First one usually says like "Slot UpperBody Group DefaultGroup"
While it can be used for blending, it is just a slot. You can just right click and select Add Slot Default Slot
you can then select the slot to change the slot to existing slots you declared in Anim Slot
Hmm when I right click in an ABP and type "add slot" there are no results, and looking through all the "slot" results I don't see a match
just type slot
Read above, those upper body slot don't magically exist. You have to define them in your anim slots
Upper body is just a name that is declared, you can make one with any name.
I have 7 slots defined
Screen shoot
Upper, Lower, Full, etc.
What is your actual issue? You can't find your slot? Or are you looking for blend per bone node?
U already have the slot
When I need one I go to an old ABP and copy it b/c I can't find how to add one from the pop-up lol
yeah but how do you reference it in the blueprint?
I said that like 5 mins ago tho
yeah I have no clue why I did not see it
lol
I have been staring at this list for like 20 minutes trying to find it
well time for bed
Hi, does someone has ue5.2 installed? I need just 1 node ObjectLocalBounds, the blue one, i have ue5.3 and it has only red one.
I have this current setup, an actor BP_WindshieldWeatherEffect with a SceneCaptureComponent2D (img1), and another actor BP_Droplet with just a little sphere inside. (img2)
My BP_DepthCam generate X BP_Cube, set itself as the owner and film them.
It work well, my texture shows normals variation without issue. (img3)
Thing is, I only want that cam to see those cube, so I set them to Only Owner See = True and at that point, nothing show. (img 4 & 5)
Am I misssing something?
I doubt this will do anything, but in your Ship_Base Components window, try dragging the Mesh on top of the DefaultSceneRoot so the mesh becomes the root component.
Had some problems with overlap events and traces not returning any values, but doing that for one of my actors fixed it. Not sure if it applies here, but worth a shot if you didn't fix it yet.
I feel like I'm missing something simple here- I want to make a function that I can then re-use in several different other blueprints. I've made a blueprint function library with the function but the function doesn't appear when I search for it in another blueprint. How do I get my function library to appear in other blueprints?
I'm actually curious, how would someone achieve the Metal Gear Rising Blade mode effect inside of blueprints/unreal in general? Is it doable even?
What does the Metal Gear Rising "Blade mode effect" do? 😛
Pretty much this
It gives you a target which gets rotated using mouse while slowing time almost to a pause.
(Until here it should be easy to achieve)
However it then gives you this patterned plane (?) and once you slash, the mesh in front of you gets split in parts based on how/where you are aiming being able to slash it to even tiny pieces
I only have the default filter by label function, not my custom one.
I'm assuming it replaced the mesh with 2 new meshes and then slashes those to even smaller pieces. Does unreal have a feature allowing you to slash meshes? In new ones?
I see. It should be possible, but you're looking for a way to slice meshes specifically? It's easier if you break it down into manageable chunks, no pun intended.
There are some tutorials for mesh slicing using Blueprints.
I'm assuming it would be better in c++ but my coding experience stopped when classes were introduced in it back in my university years, and I would rather avoid it unless necessary as I feel like learning coding Is impossible for me since I have quite the bad relationship with maths
Definitely gonna look that up then
hey so ive got an enemy with ai moveto, set to target the player, but they cant fall down ledges; how would i make them fall?
check out Dynamic Navlinks
whats that
They're nav link proxies. They tell the AI (when using the nav mesh) that they can go from A to B (in a straight line) even if it goes off the nav mesh.
ah ok
would i need to make that for each ledge?
Hey Im bumping this here because I think this is more of a blueprint question. So basically I created low poly water material that has 2 parameters - height and speed. Now I have a blueprint in which I basically tried to do water boiling logic (the parameters will increase smoothly). I tried creating dynamic material instance in the construction script, but that doesnt seem to help. Basically, the material is doing weird things where it just sets the parameters in instance to whatever it wants, but when I check it in editor (with that print string), it looks fine. Any suggestions?
and i'm guessing you set the material somewhere ?
do the the initial values work if you change them to whatever you want ?
Yes they do
oh i c you have the water mesh plugged in so it should go to that
Should I change the source material to the material I want or just set it in mesh directly?
I tried whatever it just doesnt work the way it should
the values are printing just fine, but the material doesnt behave how it should
i think you should put the instance of the material in source ?
i have only used it a couple times but i think thats what you need for one thing
Tried that, still wont work
i have only created, then set the material
And it works fine?
i have not tried a water effect, but i used it to change a parameter
and i had no issues
i just created, then set the material on the mesh to the instanced one
Can I check the parameters in material instance in runetime?
Because values that Im checking look fine
so Im guessing its just have to be something with the material
Has anyone had this error before and might know whats causing it? im not making any lengths checks
My game works as intended so im unsure where this is coming from.
i'm guessing the length is less than 10 ?
you cut off the spot that shows the length
sorry let me reproduce it
well according to the error, if the length is less than 10 then your accessing out of bounds of the array
yeah im just unsure why that is. if i remove an element from the array does this move the higher array indexes down?
are you removing while iterating ?
and also are you using the index from a loop ? or i'm guessing it's just a variable ?
show your code
but you shouldn't remove while looping over an array
or at least don't remove while iterating forwards, do it backwards so the removal doesn't make you skip elements
thank you both im pretty sure that's the mistake I made
hey so i dont get why this is breaking; i setup some perks to show on screen (no actual functionality yet), but it doesnt put the perk in the first slot despite it being available
https://i.vgy.me/zRsvEw.png
https://i.vgy.me/rlSILE.png
https://i.vgy.me/5vgwHv.png
theres a slot there, it just isnt taking it
Hey, guys!
I have a blueprint actor that I place in level. I change the values on exposed variables and stuff on the components (Transforms, spline points etc.) on the placed actor in level. I want to apply all these changes to the blueprint class. How would I do this?
Hmm.. okay. thanks!
You can do it the other way around
place in level, then modify defaults and see the results
That's the way I do it right now. But said blueprint has 10 very long splines in it, that I use for a simple race. It's very tedious to work in the blueprint and watching the result in the level.
You'd probably want those to be customised on a per instance basis anyway
Not really. I have the 10 splines and just move a target on the spline. I want to spawn them within the blueprint.