#blueprint
402296 messages Β· Page 430 of 403
I'm fine with "no, unreal just has that limitation"
i have no idea how can they always be set to 0
@tawny tinsel GetPresentTimeOfDay is what you need
Guys, I am trying to make a pressure plate,
If I put 2 objects on the plate and then take one out
https://gyazo.com/7c3260e60efadd73efcede3efdd6f839
@trim matrix This must to be in the gameplaymode
isn't it?
Because it ends overlap, it disables the pressure plate
ok ill try it
@sonic kraken - here is what I have in the instance.
After an enemy dies, they send this (InfoCheckforMapVictory) to the instance. Then it casts for all enemy types (zombiebase). If there are none, then it goes a head and loads a level.
@halcyon kelp This must to be in the gameplaymode, isn't it?
@rough wing do you have any use for those boolean variables?
probably
@odd ember Not at the moment
@sonic kraken - it's in my game instance right now... im not the best blueprinter tho π
@rough wing so what's the point?
read up on casting
and what casting actually does
it's too complex to explain
at least not in like 2 minutes
I'm going to use them later on
But atm
When one of the two objects end overlap, it starts the end overlap event
But I only want that to happen when there is no object on the plate
does anyone just know what can i plug in there?
you can just go into the goodsky blueprint and add the print there
@tawny tinsel you can't just plug in random things and expect it to work. you actually have to read up on the topic and understand what casting is
Get Owner is probably not defined, throw a IsValid check on it
well the documentation doesnt explain it to me
@tawny tinsel what does the documentation say?
lol
also isvalid node doesnt plug into the cast node
What you plug into casting is a reference to the object you're trying to affect. Usually it's an Actor or Pawn reference, but not always the case. This takes the reference from an Actor or Pawn and "Casts"(Movie type of cast) it as what you're casting it as, which allows you to reach the functionality done in that class.
@sonic kraken - it's in my game instance right now... im not the best blueprinter tho π
@halcyon kelp I think it must to be in the gameplay mode
but i'm not sure
interesting that you think movie casting, I always thought of cast metal
so what would be the refrence to the sky?
we don't know
that's something specific to your blueprint and project
I hate the word "Cast" for that. I wish it was something more like "Treat As"
tbh treat as would have been a great rename for BP
since people overwhelmingly have an issue understanding what a cast node does
it's the tube shaped thing with a name on that you get from variables
yeah
you need something TO cast
a cast isn't spawning a variable for you to use
it has to have a base object to use
well i dont see anything that i can plug into the cast node
how do i get a widget (ui) to open on a scene?
we don't know what you should plug in either because we don't know your project
This is how I solved it
but cast node is used to acces the variables
and i need to pug a variable from that bp for the cast node to work?
you can't make variables exist out of thin air
but all those variables are only inside the cast node
how the fuck
that makes no sense
Does someone has experience with physic in general?
I would urge you to look up a tutorial @tawny tinsel
you can technically cast anything
but you need to cast the right thing to get what you want
For those completely new to Unreal Engine 4 and its blueprint system, here I explain how casting work.
Support me on Patreon and get access to videos early, join our developer community on Discord, get exclusive behind the scenes videos on my projects and much more over at ht...
#ue4 #beginner #blueprint #casting
CHECK OUT THE REST OF THE BEGINNER SERIES HERE
https://www.youtube.com/playlist?list=PLyu-W38DvZhqByAoeva1jewB5s78zQHIy
FOR MORE ADVANCED FEATURES TRY OUR CUSTOM C++ NODES
https://www.youtube.com/playlist?list=PLyu-W38DvZhqOdaCkB4hGWY...
i watched all of these
so what's the issue?
guys, how can i notify from a character to the level bp one event?
Casting is easy. Take this reference, treat it as this reference. You just can't cast a reference to anything other than itself or any one of it's parents in it's class hierarchy.
i just want to take a variable from the good sky
@tawny tinsel Casting means converting an object of a given class to an object of another class. That will work only if the classes you are converting to/from are related.
In the case of your Goodsky, the object you are plugging into the cast needs to be a parent of Goodsky, e.g. a reference to something Goodsky is derived from.
@sonic kraken level blueprint supports direct event delegates
if you select your character in level and then right click inside the level blueprint you can see at the top the events you can put into the level blueprint from the character
@tawny tinsel A classical example. You have an Animal class and a Dog class. Dog is derived from Animal and a Dog can bark, but an Animal in general cannot bark.
If you want your Dog to bark, you can call a Bark function on it. Now, if you store a reference to Dog using an Animal type variable, you cannot use it to make your Dog bark because Animal doesn't know how to bark. Therefore you first have to cast Animal to Dog and then you can call Bark for it.
Your Goodsky is similar. Probably you are referencing it using a reference to a parent class it derives from. Before you can access its specific functions (methods) or variables, you first need to convert that reference to BP_Goodsky. This is what cast is for.
how do i show the mouse (curser)
@mellow marlin https://blueprintue.com/blueprint/crg8mcho/
Drag off of the player controller return value reference and type "Show Mouse Cursor" It should show up in the context menu.
if you select your character in level and then right click inside the level blueprint you can see at the top the events you can put into the level blueprint from the character
@odd ember what's about gameplay modeΒ‘
???
@mellow marlin show code
You set it to false.
you have show mouse cursor set to false
@sonic kraken what?
if you want it to show, it needs to be true
How can i get the distance from multiple spawned actors?
get world locations, subtract, vector length
wait
what if its the same actor just spawned in like 10k times?
I want procedural trees in my forest but they spawn so close to each other
I don't want that
do a sphere/box trace of some kind before placing, and use that to determine if the tree should be placed
just a thought
just trace down 1 unit or something
or up. Doesn't matter. Traces just have to move at least 1 unit to return a hit
is it possible to make it so i dont have to click the screen in order for it to not show (just want to know if i could and if so how)
@hollow cape im doing it from another bp
so how would i get the location of the thing im trying to spawn?
or should i take the spawn location and plug it into start?
line trace
line trace?
anyone know of any Secret Tutorial vids
secret tutorials huh
What does that even mean lmao
lol I cannot find anything for walking over and object and auto picking it up]
I need help with UMG -> Uniform Grid population
don't tell anyone alright
there is no way in hell that thats impossible
like the extra hidden necronomicon ladden tutorials available only in arameic on stone tablets
ive been all over it
it's a simple logic issue, but my brain isn't functioning correctly
and for some reason I decided to do some stupid project
that involved 3 things that do not exist
@jaunty dome hit us with the details
I want to fill the uniform grid slot with a widget through a loop
Sure, I've got that myself, what are you stuck on?
... I know a dealer
Event OnOverlap, IfCollidingActor == Player, Do pickup logic?
@shadow fox Go find a good tut on pick up in general, adapting that to auto pickup should be super simple
This to be more precise
I want to evenly distribute a character widget in the uniform grid, 4 widgets on each row
@shadow fox What do you mean when you say "pick up"? Like, make the object disappear and add a number to an inventory, or do you mean place the object in the character's hand?
like walk over a sword and it puts it in your hand instantly instead of having to hit a button
like if you have nothing already equipt
Do you have your equip to socket function set up already?
guys, how can i trigger an event from AI controller to my gameplay or level blueprint?
@shadow fox Probably just use ActorBeginOverlap, drag off of OtherActor and == it to a reference of your player character. Run that bool to a branch, then call your equip function you already have.
Where the Dividend is the current index, and the divisor is how many you want in each row
kk I will try that and let you know ty
Then the remainder is the "in row" and the return value is the "in column"
Then you don't need multiple loops but it will still automatically cover however many items there are, @jaunty dome
@fathom portal Thanks a bunch
Sure, add more here (or just PM me) if you get lost trying to implement it
do i need to -1 integer on array length ?
so no need for length
Yup
one more stupid question
how do i reference the other widget (facepalm)
ii mean like how to get a reference to it
Do the other widgets already exist?
Or are you making the widget inside the loop?
as a separate UI blueprint
I mean, you should be looping those widgets, no?
Not sure what you're currently looping
i'm currently looping an array of characters
that exists in the game mode
all good
now i need to create a widget for each character, so it can be selected from the grid
meaning in that loop, when i get the widget reference, i'll just set "character" variable in that widget and it handles displaying name image etc
ah i've already done this
i use create widget function
then add as child
sorry, my mind is foggy at the moment
Not sure if it fits in here - but I'm currently having an issue with enemy pawn movement and navmeshes. Running locally through PIE (dedicated server + single process) it works fine, however when run standalone / or on a dedicated server all the pawns just stand there and do nothing, any ideas as to what might cause that behaviour?
okay so when i go from the level with show mouse then i want it to hide the mouse when im in the game and when i get out of win screen is it possible to make it so i dont have to click the screen in order for it to not show (just want to know if i could and if so how)
Is there any way I can get length (in my case diameter) of a mesh?
Hello to everyone, I am currently learning how blueprint works and how to use them. I hope this is the right channel for the questions/issues of the blueprints.
(My project is based on a TopDown Layout)
I am looking for a way to stop the movement of my character, but leaving the player the ability to rotate while standing still.
I am currently using the "Disable movement+ Stop Movement Immediately" function, but unfortunately the character is completely locked down.
I would like to replicate the same movement inside the video.
Another issue: How can I set the spawn of the blue shield to be always in front the character ?
Thank you very much for the help in advance.
Guys?
@wintry crystal just use a boolean check for the player key input you want to disable
Heyyy
soo I need some help, basically I have a stamina bar
When I sprint it takes away my stamina even when I'm static
your first branch isn't connected to anything
also don't delay on tick
the true is supposed to be connected to the upper delay and oh
the event tick is supposed to be connected
to the branch
here
okay so ive been looking on google and cant find it now so here it is. how do i change the text via blueprints?
also yes im new to ue4
Okay so what I want to do is basically whenever I'm not moving I want the game to check it, so I can put it through a branch that checks if I'm not moving or not in order for stamina depletion to not trigger
okay im getting annoyed im trying to find out how to do it and i cant
change what text @mellow marlin
the test in the gui i got aka widget
and im trying to do it so i can tell the player that they can use xbox controls to get out of win screen
@hollow cape
a couple ways to do it, either bind the text of the textbox to a var that you update, or you expose the textbox as a variable and update that directly via BP (usually the BP that created the widget)
@rough wing Tried to get mesh bounds?
Hello
Do you have some documentations/tutorials about data assets & primary data asset ?
huh @hollow cape harvy huh 1 idk how the heck to do them and
@mellow marlin I'm giving you the direction to go, I would recommend checking out a tut related to UMG, and at some point it should go over these things
k
Mathew Wadstein does great short tuts
thanks
Hey guys, I'm making new inventory system, based on maps and data tables, it will be quite massive. I have variable that sets type of item. For test, I used int to represent it, but it's hard to remember all and there are many types of item. Is there some way, to just chose one from predefined list? Or I'm stuck with int or names/strings with that?
@jolly pumice you can make an enum, or you can use code to get the data table row names:
Yeah, but to chose row name, I still need manualy type int or string in dt. There's my problem
I have like 12k items, so anything that's speeds up, or gets things load faster, is necessary π
Having the same problem myself, honestly. Enum would be the way to go, honestly
Yeah, I'm going with enums I think. That's best for that case, at least for now. Thanks MFG π
Sure man, lemme know if you come up with a better solution
Or I'll import entire excel π
@jolly pumice I feel like if you have 12k different items in a data table you might be doing it wrong
@narrow kelp How would you recommend storing/accessing 12K items with their own stats and variables?
you can use RowHandle to get a list of avaliable rows,
that way you can just give them clever names ...
it depends on what you're doing, but i'd just have a small number of base classes that add variation when spawned
Sure, but you still need a way to make all the data available
I rethinked all possibilities, getting everything I need as independent item, not stacking similar, makes it easy to sort and load/save. Only problem with coding dt
I'm all for procedural generation and stuff, but sometimes you need things set in an easily organizable fashion
no human being is going to look at 12k items
^ Thats a fair point π
They are when they need to change one of those items
WoW has 118283 items in total, for reference
I mean, if you have a better solution I'm all for it
But "Make some base classes with some variation" doesn't really replace the need
Nope, did you played shop heroes?
I mean, I agree, if it's a lot of the same item with tiny variations then 12K+ probably isn't needed, but I got the impression it was unique items
even if they're unique, if there is 12k then I think they should be created procedurally
nobody got time for that
There are some stats, that can be recreated, from base item to 5 indywidual, but in my situation, when you can have 200 types of items, dozen of each, maps with name/int works fastest
If I could get third parameter to map, then I could get it way smaller
@jolly pumice would you mind sharing a screenshot of 20-30 of the items in your data table?
Now I'm curious who's right here
Teaaaase lmao
But tomorrow I'll show you how it looks for now
Awesome
Generally, it all works, creating items, inventory, recipes system etc.
But that ft scares me π
Dt*
Even not so bad graphics for craft slots π
so, the first thing i'd do is re-think how you're handling items conceptually, BUT... if what you're doing is working for you
then
you could think about making helper functions that automatically find a row based on some parameters
@narrow kelp I know, but I see so many problem with current systems, some are made, to find those similar items and it variants
i need to talk to someone about the titanfall cause and effect level mechanic, where you can switch fluidly from one level to the other. currently i am using movable blueprints to spawn and despawn the levels, but its a shit way to do things and i lack experience when it comes to enabling and disabling collission on runtime for static meshes
if anyone likes to take on the challenge with me just in theory, a secondary brain or two would be really apprectiated π
one of my ideas was to have 3 levels set up for level streaming and the player just gets spawned with an offset of 200 meters or so, so i can unload the other levels when the player has switched the "time"
the other was to have all levels overlap each other but using a layer technique only render a specific group "time 1" "time 2" ... and so on
Ihad a question Im almost finished implamenting the muliplayer the max players that can join is 4 however I atn 1 player controlled Enemey to also have the potential of joining the game so would I need to set the max players to 5 or set the PCE as a seperate join value?
@plucky aurora in my limited experience level streaming chugs
its never as smooth and seamless as you'd want
just something to keep in mind
so youd rather would load between efficient and fast loading seperat levels or rather have all the stuff build in one level and just load and unload it with some sort of layer magic?
Hey everyone,
I'm building and deploying my AR project but it's giving me some errors. The Following is the last part of the Android Log:
Precache HighWater 384MB.
Assertion failed: Memory [File:D:/Build/++UE4/Sync/Engine/Source/Runtime/PakFile/Private/IPlatformFilePak.cpp] [Line: 4010]
Some Observations:
- It's working perfectly on Galaxy S8
- Crashing On Galaxy Tab 6 & Galaxy s20 ultra
Really need to get to the bottom of this. Any help would be appreciated.
tbh im not sure how titanfall does it, but if you're OK with a little slowness when streaming then that seems to be what you want
you can keep your player and whatever else you need in your main persistent level
yeah my only problem was the first time i tried that, that i wasnt able to actually unload the levels
or "hide" them
when they overlapp and the player was in them they ALWAYS where on Oo
or was that maybe just because the meshes there where set to static
and that way they always are loaded no matter what Oo
How would I import a skeletal mesh only into a character blueprint
I don't need animations for it
@plucky aurora I dont recall atm how to set it up, but you can make them unloaded by default
i am reading up on that
rn π
do you know if theres a way to disable collission of specific meshes on runtime?
if they are set to static @narrow kelp
do you guys know how come i'm not getting the log statement to show up? i'm attempting to take away health points when the projectile collides with the object, i am able to destroy the object but not do anything further
ah okay
Dummy
what should that connect to?
Whatever your BP is connected to so it should come out on last
works thanks
Yeah
connected to cast to creature
Np lol
Yeah it should be like entire code then connect the last piece to the print you want
Hmm what do you mean exactly, I see the float is connected to in text
I'm a novice aswell, so still learning and English isn't my native
use the decrement to subtract from health
Question.. to dissolve a ai on death. Would you make a material instance with dissolve material then call it in zombiebp as a function after death?
Please and thanks in advance for the help
Oh no no
I have a code for subtracting things, I don't remember it exactly so I'd have to refer back to it, I'm not on my PC atm
alright cool works
the decrement says subtracting 1
but getting 0.0 for the output? health is 100 - 1 = 0.0?
is that perhaps because there are a lot of collisions that occur?
but then again the value should go negative past zero
okay, this works
@plucky aurora Effect and Cause didn't stream levels, it was two levels stacked on top of each other, then teleport the player on the Z axis. That actually benefited their texture streaming system so you wouldn't see the texture popin' when teleporting. They go into it more here: https://www.vice.com/en_us/article/av3a7b/a-behind-the-scenes-look-at-the-best-mission-in-titanfall-2
Ok I have a question. I have 8 gas cans you have to pick up. How can i make my enemy store each gas can's location on destroy of that actor's instance and come to the location once that instance has been collected?
@distant sedge thank god you shared this with me i was searching like an idiot on google and couldnt find it π
thats fucking perfect for me, exactly like the solution i had in mind first
@trim matrix Tons of ways to do it I suppose. BP communication of some variety is necessary; could depend on whether it's just one enemy being notified that a gas can was collected, or a particular enemy of several, or a whole lot of enemies, and how those enemies are selected and etc... You should look up an overview of approaches to "blueprint communication" to get some ideas.
Quick and dirty non-performant way if there's only 1 enemy in the level: on pickup, the gas can or the player-pawn Gets All Actor of Class @ index 0, casts to the enemy, and calls some function on it.
I'm not knowledgeable on #gameplay-ai
i get what you did there
but this is not made using a behavior tree
so its not meant in ai
Save gas can location to a vector variable? lol
@hollow cape i do u know of any unreal docs instead i dont under stand them videos
idk what you're asking for
look up the docs, they're there
KHarvey if i found them would i be asking? (ik it sounds mean but i cant find them ive looked every where in the ui thingee)
I have 8 gas cans. For each gas can collected, save their individual location, and then send the enemy to that specific location to each location but one gas can collected at a time
if that makes sense
Must the enemy necessarily know about all 8 gas can locations? It only needs to know about the last-picked-up, right?
yea that what i mean
go to the last gas can's location that was picked up, and repeat that for each one collected
I suppose it needs a vector array variable that's basically a queue of gas can locations
ok
if the enemy goes between each location in an uninterrupted way
in the order they were collected
when a gas can is picked up, some sort of BP communication happens and the enemy adds a new entry to the list; when it reaches a destination, it removes index 0
here in the standard macros i'm unable to assign the object reference, any ideas to fix this?
tried "get attached parent actor"
does some one know why this dont work
can someone simply explain to me how can i cast from a trigger box to a Bp that handles a skylight? I have triggerbox bp'd and from there on component overlap -> cast to the bp that handles skylight and put set hidden in game. the exec doesnt move from casting node
@trim matrix you need to do that in a blueprint that blueprint needs to know both the triggerbox and the skylight
so it seems the level blueprint would be appropriate
Hey, it seems that my projectiles are all automatically being deleted after a few seconds. Is there an option for this that I overlooked or something?
cus some 1337 guys told me to not do lvl bp's
well those people are full of
and as a matter of fact triggers also
there isn't any reason not to use level BP
what about them
someone told me not to use them especially if for consoles
lol
holy shit dude
idk who the fuck talks shit on this level
but they don't have an understanding of making games at a level that matters
said that too expensive
uh huh
well i thought its weird too but thanks for corrections
I wonder what they do for interactions lmao
i remember he said just use line traces if u need anything
like dot product traces lmao
=))
nah fuck that
it's a crippled understanding of development
nothing is rigid
you use whatever fits the situation the best
I wonder if he was serious or trolling. If serious I wonder where his information came from
or how he reasons with it
who was he
cant remember was like couple months ago π
generally it doesn't matter either way
don't let yourself be gatekept
use whatever you need
make it work first
and if it's too slow
optimize then and only then
yes π
is there anyway to make the data asset to be configurable thru ini file?
for the UI widgets, what is the node to call to load a canvas into another canvas?
looks like ur save function is fucked up
@trim matrix .any suggestions on how to fix it. My game is crashing on Android. We tried to fix it on Samsung and huawei devices. On iPhone it works. But the texture is a little off.
well since i dont have any clue on how your saving thing looks no, and i dont deal with blueprints that often anyways
could be permission problem i guess
Little confused on this I have a kick menu however I want the host to display above everyone else however when I plug in both the player info and player image for the seperate info block none of the info displays
I figure it would be simple to just pull the info from my playerinfo file but idk why it just refuses to display the hosts info
hi support team, I want calutator angle between two vector in 3D space, please help me!, I use blueprint for unreal
I have a question. Right now to achieve a enemy jumpscare, im grabbing the players location, finding the lookat rotation from that and the enemy location and setting the world rotation of the fps camera. That is not giving off the desired effect, which is to make the player look at the enemy from the center of the screen. Is there another way to do this?
Hey guys, according to yesterday conversation, i'm giving you some insight about my game π
Main game screen
Inventory screen
Item DT
I make it smaller, estamined ~5k of positions
@narrow kelp @fathom portal that's something π©
how do I set the motion blur of my FirstPersonCamera by blueprint?
@sick sapphire Get global PostProcess, on templates its already on map. Then find motion blur panel and here you go π
You can just get ref to that in bp
@jolly pumice that will affect every camera in the level?
yeah, its global
I don't know, if there's a field, that works on only certain cameras
i can't find it though, maybe I deleted that at some point
any way to get a reference directly to the camera instead?
this is as far as i got
@jolly pumice
Work on those nodes π
You need to make ref, edit it, then save new settings
should go
find motion blur in post process, in details
then tick amount, does exactly what it says π
@jolly pumice ok, thanks!
Good morning guys, i have this custom function in my GameMode BP:
https://blueprintue.com/blueprint/728r59s8/
It counts if all enemies in level are death, if they are, player wins.
This even't is triggered from the CharacterBP, but it does not works all time, why?
Firstly, check if all enemies are in array
triggering this gameplay function from character bp crash the editor
after to close the editor, i can't open it without remove all changes in the bp(thanks git, you save me)
Where are you storing array? In character bp?
Hi guys, I am a beginner trying to learn how to animate a platform using a button. here is what I have:
when the player collides with the button, the "gate" open and allows the key to be pressed and animate the sequencer
Where are you storing array? In character bp?
@jolly pumice i'm saving the actors
This, however, does not work for some reason. Could someone help me with that?
@bronze kraken Just make lerp to new position, if its one time thing π
no, it's an animation loop
okay
but I could look up that method also
so, it needs to start going back, when character is not on the spot?
typical task for a timeline
I could easily just play on start, but I want a trigger
it works just fine without a trigger
the problem is that the F key does not activate the blueprint, but the colliders work just fine
@bronze kraken use Print String to understand where the problem is
ok, how do i see the debugging text irt?
You can also display the Blueprint while playing, in a separate window, and check whether the proper branches are activating or not
yes, i did just that
The debug text from Print String appears directly inside the viewport
and in the log it the respective option is checked
So you get no input event from the F key?
The actor that contains the input event should be receiving input from Player 0. There is a property in the Details panel.
I think this part is fine. The problem may be that actors, outside of the possessed pawn, do not automatically receive input from the player unless they are told to do so.
Show the details panel from the actor which has the code you posted above.
whatever is handling the input action needs to have input enabled
Now it is probably like this ^^^
Needs to be Player 0
This is your third person character
yes
Ok, one step back.
In Unreal Engine 4 typically only the possessed pawn (which is controlled by the player) receives the player input.
A character is derived from pawn, so it applies to it as well.
If you want another actor, which is not a possessed pawn, to also receive player input, you need to set it specifically.
This is my game mode function,
Otherwise normally other actors don't get player input.
And here is how i'm triggering it since the character
@bronze kraken
the idea is when a character dies it will triggers the game mode to remove this actor from the enemy list
So if you want your trigger box BP to also receive input for the F key, you need to enable it specifically.
@atomic salmon so typically, you don't want to use the trigger's blueprint to recieve input, but rather, use the actor's blueprint instead to detect collision and initiate the input
but, like you said, it could be triggered specifically to do that
@bronze kraken yes, that would be the right way to do it. Directly in the pawn/character or in a custom Player Controller.
That allows you to generalize to platforms, elevators, doors etc.
The pawn/character handles the F key (interact command) and sends it to whatever actor it is overlapping so it does what it needs to do.
that makes sense. otherwize your input won't be centralized
That is one reason. The other reason is that you can abstract the interaction with the different elements.
Probably there isn't. This is part a programming concept and partially good interaction design.
Hey all, I'm attempting to generate a grid of blocks and then change their height based on perlin noise in BP. Using the NoiseBPLibrary. I don't think that's the issue rn.
What I'm doing is two nested for loops, the inner one generating the Y axis, the outer generating the X axis. This successfully gives me a grid of 'blocks' . Now what I need to do is change each instances height based on the perlin nosie
@atomic salmon thank you for explaining this in detail.
I tried getting the instance count, then doing a for loop using that as my last index value, so that it loops through all the generated instances of my block. Then when I attempt to change all their heights, it works, but moves them all the same value. To give the illusion of terrain, I need them to be at different points of the 2D perlin generated
@bronze kraken np. Regarding abstraction, you should eventually look into Interfaces, even though this is an advanced concept.
@desert tide you need a way to calculate the noise level for the specific instance at the specific location.
so you can set it at the proper height.
@atomic salmon ill look it up rn
I favor a lazy approach
google stuff when you need it. understanding class hierarchies comes before using interfaces imho
@odd ember that's why I wrote eventually
i'm aware of class inheritance in programming, if that's what you mean
cool, interfaces are just a degree above that basically
the same way you can do stuff in class hierarchies for a single family of classes you can do with multiple families of classes with interfaces
Is there anyway I can have functions that only can get called in editor?
And ignored in a build
Like if I have a debug function
This is my game mode function,
@sonic kraken Sometimes it triggers, some times it does not trigger
i don't understand what happens here
sorry to say this, but learning all this is time consuming, especially for a designer like me. Is there some easy tutorial series for blue print triggers for say, anterior designers?
Any reason why this wouldn't work to set each instances height?? The index coming from the bottom is from the for loop of the total
how to play a wounded animation when health drops - 50% UE4
@tame pecan in the source code this is done like this
#if !(UE_BUILD_SHIPPING || UE_BUILD_TEST) // Do not Print in Shipping or Test
PrintString(WorldContextObject, InText.ToString(), bPrintToScreen, bPrintToLog, TextColor, Duration);
#endif```
Hi,
Quick Question:
how to check if skeletal mesh component has mesh ? or its none (default) ?
in blueprints
@bronze kraken interior or anterior? π
interior*
@bronze kraken https://www.youtube.com/watch?v=lPG2RNVqEI8
Learn how to make an interactive Archviz Scene in UE4 using blueprints
00:00 - Introduction
01:22 - Mobility of light
02:48 - Creating a spotlight blueprint
03:40 - Visibility of light
04:57 - Turn on light on βLβ and turn off light on M
Visit us on our facebook page : http...
Guys?
Something like this ^^^
@atomic salmon yes, that's exactly what I was looking for.
@reef turtle use IsValid
@amber grotto typically you tell the AnimBP to do it by setting a variable/bool into it.
@atomic salmon how could i
@atomic salmon I've tried is valid, its not working..
I guess, isValid is checking if the Mesh component exist or not .. but not checking it value .. if it has mesh or none
@sonic kraken apply some basic debugging. Use more Print String.
Do the events fire? Do you get past the Branches?
@reef turtle ok then try == nothing on the mesh value
@reef turtle
@sonic kraken apply some basic debugging. Use more Print String.
@atomic salmon i have many prints and it works some times, some times it does not work, and when i save and i get out from the editor
after to open it again it just crashes
@sonic kraken are you using a compiled version of the editor or a launcher version?
Should not crash like that
Is there any way to clean your project from old references?
@dense flare not as a one-click function. There is an option to remove unused variables from a BP, but you have to go one by one. More in general, you can migrate your level to a brand new project and only the referenced actors/assets will be carried along.
I wish BP had good refactoring tools
thanks @atomic salmon
Why is this not working (i got told its the make key but its the only thing i can do) (the thing i want to do is if game pad is connected change text to press A to restart and if not say press to start)
Should not crash like that
@atomic salmon Launcher version.
@mellow marlin that's never going to do whatever you want it to do
Solved the issue, in the end it was the perlin noise generator I was using not working
of the same type as key
uuuh k
u do know i started yestday and still dont know alot so how would i create it (sorry just want to know cuz i dont see a create parameter
google it
also what parameter there are 1000 of them
the same type as your key
there's a secret method where you can drag the key pin to the get text 0 node and it'll automatically make a parameter of that type
huh i dont under stand what u mean
then google parameters
I AM
all im seeing is materials parameters
could u jsut show me the look of the node
I don't have UE4 where I am
ooh well i cant find anythink on parameters for unreal engine so yah
f
all i find is materials also im a bad searching okay
Node graphs that can be executed, or called, from another graph.
bookmark that site
you will use it for everything
search there will make you feel like a god
not sure where you got the fact that you need a player controller
I said you should hook up a key parameter
oooh
lol
done
that part
but i want to check if conntroller connect not the key of that
outside of the function
yah
in teh event graph
k
is there a way to detect if the user quit the game by either end tasking or alt+f4?
i cant find it
well, it is working well in c++
@zealous moth nope
hm.. then my only workaround is the game instance with a boolean...
@mellow marlin mmm no, that's not going to what you want it to do
huh?
or maybe it is
u said to do it though
test it
i did didnt work
well the AnyKey event
and also you have to hook it up to something
hook it up to a print text node
amazing right
huh i cant find it
you're in a widget right
yup
that'll be why
but i need it to work in the widget
yup
100%
cuz i need the text in the widget to be change meaning i need the nodes to work in the events right
that doesn't mean it has to come from the widget
huh k
where do you spawn the widget
in the level blueprint
ok
wait do i cast to widget?
nope
you're fine
go into your level blueprint
where you spawn the widget
save that spawned widget as a reference variable
k
"promote" to variable
i got a var for the veiwport part
wrong one
is it ok to use event tick to face objects towards the player ? Can i use the relative location of the object to rotate it, or will it be overwitten by the FacePlayer function?
also yes i named the level youwon
its not new
k
drag out the new var 0 from left side of the screen into the event graph
get or set?
get
k
now you have a pin on this new var 0
yup
drag it out and type get text 0
make your get text 0 non pure
how
inside your widget
inside your get text 0
click on either of the purple nodes
in the details there'll be a tickbox for "pure"
untick that
k
now back to the level blueprint
your green node is now blue
hook it up to the any key pressed
i donnr aee details
it's on the right side of the screen
Bottom left.
That screen you just sent. It's in the bottom left. Says Pure, checkbox.
so back to your level blueprint
green node is blue now
hook it up complete to anykey pressed
huh what one
get text 0
oooh that yes
i did
hook that up to your get text 0
k
what's wrong
oooh it is now
Is there any way to get a reference to an inherited component in a blueprint that isn't "none"? I have a cpp class A that is blueprinted into B and C specializations, both have the component (inherited). Trying to treat those with a shared function that modifies the identical components fails silently and the output log warns about it being "none", and IsValid checks fail. If I first cast to B or C and then access the component, it works, but I don't see the point in all that extra work of duplicate functions.
but i cant have it like that cuz i cant have it to be in anykey i need to do begin play and then with output has a var for the widget
the thing in green is what i want the output to be
that's fine
you can still do it like that
any key registers when the user presses any key
anywhere
at any time
huh?
so it will literally change on the fly
how
dude how
Is this still about the gamepad detection thing?
yah
var is storing a reference to the widget you create
also anykey is not helpful for it
what's he trying to do?
when the level starts he wants the proper text displayed
depending on input device
tbh true
what you really need to do is
i dont want it to change by button
U DONT UNDER STAND
i dont want it to work like that
it will
i want it to work without pressing anythink
well key pressed and that is not what i want to do
you have to detect a switch between input devices somehow
if a player never presses an input key how will you detect what they are using?
(on this another engine i could)
what you need to do is in your previous level, have an anykey event that does the LastKeyPressed
you couldn't
The only way to detect if you need to display Press A, or Press Spacebar, is to detect if the user has used a gamepad axis recently and display the keyboard controls if they haven't.
computers aren't magic
they respond to logic
saving the last input from previous levels
works
also I don't think there's a node for recent activity
k
it's a bit more involving but it's a robust solution
Set a variable and update it regularly. Quite a few older games did it that way, and I don't think anything about that has changed. The only other option is to let the user specify their device in the options menu.
cant find last key pressed
@maiden wadi that's... what I am proposing?
You could probably enumerate connected input devices somehow, but I don't know of a way to do that in blueprints
@mellow marlin you have to make it yourself
ok so
in the level before your "you won" level
k how
If this is happening right after BeginPlay it seems a bit clunky, but if you're in a game state that you can't reach without pressing a key, it should be fine
use the any key event
now do you have a custom game instance class?
if not, create one
yes
do u mean game mode if so then yes if not then idk
As in, make a new blueprint and inherit from GameInstance
yes
A game instance is a singleton that gets instantiated when the program launches
lol singleton
idk what the heck u guys mean lol
so i make a blueprint class?
yes
k
pick game instance
k
as the base class
when you have it
open it
create a Key variable called LastKeyPressed
k level1
k
k
and use the Key of the AnyKey event to set LastKeyPressed
from your custom game instance pin
it should be there
you also haven't cast it to whatever name you called your custom game instance
then you need a "cast to GameInstance1" node
^^^
yes, you need to set instead of get
now in your you won level
wait what do i set it to
anykey event's key
yes bravo
k
get game instance -> cast to your game instance class
k
get last key pressed
and put that into get text 0
and do a print afterwards
in this way, the last input of the previous level will be the input you get for this level
this is a little shotgun surgery style
uuh k
but it doesn't matter for your particular project scope
cmon you've done this before
nothings happening
guys, how can I control what a certain camera renders? like a layer or a channel for example ?
@mellow marlin get, not set
huh
you need to get last key pressed
you're not setting it here
you're requesting info from it
i dont under stand now
just drag out get last key pressed from the cast node
get
k
use that
so now when you load the you won level from the previous level
it will always be the last input device used
use your new var 0 to hook into where it says "self"
k
@twin pollen Maybe a post processing material? Or maybe via a render target... Or maybe with custom trace channels and modifications to the camera cpp code... not sure
I'd think it's the collision by visible or the rendering as LurkNautili said
@flint surge The thing is the camera has no options like that. actors and components also don't have such options. The only thing I found online was that you need to extend engine code to add such feature, But that was back at 2014 so I guessed maybe that's legacy stuff and it's now available
not working still
@mellow marlin it's because you're not playing you won from the previous level
Post processing is available in-editor via post processing volumes, to which you can add materials which you can build in editor as well
Not sure how much you can do by messing with the target the camera is rendered to, but I think you can access that via the blueprint editor
i went to level one then i went to the door thing then it went to you won and still nope
well right now you just set it to print to text
When it comes to custom channels, you can add those in editor, but to make the camera trace those for rendering instead of (presumably) the camera channel, you'd probably have to tweak the camera component's code or something
not sure, never looked at cameras in detail
@twin pollen Basically if you're unlucky it might be one of those situations where the only solution is to trawl through thousands or tens of thousands of lines of engine code
I don't have expertise with that particular area of UE so it's possible an easier solution exists that I'm not aware of
@flint surge I don't really mind C++ and engine code, but i though there was an easier solution, because ... That's like basic stuff ...
Yeah it seems like it would be
I haven't had to do anything like that before, apart from having to add a post processing volume and material for an outline effect
@mellow marlin you aren't supposed to change the name, you're supposed to use the right variable
sigh
maybe blueprints were a mistake
i updated the blue print for the var1
well, they're handy for some things
but at what cost
but many things about UE seem like mistakes
like the unholy abomination that is slate c++ code
Tell me more about it π
And they changed a lot of C++ basic compiler as well, so you can't work with your background knowledge as well, you have to study their code and spend hours upon hours to figure out something trivial
it's the byzantine and copious use of arcane macros and other preprocessor directives that messes with my flow the most
half the time VS / IntelliSense completely shits itself in terror even though everything compiles just fine
I dunno, some of the builtins seem to border on pessimized
just like black magic should be
like idk wtf is going on with TOctree but all my problems went away when I replaced it with a kd-tree I sharted out in like a few hours
sure, I know they're not equivalent even on an abstract level but there was some bizarre shit going on that I couldn't explain away based on the differences in abstract data type
on a completely unrelated note, the VC++ compiler implementation of std::piecewise_linear_distribution is borked
makes me wonder why I even bother with anything other than linux
I'm happy to see I'm not alone in this. Because I started using Unreal 4 months ago, but I had working experience in C++. But for some reason, I feel like a total noob sometimes when diving into code engine.
Yeah I've been at it with UE for about 2 years
the rate at which things get easier is painfully slow
Ya ... I can see this now ... Well, good luck to us. And stay safe βοΈ
Gonna preface this with that I'm basically a total novice at UE4 and game making now but would anyone be able to help with setting up anim graph blueprints for a bird? lol
I've been trying to figure it out through online tutorials for setting up movement but I've been running into some snags I can't seem to get an answer for. First major thing is I'm trying to get basic flight working which so far I've had two major problems for
1, it breaks the "flying" animation and has my bird walking on air instead
2, I can move forward/back/left/right but it acts like its walking on a flat plane the whole way so I can't move up or down without exiting flying entirely
Or if anyone knows some tutorials for flying creatures in general because I can only seem to find "make your humanoid fly like superman" type things
Hey, got a question that I'm not finding any resources for, probably because I don't know what to look for π Anyways, what I'm trying to do is slide an actor over the surface of another actor. Coming from a 3D application, this would be similar to something like a surface constraint. so something like an actor moving on the surface of a sphere, only with more complex objects. Does anybody know what I should be looking into to solve this problem?
kind of depends on what the method of sliding is
player input, so like WASD movement, if that's what you're refering to
For example, if you were sliding the actor by cursor in your viewport, you could deproject that 2D viewport cursor position to get a point and direction in 3D, and then do a raycast, which will return the intersection point and normal for example
trace to ground every frame find impact normal, translate to rotation
You might be able to work with raycasts in a WASD type situation as well, yeah
if you're looking for spherical gravity you'll need to make that yourself as well
