#blueprint
402296 messages ยท Page 556 of 403
no :/
better learn cpp then ๐
I know CPP.. I'm writing a crafting system for a friend, and he only knows BP
I just look at the CPP Api. I just got lazy lol
yeah putting helpful stuff in blueprint function libraries is a good practice
unless you need something that works with generic arrays or DataTables, then it's hell to work with ๐
Yea, generic
I created a unreal share git
so i guess if anyone wants to see it then they can. default bp nodes
Hey guys i need help, iv got root motion animation but, my character slide after each step, do you now how to fix this please ?
https://puu.sh/GJKvI/1cfcec5cd2.png
@spark summit Someone can help me please ?
@rain ravine I did it!
Hiho i have a question again ๐ฅบ
In the tutorial im watching he is creating every skill in the Character_BP, so the Mage have all mage skills, the Tank have all Tank skills and so on. My Idea is to create 4 different BaseBPยดs and link this base BP to the character how should lern this skills.
Ist that way better fรผr the performence?
I have skills like Fireball and 3 different Mages can cast that spell. Its easyer to link the Skill_BP to an Character than create the same skill 2 or 3 times??
if i have an different skill_BP i can use that skill for enemies too
@sonic pine
I know it's irrelevant but are you german by any chance? ๐
yes im
Hmm i see XD
ok
Sorry if i couldn't help I'm shit at blueprints... I'm justs starting to learn it
Do you see that because of my perfect english? xD
Because of the "fรผr" XD
fรผr??? XD
The only problem i can see is that you said " to an character) it should be a instead of an
But besides that it's all good๐
Wait are you good at blueprints? Can you help me with something?
iยดve started today xD
its ok^^
Aight
stop push my question away ๐
Sorry๐
Delete the first one and resend it again so others can see it (:
Hiho i have a question again ๐ฅบ
In the tutorial im watching he is creating every skill in the Character_BP, so the Mage have all mage skills, the Tank have all Tank skills and so on. My Idea is to create 4 different BaseBPยดs and link this base BP to the character how should lern this skills.
Ist that way better fรผr the performence?
I have skills like Fireball and 3 different Mages can cast that spell. Its easyer to link the Skill_BP to an Character than create the same skill 2 or 3 times??
if i have an different skill_BP i can use that skill for enemies tooSomeone can tell me?^^
ok a parent skill like a base skill to link to each char how should lern that skill?
explain what u trying to do.
u want to make 1 spell and every character should be able to use that spell ?
Ok i want to have 4 different Chars you can choose. If you will take the Elemental Mage you can some los ice, electric, fire and wind skills, the Dark Mage can different Fire and darkness skills.
So Small Fireball is a skill that 2 different mages can leran, the same problem i have by the melee champs some attack are the same
so my question is if i make a Skill_BP and link that BP to Darkmage, Elemental Mage and different monsters, i dont need to rebuild the skill every time. Im buildig the skill 1 times and can link it to every champ, Mob, Boss i want
For example the "hit", every champ, boss, mob ist hitting between the spacial spells, so i can create one hit for all and only link the hit_BP to the different Chars
the different power of the hit is coming from the damage poits of the Char who is hitting.
For example
Skill: hit = 5 DMG + Char 1 = 20 DMG =25DMG/hit
Skill: hit = 5 DMG + Char 2 = 25 DMG =30DMG/hit
Skill: hit = 5 DMG + Boss 1 = 100 DMG =105DMG/hit
so i give every monster/Char/boss only the special attacks and the base attacks flike small fireball or hit i need to config only onetimes and not fรผr every char/mob/boss
Im asking because of changes. If i have only one hit_BP i can change the hitpower from 5 to 6 without chaning every character
I understood what you need and will suggest two approaches depending on the scale of your game
if you have few skills for each character/boss, create a basic class as an Actor Component that contains all basic functionality for magic such as damage, range and so on.
Then create a single BP for each skill and then tie it to each character/boss as needed. Each spell type will be a single BP and can be reused for as many chars as needed.
you can make an event or function call to automatically update the skill stats based on the component owner
If you have the need for many more skills, I would make another component that manages if a character can or not have access to that particular skill at that moment.
good day, I'm just starting to build the base for my game, I plan to have physics based vehicles, I'm not sure if I should use a pawn as my base class or a character as my base class, that then will have children which can be different types of vehicles.
I'm a little lost on how to get a solid foundation with correct inheritance heirarchy. I'm not sure if I should make a character that can move to and then possess vehicles, I don't necessarily need technical help but more general advice.
I'm currently following the "Twin Stick Shooter with Blueprint" course on the epic games website
@frozen dune Thanks ๐
That's kinda how I have my systems too
It's been decent so far, but spawning an actor for something that doesn't move doesn't feel very optimized
Though the optimizations since 4.25 helped with that a lot
Yeah the "updates"/Changes are global and not for each char/boss and so on. the testing time is lower, if 1 char is using the spell, and the other cahr say no, it can only be a mistake bei linking, because the spell is running on all other chars ^^
and the game would be smaler, i havnt 100 times the same skill_BP
Even then, it's not that expensive, at least depending on your game's scale
and time ^^
For me, I fit 5 spells and whatever other functionality they have (projectiles, status effects, etc) in 10 MB of BP
And that's before packaging
nice ^^
I wanted to release my game and its framework soon but 4.26 has a bunch of features I'd like to use
It has exactly that and makes developing a game a breeze
maybe you can create a way to fix it or to do thesame without the components you normally need?
I've already done that
ok nice
Though I focus on customizability and mod support
@sonic pine You need to use inheritance, if you're not already.
It's the best way to pass abilities to child classes
Thanks i fothot this ^^
Yo, so does anyone know how to go about doing a camera like this? You fall down a bottomless pit, and the camera lags behind in the air, but still pans down to show the player falling to their doom? ๐
Spawn a new camera that auto-possesses once the character falls down
Interesting. I think I'll give that a try. I haven't actually started on this yet, but it's something I know I'm gonna incorporate into my game eventually, so I wanted to get some ideas going on how to approach it.
Make your base mechanics first
This camera can be easily done if you have literally nothing else to do
Especially since trying to tell the player camera to move in a specific way seems to be alot more difficult than it really should be, when it's not just the default player input movement. (I've been using the default Third Person camera this whole time, with very little alterations.) So I wanted to get a head start on that.
Default movement is fine until you get into anticheat
Also Raikun if you're still here, I just checked and turns out a full character functionality fits in 2.5 MB for 5 skills and a passive
That will require some programming/blueprinting work on your end. "Flying" basically just disables gravity for the character, and suspends them in the air.
If they are actually IN the air when it's activated that is. You won't really notice the effects if you have it activate while on the ground.
What im trying to do is launch the character into the air and then suspend them in zero gravity
because the game takes place in space
Then I guess do like a "Launch Character" node? Set how high you wanna launch them, then activate the "Flying" movement mode at whatever moment you wanna keep them in the air.
Yeah and then when im in the air, do I have to use forces to move my character?
Or you don't even have to change the movement mode at all. You can just tell it to change the gravity to a certain point.
Most likely. Any space movement you'll have to implement yourself. How to do it, I can't really tell you, cause I don't know how you want the movement of your game to feel. ๐
That's all on you to decide.
The thing is is that when I change gravity scale to 0, it just keeps floating up.
Is there a way to sort of make gravity scale 0 but control movement
Are you wanting like moon physics or something?
Like an astronaut floating in space.
but like
you get launched to a specific point
then your floating in space then you can make the character move in the direction u want and also float up if you press space
Okay well, floating up can probably be achieved by using a "Move Up" node. And vice versa if you want a way to descend aswell.
As for forward and back movement, I'm not really sure. I've not tackled any sort of flying movement before, so someone with more knowledge than I do will have to help you with that. ๐
i have this issue where
my chara when collide with other chara
the other chara fly skyrocket high to mars
is that collision problem
i set their capsule and mesh collsion to ignore
but still like that
any idea how to fix this
whats a good way to stop a thirdpersoncharacters characters rotation?
but not the camera rotation
creating an endless runner and I would like to have a navmesh for each of tiles spawned, what is the best way to do this?
creating an endless runner and I would like to have a navmesh for each of tiles spawned, what is the best way to do this?
@fossil thistle sounds like level streaming would be ideal. each streamed-in level would have its own nav mesh
Hello all! If I set the Min/Max View Yaw in the Camera Manager, it seems to not be relative to my actor but using world rotation? How do I set it to use Relative rotation?
@shadow saddle start by disabling all collision. Then turn them on, 1 by 1
Hello! does anyone know how to get the parent class of an asset in blueprints or through the unreal python api? I have already tried using "Get Tag Values" to get the parent class which only gives me a string, I need the actual parent class object
@coral fossil don't know if there is a specific node, but in your parent class, you can make a variable of type class, and store the class of the parent. you can then access that from the child.
still not working
Disable AI
Just have your character, and the enemy Bp.
if that still happens, then remove the Animation BP
working now
should have set my capsule collision
to object type pawn
thank yo
you
@flat raft I still don't get it, I can only get the parent class as a string, and how can I store it then as a class when its only a string?
GetClass > Promote to Variable
but GetClass gives me only the blueprint class, I want the parent class. so say, I have a character, GetClass only give me "Blueprint", but I want the parent class: "Character"
I don't understand
If you have a class called MyCharacter, and you create a Child Class called MyChildCharacter, using GetClass inside of MyChildCharacter will give you the class MyChildCharacter. If you use GetClass in MyCharacter, you'll get MyCharacter.
If I understood, you want to get the Parent Class of MyChildCharcter, which is MyCharaxter?
@coral fossil
when you say, using GetClass inside of MyChildCharacter what do you mean? I'm using AssetData -> GetClass -> promote to variable, then I get "Blueprint"
@flat raft
or are you using c++ for this?
I'm pretty sure n that case you can do GetParent -> GetClass.
Anyways, can anybody suggest a method for providing a default value, in the case of IsValid failing?
I have a class like GetSubSystem->GetDog->GetName if GetDog is not valid, I just want to default the entire output to some OTHER string like Rover or NoNameFound
spawning and deleting a lot of ui widgets
But atm I haven't found a way to do it, using either Select nodes or Branch nodes, since the GetName isn't an exec, its getting called no matter how I try to branch it.
How do I tell a scene capture to stop recording in BP? I can't see any relevant variables
If "Capture Every Frame" is checked they will capture constantly
They don't "record" as such
yea sorry bad use of language on my part. I think I have a bad scene, I thought the framerate was due to the scene capture, but removing it all the scene is lagging heavily and it really shouldn't (basically empty)
so think I am bugged or the latest driver for my GPU is fucked
Well the scene capture is always going to be like having a second monitor the size of the render target on screen
They are far from cheap
You can disable "capture every frame" and manually call the "capture scene deferred" function if you want
Not sure if those are the exact node names in BP but something like that
But don't forget how expensive it might be, also depends on the size of the render target it's capturing into
nah I know that, but it's not in my scene with nothing else and I am below 120fps, something isn't right
I got sent on a red herring chase thinking my code was wrong but it's actually working just fine xD
I had SSGI enabled, which didn't help was testing to see the differences but it does add frame overhead
it's really weird -- When I simulate, its telling me it wants to build 6 captures, but I have nothing in my scene that creates this. everything has been removed from the scene
Solved, it's the new dynamic sky - In the level blueprint it is capturing on tick
ewww
I'm fairly new to Blueprint, and trying to work this out for a little bit now.
I have a blueprint with an arrow, and I want the arrows print string output value to be 0-1 for the full 360 degrees of the arrows rotation.
I'm using Get Forward Vector, and by using a dot product and doing a constant Bias scale, I've been able to essentially turn 0-180 into 0-1 but after it hits the 180 it starts going into minus numbers.
I'm sure there is a much more simple solution than I'm thinking of here.
Hiho. In my Character_BP i have all all Variables i need fรผr my skills, now im Trying to outsouce the skills into a seperated BP to include the finished Skill. But This part will not work corectly.
I try to fix that like this
My idea was Cast to Character_BP will import the Health and mana Variables but it doesnt ^^
Someone have any idea how to fix that?
@glacial eagle tell me about it xD it's like that by default ๐คข
@uncut sonnet All you need to do is convert the usual -180 to 180 into a 360 value. Then do that value divided by 360. 0 will be 0, 360 will be 1.
This is how its looking right now.
I'm not sure that's what you're after. Do you know what the DotProduct is?
Oh! Theres a Map Range Unclamped node, this could be what I'm searching for, or, it could be entirely different.
The dot product is outputting 1-0 for the first 45 degrees of the rotation.
DotProduct is a measure of how similar two pointing vectors are to one another. It'll be one if two vectors face the exact same direction 0 if they are facing tangent or 90 degrees of each other, and -1 if they're facing opposite directions.
Which rotator does your arrow move on? Like turning left and right in a typical shooter, the Yaw?
I'm looking down the Y axis and rotating it in the Y axis.
So pitch in a typical rotator? IE, looking up and down in a typical shooter game.
Yes I believe that'd be correct. Sorry, had to convert that in my head for a moment.
Try something like this. Could be what you're after I think.
Gives me 0.75 if I look straight down, and 0.25 straight up. 0 looking at horizon level.
Thankyou, I'll give it a go.
i've seen more and more use of this "hard mapped keys" style! is this a better way of making a character BP? :S why not use the default UE4 that comes withe ThirdPersonBP?
I just use it for testing and quick implementation. No point wasting time mapping keys for testing. If I plan on doing something serious that I know is going to stay, I'll map a project keybind for it.
My find lok at rotation looks nothing like yours.
Possibly because I'm on UE 4.20
Show me? I thought that was an ancient function.
Oh. No, it's the same. Just right click on the purple pin when it's not connected and Split Struct Pin.
Oh... god that was dumb sorry.
Is it possible to scale the 'Size X' of a render target at run time?
It works in construction script, but the same code doesn't function in the event graph
Stuff like Rotators and Vectors are Structs, and you can do that with any struct pins in BP.
It's not quite right
180 gives me a value of 1
270 gives me a value of 0.75
Facing left on the horizon is 0 and looking straight up is 0.25 as you mentioned.
straight down gives me 0.75 but 180 gives me 1, wheras it should give 0.5
Yeah, I just realized my error. I wasn't considering Unreal's FPS perspective, where pitch facing one way is the same pitch facing the other way.
Yeah, this is what I've been running into the whole time too.
@swift pewter save your emitter as a variable right after it is spawned, then access that variable to make changes to it or destroy it.
Hey! Can someone help me with the following problem. I need to deproject screen space location to world space. I use the node Deproject Screen to World. But it has some offset due to the fact it doesn't consider camera settings. How to get exactly matching point in a 3d space to identify an actor under this 2D coordinates? Please, don't refer to some topics on the Internet. I have already learned them and still didn't get it working
How can I destroy it, doing it that way @proud hull
It won't work your way because it loses its reference over time. Spawn nodes will cache its results, but not permanently unless you tell it to (like store in a variable). If your destroy node was within the same execution path, it would work, but it is part of a separate event that may be called seconds, minute, hours, days after it is initially created.
The output pin of your spawn emitter node, right click that pin and "promote to variable"
Then right-click anywhere and type in "get" plus the name of the new variable. Then crag from the get node to the target of the destroy node.
Or instead of typing, you can drag the new variable from the "variables" section on the left, to your graph, and choose "get".
Your isValid node and destroy node should be connected directly to the new variable.
Yeah, you will want it empty so that the isValid node fails when you have no emitter spawned.
Hey everone... I'm trying to use a Switch on Enum for my Defense Calculation... but how do I set an Enum Var depending on the damage type ?
hey @fair magnet where does your damage type get set?
with that current setup you are manually choosing the damage type in the blueprint, if you create a variable and put it into where it says physical damage, you will have the options you can expose in the editor and select which type you want an object to give
but what if an enemy can use magical skills aand physical skills ?
Then an enum is probably not the best way to go about it
what's better then ? o:
well, your damage is going to be either a float or an integer
in your BP you'd set that particular float to be magic or physical, which then does the calculation you want for that particular damage
Okay so far I've understood... but how do I find out which damage it is ?
lets back up
I mean.. yes there are these damage types
Why does magic and physical need to be different?
whats the ultimate goal to seperate them
Because magic casters have different weaknesses than knights have
physical stuff would be more meele stuff
while magic stuf is more ranged
like fireballs
yes
So all you need is a tag to define the damage source
It entirely depends on how all your damage outputs are setup if its one master class or seperate but if you want to do it the enum way, have the blueprint specify which type you want it to be for the type
and as you run it through "physical" that's where your debuffs are, if they apply
but you already have that setup so not sure where the issue is, maybe how you have your damage BP's setup?
Was doing some awesome drawing how I envisage it
so you have a BP for melee damage and Ranged damage with their enum set to the desired value and that goes the Stat System as a custom event, with the follow through line. I put a branch but I meant Switch on Enum so you can select based on the desired Enum outcome line
Hiho someone know how to create a skill without the main Character?
This is the BP in the MainCharacter_BP with all Variables, and i want to create this Skill in an seperate BP to include it into the chars who should usw that skill
The Variables Helth, Mana, Casting and Ability are a important part of the MainChar, so i have to include this Variables into the skill BP without creating a new one. The skill have to know: is enough mana to cast the skill?
I try to include this parameters with the "Cast to" command, but there are errors about Health and Mana ...
I hope someone can help me ^^
hi guys i am creating a lobby with steam multiplayer session and i am getting error net failed listen
@sonic pine Are you saying that you want the main character, and an NPC to be able to use the same ability, with the same mana checks and the like?
No the main character and an NPC or other characters should be able to use the same skill but every character need his own mana request
Can I ask why the NPCs or others need a different check than the main character?
so i try to create Heal_BP with the funktion Heal, the mana costs, the cooldown and this BP i want to include to the MainChar_BP, NPC_BP so the chars can youse the skill but i dont need to create the skill in very character. 1 PB linked to 10 Chars for example ^^
Can I ask why the NPCs or others need a different check than the main character?
@maiden wadi If the Main char have 50/100 Mana and an other char/mob have 0/100 Mana the Main can heal and the Mob cant heal. If the Mana request is in the skill i give the mana to the skill an not to the char
its ddifficult to describe ^^
get player character put that in object
I know: If the Varibale Mana is in the skill, the skill wouldnt cost the mana of the character. The skill would test his own mana pool and not the mana ppol of the different chars ^^
then feed that to all the target
like an item??
give me min
Unfortunately, the issue here is that you shouldn't really create a full actor just for a mana check. You should write the check in the character class, then spawn the skill after. I mean you 'can'. But you shouldn't. Use what's already in the world to do simple checks instead of allocating memory and resources to spawning a full actor that might not even get used just to destroy it when it can't be used.
Hi, what kind of other events could i use to trigger the event when my object is already overlapping on gamestart. since when it does so it does not register "begin overlap" yet.
@hollow drift There's a checkbox somewhere, I can find it in a minute if you can't, but it causes overlaps to be checked on component or actor creation at beginplay or something.
still unable to destroy this compenent. should i be making a interface here to interact with the two blueprints? its casting the true bool but not destroying the component of itself.
@hollow drift GenerateOverlapEventsDuringLevelStreaming works, I believe.
found this one
but need to set up right
where did y find GenerateOverlapEventsDuringLevelStreaming
oh i see
Actor's class defaults.
Unfortunately, the issue here is that you shouldn't really create a full actor just for a mana check. You should write the check in the character class, then spawn the skill after. I mean you 'can'. But you shouldn't. Use what's already in the world to do simple checks instead of allocating memory and resources to spawning a full actor that might not even get used just to destroy it when it can't be used.
@maiden wadi I think we're talking past each other
I think this is the most longest code name i ever saw^^
Makes me feel good about some of my more verbose variables.
Not to the box itself, check that on the Actor that has the box.
ah
It'll generate the box's overlap event too.
@maiden wadi I want to have 2 different Blueprints
Blueprint 1 Character 1 Firemage
All Character Informatios like animations, camera, moving and character stats (Health and Mana)
Blueprint 1.2 Character 1 Darkmage
All Character Informatios like animations, camera, moving and character stats (Health and Mana)
Both mages have a Base spell for example Fireball
Blueprint 2 Skill Fireball
Skill Informations, Skill Damage, mana costs, gravity, cooldown, when the skill can be casted and so on
Now i want to include the Fireball into the Firemage and the Darkmage, without copying and double Variables.
I think i can link the skill with the Cast to Character command so both mages can use the skill without the skill have to be in there BP as code/BP.
The positiv effect of that is: If im changing the skill Colision or Damage i have to edit the Fireball_BP and not all characters with this skill.
My problem is i cant controll the Mana of the characters out of the skill_BP and i cant take the mana from the character out of the Skill_BP
@maiden wadi sorry to bother y again but i cant find a way to connect this:
Also the checkbox is not present anymore as like you have mentioned before:
https://answers.unrealengine.com/questions/980963/how-to-trigger-an-event-when-streaming-level-loads.html
This checkbox is not there, also not on actor
@hollow drift You have a BP like this, with a box, and the overlap event for the box like so. In the same Blueprint, click on class defaults.
And just change the checkbox in the bottom right.
Not the box. The actor itself. Look at the second screenshot I posted.
@sonic pine Do your Darkmage, and Firemage share the same base class?
I am confused^^
ahh
damn
it is already set
but doesnt work rip
I read somewhere there is a bug with it?
That's odd. If I place two of those in the world overlapping each other, they'll print each other after that's checked.
it updates for me only when i move componend
thats about my structure
i check if i overlap with a "puzzleblock"
Not the box. The actor itself. Look at the second screenshot I posted.
@maiden wadi Yes ^^
@hollow drift Trying to replicate the issue. Are these actors spawned in code at the same spot, or are they placed in a level manually?
placed manually
so to speak
i generated "pirate_pawn" which inherits the code above inside of puzzleblockgrid (from ue4 default starting template)
just with some coords
but guess can call it "manually"
y wanna have a look into the code with screensharing?
it s a bit complex
I was just asking, because the only way I can get the overlap to not fire, is if I create two actors at the same time on top of each other. If I input a small delay between the spawns, the overlap fires again. Which leads me to believe that you can't generate overlap events from actors spawned in the same moment.
ah i see
thats the bug perhaps
leme try
yes
it seems it works from "top down" and cannot load everything at once
this is baad..
or wait, ill generate it at the end
o man, still does not work perfect
i need to set delay even higher then 0,2 else my below tiles are not updated lol
o man, this will make issues for the future ^^
hey guys one quick question
So i made a hud thing, it displays a number (60) and whenever i press E it goes down by one(59 then 58 then 57...), but the problem is whenever i got to the next level it resets back to the original number (60)
But i want it to continue from last number (like 57 for example) how can i avoid it getting resetted?
(the picture is from my characters BluePrint)
can i use the return value of my previous actor to tell the code that all my objects have loaded?
but thank you a lot for the help @maiden wadi ๐
@trim matrix Literally everything in the game is destroyed when you load a different map except for the GameInstance. To retain those values, you will either need to rely on the GameInstance Or learn how to use SaveGames to accomplish this. Savegames are often the better gameplay choice, but some people do rely on GameInstance.
hey guys one quick question
So i made a hud thing, it displays a number (60) and whenever i press E it goes down by one(59 then 58 then 57...), but the problem is whenever i got to the next level it resets back to the original number (60)
But i want it to continue from last number (like 57 for example) how can i avoid it getting resetted?
(the picture is from my characters BluePrint)
@trim matrix use game instance
hmm ok let me try that
Hey ho! I'm packaging my project and I've set it up in the player pawn that you can change levels if you hit the spacebar. But the packaged project doesnt seem to be able to find the 2nd level. (as it tries to go there but reloads current). I've added it in the "Packaging" dropdown thingy in the Project Settings. Anyone knows if you need to do more stuff for it to work ๐ฎ ?
I have a customer player controler bp, changed my default gamemode and added my player controler but i still cannot get out a result when left mouse is pressed. Did i missed something?
In mouse interface i also enabled click events and show mouse cursor but this did not help either
As also adding click event keys
Hi! Hope someone can help me here :-))
I am trying to have a logo overlay appear when the mouse is idle in a game. It works with this blueprint, but I cannot figure out a way to make it go away again when the mouse is moving?
just grab input in the overlay and let it destroy itself when an input event occurs?!
How would I get the player's LOCAL velocity in Blueprints?
@frank lantern if its UMG look at your blueprint of it, you can create an override for On Mouse Move
in that override you could hide/destroy the widget
@minor folio What do you mean by local?
@maiden wadi Like instead of using the global x, y, and z, I want to use the local axis
For example
If I hold w (with global velocity) and turn to the right 45 degrees, then my velocity is gunna look something like 2.5, 2.5, 0
But i want where if I hold w and turn 45 deg., then it should look like 5, 0, 0
if that makes sense
Maybe there's a way to convert global velocity to local by also giving the function a rotation vector
or something idk
I think I understood right, let me test something quick.
can't you just rotate the velocity vector by the player rotation?
What node do you use to do that?
I was in the middle of trying to math that out manually. Wasn't even thinking about the rotate nodes. Too much C++ lately.
I've warmed up to it. Once you start making more complex functions, C++ makes life so simple. Not to mention the speed difference is more than notable.
can't wait for a linux build of rider for unreal
I don't like cpp because the compiler errors are so fucking vague yet c++ is the most complex language to ever exist
@spark steppe I am sorry, I am new in this software, so i dont really know what that means... It is in the character blueprint. Can I do it somehow by dragging notes from "false" ind the branches?
just do that override in your logo overlay widget blueprint
@spark steppe i dont have that option when it is an event? The BP doesnt work when I have it in the widget blueprint, only as an event in the character blueprint
@spark steppe
thats not the blueprint of the logo overlay
the hiding doesnt have to happen in the character blueprint
it can happen in the logo overlay, thats why you should add an on mouse move override in the logo overlay
as soon as the mouse moves, it can hide/destroy itself
also you are creating an infinite amount of logo overlays if im not wrong
you should bind it to a variable in the character and check if its populated before creating a new one
and comparing the axis value like that also won't make any sense
๐
Omg I didnt know that, but you are right. They are just stacking.
I still dont really understand haha
Sorry. but thanks a lot for explaining. I need to see how the nodes should look to do it.. will keep on googling ๐
you can actually remove that branch which checks the value of the mouse axis
just retrigger your delay when an mouse event occurs
Thanks!! so what about the float values?
@spark steppe This is what you meant right?
yes
now connect to the return value a succeed (or success, not sure how it was named) node
and before returning you can destroy/hide your widget
(the succeed node is just necessary to get rid of the warning of the output node)
It will not let me add the succeed as return value ๐ฆ
wait im starting studio, then i can make you a screenshot
Thank you so much <3333333
ok thanks! Do i still need the variable in the character BP?
yea
which kind?
overlay logo object or the generic widget object
Ok thanks and what about the float values in the mouse X and Y?
you don't have to check them
mouse move is mouse move, no matter what the values are
yea kinda like that, just that current menu is whatever you named your variable
thats what you execute when the menu should show up, so at the completed output of your retrigger node
This is in the widget BP? or character?
in the character
anyways, i have the slight feeling that you dont have any idea of what you are doing ๐
Hahaha you are completely right about that!! but I am really trying and thanks to you, Im slowly getting closer to what I want to do ๐
thats what the alternative check should look like if the first suggestion wont work
thanks again! still not showing up :((((
does overlay event ever fire?
either watch it with your player as debug object selected, or put a print string in between so that it shows you a message
wait what are those custom events?!
that looks like you replaced the mouse events by something
Ah yessss i see that!!! dont know how that happened
It converted the mouse events when i deleted the branches
@covert stirrup I were actually a bit stupid there... so... I am doing events for different skills and attacks... left click for example... and I can just set that specific skill to be any enum type I need it to be... :D
Looking for some assistance it possible.
I have 2 actors. With actor one I get a location and rotation of this actor. Actor 2 has #number of sockets at it's edges, which represent where to connect with actor one. I can get the location working fine, but am having trouble working out how to get and apply the rotation so it lines up correctly. Any advice or tips would be appreciated.
Should I spawn it in, apply the rotation of the target socket, then apply the location? Or is that not right?
@frank lantern please show a screenshot of how your character bp looks like now
I guess the overlay event in the branch is the problem?
Does a Call to a Bind in a master character not get called in it's child character actors?
the condition is probably the problem
but i dont see why
as it checks if both objects are valid, so the error shouldn't raise
@gusty shuttle are you overriding the method thats called?
I dont really now if the variable is created properly?
@frank lantern probably it is, otherwise you wouldn't be able to connect it to the other nodes like you did
@spark steppe Negative? I just want to tell enemies that the player has died, I'll get some quick screen shots
First pic is in player, after generic health loss, second pic is off BeginPlay in Master Enemy
Duhhhh, I used Unbind :PPPP
Sall good. Thanks for answering @spark steppe
ok ๐
@frank lantern can you just connect the first is valid check to the branch condition input and try again?
i tried, the error still occured
but have a feeling that the logo overlay variable i created is not really connected?
show the details of your variable then
@spark steppe do i have to somehow connect the variable to an object?
or set it as something
or thats maybe what i did in the lower part of the BP image
is the variable type an object reference of overlay logo?
anyways im heading to bed now, maybe someone else can help you with the mess that we created
or has an better approach
and connect the false output of the branch to the execute pin of the create widget node, before you forget about that
yes it is
thanks so much for your time!!!
@spark steppe well that overlay is showing up now! But only when the game starts, and then it dissappears when moving the mouse and never comes back ๐
Hey guys, I have a question.
So my character is set to this
In midair he moves, but he still does the running animation
how can i stop him from doing that
@hearty gazelle what do you want him todo instead?
just do idle while hes floating
i fix my issue didnt know i had change the collsion on the box so that why it wasnt registering the hit.
You are going to have to change his animation graph and anim BP
Unless you want him to forever idle, then you can simply change the skeletal mesh settings to not use an Anim BP and instead just only use the idle animation.
Well i still want him to shoot
my template is fps
but i think they are seperate right
Oh well i think the shooting is an animation montage, which in order for those to work right you still need a anim BP I believe. Since youโll need to setup the Anim BP to use the correct Slot for the anim montage.
I would suggest looking up some tutorials on animation graphs and anim BPs.
Ok
Good luck
Oh?
Ah yea. Well that is one way to fix it. Your anim BP never thinks itโs moving now
Anyways maybe still look up some tutorials on that. Itโs good to know the basics of how that all works
Yeah that is true, thanks.
anyone use GetViewportSize node? I am curious what kind of offset is on this... I am drawing lines to the HUD and they are off... and if I dont add a little the line never draws to the end of the screen.
@thin ferry multiply by .5
@thin ferry there should be an option to get viewport scaled by DPI
Hiho i have createtd a HUD (Skill-, Health-, Mana- and EXP Bar) for my first Character now im Created a second character. Have i duplicate the Hud or can i use the same for more than one Character?
oh its not dpi... cause I printed string for test and it says 1920x 1080 i think it was at the break vector 2d
Normaly if im starting a game i have an empty skillbar, full HP and Mana and 0 exp on each character so whats the different between ?
Hey, I was just wondering if there was any way I could spawn an actor on top of another static mesh actor? I want to do it so that the spawned actor is on the surface of the other actor and it follows the other actor around. I tried searching this up online, but I couldn't find anything useful.
@thin ferry did you try multiplying by .5?
I need a tutorial on how to have it so I press a button while near a box, that box teleports above my head, then as i walk it says there, then i press the button again, it teleports back to the floor; practically picking up and putting down.
the highlighted custom char isnt that supose to be a round blue ball and not a blueprint icon ? or is that changed?
whas does this mean please?
@odd ember multiply which by five? I couldnt find scaled by dpi node...
viewport size
errr 0.5 i think you said
I mean it's going to pivot your viewport to start from the middle instead of from a corner
choose
select node?
Select String Thanks!
hmn interesting... thanks @odd ember I will play with that.
how do you store blueprint function or procedure into a variable?
you use cpp
thanks
well i made a mess of that whole .5 thing lmao
at best BP can offer ternary operators for functions
or well you can go hacky and use a string
i was thinking to make a generic popup window with couple buttons. Those buttons onclick procedure can be assigned with a function.
are you just talking about binding delegates? if so that's built in
oh, it's called delegates?
well no
they're called event dispatchers
but they are delegates in function
I have a modular UI element that I reuse all over with a binding like that
the buttons do and say different things depending on where they are located
so the button sends an event, we assign a procedure to an event?
then when the even got triggered, the procedure then called
yeah so an event and a function is intechangeable lingo in blueprints
behind the scenes it looks different
but they're functionally (hah) identical in BP
ok, cool. thanks bro
anyway event dispatchers are delegates, delegates can help you setup event subscriptions if you're aware of the observer pattern etc.
yeah, I'll use my observer mindset when working with generic buttons and widget such as popups
What am I doing wrong here? How do I make it so when I hold F down, the blueprint is teleported constantly to the player?
how do i wire it up
you google a tutorial
i wish the wiki was more indepth ๐ญ
youtube is really going to be the best resource for learning this stuff
grab timer call function block, set loop to true, and the time (in secs), and the function name
it basically works like setInterval in javascript
@vale seal blueprints have a built-in infinite loop called EventTick. Not recommended to use it for many things, but in this case it would work for you. Something simple that is only triggered when a key is held.
I always recommend using timers over event tick and just turn tick off but yeah event tick is an option
Your F key would set a boolean variable to true when pressed, and set it false when released. EventTick will have a single branch node with this boolean variable plugged into it and on true it does the teleport.
grab timer call function block, set loop to true, and the time (in secs), and the function name
@unreal fossil ?
event tic, huh
i'll have to look into it
@vale seal look up a youtube tutorial
for real
it's going to save you so much time
and headache
Timers have a bit more tricks to them. You basically do the same thing I mentioned except in a few different places.
Setup the timer on begin play, save the output of the timer to a variable, then instantly pause it. Then the F key will simply unpause on key pressed and pause again on key released.
or you could just use the timer directly on the key lol
no need to pause it
cleanup on release
etc.
Why would you constantly recreate the timer over and over?
When it has built in pausing functions.
Simply by seeing the project using F key for this task, I assume the key will be pressed often since that is a common hotkey.
eek
I believe sweep is only caused by SetActorLocation with Sweep = true
@teal burrow this?
Yeah, but generally you'd avoid that node for collision
Can I pick the brain of somebody who knows a bit about the "Get (a copy)" node when using a "get all actors of class" node? I apologize in advance if my terminology is a bit off, I've been mostly learning with a "hunt and peck" method so to speak, but I'll try and explain my question as best as possible. Basically I have a spawner blueprint with multiple instances of the same blueprint in the level, and I'm casting to it from inside a game instance blueprint to call a custom event. I noticed if I change the integer on "dimension 1" I can select a single specific instance of my spawner based on the order that I placed them, but some of what I've read online suggests that just because that works in the editor doesn't mean it'll work the same way in a packaged product. So if that is the case, I was wondering if I could set up something like an editable integer on my spawner, give each instance their own unique number and line that number up with the "dimension 1" pin inside my game instance blueprint, but I have no idea how to do that cleanly or if I can even do that at all, or if it's even actually necessary if just changing the integer in Dimension 1 is enough.
Im just now realizing thats a huge wall of text and I apologize for that
getting ref will technically get you an object pointer. getting a copy will get you the data from the actor
@teal burrow so if sweep = true , i can access to whatever is inside the sweep result?
although I'm not sure in which context BP uses copied data from actors
I reckon it is always a ref when it is actor
Sweeping should be only used for when you're moving an actor in an irregular way with SetActorLocation
and the fact that get copy exists is a generic expression from the array itself

I'd assume the thing you want to do is get a hit result from a sword
yes
i use two method , hitbox collision
and trace channel
trace channel can give me impact point
hitbox collision wont
So then I'm probably using the wrong Get node then?
I myself use a custom melee model that traces a shape
i need impact point for doing the " when enemy hit my shield there is a particle effect and play on hit sound"
So then I'm probably using the wrong Get node then?
@stuck fossil I reckon it doesn't make a difference
but you can try and see for yourself
Other Comp returns the thing that your colliding component has hit
note: it doesn't make a difference when it comes to ACTORS
other things may still be fair game
E.g. when you swing a sword and it hits an object, Overlapped Component is the sword, Other Comp is the object
Okay fair enough, I think thats enough info to point me in the right direction here. Thank you!
Yeah, as long as it has collision
ah
let me try out
what method would u recommend for hitbox detection , use the sword own coli , make box coli for the sword, or sphere trace
@shadow saddle depends how accurate you want the hit testing to be. If your shield is a separate actor itself and added to other actors that equip it, you can get away with using overlaps like you are doing.
I myself use box traces, like this https://www.youtube.com/watch?v=dGY9hcJnGr4&list=PL7J-TdxpvG5x9SrElWY54BT3ZG9p4Uiwn&index=27
still can't find any useful vids tbh
Personally I went for everything having a box collider and then I do a box trace that is activated/deactivated by animation notifications.
My project deals with hits on a per bone basis so I needed to use traces.
alright
@teal burrow damn, how often you do that trace, per tick? I went with 25x per second which seemed like a good balance.
its very very frustrating when u trying to implement some feature
u look for 3 different tutorial
I do per tick since I use animation data
each with their own method
then u just cant proceed sometimes cuz they are using diff method than yours
for example the 3 method i mentioned
Also because per tick only depends on the server tickrate, I'm doing for a MOBA
I guess if it only runs during the attack itself it doesn't really matter, hehe
Yep
Tbh me lad
My project has remade some things that exist in the engine
That hitbox, projectiles, abilities I've all done from scratch
I know how to do stuff in a way that I can customize at will

Programming is great like that. A million different ways to make the same thing.
There was a GDC talk I watched that talked about camera shakes
Lemme see if I can find it
nice
Basically, don't use randoms, there's a formula you can use to make it look much more natural

btw it works
this other comp thing
thank you
now i can get rid of sphere trace
In this 2016 GDC session, SMU Guildhall's Squirrel Eiserloh explores the math behind a variety of camera behaviors including framing techniques, types and characteristics of smoothed motion, camera shake, and dynamic split-screen.
Register for GDC: http://ubm.io/2gk5KTU
Join...
ahhhhhh
Your F key would set a boolean variable to true when pressed, and set it false when released. EventTick will have a single branch node with this boolean variable plugged into it and on true it does the teleport.
@proud hull aight what've I done wrong? i've watched about 3 vids and am still struggling !!
thank you
If you have a second monitor and nothing to do, I recommend leaving GDC talks there
You soak up some info that may be useful
@vale seal just jumping in to this, but your branch has no condition, it's always true
ah
@vale seal right-click that red pin on your branch node, and then select "promote to variable" or "make variable" or whatever its called, haha. Then use the "set" node of that variable in your F key event.
WHen I press F it doesn't give an output ?
you need to create a bool variable, and set it to true/false as you press/release F

anyway ill look into the video thanks
I'll defer to Slash since he's been helping you already
@vale seal you may be better off watching some introductory tutorials. This is some very basic stuff.
What're some good ones?
Not sure, haha. I personally can't stand videos, no good way to search through them for specific info.
I'm out of ideas too, I self-learned UE4 starting since 4.0
Understanding logic is the main key. With a good grasp of logic flow you should be able to understand how nodes work.
Then use the "set" node of that variable in your F key event.
What'd you mean when you said this
I think not
But from the formulas you see there you adapt the shake to a path from an attack
@vale seal after you create a variable, you can see it in your list of variables on the left. You can drag that variable to your graph and select "set" so you can set it true when F pressed and false when F released. "Get" and "Set" are the two inherited functions of any variable you created. Get will let you use its current value and Set will let you change it.
When I go to choose the row struct for my data table, it shows two structs of the same name in the same place.
Is this some old cached version? If so, how do I delete the cached version?
@keen goblet do you have a picture?
Yeah I'm still lost ๐ I think I better just binge YouTube until I get it to save annoying you
I'm lost as in I did what you said but it wont work
I'm having an issue where I'm using a validated Get to determine if a widget is on the screen. The print string for Invalid shows it knows when it is not on the screen, but it won't print anything when it should be valid. Any ideas on how to resolve this?
@vale seal show your current progress. Something may still be hooked up wrong.
im more than sure something is hooked up wrong
@torn garnet The path for the second "PopRequirement" is exactly the same as the first
can someone help me with save game object pls
you could try the garbage collection node. Hasn't exactly worked for me but it might help you
@keen goblet
@vale seal
@torn garnet If this is what you meant (https://docs.unrealengine.com/en-US/BlueprintAPI/Utilities/Platform/CollectGarbage/index.html), I ran it off of my level BP's BeginPlay, but the issue is still there
Thanks for the tip, tho -- didn't know about this
I'm having a bit of an idiot moment, how do I convert the data from the for each loop to run it into the widget?
you create a variable in the widget that you expose on spawn?
Hey guys, want to animate some rocks but the collision doesn't move with the static mesh... any ideas how to approach this?
https://gyazo.com/49df64b85a501cabb4117437151bfb47
@late dome probably the wrong channel to ask in
:S I was wondering about that, not sure where to ask tho
ok, thanks
@vale seal you keep the get node there (new var 1 node).
@vale seal you keep the get node there (new var 1 node).
@proud hull
Yep, that looks right.
๐ค not working
unless i haven't made it teleport properly
i assume the glowing lines mean it's activated; i havent even pressed F yet
What blueprint are you currently working in?
Do you have the default value of that boolean set to true?
event graph
Is this the blueprint of the character you plan to use as the player character?
where do i set that
I've put the blueprint on an object
is this testing if the object presses F or me ?
surely that's not a thing
That teleport doesn't really do anything
All you do is teleport it to where the character is currently standing
Which does nothing
aaah
To set default value of that boolean variable, select the variable and change it in its details on the right.
Or is that in your interactive cube
What node has the boolean
"New Var 1" is your boolean variable.
I assume so
Hey guys can somebody help me, i been trying to accomplish the imput movement of god of war 4 in which u only move forward after u reach certain axis value to walk or run.. i dont know how to make it happend.. thanks a lot for the help in advance
Look at the input axis value and check whether it's larger than for example 0.5
yeah i can make it happend to only walk, but then i only wanna change the speed to run if the value is 1
then i dont know how to do that
@earnest tangle you could us Get Slope Degree Angles, and check for slope to see if it is too steep to run up and then slow to a walk from there.
how do I get child of another UMG widget within user widget
for example, in main menu screen, I spawned another widget blueprint (example: messagebox), and in the parent (the main menu), I want to check if it has child of another widget blueprint (checks if it has instance of messagebox)
nvm, I found it.
Heloo, trying to learn about save games, cant tell if I am doing it wrong or it is intended to work like this, but whenever I reload the editor the struct variable saved in my save game object doesnt save any changes even after being set, kinda dumb but was just wondering if the editor was supposed to not save anything, or if I am just screwing up somehow, thanks
Editor does whatever you tell it.
After loading saved data, you can change it to whatever and Save it again.
Hey guys anyone knows why It doesn't work when i create dynamic material instance and set the target to a skeletal mesh?
@slender tundra look into blendspace. There are a few on yt that setup walk/run
@worthy belfry is there a error thrown ?
is it possible to attach spline in a moveable default scene root?
i can but it is giving me error in runtime
is the spline moveable too?
hey guys I'm making a shootemup and am able to rotate my menu widget for "rotate mode" which basically rotates the whole screen 90 degrees to fit long screens, how do I also "rotate" the controls so that they correspond to up and down and left and right for my widget
Good Morning ^^
Its only an Idea if i have a the Parent Class Characterfor all my Characters, is there a way to use Cast to Character Class in this example?
Maybe like that?
The Problem is it dosnt works xD
You have to select the class in ur cast
You don't actually need the cast. You can put that class straight into the GetOverlappingActors.
I want to rotate the widget navigation how can I do this. I want right to be up , left to be down etc.
@worthy belfry is there a error thrown ?
@flat raft
no there is not when i play it just changes to the default blank material
guys do you know how to make door sound, while it's rotating?
like in Amnesia or something
I have door mechanic ready, just need the sound ;/
How can i add collisions to mesh i added to grass tool in material?
for like trees etc.
@red bough could you play a looping sound and then stop the sound when the animation is over?
@short pawn there is no animation, I move it with my mouse
@red bough maybe you could set a boolean variable when the door is open and you could do a timer with a branch to check if the door is open play sound if not stop sound
well you could make it an animation and still control said animation with the mouse
I have something like that
and my BP_Door is empty
is it possible to make this sound with that?
and I found this on UE forum
but I have no idea where did Previous Rotation rotator variable came from
How can i add collisions to mesh i added to grass tool in material?
for like trees etc. anyone?
If i destroy an Actor while begin overlapping is active, does End overlap trigger once the actor is destroyed?
did you try getdisplayname?
for me it's working
even with a get object name.
where you do that into ur wb?
@trim matrix you're calling 'get object name'
SuperCoolNinja is calling Get Display Name
even with a get object name it should work
where you do that ? @trim matrix
oh i see
I have a separate question, which is regarding the Game Mode blueprint
It looks like the Event Tick runs every tick, but an array I'm working with only updates when I put in keyboard input, not mouse input
So I can move my mouse around and there's no update
but as soon as I touch any directional key (WASD)
it updates
can I work around that?
That doesn't sound related to the GameMode, but rather to whatever you are doing there.
yeah it's because i do that on my character blueprint not on the wb
but anyway it should work
@surreal peak Is it cool if I get a recording and post it here for reference?
check if your wb is triggered @trim matrix
The code would probably be more interesting
May I add that "GetObjectName" and similar are not meant to be used in the actual game, but only for debugging?
Before someone spents a lot of time on this trying to use that in a final product.
good to know that !
this is the game mode code
the bit that I think is causing me trouble
A video with a brief explanation of the problem is uploading
You are never clearing that TMap
Why even a TMap, you could just have an Array by the looks of it
You should also start printing some values. Is that Interaction Array even properly filled?
It is filled, yeah
I'm watching it
and it has the correct values in it
I'm using a map because I need to access the specific actor at the index of the closest distance
which I'm not sure how to communicate through just an array of distances
- You aren't clearing that Map, so you might deal with old values.
- You are adding into the Distances array in the same order you iterate over that Interaction Array, so the Indices are equal anyway.
I'm not sure 2. is necessarily true all the time, since some actors may remain in the array while others are moved out, and then re-added later so they can move from e.g. index 1 to index 2 in that shuffle
- is definitely right and a dumb oversight
but help me understand 2. better, since I feel like this is okay
So, given this happens all in one frame on the same thread, you are looping over the Array and for each element you add to an empty Float Array.
Oh shit you're right
Next frame, this repeats
then do that on your pc @trim matrix
So you have the current array anway. There is no "old actors that remain" etc.
Yeah, if they're added/removed from/to one array
same happens in the other
gotcha
thanks
Yeah but next frame you have these updates and everything is reset (if you clear that float array)
yeah let me turn it into an array and clear it after loop completion
and see what happens
I haven't really been in the conversation but is this one of those times where there should be a PQueue available in BP? ๐
maybe, but you can always say "There is a better structure or type for this and it's not available in BP."
Here it's mainly programming errors
true I guess. PQueue is just the one thing I've consistently found myself looking for
I have a mesh with a socket positioned somewhere along the edge of the mesh. I would like to use that socket as a improvised pivot point. Can anyone shed some light on the best way I could work out the transform I would need to apply to the scene root to achieve that?
@carmine prawn I don't there is a easy and clean way to do that unless you want permanentely change the pivot point.
It is not that you can't but some vector maths is probably needed.
Yup. I know I could set up an actor BP and use scene components, however the sheer number of meshes (which will only increase over time) make that approach less than favourable. It's easy enough to work out a location transform, but getting the rotation and location is another matter hence this question ๐
@carmine prawn You can set you mesh as a child of other with the proper translation (maybe it is what you said already) and rotate the parent. If it is like you said, for many actors, it will be cumbersome.
Yeah, that's what I said ๐ I'm sure there is a mathematical way of solving it, however my limited knowledge of both maths and the various nodes required makes it a more.... interesting challenge ๐
I should point out that I'm not looking for anyone to actually solve it, but hope that someone may have experience enough to point me in the right direction.
Anyone had much experience with the new "Time of Day" lighting system. I am trying to tone down the bloom of the surrounding sun but it doesn't seem to respect post-process or other traditional settings. How do I tone it down?
Probably in SkyAtmosphere settings, or possibly the directional light. Maybe in the SunSky if you are using that. It's there somewhere, I just can't recall off the top of my head.
@carmine prawn I don't really know the answer to your original question but will probably use spherical coordinates. There is a node to convert one to other (unitcartesiantopolar)
Thanks, appreciated. I'll add it to the list of things to check out ๐
@carmine prawn thanks for the reply -- I did a lot of testing and found out it was a bug. The glow was effectively stuck and adding on top of it's self or not removing, it is controlled by the bloom
Is anybody aware of the performance hit of enabling "Generate Hit Events" on a whole level (2-3 thousand elements). Only some actors will be queried per event.
how can I access this area from another blueprint? with casting or any other method?
casting works but this method makes childactors' variables private
Hey guys, I have a sequence set up, how can I get input to be ignore up until the last frame of the sequence?
casting works but this method makes childactors' variables private
i've solved this problem just now.. thanks anyway
@dense mica You have to cast the ChildActor variable you're dragging from to your BaseUpgradeElement thing.
yes, i thought it will just pass the base actor's variables, but its passing the childactors' variables
@worn nebula Depends on how you're playing the sequence. But in short, just disable input on the player controller and the player pawn temporarily and reenable it after the sequence is done.
Okay I'll give it a go
@maiden wadi I tried putting in Disable input where the red arrow is, and enable where the blue arrow is. I connected player pawn to target and player controller to controller but it didn't really seem to make a difference
I don't imagine it did. You told it to disable it, started the sequence, and then reenabled it a nanosecond later.
What is a pure cast and how do I know when to use it?
nothing different than other, you just need to use branch to check if cast succeed or not when using pure cast
Oh of course! Okay I'll put a delay in, thank you!
@worn nebula Something like this would work best, but a delay will work as well.
I like that as well, i'll give a try. Thank you for your help
@trim matrix Pure cast is a simple cast. It just casts the object. This cast doesn't check if that cast succeeded or if the value input into it was valid in the first place. Pure casting has practically no overhead. Normal, or IsValid casting will check both that the input object can be cast to that type and that the object itself was valid to begin with. Normal casting is maybe 8-15% slower than pure casting from what I've noticed, but that is doing 100,000 iterations at once. It's worth noting that the 15% sounds like a lot, but using an invalid object for calls will result in a minimum of a 1300% increase in performance loss. TLDR, normal casting is safer and well worth the 15% hit for safety.
sorry @maiden wadi , just wondering if there's a reason you disable input twice in a row?
One is for the Controller, other is for the Controlled pawn. You can feel free to remove one if you're not using inputs in one or the other.
Okay thank you
@trim matrix Different variable type.
@maiden wadi This is what I've got, went with the delay, but it still isn't working, I can press E straight away after starting the sequence. Could it be the Is Hiding variable?
what do you mean ?
@trim matrix Material Interface != Material Instance.
thanks !
loooll
i see now xD
still do i need to change the mesh itself to an instance then ?
I'm not sure. I'd have guessed you needed to change your struct, but I don't know what you're setting up or doing.
Check out my BRAND NEW Multiplayer Souls-Like Action RPG course: https://devaddict.teachable.com/p/souls-like-action-rpg-game-with-multiplayer
I created a custom character creator in Unreal Engine 4. In this video, I walk you through the entire system from start to finish. Th...
this ๐
I think I found the issue
@worn nebula Ah. This is my bad. I didn't realize you were in the level blueprint. I'm not sure what the Level blueprint technically is, but since it can have input I'm pretty sure it's Actor based. You might just add a third Disable/EnableInput, and plug the Controller into the PlayerController port, and leave the target to Self.
hioe u found mine problem xD
Yeah no worries, I think what I was doing wrong was trying to manually stop movement input through blueprint, when in the level sequence you can already disable movement input, much smoother, I was using the disable E input as a work around
Thanks for the help though!
@maiden wadi thank you alot
can you maybe explain me the difference between material interface and instance ?
guys i enabled camera actor how to disable it?
I don't know the exact differences personally. MaterialInstance seems to inherit from MaterialInterface though, so MaterialInstance is basically an extended version of a MaterialInterface. In this case, it's like saying Actor and Pawn. All Pawns are Actors but not all Actors are Pawns. All MaterialInstances are MaterialInterfaces, but not all MaterialInterfaces are MaterialInstances.
ok
@maiden wadi thanks now i know more
dam lucky got a strong computer that whas one big change in compiling xD
anyone got any ideas on finding the point at which two splines cross?
get the location at distance along spline for both splines and compare the two, when they match up you know where they cross. You'll have to decided yourself how to increment the distance, and maybe allow for some error/offset in the comparison.
ty will give it a shot
I'm making a bullet penetration system and so far it works fine, but I need some help.
I want to give every actor a tag, which I then give parameters in the bullet blueprint to decide how fast I want the bullet to be going when exiting. Right now the 0.5 is the speed of the bullet every time it collides with something but I want more control
@frigid ether Use physics materials and assign values to each of them
And when the bullet hits them it can get the surface's physics materials
And decide what speed to exit
Where do I find the surfaces physics material?
idk
right lick on content browser
click*
Physics>>Physics material
or something like that
And then you can set the physics material by clicking on the component and scrolling down until you see physics material
You mean like this?
How should I stop Movement Input when a certain event happen?
If you only want to stop movement then add a branch in the bool that checks. If you want complete input disable like movement and mouse. Then use disable input. You can enable it as well by enable input node
@carmine prawn Did you ever figure out that socket transform location pivot?
@trim matrix Same way you do normally. Just use GetGameInstance and cast to your GameInstance class type. Only difference is that it'll have a world context pin, just drag off of that and type Get World. A getter called GetWorldContext should show up.
@trim matrix It definitely does work, but your logic is wrong. You can't set a struct like that. Do you see the difference between the Target pin on SetPlayerStructure(ByRef) and the rest of the blue circular pins? The diamond Target one is passing by reference. But you're getting it from the GameInstance as a copy. So essentially you're altering a copy.
Actually, let me double check that really quickly. Because if that by ref accepts that from a straight getter node then what you have should be fine.
Im making a grappling game but its vr. iv made the grapple part in a first person bp using the character bp, however the vr mode uses the pawn bp which dose not have the "launch character" node. is it possible to have a working vr game using the Character bp? iv tryed to implement vr into a character bp but im not succeeding
@trim matrix Okay. It works fine. I forget that works with direct getter functions sometimes. I'm unsure of what the issue is. I more or less copied what you have, just with a different struct type.
BP library function
Testing hotkeys.
X continually goes up when N is pressed each time.
I did that in a function library.
@maiden wadi BECAUSE I DID NOT SELECT MY CUSTOM GAMEINSTANCE IN PROJECT SETTINGS... I just created project and i forgot it to change ๐คฆโโ๏ธ
Haha. Been there a time or five.
@prime karma Thanks for your attention by the way. With this issue u learnd something too have a nice day !
fixed
can someone help me out
idk why this is happening, everything works fine, but dont want it to be a pain when packaging
this is what i got
i know is messy, just testing it out
set collision is in the first comment to the right
basically when im pressing it only spawns one actor, so the player cant spam spawn
omg
i got it lol
because i already destroyed the actor so it doesnt have a ref to it
I have a system that is based on Event Tick that updates every frame, not ideal!
I am looking at making it only update when there is a change in the relevant variable (example being 1 second) How would I go about doing this, is it possible to get this information without the tick?
Call an Custom event when you update the variable
Yeah, I have an event dispatcher but don't exactly know how to detect when a second has increased without checking on the event tick
So that's the current setup, it's all bound I just don't know how to call it without the tick, maybe impossible?
It's a clock that takes engine time and sets the hands to their relevant locations
Would I use the Delta second in the timer to make sure it's always correct?
or does it take framerate into account already
You can also lower the event tick rate to 1 second. Have it sync on begin play, then use a 1 sec event tick.
@maiden wadi Hey Hey, Was it you that said you like using MAPS (var type) ?
when you say 1 second tick event, are you on about a delay?
This works pretty cool, thanks for the ideas!
Click "Class defaults", under details, change the tick interval to 1 second. "0.0" updates every frame.
@flat raft Maybe. Probably said it a time or two.
Any1 can detect whats wrong here? The object is updating the value but its never reflecting on the GET value inside the HUD widget.
@unkempt musk thanks for the tip!
@covert stirrup It's my first day here, I'm glad i can help.
๐
This is my solution -- Works great only updates the information once a second. Just thinking if there is a way of making it even more efficient or is this about as far as I can push it
hello, im having problem that whenever i package my game, my main menu doesn't appear, however inside of unreal it works completely normal. Does anyone knows how to solve it? this is annoying me for days
this is my blueprint
@covert stirrup You may be able to trim it up, in C++, but I'm thinking that's as tidy as you can get in blueprint.
that's fair! I don't fancy touching C++ that can kiss my bumbum
Any1 can detect whats wrong here? The object is updating the value but its never reflecting on the GET value inside the HUD widget.
@trim matrix Reupping my question
Is that a binding function? O.o
Hi! (Newbie here)
I'm trying to destroy an actor with a Box trigger. I does delete from the world outliner but it stays in the world. I also sometimes get ''Kill Pending''
It is a binding function yes authaer
@maiden wadi
i wasnt sure if i needed to put the save game code in that aswell so i just put it in there to make sure. but i also tried it without the savegame code and its the same result
I just wondered, because savegame is writing to disk. So you're rewriting that file on disk many many many times a second.
oof, yeah ill take care of that
You have an idea what it could be ? Because when i pick up the item the string prints 1
but on the binding it doesnt get a value of the same variable
For the GameplayDebugger if I dont have an AI targeted it should pickup my character yeah?
or am I just dreaming it works that way
Your latest screenshot is overwriting it, the one you posted earlier looked perfectly fine. How are you setting that variable in the savegame to begin with?
Hey everyone
I'm quite new to unreal and got stuck at this problem
I have a key blueprint and a door blueprint (both are Actors). First one has a private variable "keyType" and secod "doorType". (there are 3 correspodning types)
I want to make each key open the correspodning door. How can I access the variable "keyType" of an instance of blueprint "Key" from the blueprint "Door" in order to compare the two?
In other words:
How can two blueprints communicate with each others' private variables?
Can that be achieved through referencing the class?
@maiden wadi
wait is it because i destroy the actor i destroy the value aswel ??
@trim matrix Nah, you're not actually saving it to game, you're overwriting it there too.
iam new to saving, so followed a tutorial and thats where it got me ๐
What you're doing is fine, up until the SaveGameToSlot after the string. Basically what is happening is that the LoadGameFromSlot is creating an object with variables in it and populating them from the disk into memory. Then returning the blue memory pointer for you to use to alter those variables in memory. But then you're not using that same pointer to save it to slot, you're just saving an empty pointer to slot.
TLDR connect the SaveGameRippyInstance variable to the SaveGameToSlot's SaveGameObject.
TLDR ? means too long didnt read?
to cheer me up