#blueprint
1 messages · Page 139 of 1
how wdym
I need to cast to it and then get class defaults?
thats really impractical, there needs to be a better way
I’d assume you need an instance of it to access its insides, but idk much about inventory
well then I have to find another way
cause thats too expensive
Item definitions using dataAssets, which has the static data for them ?
sorta like Lyra
you asking me or
suggesting
oh
i did them using structures so i would have to rework the entire inventory
Sounds worth it if you cant afford the lookup of each CDO in the list
how expensive is looking each class up?
if theres lets say 100 classes
depends on the size of the class
what it contains, which assets it references etc etc
ahhh gonna waste another 10 days doing the inventory
you can usually get some hint using the SizeMap
how do i open that window
right click the asset
its 200 mb because of the mesh inside
does the mesh have to load when doing the lookup
imma just rework items to be data assets
still wanna soft ref those assets
looks like worth it over a longer period of time
but yes most likely worth it regardless 🙂
swapping to softrefs is usually pretty easy tho
how do i do that
In this example i simply set the default mesh to null
and load the mesh from a soft-ref on beginplay
oh i see
Adding to what squize said, you'll probably need a good class hierarchy as well. The idea is you would cast to lower level classes that don't have the heavy assets. (Unless you're using soft references you don't need to cast to)
well hello again after 1 year lol
hi!
Did anyone know why my Progress bar Percent isn't calling the function even if it bind?
What makes you think it's not being called?
i put a print string into it
Show the function you've bound.
There's no reason it wouldn't be called assuming the widget is being displayed. Try removing the binding and rebind it. Could just be an engine glitch.
I tryed everything
remove, add, make it directly from C++ side, bind with Blueprint function, reboot IDE, reboot pc xD
that why i'm asking
This one is working fine for the progress bar visibility
Function is exposed from C++ side too
What's up gang I've got a blueprint question I posted on Reddit, thought I'd drop it here in case anyone has any insight - BIG THANKS!! https://www.reddit.com/r/UnrealEngine5/comments/1c0y719/help_with_a_create_your_own_adventure_game_using/
Either the widget is set to not tick, or it or a parent is collapsed, or you have made a manual call to set that value, which will remove the ticked binding.
Hi, im running this on a background thread but it doesnt get past this node. then when i close the PIE it crashes my engine
is there a way to fix this?
Need to clean up the thread. But that said, what exactly are you doing with this that is costing so much that you need to thread it? O.o
Okay I figured out it does get past it, but it crashes regardless even when I clean up the thread
Using that node to create PCG landscapes based on a seed
why are you using collapsed, these are full widgets right ? why not remove from parent ?
On end play im canceling the task if its still working
There's a plugin that sort of does that.. uhh.. Sec, I can't remember the name anymore. Found it a week or so ago.
this is the one im currently using
I will try remove from parent! Thank you!
I meant an actual landscape generator. Had a lot of async stuff built in. Looked decent. I can't find it again atm though, but I'll keep it in mind. I was trying to find something to replace the engine's default landscape without quite going as far as voxels.
Just finished doing my line trace and now the crosshair is centered to about as perfect as itll get. Now I need to fix my projectile because it flies further off to the bottom right.
To reiterate, instead of the projectil aiming in the same direction as the camera is aiming, have it aim at the POINT the camera trace hits.
at infinite distance those are the same point
the closer you go, the more different the directions are
every other binding property work, only percent doesn,t work
is this how you would implement this?
not sure what channel this should go into but does anyone have any ideas on why a leaderboard widget would work fine in both viewport and standalone, but when packaging via shipping or debug the header for the leaderboard shows but the children are never added to the widget
Do you have anything setting it manually in the graph?
What do you mean^
?
I done almost everything in C++, I use WidgetBinding and call it directly to a bind function into the blueprint (avoid event tick update)
Okai i figure out the trouble
At everytime the UI update, the UI it's startin over and over, so the fill percent function I use on the start start again and it fill the percent at 100%
It was C++ error,
This is what I have so far. This shoots the bullet from my eyes , I am struggling to understand how to have it aim at the point the camera trace hits
Issues picking up objects
why are you getting actor eyes view point
just get direction from Muzzle to AimPoint
AimPoint being the point you are trying to hit
I made progress it looks like Event OnPostLogin isnt being called in the packaged versions of the game
Do I need to store the location of the line trace point somehow and have my arrow(muzzle) go to the locaion?
Yeah I'd store it in Character and send it to gun or have gun fetch it.
Yea idk I feel crazy at this point print statments indicated the Even OnLogout is triggering but Event OnPostLogin doesnt trigger in packaged versions so the widget is never build, Ill cashapp somone $10 if they help me solve it
if you're running it multiplayer, Game Mode only exists on the server, so OnPostLogin will only ever fire on the server itself.
@surreal peak are these threads gonna disappear on their own after a while so they don’t clutter the channel list?
can't you remove them from your list on your own?
"unfollow" I think it is
they're set to hide after 3 days
we might want to change the default length threads are autoset to hidden
maybe an hour is better, it's not like it locks the thread or deletes it
Where should I put that call, gamestate?
hey, I have an AI enemy, yet when it approaches/touches the player, sometime it just gets launched away, also sometime it just stops moving and doing anything at all, any ideas to fix these would be greatly appreciated.
So I managed to connect my rooms for a dungeon generator, but I currently just connect them from start to next room in a straight line. How could I use something like MaxCorridorSteps to have 90 degree turns? The picture attached better illustrates what I want
I think I would do Distance / MaxCorridorSteps right? Then choose which way to turn 90 degrees to get to Room B
im asking for like a general algorithm for this nothing too specific
this is what I ended up doing. I just spawn the bullet on the trace location when I left click, so I basically have hitscan? I am guessing im only couple of steps away from sending my projectile to the trace location but I am very satisfied with these results and I appreciate the guidance! (I might be back for projectiles lol)
in animation blueprint im getting "weapon stance" from the pawn owner and promoting it to a variable. problem is, it updates in event graph but in anim graph it'll remain as what it started as
whys it do this
Can you show how you're setting the value in your anim blueprint including the event used to set the value, and how you're utilizing it in your anim graph?
yea 1 min
It depends on what you're actually attempting to do. If you just want to know when a player is joining into the game, PlayerState's begin play should work for everyone.
so I'm coding a tree system for attack combos in c++ (while making it possible to design combos in blueprint) but am unsure how to integrate it with the animation blueprint/get the correct animations to play. Honestly animation blueprint in general is something I'm learning. not sure whether to put this message in cpp or blueprint channel since it sort of covers both things.
in the transition rule i have a watch for weapon stance, and it does not update. but the watch in event graph does update properly
The Blueprint Initialize Animation is only executed once. You want to use "Blueprint Update Animation" (or something like it... can't remember the exact name) event to read the value and set it in your anim bp.
wait i think i know why
pawn owner is a reference variable but the weapon stance is just a copy
If you set a value only on "Blueprint Initialize Animation" what you're doing is reading the value and setting it ONCE at the time when the Animation Blueprint starts.
If you set that same value on "Blueprint Update Animation", then it'll be updated every frame which is what you want if the state of the value changes over time so that it can manipulate your anim graph.
i could also just read directly from pawn owner right
You'll have to do some tuning but I'd have a Max and Min corridor steps
The problem with manhattan distance is there are many paths with the same cost
Right, min would just be 1 and max let's say 3
so either 1 turn, 2, or 3 turns
so far i just have this
If you mean within your anim graph, I wouldn't. If I remember right, the anim graph can use a different thread but if you include direct blueprint logic in there, then it needs to use the game thread which can impact performance.
It's best to read from the pawn owner in the Blueprint Update Animation event, and store the value within the AnimBP, much like you're doing already, then utilizing that variable in your Anim Graph.
I'd do the pathing algorithm like this:
If corridor too long, turn
If offset in the direction I'm going is < other offset, turn
otherwise, go forward
it'll be hard to make them not look samey
To make them not look samey you can maybe have the 2 end points, and do 1 corridor at a time between them, aiming at where the other one currently is
im more or less okay with that, because i'll have a random chance on the mesh to make them "seem" procedural for replayability
and have a random range on max corridor length per corridor
random chance for a special trait i mean
Perhaps you can help me here, I'm trying to rotate the path by 90 degree increments if the path isn't aligned wtih a cardinal direction. I'm unsure if this is right
What is Target?
if that's the location then that's no good
yea it's room b lol
I'd suggest making it more discrete
make a direction variable
and just rotate it left and right around 0,0,1
assuming you're in 2d only
no cross product or anything?
why, that cross product will always be 0,0,something
from get unit direction? so i get the direction from corridor path to target
Just have one.
vector TheDirectionThePathIsCurrentlyGoing
presumably it's initialized to AwayFromTheRoomYou'reLeaving
Okay gotcha
would this be after i checked if "CorridorPath" is aligned or not
i see
and i do that in a for loop, with the last index being the max steps?
I'd do it in a while loop, while not at destination
oh so like bfs
but maybe start with a step limit
okay
Entry
if There
Done
Move
UpdateDirection
how should i determine how much to move? perhaps by like, PercentageOfDistanceToTarget
I probably should have an actual grid, but currently it's like a pseudo grid that I use a "TileSize" to snap stuff onto
TileSize is a float of 400 units
so each tile is 400 units width and length
so the issue here is drawing a debug line, I guess I can call Draw Debug Line at the end of UpdateDirection
or before
how should I update the direction? do some min max math to determine the new angle?
however you want
uh
I mean that's up to you, I'd get it working with min corridor length for now
yea thats what I have atm
now
That doesn't make a whole lot of sense
im unsure if that's how I calculate a new position for current path direction
It'll either be what it is, or left 90 degrees, or right 90 degrees, right?
so check if offset to target is more left, ahead, or right
dot product is an easy way to do it
i tried pushing the current path direction a certain amount of the corridor distance
a direction shouldn't be longer or shorter than 1
dot product of target and current direction?
offset from where you are to where you're going
so current path direction and target
direction isn't where you are
yea i need a pos variable whoops
direction will always either be 1,0,0 -1,0,0 0,1,0 or 0,-1,0
Offset = Target - WhereYouAre
use a delay loop for now when prototyping so you can see it moving over time
cant use delay in while
just so you can draw debug points and lines and see it moving across the map
can you do a delay in a for each?
why are you for eaching here?
just get one of them to do it
make 1 path work before getting all paths on the level to work
for each room i am connecting the currom room Room A to the next room Room B by getting their DungeonRoomComponent and their ConnectedRooms actor array
currom
while
just do the first one for now
okay i adjusted to only do that
so currently i already spawn in all the different types of rooms at random positions
ill make like a debug thing for just two rooms for now to implement the corridor pathfinding function
Hello, I'm looking for a way to display the list of playback formats supported by an external capture device using nodes in blueprint or C++. In the latter, I've seen something like "MediaPlayer->GetMediaSource();" and I haven't found much clearer information on this.
Using nodes in blueprint, I've managed, using mplayer, to prepare a video for playback and then change the playback format, and I can also know what format the video has assigned, but I haven't been able to find a way to retrieve the list of formats supported by the selected capture card to create an interface (widget) and the user can select the format.
Does anyone have any ideas?
Thanks.
okay I set it up so it spawns only two dungeon rooms that are marked as "to be connected"
okay im considering remaking this entire system in C++
not only do I think it'll keep this code a lot cleaner, but blueprints don't have an inherint 2d array outline
Someone knows ?
You could just use one big array as a 2d one
Just make some wrappers for it and you're good to go
I have a third-person base map and I'm trying to make a mouse cursor appear on a widget. The system doesn't do this.
what am I missing?
So if the array has 50 elements,
Index 0 = [0,0]
Index 51 = [0,1]
just make a struct and some functions to convert xy coords to index
alrighty, while this setup stabilizes the mouse movement
it takes away the gamepad functionality
and if I use the action values from the enhanced input
looking with the gamepad may look ok
but with the mouse it runs really bad if you look around too fast
Components under DefaultSceneRoot are being set to world origin rather than the positions they're supposed to be relative to the root in the bp (there's no other scripts in this bp that should be moving around components)
It seems the placed actor's heirarchy is getting messed up somehow
How is epic calling a varible like this in BP?
So it only goes on jif it is valid, without having to place all the is valid nodes and such.
I tried clicking on it, but I can't see anything special, but also not find it.
right click a regular reference node
or isvalid*
convert to Validated Get
One or the other, cant recall
The first one :P
Makes sense 😛
After I run a simulation I want save the relative transform to a variable I can use ells where. How do I copy the data in this array and use it latter?
I have an Actor Action Utility function that search every Actor of my scene, check if they're the ground and if so, change their Collision Preset to a custom Ground preset.
- It does search and get the actors I need.
- It does succesfully change their collisions preset to Ground
The issue is, even if the preset is changed, the "collisions" themselves didn't, meaning that when I drop an item that should collide with ground, it goes right through.
However, if I change by hand the collision of one of those actors to Ground, then the item do collide as it should.
Details of my ground actor show me their (and the Static Mesh Component inside them) preset collision did change to ground when I use my function, even when I start simulating, I can see those value didn't change. I can also notify that, once I close and restart the engine, the changes aren't retain, even if I explicitly save the level, by hand or via the function.
I'm wondering, what could be the issue? Do I have to go through a specific process once the function is fired to validate those changes?
Am I accessing the wrong level or something?
https://cdn.discordapp.com/attachments/966517078834151484/1227893008175857704/image.png?ex=662a0f7a&is=66179a7a&hm=5872a1ae70d77f917026b1ba5ec75af708be652eb1e56b192efa6fada5b36a46&
probably a stupid question but I cannot figure this out. How can I make a Launch character target a specific area to launch to or actor? I am making an enemy that will jump at the player but can't figure out how to make his "dodge" go towards the player instead of a specific direction
I tried getting forward Vectors and player references but to no success
The effect I am going for is to either have the enemy dodge side to side based on where the player is facing or push the player in the direction the enemy is facing
#multiplayer message Could you take a look at this impossible problem please ? 👀 Nobody until now suceed solving it 😄
Guess you're still pounding your head on this instead of starting over in anew project to see when it breaks
You can get the right vector of the target to go left or right and multiply by the force.
As for moving towards an enemy, get the look at direction from target to the enemy, get x vector and multiply by force.
Thanks
how do I make a double jump and wall jump for 3d platformer in unreal?
Doublejump comes with cmc
Just enable it in config
Maxjumpcount
You should scale your key inputs in the context mapping for each key. Also if you click on the arrow at the bottom of the node, you can use TriggeredSeconds as a deltatime.
@maiden wadi i have it figured out by adding modifiers in the context input (forgot how it was called)
Scalar, scale by delta time and smooth fixed the issue
So now the mouse axis respond properly to fast mouse movement
i'm creating a new project but would like to still have a solution for that project while I'm setting up the new project 😄
anyone here had luck being able to use gameplay tags from plugin or mods ?
Blueprint Runtime Error: "Accessed None trying to read property K2Node_Event_Target_Actor". Node: Set TargetRotation Graph: EventGraph Function: Execute Ubergraph Dynamic Camera Blueprint: DynamicCamera
Blueprint Runtime Error: "Accessed None trying to read property UnitTarget". Node: Return Node Graph: GetRangePosition Function: Get Range Position Blueprint: CombatComponent
Blueprint Runtime Error: "Accessed None trying to read property UnitTarget". Node: SpawnActor Graph: EventGraph Function: Execute Ubergraph Combat Component Blueprint: CombatComponent
Blueprint Runtime Error: "Accessed None trying to read property UnitTarget". Node: SpawnActor Graph: EventGraph Function: Execute Ubergraph Combat Component Blueprint: CombatComponent
I keep getting these errors, The code it's referring too is for a camera system I made that worked perfectly fine not too long ago, though now it's randomly decided to start breaking. Any idea why the code isn't working?
you changed UnitTarget somewhere because it is empty
Hey!
Anyone know you can detect if the game is ran in editor or in a (shipping) build, via blueprints?
I want to trigger a custom event only in builds, but not when i'm playtesting in the editor. Thanks in advance:)
Anybody to clarify how I can get access to my current loaded level in editor via blueprint? As a World Context Object.
you can do this easy in c++ with a blueprint function library that just has a function that returns the build type.
there is this but i have not tried it out to make sure it works in shipping
The only place you can get a ref to world context is inside function libraries. Not aware of anywhere else that gives you the option in BP. You'd have to use C++ if it's a requirement.
Thanks alot!
I also found "Is packaged for distrubution" after digging a bit more.
Is that why the nodes look more faded in comparison to other ones? Like in the image?
So neither of those would do the job?
That's editor only so wouldn't work in a build.
I want to do a tool in Editor so that's fine ^^
I still can't get my change to get saved
What exactly are you trying to do?
if i want to grab a box while using active ragdoll and i want the hand to always be on the box eventough it might stretch my characters arm. I have tried constraint and it didnt really work and physics handle doesnt really work éither how would i do this?
Anyone know how can I alter the colliders from Physics Asset in runtime?
I´m trying to create colliders for this Skeletal Mesh that deform, or change scale on impacts.
Or then just disable some colliders of the Physics Asset when taking damage, I have no idea how to do that
I´d just need to change the scale of the colliders in BP
Edit a lot of actor in my current level to change, and keep the change, their Collision Preset.
Issue is, the collision is changed, but the change doesn't take effect, and once the level is closed, the changes aren't saved.
They should if you save the level? What code are you using atm?
Odd. Code looks fine other than that I would move the SaveLevel to the Completed of the first loop. I can't do it atm, but if you don't find a solution I can put together a local test to see if I can repro it a little later.
brothers i want to ease this interp how do i make this? what do i connect in alpha , a and b?
If you put your cursor on the function, it'll tell you.
A is the starting value, B is the target Value, Alpha is the "duration" of the ease
Has anyone found a good method of checking the volume of a static mesh in BP? Need to volume for some calcs, but to my suprise there doesnt seem to be a good way to get it?
hey. is there a way to find blueprints via there implemented or inherited interfaces/ c++ interfaces ??? since the reference viewers dont work with them
A good way to get what? I'm not sure what you're trying to do.
Basically, I'm trying the get the volume (cm3) of a static mesh
As in just a cube shape or the actual internal space of the mesh itself?
It can be a cube, but also for meshes that are not a cube
I don't believe there's anything built in for this.
yeah I kinda got that idea, sadly
Depending on the number of meshes, you could import the meshes into something like blender, (I believe there's an addon) to get the volume and store it in a data table with the relevant mesh.
we're talking 100s of meshes sadly, so probably will have to add this step to our workflow
do u need the exact volume ?? or are boundingboxes enough?
exact
Im trying to abuse the mass system to figure it out, but for some reason its off by quite an amount
ah, nvm I see why
Anyone knows why Motion Trajectory debug cmds dont work? Stride same issue, foot placement same issue, and more. using 5.3 on 5.4 some debugs work fine
What's the most efficient way to get all physics-enabled actors in an area? Are there any fast enough to run on tick?
Assume the area has probably hundreds of actors, but most are not physics-enabled
If i use a Delegate input for a function, it works as expected.
But it causes compiler error on blueprints which this function used, every time i open project. Error disappear when i click compile once.
Why is this happening? Tried it fresh project, still same. Is there alternative way?
How do I make it so that it remembers that level variable when I create another widget in another level, it always reads as none
Hello! I have a problem with my Items that i spawn at the beginning of my game. I added target points to the map, on game start my game mode spawns the actors on the map. When this is done my game stat runs up to around 18ms... before its like 8. Now I know thats because of the actors thats getting spawned. When I spawn less actors the game stat goes down but I want spawn this amount of actors (weapons) ... My question now is how can I edit the actors that i can achieve my goal? 😄 Do i have to set the texture quality lower or something? I already disabled the tick stuff...
how is an actor physics enabled?
Do you mean primitive components that are simulating physics?
Simuliating physics is a thing that happens to a primitive component
This has already been discussed in the thread :P
Its an ActorBP contains a skeletal mesh
Well ,not that question, but Grinning's question itself
Hello! I have a problem with my Items
am I missing something here?
the point which the second line trace starts from is not the top of the actor....
hey everyone
need advice
how would u do the linetracing ?
now im tracing from muzzel point of weapon to the forward vector of camera x distance
but as u can se its not in the crosshiar
and if i trace from camera then the curve of the bullet will be messy
You'd basically need to know the exact point that your crosshair is aiming at, and then rotate how your character is holding the gun so the muzzle faces that point if you want it to look like the character is aiming at what your crosshair is pointing at. This gets complicated when you have something in front of your crosshair that wouldn't be in front of the muzzle (eg. your crosshair hitting a wall to the right of the character, while their gun is on the left side of the wall.
You could always fake it too, and just use the line trace from the camera forward vector, and use a hit location from your trace as a target for the projectile, then when you make the visual effect, you show it coming from the muzzle heading to that position. You'll still have a similar problem that described above where things may look a bit odd.
yeah well
the problem if i trace from the camera then if i shoot with something infront of the muzzle it will "bypass" it
so klunky
yeah this would be the issue
maybe trace from the camera, then trace from the gun to the hit point ?
IMO for TPS I always preferred when the shot was from the muzzle, but hits whatever is at the center of screen. Shooting a wall in the way is just 🤷♂️ Don't be bad at TPS games.
yeah @maiden wadi but its not hitting the center of the crosshair either
oh maybe i should doubble tracew
first trace if hit then retrace that hit as end point
if you don't get a hit just use the end of the trace
To get that effect, you project your camera point to a plane at the muzzle location, then trace from that point to the forward multiplied by whatever distance.
This traces from the muzzle's distance from the camera to whatever the first thing is in front of that that hits.
Then you line trace from the muzzle to the hit point or end point of the last trace to get the real shot.
But again, you can run into a very odd scenario sometimes XD
@maiden wadi exactly my thought
u have to
if bullet still goes from muzzle, it would hit the wall to the right of the gun 😄
so doubble trace is the only solution
In this project I'm working on, I'm trying to make a swinging mechanic, but while the player is in the swinging state, I don't want them to be able to touch the ground at all.
I am trying to recreate the effect in Insomniac's Spider-Man where if you start swinging too close to the ground, the game will keep you a minimum distance from the ground to make sure the swing isn't interrupted. I've created this bit of blueprint that is meant the find the distance between the player and the ground and apply a proportional amount of force to the player to create a sort of "hovering" effect. But despite the node being called and the force is clearly not zero, nothing seems to happen. Thanks!
Exactly XD
Cool if there was actually a player in the way there xD wtf just happened, he was aiming away from me!?
It's like you either need to rotate the player/gun or change how the player is holding their weapon/ prevent them from shooting when the trace impact point from the camera is "behind" where the muzzle is.
doesnt fortnite do both
at some distance treshold they change the trace method
to go from the gun
pretty sure they do
It's just a couple of failsafe traces to test it.
y
You can largely get away with two, but you need a couple extra to keep it from being weird at times.
Also. For sanity, make sure you use the functions in the camera manager to get the view's rotation and location.
Getting the camera isn't always correct, if there are modifiers and such. If some designer does something unspeakable, your view can end up offset from where the camera component is, leaving you with traces that aren't correct. Camera manager's view cache should be more real to what the player sees.
@north rain im not sure if applying force to the movementcomponent is the correct way. try to apply it on actor or a mesh from the actor.
I did it, took me 5 hours tho
had a lot of functions
I did try doing that on the root capsule collider, but that requires "Simulate Physics" to be on and that seems to break the "Player Movement" component. I will try with the mesh.
well u need simulate physics for that
using force is physics
thats why it says, it need physics
and it breaks the movementcomponent, since the movement component is replicated .. and interpolates
and needs to be revertable etc
what u can try is to add world location offsets
but no idea rly.. if u want physic dynamics
i would think that u use movement component and just make sure in it that it never touches the ground. or gets slowed by the ground
Yah, I tried that, but it just caused the character to bounce around violently.
and if u want animation , it is just visible... maybe another simulated/visual mesh, which is calculated clientside.. no idea if its a networked project
is this a networked project ?
oh yah, this is just a singleplayer project
are u sure about using the movement component for that ?
since ur just moving in the air anyways
isnt there any other way than simulating physics for this stuff? Cant he put a collision near ground and it activates when player is swinging
maybe follow along a spline or something
movement components are used for movements where u interact with something
for example sliding down a slopw, or wallrunning
@maiden wadihttps://blueprintue.com/blueprint/q57wufht/
there might be away, to avoid using the movement comp for this
This is the best result I've been able to get so far where the player is able to actually swing around, and it gravity scale part does help keep the player off the ground in some cases, but not all.
hm what am i doing wrong :/ ?
hard to read
im not sure if u want gravity scale
also isnt gravity a physics thing ?
Sorry, I can try to take more zoomed in pictures.
its the gravity applied to the character movement
i would use physics chains for swinging
and then maybe just trace from the chain start to the ground and shorten the chain dynamicly
oh yah, I usually work in C++, but I have to use blueprints for this project so I'm not the best at organizing them yet.
- on top of it you could apply a force, for a dynamic hovering effect
So in this project, it needs to have a Movement Component, because the person I am making this for just does need it. If that is limiting the swinging from behaving exaclty how I would like it to, than it honestly is fine for this instance. However, I do want to take this feature and put it into another project without any limitations in what I'm able to use and really perfect it.
is that different from the cable component?
well maybe u can still have a swingpoint and then ove along the distance and still shorten the max distance from it
that would also make sense for a movement component, since its interacting with something... what a movementc component is for
but instead of using force ... u can just shorten the distance from it.. it wouldnt need any physics
i think u dont want to mix this... movement cares about movemet, aka that u dont crash into ground
and thn u can still apply phsics ontop of it ...
physics constraint actors
but there are also components
there is a good example project for physics.. which is for schoolkids to learn unreal engine
including documentation : https://dev.epicgames.com/community/learning/courses/KJP/build-a-virtual-rube-goldberg-machine-in-unreal-engine/pPKw/build-a-virtual-rube-goldberg-machine-in-unreal-engine
Oh yah, I tried using physics constraint, but it didn't seem to work with the character movement. I want to make sure the player is still able to control the direction they swing in while they are swinging.
mmh
i think u can still influence how it swings by adding foce
but no idea how stable it is and how u can calculate the correct force
but ye i would simulate just chain with fixed length inside the movement comp
Like disable the character movement while swinging and just add force to the root component while swinging with a physics contraint?
and then shorten it automaticly, to avoid it touchend the ground
ye
sounds like easier then writing a movement comp
also in 5,4 i think there is a new movementcomponent
i think its coming in 5.4 im not sure, which might make ur task easier
That would be nice for my personal project, but unfortunately I'm stuck with 5.1 for this one.
Oh that looks really cool
well i would try to checkout the physic constraints things, should be to much work to test how good that works
but otherwise a character movement comp.. should also be doable, if its not networked for that
Yah, I think it would be nice to get that working since it'll be less calculations for me to mess up.
well again u should go for that with phyics or the movement comp
but i rly think the physic thing is the way to go
would also allow u to later to hang in air on 2 ropes for example
but no idea how stable it is etc
the more i think about it, the more i would go the physics route
would also allow u to have wind affacting ur swinging etc
Just to make sure, by physics route, we're talking about this sort of thing, right?
Any idea why this function can't find my player pawn if it starts in the area, but the ActorBeginOverlap version which basically does the same thing DOES find my player pawn if I start outside the area and then go in?
yes
again there is also a physic constraint component
and other physic components
and to stay in air, u would just shorten the length of it
then it is constrained + u can still add physics to influence the swining actor dynamicly
i would just use the example project
and play around with it .. like let something swing
then add input key and apply forces to it while it swings
and that should give a good idea if its usable
how would you change the length of the physics constraint?
or is that something else?
Oh interesting, it looks like this is a race condition. Adding a delay fixes it.
its just a setting
of the phyics constraint
just take a look at the examples.. but again i used it already and i dont recall every detail
but if u use it, its defnetly rip multiplayer
physics constraint is a rip for multiplayer?
mmmh maybe not, maybe u could use smooth sync .. but again its getting complex
no, not necessarily
but physics and character are a match made in hell
they are fundamentally incompatible, the fact that Character responds to add force and add impulse is just a convenience, it's not actually running physics
ye ofc, when it swings u need to deactivate movement comp etc.. its jsut a swinging stone ^^
ye falling state for swining .. but does that replicate properly
probably not
without multiplayer its falling state
if you want "replicate properly" you'll need to be in C++ most likely to make a movement mode
or modify falling
well u could use something like smooth sync for it
yah, I got that working, I'm just trying find a way to make sure the player doesn't touch the ground while swinging so that the swing doesn't get interrupted.
There already is built in physics replication
maybe just have a sphere around the character
and if it overlaps with the ground.. shorten the disance
well if u swing anyways
but yee... its getting complicated ^^
Hi! So I have this problem where I have a grid based map which uses arrays to store all tile data. At the moment its hard coded to support 24 tiles in every dimension, which isn't very much. I would like it to be more flexible (and infinitely scalable, if possible). How can I do this?
This is what it looks like at the moment;
my man
just make a struct with
Width
Height
DataArray
then make functions to convert xy coords into index and back
That's the general form for 2d arrays
But, if you want them to be really big and resizable, then maybe consider doing the map approach
Map(IntVec2, YourDataType)
depends on if you need them to be dense and not really resizable or sparse and resizable
An array of int points would do the trick. (Maybe even a set) If you need to store specific tile data, make it a map with int points as the key and a struct as the value.
I want to create a character that has swappable clothing. So boots, pants, shirt, gloves as the basic swappable stuff. And then I want to be able to have gear placed on over this. So like body armor, helmet, etc. What's the best way to go about doing this? Master Pose Component?
hi Y'all, I'm trying to do some work with blueprint uassets and I think I'm just getting some stuff fundamentally wrong about how their workflow is supposed to work.
as a bit of background I'm working on a randomization system wherein my randomizer object reads an array of items, an array of spawn locations, and places those items along those spawn locations through a randomized mapping. The items are blueprint uassets and the spawn locations are actors selected from the level view. This currently works fine when I execute this behavior directly in the level, but is having issues when I try to nest the behavior. Specifically I'm hoping to have the game choose and generate a room from a list, then within that room have another set of items that are randomized themselves (particularly platforms but theoretically any arbitrary set of actors would do).
the issue specifically is with setting the spawn location array within the blueprint uasset. when I saved the room from the level editor to a blueprint of it's own, everything I placed into the room got converted to child actor components, which I can't select and set from within the viewport. I've found a way to use the event graph to set the arrays through a lot of retrieval and casting, but this feels convoluted, poorly scalable, sloppy, and just not the right way to do it.
idk how much sense I'm making and I'm sorry for the wall of text but I'm hoping that y'all might be able to help me understand a more effective way to work with Unreal's systems here.
Not 100% if I'm reading entirely correct. But I feel like you might want to consider doing these in level instances instead of actor blueprints. That or consider some outside help via something like Prefabricator which allows you to basically bundle actors together in reusable, randomizable via seed assets.
thank you! honeslty I'm not familiar with those terms but I'm happy to try researching them on my own. My main issue was not knowing what terms to even try to start looking into
after an initial google it seems like prefabricator is exactly what I needed - I'm mostly familiar with unity and conceived of this system mostly from a perspective of using prefabs, so this should make that translation much easier (or even just possible)
You can alwasy just spawn actor at runtime
child actor component is for if you need it to be there at editor time
I feel like Prefabricator might get you closer to what you want. But it may be doable with level instances as well.
Prefabricator is a plugin that is fairly easy to use. You just drop stuff into a level and right click it and convert it to a prefab. And it gives you a bunch of editing options and such. You can make prefabs that randomize their internals and such and it's all controllable via seed for easy reuse.
Level instances would be making these same things in separate levels, and spawning those in as level instances. Little less weildy honstly.
Begin play -> spawn rooms -> rooms spawn things -> things spawn other stuff
Prefabricator asserts a lot for me, I didn't find it very stable.
Just my experience -- maybe it's my use cases (or I'm just cursed)
Haven't had it assert for me. Are they at least commented?
this is more or less the workflow I'm going for, the issue I'm running into is with using my randomLocations to determine where the objects spawn. I'd be open to other methods I just don't know what those other methods would be per se
The asserts, no -- just some property serialisation code (mainly when serialising components such as Timelines).
ig I could maybe feed in the locations directly/manually as a variable? but that feels way less intuitive for workign w level design
are randomlocations within a room or within the level?
ideally within a room
You can just put scene components within the room BP that it uses as locations for spawning things
currently in a level but if I get this nested randomization working then it'd involve random locations being a part of the room prefab/uasset/levelInstance/howeverIEndUpDoingThis
I did figure that out, but I'd like to have the random locations also vary by room, and that didn't seem to work with the scene component approach
That can work just fine
in each room BP you put random location components wherever you want
TBF this is quickly turning into a PCG framework talk.
I was having a few issues with that, namely being able to read the random location components into the randomizer. the BP editor only allowed me to select objects from the level editor rather than within the BP
my issue there may also just be improper handling/understanding of actors vs components but I'm not sure
ok let's assume you make a subclass of SceneComponent called RandomSpawnLocation or whatever. Your room BP has a bunch of these all over the place. You want to spawn a random thing at the location of half of these randomly.
Room.BeginPlay -> get components by class RandomSpawnLocation -> fill an array -> shuffle it -> roll a random number -> loop over that array up to random number -> loop body -> spawn random actor from some class list at the spawn location -> ??? -> profit
Yep, definitely a PCG graph. 😄
that more or less matches up with what I originally had in mind, esp since most of the stuff after shuffling it is already working w my other infrastructure.
Only differences would be that I'm trying to have a few different "groups" of random objects which have to be randomized independently to prevent soft locking. say there's two groups of platforms that could force the player to go left or right. if I get all components by class and handle them in the same pool, then it's possible for both platforms to spawn in the first group and neither in the second group.
I can circumvent this issue by manually picking the locations from my hierarchy, this just feels like an excessive workflow to have to do for each group of random items, which was what brought me here to see if there's a better way
sorry for things to have snowballed into a broader PCG framework discussion 😅 I'm happy to be on my merry way either using this method or researching into the options you showed me (the prefabs look very useful both for this and a lot of other stuff I've been trying to do with this game)
i c you like to code dangerously
nothing "wrong" really you don't check for success
i was joking because it could be empty
but in reality i would check for success
oh with the casting you mean?
fair point, I do expect it to always be success but I guess it is better to err on the side of caution
After I run a simulation I want save the relative transform to a variable I can use elsewhere. How do I copy the data in this array which is generated in PIE and use it the editor?
Without any fancy coding, savegame
ok I thought about that but how do I get it permanently?
because with what your saying I'd have to load the save slot and plug in the data every time. Is there now way to copy the completted array and paste it in?
?
you can read and write from a save game at runtime and editor time
so you can write at runtime, read at editor time with an editor utility bp and save to some asset
How do I do this? I got my save
ok so load game from slot in an editor utility bp
what is a editor utility bp and how do I make one
Describes how to use Blueprints in the editor to automate content production tasks.
Lol. I never thought about doing that in a Savegame... That's useful. I always did json exports.
How can I get this border to stay the same size no mater what the text value is, right now the box gets bigger everytime another digit is added.
Ok i created a utility editor BP and put this in it but I not working..
Ah got it had to go in construction. Thanks!
Wrap it in a sizebox
I did but its still happening, not sure what setting i need to change
Ahh its in the child Layout Overrides
I saved the transform data as relative, But when I plug the data in its far away from the origin point of the Item. Any ideal why that is and how to fix it?
Begin play doesn't fire at editor time
there should be events you can hook into to run it
Yea I got it to work
It works great except my relive transform data is way out in the middle of nowhere and I am not sure why lol
i am losing my mind. I cannot understand why casting always fails here. It's a custom character blueprint that i'm trying to get a value from to update where a bone (spine_01) points to. This is in the custom Animation Blueprint i created to get that value to update the control rig and produce the right animation. Any help is appreciated
can some one help me figure out why this is spawning these objects in the wrong place.
They should be relative to the orgin point of the object but they are spawning way way out in the middle of nowhere and I am not at all sure why or how to fix it.
Are you sure you're selecting the correct animation instance at the top? The anim blueprint itself runs a preview instance which doesn't have the standard actor owner.
And make sure that pawn actually has that ABP selected
Anyone happen to know any neat simple tricks to smooth out spline tangents kind of generically? Made a spline out of just points, and the tangents are all sorts of weird by default.
Also. I love that the Wrap integer node needs to be -1 min to wrap to zero. :/ I feel like no one's tested that in a couple decades.
lol, so much for inclusive
Thing is that the max is. It wraps at the max correctly. Just the min is messed up.
Lol, right, this is the weird while loop wrap function.
Usually collision, or something else blocking the mouse trace on the channel specified in the player controller.
what am I doing wrong here? trying to construct the array from the values passed in, but the array size is never increasing, and when I fill the array with empty values those values never get filled. tried add, insert, and set array elem. as well as constructing a new array then setting it directly
There is nothing blocking
the LocationArray is an array of BP_RandomLocations, a blueprint class inheriting from randomItemSpawner, a custom C++ class inheriting from actor.
the randomizer object is a custom c++ object I created inheriting directly from actor, the spawner array stored on there is an array of randomItemSpawners. I've tried casting the passed spawn locations to both randomItemSpawners and SpawnLocations. this should be such laughably easy code what am I doing wrong
theoretically my goal is to set the pins in RL pins in the second pic to the spawner array on the randomizer. the casts aren't throwing any errors, the loop is in fact running, am I just fundamentally misinterpreting how the "add" function works?
Player controller channel is visibility and the actor is using Pawn collision preset
Do u think it is broken on UE5?
Pawn preset doesn't block visibility.
Even block all don`t work
Maybe it is enhanced input
it is hard to debug
I don`t even know what to debug actually
This is the controller
this is so hard to read...
fixed the issue I think, disregard
Looks like it is broken with Enhanced Input
The problem with default collision presets is that what shows as checked under the greyed out boxes, isn’t necessarily checked, or not working as intended
How is collision related to EIS?
I`m not sure but i cant make it work
Which part is not working, how are you testing the collision?
how can I make a mouse show up inside the widget?
Weird, your settings look right for that event
Are you using some weird cursor logic or software cursors or something ?
no
No, it is just normal windows 11
but i`m using unreal 5.4 and enhanced input
Can somebody help me figure out why no matter what I change health or damage values too everything dies in one hit?
Sure! Show your logic.
this is my damage system/health
and this is my enemy attack system
only showing the enemy because both the player and enemy use that same code
You're about is subtracting health from it.
Amount*
Instead of health from the amount
Wait. You know what I mean. Lol
ohh, that would make sense. do i need to make my numbers a negative?
Nah. Just do health - amount instead.
explain please
You are currentyly doing:
Amount - Health
You need to do:
Health - Amount
Might also want to clamp it between 0 and max health as well.
Basically, flip these connections:
OHHHHHHHHHH
Currently if the player has 100 health and takes 5 damage you're giving the player -95 health. 5-100.
dude ive been banging my head for like 2 hours and you solved it in 30 seconds
And that's less than 0 so he's dead.
i hate life right now lol
thank you so much
Np. Good luck!
maybe one more question if you dont mind
I just set up AI logic but the enemy is moving really fast. How would i slow him down
Yep! 🙂
Hi ! I made a BP and added the block. I also added a tag "Block".
How can I receive access to the tag?
I made this combination to check, it shows that there is no tag, why doesn’t it see the tag?
Well you've added a tag to the actor, not the block static mesh component
You're currently checking the tags of the static mesh component
Oh, right. Thank you!
How can I receive access to actor's tag list?
Since you're in the actor you can try looking directly for the tags array, or use the actor has tag node and plug a reference to self in
Thank you !
No problem
Game Mode Setup.
Hello game devs! Question about Game Modes: how are they set up in your project, and would you recommend that setup, in terms of BP vs C++? Any specific examples/game names, and summary for your decisions would be very useful to me!
I imagine most UE games likely have a C++ base class, with child BP containing the flow logic? But I'm curious to get a sense of whether I am wrong or not.
i have been away from unreal to long.
I am struggling to understand focusable elements, like buttons, with the new enhanced input system.
it seems like focusable elements, like buttons in a vertical box, have their own, max priority controls.
there doesn't seem to be a way to disable them.
i got something of a basic working menu with enhanced inputs, but this still irks me.
If i launch a game disabling focusable from buttons, the engine spits out warning messages.
on the other hand, there doesn't seem to be anyway i can find to make expected use of a focused element.
For example, i can't do some kind of equals statement to check if focused element is X, do Y, because i can't get a focused element.
Furthermore, despite what one would expect from an "enhanced input", click events for buttons still exist.
and no, there is not a command for like, "execute focused elements click event".
Mind you, i have no problem making buttons do nothing on click. But thats besides the point.
This "max priority" controls, seem to takeover / disable the enhanced input system.
for a direct example, have a button in focus. Then make an enhanced input where pressing down prints a string.
if the button is not in focus, it prints. But if the button is in focus, the string won't print.
This implies to some degree, i "Must" use this focus system. Yet, there is no way to "get focus".
there is probably someway to articulate this i'm not quite doing at the moment, but whatever.
What i'm getting at is, the engine demands elements be focusable or it spits warnings, but when their focusable, it disables enhanced inputs.
How do i resolve this? Aiming for a workaround, i also can't "get focused element".
(useful for things like, make color change when in focus)
i find it somewhat baffling that things like buttons (etc) have have a normal, hovered, and pressed style, but not a focused style.
(despite that there is a blue outline for a focused element i can't seem to get rid of...)
The blue outline is disabled in the project settings. Also it seems like you misunderstand what focus is.
When you click on a widget that's focusable, it adds it to the focus path along with its parents.
Only widgets that are in the focus path can receive inputs.
There are events you can override for when a widget is focused or added to the focus path.
- Where is it disabled in project settings?
- I see, its a focus path, not a direct focus.
- im not sure what you mean by "only widgets in the focus path". or perhaps an "input". It defiantly seems possible to send inputs to things out of focus.
- im not sure what you mean with the override statement
some example questions:
- How / where specifically can i disable the blue outline, as well as the (hold enter to press) and (press enter to trigger click event).
- Otherwise / etc, How can the enhanced inputs be max priority, and always occur ignoring other such inputs (like the one above)
- how can i for example, make a focused object change color. or anything. I have a small little thing like this for a "Selected" bool i made, but can it work with the focus system? Like, change color if i am focused?
- Overall, i don't gather how to make an enhanced input work with an in focus button.
for example, if i put my mouse on a button, and click, it tries to run a click event despite none existing, and despite mouseclick being a enhanced input. The enhanced input print string doesn't appear.
actually yes, surely focus path is somewhat silly. I can imagine an options meny, where you move tabs with L1 R1, and go up down with Dpad. that would be two seperate things in focus at once, if they actually required focus for inputs to do things. It seems much more reasonably, to somehow disable the focus system, and just have inputs do things in a programically.
How can I make a physical simulation plane for water? I want the water surface to keep a yacht floating so I can control the yacht through physics, but I don't know how to make the yacht float stably on the water. Thank you for your help
I knew about UE's Water plugin but the graphic style didn't suit my game.
have a base class in cpp, declare your variables in that base class and do the stuff that can only be done in cpp in the base class.
It really depend on your project, in some casses, you won't even need to edit game mode if you just want it to handle nothing more than spawning the player
if you are going the cpp route, afaik your every bp class should be derived from your cpp class
the bp is just the extention, normally used to handle asset paths
Struggling to set the visibility of some skeletal mesh actors in my blueprint in the blueprint in a way that lets me still override the visibility through sequencer.
I had a setup that was settin it via "Set visibility" and "Set actor hidden in game", but that doesn´t let me override it in sequencer, as I can only animate "hidden in game" in sequencer.
Also I my hidden in game node says "variable not in scope" and I don´t understand what that means:
i have already asked this quescion here but i forgot the answer.I have a caterpillar character,i just replaced the skeleton mesh ,but his looks terrible ,he has some animations and he is floating in air.Someone suggested to add a physics component on my caterpillar so that he will make contact with the ground
i tried ik rig but its extremely hard
whats the simplest sollution to acheave the result
Your assumption is that enhanced inputs work in widget. Short answer is they don't. Common UI has more support for enhanced inputs but it can be hit and miss if it works. (Not fully implemented)
As for disabling the blue focus outline, change the render focus rule in the project settings.
Also it might be best to move the conversation to #umg
@maiden wadi hey u here ?
Anyone? I can´t believe its so difficult to set the visibility for skeletal mesh actors in a way that can be overridden on a per component basis in Sequencer.
Actor hidden in game doesn´t work for me, if I filter the class for Skeletal mesh components", it doesn´t do anything, if I filter for actor, it just hides everything in this setup, not just the elements of the array.
I can´t use set visibility as I cannot animate that in sequencer, sequencer animates only "hidden in game"....Why...
I have an actor in a level with a collision box. Controls are set up to work with the mouse. I set it up so that in-game, when I click on the actor, a small widget pops up. What I want to happen is that when I click anywhere besides the actor or the widget, the widget goes away. How can I do this? Where should I implement this? (Probably not in the actor's event graph, right?)
Hello. I'm stuck trying to find a solution for an annoying issue. As shown on the drawing, this is the result i get from an angle derived from a mouse position / radial menu selected angle. Problem is its rotated 45 degrees clockwise. I want to derotate it so that 0 starts at the top of the radial menu. But cant figure out how. (Too dumb) 😦
Goddamn that was stupid...
I keep forgetting that most nodes seem to be context aware... so If I drag out from an array, it automatically gives me the correct "set hidden in game" node, the one I had in the blueprint was the wrong one. I keep just adding nodes using the right click menu, without having anything selected and then keep getting errors from stuff not wanting to connect to other stuff..Hope this time I´ll remember...:
Turn your screen ?
Joke aside, I'm note quite sure what's your config but one way is simply to use an offset. -90 should do the trick
-90 maybe with some figuring out of the overlap and remainder
what does the code to figure this out look like ? maybe there is a setting to get it to start off at a different spot
Yeah a simple -90 doesn't work sadly. It indeed needs some type of remapping
Basically 0/360 needs to become 90 and 270 needs to become 0/360
Oh right! Will try there thx 🙂
Does anyone know how to increment the build number in BP's? The Get Build Version node seems to return the same version even when changes have been made between builds
hi everyone, im wanting to access a website in an unreal project. ive downloaded the web browser plug in, however on the specific website i want to view the page doesnt render (white screen) i was wondering does anyone know any specific limitations of the browser? (does it support webm videos for example?) or at least a way to simply debug it ?
Edit: Can confirm webm works
Just set widget rotation -45 degrees ?
Or that yes 😆
im glad that im here now people in cpp channel really suck i fell like this is my home and i returned to it
ahhhhh
I'm trying to store an array of levels to step through with level streaming. Event happens -> load next level in the array, unload current level. The issue is that, according to the debugger, any World Soft Object Reference in the array beyond the first level that loads in the game is None as soon as I start PIE. I'm thinking the issue is that those Levels aren't being included in the build because there are only soft references to them, which may suggest that this pattern I'm doing with the array of levels is the problem, and that I need something that forces the build to include the levels. Not sure what that pattern would be, or even if I'm off-base with that.
this is also happend to me last month but i forgot how to fix it
lulz
I'm not sure whether this a 'missing additional step required' or 'doing it wrong' problem
is your increment value comming out correctly ?
it is yeah ... but even inspecting the array as a whole shows a whole buncha none
If you were using the CommonUser plugin from Lyra, this would be much easier via the CommonSessionSubsystem's ability to use PrimaryAssetIDs, as they're correctly BP exposed for handling.
Interesting ... checked it out and it looks like it might be a little bit heavy just to solve this one issue
Does anybody know how I can add a static mesh component to a pawn, from a component (I wanna make a procedural customization system)...via blueprints. Help would be appreciated!
And another question: how can I get all assets in a folder and put all with the format "carname-carpart-nr" into a array, for example I wanna get all spoilers for car X, it would look like "X-spoiler-01" and "X-spoiler-02" and return them?
Get the owner of the component that is meant to add the static mesh component and add the static mesh component to that owner.
How can I move this cube bp from the side that it's on currently to the other side and back
THANKS!
Why cant I add the add static mesh component though? I tried everthing
I tried to do this before but it doesnt work
It's add component by class, then you select static mesh
THANKSSS!
what is the functionality to move an actor relative to camera, for instance a basic cube?
I forget what the funciton is involving forward vectors and such
Any ideas on how I'd resolve this error?
if you click on set targetRotation in the error, what does it show ?
your variable is empty like mentioned already
Like where does it link too?
I'll quickly pull it back up and find out, also sorry for keeping on asking the same questions, as I said I'm pretty new to UE5 and admittedly still don't fully understand some of the basics
Set Actor Location. The location can be based on the Camera Location + an offset. If you were wanting to somehow use the camera forward vector, then you could do something like:
(Camera Forward Vector * Distance) + Camera Location
This would put the actor a certain distance away in the forward direction of the camera from the camera location.
Target Actor is not pointing at any instance of actor in the world
does this work for xyz as well? sorry this seems so trivial but its been a while since I've had to do it and I've simply forgotten
The forward vector and the location is 3 dimensional, so it takes all axes into account.
Hello Everyone, I hope you all are doing well. I just finished my college and 6 months internship as a 3D Artist and currently looking for Work/Job opportunities as well as i am happy to work Remote or On site jobs too
Feel free to check out my showreel here :
https://youtu.be/QBfT-EOtaew?si=uS5l9qoXauFVIMoC
Thanks You,
Hello And Welcome to my channel i am an indie Game Dev from india and this is my one year show reel i hope you liked it.
#gamedev #showreel #gamedesign #gamedevelopment #indiegame #artist #art #design #india #viral #2024 #foryou #dailyvlog #gameplay #gamer
Welcome to the server, but this is the wrong channel to post something like this. There's the "Community Creations" section that has things like #1054845218723209226 and #1054845120236757103 You may want to familiarize yourself with the #rules as you're not supposed to crosspost.
And for jobs, #instructions @runic gazelle
Alright i am really sorry for the inconvenience i am new here
@dawn gazelle Could you help pls
you just want it to move in a straight line ? or you want to move to different points ?
Can anyone please help me out, I don´t wanna work all weekend to figure this out...
I need to animate some variables (Override animation sequence play rate and position) in sequencer, but I can´t see them update...
I was last trying the "livelink" event "trick" and somehow got it working, by piping it into the whole animation update sequence, but that keeps freezing Unreal when I recompile and its also super slow.
I´ve been at it forever and I keep running into roadblocks, because I don´t have enough time to figure this out properly.
straight line and back for now
but ideally with a variable i can easily change for the target location
It only works when I connect the "on Live Link updated" event directly to the animation update function.
For things to change over time, you need to have their event fire continually, this means using something like Tick or a Timeline. Your current set up is using only begin play to fire your "Move Cube" event, which only fires one time, so then the set actor location only happens one time.
I need a loop
I just need this working in editor and movie render queue
I tried to add a branch in between the "live link" event, so I could only activate when I need it, but that doesn´t work for some reason.
Idk where to put this so I'll ask here, I'm making a geography game which is supposed to have a database of countries with a material for each country highlight. I'm at like 30 countries in the database now with 1 material each and it's saying Texture Streaming Pool over 249.512 MiB budget. What does this mean and what do I need to do?
by database are you using data table?
dont have any hard ref in it
Yes
or u will load all of them
Having a ref to the DT, will load every single hard ref in it
Each time a country gets randomly chosen and a new material (of the chosen country) is set to Earth
Ah
This generally just means you're using too many textures that are too large at once without good mip levels.
You can convert the materials to soft ref and load them at will
That'll only help with ram cost. That won't help with texture streaming though. They'll end up with the same amount streamed regardless.
It could make parts of your textures not load on devices that don't have enough RAM. Increasing the budget effectively only hides that warning.
I wouldn't load all the materials when I don't need to show all of them
but I do think optimizing the texture helps too
I though they are generated automatically tho?
No I have a manually made materials that are put in a datatable so that the program can randomly choose a row with country (so game knows what country is being guessed) and with a material instance (so the game knows what material to set)
lemme see what resolution the textures are
Do you want to load all the materials in data table at all time?
erm they're 8k by 2k i think
if the answer is no, you want to use soft reference
hard ref in data table is generally no no
how do I make a soft ref for data table
you change the type to a soft ref
(the material for example)
but now you will have responsibility on when to load them
soft ref = the path to the asset
Epic made a video explaining soft ref
at such resolution, you probably want to utilize virtual texture streaming too
has anyone had issues with using Launch Character on a character that doesn't have an AI controller? just noticed that it doesn't work at all if there's no AI controller on 5.3.2
the moment I add an AI controller the Launch Character node works as expected
@frosty heron Would removing some rows from data table help or do I need to also delete the materials from content drawer? Its a time sensitive project for school so I kinda need to get rid of that message asap
as long as the game works it wont matter whether it will have 200 countries or 40 in it
I don't know what to say
Don't have your project
U either do it or u don't. Wether not optimising work or not depend on your target hardware and how many materials u will burden the gpu
what's the best way to do it?
Idk whether the issue is with the materials itself or if removing their instances from data table would be enough (so the game technically cant pick that country so it wont need to be loaded ig? but i dont know ue enough to tell whether it only loads that datatable or all content drawer files and if always or if only when it needs to
Your issue is your material is going over the budget. Wether you want to optimise by adding more mip map, use virtual texture , using soft ref or by applying everything suggested is up to you
How much additional work does virtual texture require
Ok thanks
Sorry, that error list was outdated. The one thats popping up now are these ones:
Blueprint Runtime Error: "Accessed None trying to read property UnitTarget". Node: Set Dynamic Location Graph: EventGraph Function: Execute Ubergraph Combat Component Blueprint: CombatComponent
Blueprint Runtime Error: "Accessed None trying to read property UnitTarget". Node: Return Node Graph: GetRangePosition Function: Get Range Position Blueprint: CombatComponent
Why do you need this kind of resolution? What are you making exactly? That's a 4k texture, for each country. What is in the texture? Just color data and opacity?
Accessed None = You have a variable defined of a certain object type, but you haven't set an object into that variable. Anytime you see "Accessed None" it means you're trying to access an object reference that isn't valid.
Textures are used for material masks like this
and 8k cos its a huge model of earth
idk why its so huge, i wanted it as realistic as possible so i made it huge cos irl earth is also huge lol
8k and the masks are already quite low quality on my earth
You need to make much smaller masks and align them at their points. You are wasting a toooooon of pixel data here.
does compressing all textures do the trick
I literally joked about this recently. #blueprint message
context for trying to do this the easiest way is that my deadline is tomorrow O_o
Yeah just up the texture streaming limit. 😂 Fixing it is rather involved.
I'm making the game on my rtx 3070 computer, I imagine the teachers trying to run the game on a pc made out of dirt and potatoes
If it's just a one way movement, a non-looping timeline would probably be best.
If it's something that pings back and forth, a looping timeline would make sense.
If it's something that is just constantly moving, but doesn't necessarily have a defined "here or there" or the location value can easily loop itself through math, then tick can make sense.
What is the default streaming value? I don't remember anymore.
idk but this is how it looks compressed to 2048
not very representative should I say
I need to connect this to a timeline pretty much then?
What kind of textures are those? Are you importing them as PNGs? And do you know how to texture pack? You could save a lot of space if they're just masks but packing three to four of them in each texture file.
yep they are all PNGs
Ok I compressed everything to 4k and it looks um erm... tolerable :D
Here is a quick thing i threw together just as an idea, normally i would check if the location is > and not equal but i just used equals with a tolerance but it's the idea and how to use vinterp on tick instead of just once https://blueprintue.com/blueprint/jz1w-hb6/
So if you were able to get about 30 countries in at 8k x 2k, then you'd expect to get about 120 before seeing that streaming error if they're at 4k x 1k 😛
Are you using separate materials for each country or separate textures? If all you're wanting to do is highlight one country at a time, this could maybe be fixed if you used a single dynamic material instance that has a texture property that you update with the soft referenced texture from your data table. This prevents unreal from having to load a whole bunch of materials which could be loading all your textures.
wat, materials can have variable textures in it?????????
But like what's the way I should be doing it?
With a timeline
Yep, called "paramters" typically.
Do I need to set a variable within the timeline somehow?
why did i spend hours making each country material manually 😭
As the value changes depending on the target location
Can use "vector" paramters to change colors etc..
If you ever find yourself doing the same thing over and over and over.... Always think that there's probably some easier way to do it.
Also make sure you set the textures as masks, and enable mip settings if you don't have them.
This?
Yeah, for the alpha textures.
What does your float track look like?
Change the parameter's type. It should tell you which it needs now.
What are the values between these two points? I imagine the first point is 0 and the second is 1?
oh nvm i fixed itr
the values didnt properly work in the timeline for some reason
There we go 🙂
Ehhhh.... I wouldn't use a flipflop to manage it going back and forth. You can check the direction on finished and based on the direction call either reverse or play. The other alternative would be to have the timeline looping make it longer and just add a third point that goes back to 0 at the end.
Also just want to point out you're storing the cube's world locaiton as the default, but you're moving the whole actor's location. Unless your cube is at 0, 0, 0 relative position in your actor, it may not move to the exact spot you're hoping for.
Thanks, is there a way to set the timeline length (and also the curve key) with an instance editible variable
Yeah, you'd need to name the float track something and then you can update it with an external curve.
If you just want the length to be dynamic, then you can use a 1 second track and "Set Play Rate" to how fast you want it to play... So if you wanted it to last two seconds, you'd set play rate to 0.5, if you wanted it to be half a second, you'd set play rate to 2.
Ty for the help but it destroyed all of my materials
Need to remake every single on of them now
Thanks so much Datura
hi, just a quick question, why my sphere trace does this?
I give up.
Shouldn't have more than one material. Should make a single material and either pass the values to a dynamic parameter, or make material instances out of them.
Any way to on run-time fill a struct with a customizable amount of integer arrays?
I don't fully understand what is going on here. But the freeze happens only in editor? And only when you have this livelink event connected to the UpdateAnimation and compile the blueprint?
Yup
Its the only thing that has worked so far though to let may animate playrate and play position of the animation sequence for all skeletal meshes in the blueprint.
You should probably have a single structure that holds nothing more than a single integer array. This is now your "Array" container. You can then make an array of that structure, so you then have an array that can contain arrays of integers.
Then it's just a matter of looping to fill them with whatever data you want.
hitting capsule probably
Is this Livelink a tick function, or does it only run at compile time?
Why not a just have a single array and an int width and height and functions to convert coords to index and back?
Much better way to live
its what enables me to tick the play rate and position variables in sequencer.
Nothing else worked so far.
I need to control the sequence play rate and position in sequencer
Stuck on very simple casting in a AnimationBlueprint.
In my BP_ThirdPersonChar I've correctly defined my Animation Blueprint to correctly point to the correct Anim Class (attached)
And in my Animation Blueprint Event Graph I am Casting to Character but it always fails when I play (attahced)
Why?
(Not exactly this, but something like it anyway...)
Is this Livelink a tick function, or
yeah, i don't know why but it seems like its shooting two rays, idk if they changed it but i don't remeber the line looking like that with half sphere opening and closing at the end
it't not actually broken, it's only a thought
hey guys I have a question and im spacing hard on this, how do I rename the actors in the world outliner back to their source name in the content browser
Through an editor utility, or?...
How do you change a character's speed? The game I'm making has at least 5 different types of characters that go fast, and I want to make each character feel like they have different speeds. I know I have to make at least five different styles, but I want to know how to properly do it so that, when I get the models done, I don't have to have much trouble fitting the models onto the characters.
@woeful pilot Try this.
ohh I havent tried to leave it empty let me give that a go
hey guys in need to advice again
That won't do anything.
throwing granade
but i want it to be thrown at middle of screen
towards crosshair
Sorry if this sounds real dumb, but you mean Movement Input, right? I'm looking at the default controllers, and notice that they have 'get control rotation' inserted into them. Do I manipulate those to change the max speed as well, or do i expand further on the Movement Input to hard insert the top speed of the characters?
Oh, that makes a load more sense. I think I'll check it out right now
Okay, I changed the variables to the way i want it to! Thanks so much
hey guys, i'm trying to create a system where you move your camera by dragging with your cursor, but it doesn't go past the branch. does anyone have any idea why?
Hello all !
Does anyone know why I can't change my "Jump Z Velocity" smoothly with a "Timeline" ?
That's what I thought...
So there is no way to make a smooth jump ?
As the "Jump Z Velocity" is "instantaneous"
I already did that but I wanted to have a more realistic jump changing the speed when I start to jump
So I set it to "flying" and the play with a "Set Actor Location" ?
Why you wouldn't do that ?
Maybe yes but that's weird that the jump is "instantaneous" =/
You may want to consider using the enhanced input system to handle your input. You can have your mouse button fire a repeated execution path while it is held to perform the required operation rather than checking if the input is down using that function and checking it on tick. My only guess as to why the branch is continually false is because the left mouse button input event you have there is consuming the input that forces that function to return false.
Because if I decrease the "Jump Z Velocity" I can't jump as high as I want
In the Gamemakin UE4 styleguide I've noticed the Macro Library suggested naming convention has a note to avoid macro libraries; does anyone know of a reason? Seems poor documentation to say that and not provide a reason
https://github.com/Allar/ue5-style-guide?tab=readme-ov-file#124-blueprints
@maiden wadi any ideas on to handle objects with the same name? Thanks btw for the help on this
Is there a way to make the 3D Widgets from a transform variable reflect the world transform, not the local transform? Or, failing that, what's the best way to go from a local transform to a world transform?
How do I add a variable property like the metadata here??
Not easily in BP. If you were in C++ I 'd say just make a local struct with an array of actor instances. Make a map of their class to that struct. Populate the struct with each actor instance. Then iterate the map and name them ActorClassName+IterationIndex
Ok I think I will stay with that x) ! Thanks a lot !
thanks my man. i looked in plugins and it is already enabled. should i do something else?
Yeah I was thinking that too, thanks 😄
so it's not recognizing the left mouse button down ?
i guess
well you can test that by putting a print string on false and true
see what shows up
thanks, but true never gets triggered
I have made some Boolean variables. I then made an array and put those variables in the array. I then shuffled and set some of the booleans randomly. How would I get the boolean value of the last index?
Aye aye
Im using it to toggle player movement in widget blueprints because I'm doing that a lot; is that a good use-case?
does false ?
if neither work then it's not running
so it's always false ?
yes
does the left mouse button event trigger above it ?
how can i test it?
first of all you should use enhanced input
2nd you should check if the actor has input enabled
with a print string first thing out of the event execution, if it shows then it's firing
also i'm assuming this is in your character bp ?
yes
it's not firing
are you actually possessing the character ?
did you set it in world settings ?
or did you just spawn it ?
i guess i'm possessing it since i can move it around?
ok so you can move just the mouse isn't working ?
How could I get all assets in a folder and put all with the format "carname-carpart-nr" into a array, for example I wanna get all spoilers for car X, it would look like "X-spoiler-01" and "X-spoiler-02" and return them?
You're looking for the asset registry, it has some functions for that.
do you have this checked ?
in project settings
found that off the googles says if it's checked might be a problem
Yes I have checked it
so uncheck it, do you need it ?
i unchecked it, i checked before to try and make it work
but now i see that it's recognized the input
so it's working
but still this isn't working, the camera stays still
so now atleast it's going to true right ?
yes! thank you a lot
i think i c your problem at the end there your setting the previous to the current
i tried it now i put current but still not working
so normally i would just get x,y on mousedown
and do the maths i wouldn't set that at all at the end
previous is actually like a "base"
that you use to calculate with the the offset
if i'm understanding what you want to do
it looks like if you just remove the set at the end there it might work out
tried it now not working 😦
is it moving at all ?
i c its probably kind of complicated math idk
ok thank you my man for the help i appreciated a lot. i must resolve my issues by myself now
probably also #game-math might know more
i don't want to bother you any more
thank you a lot! Have a wonderful rest of the day
i would start by printing your vector, see what it looks like
i fixed it
kinda
this is what i changed
it works but it's a bit unresponsive and goes the opposite way sometimes
@lofty rapids @maiden wadi just to follow up on this ... turns out my issue was that I wasn't adding these maps to the Levels outliner. Plumb did not realize you have to do that. Once they were included in the outliner and marked as streaming method 'blueprint' all was gravy. Thanks for your help!
Ah, fair. You can also spawn in a new level instance, but that is a different function.
I'll have to look into that. I'm using this setup because I have an ndisplay config actor in my persistent level and some setup stuff on my character that I don't want to rebuild between levels, so this approach lets me keep my 'forever' stuff around. Plus All my levels are sitting right on top of each other because this is basically an arcade game with a fixed POV straight through levels - you don't navigate a space.
It's a UMG (CommonUI) question, but someone lurking in here might know something that could help me so I just put a link to the post.
#umg message
Hello everyone. Quick question. I have a crate, which is a physics object. The crate has a hinged lid, which I have set up with a physics constraint. How can I have the lid be simulating physics, while attached to and moving with the main crate mesh which is also simulating physics?
It seems that if both static meshes are simulating physics, the parent/child relationship doesnt work to make the child move with the parent
stop.
no double message
you should have frame and door simulating physics
show constraint settings
specifically the constrained components and all the axis stuff
hi, i am making a sort of weapon system and i find very easy to add weapons using structs, so i created a struct where i put all the different stats of my weapon, and another struct where i put all my weapons with their values, now my question is: how can i get all the values of the pistol for example
You can "break" the struct to access every individual value in the struct. In this case, since you have a struct containing structs, you could break your WeaponsStruct and then break the entry "Pistol." The node should be called break
well yes, but i have more weapons i think it's going to be "messy"
this is a lot already and im not finished
IMO You will find it much easier to make data assets for this kind of static data. Because you can pass the data asset's pointer around to access it all without copying anything excessively, and as a data asset it is globally available where ever you need it. Then you simply make a data asset base class with that weapon data struct. And when you need a new weapon, you just make a new data asset instance in a folder somewhere.
I am working on a swimming and diving system. When I dive and surface I find that my character rotates. Can anyone help me figure out what is causing this?
Thanks!
the way i am thinking is this, so i get every stat and apply them to another variable in my first person blueprint but i want to give the struct node some sort of input like a tag or the model i am holding so it knows which stat i want
never used a data asset, what is it?
Putting the struct in a data asset would allow you to do that.
Are you aware of the concept of assets? Like assets vs instantiated classes? EG the difference between a StaticMesh and a StaticMeshComponent?
not properly
i tried making another weapon system but it was so big and clunky in my blueprint
now im trying new methods
To try to explain, a static mesh component holds a static mesh. Multiple components can use the same static mesh. This is because static meshes are all global data, you do not affect a static mesh at runtime at all. It has vertex points, and sockets, and polygon data etc and all of this stays static and unchanging. But you can put that same static mesh in two different components and display one of them as say scale 1 and one as scale 0.5. Despite that the second one is half the size, you're still using the very same static mesh asset for both.
To port this concept to weapon assets. You have a lot of data about weapons that is unchanging. Their display name, their default damage, default clip sizes, default actor class, default etc etc etc. So instead of copying all of this data every time you need a new weapon. EG if you have three weapons in the level and you're using a struct on each of them, you've made three copies of your data. And if you change your defaults, instances in your levels that you might have placed won't immediately update. With an asset, you simply have a pointer to that asset on the weapons that points to the data asset where the real data is.
Sec, and I can show a brief example.
https://www.youtube.com/watch?v=Pb0uhYoUmb8&ab_channel=RyanLaley
something like this could be useful?
Possibly, I haven't watched it.
What's the cleanest way to check whether a player is currently in a given room? In theory I could just make a BP with a collider that checks whether it's overlapping player whenever this is queried, but I feel like there might be prior art for this
What concludes a room?
Honestly probably edge of a collider? But I mean, that's part of the question really
The problem with doorways is there can always be a different doorway. Even if I had some reliable way to know whether a player was entering or exiting, I'm still signing up for per-doorway effort which I think is necessarily more work than per-room effort. So that's probably not the approach.
Depending on what you need to detect it for, I'm inclined to agree that it might be simpler to just stick a collider there and trace from way up to way down where the character is and take the hit room. Update it every so often, etc. Would be the most surefire way to know without too much hassle.
The main thing is I'd rather do it by sampling at the time I need to know, over trying to keep track of whether the player is in the space
Because you run into situations like the player dying in the space and then respawning outside it, where that tracking becomes non-trivial
never used a data asset, what is it?
Oh it's even easier than your solution, I don't need to know WHICH room the player's in, I need to know if they're in a specific given room.
Quick question: Am I able to reduce the tick rate of a sphere trace specifically? I have a slash attack that I don't want hitting for every single frame but I don't want it hitting just once. Ideally every few frames it hits.
Sorry if this is too vague a question!
Not specifically, no. Traces are instant. The way this is normally handled is that you would trace a little bit each frame and maintain the state of the attack while doing so, so that you don't apply damage to the same target multiple times.
EG if you use a Gameplay Ability. On start you can play an animation montage, get the weapon's sockets for your traces. Then each tick, you'd trace from the last location to the new location for each socket, You take all hit actors each frame and compare them against a set or array of actors you've already hit. If they are not in that list, you apply a gameplay effect, and add them. On ability end, clear the array.
Other implementations simply put colliders on the weapons and handle the same thing on overlap, but in the same manner.
Thanks for the info! I will look more into the things you've mentioned but might just toss a miniscule delay in for functionality right now
You should be able to. Can you show what you are currently doing with the spawn logic?