#blueprint
402296 messages Β· Page 931 of 403
@wintry geyserhow does it compare to a bpi?
Interfaces?
Interfaces are still a type of cast, it's just lean. I don't have info on perf
@blissful grail Is the issue multiplayer?
No
I use this for weapons all the time, no idea why it's not working currently π
Are you trying to attach the rope to the player, or the player to the rope. Because I think that's set to attach the player to the rope (Parent). With the Player as the location, and no socket π€
Swap the Parent/Target? Idk what's supposed to attach to what though. lol
Player should attach to the rope.
hi i wanted to make a projectile stop being affected by gravity when a button is pressed anyone have any ideas?
i tried enable simulate physics and setting it to false
and i tried enable gravity as well
both didnt do anythign
no one can help if you dont ask
thinking maybe temporarily spawn an empty object and attach it but I feel like that's too complicated and there's probably a simpler solution
nvm
found out i could deactivate projectile movement
So i made a blank project on ue5 and migrated Advanced locomotion into my empty project and im trying to figure out how i can set my character to the advanced locomotion actor
if that makes sense
idk
im new to this
so
Heya everyone - got an interesting question regarding Async Loading for things like Animation Montages. Is there any way to do the following in any sort of manageable fashion:
- Async load an array of animation montage soft objects (This steps the easy one)
- Store some way of accessing the animation montage AND its name (I use the name for logic, since I randomize which animation montage to call based on different parses of the string value)
- Access the said montage to run (I use a multicast to run it for everyone so that they can see the action take place)
- Based on some criteria (such as switching equipment) - unload all of these animation montages (and start the process over with a new set of animation montages)
I am using animation layers (similar to Lyra) for my unique locomotions based on what classification of weapons are equipped - but I am building randomized combos based on the weapon itself, which hand (determined at time of attack) and stage of the combo is used in the action. If I do my randomization logic, get the name of what animation I need to pull - I currently find data table row based on name (which matches the animation montage name), pull out the struct, break it, and then async load the soft ref animation montage and pop it into the multicast. This WORKS, but I do not think it is the most effective way since I would have to async load every time any character needs to take an action; and also, I am currently not unloading the animation montage which builds bloat over time.
Any thoughts as to the best way I can try to get a bit more impactful with this would be huge! π
Advanced locomotion system is going to be extremely frustrating for a beginner. If youβre new to UE in general, youβll have a much easier time working on other elements of your game first. You can always come back later to implement Advanced Locomotion.
Cool - now my attach to actor isn't working. What in tarnations is going on...
i added respawn to my game like explained in this article, but for some reason my game starts lagging more and more on every respawn, what am i doing wrong?
https://docs.unrealengine.com/5.0/en-US/respawning-a-player-character/
ummm
why do the default cubes in the first person character starter level not get the impulse applied
but they recieve the impulse if i use a hit event instead
I would start by using to print string to confirm the projectile still has velocity at the time of applying the impulse
that was helpful lmao
i forgot i freeze the projectile mid air before the impulse
but i saved the velocity before freezing it as a variable and plugged that in instead and it still doesnt work
you know what, i think it may be smarter to look up a tutorial on how to make a grenade
And the overlapped component is valid?
yes
no hellos
and there are 3 objects in the array
doesnt consider the objects to be simulated physics
even tho the box is ticked
Print string the display name of the hit components to verify its actually hitting what its supposed to hit.
If it is hitting what its supposed, then I'm not really sure TBH
How are you triggering it exactly? Like what event? An overlap?
ohp i figured it out
thanks tho
the objects dont have generate overlap events set to true
lmao
It's always something small and dumb
"Why isn't this replicating!?" .. Because it's not set to replicate.
What on Earth could cause my player to be able to attach to some actors but not others?
I have literally never had this many problems with just attaching to an actor or component
Collision maybe? I don't know but maybe there needs to be collision to do an attach?
Maybe physics? I don't know what your rope is
Oh yeah that too^
There is no rope. It's just a class name.
See I don't know!
Is it just some Actor? Does it have a specific root component?
Because I'm pretty sure that's what they attach to right
And I've already gone down the road about physics. I made extra sure that both collisions were set up to be identical
Unless you specify a bone, then yes I do believe it does use root, or whatever other component you tell it to attach to
Even their roots are the same
So what happens exactly, does it spawn and is 100% separated, or does it spawn at 0,0,0 but is attached
Actor = root, component = w/e scene component you specify
wait, you said actor to actor, my bad. No component there
Let me record a video. It'll be easier to see.
Do the thing, run around, then check the loc on the other Actor. It can at least help figure out what's going wrong
And getting the correct wrong is the first step to getting the right π€
The first cube I attach to - works as expected. The second one, does not. Both attaches are setup identically. Only difference is what I attach too
But it's doing an array of actors to attach to, can you simplify that to 1 instance of the object?
There is only one actor in the world
It is just quick n' dirty code.
Specifically so I could keep these two attaches in the same location.
Still
That literally makes no sense.
I am only getting one actor, because there is only one actor in the world that is of this class.
From my perspective, that's the only difference. So it's difficult to determine a solution here lol
Changing that will have 0 effect on things. I am operating on the sole instance of the class.
Is it actually teleporting because of the attach attempt, or is that separate?
Got it, was concerned that maybe it was a race condition somehow, or the actor itself wasn't in the output. Weeeiirrd π€
Yeah - I am quite lost on this problem. I've honestly never encountered any issues with attaching to actors/components.
Hi! does anyone know how to check on UI if keyboard key "key" is down? (while on "Mouse button down" method)
Found it, you need to override the method "On Key Down" and cache the state, you can use that state to check if the key is down.
Is there a way to mimic the selection-highlight behaviour used within the editor? I'd love to have a highlight method that doesn't require duplicated meshes or post processing or a customized material
How do you propose it works then, if you rule out those 3 ways to make it work?
That is essentially my question
A rather elaborate Niagara particle system...
strains to think of other ways
Spoiler alert
||You can't||
Hey, I have a really odd issue. For some reason my line trace randomly doesnt hit an object even though nothing about the object has changed or the location of the ray cast. https://gyazo.com/67892aa8c0144dc7b33f7fb12cbe9dc3.mp4
Ok new plan:
Is it possible to have a material/function append another material, so I can set up the existing material as a variable and add whatever I want to it without creating a new material each time?
Does anyone have a solution for the gun size problem? Previous messages: #blueprint message. #blueprint message
Discord is the easiest way to communicate over voice, video, and text. Chat, hang out, and stay close with your friends and communities.
So, this means there's actually no way to just use raw materials as inputs, but I can at least create similar material layers and use those instead. Am I understanding correctly?
Hi.
Best way to make recoil + recoil recovery? I can't seem to make it right.. π
Any suggestions on how to make a character "dash" forward a set amount of distance and then stop? Basically trying to replicate the dash that is in Celeste but in 3D.
"Launch character" is good but I want it to be the same amount of distance each time regardless of gravity and speed.
"Add Movement Input" has close results as well except I can't "dash" upwards into the air or anywhere that the player can't normally walk.
im trying to find a way to make and set names on players only with the same tribe/team ID but when i do it like this it throws out not valid, and when i run the entire thing on the client it ignores the existence of tribeID's and does it regardless of whether they are the same or not, anyone know what im doing wrong?
Nevermind i worked it out
Okay I hope someone can help me out. I'm trying to get enhanced input working so I can let the player remap their keys. The problem is that we have primary and secondary keybinds. So I'm finding a new Display Name and then search the second mention of that display name, with which I then create a new widget. Which works fine until I try to remap them.
So I can't modify the player mappable options when mapping the key. I can output them but I am not sure how to set them. Triggers and Modifiers are also not carried over. Which then breaks the search algorithm because it can't find a match to the first key. Is there any way I can set those values?
is there a way to create an instance of a primary data asset in blueprint or editor utility widget?
i want to be able to take a bunch of data from an actor to turn into a primary data asset (the data can be loaded from said primary data asset, then changed, i want to be able to save those changes into a different primary data asset)
this is the closest thing i could find
Hi there,
I have a scene with three meshes and some materials(colors). I set up a variant manager to switch the materials of the meshes (mesh 1 has 3 color options. mesh 2 has 2 color options and mesh 3 has 4 color options). This means there are 24 combinations of colors.
I also have a Blueprint which reads out the index numbers of the LevelVariantSet and loops through all the combinations and takes a screenshot of each one.
All this works perfectly fine, but only for this case. If there would be 4,5,6,... meshes instead, I need to update the Blueprint manually, creating new loops.
Now I am looking for a more dynamic solution where I for example only needs to define the number of meshes in a variable.
Does someone have an idea how to achieve this?
guys i were adding draw line and circle debugging, they were working fine at start but now they r not shown in the previewing reference pose
Hi! I need to create a car selection menu ( level ) with 2 cars to choose, toggled with arrow left / arrow right, but first I need to set the auto possesed, default camera view to a static camera in level CameraActor_Hooligan_Level_CarSelection, but I cannot make it work
something is wrong with code
can you help ?
I don't want to use autoposses camera ( player0 ) in camera detaills
LOL
I've just found it
the playercontroller was not set in worldsettings
Is there any way to support inheritance with data assets?
Hi. Does anyone know how to make player character not being able to pass through enemy characters, but enemy characters can pass through each other (not blocking)? As well when enemy character dies, allow that player character to walk over dead body of the enemy characters?
I tried switching up collision presets, but without a success.
You can make a custom object channel for the enemies and then just set collision on the enemy to overlap pawn when it dies
I tried something like that (custom in Project Settings) and collisions with presets, but without success. Maybe you can show an example how it would work?
Enemies should ignore the custom channel and block pawn.
On death set them to ignore pawn too
I'm not at my pc yet so I can't do a screenshot
Thanks a lot! I'll try that
Hey there.
Quick question : How do I get the OnClicked of a button to work if it's created at runtime ?
In the img you can see what the WBP's event graph looks like, wondering what I'm fudging up.
I also noticed that other changes (setting style) didn't work, that seems like a relevant datapoint.
Did you enable click events on the controller?
uno secundo
Yes, it was already enabled
One thing I should look into though is the fact that the button wasn't even visible - I confused it with a button used for testing, that my so so smart me forgot to remove lol
does anyone know how to make your character move towards the direction of camera ?
You can turn off orientation rotation to movement on the character movement component and set use control rotation yaw to true in the class defaults
yes but i dun want the character to turn ,it only turn and move to the direction of the camera when i press wasd
I don't understand what that means. You don't want the character to turn or you do?
ok im working on a third person game
i dun want to set use control rotation yaw to true so player can rotate and see their chara face
the character only turn to the direction of the camera when player press wasd
Ok so you want the camera to face the way the character is moving. Not the character to face the camera direction
ok so i want my character to move towards the direction of the camera ,if i rotate left or right when moving my chara rotate to that direction ,but when i press A key or D key instead of moving to the direction of button (like orient rotation to movement) i pressed, it strafes left or right (walking left/right while chara facing forward)
for example ,i rotate my cam so see front face of my chara
if i press w the chara move towards the direc of camera
I'm moving my scene root instead of the static mesh, and because of that the collision doesn't work because the root scene has no collision. Is there a way to make the scene root without any meshes inherit the static mesh collision? So if the air plane static mesh hits an object the root scene inherits it and "bounces" of the wall?
@shadow saddle use the camera forward vector for the direction pin of the add movement input node instead of the capsule
this?
Yeah, except you can skip the get rotation
Follow camera-> get forward vector
There's another one that takes a component rather then a rotation
now it moves to the direction of cam but how do i rotate my chara to that direction?
Turn orient movement to rotation on
How do I find this one? It seems that its not there
ok thx
Its just multiply now
integer?
All math functions are wild cards in ue5 so just make the operation you want and plug in your variables. It'll do the rest
I made a button that tells another light in the scene to toggle. To place the button in the world i had to make a actor blueprint and put the widget in the actor and place it. I cant set the buttons actor reference in the world because the actor i had to put it in doesn't have the reference. How do i pass the actor variable from the widget actor to the widget or give the widget the buttons variable?
You could set the variable in the game mode and then get it from there
Is the door moveable?
What type of door is it
If u are trying to translate it, then it needs to be set to moveable
You are trying to access static mesh component 4 after destroying it
no I placed it in the world and try to interact with it
but it doesnt work
How would i do that? And wouldn't that make it so every actor would have it? Not just the one its attached too
Any suggestions on how to make a character "dash" forward a set amount of distance and then stop? Basically trying to replicate the dash that is in Celeste but in 3D.
"Launch character" is good but I want it to be the same amount of distance each time regardless of gravity and speed.
"Add Movement Input" has close results as well except I can't "dash" upwards into the air or anywhere that the player can't normally walk.
Timeline, lerping from cached current position to the same position with offset.
Is it correct node structure?
Though I'm not entirely sure if you can sweep collision with it
its a placable object, aprt of building system
Looks overly complicated but looks correct. Mine is much simpler which might give it some bugs later
Well, its still not working. I fell that Im mising something, although Im following the very simple tutorial
And I double checked twice
And redone it
Not working
It gives me the erroes, and I cant interact with it
How does it not working?
The door is just static, like a wall
It should open and close, which it doesnt
https://youtu.be/ZMZZuYVvrn0?list=PLGm9gBuuMTeuLQythBu61WK7qO31RRH7l
This is the tutorial
UE4 Base Building, Build System tutorial series.
Building Playlist: https://www.youtube.com/playlist?list=PLGm9gBuuMTeuLQythBu61WK7qO31RRH7l
Join our discord: https://discord.gg/Gr9sPP2
Free assets: https://itsmebro.net
Donate: https://itsmebro.net/donate
Patreon: https://www.patreon.com/ItsMeBro
Show the errors.
Unfortunately I cant reach that guy because he banned me from his server for me being Russian
I bet it's invalid reference.
No other reason?
Well he asked me political question, got calm political response and then banned
Those are invalid actor reference errors
Im new so I dont understand what they mean)
and I dont know how to fix it
I won the bet.
That means you owe me $50 your interaction interface function points to invalid reference.
Show the part where your player triggers the function.
That's quite shitty behaviour tbh
Yea i mean if you dont want to listen to some political garbage, dont ask those questions. I thought he was ready for it if he asked prior to helping me
I was new a week ago. When i make a button in the world set to open a door. That button needs to reference the door in the world i want it to command. I make a actor variable. In my photo its called door. And i tell it to target that door in the view port
Its kinda contrived but its how it works
π
Search on YouTube how to fix "Accessed none trying to read"
It should explain the problem
ok
Hey guys, in today's video, I'm going to be showing you how to fix and read the error message of "accessed none trying to read...". This covers, what it is, what it means, and how to fix it.
#Ue4 #UnrealEngine4 #Ue4Tutorial
00:00 - Intro
00:05 - Overview
00:24 - How To ...
They dont explain it well but it gives you an idea
Ah, yeah, that channel kinda mixbag in terms of explanation and practices
||also can't forget one time where he passed off widget with fixed delay as "loading screen"||
Why the NOT nodes, just swap your execution around there.
It didnt work that way also(
may be its smth wrong with the door?
That's barely consequential to troubleshoot tbh
I set up a button function to set parts of it. Makes it easier. You could press a button to test the door function. So you know if the trigger is broken or the door function
Define "making blueprint stop thinking"
sounds very complicated
so it won't do anything until activated, like a pause
set active only applies to a component so ig that's not what I need
Might be looking for disabling the actor's tick.
Erm... WHAT
Can I disable all events at once?
Don't execute them?
Though I think disabling tick effectively makes the actor brain dead.
IIRC even in paused game state actors can still execute events that aren't in tick
how am i meant to fix this with blueprints i know im meant to render the player on top of everything but i dont know how
the player is a full body mesh in FP mode so would that cause more issues?
It looks like you squished a slug on the wall
Im not experienced enough to help with that
then why would you post a message like that
So you don't think im ignoring you because i helped the last guy to ask a question
ah ok sorry
Heya any guys - any thoughts come up regarding how to handle Async Loading/Unloading with Animation Montages? I could really use someones thoughts on how best to approach this one:
1) Async load an array of animation montage soft objects (This steps the easy one)
2) Store some way of accessing the animation montage AND its name (I use the name for logic, since I randomize which animation montage to call based on different parses of the string value)
3) Access the said montage to run (I use a multicast to run it for everyone so that they can see the action take place)
4) Based on some criteria (such as switching equipment) - unload all of these animation montages (and start the process over with a new set of animation montages)
-------------
I am using animation layers (similar to Lyra) for my unique locomotions based on what classification of weapons are equipped - but I am building randomized combos based on the weapon itself, which hand (determined at time of attack) and stage of the combo is used in the action. If I do my randomization logic, get the name of what animation I need to pull - I currently find data table row based on name (which matches the animation montage name), pull out the struct, break it, and then async load the soft ref animation montage and pop it into the multicast. This WORKS, but I do not think it is the most effective way since I would have to async load every time any character needs to take an action; and also, I am currently not unloading the animation montage which builds bloat over time.
Any thoughts as to the best way I can try to get a bit more impactful with this would be huge! :slight_smile:```
I would like to show map previews in my map selection screen but I am not sure how to go about doing this. Maps are not predefined, nor is there a set amount. If anyone could point me in the right direction that would be great
I'd start with a structure containing a map name, a preview image, and a reference to the level to load
So I'm guessing sequencers active each execute on a different tick? so 8 pins in an execute will take 8 ticks to fire all of them? Can anyone confirm this or am I wrong?
Then you can have a data table of all levels and cruise that at runtime to present all the choices in some widget.
You mean Sequence node?
si
You prolly want soft references too unless you like to clog your RAM up, but I've never done this so idk
No, Sequence node executes them in one tick.
ah very nice, thank you
I can't get the enemy units to go into the true portion. It says, "Array of Enemy unit base references is not compatible with array of party unit base references." Anyone know what could be the cause of this? both party and enemy units are child classes of the main unit base
Is a preview image the best way? My maps are tile based so I was wondering if the more scalable way would be to somehow generate a preview
However you want to do it. You'll probably need to do it at editor time unless you reaaaaaaaally need to be able to do it at runtime and want to blow a month+ making that system.
editor time is not an option because of player made maps. I guess I'll just enforce a preview image then, thanks
For Each Loop has a wildcard input and output, so it takes on the class of the thing you connect to it. Same goes for Select. What are you trying to do anyway?
So I'm having a target list appear if my character decides to use damaging abilities. If they do, it will show the enemies (turn based combat), if using healing abilities, I want it to show the party members.
both of them have the same parent class which is why I'm so confused that they aren't compatible
Hmm... I wonder if the ForEachLoop wildcard was of the parent class, could you connect a child class array to it...
Your array types are either party or enemy so the ForEachLoop becomes either party or enemy when you connect it
I'm actually straining to think of a good way to handle it. I guess you can try to make a getter function... Just a new function marked as "pure"
And this function has 1 input (the boolean) and 1 output (an array of your shared base class)
I could attempt that, see if it would work. worth a shot at this point
And that's what you connect to the for each loop
Inside the function you do the select
Oh, I guess it would need your game mode ref too
But you get the idea
yeah, for sure, hopefully that works
Is there any other way to call the construction script on an actor placed in a level other than moving it or going into the class and clicking compile?
What I did is stole a C++ function from a certain library ("Rama's Victory Plugin") and made an Editor Utility Widget that re-runs construction on all selected actors
In other words it requires installing that or dipping a toe into C++
sorry guys, why when I package the project for Windows 10 it gives me those errors?
(or did I steal it fro Rama's? I can't recall at this point)
In any case I stole a code snippet from the internet
Dear friends, how do i make my army cube attack look more organic/natural:
They are using a simple Lerp. So my idea is to make the second, third and forth line go slower. And that some cubes go a bit faster than others
Here the LERP, how do i make the lerp randomize so that the cubes move in a more randomized way, and more organic?
your save file class has an issue when breaking the struct. I suggest you try to reload it and recompile it. If nothing is alerting you then export and reimport and finally if that also fails, remake from scratch
thanks! I just recompiled it and now it works!!
@crimson saddleif its tilebased you could just make lowres versions of the maptiles and use those for the preview right?
could make a snapshot of the current map and use that for a preview aswell maybe?
I haven't fully wrapped my head around your BP but the short version is you can set play rate on your timeline component
if you want them to play at different speeds
yup but the play rate is the float output right? Then that will apply to all lines π¦
I'm hesitant to suggest different designs from the outside but you already see the crux of the issue... You're controlling all things with 1 timeline but want different behavior from each.
yeah thats what I was thinking, but I don't know how to do that unfortunately
... and the way to have multiple of something is to put it in a class and spawn multiple of it into the world (whether that's an actor or a component, though in this case components can't have timelines)
I see. But they are actually instanced static meshes
So you suggest i create a timeline for each line?
Isnt that overdoing ? there must be a simpler way
Like for example, the float output of the timeline. What if i do something with it?
can I get some help what's going on here
Odd question, does anyone know of a way to resize a brush at runtime? I have some volumes and I don't want them extending too much or too little in maps of different sizes
@vast kindle Did you get an answer? Technically because there's a chance to load ALL of them into memory anyway just because you're loading P1's Montage List + P2, P3, P4, etc. Couldn't you just keep them loaded but then the assign/un-assign* is just the string assignment you made before? So I guess reverse order of what you're doing currently? I'm curious what your 'bloat' would actually be if you loaded them all, or had a priority load list. Sometimes it's better to just preload if it's a fast paced multiplayer environment. π€
But I'm not sure what the environment spec is, and if you're trying to save memory every chance you get.
@cyan bone
I could suggest stuff but they're all ugly hacks. But in the spirit of "solving the problem in front of me", you can generate an array of floats ranging from (say) 1 to 1.3... Each element corresponds to a spline path array. (If you want to be fancy you could make a custom struct but this is a dirty hack.)
During timeline update your ForEachLoop gets the corresponding float element (use the Index output on that node). Now you have this random float that ranges from 1 to 1.3.
Lerp alpha = clamp(timeline * float)
Clamped from 0 to 1 ofc. Or use a Min node with 1.
Thats brilliant. Once again i think you saved me. I will try it.
Couldnt each cube have Speed ?
Custom Data?
They are instances
They represent some actor tho, dont they?
They are inside an actor called CubeFighters
Right, but thats less important than what they represent , right
Being one ism actor makes sense, but the actors represented needs some data being stored somewhere
@tight schoonerwhy not float in range?
Which could have speed
would it be okay to just delete the node
If its an army unit it would be weird with totally random speeds
But perhaps thats the chaos desired
but I imagine you spawn the cubes in right?
Yeah my premise is you'd use random float in range to generate the float array to begin with
And that's your speed scaling factor.
Yup it only needs a very subliminal modifier.
https://streamable.com/ycohvz
Here i did it seanny based on what you told me more or less
I change the Timeline float to start at 0.4 and end at 1.4, instead of 0 to 1.
Then depending on the line count i subtract 0.1.
Damn, no shamisen emoji
For future reference, if you find yourself centrally storing arrays of values for things beyond the mere object reference (like a lerp scaling factor), then you're probably on the wrong track for how to structure a system
Ideally each thing that needs customized values is a spawnable object that can hold its own data and manage as much of its own behavior as possible
I have an issue with first person character, when i try to walk upstairs im unable to but when i change my view angle i am able, its not max step height i have already tried it
This is for better organization or better performance? What type of actor should it be? A data asset to store the arrays, a struct? Or make and individual function library for this attack function?
I thought it was better to have everything in the same place
Was even struggling in one actor blueprint that has so many functions and stuff
@cyan bone I'm speaking in general... I don't know all the considerations for your project. But maybe each spline path can be its own actor that has a timeline and a scaling factor. And each line of soldiers can be assigned to it? Idk. The complexity of a Total War style RTS in all of its crowdsim glory makes my head spin. Idk jack about crowd sims.
But generally speaking in terms of architecture you want to put things "where they belong". If you have a central manager, it should only have to manage the stuff that requires real coordination, like telling a line of soldiers what and when to attack. And then the lines of soldiers have their own self-managed behavior for attacking, rather than having the manager run a timeline and update individual unit locations.
I guess a chain of command is a decent metaphor here. The people concerned with high level strategy don't care about the battlefield tactics. The people managing battlefield tactics aren't ordering individual soldiers around. There's a hierarchy of delegation
I'm sure this is general object oriented programming best practice type stuff that I'm explaining poorly
I see. But putting a spline movement into its own actor wouldnt reduce performance? That would be 80 Lerps vs 1 Lerp?
Computers are fast... You're not gonna choke the system by multiplying some floats
That's not the part of UE that's slow. The stuff that makes UE slow is unintuitive in practice and hard to predict
So I would just code stuff in a way that makes the most sense from a human perspective
And then use profiling tools if it's actually slow
To optimize in a targeted way
My biggest problem is that im super disorganized. This is the full attack function, its quite messy, and i keep doing this.
I should split it into parts
yup spaghetti π
Yeah. Functions, collapsed graphs, multiple event graphs, having a class hierarchy and putting functions "where they belong" in that hierarchy, and/or putting them into BP components... The strategies are endless
Putting them in BP components?
How do you do that?
Putting a function inside a BP component?
Yeah. Let's say you have some function or some variables that actor class A and B use. If A & B share a common parent class, it might be best to put it in the parent class.
If they don't share a parent class, you can put it in a BP actor component. When you create a new BP, "actor component" will be one of the options IIRC
Then you can add that component to actor classes A & B
Slap that component onto the event graph and you can use its functions and variables
When would you want to do that vs putting it into a function in a BP Function Library? If it has to track some state?
thats a great trick. thank you. i will try it.
yeah, that's one reason. If it has to hold some data for a particular actor. Another reason is to use it as a sort-of interface; like have other actors talk to the component directly.
and the third reason I guess is if you want the component to have its own self-managed logic (events, timers, etc.)
Ah thanks. I had never thought of using it if you want to allow other actors to talk to the component
yeah, it avoids casting in a similar way to BPIs cuz an actor can take a generic actor reference and "get component of class" and talk to the component directly
Thats super useful. Omg
So practical
Does anyone know how to fix this issue?
Tried all the usual things, like restart the editor and computer and it still does this?
I'm using 4.27...
mash every button on the keyboard in case something's stuck? lol
oh ok it works in the BP event graph... sorry, idk
It works fine on a blank project, and also works on other blueprints within this project.. So cannot be the keyboard.
It's driving me mad...
Is there an event accessible to BPs for when the viewport is resized?
Seems like a simple thing but I can't find anything in the BP docs, I did find this but it seems only available to C++: https://docs.unrealengine.com/5.0/en-US/API/Runtime/Engine/FViewport/FOnViewportResized/
Hello - I hadn't yet. But I am curious as to your thoughts. I definitely can load them all which would be just fine. My question is tho - how do I access them later on and later on still unload them.
I tried to save the primary asset IDs from the objects into an array. The values returned nothing though, so not only could I not recall the animation montage to play, I couldn't even grab it to unload it.
I think that is my biggest issue at the moment; I can load these montages just fine (And honestly, prob would be fine loading all the ones of that respective selection); but how do I access them to run them and later unload them after the fact?
Currently, to get an animation, I go through my data table logic - grab the corresponding row, break the struct, grab the soft reference, async it and then run the montage/multicast. If I have them all loaded already, I no longer need to async them, which is cool, but my data table method still takes up resources in excess since I already found that animation once, and ultimately would only give me a soft reference - not point to the loaded montage. Which my only idea to potentially make that work seemed to return null values from the array.
I don't even.
Sorry I had to, I see it so often on people's Player BP's. It's so wild.
Of course not, this is UE baby!
For readability π§
Hello, i need your help pls. I am using UE5 and do a Tutorial from UE4 and cant find in Blueprints: Vector - Vector; Vector + Vector, Float * Float. Is it possible to do it in any other way.
sorry guys, how do I get the player's internal IPv4 so that I can show it on a widget? is that possible?
drag from a vector variable and search for multiply
the nodes have been replaced by one universal math node for each operation (+,-,*&/)
@vast kindle You got me in a rabbit hole on batch Async now. lol
Hey guys I have an actor with two components. If I place that actor into a level and modify it's instance, let's say the relative position of one component to change the offset to the second component, the change is not accounted for in the event graph or the construction script. It always takes the relative position with which it was originally placed in the blueprint viewport. Is there an option to consider the current instance value within the level instead of the "default" value?
No
Any modifications you make to an individual instance are only for that instance
At runtime, will calling Get Relative Location on the component get the rel location for that component in the instance that's calling it? If so @rich axle could do that where they want to make use of a particular instance's component's relative location, right?
I think it does at Runtime, but I would need it in Editor time aswell, as it is relevant for previz/previewing the behavior
Hah, yeah - I am curious as to the best approach with it.
I think I'm running into some similar issues, where it's mostly about the best way to run the Batch Async, while also pulling that same list for referencing to play later. But I think the first step is just a basic Struct of Anim Types you want, where something like 'Rifle Animations' would be an Array of those Anims/Montages in the Struct. Then doing a For Loop on Begin Play to Async Load them.
I was thinking a 'Map' of the Animations would be neat, but Loop + Async doesn't like that at all.
Hi. I have slots I put my hands in and im calling a function inside the overlapped slot to highlight when my hand is overlapping. and to end when the overlap ends. GREAT! .... BUT some of the slots are small and close together and results in me overlapping multiple and having more than one highlighted. I tried to force it to only allow one slot to be valid But its causing another issue. anyone got a better idea than this.
im kinda having a problem here, i made cuttable trees (they turn on physics and fall over) but the actor location of the tree doesnt seem to update when i do that
so my woodcutter would just keep attacking the spot where the tree was
how would i best fix this?
They're probably still interacting with the Root Component's location @limber parcel
I'm assuming this isn't multiplayer?
so i have to actually get that phsyics mesh location?
its just singleplayer for now
Yeah, because that's the thing that moved
cant i somehow parent everything together?
and how would i best handle this when the mesh is sometimes a skeletal mesh and sometimes static mesh?
You could also just output the loc of the fallen child component and on bool fallen, get that loc instead of the root
I can't tell where that is in the thread of functions, or when it happens. How do we know the location isn't just saved from before it fell? When is this get loc occurring?
hello can someone help me please i use unreal engine 5 and the tut is ue4
if i make multiply i get x,y,z
but in the vid he got only 1
basically it gets this location every time it attacks to track the target
so yeah it gets the location directly from the actor object
i try to get the static mesh with this but it doesnt work either
btw do all mesh components have a common base?
like can i use this and it will find the first mesh type component it gets to?
Might be a bit redundant, but I typically set a location var in the actor on play, and then on state change. Depending on how I need to interact with it, or if I need to interact with a sub component of it in a different state. Especially when dealing with AI and Multiplayer. So then your AI would get the Actor's loc var instead of fiddling with different components at different times. Also helps keep the AI functions and Tasks clean if they don't have to fiddle with a shit ton of different location conditions, and it's only set in the interactable actor itself.
Begin Play get/store self loc
rep bool tree fall get/store component loc
At least to me, it's way less fiddly down the line when you're potentially dealing with like 10-20 other AI interactables
I also do this for interactables that could cause AI to fail nav too. So if they're a sliver outside of navmesh somehow which can cause get pathing to fail, I'd run a conditional check valid nav within distance, and set loc.
Then in the Task, get that loc and not the actual actor root.
Is casting too expensive to do every tick? I heard it's not recommended
If I've got an enemy BP and multiple of these on a map, would there be a way to make individual changes to specific ones in the map?
I'm trying to find a workaround but unsuccessful so far
@white elbow It's not advisable to do really anything other than basic functions on tick. I'd almost advise you never touch it, especially when you're not sure if cast is expensive.
Why do you need to do it on tick? Is there a place you can set the reference instead?
What functions occur in which you need to pull that reference?
You should typically do an Actor Is Valid > Set Reference as Var
Then call that reference how you need it
but how exactly would i go about that?
I need to check if the current weapon object var is rifle, set visibility of the widget, and get some variables from it
you can make run once and use a delay to reset it
but I think equipping/unequipping the rifle should fire these events now that I think about it
try using interface or components instead of that casting
wdym by interface?
never used it before, but I'll take a look at it, thanks
basically u can attach it to ur weapon and make it output a type component with which u can work
looks like this stupid code actually works btw
Only problem is if you're using physics, you'd need a way to get the location again. So I'm thinking maybe your issue is the get model location isn't valid. Or you're still pulling the root component location because the model loc isn't valid for some reason.
That's good π
but that just sets the variable once?
@white elbow So the question there is, how do you set the current weapon to Rifle? You can use an Enum and track it that way, then set your visibility off of that.
@limber parcel It's an example of just conditional setting. You can add a branch condition for 'Fallen' to the Event Begin Play too ofc
i think i will make an object variable instead that refers either the root or the mesh component
Yeah tons of ways to do it, I just try and keep that type of info in the actual actor if it's something like a changing resource.
Oh the lines? I use Electronic Nodes https://github.com/hugoattal/ElectronicNodes
The noodles are difficult for me to read sometimes lol
Hello, is it possible to detect a hit/overlap of a static mesh inside a root scene while moving the scene not the mesh?
me?
My AI character is only in the level once, but the AI controller is spawning five times. is that normal?
also the AI isn't running
They say that AI will takeover the world 
it's being very inefficient
I am using the ImportFileAsTexture2D node and my textures look blurry, how do I import them with the correct mip settings?
Apply Point Damage seems to apply an impulse to physics objects, can I modify it somehow?
YES
It doesn't seem to have any relevant nodes
why do you need point damage?
is it... not used that often?
sounds kinky
i dont see the point in it lol
basically u would always apply damage to an actor or not?
@limber parcel why ?
so it's better to use the simple apply damage instead?
if you dont have a specific reason to use the point damage i would say yes
ok, noted
do i have to make a child blueprint actor in order to make minor changes to a BP?
(say like give an enemy a different gun for example.)
This is the only way to make the specific movement so yeah
never say that in unreal engine lol
i made this to randomize my tree models, u can make something similar for ur weapon i guess
the animations would be handled by layers in the animation bp and you can set those too or set your animbp with all the layers to handle any weapon they might have
does anyone know how to force textures imported at runtime to have the correct LOD settings? normally it gets done through a texture group but I can't get anything to apply at runtime
quick unrelated math question. I have an x,y grid of a known width and height, and an array of grid "tiles". How do I find the array index corresponding to a coordinate?
My math brain isnt working right now
usually it'll be ((column -1)* row length) + row = index if they were added in order
Idk something like that
how to paint actor foliage in UE5?
for some reason it only lets me select static mesh foliage
Anyone know if actor velocity is only calculated on physics actors?
This is how I'm rotating my base pawn class to face the direction it's moving and move based on the direction the camera is facing.
I tried using velocity but couldn't get it to work right. Anyone know if I'm missing something? (Purposely not using movement components btw)
were you drunk when you made this?
why dont u just follow some tutorial?
just search for "your_game_type unreal tutorial series" and the first video usually shows u how to set up your camera
(and in some cases how not to)
Does anyone know of a good tutorial for lap times around a race track? The one Unreal provided on their official YouTube is too complicated
I just want a lap time to appear
Because a tutorial would show me how to use the character or pawn movement components which already have this functionality built-in..
Base pawns do not and cannot even use the add movement input node.
This works perfectly. I was just wondering if anyone knew of a more elegant solution for determining the direction of movement and rotating to face it
@limber wing at the start of the race save game time in seconds and then when they pass the finish line subtract the current time from the start time
Yeah, that sounds like what I'm trying to do, but will it work for multiple laps in a row?
If you save the current time you cross the finish line each time
Would I need two hit boxes in the same spot? One to initiate stopping the current lap, and one to start the next one?
No you can do it in one overlap
if velocity isn't working well it's easy enough to just save their previous location in a variable on tick
this is not great advice lol
Thats what I did but it felt like unreal provides this somewhere
he had a specific question in mind, not "how make unreal game"
well i have set up my camera like shown in the rpg series tutorial and it works
no correlation
@limber wing yeah basically, but you'll want to subtract the start time from the current time before replacing the start time with the new lap start time
I actually think just storing the prev location manually is fine because it can be controlled more
your solution makes sense except for maaaybe the delta time distance length thing
maybe have that raise interp speed rather than multiply delta time @tawdry surge
of course internally the math might cause an identical result π
I'm actually only using delta time so that when I stop moving it doesn't 0 out my rotation but I probably should use it for interp speed too just to keep it even
of course it may also be helpful to consider when you don't want them to rotate
but that should be straightforward to figure out
I think this is correct
It might do something weird for the first time I cross the start/finish line (when there is no lap start time to pull)
You can do a branch and if start time =< 0 then skip the math and just set the time
Smart
I'm creating a function to display the laptime, but what would be my object reference when I cast to it?
My checkpoint is just a box collision
Since the player overlaps the box collision you can save the time to the player and then have the player call to the widget (since the player controllerowns it) and set your text box on the widget
Oh ok
This way you can let each player pawn/character handle knowing it's own times.
You may want to move it to player state or something if you end up doing multi-player tho
Gotcha, yeah that makes sense
This is in my racecar pawn, I'm not sure exactly what to do to get rid of this warning. Sorry I'm a noob
Or should a Custom Event trigger this?
It's saying you don't have a box collision component called checkpoint1
Just delete that event and make a new one
Nevermind, I can't use the event begin overlap because it's not in my racecar blueprint
I am out of my league with this stuff lol... but I think I finally figured it out
Nice
Thank you for the help
Looks like it works about 70% of the time, and the other 30% it returns a laptime of < 1 second, usually like .008-.025
Which makes me think the event is getting called twice
Maybe..
You can add a do once node and reset it after a 1 second delay
Just to make sure it's not getting called for each component
Oh good idea. I added a delay node after casting, which works sort of, but it probably changes the laptime
Yeah probably
Hi. I know it's related to physics, tried some forces, putting a high mass to the enemy, changed Collision Enabled to QueryOnly under collision presets, for both target and player characters, but nothing (might have done incorrect something or missed something if it's related to previous settings).
I want to disable physics pushing for enemies, while still leave physics objects (in the gif you can see how just by walking in the enemies they are getting pushed at times, not always, and I want to get rid of this pushing).
Are you simulating physics on the enemies and character?
I'm trying to kind of getting rid of them, without losing Collision (where player is blocking them) + MultiSphereTrace can be calculated on them. Otherwise, I don't need these kind of physics.
There's a check box in the details panel in the physics section for simulating physics. If you turn that off that should stop.
They'll still have collision and physics things will still react to them
If you mean for CharacterMovement "EnablePhysicsInteraction" it did not change the behavior.
Not sure what's causing this, it's for sure Physics side, but by unchecking that checkmark I though it would work as well.
Hey guys, what does inverting a rotation do?
I thought it'd turn all values to their negative version but it just seems to subtract 5 or so from them
I imagine if the rotation would point in direction A, inverting it would point in direction -A
@ornate dragon nah I mean on the collision volume and or skeletal mesh are you simulating physics. Itll be a check box in the details of the component under the physics section
is it normal for the default movement of Defaultpawn to not replicate even with replication on?
How do I expose "Class Defaults" in a Blueprint as variables? Trying to set up a function that simulates tire wear
This doesn't seem to control anything?
Looks like that's already checked for me. It's not showing anything. Maybe because this is a chaos wheel blueprint?
Sorry not sure, not super familiar with physics related classes π¦
I guess I'll try Can Be Damaged
How do i detect when my character is rotating? I have a Mech that must play a sound when the character rotates. And then stop playing the sound once the rotation is finished.
Normally the rotation is done automatically when you click move the character just like when moving
maybe compare rotation on previous frame with rotation on current frame?
Thats on the tick event right? Thats expensive?
but maybe its the only way π¦
entire engine runs on Tick
This made me think. If the standard character rotation and character movement is maybe expensive? I could try to make an empty actor, and just move the army by click and lerp. Wouldnt that be cheaper?
you're worrying about wrong things
you need to also make a throttled event that would play the sound. you can look on the internet on how to throttle an event.
premature optimizations = death
tick is not expensive. comparing a rotation is nothing for todays cpu. (heck even ancient cpus can do that quickly)
especially when you don't fully understand what you're doing
couldnt find much except throttle input for vehicles
set throttle input
you know what? I think I found a better way
forget my throttle nonesense
just use a timer.
Did you solve your speed issue yesterday?
Yup:
https://streamable.com/ycohvz
It looks way more human now.
I changed the Timeline float to start at 0.4 and end at 1.4, instead of 0 to 1 float.
Then depending on the line count i subtract 0.1. And also have an array of floats with random values for randomization along the soldiers.
Its mesmerizing to look at π
If I recall correctly, there's a 2-sided setting in the material?
moved to proper channel my b
Nice ! Id wrap some stuff in functions to clean it up (and move to cpp but thats another story)
Although i made a program in cpp in the past, i know nothing of cpp in unreal. It looks quite scary and like an advanced step. So im trying to learn and do everything in BP before going to cpp.
guys just a question... how can I create a session with a code? I mean... when the player wants to join a friend session he must write the session code
and not the player's internal ipv4 (ofc u can't join a session from another Wi-Fi inserting the host internal IPv4)
It's not as scary as it seems once you make the leap π but i get your point
Which node should I use? I have input value in range (0, 0.7) and I want output alpha (0, 1) so that 0.7 is 1 and 0 is 0?
Thanks
how would i increate/decrease ortho width over time?
right now i can only set the ortho width and it jumps to that value, i want it to somehow slowly increase/decease that value with the mousewheel
Probably have to animate it on tick? Set a new float variable named Ortho Width Target or w/e
And then on tick use fInterpTo node
maybe timeline would work?
Yeah you could use a timeline. It's tick-like. I suppose it depends how you want the animation to work, though you'd have to set two variables β one for the starting value and another for the target value
And lerp the two floats
with a timeline float track that goes from 0 to 1
i have another(unrelated) question. I want to set the pitch of my ortho camera(up/down) between two distances/degrees. I am able to rotate the camera in the yaw but i cant figure out the pitch. This is how im doing yaw:
I never used an ortho camera before so idk exactly. Can you get mouse Y axis and plug it into pitch?
i tried that but i cant figure out how to clamp the values
its not like camera rotation where it can be clamped between -60 and 30 for example
Probably set world rotation by getting the springarm rotator and manually adding the axis value to the pitch
And then clamping before setting
Maybe there's some more elegant way
But that should work
i printed the values of mouse y
looks like these values, cant make sense of it though
https://gyazo.com/41b248af52b670527466ae65806c0149
im stupid, clamping that would do nothing
You take the current pitch, add the axis value to it, and then clamp
And then set
Put mouse Y on its own execution line
And on that line, use "set world rotation"
Keep roll and yaw as-is but modify pitch just as you're doing
The problem with your screenshot is you're using a world rotation value to add relative rotation = camera goes nuts
that sets the yaw to 0
Plug the break rotator yaw directly into the set rotator yaw
when the mouse go y itll set the yaw to 0 it looks like
that works mate thanks for the help
@tight schooner I have been experimenting with the tip you gave us yesterday on using actor components to reorganize functions and variables.
But there is an issue. Its not possible to use timelines. Is there an alternative around this?
Well its possible to use Set Timer though
The problem with timelines is they're already components, so you can't make a BP component with components
What am I supposed to put here?
Cast checks the class of a spawned object
You need a reference to an object somewhere in your game world
Not sure what you're up to, so that's a general description
alright. I'm trying to make it so when the missile hits, it will tell the spawner to create a new missile.
replace the cast with an interface then
interfaces will help u get around alot of problems
When your spawner spawns a missile, the output of the spawn node is an actor reference... That's a reference to the missile you just spawned
And you can save that to a variable for convenience
(optionally)
In any case having that reference lets your spawner know about the missile and talk to it
like this?
Well, almost. The first missile has to be spawned right?
as a rule of thumb u never want to cast to your own types
Does a missile even exist before beginplay?
no, it spawns on begin play after a delay of 5 seconds
stop it, just use interface lol
Huh. Does the spawner spawn it?
yeah
Messiness is temporary. but on begin play the spawner creates a missile after a 5 second delay, then im trying to make it so the missile tells the spawner to spawn a new missile on deletion
OK, the order is kinda weird. It needs to start by spawning a missile. It can't bind to the missile's event if the missile doesn't even exist yet lol
The order of operations is like... Beginplay, wait 5 seconds, spawn a missile, save the return value to a variable, set your homing target and whatnot
And bind to the event
Hey, any idea how I can get my camera to move on its own X and Y axis even if it's rotated? I'm stumped
https://i.imgur.com/5KKCst8.png this is what I have so far, only works on the mouse X/Y but doesnt work if the camera is rotated
Did anyone of you, who followed this tutorial had a problem, that no character was spawned in desired map/level ? Looks like that level loads with default view set at 0, 0, 0 XYZ and with no pawn
Hey guys, in today's video, I'm going to be showing you how to create a character selection menu. In this, you can choose which character to play as before entering the game from the main menu.
Main Menu Tutorial: https://youtu.be/K1vVbwMJCTQ
#Ue4 #UnrealEngine4 #Ue4Tutorial
_____________________________________________________________________...
I'm not entirely sure what you mean. If you want to offset the camera or otherwise have multiple levels of rotation/transform, you can attach the camera to a dummy "Scene Component", which is just an empty component with a transform
And then you'll have two layers of rotation to play with
you could save ur missile actor to a variable
and keep checking if it still exists
and spawn a new one if not
It's better to make logic event-driven if possible rather than continually re-checking the state
The missile can report its own death with a dispatcher... That seems to be what theyre doing
thats a bit overkill imo lol
just use interface
call interface on launcher when missile explodes
and done
Hey unreal slackers, wanted to know how I could add Nav movement to an actor that is not the default character?
https://i.imgur.com/lHAheuk.gif this is my problem
I'm specifically looking to implement the "IsFalling" node
sorry its a small sized gif
i just need a way to always get the forward vector and have the mouse x/y correlate to it :/
you should be able to just add it to any actor type
scuse me it has to be a character / pawn type
@ember oracle make the mouse XY value into a 3D vector, get the camera yaw, and Rotate Vector Around Axis might work (with the axis just 0,0,1) https://docs.unrealengine.com/5.0/en-US/BlueprintAPI/Math/Vector/RotateVectorAroundAxis/
then u give him an AI controller and tell him to do nodes
It is a pawn... but it seems not to work... it says "the target needs to be a nav mesh component"
are u calling it on the character or the AI controller?
on the character
try on the controller then
still not working XD
it should
it doesn't even connect
the controller has the nav movement component
Can anyone tell me what the heck it is I'm doing wrong here that would cause this to randomly not work? I've read that sometimes there are issues using delays in widgets (the code behind it doesn't fire off) but I have no idea why that is
https://i.imgur.com/N7Lyog3.png this doesn't work, probably doing it wrong though
is this what u were looking for?
@ember oracle idk, it is what I had in mind
Well I'm not using the Character movement... :/
well if you want to use nav i guess u need it
@ember oracle oh actually you're straight up setting world location with the axes. Probably looks like there's no panning at all?
Try adding
Add offset or whatever
Otherwise the camera won't move anywhere
Otherwise the camera won't move anywhere
Cuz the result of Rotate Vector Around Axis is an offset and not a world location
Okay... so I'm making a platformer and I've been using a line trace to replace the IsFalling node... the problem is I've added a wall run, but sometimes the linetrace activates while wall running which interrupts the wall run
Is there another way to make a better "Ground check" ?
My last resort would be to make "ground" boxcollision with an overlapp event... but that would make the level creation way longer π
so...
how would one go about making a branching dialogue system

a nice component that i can slap on an npc, and i can put in as many dialogue options / response options / branching paths - as i want to
I figure people write the dialog into an external CSV file or something... God forbid you do the writing in UE...
I really don't know though. Sorry for the useless response 
i guess i'd have to make like a struct array for dialogue...
and one for options....
And then i'd need like an integer value for which stage of dialogue i'm on
and which branch i which stage...

that sounds like pain
i am creating physical pain as we speak
Seems like the type of thing you'd be able to google though?
Or even UE marketplace?
Hey,
I am a beginner and looking for an Unreal Engine dialogue system blueprint tutorial, where the actor or camera is not moving, just like in a visual novel for example.
Please ping me of DM, because I legit can't really find any good ones on youtube.
Thank you! 
@tight schooner because you were a genius with mouse X/Y, any idea how I could replicate that into keyboard axis?
@tight schooner @limber parcel Thank you for the help. I went with interfaces and got it working, I however had 1 concern, on my first time testing it when it worked properly, it crashed UE5, i opened UE5 and tested again and it worked good.
join me in my desperation
so A/D = left/right, W/S = up/down

Another questions I have... I'm using some high "forces" in my game which often result in me breaking through the collisions... is there a way to "Strengthen" the collisions?
I think you can map buttons as axes (see project settings β input)
I think it's a general problem in communities about game engines and such, that there are too many people who have questions but too little experienced devs who can actually answer them, sadly
I've done that, would I have to have two separate functions to do the left/right and up/down or could i do it all in one with the axis?
It's kinda night shift in here. Try asking again in 10 hrs or something. I'm scrub tier next to some of the other regulars here @weary lodge
well I assume there are not only american people doing UE huh
hah
@ember oracle idk when it comes to mouse axes vs input axes. At worst you could get them all and add them up before rotating the vector?
Unless sleep schedule broke and just wake up at 3am 
I donβt know of a tutorial for that Greg sadly. I wouldnβt even imagine there is one. And then even if there is one, Iβd imagine itβs a bad tutorial anyways.
Kinda not a standers camera setup that people would usually make tutorial on
Though it is a incredibly simple camera setup.
Maybe something to look into is whatever UE has for cinematics? Idk jack about it myself
you could try the environment query shit
sometimes that happens
set ur shit to save on compile
I mean I would imagine that you literally could just place a single camera in your level, facing forwards, and never move it. Just change the background
you're a god
thank you so much again
Yeah, but how do I actually do the dialogue?
that was the question
Oh I see. You canβt find a tutorial about dialog system? Iβm sure there is plenty.
How can I prevent this?
I'm trying to get a BP component from overlapped meshes, but not all of them have it so I'm getting this error. I've tried "isvalid" node but returns the same result. I've also tried != than null but still I get the same errors
Well, yes sure, but there are billions. I was asking if someone already knows a good one
Itβs usually hard to find recommendations about βhow to do systemβ tutorials here
Most of us would tell you to never ever watch a tutorial
@cursive grove IsValid shouldn't produce "accessed none" errors on its own seeing that the whole point of that node is to prevent those
As long as you don't try to do stuff with the invalid data before/after checking whether it's valid
Yea I was looking at the order of things, I did it now. I was checking if the static mesh of the component's owner was valid, weird stuff. I plugged in the component itself and it's cool now
@weary lodge I wouldn't take a tutorial as gospel but sometimes I look at them to get inspiration for how people approached a problem
It's the... learning how to write BP via a random YT tutorial is where things can get iffy. Epic has its own learning courses for BP if you need something formal and official
Did anyone of you, who followed this tutorial had a problem, that no character was spawned in desired map/level ? Looks like that level loads with default view set at 0, 0, 0 XYZ and with no pawn
https://www.youtube.com/watch?v=ziAkrTv59TA ?
Hey guys, in today's video, I'm going to be showing you how to create a character selection menu. In this, you can choose which character to play as before entering the game from the main menu.
Main Menu Tutorial: https://youtu.be/K1vVbwMJCTQ
#Ue4 #UnrealEngine4 #Ue4Tutorial
_____________________________________________________________________...
Yea stick to official epic services if you are trying to learn how to write BP. Most all other sources promote horrible practices. If epic doesnβt provide something on it, then like he said, itβs best to just look at other sources as inspiration instead of actually following along.
Talking to Greg I am
That sounds like you just donβt have a pawn set to be used in your gamemode?
The tutorial made you make a custom gamemode?
Oh does this character select screen change the pawn that is supposed to be used?
I see
Show the code that is responsible for switching the character.
I have done a simpler function just to check if the pawn class is stored and it seems so
ok
That looks fine to me, now in the game level, how is the correct pawn being spawned and possesed?
and to make sure, you are seeing "FINAL CAR HOOL CHOSEN" and "FINAL CAR BUG CHOSESN" print correct?
I think the level BP executes before the gamemode spawns its pawns.
One sec i think i remeber where i can check.
you think I should add the delay node ?
in here ?
0,5 second should be okay ?
Hello, I have a problem, I want to spawn 2 random objects that will be chosen in a list, except that if there is not as many TargetPoint as objects then I have an error, how can I stop the object appearing when 2 objects have already spawned Ping me please
*It appears if there is a target point, otherwise not, and it makes me appear only the first two of the list
added 0,5 second and still the same
yes im sorry, it was a different thing that runs begin play first.
anyways then, is the correct pawn being spawned and possed? It may be that the spawn location is just incorrect.
i will check
during runtime, you can press F8 to unposses the character.
you can then look in the world outliner
and check everything that is spawned in.
Make sure the correct pawn is spawned in or not.\
I have set another spawn point ( spawn location ) just above the ground
right here
still nothing
looks like it's not colliding with anything else
Ok well first, I need to know, was the correct pawn spawned in?
Then thatβs the first issue.
try this
make sure that value is actualy correct.
You said this comes from begin play? Does it directly come from begin play? Im asking cause in my mind I have not ruled out the possiblity that this may not be executed.
yes, directly
ok good.
but from sequence
From a sequence? can you show?
right before you spawn the actor.
begin play ?
correctly ?
yes, what does it print.
It is not being saved then.
I did a simpler function activated with P
but the outcome is the same
saved pawn is: CAR HOOL CHOSEN
What it prints that?
Not
CAR HOOL CHOSEN```
there is a diffrence when there is a space
sorry I don't exactly get what you men ?
*mean
do you think there's an issue with typing ?
Sorry dont worry about it.
damn I have no idea what may be the problem
but you say, that the actor class doesn't get stored
?
Anyways, the problem lies before you even make it to the other level.
For some reason the class reference is just not being set properly
I think the problem is on the Enter input event
maybe there is smth wrong with the car bp ?
Have you checked if the P Input is actually saving the variable?
Cause right now they are only printing a hardcoded text
The variable "Should" be getting saved here
this is on another level
yes, that was on the game level, it was a debug key to check if the variable was being saved or not
oh wait
But is it being saved? because that was never actually checked
yes
Nothing is actually checked here
that is what I was about to say, he needs to make sure its being saved.
Does pressing P already cause accessed none errors?
this debug key is on the character select level, it does the same thing as code elsewhere that also is not working.
So im sure its just not being set correctly.
Oh oml, do you even have the pawn placed in the level??????
on the character select screen?
and why do you even need todo that?
you can littelry just hardcode the value of the class set node

Unless it's a child class
The setup in itself is of course utter garbage
But if they are learning, then it's fine
I have this simple setup for my blueprint. I'm trying to get the scale of the Tire component. I tried using Get Relative Transform and Get World Scale, but both simply return 1, 1, 1. What am I missing?
That's the transform of Tire
the pawn is not placed on the car selection level, nor on the "race" level
then that is the issue
They would instantly tell you that the GetActorOfClass returns null
Hm, are they also 2,0 2,0 2,0 runtime?
Nothing that resets the scale or so?
I'm trying to fetch it in the construction script, but yes even if I run the program the scale remains 2, 2, 2
Indeed strange. If in doubt you could make your own variable and drive the tire scale and whatever other logic you need it for with
I suppose while I'm here: what's the recommended way to only scale a single axis inside a blueprint?
So far I've only found nodes that take in a vector
Do you have to fetch the component's current scale for the other two axes and feed that in?
no errors related to car selection
Did placeing each pawn in the car selection level fix your issue?
you can litterly just put them under the map or something
yes?
accessed none
yes, the GetActorOfClass node searches the entire level for a actor that matches the ActorClass input.
If it cannot find one, that node will return an invalid reference.
If you try to use an invalid reference, the accessed none error will happen.
and if I set actor class by manual
Therefore the solution is to place each pawn inside your character selection level, so that when GetActorOfClass node runs, it will search the enitre level for the pawn and it will actualy find it now, because you actualy placed it in the level.
And yes, that is what you should really do, this whole get actor of class node thing is not a good way of doing it at all. But before you move away from it, it is important to understand why it was not working.
and understand how it could have been fixed
WORKS WORKS WORKS IT WOOOOOOOOOOOOOORKS!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
YEAH YEAH YEAH !!!
THANKS THANKS THANKS THANKS THANKS !
π π π π π
do you understand how the GetActorOfClass node works now?
yup
Hello. Can someone please help me as im stuck for long time now ... How can I make sure that the player controller will only have it's mesh changed ? I wanna change the mesh of my character, but keep manequinn on AI
it looks for an entity in a level
Ok good, now feel free to delete it, and just set the saved actor class variable directly.
@near wolf you need a reference to the mesh component and then you can "set static" or "skeletal mesh"
how is set static or skeletal mesh gonna change the mesh only on my character ?
Hey!
How do I change the field of view of the playerstart actor?
Without using a camera
is there some global FoV option?
@near wolf If you make a skeleton mesh variable and set it to instance editable and expose on spawn you can set the mesh in the construction script of the character
Hey guys this is pretty basic but I dont get it. Is this a bug idk what im doing wrong
Also those debug boxes in the BP editor are buggy af
You gotta print the values to be sure what they are
specially if you do stuff in a loop
yep i found it
Let's say I have a botton, when I click it it opens another level.
Now, in this scenario, I want to have the click be influenced by a %. So, if I click on the botton, it opens up lvl 1 40% of the time and lvl 2 60% of the time.
How would I do that?
You can do it like this
dang! thank you
Okay, but where do I put the On click in?
That will open the 2nd one virtually everytime. Id do a random int in range and set the range to 0-1000 and check <= 400
Same principle but it'll be a bit more even results
And yes put it on clicked
I need to apologize, but I am a complete beginner, so I would need something visual to understand it
I have currently this:
okay
And check if that result is <=400
How would i do that?
Pull off the result and type <=
tihs?
Yep
That'll give a larger range and will end up with more accurate results.
Still won't be exact, but should be good enough
Oh nice! Didn't know they had that
The int bool nonsense is fine for what they just did, but this is definitely a time saver for things that need more accuracy
thats way cleaner to read, too
Ooh, thank you! :D
is there a way to get a nav mesh bounds volume with custom dimensions and not in a square/rectangle
is there an equivalent node for strings that behaves like formattext for text vars?
Or are appending and building the only options?
Hi!
I've been trying to make tricky blueprint riddles on twitter the past few days for fun. And then I was going to give people the answer a bit later. But I realized that there is one riddle that I just don't know why it works like that π
Basically, the riddle is. what happens if you make a ForLoop that loops a few times and you add a delay node inside of it. The "trick" here is that we don't slow down the forloop with the delays.
But when I think about it, this doesn't work as I expected. I would have thought that if I create a ForLoop that loops 3 times and executes the delay(1) node that it would just create 3 async tasks that will all finish after one second
But it looks like only 1x task is created. And its the last one.
Does anyone know how this works behind the scenes or have any insight? Would love to learn more π
https://twitter.com/GisliKonradsson/status/1539639095827173376
What's the best type of component to use as a mounting point? So i have a skeletal mesh, and then I want to add a mounting point child component so that i can attach stuff to its position. Should i just use a static mesh without any mesh?
can I do the same thing by numerous ways and it will work normally?
Note that i don't want to attach the thing directly to a socket on the skeletal mesh, as I might change my mind where the mounting point should be, and then i don't want to have to dig back through other actors and change the socket



