#blueprint
402296 messages · Page 775 of 403
Error: Unrecognized type 'TQueue' - type must be a UCLASS, USTRUCT or UENUM
Which is amusing since I've been returning TArrays just fine
I guess that's normal though... like you can set a blueprint variable to be an array.. but not a queue
@hexed inlet correct
there are quite a lot of TThings which don't work with BP's
Time for plan C
Oh yeah Blueprints are dumb lol.
thinks of a plan C
you mean plan C++ 
lel
If i had to take a guess there's likely double the content or more in C++.
There's also a few Blueprint only features which is really dumb.
If you're looking for blueprint function code it's in the engine folders like k2 functions.
and the code is super ugly reflection logic.
This is a UE function, not mine lel
Make a Niagara Particle System object, and yeah, extend off it
wtf is that node lol
Im more upset that it's lower case.
then anything else.
that means it's a blueprint created function so they could add spaces in the function name.
even a full stop
Where is that node even from 🤔 I can't find it in the source
I like that, because you are indeed wondering if the name is ever going to end
The full stop is there to reassure the reader
It's over.
I only know the BP way of producing it
Perhaps if I had a built UE I could say, but I don't
Yeah I have no idea, I can't actually find even a class called NiagaraParticleSystem
Maybe it was added 4.27 as I'm still in 4.26
ah mabes
I can make a variable, or add it as a component, to get the function either way
Ty
Hey guys! Would anybody be willing to help me out in voice chat between now and later today? I'm doing a project for school and one of my group member got the dialogue plugin. And I'm trying to have certain animations play on certain dialogue options . I created an event but I'm unsure how to go about the blueprint. I'm also not that experience which is why I'm asking to vc cause I know I'm gonna be confused.
My Problem: When i try to call an event which should add another Entry to my Tile View, notting happens
does the string fire everytime this even is called?
yea
i am calling that event trough my HUD
same problem with Wrap box
childs are added
but not renderd for some reason
when i trigger event by Construction it is rendered tough
tick function INSIDE of where the function that has to be called is works too
if the string calls multiple times, could it be that they are drawn on top of one another?
none of them is visable
How do i make my spawned actor launch?
Does it have a movement component or use physics or what?
it got nothing of them
Launch Character works with Character class, if Spike Ball is above that, it cannot be used
ah damn is there another way?
Something needs to do the moving. Either use a projectile movement component or physics
for actors, enable physics and use impulse
Projectile Movement component is better if you can get that working
Spike Ball sounds like a "bullet" type treatment
hmm
Yeah it all depends on what you want. If it's bullet like, use projectile movement. If you want physics everywhere and for it to be knocked around, use physics.
but how do i make it move forward?
Start with getting it to move it all. You're thinking like five steps ahead of where you're actually at
yeah mb
you can test projectile movement in the bp viewport using simulate
yeah i did but it just fell down
check out the projectile movement component settings
probably need high speed values
Using physics or PMC?
There's no way to pause a timer inside of an uObject?
Why can I create a timer but don't pause it?
get timer handle, pause timer?
I think timer logic requires a valid world and UObject based BPs don't have GetWorld() implemented
so if you want to use timers and other world-requiring nodes in a UObject based BP, you need to inherit from a C++ class which implements GetWorld
Yes, the function doesn't seem to appear on a UObjecct
ohhhh
Ho, thanks for the response!
Why UObject though? Using UObjects is rough in blueprint.
I dunno I think they're fine in BP's, you may just need that base class for it in C++ for GetWorld
but without GetWorld they can be a bit annoying yeah because half of the nodes you want aren't available :P
I want to create a Weapon system and I find it easier to use UObject to have the info and logic of the weapons
That sounds painful.
It is HAHAHA
Personally weapons should be an actor or component. Most likely an actor. Because specially in multiplayer scenarios you need networking.
Thanks!
Hey Is there any reason why adding or setting relative rot of a camera component in my character not working in runtinme?
Having trouble pulling a variable from the PC blueprint in a UI widget component is there a different call? Can't find a viable object after making a cast to PC
how is item-picking-up mechanic usually implemented? with linetracing or with the collision detection of the respective actor?
We do interaction by a spear trace, filtering by dot product versus the forward vector, and selecting by distance. If the item to interact with is a pickup item, we pick it up.
So basically the closest interactable object within 90° of forward is what we interact with, and we pick it up if it is a pickup object
@swift pewter I wouldn't do it like that. I didn't read the whole thing but I would just have a reference called closest enemy, set it to null at the beginning, set it to any enemy that passes all of your condition checks and is closer than closest enemy
i would only store one enemy in a normal variable and overwrite it if the one in the current iteration is closer
So you only have to do one pass through the array
beat me to it 😄
do you clear all arrays before you start the loop?
or is it a function with local variables?
ok
well yea
you add only those who are in range, but you still use that as index for the array with all enemies
so your indexing is wrong
I didn't read the whole thing but anytime you are removing indexes, things can get weird because you are offsetting the stuff that comes after it. You are really just making it far more complicated than it should be.
Just iterate through the array once, setting closest enemy if the enemy is closer than closest enemy and passes all other checks
Hey! I'm attempting to use the SteamBridge plugin to add proper SteamInput support to my project, and whenever I attempt to get it working, it results in the controller type returning as "Unknown" (instead of my PS5 controller for example), and I can't get it to pick up on inputs.
Am I doing something wrong? I've tried to change the Index of the controller to 1 (as in player 1), and that didn't work either.
Unless I'm missing a step in getting SteamInput to work or something. I got my SteamInput actions bindings and stuff set up on my Steam App ID. My Steam Controller shows up as unknown as well.
Button in order to select all nodes of event?
Huh?
I am talking about Blueprint nodes
looks like without paying 12$ for a plugin nah
sorry 11.99$
Hey does anyone know how to get the size of an object in a blueprint
I know that GetActorScale3D works but that gives me the result in a weird type of scale
I mean it doesn't really give it in cm
The thing is I want to use location values and scale values together
and the location values is in cm I think
and the scale of the object is its own scale it isn't in cm
And I need the radius of the sphere that I am using
Howdy! - Doing a level tutorial. On a level transition the input controls of my Rolling Ball are inverting. I got around this by cloning the level that behaves as expected, but I'd like to know what I did wrong. Is there a setting in the project or level blueprint I am overlooking?
Bounding box is the best you'll get for arbitrary actors
Yup I just found that but how do I use it
It returns the world aligned box that would contain the actor.
Do math on that and you can fit a sphere to it. Hint, Pythagoras theorem
Oh ok
can i update a spline to snap to a bone via blueprints and stick with it and resize in game... im making powered body armor.. flexing dovetailed hoses with airbag piston heads.. powarmor.com = pneumatic body armor.. pick up 36,000lbs... https://www.artstation.com/marketplace/p/VX3jP/powarmor-com-pneumatic-body-armor-pick-up-36-000lbs .. https://www.youtube.com/watch?v=BTnlIfcZnDg
Game Assets - powarmor.com = pneumatic body armor.. pick up 36,000lbs, USD $0.00. www.powarmor.comBuilding better powered body armor for the human race. apache.org/ open license free to copy modify.This project is...
www.powarmor.com
Building better powered body armor for the human race. apache.org/ open license free to copy modify.
This project is still in design phase, I am only showing my demo drafts/ older work.
Air powered hollow universal direction joint (shoulder, hip, bird-wing..) Locking, lightweight, free to move when off, scale-able, spin-able, st...
Or actually you can probably just get the length of the vector that represents that bounding box if it just returns a size in XYZ
You shouldn't just need the x-axis value, but you do you
That will just tell you what size and x, you need size and Y and size and Z unless everything you deal with is a square or a circle
Oh okay you don't need to fit a sphere around the thing, you want to get the size of a sphere. Then yes, X will work.
I thought you were trying to fit a sphere around an arbitrary actor shape
But you can also just look at the size of the sphere at scale one, and then just multiply that by the scale. Most built-in meshes are 1 m
Do we have a design channel somewhere? For general systems and gameplay design? I thought we had one.
There was something along those lines but it was always offtopic
:D
you can probably just ask here or #ue4-general I guess
All right so I got a couple of general design questions or just trying to get people's opinions.
First one, has anyone here ever completed a game with an additive damage/armor model? That is, where armor is a flat reduction in the damaged model rather than a percentile reduction. So a shotgun that shoots seven pellets at 10 damage each would deal 70 damage to an unarmored Target but 35 damage to a target with five armor. A bolt action rifle that hits for 50 would deal 50 damage to an unarmored Target but 45 to the armored one. Making the shotgun more efficient at soft targets and rifle more efficient versus hard ones
I think a system like this could be very interesting but it would take some very tight tuning as each point of armor is much better than the last, and how good it is depends on the incoming damage values
It doesn’t really sound too useful tho imo design wise
You will have to tweak a lot, to make sure you don’t create a boring progression system
Also keep in mind you are just limiting yourself completly
When you could add a damage reduction curve, and start with a linear one which you can later adjust if needed
https://hexpion.com/category/combat-design/attributes-formula-combat-design/ -- there's another article that went over three different dmg-atk-def forumlae with different math and the pro/con of each, can't find it, but this covers two
Terraria has very similar armor progression as to what you describe, and it honestly feels boring in terms of armor
What makes terraria combat fun is the buffs and weapons
if you can keep the formula itself to the combat interaction so that it's all in one place, you can tweak it as you develop. The annoying issue is the influence of levels or stats on these modifiers
Does anyone know how to fix this error? Every time i load project , i get these errors. If I select all nodes and "Refresh Nodes" , the errors are fixed and everything works. Until the next time the project is opened.
hello, how do u pass object reference thro rpc?
Replicate the reference
no other way? like converting it to something then converting it back when client receives it?
Well you can have different functions set up based on if it’s client, server, ...
But that would just be overcomplicating
Try and work out where exactly it goes wrong
Got a problem here I used to create new components inside a BP actor executing an custom event from editor, but when you reload the level after save everything, the data inside these components get lost
So I moved the logic to the construction and now in game there is no data...
Someone knows a solution for this ?
Which exact pin is failing when launching
i dont know, replicating everything doesnt seem the right way to me
what type of functions you mean?
i believe construction script is for editor stuff vs begin player for gameplay, could be wrong. To save data between levels, game instance can be used. If you want to store data between sessions of play, game slots are needed
Na isn't data between levels, I wanted to create instance mesh components
but each time I reload the level the instances components inside my actor have no instances data
if you call that from an editor custom event
Custom Event -> Add component -> Add instances to it -> Save all in level, reload the level, magic are empty
it total smells like a bug but
Not sure i get what you're doing. Are you saving each instance's transform, and reloading it on beginplay?
Or are you somehow just saving the component?
Or not at all?
Ah, generated at editor time
Right but its not saved anywhere
It needs to be saved if you want it to persist
And somehow reloaded in-editor time when you open the level again
Not sure thats directly possible? Dunno if construction script is triggered in editor
Like.. when opening a level
Exactly
I got a placed actor in the world, where I click that it generates an array of created components and each component have instances
once it was generated all looks fine
once you save all, close the engine and reopen, all the instances inside the components are null
Its dynamically added at editor time,
and yeah that HISCM array is public visible editable per actor
So the actor doesnt know it should exist when you open the level
so the componentes are there per actor, but have no instances data
well I got other version when this get executed in the construntion
and is ignored too in the packaged game
otherwise in editor works
when you hit play
Are there a reason for it being a editor callable function? Like, couldnt you just call the function at beginplay?
Well I got 1000 boxes and want to get these baked in the world with static light
so why the data don't get stored properly ? idk
Hmm ...
Well that i dont know how to solve ^^ you need them to exist at editor time to bake them i guess
So it must be statically added
Which is a hastle.
Probably more because of the dynamic nature of the setup, but i could be wrong
well there are a lot of tools that store the data properly when you press custom editor event
like otherwise you won't be ever able to store data
That'd be handy. I've always expected to be a very manual process to handle things like that. Should be integrated as an option already
So one could dynamically create static content, so to speak
Does anybody know why for some testers of my game their mouselook doesn’t work, but for others they can play it just fine?
I have raw input enabled
Controller input messing with it? No idea tbh.
whats mouses fail ?
One of the mouses that fails is a Logitech, but one mouse that works is a Logitech
@gentle urchin Okay just confirmed if you do the same but with components previusly added in the BP then works
the instances keep after reload the level
the engine seems to don't like you storing new components into arrays
well that's strange
maybe have different keys ? like more keys of the normal ?
and detect it wrong ?
Mine is logi and have like 8 keys
maybe the engine is mixing concepts of the axis or something
with the wheel or idk
Okay I’ll ask about that
But is it because of the array, or because they are dynamically added?
I bet on the latter
I bet because you add dynamically the componentes
so I bet the only way to get this working is adding the components as external actors ?
I would expect that to work yes^^
So a workaround could be spawning them in a separate class during editor, which reparents to the actual owner class at beginplay? Maybe 😅
What if
The actors just gets replaced at begin9lay
They would exist during baking as their regular non-instanced meshes
And at beginplay get swapped for ism versions
Baked light is still baked , yes? No?
I need a master! ..giggity..
I need to either add a variable to "staticmeshactor" or.. something else..
I am using the Foliage Brush to place my Trees, I get the instance data easy, its transform, name or mesh, etc.
I NEED! it to have Health. So each mesh has an HP that is cached per instance. Or a work around.
Currently the system is a Builder Pattern mix.
The Brush places Instances of the single mesh.
When "Tool" hits SM gets instanced data > Transform, Index, and name.
Data goes to builder class which uses the SM and scale to know what happens and the location for where to spawn.
Index is used to remove instancedcomponent data from class and/or save for repopulate.
Little stuck on how I could add a variable to the Brush Class, StaticMeshActor class, or if theres another direction to take the "HP" aspect.
Thanks in advance and feel free to ask questions
I was afraid that was the case :p
You could on hit convert it (replace) it by an actual actor
Sm... sounds like you should just straight up replace it with an actor
Usually foliage is ism or hism
@ me if anybody has any ideas or have ran into a similar issue
as this
You could also go super advanced and replace the ism with another ism untill it would 'get chopped down' if it were a tree but that'd be a hastle
Does anyone have an idea on how to use the input from a trigger to activate my blueprint that's not in the level blueprint? Basically, I'm spawning an object when 'E' is pressed but I want it so this is activated by a trigger instead
Id like to use that as a last resort as it would be the most costly i think.. well.. if another class just replaces the origin class it wouldnt change much except the new var and a plash of cpu when making the switch.. thats actually not a bad idea when thinking of it in a grander scheme. Still curious if anyone knows of a trick with adding the var to the current class. Or a methodology that allows the use of the brush with a hierarchy great thought though! thanks
If you dont need an instanced ref you dont need it to exist or be in the lvl bp
You just have the "Event" spawn that class
is it possible to receive HTTP requests in ue4 without a plugin?
Assuming there will be quite a few of any "stage" of the mesh already, moving around some instances should be pretty straight forward i think
think of E' and "trigger" as the same thing "events that cause something to happen" happen is the spawning of the actor
It becomes a tad more work if you have to create the new components on the fly etc, but still very very doable
Some master actor needs to keep track of it tho
Not specifically what stage something is at(because that'd be defined by the component they belong to)
Right. I don't even think its that much work.(famous last words) and it keeps a data table of refs post build.
randy does that help?
No, most likely.
Yes for the most part..
I wager you need to have libcurl for that
Im just not sure what an instanced reference is
I agree, its not that much work , but didnt wanna get ahead of myself. Just made an ism generator for my current proj. Only a couple of lines really
im trying to do this only based on bp
So you have a class which is the "file" when you place things that are of that class but are a little different you use "instances" which is like a "copy" that isnt a copy.. its a reference to the the original class but different variables. So the class is used "once"-ish and the instance data is simply just saved as the changes particular to the instance.
If that helps
Consider looking up libcurl implementation in C++ (when it comes to third party libs, treat Unreal as if it's a different platform), and make few BP callable functions in C++.
the thing is i cant use any C++
do you know where ue4 saves the "Save Game" Data?
Like a full on tool to use in ue4 simiular to the foilage brush? Or Just a class to place instances everywhere?
.JSON
oh nevermind
In shipping builds, usually AppData.
I suspect this is XY problem syndrome.
What are you trying to do anyway?
So classes are like your player and then the reference is the version thats actually in the scene?
Nono, not a tool at all 😂 a very simple setup for actors to aquire mesh instances from a ism component . If the mesh doesnt yet exist, a new one is made etc
bc what im doing is making a mod for a game but i cant implement any new CPP and i can only use BP
And what your mod's going to do?
thats a way to look at it .
Dont feel off about the confusion.
Getting your head around references instances classes and heirarchy is some of the hardest walls to climb over in OOP
send and receive data
I'm expecting clearer explanation, but okay.
Most modding is easier to do through JSONs I guess if you wanted to use blueprint to mod you can run the data in a bp and convert the data to a data table and thats close to using json to create it
let me get an example for ya
im tring to make something that sends and lets just say actors locations and rotations to a server so it can be sent to other clients
im very limited
Reason I brought up references/instances was because interfacing requires a direct instance of a class to send messages in blueprint which is why someone might place it in the level blueprint or in the world before runtime.
Like i cant use any plugins no added cpp and alot of core functions for ue4 got removed from the game
Hi! I want to have a recoil mechanic sort of thing for the player (not the gun), so what I mean is say I shoot at the floor; my player will go upwards, if I shoot forward my player will go backwards. Does anyone know how I can do this, or good resources to look at?
Like I've got the horizontal movement working but the vertical is not, I assume due to gravity?
get the data for the direction they are "shooting" and "add force" to player in the -1 or opposite direction
Could use forward/right vector of the "gun" to find the direction in world space the gun is facing.
Apply force or impulse to player capsule/etc in the reverse of that data
any of that make sense?
Let me know if you get stuck on anything. Happy to help.
make sure to tag me otherwise ill never know
Yes that was my intial plan, but I was struggling with impulses and some errors with simulating physics
I'll try again now and Ill get back to you
What kind of error?
Make sure the impulse if being applied to the capsule, might have to make sure certain physic and collision settings are set... hmmm ... just picturing a bunch of issues you might be running into..
If physics turns out to be a nightmare I have another nasty idea to play with for ya
man.. my meds are on point today.. that or im just manic and in a good mood.
Screenshot and show the errors if you get any
Yeah will do
A non physics idea or three..
So no matter what you get the "directional" data the same or similar way.
Its how the player moves that is gonna be cray cray.
You can.. trigger jump and use the movement component of the player to tell it the speed/direction..
In this case if you want them to be able to like.. machine gun their way on top of a building...
You would need to have it set the "inair" or whatever the boolean for JUMP so it doesnt null if on the second "shot"
A less sexy way is with the magic of LLLIIINEEEAARRR INNTERRRPULATIONNN!!! sorry..
LERP
Pick the "distance" you want them to "transition" get the direction data as well as the current world space location data.
Use LERP'uh derp to go from A(current location) to B(Current Location plus distance in reverse direction of shot) then use a timeline or another metric for how long that LERP takes.
Might have to play with some collision stuff there so that like.. people can't teleport through walls and sheet
@green eagle I'm still a bit confused, how do I "link" (for lack of a better word) the custom event and the trigger together? And by trigger let me clarify by saying the box trigger actor thats pre made in the engine
would I use a bool parameter?
Wanna hop on voip/screen share? I speak Engrish and I can nod and smile to a few other languages
The Trigger is the event.
So if you use the box trigger or what not it usually has like an "onoverlap" event or beginoverlap something like that
When that event happens. Plug and Chug into your "spawn actor by classest"
I have enabled "Simulate physics" on my capsule component and now my player can barely move?
The problem is I have been able to do that but only in level blueprint
yeah its cause physics and collision are a nightmare and you have to have the hierarchy follow it to some degree which is hard to explain in a brief text. It would also end up having your "capsule" falling over and youd have to work out that pain in the pooper.
Try the other two ideas
Or dig into your physics handler research.. might be a pain but either course of action is gonna teach you a lot.
you'd be using launch character and a little bit of vector math for direction
Conrad! Always reminding me I suck at this 😉
Yo C'NAsty did you see my inquiry like 20 minutes ago?
always? huh, don't worry I get knocked down by others as well
i guess i can look
#blueprint message < this?
I didnt know there was a launch function
ah wait that could be perfect, I'll give it a go
nice
sounds like it
its fairly new
Makes sense
Thanks for your time and help as well, really appreciated
I have the resolution as a string (for example "1920x1080" or "1360x768)). How can I split that into two so that I can feed it into this node:
to humor the impulse method, it can work, but phsyics would need to be turned on only when fired, but iirc it's not reliable, i think once enabled to physics then disabled, something bugs
Let us know if where they said "vector math" and I said stuff about vectors gives you a run for your money. That crap can be a head ache if not use to it. Let me know how launch goes thats very new to me.
you can use ParseStringIntoArray and use "x" as the delimiter
Yeah that was the direction I was taking them and then some ideas about time lines lerp and jump function that i dont think they tried yet.
why... not have an enum?
Worked prefectly ty!
its literally an input vector that says "impulse" this way
it's generated automatically based on the users video card, so can't be a set enum
thanks!
that's interesting, which node generates it?
arguably it would be worth doing in cpp just so you could use FName
but eh
Hey folks, I'm trying to get an actor to move from point A to point B at a constant rate but capping out at max 1 second. I imagine one of these Vinterp To nodes could be helpful
parsestringintoarray... see.. you say things that like.. would of saved my life if i knew thats what blueprint wanted.. literally have a sticky note on my board that says "Shit Conrad Said 2 Remember"
yeah but im not always right
But its a direction.
Sometimes thats what we are struggling to see ya know
get that tunnel vision and forget to try the word cut when we keep thinking slice
yeah, i would've made videos but Matt Wadstein beat me to the idea and is better at it
ah yeah, dont worry, enough of those and it'll imprint
EXACTLY!
#blueprint message this one
@brazen merlin
it always makes me wonder where one's name or handle ends up accidentally in the world just based on stuff like this
lmfao
right
XD you said 20 minutes ago, but i think helping Ollie made time go by fast. sadly that's above my paygrade. hilariously enough i spawn 1000+ meshes and dont use instancing or anything (heresy i know) so that system is unknown to me.
I recall something that this kind of sounds like. I think the person trying to have "progress" or hp bars for foliage swapped it out for another actor on its first hit. They might have done something different though, it was a big system they had already and they knew more of it
yeah but you asked about this lol
I think we're talking about two separate parts
my part (with the strings) feeds the combobox
maybe, does look like you got it working
so that it can have the "x"
then what I asked is after, when I choose something in the combobox and apply it to the resolution node
yeah it worked perfectly, thank you!
oh i see, right because its already a string at that point
@green eagle This is the code and im trying to swap E and F with trigger inputs, which is in the player bp
and heres the trigger for good measure
lmao dammit. Yeah @gentle urchin turn me on to that concept which doesn't seem bad and my mind ran with the idea for a moment which came to a few ways that it could be very useful and used dynamically.
Only idea that I was avoiding was going into the backend but I also think I would have to boot up custom engine to make that change cause its a source file. double damn. They then mentioned something that made me really miss Houdini cause I thought they were talking about it as a replacement tool for the brush but I still dont have a license so I wouldnt be able to use the tool if i did make it..
Out of curiosity what is the Is Valid checking? Theere is also a couple "IsValid nodes" you can use too instead of the branch
ignore me i just saw
Basically checking if reference variable not returns nullptr
you need that box and the player to "get to know each other" biblically..
You want "playercapsule" to do an overlap
what we have here is a bp communcation. I think event dispatchers make the most sense here unless you'd prefer bp interfaces
he is pretty green getting into interfacing might be a steep rabbit adventure for them in the immediate moment.
uhh, it might be better for the trigger to know when it's been overlapped, but maybe you know something about this setup that i dont
think i went backwards...
one moment
@green eagle YES IT WORK
show us what you got
k lemme just set up amd's shite software]
my brain and hands not communicating
man i really dont wanna make that repo class
just make enough of an argument that you dont need hp for foliage
🤔 launch the foliage...
lmfao muwahahahah that would be funny
nah just Launch node being new to me
its character and lower, actors cant access it
need CMC
the file is too big 😦
push back, and stuff is such a common question or making a pawn non cmc jump
yeah not having jumping foilage in the year of our lord 2021... disgraceful
Oh I just wanted to see how you plugged up the code
oh god dam you guys
oh lmao
lmfao
@green eagle here
it probably should be improved upon but ehh it works
Is begin overlap just ageneral event or is it specific to the box trigger
Well that is using anytime the capsule itself overlaps something
begin overlap is tied to the capsule
indeed "something"
may want to check what is being overlapped as it could cause some issues down the line
I refer to my earlier suggestion: #blueprint message
k thats what I thought
How would I do that?
carefully
I have this pulley/block and tackle setup, and I'm using cable components between each fixture point (and my plan was to add a small mesh that appears to wrap around the inside wheel of each block), but I wondered, would there be a reliable way to do this without a cable? Stretching a cylinder mesh between the two points, maybe? I'm just concerned about the amount of cable components which will add up once I have 20-30 of these in the same ship.
The best answer lol
its gonna be the best information you ever learn
def
Trigger has overlap event, check OtherActor = Player Character, could be a cast i guess, set your is valid bool to allow input
The event dispatcher method:
make event dispatcher on player called "TriggerTouch" or something clever
on the Trigger, event begin play > get player character > cast to your player > bind event "Trigger Touch"
Trigger has overlap event, checks for player (other actor = player character), if true, call Trigger Touch which informs player
awww...
please read carefully
def lol, almost missed "on player"
Was really excited to see you walk someone through interfacing
oh i expect problems
its alright, im not a programmer 😂
but still man once you get the swing of interfacing it just changes your whole perspective on stuff
idk of any free tuts on it. Sure WTF Interfacing is a good one.
You make it sound philosophical lmao
its a long running joke... "a pro... grammar.. 0.0"
Like youtube search "wtf interfacing" Casting, event dispatching and function libraries in the future
a pro at grammar, of course!
Oh my god
Some reason it still doesnt open up nodes to the actually cpp data for me when i tell it too..
could of sworn you helped me fix that a month ago @brazen merlin
nah, i never work with cpp
double dam
Is this under the trigger box instance thats in the game?
the first solution (the non event dispatcher one) has its logic in the trigger bp
you say in game, so now i think this is level bp
again.... its in the bp
right... so this is level based, i guess not bp. Trigger is a misleading thing. It's a box collder that fires an overlap, but i despise using anything in level bp, so naturally im thinking this is a bp of its own
the spawning system is in its own bp if thats what you mean?
you can make one! make a new blueprint class, choose actor, give it a box collision, set collision to overlapAllDynamic
Oh ok
the spawning system looks like its in the character
Whats an imposter intended for and used for? Im not familiar with the application of them when doing shaders and the stuff im fiddling with useses them
i think those are pre-rendered 2d versions of a 3d model for rendered efficiency
not sure how in depth unreal gets with them, but i think they react to camera angles, if not completely then somewhat
lighting does change on them a bit i believe
@brazen merlin So I did what you suggested by making my own trigger and I see now why that makes more sense
great
it might get tricky, but now you can have many triggers than behave the same if you please
I think my end goal will be to have one trigger class that spawns and another that destroys the spawned actor
i suppose that sounds like two different actors/triggers
Yep thats what im thinking
Man coming back from other engines is weird cause you have to re-learn all the terminology
Still getting used to saying actor instead of game object lmao
well if it helps, there are objects too
objects are more abstract
they dont have a transform
actor class do
there's some other crap, but yeah
most cases you're working with actors
Is there a way to prevent ue4 from recompiling shaders every time you load a project? It seems once compiled you can move between maps and not recompile, but reloading the editor will make it do this compile again. It's only about 1200 compiles, but man that 1-2 minutes is annoying af.
Probably Derived Data Cache got wiped for whatever reason
Yeah i've been looking into that but can't seem to find any info on how to properly do anything about it.
I tried using a local ddc and that didn't make any noticible changes either.
kind of lame since it took like an hour to generate it.
is negating a vector the same as just multiplying it by -1?
like if i wanted the down vector of something
would i just take the up vector and negate it?
yes
aight thanks
I've got a school project I'm currently working on and I know this question is super basic but how do I change a static mesh to another mesh? I'm making blinds that start closed and when I press the E Key it changes to Blinds Open with no animations. Just a model change.
With the static mesh actor/component selected, change the static mesh in the details panel.
Sorry, I misread your question
Get the static mesh component, and use a node from it to set the mesh.
Okay, ill see if that works tomorrow. If not I'll reply to you if that's okay?
Yeah, sure.
Thanks
How can I make it so that I can walk through an object (no collision). This image is the object
you have three colliders that i can see - capsule collider, sphere collider, and the static mesh. Be sure to set collision for each
ty it works but how do I now activate it or change the preset from Nocollision to eg) pawn based on the character leaving the collision area of the sphere (Default it is turned off, character leaves collision area of the sphere it is turned on
bp node - SetCollisionEnabled
ty
I have set up an input for TAB. In editor it works fine but packaged, pressing TAB just never fires? any ideas?
I am trying to reference the mesh of a different blueprint (my character mesh) inside of my Bomb blueprint. How does one reference other meshes or collision capsules not inherent to a blueprint inside of it?
I set the object collision to ignore only pawn, I am trying to make it that my character is not initially affected by it andas you can see with the blueprints once this condition is true then the collision changes to enabled (Although I am not sure what enabled means in terms of the preset
The other issue is that I think my code is running once and I need it to be checked until the object is no more
I am trying to spawn a bomb inside of my character, and the collision effect to only take affect once my character leaves the collision area so that once i plant the bomb i can choose which direction to move but afterwards I am stuck until the bomb explodes
https://docs.unrealengine.com/4.27/en-US/InteractiveExperiences/Physics/Collision/Reference/ - scroll down to Collision Enabled section
getting component of an actor can be done through casting it to the specific class, usually finding that reference requires a little more logic, but GetPlayerCharacter satisfies player fetches. Cast this to your player class and you can then get all of its components.
there are some other SetCollision nodes to check out, such as SetCollisionObjectType. If you refer to the collision settings of the collider, those categories are named the same as the set nodes
Hey, thanks for the reply. I'm working on a system that lets you select items from a store (ie. themes or unique 'trinkets') checks if the player owns it. If they do, it's selected and implemented. If not, then it lets them buy it and adds it to what they own.
I decided to go with a Set for this because a Set doesn't allow duplicates. But I suppose just a normal array would work fine as well though. I did manage to get it to work though with a Set. Maybe I'm not understanding "immutable." I thought that I did, but now I'm second guessing. Because how it's set up right now is as described above: click the button -> Does the players Set contain this item? -> yes? Spawn actor/No? add item to players Set. Then when clicked again it will spawn the actor.
Sorry, yeah it was a custom engine if that makes a difference?
Yeah. I’m in bed though. When running custom builds you have to set it up. Should run through repo. Can’t think of it off the top of my head and I’m in bed. Remind me tomorrow(8hours) if you have no luck still I’ll dig into how my custom build data struct is managed. Sorry for the lack luster reply. Add custom ue4 in your troubleshooting searches. GLGN
any guesses on what the Return Value is applied to here? https://twitter.com/ozmant/status/1295690678144503808
I'm trying to get a similar leaning effect on a blueprint component as this https://twitter.com/ozmant/status/1295685805588054024
Anytime I prototype something new, I try to mess with procedural animations nowadays. Here's a cube with some leaning and hopping. Fall Guys inspired. #UE4 #gamedev https://t.co/Uy0BkeLUqu
126
1160
@iron wyvern doing some light googling about this Vector Spring Interp node, I'm going to give you a wild guess, but I never used this node before, so again this is just a guess.
It seems like Vector Spring Interp has some overshoot-like behavior that you wouldn't get from linear interpolation functions. My guess, based on the dude's Twitter videos, is he has a world-space head target location vector hovering above the box-pawn. Without the Vector Spring Interp, it would be absolutely fixed above the box, but thanks to the interp, it has some whiplash/overshoot motion.
And then somehow he's converting that 3D overshoot into a rotator for the box, and I'm not sure how he's doing that off the top of my head. Maybe you could get the X & Y difference between the interpolated target and box-pawn and derive some sort of rotation out of that. I'm sure you could experiment and figure something out.
Hi guys,
I am still new in unreal. I have animation with control rig, and I need to feed my control rig with position of ball for correct interaction.
How can I cast my ball location to my _AnimBP or what I am doing wrong? thanks for answer. marked input is where I am actually stucked at. and no nodes works for me
The marked area should be a reference to the AnimBP not the sphere @distant mural
And how can I get this reference?
@devout geyser Thanks man. Since my animBP is not referenced in world, or with mesh, this still doesnt works for me, but at least i know where to look.
Btw. Dont you know, how to get animation blueprint reference?
'Get Player Character' > get mesh > 'Get Anim Instance' then plug that in that reference
Just use an array and add unique
@delicate scroll Or a map
Hello guys i need help with this problem, nothing happens in game with either of them connected. I am new to Unreal engine so i cant think of a solution 🙂 Its an first person project and i wnated to gain ressources from the BP
Are you sure you actually have them connected?
Doesn't seem like it by the screenshot.
ye they were connected but i deleted and created them again so you could see which things i used in the screenshot
i connected on clicked to the branch and it didnt work and after that i connected e and that didnt work
i tought it would be more confusing when i connect them both to the branch :/
Are you doing this in Pawn?
as an actor bp
Aha. That could be the reason. Actors don't take player input by default.
Ohh oki doki i am gonna try that thanks 🙂
Maybe you are changing that variable too soon?
widget was created already
Looks like you create the widget and immediately set the variable right after? Maybe adding a little delay before setting the variable can fix your problem
sadly that didnt work either :/
Are you gonna try the suggestion?
nah
Kk
was related to add item
Thanks man 😊👍
np @distant mural
Hi Im new to unreal. I am trying to make a door open and close with a box collision. I followed this tutorial (https://www.youtube.com/watch?v=veD-eAIaIBI), but it doesn't work as it's suposed to. My door starts spinning like crazy when I walk in to the colission box. please someone help me!
Support me on Patreon: https://www.patreon.com/bartkamski
Join me on discord: https://discord.gg/DgUTZwm
Check my UE4 marketplace assets: https://unrealengine.com/marketplace/en-US/profile/Bartosz+Kamol+Kaminski
Here is link to PART 2 where I show how to make doors opening always opposite direction to the character: https://youtu.be/LZkDZef...
what was the BP node for camera swapping at the controller level?
Set View Target with Blend?
no no, that one swaps cameras between actors
Might be something else I forgot then
if you try to swap cameras without manipulating the controller camera POV, it will default inside the character
there was another manip but I forgot it...
Your problem will be in whatever you set for the open angle. You're probably updating the rotation to be so big that it loops back around.
Thx that worked a little. If I set it to somthing like 10, it opens correctly, but it doesn't close. Instead the door opens even more when I step out of the collision box
Your problem lies within your timeline and math to determine the door rotation. Runner duck debug it and you'll figure out where it screws up. Or just show a screenshot of your BP around that timeline and the timeline tracks themselves.
Thank you so much for helping me! I figured out a (not so clean/pretty) way to fix my problem
Set Control Rotation might be the one youre looking for
Anyone understands why replacing a render target texture with itself using "Draw Material to Render Target" clears the Render Target?
I expected it to not change at all
Hey can I get some help with blueprints? I'm trying to cast to a game instance blueprint and it works in one blueprint but not another? Idk why
Works here
Not here
Can't see stuff from the display photo.
Just a tip: 🪟 + Shift + S to take screenshot, and you can paste the image to Discord PC app or web browser client
Maybe because you used Cast Failed, while also still trying to use cast result.
I used the cast failed to check if it failed quickly
@formal wren you can't read a render Target in the same material being written to it
I was hoping it would work either way 😄 Is there an efficient way to create a temp copy of the render targets texture?
it doesnt do any of the commands after the cast when connected like the above image
Is your Game Instance class called coins?
Cause you're asking the Game Instance if it is coins, and that doesn't seem right
Weird
Mmmh this also doesnt work:
It works if I convert the RenderTarget.TextureTarget to a byte array before assigning it as TextureParameter
But that's incedibly slow and expensive
Is there a way to change the rate scale in a montage in 2 different montage sections?
Hi I have an annoying bug with particle, the scroll bar won't show me all the emitters present and I have to extend or strech the window to try to reach the ones on the far right, I'm on 4.26. Tried to submit a bug report but website indicated an error when I did so. I'm on 4.26, is there any workaround about that ?
I just used two render targets. Render the one, then copy blur to another to achieve my blur
You would render to one, then fade to another. Then copy back to the first if you wanted to
Holler if you figure out an efficient copy
I've got a school project I'm currently working on and I know this question is super basic but how do I change a static mesh to another mesh? I'm making blinds that start closed and when I press the E Key it changes to Blinds Open with no animations. Just a model change.
This is what I got right now
Does the event even run?
Drop a Print String node, see if the text appears when you press E
So Switching Between Open & Closed when E is pressed?
Just use a Flip Flop with the logic that you have
Or use a boolean with a branch
This works for my purpose:
@distant mirage Get mesh component, set static mesh on it.
@formal wren That's probably slow as shit but I'm interested.
dear lord
yeah I can't imagine getting a lot of performance out of that
render targets being what they are
Anyone tested the enhanced inputs?
I was experimenting and the triggers are not working as documented,
What is actuation thresold?
that's somewhat true
Do you know if there's a GPU-side fast copy that's easily attained?
The normal triggers like Released dont work and if you put actuation thresold above 1, more than half of them don't work
not on top of my head no. would require some advanced renderer work I believe
I would refer to #cpp and perhaps even GB specifically for this
if anyone's been around that particular block, it'd be them
If anyone with experience on enhanced input can give some insights on how to setup a button which can do different things on say hold and tap.
I managed to do it with normal input with gate and bools but , maybe we wont need them with enhanced inputs?
I don't think anyone's experienced with enhanced inputs lol, it's literally a new thing
but yes one of the problem they said to want to solve were input chords
but I know next to nothing of the system and haven't even had a chance
I thought it came out a year ago or so..?
I was looking through echo's bp and found out about it, then a couple 5-6 month tutorials on it so I decided to experiment on it
Hello. I created a binding to a text field. I want to set it to the amount retrieved by this function. But it's not updating the values. Any ideas?
Experiment not going well😂
It's really good for some of the stuff+ we can do our custom logic as well.
did you try to print the output from the function?
maybe the trade was not so good? 😩
bad jokes aside, debug it with breakpoints
you'll see the values and where it nulls out
hmm it's not being called
Thanks will give that a try
Oke the binding function as a whole isn't being called
Do I need to do something special with it?
going by the name it seems you've tried to have a binding before, that you perhaps then deleted the function of afterwards?
if so, go in and delete the bindings in the designer UI of UMG
what did you bind it to?
A text field
I mean where does the text field bind to?
To the amount of TradeGoods in it's inventory
But I put a print in the function itself and it's not even being called
are you sure this exists or is being changed?
yes
exists as in instance
sounds like the widget exists before the inventory does then
No, I create the widget later
inventory is initialized earlier
what should I see when I put in that print function?
is it on tick or something? or only when it changes?
those kinds of bindings are supposed to work per automatic
to me it sounds like the inventory doesn't exist
before the widget does
since it shows up the second time around
but I have no more information
Does anyone have an example of using a CoreRedirect for a UMAP?
Yeah I call another function
which I need to remove since I use the bindings now
it sets the right values on construct
Alright thanks for your help
I'll take a look at this tomorrow with a fresh mind
I think it should be a class redirect, right?
I have no idea of what those are, and I'm not sure they are to do with #blueprint ?
what is a blueprint asset?
I guess I will ask in different channel though 
I still have no idea what you're talking about?
Core Redirects is a feature of the engine, which allows heavy-handed remapping of various kinds of assets.
For example changing an Enum, or property name, or asset path location.
are you talking about redirectors?
Its used on load time to crawl all assets, and do what amounts to a binary find and replace on all assets.
I'm not talking about Redirectors, I'm talking about a feature called Core Redirects: https://docs.unrealengine.com/4.27/en-US/ProgrammingAndScripting/ProgrammingWithCPP/Assets/CoreRedirects/
Although the two are closely related.
I would like to add a Core Redirect for a UMAP which I've moved, from filepath Content/A/ to Content/A/B
/ProgrammingWithCPP/
I mean its an ini file. You can use it perfectly well inside of blueprint.
But like I said I will leave here
Seems most of my questions don't apply when they are even directly related to blueprint assets 
you're not exactly inside the blueprint graph doing this though are you? because then you could just show your code and be done with it
I mean I'm not here to argue about what this channel is about 🙂
I tend to think of Blueprint as encapsulating a lot of the in-engine modifications, but that's seemingly a point I'm continuously wrong about.
well depends on if you want an answer or if you want to post just for the sake of it. #blueprint I'm pretty sure refers just to what happens and what can be exposed directly through the blueprint graph, and not much else
anybody got an idea how i can find all references to my self defined enums in blueprints? i tried the searchbar already but cant figure it out
Did you try the reference viewer?
yes, but i need all the references in 1 blueprint
so every single variable, input, output etc thats using that 1 enum
the reference viewer only tells me what blueprints use it in general
Not sure how exactly it is called, but right clicking on the enum variable you have stored in your bp, by right clicking you get a list of all references
(solely in that single bp)
thanks, but not quite what i need
if you use the "find references" inside the blueprint graph, and click on the binoculars, they'll find global references in each function, variable etc.
yes, but this only finds the references that are called exactly the same, but i also need every input, output, whatever thats using this enum
This is one more place that blueprints suck ass. They're not great at exact property finding. One reason to very uniquely name each property if you use it's type a lot.
thats why we are currently in the process of converting to C++, but its a huge pain and im annoyed i didnt get my team to change earlier
Haha. Yeah. I had a string variable I had to do that with at one point in blueprint. 47 files. over 70 references. Really had no choice but to open each file and go through them. 🤷♂️
the search is really powerful but it cant do this?!
this is gonna be a bigger problem than i thought
The "Find In Blueprints" can find you everything in your project using the same name. But it's up to you to go through them.
well the bulk edit matrix exists, but tbh it's not easy to use
All(ObjectClass=<class>)
https://docs.unrealengine.com/4.27/en-US/ProgrammingAndScripting/Blueprints/Search/
don't know whether this has the answer or not, but it's worth looking into imo 😄
this works for enums and scructs too
i just found that and figured it out, thanks though
@sharp rapids you got an idea how i can remove reroute nodes from the results?
Unfortunately, no
Is there a way to switch to "Input Mode Game And UI" without losing the ability to move your camera with it (without clicking)?
Without "Game and UI" my widget doesn't register mouse scrolling but when I switch to it then my camera stops responding to mouse movements.
.umap is not a Blueprint asset, although I can perhaps see the argument that the package contains a BP asset alongside the actual level content.
If there is syntax to filter by type (eg, function node) or class, perhaps you can filter by -K2Node_Knot
No clue if this is actually a valid operation
thanks! gonna try that
Actually I do
Nodes(Name!=Reroute AND Pins(PinCategory=bool))
This is the syntax which will find all the pins of type bool minus any reroute pins
Replace bool with your enum name 🙂
Any luck? Think partner got me sick so I’m dragging ass today. Didn’t sleep great started obsessing about the old custom builds and source coding crap I use to fluck with.. slowly getting to the computer
I'm working from a first person template and want to implement a swap to the third person view. So far it worked fine, I add a spring arm and I can lerp from up close to far back.
My issue is that once in 3P view, the actor doesn't rotate following movement direction. I tried to force it but it just doesn't want to.
I compared with 3P template but I cannot pin point what is the difference.
check the springarm camera settings
Set camera to always be driven by Control Rotation. Set Capsule to be driven by Control Rotation when 1pp but oriented to movement in 3pp
That's a setting in the CMC
i can use "Use controller rotation yaw" but it rotates even when idle, which i don't want
checking
controller looks fine
How exactly do you search a struct array for a single variable?
@zealous moth can you confirm that your desired behavior is that capsule/charmesh rotation is driven by Control Rotation when in 1pp but oriented to movement in 3pp?
Iterate over it until you find it.
in 1pp it works as intended with orient rota to movement always ticked
Dafuq. So you have Orient rotation to movement AND use control yaw both on?
how do you mean? a variable inside of a struct?
hell yeah!
So use control yaw probably dominates, just turn that off when you go 3pp
maybe my setup is not correct...
Show the rotation setup for your spring arm, capsule, and CMC
general:
character
spring
also spring
camera
cmc
@faint pasture what happens is that the character will retain the last known rotation and go that direction rather than adjust to the new camera
angle
uh so you're saying it orients to your aim input when in 1pp but you don't have Use Controller Rotation yaw checked?
yup
oh snap it doesnt anymore
ok, yeah had to check the use controller rotation yaw
however, in 3pp when not moving, it will also rotate, which is bothersome
Im following a tutorial but this thing does not seem to exist in the version im using 🤔
trying to figure out a way to have that smooth rotation only when in 3pp but cannot
That's an interface message. You need to create an interface, create a function within it and then the receiver has to have it as a component in the defaults to trigger the resulting event.
@zealous mothThis works for me
Use Controller Desired Rotation is overridden by Orient Rotation to Movement if it's enabled
That's how you switch from Control Rotation driving the yaw to Movement doing it
yeah, like that. im struggline to search for it, its an inventory stacking system, if there's duplicates they merge into one, and the amount variable inside it goes up by one.
ok, now it works. Thank you so much!
typically in cpp you'd create your own equals node for a struct like that. I'd say have your inventory create an equals function specifically for that struct
then you can use that to compare if two structs are identical
Is it possible to generate random RGB values in the Material editor an use them as a material color?
i'm using the same struct for everything, the struct contains the world location too, so i cant use an equals because i have a unique transform for each one that determines where it goes in the workd on loadign a save file.
if you create your own equals node you get to decide what you want to use to equal it
possibly?
just have two of the same struct parameters, have a bool return value, break the structs apart and compare what you want/need
What does your struct look like
If your struct contains the stack number, just use a map of Names to Structs then update the count
Name = Corn, get the struct, add 1 to the count
ok! i'll do that!
you could do an equals function that does FirstStruct.ID == OtherStruct.ID && FirstStruct.Name == OtherStruct.Name
Maps are great. Learn them and you'll see all sorts of possibilities.
I'm wondering something. How would I make something that's similar to how the InputActions work (where it doesn't have to be hooked up to anything beforehand), but have it derive from something like event tick, for a system that can poll through my own input system?
Just hooking the logic up to the event tick just seems very messy and not that modular.
What are you trying to do that you can't do with input events?
Basically, I'd like to do something like this which has it's own event tick built-in that let's me call stuff that querys SteamInput if an input action is pressed.
I'm trying to implement SteamInput in my project (properly, at least in the idea that it's not riding off XInput), and I'd need to find a way to interface with my gameplay logic.
yeah but my issue is that there is rotation added/set on the character even at rest without movement. I was hoping that when you rotate the camera around, like in the 3p template, and only when the W key is pressed, that the character rotates towards the direction
I already got it to where it will tell me what controllers are connected (as I have that hooked up to the game instance right now, as that's seemingly the lowest level way that I can currently initialize it while having it consistent across level loads).
I just need to implement some systems for polling inputs and analog stuff, while grabbing my controller handles from the game instance.
Then you're doing something different, that should not be happening.
The control rotation should only be driving the spring arm rotation, and in first person, it is also used by the character movement component to drive direction. You are doing something else if moving your camera around in third person rotates the actual actor
Hello hello,
is there any way to read (from Event AnyDamage) the not only the causer (that works for me) but the player taking damage or dying?
I am using a pretty simple "Server_KillPlayer" function to kill a player but there is no instigator - can provide screenshots if needed.
Trying to use the information to have a killfeed
The receiver knows who itself is right?
When the receiver dies, it tells something that it died and who killed it
If there is no instigator then just consider it the environment, like falling off a ledge in OverWatch
I'm thinking I may have to find a way to put together a plugin that will basically create new FKeys based on a config that will bind the FKeys to certain SteamInput FGD actions, and do it that way for the tightest engine integration.
At least that is similar to how other input plugins function.
typically you'd leave it as world or blank, or as a self kill
Hello, is there a better way to add constraints to the key pressed function? I'm trying to invert the direction of my character but both the w and s key have the same function rather than the character facing forwards and s would invert the direction an vice versa.
@faint pasture @odd ember this is the dying function, it just reads the health of a character and kills it - in the "dealing damage" part of the blueprint its dealing damage until it detects that a player has 0 health and runs the kill-event. i can screenshot the damage part aswell, its super messy tho
I cant figure out where to read what entity died for the killfeed
instead of the DoOnce use IsValid. Ideally you don't need to do it more than once if that's correct
but I think how you have the damage happen is the crucial part here
there probably are. you can handle these cases mostly by understanding how movement happens in relation to camera
I'm following a tutorial. He has this (interfaces) how do I get that? what did I miss?
that's... an interface function
@odd ember this is the damage-part until the server kill player is being called
Advanced Input Plugin is coming with UE5 I think
wouldn't hurt to clean that up a bit
I thought Enhanced Input was with 4.26? Unless there's an entirely new system I don't know about.
@mild flare Why not do damage, check if hp<0, then call Kill with a parameter of the actor that's doing the dying.
it is there since 4.26
I suppose documentation wasn't there when it came? It is now tho
Or just have it all in 1 place like we do. HP component just checks HP after DMG and calls Kill on self.
route damage through a health component and ensure that dying only happens if health < 0
I just started today, so I have no idea what that means 😬
in your screenshot there's a list of overrideables next to the function plus sign. if you hover over that you'll see the list of functions you can override
Server side stuff doesn't need to be seperate systems or objects. You can have the server sided version of the HP component do everything, even notifying GameState of the kill
also please clean up your BPs 🙏
Unless there's something here, I don't know if that's what I'm looking for. Since there is no proper implementation of SteamInput in Unreal Engine, I'm trying to figure out how to bind individual actions to FKeys and Axis events, make those configurable from a plugin settings panel, and then allow those to be called like normal inputs.
@odd ember @faint pasture the dying is fine, adriel (i guess) // maybe i am not understanding you correctly rn. it is reading the hp and killing/respawning - that is all fine. problem for me is that i want to read if someone got killed by a player and basically display both names "player X killed player Y" reading player x is working perfectly fine for me but getting the name of the killed player linked to the killer does not make sense in my mind
Either use centralized managers or don't. I like them because I've read too many ECS books but try not to scatter your logic all over the place.
Input Actions in Enhanced Input aren't really Blueprints in the sense that I can poll input in the sense that I need to.
Both of those are available in the damage event chain, forward it from there to the dying event chain
Give an example input setup you need
Like are you trying to do combos or in-game routable input like Kerbal space program or what?
@faint pasture thats the rest of the chain, the very end is just printing strings to debug and figure out what info i get
First off you should just have one rpc, let the server side of the RPC do all the scoring etc.
Well, for starters, I'm trying to poll for inputs from any of the input bindings I have in my ActionsManifest file for SteamInput, and I'd ideally like to find a way to hook that into FKeys and InputAxis bindings which I then can call like you would with a regular UE4 input.
I'm thinking I would need to put together a plugin settings menu for configuring these actions individually, and creating a new binding would make a new FKey that can be added to InputActions.
That might be a poor way of explaining things, but from what I see, the RawInput plugin (as an example) makes a set of new FKeys that can be added, but due to the action based way that I'm setting up, I'd need to be able to add new FKeys from inside of the editor that calls to see if the respective input is being pressed.
@faint pasture makes sense, will do in the cleanup process - any idea how i can read and "combine" the killer and the killed?
Just make parameters for your RPC. But you really shouldn't be rpcing whether or not something died, just RPC the hits and let the server decide if something died
Otherwise a client could just kill anything
true - will try that, thank you!
will do an update or ask further questions maybe 😛
Typically for client side hit detection, all you RPC is stuff like "I just shot that guy and it hit at that location" and the server can do some anticheat checks and proceed.
thank you
Or you can move the RPC back to "I just shot my gun in this direction"
Or even back to "My inputs are this x x x x"
But the further back you get the less responsive things are and the tougher reconciling the local view to the server you will be if you want things responsive. It all depends on your design. If you're making Civilization, you can just pass over inputs. You can't quite do that if you are making Counter-Strike
Right now you're saying "I killed that guy" which is a bit ripe for abuse IMO
i understand
Hi all, I want to knock back a character a variable number of units, I want it to go at a minimum speed, scaling up so that the character will always arrive within 1 second. Does anyone have any suggestions on how I could implement this?
Most games do "I just hit this guy with this attack" and the server does some sanity checks and accepts it.
Do you have a generic knock back implemented yet?
No... I think random values are limited in the material graph and they're evaluated per pixel so you can't generate a color that is shared to all pixels, unless it's some pseudo random thing derived from a shared value like object world position.
The practical approaches involve BP. Either make a color parameter if one instance of a material needs a color, or make a Parameter Collection if you need a lot of materials to share a color (e.g. a team color). And then set those parameter values with BP.
I think I wrote down a better explanation for the kind of specification that I'm particularly trying to wrap my head around.
I was using launch character, and I realized that was bad, so now I have to redo it.
I basically want to create a system where I can pass in the knockback force and know that the character will only be knocked back for a max of 1 second. I tried some whack timeline vinterp stuff but the nodes kinda unclear to me how it functions (outside of the obvious start and end locations and time) Using vinterp and all that got me a character who was knocked back for 1 second, but if i barely hit them, i don't want them knocked for the full second.
I have a question about the difference between an Event Dispatcher and an Interface...
In my project, I am using an EventDispatcher to allow the player to use whatever weapon is currently equipped (seen in this capture).
When I switch to an Interface (event node slightly to the left), the weapon stops working.
All other weapons work whether an EventDispatcher or an Interface is used. This weapon is the only one that doesn't work with an Interface.
You'd need to message the interface like you do with the dispatchercall ,
But now with context
E.g. a reciever reference
The dispatcher allows you to notify whoever cares to listen for it
In such setup id say dispatcher from player to gun would be the way to go? But then you'd need some return method. Alternatively set your weapons up in hieriarchy based on a master weapon class. No interface/delegate needed
Force isn't displacement or velocity.
force * direction would get me velocity though right?
This is how the Interface is set up on the PlayerBP
This works for all other weapons.
Do some experiments to see if force is treated as a velocity by the CMC but force is usually an acceleration.
Another question:
Can you read how long a string is? like i know i can use Get Substring to set the maximum lenght of characters in a string, but I want to detect if it is longer than lets say 8 characters, then i want the string to be followed up with a "..." which i can do i BuildString - so how do i read the length of a string?
Is there a fundamental difference between an Interface and an EventDispatcher? My understanding was that they functionally worked the same, but the set up was just a bit different.
Yes. A dispatcher is like a relay for messages. An interface is like a shared language.
is that what launch character's launch velocity does?
Velocity and force are not the same thing.
Hello everyone, I have a very difficult task, I need to create instances on an object using the material how can I do this. I really need your help
Rephrase that. Doesn't make any sense.
force * direction would get me velocity though right?
No. Not in physics. CMC may work differently
i want to compare grass to static mesh
@orchid veldt ty!
If I pass direction vector * force into launch character's launch velocity, the character is moved in the direction i want by some amount of force that is not constant. Is that just a single frame of acceleration then?
A launch is a one-off event. Adding force is continuous, has to be called on tick or a timeline. What you are probably looking for is root motion
I put some assets inside a BluePrint, but I noticed that the LOD doesn't change for those assets. I'm checking it using the LOD Debug View. Is it expected?
That's not really any better. Show a picture or something of what you are trying to do.
Do the assets have LODs?
Yup, if I place the raw mesh on the level, the LOD changes
to make the material create a hairy ball )
I guess I shouldn't have used the word force. I want to apply a single instance of a knockback effect once to a character and ensure that regardless of the knockback effect's potency, that the character arrives in a max of 1 second, but could arrive in less than a second.
You can just do math to calculate the velocity but that'll go out the window if they aren't knocked up in the air. You want root motion or some other mode most likely. Ground friction will throw you off. Just look up how ppl have done dashes
Compare throwing something through the air versus sliding it across the ground
Most people use launch character. I was planning on disabling friction while they're knocked back and re-enabling it upon arrival. That worked so far. Also it's an MP project so I can't use root motion.
or I can add a slight addition to the upwards velocity to ensure they're not like scraping across the ground
Test it with lag. Without using gas you have to bust C++ open to even get a Sprint working well in multiplayer, how do you plan on making this sync up?
I plan on dealing with that when I get to it. If I don't have the feature functioning at all, then considerations for lag are moot
hmm I hate/love widgets - can't figure out to fix this error. or does this question belong in #umg ?
All I can say is "accessed none" means the data isn't present
In your "player controller ref" node @mild flare
Your target doesn't have that data. That's all the error means.
hmm i tried something here and it didnt work... cant fix it.
I want the multicast be "filled" from the server and send to every other player - in game it works, but still there is that error message
so the player contrl. ref (which is getting the errors) is working, what else could cause this then?
how do i add SDL to unreal C++?
@odd ember @tight schooner @faint pasture thanks alot for the help! Killfeed is working thanks to your help! hope you dont mind me @ you
not sure how much I actually did help but good work
(I didnt know where to post ^^) For some reason, I have a second gun on my back and I cannot remove it. It does not move, as if it is attached to a T-shaped skeleton, I didn't add it ANYWHERE In the BP. It began when I was adding something to the AR_Child BP https://gyazo.com/6db88a7ee07ed0b9e4142b331f9169dd, https://gyazo.com/b50687109197b8f36db5cb8824828335, https://gyazo.com/a09c95c8e2a3da87667381729a666330
I'm trying to get my plane_gun_controls blueprint to reference those two particle systems "LeftGunSystem" and "RightGunSystem" but it won't let me set the reference to them in the details window.
How do I get those references into the "plane_gun_controls" blueprint if it wont let me select them here?
you... can't do it that way. you have to hook it up through the graph
on begin play
Real quick, does anyone know what the default action mappings are for Teleport Right and left? seems like my standard project missed the inputs. For VR
🤔
I'm not even sure what those would do since most VR games using teleport controls just... teleport
they don't teleport left or right
Unless that's teleport using left controller and teleport using right controller separately for some reason
Yeah, I guess when we start a default, VR template, it does not auto fill those inputs which is weird
Hello , i have an Blueprint which add multiple HISMs Components for different Meshes. The Instances are generated with an Custom Event which can called in Editor. Everything works fine, but move the Actor the instances are vanishing and i have to hit the Custom Event. Problem here is that i want a generated House and then move it to the right place...
Ok so I am trying to use beginplay now and this is the way I thought to do it. But there doesn't seem to be any "get components" or "get components<type>" node to use. How am I supposed to get info about sibling components?
nevermind i was misspelling children when searching for nodes lol
Maybe an impromptu fix is to use a public (instance editable) transform array variable to create the HISMC instances in a construction script, and then all your editor-only function does is set that variable, and the construction script takes care of the rest.
When you drag an actor, it runs the construction script again and it seems like your instances aren't surviving the jump
So maybe if the data lived in a public variable, it would survive
Trying to make an event dispatcher where when a trigger is overlapped by the player, it casts to the event dispatcher which is used as an event. What am i doing wrong now?
forgot about this
Idk how else to reference
what do you want to reference
a child actor component is not a reference, it is an actual actor
Huh
So i want to reference the player character
The only way I could think of was dragging and dropping in
that's not how this works
references are stored in variables
components are attachments with their own systemic logic
oh ok
bury it deep in the desert
he'll swim with the fishies
next to the thousands of ET game copies
yes
so you want some sort of overlap right
yep
so when the player overlaps with a trigger (which is its own component) it spawns a cube for now on the player
the problem is
that's not non technical
that's your own solution to your own problem
I need to understand what you intend to do
not what you're trying to do
ok, trigger spawns box as child of player when player walks into it
again, this doesn't explain anything non technical. what is the box for, what arey ou trying to do with it
is this an assignment?
ok
box is purely visual
use a collision component like a box or sphere collision (sphere is cheapest)
once you've added it to the trigger actor
right click on it > add event > OnComponentBeginOverlap
@tight schooner 🤦♂️ i could slab myself.... have overseen an if state... thanks for your help, else hadn't seen it.
Other Actor pin > cast to <Player Character> object
Then use an event dispatcher to activate the code on the player blueprint?
you dont need an event dispatcher
you have the reference from there
you can call functions directly from the player reference
Announce Post: https://forums.unrealengine.com/showthread.php?101051
This Training Stream takes a look at Blueprint Communication. We find that Unreal Developers of all levels can sometimes struggle through the concepts behind moving data between objects. So in this video we'll take a look at the different ways to make Blueprints talk to one an...
watch this
it'll explain everything
Ok will do
I called this about 149 times in the editor and now I have a bunch of invisible particle emitters that won't go away. They aren't visible in the world outliner and I can't find them in the details window when I select the particle system components this was called on. Where did they go and how do I delete them?
deleting the particle system component this was called on does not delete them either so I'm lost.
how is this called?
it was called every frame just to see what happened
but i reloaded the level and they went away. it was an engine bug i guess.
im going insane
you can set the pooling method and see if it helps