#blueprint
1 messages Ā· Page 87 of 1
how to change gravity scale for actor?
Basically I am trying to output a string: 22/01/2024 22:59PM
Thanks so much mate
For loading a game I am meant to loop through the game slots to list them?
depending on your design
I basically want a widget with all the slot saves in it
so I can click them to load it
I am working on an appearence system, and it works by me having 4 different struct variables in a save game blueprint (BGS_Appearance)
I then call a function called "Save Appearance" to set the different structs before saving the game to the slot
However, for some reason, only one of the structs actually saves properly, while the rest are just empty.
yea that's pretty easy
you can have a save file that contains all of your slot
everytime you create a new slot, just add to it
you can get the save file that contain all of your slots then display them on the widget
How do I load the slots to the screen?
@tranquil lagoon I hope that's not BP struct, you will end up corrupting your project sooner or later
When you get an infinite loop message and it takes you to this... UE is so helpful sometimes lol.
What do you mean BP struct?
Is the struct declared in blueprint or cpp?
It's a Blueprint?
Yeah
Is that a problem?
Really? That sounds very weird that they'd not fix it?
they still haven;t fix it, problem presist
Whats the problem
All types of problem, mainly corruption
it's like taking a walk to minefield, one day it just stop working
there are victims at least every week
editing bp struct especially making it prone to break it
if u need to add more member variable for example
sometime it just get corrupted and you can't compile your project anymore.
If you don't ever change anything on the struct once you start using it you'll probably be fine but the moment you want to add a new var, rename, change type etc... you need to perform a sacrifice.
I still use BP structs but you just need to be careful with them. Especially if you have a lot of vars in them.
hey guys, quick one about best practices:
When you have "Event BeginPlay" it can only produce one Exec noodle. Meaning I cannot connect it to two distinct sets of behaviour simultaneously. Is the best practice to connect it to one set, and use the final exec event's noodle from this set to then connect to the other exec event of another behaviour or to use something like a sequence node?
It doesn't matter. Which ever is the easiest to follow.
All though with you asking, i can only assume you have some sort of monstrosity so a better question might be how can you make what you're doing more efficient. š (less nodes)
Out of curiosity, what are you doing? lol
Nothing horrible. Lemme screenshot it for you
Wanted to keep the input mapping of the controller intact for beginplay
but also need to loop over the trigger boxes in the level (which this controller will always be part of) to turn the character by 90 deg either way based on which direction the player hit those
the hits need work, they are a bit wonky so I need to math it out
but overall this seems to do what is needed
so what are u worried about?
if it looks too cluttering, just collapse them to nodes
Not worried, I just wanted to know whether what I am doing now goes against best practice or if it is okay. And whether a sequence node just after begin play is a preferred method over what i am doing
If I had another set of behaviour for the beginplay then id probably seq it, but atm if this isnt considered stupid then ill leave it
Yea that's not bad. Personally, I would make the Custom Event a function (unless you need to rep it) and use a create event node for the bind (selecting the function). I'd probably then collapse the whole loop into a function. Some say not to use functions for things that only get called once but meh... I priorities readability lol. I don't know how long it'll be until i return to it.
Added your message as a comment above it. When I tidy up ill try to do that
Atm just trying to not fudge up too much along the path to being less of a idiot
Still getting used to how stuff works in unreal, so all of this is kinda new.
Don't use functions for things that only get called once. Use collapsed nodes with a long descriptive name
much more readable
public static main string void args

Dont tempt me
I'm not a fan of collapsed nodes so i wouldn't say it's more readable. š
Im trying to avoid diggig into C++ side for as long as I can. I enjoy writing c++ but never wrote a line for unreal
I think i wouldn't fare better than BP at this stage
Nor does it need it atm
I think
collapsed nodes are wonderful. BPs are good for writing, but suck for reading implementation details. Ergo, hide the implementation details and let people just read what the code does without reading how:
The thing with collapsed nodes for me personally is it encourages hiding the internals
you can also make great use of negative space for branching:
That's a good thing!
like if its a huge graph inside that node - it makes sense to hide it. But if its stuff that isnt too bad, I personally prefer everything at a glance
you only want to see internals of a thing if you're double clicking into it. and if you're double clicking into it, its the only thing you want to see
the level of abstraction is for you to decide
This is coming from someone who avoids OOP as much as possible
though the smart people say, one of the bp downfall is that it become spaghetti rather quickly
I am not a fan of abstractions after certain points nor the way inheritance is done these days
what are u talking about. BP is also OOP
its a personal thing
you don't want to hide a "huge graph". hiding graphs because they're big is wrong. Hiding discrete tasks is what you want
Sure, but you dont get to choose the starting point. You get to only increase the abstraction
collapsed nodes are not abstraction, they're just organization
And also - I did say "avoid" which isn't always possible
i agree with this, though probably not qualified to have opinion on the matter
Well they visually abstract the inner workings of whats inside until you dig into it
again, its a PoV thing
š
Yea but i look for stuff using function names that are in categories. Much easier for me to find what I want.
if something is used only once, you don't need to ever look for it. Collapsed nodes are for hiding implementation details, not creating functionality that will be reused ever.
storing a bunch of one time use code details in function names just to make your event graph less spaghetti means you'll have a cluttered name space
Hey does someone know why this bool isn't getting changed even if it changed from false to true even tho its being made true before its gotten
They are both from different BP feel free to ping me
I feel like I started a war
its all preference
you like what you like, use what you use
s'all good
But I might end up using it again. Who knows what I think of in a weeks time. Adding to that, bugs often arise and in a lot of case I'll be 'Oh that'll be X in such and such function'.
then it should become a function at that point
I have a issue with physical surface. In editor, enum to string from Surface Type give me Metal, but in dev build, its give me SurfaceType1, any idea?
Just think of all the accidental duplicated code that's been collapsed away and forgotten. š
it's not really all good though. People often malign tools that are beginner friendly because 99% of what gets made in it is made by beginners with poor sense. That's not a good argument, because if the tools were not beginner friendly, nothing would get made at all. But that's still a sign that one should strongly encourage the best practices with beginner friendly tools.
Well you are certainly entitled to that view. Im okay with that
No gripe from my side
I can't see how this is any more likely than someone writing the same function twice
unless they collapsed poorly
your execution pin goes from tick to get all actors and then stops. so every tick it gets all actors and does nothing
white pin is execution pin. It shows what order things get done in. The rest of the pins are just data flows that could get used if a node gets executed that needs them as input.
Don't connect nodes like that
enums lose their string values outside the editor š
fak, any solution?
dumbest, quickest solution is to just pipe it through a map that spits out the string value you want
well yea I think so :/
probably you can be cleaner about it doing something like a switch on enum value but it really depends what you're doing and how built up it is already and how annoying that would be to change
hey all, i was wondering how i would implement a group spawning system. i need to spawn packs of enemies around the player. would i iterate through an array of actor classes or create blueprints for each individual group with the enemies being child actors? any ideas welcome
definitely the first
kk cheers ill figure something out
If it's as simple as spawning each element from an array of classes just do that. If you need more details, probably make a struct to represent "group spawn data"
mine looks like this: ```cpp
USTRUCT(BlueprintType)
struct FEnemyWaveCard : public FTableRowBase
{
GENERATED_BODY()
UPROPERTY(EditAnywhere, BlueprintReadWrite)
TArray<TSubclassOf<AUnit_Base>> EnemySpawns;
UPROPERTY(EditAnywhere, BlueprintReadWrite)
int Cost;
FEnemyWaveCard()
{
EnemySpawns = TArray<TSubclassOf<AUnit_Base>>();
Cost = 1;
};
FEnemyWaveCard(TArray<TSubclassOf<AUnit_Base>> inEnemySpawns, int inCost) {
EnemySpawns = inEnemySpawns;
Cost = inCost;
}
};```
structs are a good place to dip your toes in cpp
yeah i figured it out using bp. i have my array of actors stored on the game mode which can be updated by player level and map location, just does a random point in navigable radius from the player location into a for loop which has another random loc and the spawn function. everything random is from the character's random stream
ty
I am trying geometry script, does anyone know how to get correct collision mesh without baking it to static mesh?
One message removed from a suspended account.
@dark drum For your ultimate dialog, I'm trying to make it so when the objective is different, the convo between player and NPC is different, and I duplicated some things including making a Switch on Enum_DialogState2. However, the "Add Dialog" node's state is unable to be dragged into the selection for the switch on 2, but it could for the original one.
I am not sure how to fix this.
So is it possible to loop through all saved slot files?
Nope. You need to know the slot name before hand. You can make a naming scheme like "slot1, a
Slot2...ect" if you want find all the saved files or something
what variable type do I need to access these assets?
cuz I know this is the type, but I have no idea how to manually create a variable with this type
you can't really, a workaround is to use a load level node, drag from the world input and promote to a variable
time to learn C++ i guess :>
some people earlier were telling me that I could use c++ to get it somehow
but
wouldnt that mean i'd have to rebuild the entire project?
with VS?
š¤·
do you know how to do it in c++?
someone said it was TSoftObjectPtr<UWorld> Level
yea that sounds about right
what do you do with that?
you put it in a C++ unreal struct
would you mind showing me how?
I have VS installed
with all the c++ prereqs
this is a blueprint project tho, no cpp yet
create a header file MyHeader.h
#pragma once
#include "MyHeader.generated.h"
USTRUCT(BlueprintType)
struct FMyLevelStruct {
GENERATED_BODY()
UPROPERTY(BlueprintReadWrite, EditAnywhere)
TSoftObjectPtr<UWorld> Level;
};
#blueprint message (that's what people were saying before, but idk how any of that works)
if i didn't make any syntax errors it should compile... (and you should see MyLevelStruct in blueprints as datatype for variables)
where's that in the add menu?
create the header in VS
i don't know how VS works on windows, so no idea
it's important to note that you should compile C++ stuff always when the editor is closed for now (until you learned enough about live coding (see the pinned posts in #cpp))
I mean like, does it even matter if I use VS at all? or can I just use any text editor?
you can just use a text editor, but you still have to invoke the unreal build tool somehow, so that it compiles the source
For reference, I know c++, but not unreal's cpp at all, Ive only ever worked with bp. I just have the prereqs installed
Ive never used it
would it be like, here?
Is it possible to loop through an array var and add buttons for each loop to a verticle grid in widgets? Creating buttons for each array result
yes
Hello everyone, I'm seeking assistance with retargeting a third-person character skeleton to a custom skeleton. After organizing and naming different groups of bones and ensuring the same chain in each IK rig, I proceeded to retarget them to each other. Everything seems to be functioning as expected, except for the arms which appear as if the character is restrained with hands behind their back.
I've attempted to adjust the retarget root to different settings in the hopes of achieving a different outcome, but unfortunately, it hasn't resolved the issue. My knowledge on this topic has reached its limits, prompting me to reach out for help. I appreciate your time in reading this, and any assistance provided. Thank you.
did i forget to enable GenerateHitEvents?
nvm
Hi - so can you help me with thi
is it possible to return a vector of the average center of a material on a static mesh? I'm trying to input the material id of a static mesh and then use the center location of the material to linetrace to the player.
how often do you do this
you don't need the average of every vertex
you just need a point
it's better to just add a point in your blueprint and get that point or to have a (fixed) offset that you can adjust if that's needed
if you absolutely do not wish to store a point into your actor or if you want to calculate it to store it you get the the edges of your bounding box and take the middle of those
you can't loop through seperate vertices of a model to calculate their average position in bp
I need it just a single time, the location wont move per instance.
In a component I am inputting a ceiling static mesh
I get length of material element index
for loop through the meshs material indexs
if material equal to specific material name
return global vector
from there do a bunch of stuff to see whether or not the player is looking towards that vector, linetrace for if player behind wall, close enough distance and turn the light material on/off
I'll be going through a lot of ceiling lights, thats why I made a component out of it for each ceiling mesh.
Then in another 3D software I can assign each ceiling light to a seperate material ID.
I'm trying to using only lumen/emissive materials to light my interior w/o any other light except for the player so this is my best solution to optimizing.
Why is my blueprint of the same class type of this variable not able to be selected in this variable?
im dumb and i get it, i was not passing it a reference, i was passing the static class. so i needed to create/construct a new object of that class then i pass it to that variable.
Is there a simple method in blueprints to make an APawn "materialize" or fade in over time? I know little to nothing with animations and not enough of Blueprints to know what to do exactly. Mainly just C++ coding on my part
Hi, I'm facing a strange problem, when I play the project with two players the server player camera start looking to the horizon, the game has basically no logic running, It's only a pawn with a camera and two player starts on the scene
For #multiplayer you want to ask in that channel
Oh, ok, thanks
anyone know why im gettting this error
Blueprint Runtime Error: "Accessed None trying to read property VendingMachine". Node: Spin Machine Graph: EventGraph Function: Execute Ubergraph Sound Button Blueprint: SoundButton
Yes. You didnāt properly set whatever VendingMachine is
Or rather the object it belongs to
these are some images of the code if that helps, im pretty sure i have it assigned there from my button blueprint which activates my event in my vending machine blueprint
Where are you setting VendingMachine?
uh im not sure why it isnt working, i have the vending machine plugged into into spin machine
is there something more i have to do than that?
So nowhere
What is this vending machine variable
my vending machine blueprint
and the event is spin machine
which is in my vending machine blueprint
So youāre trying to communicate with another bp?
yes
Does it exist in your world? Are you interacting with it?
Ok, so you canāt just create an empty variable of that class, you need to get the instance
like the first picture is from my button blueprint
and the second picture if from my vending machine blueprint
and im activating the button blueprint my from first person bp with a button interaction system i have setup
You need to use a line trace or an overlap, get the hit actor, Cast to your vending machine bp, then grab that return value and promote that to a variable that you can then name VendingMachine or w/e
And watch the bp comms live training at the bottom of the pins so you understand how this stuff works
does get all actors of class work and plugging that into my function?
anyone know how i can make this spin an additional 90 degrees each time i interact
so it turns 90 degrees stops and then when i press my button again it will spin another 90 degrees from where its at and repeat
Maybe a blueprint method like AddRelativeRotation?
ooh ok do you know how i would implement that with my timeline so it goes smoothly?
I've never worked with timelines, but I would assume just adding the method connected to the "Update" node on the timeline would be fine. Also the method for actor would be https://docs.unrealengine.com/5.0/en-US/BlueprintAPI/Transformation/AddActorWorldRotation/
alr thx i see if i can get that implemented
Im currently running into an issue right now where ive enabled simulated physics on certain bones so they droop, but they do not move or droop down. I have the bone names correct, any ideas? thank you
I think you would want something similar like this, since you are using that Lerp method there. Just change to use Rotators instead of Transforms (I just took this example from internet)
ok thanks
So if I'm trying to make a game where you can unlock abilities as you go on throughout the game such as dash, energy shield, etc. would making a Master Blueprint Component (similar to whats mentioned here in 2018: https://forums.unrealengine.com/t/most-optimal-method-for-unlockable-abilities/424676/2) be the best way to do it or is there a better method you all would recommend?
let me introduce you to the well beloved https://docs.unrealengine.com/5.3/en-US/gameplay-ability-system-for-unreal-engine/
but idk how usable that is with blueprint only
Yeah I was debating if that was going to be worth it. I'm just trying to make an interchangable abilities (to be binded to different keys and swapped) and I think GAS is the way to go but I was hoping to stay with BP.
Also its a 2D game so again, idk if its worth it? Might be overkill
anyone know how to make it so when i click my button twice before the timeline is fully finished itll like continue to go to the second rotation location, kinda like most games have it when ur interacting with a button u can click a few times fast before it's finished and it'll make you move like 3 tabs over or something for a menu. So like if i click once itll rotate 90 degrees but if i click twice fast before its fully rotated itll rotate 90 degrees twice to go the second position
Depends, itās a lazy way doing it and kinda overkill if you only have one vending machine. And silly if you only want to interact with one machineās function instead of all them
Take the time to learn proper bp comms, you wonāt get far without it
I think you can use the Set New Time pin with a time input to skip ahead
hi, why does this stuff appear when i try debug viewing a line trace?
sorry, here
is this a bug?
does anyone know of a way to test collision against something without using Generate Overlap Events? trying to do a building system, all of the objects have a box collision for their size, but unless the object they're colliding with has Generate Overlap Events on, it can be built while clipping
What do you mean by reached amount? Amount of what?
yeah nevermind i was just being dumb
Yes. UE uses the metric system. I'm pretty sure the velocity vector is per second.
Not sure what this logic does ?
Even in theory
You can use the get overlapping actors/components node. I believe this will still populate regardless of whether generate overlap events is enabled. You would need to come up with the logic to use and handle the data though.
There's lots of ways you could do it. Reducing gravity during the wall run is a perfectly valid option.
I'm tryna get the rotation speed of the spring arm, but the rotation does not go beyond -180 and 180, instead it flips and messes up the interpolation I want to achieve on the camera
I would use a rotator and use rinterp.
you mean like rotation variables?
Yea.
hmm, lets see
If you have a yaw value of 170 and combine another rotator with a yaw of 30, it'll wrap to -160.
Well it will when it's applied. Rotations can be a little finaky but using a rotator helps.
Hi is there a reason why the sound keeps playing?
Does play sound somehow make multiple instances or sumthn?
Yes because the delay doesn't delay the for loop. The stop sound is called before the sound even starts playing.
you sure? if it doesn't delay the loop wouldn't I be missing some loops? because that's not the case afaik
nop, still the same issue, not going below -180 and above 180
Hello everyone
What I wanna do is spawn a bunch of collectable items in different locations without repetition from an array of locations I already made.
I tried shuffle and many other solutions, but it doesn't work as intended and sometimes it still spawns more than 1 item in the same location (which is not what I want)
BTW this is all done inside a spawner function which I call many times to spawn the items.
How can I do that?
Yes, 100%. Every thing after the delay just gets called X amount of time after the loop has actually finished.
maybe remove the location from the array when an item spawns there?
I tried removing the array item after it was spawned, and the issue still persisted (I saw someone on reddit saying the same thing too, that it doesn't work)
will test it again just in case though
You need to store the random int in a var and use the var. Using the same random int in range would just make it generate a new int and remove the wrong one.
You mean storing the result of random integer in range in a variable?
Only once , but yeah
Yes.
Rest of the loops are ignored
Oh sorry. I even misread what you said
X amount of time not X times
It happens lol. I do it more than I care to admit haha.
Ok, so where do I use the var?
Should I remove an index from the array element using it?
Use the var for the int on the get and when done remove index from the array.
Also, you might want to set the max for the random int to be the last index of the array so it always stays in bounds.
ok, so it turns out that RInterp To is what flips the angle between 180 and -180
setting the rotation speed without it actually gives angle values beyond those
What is it you're trying to achieve anyway?
Ok this is probably it
Will test it and see if it works
I wanna make the camera rotate further away from the spring arm depending on the spring arm's rotation speed
Yea that'll work. As an extra tip, get your array, pull from it and search for get last index. š
What triggers the rotation? Player input?
heyy guys, what is better for aim offset? with animations of procedural method?
You'll probably get a better answer in there.
tho there does seem to be a bit of snapping when reaching a certain world rotation
right, because the spring arm is still limited to -180 180
this is how I'm rotating the spring arm
Shouldnt be much snapping because of that specifically
Its just normalizing the rotation, nothing else
the way it snaps is, it quickly rotates back a few degrees and then catches up with the rotation speed
wait wha... after I connected back the first RInterp To node, the snapping is gone
nvm, it just keeps flipping between positive and negative angle....
Right now it's working well without spawning duplicates on top of each other
BUT when I'm trying to spawn 6 collectables, it sometimes spawns 5 or 4
Did you swap out the max integer range for the arrays last index value?
also I tried printing the "random integer" and it sometimes prints 36 though it's not in the variable or within the max min range
Nope sry
didn't understand this honestly
will give it another shot
huh, look at that huge jump when it reaches that world angle
what else could I be missing
is this what you mean?
Hi guys, I'm new to unreal engine, why do we need to attach the x roll axis on movement when we only need the z yaw axis to rotate towards where we are looking? I have watched a lot of TPS tutorials using this approach. But I decided to detached the connection on x roll axis, the TPS controller seems fine. Help me understand this.
Oh.. I ended up just rotating the Actor for some reason
Its an RTS so doesnt matter much in my case
using RInterpTo
Yes
I need to get constant rotation speed without getting that jump in angle when the spring arm gets its rotation flipped
IT'S WORKING PERFECTLY NOW!
Thank you, thank you so much. I've been stuck on this for a few days now and I almost went insane lol
One question though:
Why is it working now after swapping the max integer for a last index?
@dark drum
I thought my setup earlier was technically correct.......
Because your initial setup didn't account for any changes to the amount of values in the array. If you added a few more you would have had to make sure you updated the max range value as well. Using the last index method allows it to do it automatically. š
but I did remove an index from my array, so if my array had 36 values (starting from 0 to 35), doesn't that mean after using "remove index" it should make the array have less values by 1?
Or does it leave that index empty instead of removing it?
This is really confusing
here's what I was talking about
The issue would have been the 'Max Interger in Range' value. If this was set to 10 but there was 30 elements in the array, it would still only spawn 11 items. (including index 0) Using the last index just means the max value would always reflect how many elements are in the actual array without having to manually update the 'Max Interger in Range' value.
What may be easier is
to make a local copy of the array (if you need the original array for something else),
then shuffle it
and just pick the 10 first indexes
(or 10 last ones, if you're removing as you loop it)
Ok so I rewrote the max part now and used decrement instead of minus one, and it works perfectly all the time.
Yes, this method is a bit destructive since you would need to change the max value if you add more elements into the array (which I wouldn't do anyways). But at least I got it to work and will be able to sleep without thinking about it šš
Will use the last index method now
Thanks for the help Michael ā¤ā¤
I figured out the obvious
I'm so embarassed....
and to make sure the camera rotates back to 0 smoothly, I use Event Tick
Thats what i did aswell,
Its important enough and must be updated per frame for smoothness so š
now to give the mouse input a deadzone to avoid value jumping
if I move the mouse around fast enough, the value will jump like this
oh... I can't clamp the deadzone higher than 1
looks like I'll need to use a clamp float node instead
Hi, I have made this blueprint that spawn Instanced static mesh components on a spline. Now when I bake the lighting of this the shadows are all the same instead of each having their unique shadows. Am I using the wrong node for doing this job?
Where do you add a new instance to the component?
What is best way to get angle to target actor? I would use it to check should AI turn left or right. And if player is between -45 and 45 it doesn't turn at all.
Show how you do it.
You can do a look at function, and the forward vector of the ai/camera, and do a === between them with a tolerance of 0.25
There are cheaper look ats in this case since we dont need rotation
So no look at, but V2 - V1 normalised
GetWorldDeltaSeconds
hi guys, just a quick question, when you create a new index in an array by mistake, is there a way to delete only this index in the array ? Probably a dumb question but I can't find how... thxs
Hey devs , please help it is a spaceship and what i want it when i release the Thrust button i want it to stop slow and smooth , i am definetly missing something with this VInterp node could you please correct me ?
Hey guys I have a widget switcher for my main menu map where I have the title menu and the main menu as 0 and 1 but when I come back from singleplayer map I want the widget switcher to go to 1. How would I bypass 0?
so this would take me to main menu instead of the title menu
You could do it through game instance
Or by using open level options if main menu is a separate level
How would I go about it though? I would like to do it by Boolean BackToMainMenu but donāt know how
hey guys, I am trying to implement controller support for menus and I figured out that if I do "Set Focus" with a button, it does allow me to go down and up with my controller or key arrows, but all I get is this vague highlight on the edge
How can I make it the same with the hover functions that highlights the button when I move through the buttons ? (second image)
Did you fix this? I am having that issue with my leg staying up after a kick
I suggest flexibility exercises
y u ping me from 2 years ago š
You can see why ahahah
ofc i fixed it but i dont remember what i did
alr
Hi, I'm facing a strange problem, when adding inputs inside Controller it doesnāt work while when adding it on the Pawn it works normally:
Could be you're not actually using the tank controller
Verify the event tick is being called
No, it's being called
I have a blueprint that can execute various scripted anim montages+effects, kind of like abilities (from a specific actor). The player controller should be able to execute these through a function.
Is there a way to make a local enum of sorts? I want to make it so that there's an input variable on this function that decides which ability is fired. Is there a way to do it without having to create a "global" enum? Rather than having a switch based on a int or something
i don't know why i'm hesitant to use enum anyway. I just have a ton of them and suspect i'm using it too much, but shouldn't matter the least i guess?
Have Thrust just change a variable, and use that variable to change your speed, and use your speed to change your position, just like every other movement system.
Thrust isn't speed, thrust is RATE OF CHANGE of speed.
Input -> set Thrust
Tick -> Velocity += Thrust + Drag(however you want to do your drag) -> Position += Velocity
You can skip the input event and just directly get the thrust value in tick if you want, that'd be a bit simpler.
A decent simple drag system is just Drag = SomeNegativeNumber x Velocity
im trying to stop the camera from moving whilst crouching, why wont this work please?
What moves your camera usually?
its the default third person, so the capsule? ahhhhh
because crouch has inbuilt code to move the camera?
you need to instead either NOT modify ControlRotation when crouched, or have the camera boom ignore control rotation when crouched
no
has nothing to do with crouch
Thanks
hey guys ,when i start the game this InputAxis functions got automatically called returning 0 all the time , why it might happen and how to fix it please ?
that's normal and expected
an input axis runs as a ticking thing
when you're not moving you're moving with a value of 0
Anyone know why I'm getting the error in the image? The reason I'm asking is that I get the error, but it works the way it should and even trying to log the value through the AnimationBlueprint works.
when do you set it ?
It is part of the health component on my player and it's set to false from the start, or do you mean where in the anim blueprint?
hmm
Like here it were it happens:
is it your player reference that accessed none, or the variable ?
The weird part is that the velocity and all seem to not give me the warning, only the "health" variable.
That is why I'm a bit confused.
hmm
That above but also that it works and does what it should + prints the correct bool value when being printed.
any built in functionality for copying all the components from one actor and putting it in another actor? (property values included)
First off don't call it a player reference
is it a pawn? A playercontroller? who knows
Could anyone please help me with implementing a post process effect when I press a letter key? I have a vignette effect which I want to take effect on my screen when I slow down time. I know there's some scalar/vector parameter function but it didnt work for me
My naming is player for the top (player blueprint) otherwise it's playercontroller, etc.
I'd call it MyPawn or MyCharacter if it is one
Is the blueprint simulation visualization broken in 5.3? I have a blueprint which triggers a debug print when a key is pressed. I press the key and the message appears, the blueprint shows it's in "Simulation" mode, with orange borders, but it is not showing the nodes execute as it does in 5.2
Looks broken to me.
Select a debugging object
ah, is that new? didn't have to do that in 5.2
I think itās been around for a bit. I rmbr not having to do it either, at some point
There are no selectable options in that menu, it also says that if none is selected it will debug "any"
and the debug print appears.
showing that something is executing this BP
You need to hit play first
yes I hit play first lol
Weird
PIE began, player controllable as expected, hit the key, debug message appears, no blueprint visualization
Yeah im calling this crap a bug.
No, I mean hit play and then select debug object
Then on the next execution itāll rmbr it
still no options in the debug menu after hitting play.
They have really let the quality slip after 4.x
That is odd behaviour indeed
constant regressions
looks like it might just be a bug with the ability system blueprints, because I made an empty actor with a scene component, and hooked a debug event to BeginPlay and it shows that
i am trying to disable the camera from going down when the player crouches, where am i going wrong?
i think i got an idea of how to use materials on procedural meshes . i should use Vertex Colors.Okay I figured it out well at least in theory .Bassically I need to take my vertices and makes groups of them than create a mesh section for each group and apply a different material on it . It can work with squares but I wanted to make it more complex maybe by using vonoroi noise
To what is your camera boom attached to is it on your charater mesh ?
So you're saying that when you crouch your camera moves down
Do you use the mouvment component crouch or is it just an animation ?
yeah thats right, that's normal because i set the half-heighti just use the regular crouch function
i read the crouch function moves the camera
any idea why the other cameras are not showing up on details in the outliner?
Try to verify what setting you disabled on the ones you can't see it s maybe also why they are highlighted in yellow
The other ones are not set to active, but i'd still like to see them. I need to be able to adjust their position in the viewport accordingly
One option would be to keep your camera to the same height by changing the camera boom offset on the z axis when you're crouched
Guess those can be a bit special
Should still work but ypu got stuff with the instancing policy etc.. may cause some weirdness
Hello guys,
I have considerable experience in Blueprint. How can I take myself further in animation and physics?
Personally i never trust the bp debug mode anyways. It can straight up lie
Fr
sort of like this?
Like procedural animation and stuff ?
definitely Special
special and outstanding.
Yeah try it out and tell me the result
not the good outstanding though, The outstanding that your drill instructor talks about
IK, Climb, Vault, Push-Pull Mechanics etc.
it does move the camera but its a bit hard to find the exact value to move it
Can someone maybe tell me why this isn't working?
the interface is working right but it won't spawn the decal on the location provided.
Thanks.
Check "Receive Decals" on your actor
@dusk saddle its the rotation man, i spen weeks working with decals
I do that for my material system and it works great.
I use the R channel of vertex color to do my masking, and use material layers
wdym
Decals are one sided
You create a decal on a surface, but maybe it is reversed.
Sorry for my english.
np let me look
try ue get foward actor, worked well on my fps game
Check out my Patreon: https://www.patreon.com/user?u=60713904 Like what i do and want to buy me a coffee? Now you can! https://ko-fi.com/bluntstuffy Big thanks š Join the {GDR}; Discord server and you get to watch video's early, and download my project files: https://discord.gg/dUm3ZtYDuV
Please leave a like if you enjoyed the video, or learn...
How ? Do you have a tutorial or something I am not really good with materials
my man, use a variable lol
yes. but I just want to spawn a text decal
that vector node spaghetti is nuts
hello everyone
not firing from a weapon
hat for?
visuallly satisfying though
i know it was when i was just starting out and kept building on it
It's gonna be expensive too if you do the calculation every time rather than setting a variable
yeah its old code, i was just showing someone a node
Does anyone know who would an "Enhanced Input Local Player Subsystem" return NONE, (null value) ? it's been driving me nuts for hours now
UE 5.3, EnhancedInput set in project settings (by default)
PlayerController on the input side is not null, i checked
i still dont know why its not keeping the camera the same?
does it work for the client?
i got that working, but feel its bad practice to do it such a way
So what are you trying to do here? You want to stop the camera from moving down when the player crouches?
yeah, the above works perfectly, but dont think its a good way to do it
well if it works it works. But this will break if you change the height of your player.
guess I did something LMFAO
hes always going to stay the same size
then its fine. Don't worry about it
well, I can't tell. A.K.A i don't know how to tell... I'm new to UE, coming from Unity
so far, I can say that when I run the game as client, I spawn the vehicle, then I hit F to enter it, the function on server triggers and gets the player controller to possess the vehicle pawn. Then there is absolutely no control over the vehicle, no mouse/camera movement and no driving controls. basically it does not work at all.
Using the following :
- ThirdPerson mannequin and using its BP "BP_ThirdPersonCharacter" (default one from 3rd person project)
- Vehicles from CitySampleVehicles on the marketplace , using its "BP_Vehicle" file from which all car variants inherit
I have also set :
my own "BP_GM" game mode file, this one has the Enter_Vehicle function
my own "BP_PC" player controller file. this one hits F to enter the vehicle, calls the GM function on server
my own Game state and player state BP files but for now no content in those
When I start the game, the server spawns the ThirdPerson pawn, the player controller here works great, I can move and jump with no issue. I can spawn a vehicle ("V" keyboard key), then hit "F" to enter it, the camera ecnters on the vehicle as I possess it, but then I cannot move at all. not even camera view . on exiting the editor play mode, I had the error saying that "Add Mapping context" node had bad input. After digging here and there, I found the output value of input node to be the issue
So i found this in the settings of the decal
and then I used a divide node
it worked
So you must be doing this with the third person character for that one to work. Can you show that code?
I'll show you all BP files
BP_ThirdPersonCharacter
BP_Vehicle
in the BP_Vehicle, I only modified the "Event Possessed" chain
not sure why nothing prints. the trace turns green and shows its hitting... does anyone know how to recieve a trace?
OnPosses only called on server
Yeah okay. My theory is that "Enhanced Input Local Player Subsystem" doesn't exist on the server, only the local client.
"Event Possessed" is a server-only event, so you won't be able to access "Enhanced Input Local Player Subsystem". Instead try putting an "owning client" RPC directly after "Event Possessed" then doing the same thing you did on the third person character.
I use acknowledgePossesion to setup input mapping context for clients
That one is called on clients
is that a blueprint or cpp function
This probably work too.
The nodes were already there, is it perhaps because the VehicleSample package is not "network ready" ?
I dunnoe, I used cpp for the override. Would be surprised if it's not callable in bp
Don't make sense to me to setup input for the client in the server machine
Just do what lemon says
You can try this.
Make a function in your character. Call it setuo input. Move your add input there. Make the function an owning client rpc
On posses, get the controller, get the pawn, cast and call the function
Probably on component hit? You are doing overlap btw
Not entirely sure since I never done it
it'll work fine if you play singleplayer only. But if you want it to be multiplayer, then it isn't ready
Do traces create hit events? I'd assume not
I have no idea
neither works
The package is there to showcase vehicles with ChaosPhysics and stuff, I guess it wa smean to be a standalone version
U tested it?
yep
Print string hit comp
So wat is that on hit for event for then?
Well that's Ur issue if u got nothing
Make sure the comp is hit by the trace
Well when u trace did it print your comp?
no
Get hit comp -> print
i need to print from the hitboxes BP not the trace
so the thing getting hit needs to print
not the thing hitting
Well make sure the trace actually hit the hit boxes bp component
it turns green for a hit so im sure its hitting the component
it's hitting the component, but the component likely doesn't realise yet
If it isn't triggering hit events, then you've got your answer
Maybe check detail panel and tick generate hit or something like that
i dont understand your point
If there is one
I dont think either ColdSummer or I know the answer, is what I'm trying to say
oh
Yeah why are you doing this? Is this for testing or a mechanic
Doesn't seems to relate to trace but I dunnoe
when hit
Okay, flip this around
typically when you are handling a damage system using traces you will do all the code on the trace's side
You will cast out a trace, the trace will hit something and whatever casted the trace will decided if the thing the trace hit is something we want to damage. If it is, then "apply damage"
You wouldn't do it the other way around because not every linetrace is going to be a "damage" trace. Sometimes you might just want to check if something is there. Therefore, it's best to let the trace decide what to do
I could do it that way and i just might
but i wanted the tank to recieve the trace
oh well
You can probably call function or use interface?
If hit actor implement interface, call function interface and pass the hit data
Just a thought
the trace could be hitting 100 diffrerent things
then i have to do a check for everything in the trace BP
This is not as bad as it sounds
Only the one that implements the interface
I have some spline points that are made programatically. I set their Point Type to Curve, but the tangents do not appear to update. What's the correct way to get these to automatically update their tangents?
There are dozens of tutorials on youtube about interfaces
yeah ive watched many they confuse me a bit
Especially for damage imo
You want to damage a tank and a barrel
Each can implement damage differently
so bullet travels. boom hit. the bullet calls the interface.
and the tank implements that interface
I am not sure where to ask this, but does anyone know how to make a camera bop and weapon bop like in forgive me father? (https://www.youtube.com/watch?v=3W39GAEFnIk) It's a great boomer shooter, I am currently making something similar as a private project, and I'm not really familiar with the camera and timelines. I love the movement in this game, and I can't seem to figure out how to replicate it or make something similar.
Check out the action-packed launch trailer for Forgive Me Father, a dark retro horror FPS. Inspired by the novels of H.P. Lovecraft with a comic book twist, Forgive Me Father's world is teeming with terrifying monsters. As the last person standing with their full senses, it's up to you to work out what's going on... and survive.
Forgive Me F...
(I also have sprites instead of 3d models for the weapons and enemies
thanks
ill give it a shot
It was confusing for me at the start but once you understand and practice. Interface is very straight forward
okay i think i nearly got it
You can use a camera shake for the camera bob. But the weapon bob is much harder. A lot of people use animations for weapon bobbing but you can also do it programmatically if you dont have animations for it. It'll involve constantly updating the gun's relative position while you are moving.
"apply damage" is already a thing thats set up for you
But if you want only specific actors to be damaged, then this is perfect
i need to make my own
the tank has multiple hitboxes
different damage types
all g
unreal handles damage types
All of these are features in unreal damage handling
But it's as old as dinosaurus
I never used it my self but I know it's actually borderline deprecated
And just straight abbandoned
is it? first i've heard of it
That's what I heard from other
We getting upgrades to old system
Mover 2.0 in 5.4
Yeah, it "works" for ultra simple health points basically, but it's not something they are adding to. you can think of it as "complete"..in a way but mostly an old way.
altho its nice to have unreal have built in stuff. i like to make my own functions in this case
id rather not have empty pins i dont use in a function
when my system is so much more simple
its just passing floats
Thank you guys for the advice on local vs server input system implementation. I am still trying things out, haven't tested it fully.
Out of curiosity I did the following in my ThirdPersonCharacter BP file
based on this , The pawn exists on both server and clients
so I'd expect the chain to run twice, on the srver and on the client ( I have 1 client only in editor )
how to spawn widget inside another widget using Blueprint?
AcknowledgePossesion is a function in player controller that is called by the server on clients.
Adding a custom event here not gonna do anything
since the POSSESS is server only, i'd the nexpect it to run only once, the client side won't run it
Try what's suggested earlier
Lemon is telling you to call a client rpc On posses
you seem to have accidentally sent this into chat instead of google search
This still run on server only
check the logs
Yea nothing suprising
U are creating a custom event, not overriding acknowledge possession
K then do the other way like suggested by lemon
I kinda list the steps too
yeah, I was looking to another monitor
happens to the best of us
@hidden yacht #blueprint message
for now i'm not trying to make movement work with vehicles ,just print something on successfull RPC server > client
But why? Just override from the level
Still the same suggestion
that's what i did with custom events
Don't forget the rpc
Wait what?? How
replicates : run on owning client
In the level you are in. Go to the world setting
you need to make it an RPC. RPCs will execute on different versions of the game. Click on your custom event and set replicates to "run on owning client" and tick "reliable"
You can override default pawn class there
I thought it overrides the whole game
No you can override on per level basis
Don't set it in your game mode class, override from the level you are in
I spent so much time trying to have a different pawn in my level and then I didn't realize I could do this
One more thing !!! i have it working. but the tank has multiple hitboxes. is this a good solution?
i mean it works
Thanks a lot, people over in #cpp couldn't figure that out
I'm sure they know about it š
I did two tests, one with replicate to owning client and the other with DONT replicate.
I started with RPC on owning client, then the logs showed the print twice , so I changed to DO NOT REPLICATE, was still printing twice, i screenshoted the last one only and came here to clear the confusion
Can't tell what u r doing but you can use select node
lemme try again with RPC
Instead endless if statement depending on what u doing
Remember that the code runs on every character in the world
Don't know what u r doing atm but if you want to filter out stuff in client machine to just run the code in the character they own. You can use is locally controlled
i sent this last night and still haven't gotten an answer, can someone help please?
I don't even know what I'm looking at š¤£
@compact sandal
that looks like a hardware issue to me
the double execution means the pawn is being possessed twice since start of game ?
i dont either š, it happens when i debug draw any form of line
what could it be?
it goes away right after the line disappears
You have 2 characters in the world. The server will print once for each
What's the point of is server here?
I only have one client
On posses already called by server only
U r on listen server?
I'm sure there are 2 players
just understanding things on my side
the graphics card probably
The is server on on posses is redundant.
well that's scary
not necessarily. if you look on forums other people have this issue too
Ahh ok
Are your drivers up to date? I would start there
im updating them now
I mean , i get you, on possess is server only, but you know, i'm inserting nodes and expecting things to be a certain way, in this case it should indeed be server only and not print IS CLIENT CALL
Ye I don't mean to say don't experiment. Just explaining that it's redundant in case u didn't know
Thanks, appreciate it š
I am not aware why it's printing twice tho
For now, put a "Do Once" on possess
what my understanding is, as long as the starting node of the chain is server only, whatever comes after will be server only till the chain is over ( chain is linked with the exec white lines )
then connect "Unpossess" to the reset pin
am i being dumb
why is this output an integer

i'm dividing it by 10.
i just wanna have 1 neat node that converts it to m from cm and rounds it to 1 digit after the comma 
thats converting to text
I am having a possession and unpossession then a repossession, wtf is going on lol
screw it.
I'll follow your example, not touch it and-

Don't be me
lemme show you how i spawn the player
Not using player start?
its too late.
@hidden yacht Show the "Pawn" section of the details panel for your character?
not using the default pawn, i'm spawning it manually
Bruv I reckon you are spawning by game mode
But then u have Ur own spawn logic
Which kill currently controlled pawn
Then spawn and posses again
why is there a current pawn at all at start to be killed
since i dont set the default one
it uses the project default if you dont set one
where is that set ?
Check your world settings
hey
That explain the double print
3.27 am
yo me too
x1 print ! Yeey ! Thank you š
Western Aus brother?
yeah perth
im trying to linetrace in an circle like how im spawning the effect
Same2
hell yeah
ok its fine you go sleepsleep ill solve it np š
Probably want to look at some math if u gonna do bullet hell and all that
yeah
Dot product, vector math etc.
I'm gonna touch them eventually
hehe
have a good one
aaand we're driving š
The working solution
Just making sure of the concept here,
the RPC on owning client will never be expected to run the isServer true branch, right ?
as long as it is set to "owning client" !?
@frosty heron
just as the redundant part on server side, can we say that this is also redundant ? will always run as client on that branch ?
Yes
Unless you are running it on "listen server" but you are doing "client" right now
and even then, you can assume it will only be client honestly and be fine
Thanks !
Anyone here ever dealt with root motion OUTSIDE of the Character?
If I have two versions of the same project, whats the easiest way to find the changes to the newest version?
Some sort of diff tool
are you not using source control?
No
I seen that I can diff two blueprints, but that would involve merging both projects and then diffing each one
You should be using source control
Initialize it as one of the versions, then overwrite with the 2nd, then you can diff and see all the differences
Would Git be fine or should I look into something else?
you should start by having a variable that stores your "fear level" somewhere
it probably makes sense to have it in the player
then you can just add/remove to that variable whenever and however you want, as long as you have a reference to it, and just check if its maxed out every time you change its value
instead of checking every time however, you could probably just have a custom event in the player that modifies the fear by an iinput amount and then checks whether its maxed out or not
i like to keep things in game instance
it persists
pretty much globals
you need to have a level of fear like variable maybe a float or integer ?
so you can check what it is and act accordingly
for the ui you probably just want a bar ?
your fear amount
it's two different parts your data and your display
some like fear and maxfear might work
same way you do health
where you can just divide them to get the percentage to display
PlayAnimMontage not working
i usually keep different functions, one for updating the value, one for display
and just run them whenever i update a value
skeletal mesh not ccompatible with character obj referrence
you can use the one when you update the value of fear to check if it's at max
or even the display one either or
its in a function in bp_thirdpersoncharacter
you have a slot in your animation bp ?
huh? sorry what?
lemme research about that
you need to add a slot to play a montage
just add a default slot
should be all set
in your animation bp
goto your character, loop for animation class
then find that
and open that
ya
that class
maybe it has a slot
it should if it's prebuilt one ?
but look at that animation bp and see if it has a slot
my guess is this is a template ? so it should have it
nah it not
its made by me
oh ok
animation montage
if you made it how come you can't open it ?
you know where you put it ?
it's the class that is your animation
nah thats the only thing i did
i made a sequence imported idle and rigged it a bit
and then i baked
and done
hmm
i know you need a slot
i don't know what kind of animation setup is going on
and like mentioned make sure your target is correct
well i updated both unreal and my drivers, it still appears
thanks
what does it say ?
where does it display that when you run it ?
it's whenever i draw a line trace
but if i put a blur effect through the level blueprint, it blurs the weird thing as well
watch
you might get better answers in a different section like #ue5-general , or another one idk
not really a blueprint problem
ur right
i feal like theres some sort of setting for this it looks like debug stuff
lemme do that
i know and i thought that too, but i looked in the stats thing on the upper left menu with the fps things and nothing was on
very strange
let me
post this in #ue5-general
they might be able to atleast send you to the right section or have a better idea
Hello, I am working on a project but there is a subject that I do not understand. The server should select a random map and send all the players in the lobby to the selected map, but I couldn't do it. For example: Random map in Pummel Party, random map in Fall guys, random map in Crab game. How can I do this random map job?
How would I move an object along a line?
Make it follow a spline
idk about sending to the correct map, but by map do you mean level ?
Yeah
There must be a better way to do this in blueprints?
What are you trying to do?
Well check what type of actor it hit so it can take the appropriate action. More specifically this is the blueprint for a projectile and once it hits something I want to apply damage to the actor or some other logic depending on the type of actor it hits eventually i do want this to be an online multiplayer game and so if this is poor design for online multiplayer please let me know.
The projectile shouldn't really care what it hits. Just call apply damage on the hit actor. The hit actor would then decide what happens using the on damage received event.
That's interesting but in doing so I assume that actors even those that can't be damaged wont throw some error when i try to apply damage to them
If an actor doesn't handle the damage using the on damaged received event, nothing will happen.
Alright thank you so much. Just cleaned up my code and understanding a lot
Hey all im using a level sequencer to hide then spawn enemies after I talk to an NPC. But when I unhide the enemy BP it wont move in the nav mehs...any thoughts? (i have already made the auto posses 'placed in world, or spawn")
Are you incrementing Last Index somewhere in the loop?
no
Or do you mean endless as it goes out to infinity? š
yeah
hello everyone, I'm having trouble understanding the relationship between Skeletal Mesh and Control Rig when it comes to blueprint programming... or maybe I am misunderstanding something even more fundamental, this should be trivially easy but I am tripping up hard, hope someone can help...
I am looping through an array to do some tracing - I can either loop through the skeletal meshes which have one control rig component mapped to them, or I can loop through the array of control rigs, which each have a skeletal mesh mapped to them. In either case, I need access to the proper object reference (but **not **the Scene Component Object Reference I get by calling Get Parent or Get Child, rather I need the Control Rig or SM reference) - for example, I want the Skeletal Mesh Component Object Reference of a Control Rig's mapped SM to feed to a Get Bone Transform but somehow I cannot get it.
You probably want to take the rotated vector and normalize it then multiply it and add it to the original vector.
Right now it would be rotating a value that could be large, like (1000, 0, 0), you're rotating it on Z, so then it could end up being like (999, 1, 0), then multiplying it by 500 which would result in (499500, 500, 0) and adding that to your vector.
For level instances, im not entirely sure why it wont dissapear, I've tried a lot of dfiferent things but supposedly this is supposed to work. TLDR is that a user is presented a list of levels that do have to be mapped to ints because I'm using an application outside of UE that obviously cant send levels in, and even sending by name is not what I want, but user picks a level and it should load, hiding every other level. I wanted to see if I could unload level and just get rid of it entirely but that doesnt seem to work either?
It does load the correct level every time it just refuses to unload the levels
Tick -> look at where you are -> calculate where you wanna be -> move there
are you loading all of them ? and setting them to remove after if they are not a certain one ?
because why not just load the one you want
yes, mostly because I dont understand how to actually unload them, because the false logic of the branch appears to straight up not work
because what should happen is on start it loads the default level, which happens as expected, then i select a different level and it should hide / unload that initial level and show the selected level, which doesnt happen at all, it just shows both
you should have something thats a reference to the current level somehow
so you can just remove the one thats loaded
and then find a way to load just the one
if you have a lot of levels that loop approach is going to be a pain
right, I have tried that as well but my continual problem seems to be unloading, I can try a few more things but should what im doing already be working?
idk how to unload level instance i still have a lot to learn
i've only loaded by name
its basically the same thing as far as im aware
right but when you load by name i believe it just unloads the other level
atleast that's what i assumed
it goes away
i assume you have the levels part of the persistent already?
"part of the persistent" ?
one of my projects has levels i load by name
idk if it keeps the others in memory but i wouldn't think so
yea like the levels window has persistent then a bunch of other levels underneath, if not thats fine
how can i get this to not error? the function doesn't modify state, it just gets the positions to draw the branch. here's the error:
Function Get Branch Draw Points can modify state and cannot be called on 'self' because it is a read-only Target in this context
Any ideas?
I think that's a custom function? If you haven't already, open the function up and go into its advance settings and click "Const" that should fix it.
yeah it's a custom function in a basic blueprint class
setting the function to const didnt seem to work
nevermind it did, i just switched the wrong function to const lol
thanks
Is this a smart design?
What....... are you trying to do here?
That function doesn't do any casting so why is it named like that?
This function is to get an actor without having to have an exec pin
Index is for the get from the array
But how would the caller know what index to pass in?
When I use the function I input the index
At least call this thing GetFirstActorOfClass or something
it's not doing any casting
Where do you get the index from?
From inputs
I mean in practice. Where does the caller get the index from? What are you actually attempting to do here? I could MAYBE see a use for it if you used GetActorOfClass and it just returned the first one it found
btw you'll have to cast the returned actor ref anyway
unless you just want to have it as Actor
I'm trying to understand why is it that when I set my root component to my collision (capsule) then my projectile hit events work normally but when I make the Static mesh the root component then it doesn't work at all and my projectiles simply go through everything.
the root needs to have all the collisions set up
That's like a rule? That's always the case?
I believe so
I hate that lol. Not that I've read all the documentation or anything but I haven't seen that explicitly stated anywhere. If anyone has more information please I'd like to know more otherwise I'll just make sure my roots are my collision components going forward.
This is just something I've had a problem with before. My projectile was only fixed by moving my colliding component to be the root
if there is a scene component, for instance, as the root then it wont work
yeah that's what I've noticed now too
I have a spawner that keeps all the spawned objects in an array. I would like to destroy an actor by the array index but all I can find is Remove Index, which removes the array entry (shortening the Length of the array) and leaves the actor in the scene.
Can you do this?
Yeah I think Get is what I want to use here. I was confused because in the drop down it says Get (A Copy)
Does anyone know if I can access the face or vertex data of a specified material ID on a static mesh? Say I have a square with a blue material and on the top face it has a yellow material, can I get that second material and find where the face or verts are in world space?
You should use "Interfaces" and have a method in it called "OnDamaged", and OnComponentHit you check if the actor implements your interface, if yes then call the "OnDamaged" method š
Thanks LightMatches, using Get and fixing an off-by-one error and I'm in good shape now.
Guys any idea why this slot keeps failing? The file exists
Try to print the return value of your "Load Game From Slot"
How do I do that?
It gets a copy of pointer
Still pointing to the same thing
Thanks, that makes more sense. š
You use the "Print String" node between your nade "Load Game From Slot" and "Cast To BP_SaveData_PlayerData" and drag a line from the "Return value" of "Load Game from Slot" to your print string input
is there a way i can get a reference to the static mesh of an actor without it being of a specific blueprint, just the general "Actor" class?
no because an actor alone doesn't contain static mesh
what you are doing doesn't make sense
you can cast it to your BP base Item Pick up then plug it to the static mesh
should i cast to the specific BP and then yeah ok ty lol
Possible scenarios
-Save file doesn't exist and return value from LoadGameFromSlot is Null
-The return value from LoadGameFromSlot is not derived from BP_SaveData_PlayerData
Like all those actions are greyed out in the context menu, and hotkeys for them don't work either.
My first project doesn't have any composition, my player BP is huge like a mountain. Had to restart every 8 minutes, working on it is a pain.
Every 8 minutes, my right click just stop working, it will show context for 1 frame then it just disappear.
I would also like to know why this happens to me. only happens for me like once every other day though.
Could it be related to focus or window drag focus?
One of the bugs i get is when i just started the editor. Where stuff simply isnt clickable. Tabbing out and back to editor makes it work again
A other one ive seen is that it gets stuck during a drag operation
Where you get this highlight with some wireframe over an area. Solved by just dragging and cancelling a new drag operation
Hey guys, why my SweepResult from OnCapsuleOverlap always have Location, ImpactPoint, Normal, ImpactNormal equal 0?
I keep on getting this error, I already tried adding an is valid? To possibly fix it but the same error message keeps popping up
Anyone any idea how to fix it? @ me would be appreciated
could be you are casting a nullptr
Prob, but no idea how I fix it though, I'm not that smart
Is Valid before cast lul?
How do I check that?
drag the "Pawn" out and type "Is Valid"
I am not sure you and i are on the same page
Cast includes isvalid
I am reallly new to all this so I don't know a lot at all sorry
Did you mean something like this?
If its invalid, cast fails. If its the wrong type, cast fails.
If its valid and correct type, cast succeed
yeah i think that's true
Well I get the same errormessage regardless of checking with is valid? Or not
Hi all, wondering if anyone can help with what I hope is a simple issue https://forums.unrealengine.com/t/crt-vcr-how-do-i-use-a-trigger-to-play-a-custom-movie/1673640/2
So far I have the movie running when I overlap a trigger, pause the video when the pause widget is open but I havenāt yet unlocked the secret to continuing the video after clicking āResumeā. Step 1: On Overlap of Box Collision, play the video. (Run in BP_TV) Step 2: When the game is Paused, create a āPaused Timeā variable (Run in the BP_Pl...
the original code should be working
Even when I remove the is valid command I still get the same error
come on