#blueprint
402296 messages Β· Page 853 of 403
then you have the memory taken
yes
I require the memory of the character is not used
just show me with bp
I have a problem like this can anyone help?
@whole coral
Hey guys, in Bulk Edit via Property Matrix, you have to pin every property to display a column for it.
Is there anyway I can open all of them or save the pin setting?
as an example of how it could be done
this is just in-editor
you'd need your own logic in the placeholder, perhaps some collision, to define when to spawn in the actual actor
Hi dear friends, I need a little performance advice, please help me. I heard casting is very cost. So I destruct my data structure like this. I mean i was use one parent that named item and if nesessary cast to weapon or shield class but then convert to different parents like bp_weapon, bp_shield etc. What do you think about it? Which method would be more correct?
adding to inventory, do you need the references in the first place?
ok
no matter whether it works or not
Many thanks
you are the only one that helps me
Not only for adding to the inventory, but also for many mechanics, the operations I do at once have become too complicated. For example, like in these images, do they look right? It's like I took the wrong path
I've only been developing for 3 months so I don't know much
It looks a bit weird imo
why differentiate on them?
when they can all just be a base class?=
they share the same inventory, do they not ?
You could even compress them to simple gameplaytags π
Yeah they share the same inventory. As an example i was doing like this until yesterday, but someone said it was expensive to take a base parent and then cast it off. I also turned to this strange method due to lack of knowledge, but I started to think that the old version was more correct
Do you think it will tire the system if I take the item parent and say cast to bp_weapon?
Depends on what you do with bp_weapon
if its an empty container, then it should be fine imo
Attach to hand :d
Right, thats also fine x)
thanks, i think i've been trying all night for nothing but whatever we come back from the loss is profit
where does classto spawn come from
Why doesn't my event "ticking"/running after the timer is set?
The set timer does execute(initially) but for some reason the event doesn't do anything?
time set to 0.f means that the timer doesn't run
If it's set to 0 it doesn't mean fastest as possible?
no it means it doesn't run, just like I said
Ok
From the actor its replacing
Thanks!
You probably want an event tick if you are running it as fast as possible
how to generate it
I dont know where it comes from
there sis no classto spawn button
in the spawn actor bp
its a variable
marked instance editable
and expose on spawn for the purpose of this blutility
how to expose on spawn
in the variable details
I cannot find it
could you help me step by step
I have created the soft reference
it is a variable
There is a tickbox in the details for expose on spawn
where does BP Player Pawn come from
I cannot find this type
I only have render to texture bp
render to texture level bp
It was just an example
on a random variable i had
just to show you the Expose on Spawn setting.
what kind of variable
I select plus button to create variable
so before that what kind of bp class you make
pawn or actor
I guess it is pawn
It sounds like you need to look at some basic unreal engine courses, but click on the variable you made, then look at details, then click expose on spawn
so what kind of bp class should I create
Actor - Class Soft reference
They were just showing you where expose on spawn is, bp player pawn is a class they made, and irrelevant to your circumstance
get class and classto spawn cannot be connected
it says class ref is not compatible with actor soft class ref
and for each loop cannot be connected to get class
Character
actor object ref is not compatible with asset data structure(by ref)
my get class is different from yours
left side mine is in asset data
yours are object
Why are you spawning asset data
Im so confused
Apparently memory issues when loading chars with the level
so they wanted a method of not loading them initially
I suggested replacing them with placeholders that has simple logic to spawn them in when needed
I still cannot play
it says attempted to access thirdperson character via property CallFunc_Array_Get_item_1
but thirdpersoncharacter is pending kill
makes me wonder what did you do π
this just swaps them,
likely including your tpc
sorry I couldnt make is work
but unless you do this on beginplay , it shouldnt be a problem
I dont do it on beginplay
you should swap them out before you package your game
perhaps filter out your thirdperson char if that is pre-placed in level and you dont have a spawn point for it
Any way to deproject at a certain depth? In unity there's a "ScreenToWorldPoint" where you can enter a 3d vector rather than 2d, I need to be able to specify depth like with the Z axis
Trying to do this https://answers.unity.com/questions/1226442/dragmove-an-object-perpendicular-to-starting-point.html only in unreal
Unity is the ultimate game development platform. Use Unity to build high-quality 3D and 2D games, deploy them across mobile, desktop, VR/AR, consoles or the Web, and connect with loyal and enthusiastic players and customers.
Kinda hard for me to explain
kinda hard to answer better then π
~~ You must yourself adjust the location towards the camera~~
Hello,
I'm working on a 2D side scroller game and I'm trying to spawn a looping walking sound that would play when the character move.
So I tried to do this (cf. screenshot)
Thing is that I get this error: Blueprint Runtime Error: "Attempted to access AudioComponent_0 via property WalkingSound, but AudioComponent_0 is pending kill". Blueprint: 2DSideScrollerCharacter Function: Execute Ubergraph 2DSide Scroller Character Graph: EventGraph Node: Set Active
The sound cue:
Dunno why the audiocomponent is pending to kill π€
I found out why !
The "auto destroy" setting π
Ahah thanks!
I have a win widget I want to appear after collecting all the coins in the level, I've tried researching this but I can't find a good answer
This is how I have my coin blueprint atm, I'm not sure if the information for activating a win widget should go here or not. I have a game mode blueprint as well so maybe it could go there, but I'm not quite sure how to set it up
In your character where you are calling the coin grab sound function, you can just add the widget creation logic.
Or actually, in your case you should put it into the add coins function and just have an additional check for winning, within there you'd initiate the widgets.
thanks, I'll give that a try
ok I tried a couple things but nothing worked so I went back and connected everything back the way it was
Is this where you meant to store the win information?
anyone got an Error like this? on Try to Break the struct of Data Table? -> https://puu.sh/INkbj/34b94a9567.png
nvm was buggy af, Was an Structure Bug, i only delete and Add the Variables again 
The widget works, thanks for the help!
is there any replicated play sound attached call?
or do I have to make my own multicast π
hi guys, is there anybody know about flying pawn movement? Need advice, can't figure it out. project 4.27.2( ~4mb) attached forum post link.
https://forums.unrealengine.com/t/flying-pawn-movement-problem/504485
Hi guys, I have problem with Flying Pawn movement. (thatβs not preparing for plane, just imagine hover vehicle) So I attached link below 4.27 project for review. As you can see in the project, I prepared basic flying pawn. itβs able controlling keyboard and mouse. Default Mouse Controls: i just want to pitch and yaw movement controls from m...
Gotta make a chess game. Thinking of storing the board squares in a map container. Anyone else have a better idea?
I would say two bitmasked int64s but blueprint bitwise support is meh
That's the optimized solution if you wanna jump through the required hoops
Spawning actors at runtime, need to drop them to the ground, similar to how the "end" key works in the editor. I can do a line trace to get the ground and spawn in there but it puts the origin of the object at the ground, meaning half the mesh is below ground. I can't simply raise it up by a set value because the mesh will be different for each actor. Any thoughts on accomplishing this? I guess I would need to dynamically get the half height of the mesh and add it to the line trace result
Or another alternative I'm not aware of
hah, just found that https://docs.unrealengine.com/4.27/en-US/BlueprintAPI/StaticMesh/GetBoundingBox/
Get Bounding Box
Break out its Z
Thanks
just FYI it's better that you adjust the pivot for meshes like these to be on the ground. bounding box can be iffy
So, use a scene component as the root and adjust the mesh? For some reason that seems .. clunky ...
no, adjust the pivot on the mesh
Oh, I see - when actually creating the mesh. Yeah, that is probably smarter. Not sure why I didn't do that to begin with
I've used rotationfromXvector to get the rotator from mouse direction,
is there a simple way to align the direction vector X to the camera forward vector?
The problem is that the rotationfromXvector from the mouse direction vector gives me the angle relative to the world rather than the camera
why not just get the camera forward vector then?
The simple solutions don't cut it
must overengineer every solution or I'm not proving myself a competent programmer
I need the angle of the mouse, the camera forward vector doesn't help
wait
(I'm waiting)
I need it relative to the center of the screen
Again, it works so long my pawn rotation doesn't change
so.... use camera forward vector? use the dot product to establish angle?
it would give me only the center of the screen
the keyword is right there in your problem
Actually that gave me an idea, thanks
you mean the idea of using dot product to establish the direction?
or angle?
I believe there's even a GetUnitVector that takes two vector locations
that might be better even than the dot product
Basically this is what i needed, in order to align the rotations, instead of calculating the vectors i made a camera rotator, inverted it and combined it with the mouse rotator
okay, so the solution suggested, but overengineered
How would you do it less overengineered?
I told you
use dot product
use GetUnitVector
doesn't seem like you're reading what I'm writing
well google is your friend
Of course but since i got the idea i had to first try to implement it before i forget.
And since you also suggested only the forward vector of the camera and that the mouse doesn't have angles, i though that maybe you didn't understand what i needed.
It's not like i want to, i simply don't know all these solutions
If you were initially suggesting dot product, i'd probably go straight to google
you said yourself what the problem was. the angle between the center of the screen (camera forward vector), and the mouse direction. the only way you can get an angle between two directions is by using something that gives you that. this is where dot product comes in
however
you could also get the direction by using the camera location and the mouse location
I'm not psychic. I have no way of knowing what the full scope of what you're doing is
getting the angle from a mouse position doesn't make sense
Of course, and i really appreciate the answers
After googling i understand better what you suggested.
In my situation, i needed to drag the actor with the mouse in parallel to the camera.
The only solution that came to my head was using trigo. Calculate what distance to add to the mouse position, based on the initial distance of the camera from the actor, with some trigo.
Would have been nice if i knew a simpler way to achieve this, but atleast it is working.
Hi, everybody
I have a question about overlap events
I know that there is a "begin overlap" and an "end overlap"
But how do I make a check that an object is still overlapped by another object?
I tried to do this with "begin overlap", but it only works once until you get out
there is GetOverlappingActors
Thanks
I'll read about it
@odd ember
I did it
Now if a player enters an area, then he rises until he is at the top
Thank you very much my friend
I will continue to do different mechanics, in addition to buttons and levers
good luck
hey everybody, is there a way for the game to detect if its been alt tabbed? (lost window focus) in blueprint?
thanks
There wasn't in 4.25 at least. I doubt it's been implemented to blueprint since.
Is there a way to make an actor component require the actor have another component before it can be attached. Like for example make a custom actor component require a static mesh on the owner?
I don't think so. What are you trying to make that would require two components and one to be a specific type?
thank you , will look at c++ solutions
I just have a component that acts upon the owner's static mesh. Thought it would be smart to make the component require the owner to have it.
You're looking for FSlateApplication. Has a delegate for OnApplicationActivationStateChanged
wow.. thank you for that
Not sure if you can make it require it. Possible. May be some weird editor level stuff to be done, but likely not in blueprint. Easiest is probably just going to be to do nothing if the owning actor has no static mesh component or throw a log error or something.
Alrighty that's what I figured thanks so much!
Hey, guys, I'd like to ask a question. I've would like to check the class of BP_Sword on blueprints but I just can't find the correct node. I hope showing you my blueprint makes easy to understand what I'm trying to achieve.
Casting to the class type is probably cheaper, same affect on memory and less runtime cost with an already convenient node.
Would you please elaborate? If using Get Child Component isn't the correct way, what should I use in order to get the child actor?
GetChildComponent is fine, but if you want to test if it's the correct type, you usually just cast it.
I already tried doing that, but I can't cast it to BP_Sword.
Hey! Can I use a object variable that might not have been set to return the class of that variable?
Essentially that but returning the variable type as a class
Is there a way to create a structure and expose it to blueprint, but without breaking all variables after changing anything in the structure?
I'm dealing with inventory and equipment system where there are nested structures and may need expansion later on.
Set members in YourStruct
Takes in a reference to an existing struct and replaces all specified members with whatever you need
Can you show an example I don't quit get it
You can't do that if the variable isn't set. It is a nullptr and if you try this in c++ it will crash the editor.
how to modify this to what you mentioned?
It's not crashing it just returns nothing
That's why I'm asking if theres a way
not that
It will crash in c++ I said.
In blueprint it simply won't work.
In c++ I can simply use Determines Parameter Type Or smth like that but I'm not in c++
I don't think you can do that either.
Well idk
I think this is not what I mean. I'm asking about if struct itself can be modified without breaking all nodes
@fair magnet if you wanted to use the variable type of a pin you'd need to use reflection to see the UFUNCTION information and I don't think it's possible in BP's, it might be possible in C++... altho in C++ you would probably just use templates to do it instead
for example adding another member variable to the struct
yea just Copy one variable you see there and change it to what you need
I mean if I have a structure like this, and used it already in various places. Then at some point I need to change the existing struct to this.
most of the old nodes will be broken
If you add new variables into it, it mostly should be fine, but if you change it in other ways it will break stuff and there's nothing you can really do about it
ah so adding should be fine but for example changing type will break it?
Any graph which uses the property you modify is likely to require updates yes
UE cannot predict what you mean when you change the type of something, so you need to manually tell it
IDK some nodes are fine but others break. The problem is these structures are referenced in so many places and it maybe a disaster to fix all of them
Yeah sometimes it happens
Depending on how your structs are being used, you could encapsulate some of the logic into functions
This way if you modify the struct and something breaks, you just need to fix the function, instead of everywhere where the function is being used
Adding is usually safe. Renaming and removing requires a lot of fixing up. Both apply regardless of C++ or BP struct.
Man I need to pay attention to my scroll bar more.
lol
it seems to break most of the nodes with nested split struct pin even with simple addition
maybe using more break structure instead of split ping is safer for future modification
I'm trying to use the math expression node but I can't edit it by double clicking. It says read only.
Do I have to enable or disable something?
This is a very good tip !
in event Graph click on match expression node, but not with double click, just one click. After that the tab will appear
But if I insert the equation there unreal fills it with a ton of parentheses and makes the equation wrong
u need to write it correctly
show me the question and how u write in
This is what I pasted in the "Expression" box: ((dragonY+dragonX/tan(ΞΈ)-(dragonY+characterY)/2+(dragonX+characterX)/2*(-characterX+dragonX)/(characterY-dragonY))*tan(ΞΈ))/((-characterX+dragonX)/(characterY-dragonY)*tan(ΞΈ)+1)
and what UE Math Expression Node showed?
on Event Graph, not the spagetti in node
Do you mean this?
Daym thats some function
ah, i see ur problem, well, maybe its easier just to create it one bye one with nodes and collapse it after that.
((((((dy + (dx / (tan(fi)))) - ((dy + cy) / 2)) + (((dx + cx) / 2) * ((dx - cx) / (cy - dy)))) * (tan(fi))) / (((tan(fi)) * (dx - cx)) / (cy - dy))) + 1)
not sure if its correct or not tho, but working
blueprint function library can only be created in c++ right?
Is there equivalence of macro library with functions?
So I have this array from a different blueprint. I don't know what to put in target??
how can i remove white background from Image in UE5?
i have black icon and white background, how can i remove white ?
The reference to that blueprint itself.
Use photopea and use its magic brush to simply remove the white background.
I created an object reference but it doesn't work properly, I get this error messages after I close the game
I guess photopea have some batch edit options that you can check for.
You just created a variable of that type. You have to set that variable to actual object of your required class before accessing it.
Whatβs the best way to pass data from parent to children widgets and vice versa?
Anybody know if it's possible to get blueprint interaction from a decal? Main goal is to fire an event when a decal with a material function overlaps an actor.
this whole communication between blueprints stuff is so dumb in this engine. You create a reference of a different blueprint but in order to get that reference, you need to cast to that blueprint but no.. it doesn't end there, in order to cast to that blueprint you need to verify that it is the correct object you want to cast to by getting the reference which is the thing you wanted in the first place. Am I stupid or this casting thing is confusing as hell
Interface is another option
I found one of the errors with the math expression node. It looks like it doesn't like to multiply things by -1
this is how programming works
it's not dumb, it's designed to not make you do dumb things
so if you are having trouble
stop trying to do dumb things
I didn't even need to use it actually. Just used "get all actors of class" and bingo, there is the actor I want to use
it comes right after begin play
so no worries I think
I clearly didn't understand the whole purpose of casting tho that's for sure
Welcome to object oriented programming.
Casting = try to interpret an object reference as another class
It asks you to give the thing that you want from it and I'm like what the hell I thought you were supposed to give me that lmao
Is there a way to make a player's view switch to a camera other than associating the camera with a pawn and having it get possessed?
I'm thinking for like a cinematic sequence that plays in-engine or an overview of the map, something like that
where it's a fixed camera
Set View Target?
SetViewTargetWithBlend
Hi was wondering if anyone can help me? i have made a new respawn system for the game however when player 1 dies he can control but when player 2 dies he can not control it was wondering how could i do this? all players are in the same BP class ofc but just confusing me
Here is the code: https://blueprintue.com/blueprint/cf72lg9k/
Thank you in advance
https://cdn.discordapp.com/attachments/728552296908193843/950479990829486120/8mb.video-Tk9-xCyhKdpb.mp4
Finally. Much worse experience than using parentheses in scientific calculators ...
I am having an issue with the Panoramic Exporter blueprint. I am following a Epic tutorial on how it works, going into play mode with the blueprint active and the lighting I get on the render is completely wrong
Viewport
Pano
Any ideas?
Looks like wrong exposure to me
How do I adjust? I am using a post process volume, if that matters
How do I specify a 4x4 user property? The docs suggest "Make Matrix", but that's not turning up in the node search.
i dont think those are supported in BP alone?(at least, on my engine version) you could make some bp exposed c++ functions to work with them though
there's a lot of random types like that which are difficult to work in BP with unless you set up some c++ scaffolding for them
A bp only alternative would be using your own matrix type implemented entirely in bp
Make Matrix
Iβll explore the engine source to see if this is under a different name, which seems to often be the case.
I want to set up a Revving sort of variable. So If I press a button, it adds an amount to the variable, then that amount decays over time. So for example. if the amount every press is 20. Then it'll be set to 20, then decay to 0 over time. if pressed faster then decay, to a maximum. of say 300. it'd decay down to 0 over time.
The adding to the variable is no issue, but I'm having trouble with teh decay part, as it's a press input. so there's no continuous tick to utilize a regular math minus.
Anyone know how I can add a negative decay to a variable from a single tick?
did u try using a function timer to decay ?
anyone know how i can control the distance of the linetrace using this method?
I haven't used timers at all. not sure how those work
ur decaying it using tick? i recommend using a function timer or event timer
well the input tick is from a press/release. so there's only 1 tick to work with.
i think i can use a timeline to do it actually. as that only requires 1 tick to start a multitick output based on a time i can set
send screenshot lemme see what ur doingg
yeah this is working. I just need to set it up to decay at a rate I like
how to get class defaults including variable from parent class in blueprint? nvm got it in the node's details option
How the heck does FVector not have an less than function? What are we supposed to use for checking if a point is in a bounding box?
(1, 0, 0)
(0, 0, 1)
Which one is less than the other?
For the purpose of bounding boxes, (1, 0, 0) < (0, 0, 1) is false
Also a bounding box can't have a zero dimension anyway
All three elements have to be less than
So this? Just make a Blueprint Function Library with this in it.
Yea six nodes and twelve connections for what should be a single node. Weird that bounding boxes, a critical concept in game development, have such poor support in this engine...
Hopefully a silly question with a simple answer. Does anybody know how to get this sory of axis rotation vector in blueprints? Whenever I try to get the rotation from an actor I always end up with the pitch-yaw-roll rotator.
It's the same thing. Red is roll, green is pitch & blue is yaw.
Thanks!
can I open and close a widget using a Line trace -> interface -> Open or Close -> widget
anyone got tips on a skill system? I have a widget for when a unit levels up that is created when the unit spawns (not shown though) and I want it to automatically load that classes "skill tree" icons and names so when the unit levels up and it is shown, they can press the skills to gain the ability
on "event construct" i can load it with the abilities but what the proper place to load the abilities from ie the icons and tooltip info
Trying to create a wall spline, the correct mesh is on the left. the spline is on the right. how do i fix this
here is my blueprint
does anybody have experience of UE4 Web-Browser for Lambda, getting this error message trying to sign in "Oh no - your browser is blocking pop-ups!"
Generally speaking, this is why you link everything together with a simpledata property like Integer, FName or GameplayTag. Widget doesn't need to know or care about the ability really, just needs a lookup property sent to it. It can retrieve anything it ever wants from any datatables regarding the ability. Example being if you have a simple spell tree and are using GameplayTags. Ability.Spell.Firebolt, and Ability.Spell.Fireball can both be sent to the tree. They can look up their tiers from a table, widget can order them correctly into their spots and name them from a localized datatable, and any tooltip information can be retrieved from a gameplay data table.
"cannot cast from smaller type LWCVector2 to larger type LWCVector3" - is this a bug?
Noise >> Position: "2 to 3 dimensional vector"
Sometimes it works and sometimes it doesn't
I'm trying to learn how to make a system that allows players to deflect enemy attacks, by default this typically means bullets, but can also mean deflecting a direct physical attack from a boss or something. My current idea is using an Event Dispatcher on the player to sent out a "deflect" event to any incoming thing in order to let me add "is deflected" behavior to enemies, projectiles, and the like.
Player's Event Dispatcher
Simple event reciever setup in a projectile to reflect it when a deflect move is performed
the problem I'm running into is that I understand the idea of an Event Dispatchers and Observer Patterns being used to create general signals that can affect anything that has the event it's trying to dispatch to, but what I'm confused about is how to control this so it doesn't happen to every single "vulnerable" object on the map at once
Is there a way for me to selectively use an event dispatcher only on objects within a specific area? The "catch all" nature of event dispatchers are really good for broad strokes behaviors, where I may want things like bullets to all be deflected one way, but have something else vulnerable to the same deflection event but have completely different behavior
The actual deflection behavior is handled within the projectiles and/or enemies launching attacks
All the player is doing really is telling bullets to be deflected, then the bullets deflect themselves, this is so different things can have different behaviors when deflected
This is probably a prime place to use an interface. When your player successfully deflects, you can then call the "Deflect" interface feeding in the originator of the object (projectile) or attack being deflected, and even feed it into the thing being defelcted. Then you implement the interface on any actors that you want to react to deflection interfaces.
Ooh ok somehow I got it in my head than an event dispatcher was what I was after
during deflect, do some cone sweep, and send the interface event to everyone within the cone
If need be, return a direction vector along with it
fun times
shot a buddy because I used deflect π
ok so Event Dispatchers can't be used selectively, but Interface stuff can be?
yes
Dispatchers goes to everyone who cares to listen
like a broadcast channel
or a radio channel
anyone tuned in will get the message
While an interface event is more like a text message or smth π
This is legitimately the first actual correct use case for interfaces I've seen in Blueprint in months. π
with defined recipients
Shouldn't pure functions produce different results each time I use their return values? If I check the ReturnValue and set the RandomLocation to a local variable, wouldn't ReturnValue also change when I'm setting the local variable? Am I mixing terms in here?
Although I'd reverse the logic
Yeah don't use that node if you intend to use the return value and the random location.
Instead of telling everything else, I'd have the damage types interact with what they've hit to detect deflection. Simpler, more linear logic.
Okay thanks
This makes sense , but removes the need for interface. rip!
Damage types can be a factor as well, actually
Potentially. Depends on the base classes.
but what I need is the ability to detect if any random object within a players "deflect" radius can be deflected, then tell the bullets or speeding train or whatever to execute their built in deflect behavior
behavior that can be anything from "reverse speed to reflect a bullet" to "play an elaborate animation of a train crash" for example
Are we talking slow moving bullets and a single button press, or a holding button?
StarFox style barrel roll deflection
except I want to expand it to be a functional way to return attacks towards things
Currently using the event dispatcher method the ship literally reflects every bullet that's out at the time
My initial thought is very Jedi Fallen Order which may be similar. I have no idea how their code base is, but I'd just have the deflector have a state and a time property. State can be an on off boolean for deflecting. Time would be a float of the last time deflect was triggered. If no deflection ignore all following logic, else if deflection happens within a time of the last time the button was pressed reflect it back, else just simply deflect.
I really appreciate the help though. The explanation of dispatchers vs interfaces in a practical scenario was really helpful
That's what I'm thinking, having it be on a slight timer so that multiple things can be deflected in a single roll, better for gamefeel and accessibility when distance and speed are more vague, as is such in a rail shooter
Excited to unpack interfaces and get this hooked up next time I sit down with it!
yep, it's timeline driven currently as I don't have real animations yet, I'm trying to make functionality solid before I start artpassing a bunch of things
Ah i see ^^
Hi guys we use a render targets of some widget components to display a newspaper or letter texts in our game, but we discovered that those object were taking a lot of time in our tick
So we just disabled the tick of the widget after the material was setted. But the texture was all blurry so we added the delay highlighted in the screenshot as we thought it still needs sometime to load, but still in some machine/chapters this doesn't seem to work. Don't know if I have to put this in #graphics
Hi guys, are we only able to add local rotation on local transform?
How can I make it so an object rotate with a timeline from point a to point b?
w/o touching the world transform
material
Can someone point me in the right direction? I've got several BP Actors named BP_MediaPlane that need to open a media file, which might not happen instantaneously. So when it is opened, they set their member variable isReady to true. In a second Blueprint, I want to check whether all BP_MediaPlanes are ready and I want an event triggered when that happens.
@lime cairn I suppose you can reference all tthe media player and run a timer?
Easiest thing would be having some sort of Manager Component on the GameState or similar. Have your BP_MediaPlanes register themselves to it on BeginPlay (and Unregister on EndPlay if needed). Aka add/remove to an Array in the Component.
Give your BP_MediaPlanes BP an EventDispatcher (e.g. OnReadyEvent) and call it when it's ready. Let the Manager listen to it and whenever it callsback, check if all MediaPlanes are bReady. If all are ready, have another EventDispatcher, but htis time in the Component, that executes, which your "second Blueprint" can listen to
They'll each be playing a different video file so I'll need a MediaPlayer for each
That way your second BP can use the Manager that is easily accessible via the GameState
This is also a general solution if one has some random amount of Actors in the scene that need to be somewhat managed and easy to be accessed
Yup event dispatcher sounds good too, if u have a fixed number of media playyer
Even if not, you can loop the Array that has all of them and check the bReady bool when the callback comes in
Given you set the bool first and then trigger the callback in the media plane :D
Hah, so what you're saying is, have each BP_MediaPlane call an OnReadyEvent. Each time that OnReadyEvent triggers, the Manager checks all BP_MediaPlanes to see if they're ready.
No, at most three
Yeah then the loop is totally free in terms of performance
Clever, thanks!
Hey, If anyone is familiar with using UE4's 3D text component, I need help with that.
So in a nutshell, when I add the 3D text to a blueprint, and package the game, it no longer shows up.
The actual blueprint isn't destroyed, it's merely that the text doesn't show up.
However, If I drag and drop the component from the "Place Actors" tab into the level or into the blueprint, after packaging, they both show up.
So, Ya this is pretty weird...
If anyone is willing to help, plz make sure to @loud vessel me or DM
I hope im using the right channel.
probably not in BP
level objects have limited interaction in BP due to BP limitations
BP is generally meant for lightweight prototyping. you aren't meant to access deeper levels in it
hey, is there a way to remove unused funtion in a BP ? it's not called anywhere. thanks
If I collapse some blueprints into a node - is there a way to drag more blueprints into the existing node? Without cut and paste, just "drag" in? I cant seem to find a way π¦
Probably not, and you might want to consider using functions or macros instead of collapsing nodes as well, since functions in particular offer actual encapsulation, reusability and such
Does your character have an actual body? Based on the thumbnail of the BP it doesn't look like it
if you made it yourself you can delete it
otherwise... not really?
it's a UMG bp and i have tons of now unused bindings, that's why
Hey Guys, how u would doo something like, When on Hovering an Button, than u neeed hover 5 Sec, and than, Showing an Picture?, i tried with Delay, but thats not good, my New Plan is, While hovering, like, only show when 5 Secs hovered, but i dont Know exactly how i get like, While Hovering, Firing an Event
have a look into timers
basically set timer on hover
set it to fire after 5 secs, and clear the timer handle on unhover
I could not read that
maybe I am having a stroke
literally
I got a stroke reading it the second time xd
Yeah thanks boi, i try that, i want to avoid ticks, for that(i only see Tick based Solutions for it)
timer runs on tick too
I guess he wants it to fire after someone hovered over it for 5 seconds
delay would just delay the hover event for 5 seconds
oh, well
delay as well
delay is one off. but technically a delay is just a timer with a nicer node interface
hello
when i set Game State in my Game Mode and hit play character freezed and can't move
why?
You probably mixed GameModeBase with a GameState or GameMode with a GameStateBase
Doesnt everything run on tick in the end? :p
GameModeBase
oh i got it
thanks
So a cpu can pause its cycle?
what a difference with game mode and game mode base ?
Fair enough ^^
GameMode just adds more stuff centered around matched based games than GameModeBase has.
which one is better for MMO game
With respect, I'm honestly not trying to be rude, but that is a question that would be answered by yourself if you were ready to be focusing on an MMO game.
what?
Well the Main Problem is i have 4, Buttons, and if i Hover with Normal speed its Okay, but if i just would hover fast on all 4, it trys to Fire all Delay Events, thats why i was thiking i dont should use it
have u any link or resource for being ready
and thanks for your honestly
Hey guys, I'm learning about tech art and blueprints. Is there a way to have a parent blueprint have 2 other parent blueprints in it, but as variables? More detailed
I want to create a Static Mesh blueprint and a VFX blueprint, and combine those into a parent blueprint. But I want the SM and VFX blueprints to be variables, in order to create/change children.
Hey guys can I async load stuff on construct?
what ?
my eng not good sry
This sounds like multiple includes in C++, but that's not possible in BP.
No I think he only wants 2 class references as a variable
that is possbile
if you want 2 parents, thats not possible
oh i know multiplayer logic but i guess mmo is little different
So father blueprint has to go? Sad π¦
father blueprint is getting some milk, yes
No.
I mean, I want to construct a Mesh blueprint to be able to add behaviors in it (like broken state, damage decals etc) then I want a VFX blueprint. And I want to combine those 2 in a third blueprint. So basically I want nested prefabs and hierarchy
I reject, thank you very much.
Ahh, There are child actor components that you can add to your existing actor
but be aware, they are weird sometimes
Not really. There's too many for requirement. MMO's require multiple different fields and that is only for making the software. And by software I mean both the game software which requires a large team of programmers, artists, designers, etc to make, as well as the backend servers(please note that as plural) that drive your systems which require a small team of people to build as well as maintain. This alone is a massive undertaking. Presuming you manage to get a working prototype up and going steady within a couple of years, you have to manage marketing which is another small team of people, customer relations which is another small team of people, general systems handling and testing which is another team of people. And you have to manage to pay for all of this before launch day. Presuming that this all goes well, you are looking at paying even more for servers and post release management all while hoping your playerbase stays stable enough and pays enough for basegame and DLCs or subscriptions to keep you floating. And I'm simplifying this process an incredible amount.
For the meshes I want to create children with categories and different behaviors. For the VFX I want to assemble them modularly in a blueprint and change their position etc. Then I want to assemble those in the 3rd blueprint
@maiden wadi
make MMO indie
no customer support
Child actor components don't necessarily draw all the blueprint's elements, or I don't know how to
I can't add a blueprint in a static mesh slot
tyβ€οΈ
Step 1: Put your MMO idea aside.
Step 2: Work on simpler single player or normal multiplayer games
Step 3: Gain some profit
Step 4: Do step 2 and 3
Step 5: Once you have enough profit and manpower, make an MMO
Sup @trim matrix ! I'm always here but I move between channels. Some days it's BP, others it's graphics π
The thing is that You need to choose the blueprint. If I want it to be a variable (like, change the blueprint by drag and drop a different one in the slot)
you can also just spawn them as separate actor and attach them to your main actor
So basically I set up the blueprint to use the mesh and the VFX I want, and it will spawn on begin play?
Think of Child Actor Component as the fruit of hell.
The thing is that if "this mesh" has more attributes in it like "on hit, change state" or "add bullet decal" how can you draw these from the child component?
Yea are they inherited?
So it inherits potential 'hit' actions and whatnot
Is there a way for instanced static meshes to collide with each other?
You mean like create everything in the same blueprint?
This way I'd need an enumerate, no?
I DON'T want to draw unecessary things with every blueprint I create
So if I get this right, you want a bullet and the trail, and a predetermined decal on impact?
No
Explain in layman design term of what you're trying to achieve. I lost few braincells.
it essentially starts as a system for assembling explosives (add a mesh and a vfx) but I want to make it as modular as possible to expand it in other areas
and it's for mobiles π
So, a blueprint containing references to static meshes and emitter?
For the static mesh blueprint I want to create children and assign a static mesh to the slot.
The VFX is more complicated, but essentially create and assemble the VFX, and adjust positions within the blueprint
Then the 3rd blueprint would be an assembly of those 2, like creating children and assign to those 2 slots the mesh and the VFX
I failed to see how spawning static meshes and particle emitter using the reference isn't going to cut it.
Am I going in the wrong direction with this? I want it to be easy for artists, performance friendly, and modular in terms of inheritance
Which one is more performance friendly?
Hi guys, is there anyway to Save the pin in Bulk Edit via PropertyMatrix?
or someway to always tick all the pin when open
Yea of course, I never wanted something different. I just don't know how to assemble this properly within a blueprint
alright, thanks π
By components you mean in general, right? Not only child actor components
Anything but cac
can i set lod group via blueprint for a couple of static meshes instead of opening every of it ?
If I bind an event like this will each Object override the current binding or will they all execute the same event once?
You're binding to the objects, not this graph. So this is valid.
Okay cool
Essentially what I wanna do is have a way to make multiple Async Things execute at the same to and go on once they all are done
So I made an array with objects where I put that logic in they call an dispatcher that they are finished which then calls a function that increments an index and if that index is equal or greater than the length of the behavior array - 1 it passes the transition and goes on with whatever should happen after
Anyone know how this is still throwing access none errors
what exactly
can you show the error
Instead of checking is valid index
do IsValid for the ArrayElement
is valid index only shows you if the entry you're trying to access actually is in range of that array but not if it's actually valid
it's a dynamic list the whole array is always valid. it's the indiviual indexs that are throwing
So where's your set damage function
because whatever that is you showed us above is not your issue it seems
Yeah it was. Your first suggestion handled it, which is odd because it's removed from the array before it's destroyed. Thanks for the help tho
Your indexes would always be valid when inside the loop anyways, so the is index valid the check is rather pointless
But even then it should update between loops, so the only way I should be getting an access none is if it was destroyed after the loop start and b4 it was reached that time through
Eh? Loops are instantly executed, so any change would be apparent on the next loop assuming you edited and resized it
Could also be how you're adding them and removing them to the array
More likely than anything reqlly
Really*
Oh well all this is going in cpp eventually anyway. Long as it works for now
most likely the way the array is built is wrong if one of the items in it is None and it's not supposed to be
Someone decided it would be good idea to continually change the amount of damage each projectile in the game does based on the current frequency of the music. So I have a list of live projectiles that is constantly being updated as the spawn and destroy. It's not ideal but will work for the prototype
Want to validate something really quick: I have materials that will be dependent on a directional light (light direction, color, distance-attenuation, and shadow-attenuation).
As far as I'm aware, it is not possible to GetMainLight() and extract this data, so instead I'm thinking of using a Material Parameter Collection, then adding these parameters to the collection, and update their values in the direction light component every tick. One of the parameters I need is a rotation matrix for transforming. This isn't a vector, but my thought is that FRotator could be converted to a FVector3f. I could then convert that back into a FRotator and then into a rotation matrix.
Am I on the right track?
Pretty sure materials have a way to handle that inside the material itself
Would love to know how...
It sounds like the updates for the list must be out of sync, the only way it should contain invalid entries is if they get destroyed π€
They are.
I didn't set up a projectile pool or anything
Does anybody know how i can add mod support to my game where people can add there own models
Would anybody have suggestions on how to create a changing fog of war? Like basically an area you can see in the game, but which decreases/increases overtime depending on a changing factor (such as float)?
If you have any tutorials etc you'd recommend for this, would be incredibly helpful! π
You could in theory do that using a render target which is sampled in some kind of material to determine whether fog should be rendered in a certain point
But not sure whether there's some better methods for it... #graphics might know better
render targets are hella expenisve
probably best to google this
and do some research
Depending on the game though, it'll be fine.
But isn't that more like a surface/2d kinda thing + kinda taxing for the pc? And I mean the easy part (I think) would be creating the FoW, the difficulty for me is mainly getting that changing factor from the character/game to the actual FoW
It's how I'm doing my FoW in one of my games. Pretty small scope though, so I still have well over 120 FPS.
I mean I'm also going to be using culling so the game doesn't unnecessarily render something 1000 miles away, but that doesn't help with the landscape etc
That feeling when you realize that you've told countless people "dont prematurely optimize!" , yet I just refactored my building class to save some 16 bits per instance. Great progress!
create session doesnt work
this error is from the output log ^^
anyone know whats wrong?
would it be possible to make a 3d platformer with minimal combat elements, entirely in blueprints?
yes
without going into details, probably
Blueprints is just code, you're just limited to what epic games has exposed to BP
And they have exposed a lot
(and limited by the BP VM)
I am more of an artist and for me this is more of 1 time experience. The game will be only like 3 or 4 acts long.
BP doesn't care about how long it'll be, but you'll have to be more detailed in what it will entail
I've made a multiplayer open-world crafting survival game in blueprints
Yeah but they seem way easier to grasp as the syntax for c++ is hard, I only know python.
Once you grasp BP, c++ syntax will not be that hard to understand. All the functions are the same
All the small little quirks though are very annoying in the beginning, you'll just learn them with time
Especially the relation between BP and c++
That's why I mostly use c++, because I hate that I don't have much control over what happens behind the scenes in a blueprint
Its just generated
Features:
-combat that includes generic attack (but multiple animations for variety when spamming) and special attacks as well as dodging/rolling
-puzzles that include stepping on a tile to activate something
-typical platformer movememt, sliding, but also climbing, jumping and if it would be doable walking against vertical walls like in titanfall
-cutscenes rendered in game
Yes, you can do that
It's a casual platformer probably hardest part would be designing a boss fight at the end that fits platforming and finding good voice actors π
https://store.steampowered.com/app/313630/The_Solus_Project/ This game was made nearly entirely on BP
A single player exploration driven adventure with survival elements, set on a mysterious and seemingly uninhabited alien planet. Survive through exploration, and unlock the mysteries of Gliese-6143-C. From the creators of "Unmechanical" and successor to "The Ball".Earth has been destroyed and mankind lingers on in a small fleet of ships near Pl...
$19.99
2330
68
The guy behind the project works at Epic Games too.
that looks epic
Aha see what you did there
one man effort?
No, they were plenty
https://www.youtube.com/watch?v=j6mskTgL7kU
https://www.youtube.com/watch?v=0YMS2wnykbc
Here's some of his talks on blueprints. He talks about the project in these videos too
In this presentation from Unreal Fest Europe 2019, Epic's Sjoerd de Jong offers an in-depth look into Blueprints. Best practices, dos and dont's, and recommendations on how to utilize Blueprints to its full potential.
During this advanced class we will go into how to use Blueprints in a future proof and scalable way. We will look into how to c...
In part 2 of Blueprints in-depth, Epic Games' Senior Engine Evangelist Sjoerd de Jong goes over crucial, but rarely covered topics, with a goal to level up a range of viewers - from those with a working knowledge of Blueprints to users that are fully and professionally proficient in our unique scripting language and all of its finer details.
Le...
thank you!
No problemos
@atomic salmon Hi! Iceman11a from you tube.
Hey! DM me.
I did, waiting on you @atomic salmon
Discord had issues today, got it now
How does this do exactly what it's supposed to do (show a text in the UI while overlapping) while throwing ```css
Blueprint Runtime Error: "Accessed None trying to read property CallFunc_PlayerControllerRef_Player_Controller_1". Blueprint: BP_RobberyMarker Function: Execute Ubergraph BP Robbery Marker Graph: EventGraph Node: Set Render Opacity
The text does show for the player it is supposed to show up for, on overlap. PrintString-ing every step showed a display name for everything, so there is nothing undefined
One message removed from a suspended account.
One message removed from a suspended account.
Rightclick World Direction and split it
Same for the return value
One message removed from a suspended account.
It probably works due to some level of defaults ending up running the correct way. Hard to say without seeing the full logic chain. Either way, what is with this excessive use of interfaces?
looks like an attempt to get around casting
I can't even remember the last time I've actually used an interface.
I do currently have one, but stuff seem to work without implementing the methods, so i guess its not really in use.. just partly π
Pretty sure it was at work like half a year ago.
Yeah I wanna avoid casting
No you don't.
you dont achieve what you think you achieve with this tho
assuming you think you achieve what you dont achieve
Casting can slow down the game
And while it might not do anything for a simple UI thing, I still go with it for consistency
Can. Usually will not, and interfaces do not solve this problem.
casting will not have an impact on your game
They do because with an interface you can get something specific instead of the entire thing
i haven't seen a single guide that avoids casting
yet you're getting the entire thing
even per tick you can cast upwards of 100s if not 1000s times and not see an impact
That's.. Not how that works.
While I havn't either, guides do not have a reputation of being very reliable ^^
Ummm-- I'm trying to figure out a way to create a map with different areas. Like areas where randomly different kinds of creatures spawn randomly every now and then: for example on area A it'd be lions, area B it'd be leeches etc. What would you guys use to do this? Here's an image of an example what I'd try to achieve
spawn volumes of some sort
In addition I'd have some other things that would also affect player
I can do that with spawn volumes etc? Like for example slow down player
you'll mostly have to do manual placement
Interfaces actually do more work under the hood than a cast. I.e they are slower
sure but you'll have to specify the parameters yourself
Manual placement isn't a problem for me. Just trying to figure out the best way to do it without making game too heavy if I end up creating a big map π
if you're just going to repeat stuff, why make the map big in the first place?
ubisoft is typing...
It's going to have different aspects scattered around different areas. Areas which have different kind of conditions etc π
don't get me started
idk doesn't sound like you need a large map. especially if you're solo I'd not make anything bigger than 1km x 1km
and that is still MASSIVE
Yea I'm not trying to create some Far Cry 5 still thing π
It throws the exact same error when I cast to the player and controller
So it's not the interfaces
I forgot far cry 5 came out
Basically just a map that takes about 7-10 minutes in longitude and maybe 3-5 mins latitude to run through
π
try with 1km x 1km
anything more than that and you'll end up repeating yourself
Ok, thanks you! π
Just to make sure, it's called trigger volume? Or something else?
Are you checking the casts succeed? If it's functioning and throwing an error it's probably multiple overlaps triggering
it's called a collision component. you'll have to make the functionality yourself inside a BP actor
Ooh, ok. I'm still too new to all of this π I'll try to gind it. Thanks!
Does anyone know how to use xcode in unreal engine?
if you are new to this: start small
I will! π Just realized I think we had the different ideas of big, haha ;D
people come into this wanting to make 100 km x 100 km levels
without ever thinking what they will fill them with
The blue pins you get from casting or an interface are a single number. Memory location called pointers. These are the same size regardless of casting or interfaces. You access objects through these pointers to call functions on them or get data from them. All casting does is change the level at which you have access to something's hierarchy.
Casting costs nothing at runtime. In fact, I can prove to you that interfaces are actually slower than casting for runtime performance with very simple tests.
The real reason that casting is a problem is because of memory management. Unreal by default loads a single instance of every object your code requires. These objects are called CDOs or Class Default Objects. These objects take up memory. Code classes are basically free as they're tiny little miniscule things. You can have hundreds of thousands of them without much issue. The real issue are cosmetic things like textures, meshes, particles, sounds, etc. These are larger objects. One small texture can easily take up more space than your entire code base of code only classes.
This is important to know because when you cast to a class in your blueprint, Unreal has to make sure that class is loaded before it can spawn it. This is true even if the game never spawns it. For example if you have a trigger on level 3 that plays a particle effect and that is the only place in the game where it does it, and for some reason your player character casts to this trigger, that particle effect stays loaded throughout the game.
Guides and Reddit will tell you to spam interfaces everywhere to avoid this, but realistically this doesn't solve most of the problems as people just end up using the same hard pointers to the same hard classes which still loads the same visuals and in reality better coding and correct class hierarchy with inherited functions and soft reference spawning is what correctly solves this problem.
hey guys so I have a skillslot button widget that is used in a bigger widget but I want the onclick for the button to call a function in the pawn for which the skill tree is for. I don't have a reference to the pawn though in the button widget, however I do in the widget that uses the button. whats the best way to do this?
the button widget is used multiple times in the main widget
Oh yea, that's not what I had in mind π That's one of the biggest downfalls of even big game studios who create this dead content just for the sakes of creating big maps
Nothing. It's my desert map. I'll be delivering pizza from one end to another. That's the game.
:DDDDD
desert bus already exists π
If the character you're looking for is the one your player controller has possession of, I'd just GetPlayerPawn to call your logic. No point passing a reference through a bunch of classes that you can easily get globally.
ty, more issues arising but i'll ask when i fully understand what the problem even is lol
so this, which is on the pawn and being called from that widget button is not executing. I understand this is not multiplayer but just thought i'd try anyway
heres the widget buttons code just incase
If it's on the pawn, then it's not on your controlled pawn type. That should run fine even in multiplayer through a locally possessed pawn.
GetPlayerPawn calls GetPlayerController->GetPawn for instance.
Get pawn or Get controlled pawn?
Piece makes me wonder if this is a board game? Which makes me assume that it's not the locally controlled pawn.
I don't know if there's a difference, I know there's a node called get controlled pawn in the player controller
Same call.
ah okay thanks
Just marked to be named different in BP.
Er. My bad. Still same call, but it's a wrapper.
really wish they would keep BP and C++ calls the same
makes it that much more difficult when I try to convert things to c++ with little nowledge
its a game where you have multiple pawns that you possess. they can level up and learn new abilities and that's what i'm trying to accomplish here
How do you access the menu you bring up to pick the skills?
it automatically comes up when they level up
I worked around my issue and there's still a super weird thing.
For literally everything the playerUI works perfectly fine. But for this one I have to do a validated get, otherwise I get an "Accessed None" error (while it still works)
The pawns themselves spawn this?
but the widget is created when they spawn
yes
and then only shown on level up and closed when you unpossess the pawn
I'd probably just pass self through in this case through an expose on spawn
If the Pawn class spawns the widget, then from the pawn class to the create widget call.
yeah the issue i'm having is that its actually two widgets, one is the "skill slot" and one is the "skill tree" which has skill slots in it
Otherwise, from the Pawn class, through whatever it calls, and whatever that calls to eventually create widget so you can pass it in there.
I do have a reference to the pawn on the "skill tree" but not on the "skill slot"
In that case, you can either pass it to your skill slots when creating them, or you can put a delegate in the skills slots and use that to run an event in the skill tree to use the reference. Either way would work. Same work both ways.
let me process this a second lol
https://media.discordapp.net/attachments/221798862938046464/950839788766896228/unknown.png
create session isnt working
this error msg is from the output log
does anyone know the problem?
So this is the entire logic now. Tell me how cancerous it is
is there a get parent widget type command like "get widget that this widget is a part of"?
not *directly *
Not exactly. You can get parents in a tree, but not parent UserWidgets.
assuming you want the Widget blueprint
Delegates and bindings are heavily used in UMG for this reason.
yeah the only thing i'm not understanding is that the skill slots are there by default in the skill tree, not created
should they instead be generated dynamically?
how do i pass a reference to the pawn on creation if they're already created
i'll need to look more into delegates cause i don't know how they work
just a for each loop and cycle through all the skill slots setting the pawn?
seems like it'd be super resource intensive if every pawn did this at the beginning
You could. If they're preset I'd really recommend the delegate.
ok can you give me any resource on delegates
Just go to your skillslot blueprint, go under Variables here.
ok
How do I use Event Dispatchers in Unreal Engine 4?
Source Files: https://github.com/MWadstein/wtf-hdi-files
Name it and click on it.
In the Details panel add an input of your skill class. I used Actor class here cause I don't have your skills.
https://media.discordapp.net/attachments/221798862938046464/950839788766896228/unknown.png
create session isnt working
this error msg is from the output log
does anyone know the problem? (sorry for reposting again but i still need a solutionΒ―_(γ)_/Β―)
Call it on the button's click like so, except with the slot's skill plugged in.
okay
Now you can bind these one of two ways.
Go back to your Skill Tree widget and click on a skill slot, you should see similar to a Button's OnClicked.
You can click that for each instance. Or get all of their containers, dump all of them into an array in a function and iterate over them to bind them to an event.
oh ok in the bottom right?
Thats the manual way, yes
can i get the "call" from the event dispatcher in the pawn?
Getting the container -> get children -> cast to your widget -> bind to skill selected
Is the quicker method π
i'm sorry what does getting the container mean
The container is whatever widget all the skillwidgers reside in
HandleSkillSlotClicked will get called whenever that delegate is called. Which would give you access to the selected skill as well as the pawn pointer you have.
NewBlueprint is your SkillSlot
You're binding to the delegate you created in it and called in the button it's OnClick.
oh i see you just have to do all the binding
and where is "HandleSkillSlotClicked"
in the pawn or the skilltree
In the skilltree widget
Skill Tree, same with the EventConstruct and binding function.
ok ok and then in HandleSkillSlotClicked just calls "learnability" in the pawn?
Sounds about right
i see
you have an event dispatcher just so you don't have to cast?
thank you so much guys
https://media.discordapp.net/attachments/221798862938046464/950839788766896228/unknown.png
create session isnt working
this error msg is from the output log
does anyone know the problem? (please help)
@dense heathStart with learning the engine in BP, you'll soon figure out what you want to use C++ for. You have plenty of work ahead of you just sticking in the editor. Throw C++ in the mix later once you know your way around.
maybe try #multiplayer ? an entire channel dedicated to this
Volumes or maybe eventually some sort of influence system.
Say leeches showed up where it's wet. The "wetness" of a place can by driven by altitude (swamps are lower then mountains), weather (add 1 wetness everywhere), volumes, or influence actors.
Let's say leeches show up where wetness > 10.
You pick the random point near the player, you check its stuff:
Wetness = Altitude/1000 + Weather.Wetness + 1/DistanceFromNearestWetnessInfluenceActor
If wetness > 10, spawn a leech. If not, do something else. Fast and shitty but you get the picture. That's how Minecraft does a lot of its stuff, overlapping fields that combine to give results (water, heat, elevation, etc)
sorry to bother you again Authaer but what do I select in this dropdown on "create event"
I created the HandleSkillClicked event but it doesn't appear in the create event dropdown
it needs to have the same signature; that is the same parameters exposed
Hello, I want to create something similar like this. I tried messing with ray cast and forces, but I'm not good at blueprints. This is the video: https://youtu.be/RjUTtGTk8Js
Tried to figure out how to do something like this in Unreal, have done something similar in Unity before.
The idea is to have a simple rigid body, like a box, and then do raycasts where the wheels are. Then add force depending on the length of the raycast. So they act kinda like springs. I toggle on the debug mode sometimes, so you can see a bit...
probably better to buy a plugin, that looks expertly done
I dont really want to spend money, but mostly i want to learn and make it myself. just can't get my head around.
I think if you're just starting out start with something simpler
if you're wanting to be an architect you don't start by building the empire state building either
the stuff in the video is likely an entire system made on top of the physics engine. I'm not sure it's created with BP entirely
true, i did make something using the PhysX and chaos but its just not for me, especially Chaos engine.
well if you're new, start small
or it could be as simple as they say, but it's hard to tell tbh
well the most hardest thing for me is how to make the vehicle move responsively. you know hoe rocket league or other games do. my car just starts too slow, even when im copying other assets.
https://youtu.be/RjUTtGTk8Js?t=51 around here you can see small sphere traces where the wheels are
however how they fix the steering and balance it is another matter entirely
there's always #legacy-physics
yes true, tbh i messed with forces, but the car is just un-controlable.
yess, ive also posted it there, thanks for your help
it's frowned upon to double post
just FYI
yes i know, its sad π¦
So I've read that casting can be bad. Looking into it further to understand how ie: examples (I understand the why well enough) all I find arguments. Which make for interesting reads, but are not helpful. I know it's not always bad, but I just want to be sure I'm being more responsible with it.
it's not
yes it can be bad in extreme cases but for general purpose it's what you want to use
don't use interfaces
What would be that extreme case then?
something unlikely to happen in BP
(casting exists in OOP languages at large, including #cpp)
if you cast an object, it requires the entire object to be loaded in. this is moot for BP
Okay like, what? Bc, as I understand it a chain of 50 BP with each casting to the last is what would be bad. But 50 BP casting to one is no big deal. These numbers are arbitrary btw.
I'm just trying to find examples to be sure I get it.
@remote belfry
That's totally doable in BP and fairly simple, but you'll want to know enough about physics and game physics to where you don't have to ask the question. It's 100% a 4 raycast hover vehicle though, you can even see the debug line traces.
start with trying to hover a cube above the ground.
just double checking, you do understand why a cast exists yes? polymorphism and all?
Yes thank you, I've gotten alot of help. And yours I included helps me even more. :)
Also read up on PID controllers. Any well-behaved arcadey physics driven vehicle will have one keeping things stable. Real physics doesn't play as nice as games make it look.
if the input array to a for each loop is empty, does the program flow not follow the completed pin?
it should, automatically. you can double click the for ForEachLoop to see what happens
PiD controllers? That's new. I'll check it out
wait i figured it out imma delete this
it may be useful in future to keep your question, but post your solution, cause other people might have the same problem :)
aight next time I will
Hi all,
Can anyone offer a suggestion for doing the following...
I want to take the player's score (integer) and replace the digits in that integer with images that replace the digits 0-9.
I need to effectively iterate over each "column" of numbers, e.g. the units, the tens, then hundreds, the thousands etc, but only when necessary... e.g. if the score was 23, then I'd only iterate the units and the tens.
I'm guessing I'd need to turn the int into a string, then get the length, and then use some kind of get character at position kinda thing, then check the value between 0-9 and add the appropriate image...
Any other/better ways?
Hi, I'm here again. Could anybody tell me how to read json file in Unreal Engine
how to check if a class reference is null?
IsValidClass
ty
That seems like a perfectly reasonable way todo that
something like that would work
Thank you @neat orbit - I will give it a whirl! π
I'm trying to sort a data-table array. Are there any built-in functions in BP?
I can't even compare two text such as if one is greater or less than the other.
Anyone free to help? I've made a working player knockback blueprint but I'm struggling to specify the player indexes for my 'Launch Character' node for multiplayer. At this stage I've only got it working for Player 0 (client) to attack Player 1 (server), so that when player 1 enters player 0's hitbox ("attackbox") and player 0 left clicks it'll knock player 1 back.. but how to I state which player to knockback and what node to use to plug into the launch character node? The only way I know how to specify different players is with the 'Get Player Character' node and I obviously can't just plug them all into the 'Launch Character' node because then the hit would effect all characters. Any help much appreciated!
Hey people. I have a custom event with some functionality in a parent class. I want to extend it in a child class but I can't figure out how to call the parent implementation first.
right click the event and theres an option like "call parent function"
@violet wagon thank you so much! Such a simple solution and it took me way too long π
@true valve there is a free plugin on marketplace that has array sort
Does anyone use a mac for unreal engine?
@signal hornet i cant stick around but i can give you a hint. Unless you make a local multiplayer each client instance perceives their character and controller as 0. So any script that references that 0 will work.
If that's the case then all players on the server being referenced as 0 for the target on the 'launch character' node would be hit so that doesn't solve my issue.
first image is what changes the text (on hover of the skill) and second is the bound function for the spell name/description. anyone have any idea why its not updating at all?
Is there a specific reason why it needs to be a trigger box? Otherwise surely a line trace and distance check would be easier?
Why aren't you using an overlap event to just call launch character on the other actor? @signal hornet
Or line/box trace
Your cursor might be hitting something else. I had an issue once where a widget on top of an image was blocking my mouse from triggering hover events
Just ensure anything you don't need to hover over is set to non hit testable
What comes up if you print the name and description?
ah
nothing
its just a class defaults though so idk how it isn't printing anything
ok so i'm really dumb
thank you Lemon
you fixed the problem?
oh haha
No specific reason, to me a trigger box just made the most sense. I tried line tracing but had some struggles with it so reverted back.
like what struggles?
Having it hit where I wanted it to, I played around with the camera and vector values but it just wasn't working right
to me this is the easiest solution, so if you'd like to go for it you can probably post the BP here since I've done this before
what about the line trace?
Oh, I got rid of those nodes. I don't think I necessarily need to bother backtracking and doing it like that because the overlap box works fine.. I just need to find out how to properly specify the players
for the launch character to work correctly
and the vectors
Which players do you want to be launched? The first three in the box? Or (as I assumed) only the one you are looking at?
yeah that's gonna be tough to do without a line trace
So you'd suggest backtracking then?
I'll do it if I have to, whatever it takes to get it working
I understand why line tracing makes more sense because the hitpoint can specify the other player easier but I just find it all a little bit confusing
how to check if widget is added to the screen already?
isvalid?
or does that only check if it exists
Well, other may be able to do it without a trace but to me that will be much more confusing. I've never done it that way and I can't think of any good way to do it
It'll check if it's been created. Not necessarily added to screen.
As far as I'm aware at least
is there a check if added to screen
annoyed with the warnings that my widget has been added already
gotcha thanks
I'm gonna revisit line tracing because you're not the only one who has suggested it
I'm not gonna be able to help you through it since I have a lecture in 5, but it's a very common technique so I'm sure someone else can help you
all good I appreciate your help anyways @brazen pike
I am trying to capture a scene and then export the render target to disk but it keeps printing false...
You can also do some dot math for their location, finding the target closest to the center of the viewport , but line trace sounds easier
I've sorted it out with linetrace but thanks @gentle urchin
Morning everyone! I'm learning about BPs, Is there a proper way to do this? I want to create children from the VFX and Meshes BP and be able to add them in the main BP.
it inherits the variables e.g. from the mesh blueprint but the parent blueprint does not show anything
Didnt we say hint towards not using CAC ? π
(oh sht you're here :D)
I didnt catch your question
I'm not familiar at all with blueprints and wanted to ask more questions for this π
You want these nodes to be in children also?
yea, basically create a child from the BP_Explosives, and in that child add children from the VFX and Meshes
@gentle urchin said yesterday to do this using components (and not cac) but I don't know at all what I am doing here π
Was there a reason for them not just being a single bp?
In child bp go to Construction script right click on it -> Call Parent Node
modularity, and ability to inherit stuff
You can achieve modularity within the same bp or by using regular actor components if the code is gonna be reusable for other bps^^
Because its inheriting from BP_Explosive
Inheritance works within a single bp/child bp
Clearly not a single bp, but ye. Creating children of said bp π
Couldn't find call parent but this was already there
Specifying mesh, vfx, sfx cpuld simply be parameters
Then its should work normally as you need
well, that's the thing, I thought it was more straightforward, but it does not work
If only one didnt insist on the cac π€£
sorry that is another variable i forgot to delete
There is no straight forward in UE4 xD
@gentle urchin This purpose is also for learning, so I want to understand why cac is not working before I start the other way
Its just a component gone wrong, best to forget about its existence :p
Regular inheritance should solve your setup really
Atleast as I see it
After having that setup and working you can consider moving it out in custom components for modularity
Is it possible to load a streaming level over a certain amount of time/frames? To minimize lag
Hi, any idea why this won't export?
Alright yea. Thanks a lot mate π
What's the reason of doing make array and plugging in "self" into the Actors to ignore in the line trace when there is already a ignore self boolean? I guess for some it's just a habit because maybe early versions of the line trace didn't have that boolean? I often see people just instantly doing it in certain tutorials without thinking.
It's unnecessary. But a lot of tutorial makers regarding blueprints tend to do a lot of things without thinking, namely making tutorials.
Anyone know how to add a static mesh to a skeletal mesh
If you mean to use a StaticMesh asset inside of a SkeletalMeshComponent, you don't.
If you mean to attach a StaticMeshComponent to a SkeletalMeshSocket, there should be an AttachToComponent call I think, has a Bone input for socket/bone names.
@maiden wadi i see
it only works with sockets
to give context to the photo I'm trying to attach a door to the car
what would I need to do to accomplish that
I'm assuming that I would need to create a new socket however how do I attach the static mesh to the socket
in the bp
you can however add a preview mesh to the socket here
to see the correct loc/rot
how do I change the type of an object to destructible or world static or whatever
ie overwatch style shield with health. my projectiles currently go right through them
my projectiles aren't especially fast moving
not sure what the standard is for that
is there one of these that counts for everything? other comp or just any overlapped?
Hey, i have a skeletal mesh with a socket on it, but when i try to rotate it 90 degrees (because the muzzle flash looks in the wrong direction), it doesn't seem the get applied when i play the game. Does anyone know what i am doing wrong?
hi I'm working on a game and I can't find attach component and i use attach component to actor but its don't work with me . why i can't find attach component ? how i can find attach component ? and thanks
One message removed from a suspended account.
You can use a looping timeline. You can enable/disable tick on the actor (and also adjust the tick rate). You can use a gate in combination with tick. You can use a looping timer, again setting the time to how often you need it to fire, and then use the return value from the "Create Timer By Event" and use "Clear and Invalidate Timer" node when you want it to stop.
One message removed from a suspended account.
When dealing with BPs and Advanced Sessions has anyone encountered duplications of the owners (host sees host, client sees client) name when using GetSteamPersonaName when you host a multiplayer lobby?
Hey, can someone help me with inventory problem?
So it just teleports when I go over the object
How to switch bottom ones
Right click and wrap the pannel with a border & delete the bottom one.
But I'll delete code
Blueprint nodes are not tied to widget components. You can just reattach anything that was associated with the current GridBorder to the new Wrapped border.
And if it's c++, copy and paste. π
hey guys I know this is pretty basic but how should I loop through this to spawn linetraces at random positions
Can we do VC since I don't know how.
Are you doing bps or c?
BPS
Lets VC
just a bunch at beginplay
hmm not really understanding
sorry i'm really new at this
so you're saying I should ignore the index output from the for loop node
figured it out thanks @trim matrix
Hello all. I'm trying to follow along from a tutorial, but I'm stuck. I want to create player select menu. I have currently two characters to choose from. Can anyone perhaps have a look at my setup and perhaps visual make some adjustments whats definately wrong.
This is some odd setup, i must admit
How do the player change char? With a button?
Hi Squize.. yes.
Widgets are really good to setup a character selector. Not sure where this one is done but it does look odd only because I haven't seen it been done this way.
I would think the button holds the class info, and just passes it forward when clicked
Does "Player" in this translate to "Character" or is this meant to be multiplayer?

Are there any obvious gotchas why a scenecapture component 2D (Set to ortho) wouldnt render to its render target?
Ha, thanks rubber ducks π
I'd managed to clear the target π
π¦
Hi Authaer... No multiplayer.. I just want to choose a character from my Characterselect I have var. called character in my project settings (MyGameInstance) but when I select my character it doesn't work. What would you fix on the image?
Remove GetActorOfClass. all you need to do is set the GameInstance class variable and call OpenLevel.
Thanks, but like this?
Remove GetActorOfClass.
Like this, but how does it know which character you selected?
You input it in the set
Good afternoon all - does anybody have 10 minutes to spare and wouldn't mind helping me with an interface and UI problem?
You input it in the set? what did you mean.
Sorry - I'm trying to set some UI widget button text by taking from a blueprint interface attached to different actors. I can't seem to get it working and it's likely something obvious? I will attach a screen shot. Pretty new to UE.
(and also pretty bad at BP)
I feel like my interface should have a text output rather than input but the two aren't linked in the actual interface?
Hello All, I would like to ask if there is best practice in this:
Lets say I want to export a house, which consists of two visuals - house and doors. Later in game I would like to rotate with the doors ( opening, closing). From what I know, there are thre ways how to do this:
- Export separately house and door fbx -> two static mesh uassets -> create one blueprint out of them, in the blueprint create event which moves with the door.
- Export separately house and door fbx -> two static mesh uassets -> create two separate blueprints, in the door blueprint create event which moves with the door.
- Create a skeleton and export house and door -> create skeletal mesh -> create blueprint for this skeletal mesh which will rotate with bone, to which doors are attached
What will be the best approach?
#1
is that an interface call or an event dispatcher?