#blueprint
1 messages Β· Page 44 of 1
Wait
am I correct that a character isn't destroyed until after the Destroyed event has finished?
no, do you have a IA input?
this
yup
np
Hi do someone kown why my hello print work but not my set text π
Thanks again, that worked! I just set the collision to none after the hit.
This is something silly but I want different colors for my debug dots for different entities paths.
Is there a simple way to take an actor and turn them into a unique color
like a hash of their ID or something or modulus or w/e
You're creating the widget there, but you're not adding it to the screen. If you already have the widget on the screen that you want the text to change on, you'd need a reference to that widget to call the interface on it.
rn they're all the same color but identifying different paths would be nice to do randomly
do you know how I can get a reference to the widget?
When you're creating the original widget originally the return value is the reference to it.
The widget is a component from the Character BP and I want to communicate between another bp and the widget,
Ok, so if it's a widget component, from the widget component you can do "Get Widget" and use that as your reference to feed into your interface.
So I should cast from the character BP to get a ref?
If the code is in your character, you should be able to drag the widget component into the graph and access it.
If it's not in your character, then yes, you could get a reference to your character and cast it to get the appropriate reference to your widget component.
Alternatively, you don't have to cast and could just "Get Component By Class" from an actor reference that contains your character and specify you want its widget component, assuming there is only 1.
Thanks I will try that
this is how you could do it
(World Marker being my widget component on my actor here)
@thin panther is there an easy way to use json? I added the plugin but otherwise I am writing the data by hand... seems like a pointless exercise as opposed to csv
Hello, I have been following Reidβs Channelβs tutorial on a spatial inventory and itβs been fine up to this point but somehow the icons inside my inventory are way offset. Does anyone know what might be causing this, or might be able to help me figure that out?
I rewatched it and I think I did everything right, and it would be easier to pinpoint what I very obviously didnβt do right if I knew what could even possibly be causing them to be offset like this
Those icons should be a child of the slot widget
would using timelines like this cause any problems? the timeline length is set to 999999 and I use it as an infinite loop basically :p
I don't know what the tutorial showed you but it's trivial to place the icons in the slot
Just use event tick at this point
Unless u need curves or some sort
Actually that's for a key pressed? What's the goal here
only reason i use this is for better readability and to not use an extra variable just to check if i should be running the function
wdym im a little lost
U can get continues exec using the triggered pin
Each slot should be a widget. And in that slot widget, you can have an image (icon)
the idea is that items can take up multiple slots though
Like a resident evil inventory
heres the bp for that
I never do something like that
Prob want to check the anchor
#umg would know more
How do you get/set a BP's initial values, inside another BP?
I circled what I want. I can change the values in the Details tab, but I don't know how to do it with blueprint nodes
Wdym by bp nodes
If u want to set default values for every instance of the class.
Just edit the default class values
I need it programmatically with some preset variables. This is because I have an actor prefab, and I can copy/paste lots of them, and just change the shown materials and the text.
I figured out how to get access to the nodes, but it doesn't change anything, even if I set the variables from the editor.
Edit: As you can see in the screenshot, the title on the plaque ends with ".... Description" but the variable given and should display is "Bricks".
This blueprint code is in the Construction, so it runs in the editor I believe
One way I can think of doing that is probably in the constructor (c++)
Maybe u can edit some values using editor utility widget but I don't venture much there
Like this code, u posted. When is it even run? If not editor time, you are not gonna see the changes
So you're saying its impossible to do this:
Parent BP > Child BP
Child BP has "name", but we can't access it in the editor, so we have to give the parent a "name" var, and pass it down and set it
Not saying that at all
I'm sure u can access it
Try editor utility widgets
I would like to draw a line from the center to the middle of one side. I know I can use actor bounding box but can't resolve it. Any example
Hello, I have this problem with a BP that the default location is not at (0,0,0) anymore. BP was not created by me and I don't know how someone was apparently able to set the a relative location on the scene root?
Any way to fix this or do I have to recreate the BP from scratch?
the scene root holds the world transform if that is from the details of a level instance
the BP probably has it at 0,0,0
Anyone might know if there's a node that trigger the Play Mode ?
What do you mean with "Play Mode"?
Like when you press the Play button in the Editor. I want a node or c++ code that does that (My goal is to trigger it from a remote program)
Oh right, not sure, perhaps #cpp is a better place to ask. I don't think editor utility can do this either
Ok I'll ask
Hi Im looking to First remove Any armour before removing health . But Need a method that once armour is zero , the remainder of the damage can be grabbed to pass to health
You would want to check if the result of the substract puts armour to below 0. Ifso, set armour to 0, and take whatever amount was below 0 and substract that from the health π
Think I just figured a VERY clean method , what you think?
Well now you are just taking whatever value is left after the substract and applying that as damage, which I think isn't what you wanted? If your armour is 100, and we remove 50 armour, then it means the remaining 50 armour gets passed through as damage
Well yea, you are running into a few problems here:
- You are not saving the result of the substract node as the new armour value.
- Your current setup is not doing what you want it to. You need to check if armour <= 0, and if it is, take whatever amount is below 0 and pass that through as damage. If armour is above 0, we don't need to pass any damage through
Im doing something like this already before, tthis remove armour
Right yea, so what isn't working at the moment?
lets say the damage is 20 and the armour only has 10 left. I want to first remove 10 armour and pass the remaining damage to the health
Right yea, then you need to repeat the check you are doing above when you are removing the armour π
ok
Why wont this level open?
I believe #multiplayer will be the better place to ask about this π
Okay thank you sorry π
May I ask what channel for unreal errors? I cant find it π
Depends on the error to be honest π
Assertion failed: this->PropertyClass [File:Runtime\CoreUObject\Public\UObject/UnrealType.h] [Line: 2234]
0x00007ffe2c8b531c KERNELBASE.dll!UnknownFunction []
Hi I made a spline blueprint that adds spline mesh components but when I bake lighting for these it seems like all of them use the same lightmap rather then bake their own lighting per object. Does anyone know what I can do to make it unique
Need more info, when the crash happend
I press host server with my packaged game and it loads me in the server I can look around ect for a second ect then it crashes π
Probably should install vs, debugger and run the game with debugger attached
Whats that? π
If u need to see further into error and crashes. You need to install visual studio and run the game in debug mode
I tried with another map and it seams to be fine
but scene root has only scale to set, not rotation or location.
what is the easiest way to inspect values? like for instance how can I see what value the bound min is outputting?
Right but if u need to address errors and run into brick wall it would be helpful to be able to read the actual error
I see okay thank you! π
Now I just need to fix my steam servers not being able to find each other I think!
Print strings are the easiest way to see these values at runtime
Hey guys, I am new on Unreal Engine, trying to learn stuff by watching a lot of youtube video and etc. While I was copying blueprints from one project to other blueprint changed it's form (idk how its called). Why this happen and what should I search to find more information?
Both functions inside are the same
Is the "is wall inclined service" a function you created inside the first blueprint and then copied over?
If so, you just need to create the function again inside your second blueprint and put it in the graph again
The left function is marked as Pure in the function's settings, it's best suited for functions that return values
It wasn't my project, just a youtuber shared his project and I tried copying it to my
Ah yea, try recreating the function from scratch in your own blueprint, and then put it in your event graph again. See if that works
Also, it might be that where you copied the function from was calling it with a reference but you pasted it in that class itself, if you get what I mean
I tried recreating it but got same thing. But I found Pure option and it helped
So I guess I will google more about pure function to get more information
I'm actually encountering a weird issue, if anyone has any advice. It seems simple but basically I have an array of transforms and when I try to remove a transform from it using RemoveItem it doesn't succeed even though the exact transform is present π€ (Tested with print strings)
no way to inspect them not at runtime?
Sometimes you can and sometimes you can't, and actually using a printstring would also allow you to use breakpoints on the PrintString if you need to follow flow
because converting the values to a string will allow you to see them at the breakpoint
show your code of how you are removing it
literal array RemoveItem nothing fancy
well, Remove Item only works if it is an EXACT match, and a print string is only so accurate
1.00000001 != 1.0, and many times calculated transforms will have a floating point
is this the right place to ask material blueprint questions?
im trying to figure out how to generate a unique random number in each material instance
Just set random value for every material instance created?
Hi, does anyone know why unreal crashes when I try to change a blueprint's name?
do you have the asset closed?
yes
"Duplicated actor descriptor guid"
I think I fixed it
I had the actor placed in the world, maybe it was that
Could someone help me test my game multiplayer real quick? π please I could paypal like 5$ if it works xD
Hey everyone,
I'm diving into app development and could use some guidance. As a game developer comfortable with both UE5 and traditional software, I'm torn between the two for building a mobile app focused on personal account finances. I can handle coding and interface design well, but I'm curious about the efficiency and speed factors. Any insights or recommendations? Thanks!
traditional software is your move tbh. unless you want to spend a while learning slate (which im not even sure if the standard eula lets you ship)
you'd be fighting unreal at almost every step of the way, and it has a lot of fluff that you don't want for a lightweight mobile app
blueprints would certainly not be the move for this
I can handle c++, but was confused as I have to go a bit into the learning curve for a personal app if I choose traditional method.
Anyways, thanks for your advice
Well no, mainly because when we are not running, nothing is being done (with the exception of the construction script)
I see, thank you I'll experiment with acutally rounding off the numbers, because I don't really need that precision
Anyone know what might cause this error:
"LogScript: Warning: The data table type is incompatible with the RowData parameter"
I'm trying to add a row to a data table & I'm using the make... node that comes from the Add Data Table Row function
Also, I'm trying to make a Utility widget which can write a JSON file. Is that possible? All I can find is the right click on a datatable to export as JSON.
Hello, I don't know if you know the game slice it all, but I need help. I would like to copy the "knife" movement of slice it all in unreal engine5, but despite many attempts, unfortunately my knowledge is not enough, as I am a 3d modeler. Could you help me?(this is how I currently move my character)
Hi!
I'm creating a system where player selects an action, then has to click a target.
Is there any option to let the game wait until the player clicks?
I've seen a node called "Wait input press" but can't use it on my character, it doesn't even appear ^^'
Is there any other way to do these kind of "wait for player input"? Thanks!
You could add a boolean check to prevent certain things from happening after said action has been selected.
But that way I would need too many checkers, isn't there any other way?
Sometimes that is the only way, though I don't think I fully understand what it is you are trying to achieve.
I'm creating a turn based combat, and I want to select the targets of attacks / abilities /whatever, to be selected when clicked after the action has been chosen
you can have an object reference to the action, during your left/right clicks, if the object reference is valid, handle them differently rather than usual left/right click
can separate those action to be, ground target, single actor target, area actor selection, etc etc
and based on the different action the click would behave differently
Easier to have a boolean imo, either way they are going to have to add "too many checkers"
Are you saying that every click I make I should check which action has been chosen previously? I'm not sure I did understand you
With that bool you mean something like "restarting the action queue if the target is not valid" / "until the target is valid"?
I mean preventing other actions from being taken ( such as moving the camera ) by checking if an action is selected.
As I don't know the actions you wish to prevent, I chose moving the camera as my example.
Hmm okai, i'll try with bools, thanks
To try and keep it simple you could have just ActionSelected as a bool, but depending on how many actions you have, you might then need another data structure to store which action is selected.
Don't forget, the entirety of your computer is essentially nothing but boolean checks π Booleans are very useful
if you are talking about blocking inputs while an action is selected
might aswell utilizing adding/removing/overriding priority of InputMappingContext
then you dont even have to bother about checks
the whole point of IMC is to be able to use the correct input mapping suitable for the current context
That's a good point
Can I inspect the values not in run time in the construction script then, or is it only print string at runtime?
Print string can be used in the event graph and in the construction script.
The event graph only runs during runtime, whereas the construction script also runs whilst you are in editor, when you move actors that have construction script functionality
Thank you for clarification. I appreciate your time
Have you modified the structure? if you have you should reload the datatable.
There are couple JSON utility classes in the engine you can look up.
hi there why am i getting multiple "BP planches" instead of one ? thanks !
the triggered event is every frame and you are resetting the Do once after spawning the actor.
use the started pin
oooh ok didn't it was every frame tahnks a ot
its oneshot
thanks
Anyone know why I seem to lose all my velocity on impact with a physics object rather than relative to the motion and mass of the thing I'm hitting?
CharacterMovementComponent's "physics" are silo'd from the actual physics engine
Turning on Simulate Physics for your "character" will result in gnarly whackiness
hmmm I haven't turned on physics from my "character" because of said Whackiness...
just the CharacterMovementComponent physics atm
the CMC physics i believe are set up to have your character dominate; a physics object will react to you like a brick wall
but in exchange you also don't inherit velocity/momentum/impulse from physics objects
hmmm, I'd like to though, be able to be knocked over and moved around by these objects
If that's the effect I want should I switch over to using Simulate physics and start to peel away from movement component for a phyiscs built character controller?
using more force, velocity, impulse etc?
I'm going for wackiness anyway
That is something I'm also asking in my system; I'm doing a 6DOF grav sim and the character moves using Add Force
But physics interactions are tricky since I am also trying to "walk" on phsyics objects
The goofier my system is, the better
for simplicity I may have walkable surfaces be non-physics
Are you networking yours?
no plans yet
kk, mine is being networked
sounds like you'd know more than I would about how much you'd have to have the system replicate the physics
yeah CMC has its own "Phsyics Interaction" section
I'm used to working on a much larger team previously and I've never been the one to do the character controller π
as well as its own "Add Force"
ooof
I think there are ways to constrain the physics to a plane if that helps
yeah but if you're talking about wackiness that makes it way worse
I think I'm just gonna start stripping the controller and switching to a more sim approach
it'll make it feel better anyway and more tunable
Thanks Zap!
btw for your 6 degrees of freedom sim have you gotten relative directional gravity working?
I got that working for myself 2 days ago, it wasn't too bad
Hi guys, is it possible to display VRAM usage in a Widget? Similar to how you can view FPS, I would like to monitor VRAM usage during gameplay
There are a bunch of stat commands for different use cases : https://docs.unrealengine.com/5.3/en-US/stat-commands-in-unreal-engine/
As for displaying it in a widget, I'm not certain right now.
yeah that was honeslty the easiest part tho i'm doing some refactorign
because of the character interaction
I think I just have to make a separate gravity function for the character, I was trying to figure out how to have the math apply to both primitives and CMC but it'll probably be easier to just duplicate it at this point
I don't think I can use them into Widget Blueprint but thanks Thor110 ππΌ
or maybe I can π§ I have to try one thing
Yeah, I don't think you can display that info in a Widget itself, but you can always activate the command via execute within the Widget, I think in some cases you can get feedback from the commands that you could then use to display information in a Widget, but not always.
Hello, is there a brave soul that could spare me 30 mins to explain a couple of things?
i'll be interested in knowing how this comes along, maybe I just need to tune my gravity variables a little more.
I'll add you as a friend and keep you updated!
with physics on, my character would get stuck on a planet and spin uncontrollably lol
maybe I just had the gravity on too high such that at a short distance it became overwhelming to my thrusters
Are Blueprint Function Libraries the only way to create static functions in BP?
Or can you, like in native, make static functions within the context of a class?
so I have this bow and i want when animation is playing with it my character to dynamically grab the string do I need to use IK to achieve this?
What exactly do you need explained? It's quite probable that google could provide satisfactory answers to the majority of your questions.
(BFLs) are a common way to create reusable functions that can be used across multiple Blueprints. However, you can also create static functions within the context of a Blueprint class itself without using a Blueprint Function Library.
Once you've done this, you can call this static function from other Blueprints, just like you would with functions defined in a Blueprint Function Library.
chatgpt answers aren't the greatest
especially when you don't reveal them as such
So... is that incorrect?
BPFL is the only way to create a static function in BP
Alright, thank you
i smelled chatgpt bs and copy pasted your question as the prompt and sure enough
Blueprint Function Libraries (BFLs) are a common way to create reusable functions in Unreal Engine's Blueprints.
As an alternative to Blueprint Function Libraries, you can also create static functions directly within a Blueprint class itself. In a Blueprint class, you can add functions and mark them as static, which means they can be called without the need for an instance of the class.
"I apologize for the incorrect information in my previous response."
XD
I am switching between cameras and rotating them but I have problem with rotation. Maybe someone could help? I rotate camera and when I try turn it back (adding - to possitives values and + to all negatives) but my camera just turns somewhere else than it should. I don't get it π
Before, after and what I get when it should be back to first image
Yeah, but I think it would go like 10 times faster if someone explained live, it's easy stuff
How can you know it's easy stuff, if you don't know it yourself? As for it going 10 times faster, my experience with asking questions is that it has always been 10 times faster to go to google.
Cause I'm a big noob that's why
That aside, ask away.
Ive searched on google but couldnt really find it
You still haven't asked a question.
They certainly can π€£
It's every possible option that I could add to a graphics options menu.
Bit of a mess I must admit, but it works well.
Huh, strange, I just tried this with my own camera and it does indeed seem to go the wrong way.
I've been meaning to, but meh.
Lmao
I tried putting timeline to see how it acts and if you put big number it just go spinning a lot of times. Maybe I need use lower numbers? I calculated if I put 1.05 it will turn 90 degree and 4.2 is 360 degree
I like how it ended up looking π€£ there's really not all that much to it and it isn't as if condensing it into functions would do much more than make it take longer to look through for the time being anyway.
Oh it stresses me out
You could try using set world rotation instead.
You have no reroute nodes
the fact that when compiled
So its not straight lines
reroute nodes are turned into classes, stresses me out.
Ye I was. Even tried other rotations but its the same
nvm it doesn work with 1.05, 4.2 just random worked for 360 degree π
Your Kismet1 ancestors would be proud for following their patterns.
Don't listen to these naysayers
(For reference)
Looks like a musical instrument almost! I love it lol
what musical instrument, aside from the most horrifically configured modular synthesiser, looks like that
I did say almost. It's almost harp-like, or reminiscent of a glass armonica.
What's the most appropriate collision object type to use for projectiles? I'm trying to fix an issue where my projectiles from a really fast weapon keep hitting each other and causing chaotic behavior
I know in theory I could make them ignore their own object type with ANY type, but obviously I don't want them to pass through random other objects in the scene either
Really if there was a way to have them JUST ignore themselves, that would be the ideal
make a custom object type in project settings and have them ignore that
hi there is there a way to stop a function ?
Set Tick Enabled to false or within your function use a branch and a bool that is set by default to true and you set false when you want to not execute Update Animation.
How do I perform a basic collision check?
I'm more curious about what's going on in that method to be honest
"WolfAIBehaviourTree"...why is there a tick being used to do something to the BT. And why is it dealing with updating animation?
Like a raycast? (Linetrace in Unreal terms)
I want to check if an enemy has hit me with his weapon
Can either do an overlap check with a box/sphere collision component, or do sphere traces in the animation with an anim notify
These are often the basic implementations that work well enough in most situations
I've tried to set up notifiers inside my animation but don't understand how to access those inside my character blueprint
Could just do the old box overlap
https://cdn.discordapp.com/attachments/846520322642411570/1176600271858716823/image.png?ex=656f7564&is=655d0064&hm=8fa724c880fb29f07696a16d0cfd29260b5d096d5fb64e4f5a7d83bb1073a299& could someone help me understand what im doing wrong here?
this blueprint rotates a sphere based on joystick input.
on begin play im setting the original rotator of the sphere.
when the jotstick is inputting it rotates the sphere and when that completes, it sets the current rotation and is suppoed to rinterp it to the origin but it's not
Quick question. Attaching two pictures. When I interact with the pink cube, the wall changes color. I did this by searching for the tag, and then changing the stencil value to show the true color. The rest of the map is grayscale via post processing. However, when I change the wall.. the background of objects that have color are showing it slightly. Depends on where the player is looking (only at that wall). It is as if there is light coming from the wall, or I am not understanding the post processing / custom stencil etc. Any ideas? Thanks!
I got this dash mechanic, and uses this nodes to get the direction of the player, do you know how can i do to make the dash not affect the movement only on the x and y axes, for example if i dash while looking up i want the character dashes into the direction i'm looking even on the z axes so it will go up and forward
I don't think it's a bp issue. maybe check #lighting ?
well looking up won't change your char's fwd vector, so you would need to prly check if the char is looking up and use up vector for that one instead
I have to combine the up vector and the forward vector?
Maybe. It might just be the wall. Ill have to do some testing. Which doesn't make sense it is just a basic shape, just like the cubes. But when I scale the cubes out I dont have that issue. Weird
not unless you want to dash upwards and forwards, diagonally
Yes, i want dash diagonally
then yes
How can i do this, i have tried adding the forward vector and the up vector and then multiplyng by 1000 but it doesn't work like intended
I haven't done it myself but I think you're approaching it the wrong way. I would first mutliply each vector and then add the result
Ooph. And now I see the grayscale objects are still reflecting their color'd light >_<
how can I print in BP editor simulation
You need to tweak also some booleans in the CMC to allow Z-axis movement; I had to do that to do 6DOF. Using Force/Impulse you can do 6DOF, but Input Movement is restricted based on the movement mode.
You can probably get what you need by
Get Camera > Forward Vector > Multiply > Add Impulse or Launch Character
the same way you usually do
I was thinking of the z- axis too. I'm basically using set velocity that is the same of launch character but it automatically override z and xy on what i understood
set velocity is not quite the same as launch character
Launch character has more things going on under the hood
Try Add Impulse, maybe
Launch Character has interactions with the movement modes(walking/jumping/falling etc)
but either way get the vector from camera if you want to dash in the direction of view
But i think in my case the the problem is not the movement but the real problem is the way i take the vectors to tell the direction where i want to apply thoose forces. Anyway i will try using the camera rotation vector
It came up that it was easier than i was thinking, i fixed doing this, i was overcomplicating the problem XD
@elder lodge It works exept the fact that when i'm on the ground and dash while looking up the player move only in x,y axes but when i'm mid air and dash it moves diagonally too, probably i have to use the launch character like you said or i don't know, any suggestion?
im trying to clamp the rotation of an object to 180 degrees but for some reason this isn't working
This probably has to do with the CMC's mopvement modes
Walking I think is restricted to XY
That's why when walking it doesn't work but jumping it does.
you either have to use a custom CMC or do a little hack; set the movement mode to jumping before you apply the move
I used launch character and it works now, i can dash diagonally even when i'm walking, do you know the reason?
like i said
Launch character interacts with the CMC's movement modes
And set velocity with cmc as target does'nt interact with cmc's movement modes?
mouse over Launch Character and see how it talks about what it does
Set Velocity is simpler than that and doesn't change the movement mode
Alright, I have an interesting problem. In trying to create an edge scrolling functionality (mouse is moved to edge of screen, camera starts panning), in essence it works, however 2 nodes are contradicting each other.
Note: I am using Play in new editor window to get consistent results and simulate a packaged environment.
Get viewport size is returning the correct size (1280 x 720), however get mouse position in viewport is not (1920 x 1080).
Could anyone explain as to why this is happening? If I understand correctly the get mouse position node is trying to read off the size of the canvas panel, which is indeed set to 1920 x 1080, which gets autoscaled to the right size when I change the window size. So how come the get mouse position node isnt capable of taking in the correct viewport size?
Thanks a lot, you were very kind and useful.
its a collection parameter
So there's a corresponding file somewhere. https://docs.unrealengine.com/5.3/en-US/using-material-parameter-collections-in-unreal-engine/
Ah I fixed it by taking the get mouse position in viewport values and dividing it by the viewport scale. I suppose it is because the get mouse position in viewport node explicitly states that it uses the mouse position in local space of the widget, instead of absolute space. Not sure how that choice makes sense though
does anyone have a resource or an idea on how you handle spawning Niagara particles on moving objects on impact.
for context im trying to spawn sparks on my vehicle when it collides with something. but the particles spawn at the impact point in world space
feed it the proper location?
what did you plug into the transform ?
How do I make a render target only capture the meshes inside it's own blueprint? or only select objects, i don't want to keep hiding my entire scene just to create a RT
Attach it to the actor?
I usually make a BP actor with the Render Cam and place it Z 999999999999 so nothing else is in the scene
Then I have the BP spawn a copy of the item I want to render and do whatever I want to render
you can put a backdrop and a light in the actor as well
just read about spawn system attached, didnt know it was a thing , solved my issue instantly
If a node says Editor-Only, does that mean it wonβt work in a packaged project? How do I get around this?
what node?
Set MipGenSettings (of a texture object)
I need per-texture functionality. Per-material or per-asset wonβt do, unfortunately
sorry , no XP with that
https://forums.unrealengine.com/t/setting-texture-mipgensettings-to-nomipmaps-at-runtime/143749 here they say it's possible with C++
Hello, Iβm importing some texture from files (jpg/png) at runtime but when i try to use them i get this message in PIE and it freezes in standalone: Very easy to fix for any texture inside the editor, but anyone knows how i can do this with a texture created at runtime from a random file ? Thanks Cedric
I wonder if thereβs a way to just force them to work in packaged form anyway. I canβt think of a technical reason why they shouldnβt be able to. The node does work at runtime in PIE, but Iβll have to wait for packaging to finish in order to check that
Edit: For future reference, it doesnβt work when packaged (5.0.3). It only works in the editor, like it suggests
MyTexture->MipLoadOptions = ETextureMipLoadOptions::OnlyFirstMip;
MyTexture->LODGroup = TextureGroup::TEXTUREGROUP_UI;
Ok, interesting, thanks for letting me know. Good to have that as a backup
Hello, this might seem like a dumb question, but how do you create a list of items?
I would like to create a list of symptoms
many ways , what do you want to DO with the list?
a set of an enum type is probably what you're looking for
I would like to create a list of symtoms because create a character that has multiple ymptoms
Creating and editing Set containers, an advanced container type, in Blueprints, including an overview of this container's properties.
Thanks
Hello everyone. Can someone point me in the right direction to make a Quake style strafe camera tilt?
Am I missing something with how Clamp works? If Min=0 and Value=-11, shouldn't the return value be 0?
Have you checked this out? https://www.reddit.com/r/unrealengine/s/JqH12vT3nG
Is there a way to create a custom scene component containing various other components to attach to actors? would like to do that instead of creating a new blueprint and attached it as a child actor.
Components can't contain components. You might be able to do this with inheritance depending on the use case.
I would like to create the follow pseudo code in BP but it seems like i'd have to create a BP Variable and use an execution Branch but it feels like it must be do-able without an Execution branch and stored variable...
if x >= 0:
nodeA.y connects to nodeC.input
else:
nodeB.y connects to nodeC.input
there must be a way to do without the "New Var" in the BP below:
SELECT node
Normal people call it a Switch, for some reason Epic calls them Select nodes
amazing! so select will act as a boolean switch
I went a long time without knowing these existed either because of the stupid name
is there a more generalizable case?
yea i totally did not google for that name
haha
SWITCH integer?
can you elaborate further? I basically need to store hand positions, use a skeletal mesh with animation and a spline. I have to do this a lot of times so thats why i want to use a scene component. But im having trouble understanding this since i have been using child actors most of the time
naming an if statement branch is also ugh.
switch integer acts like an enum right?
is there a way to have choice be not based on an integer, what if i want to see if this one is between 2.5 and 3.2. and then other random stuff for another?
If you are doing animation stuff I'd as #animation because there are some specific things that might help that I don't know bc I know almost nothing about animation in UE
ignore the animation part, could be a cube without animation, but i need to pass info around and have it in a character blueprint
Like this?
yea this works. BP sometimes seems crowded for common functionality to me. that would do it! Thanks!
this gets back to Executables but yea this is pretty tight so i dont mind it too much. Thanks!
If you need multiple instances of this data you are almost stuck using a child actor afaik.
oh, alright, thanks mate
Thanks
yeah
If I want to perform an action say, 9 times how can I achieve that?
At once or delayed?
at once
For loop
oh didnt know there was a regular for loop
ye
hey guys I'm hard stuck for 12 hours and could use the advice! I have a SunSky that is on a 6 minute "timeline" time curve that i s very core to my gameplay loop. I am trying to get the 'Solar Time' value from the SunSky to close a doorway after hitting 19, but I cannot seem to cast or get the variable of SolarTime onto a normal Object BP to be used for functions. I cant seem to understand casting. I am missing a critical step in getting an object refence to work do I have to attach it somehow in its details?
This is a silly question. More for saving me time. Is it possible to change the default time on print string to 0 instead of 2.
Is there another way to get my varible other then get class defaults?
I have way to many defaults now for that to be practical
I know its umg, but anyone know why the vars on a umg object wont let me make them public?
i still have directional sun lights and fog in my scene, so no matter how far it is, it's still lit in a undesirable way
Got it. Set the sets as custom functions
get outside of your skysphere
ok, there's still stuff in my scene though:
Click on your Sky Sphere , and press F
i want to go trough each camera, but when pressing n it goes back to the camera (camera0), is this the right way of doing it?
i did 10000000000000.0 and it got me to black everything
Does anyone know how to make an item mining system for survival games?
how performant heavy is a line trace in blueprints?
i know obviously not much but what if there's 8? how about 16?
legends say they are cheap, i say it depends on the scene
I've created a subclass of CharacterMovementComponent, but when I try to set a variable on it the blueprint fails to compile. How do I replace my CMC with my subclass?
A tidier way would be to use a couple of select statements rather than a switch.
As the class on your actor is only of type "Character Movement Component" you'd have to cast it to "Player Character Movement Component" assuming that the character actor is actually set up with your custom movement component.
Break it down into simpler pieces.
First try getting an interaction system working.
Next, try getting it so when you interact with that thing, it gives you something in your inventory.
Then you can expand it from there how you need, like requiring a specific tool in your hand, the item only having so many items to give, having different types of items, etc.
I guess that's kind of my question. The image on the left shows the class as "Player Character Movement Component" but when I drag it out the reference is of type "Character Movement Component." Am I not setting that up right?
I set this field
I don't know, I've never created my own custom character movement component, but if you're attempting to use the character class I imagine you need to override the exisitng one.
I started doing this, but I have some difficulties because I'm trying to create it for mobile, and touch interactions are difficult to create
I am overriding the existing one. I just don't know how to actually make the character blueprint use the new subclass
But with this little piece of advice you have already helped more than most people, thank you very much
Do you happen to know where I can learn about mobile game development?
Ok, this may or may not work, but I think it's something like:
.h (Immediately under the GENERATED_BODY()
public:
explicit AYourCharacter(const FObjectInitializer& ObjectInitializer = FObjectInitializer::Get());
.cpp (Your constructor for your character class)
AYourCharacter::AYourCharacter(const FObjectInitializer& ObjectInitializer): Super{
ObjectInitializer.SetDefaultSubobjectClass<UPlayerCharacterMovementComponent>(CharacterMovementComponentName)
}
{
//rest of your constructor stuff
}
This should make it so it appears as your default movement component on your character and should be of the right type so you don't have to cast.
Sorry, that I don't know, only work on desktop stuff myself. There may be useful stuff on the epic website. There's also the #mobile channel here and there may be helpful pins there.
Thanks, the second block matches what I was able to find online too
Unfortunately the problem still persists
is there some other way of accessing the component that I'm not using? I'm just dragging it from the component sidebar
Maybe try adding this?
(I'm just pulling this stuff from my character classes that have the CMC changed in them, and making some guesses)
.h
protected:
UPROPERTY(BlueprintReadOnly)
TObjectPtr<UPlayerCharacterMovementComponent> PlayerCharacterMovement;
.cpp (Somewhere in your constructor)
PlayerCharacterMovement = Cast<UPlayerCharacterMovementComponent>(GetCharacterMovement());
#if WITH_EDITOR
StaticClass()->FindPropertyByName(FName{TEXTVIEW("CharacterMovement")})->SetPropertyFlags(CPF_DisableEditOnInstance);
#endif
And yeah, you'd normally just need to access the component from the list.
If it's not the right class though, you need to cast it.
if we take a point in 3d space, is there away to get the vector of the lowest point beneath that original point?
(basically so that we can have a vector at different elevations but always on the grounds surface)
Do a linetrace starting at the location and going down on Z by some high amount and using the hit result?
Line trace
Start up and End down from that
the reason I ask is im afraid if I make an AI move to a vector and its off of the nav mesh, the command will fail because its unreachable.
In the engine, do the AI nodes already account for this?
@vivid bridge https://youtu.be/17D4SzewYZ0?si=YRZN5y5w_Eje-jrz
https://discord.gg/uQjhcJSsRG
In this video I setup a new project and create a custom character movement component. I also implement movement safe sprinting which works at any ping.
https://github.com/delgoodie/Zippy
0:00 Create New Project
1:02 Setup File System
02:50 Create Custom CMC
04:43 Saved Move Class
08:37 Compressed Flags
13:35 Client...
how to move a decal along the spline in the constructor?
Is it generally preferable to add actor components to GameMode classes (PlayerState, GameState, etc) or extend them?
π
U would use component when you need common function to be used by different actors
Don't think game mode player state will need a comp
The idea don't make sense to me
Creating a child class is the way to go
Ok, I was curious since it seems like it was something that I could technically do, if there was a reason to
how would you clump together actors that are the hit actors of line traces?
because not every hit is going to be the character., which means creating an array would liekely consist of an array of different types, wouldnt this throw an error?
The hit actor will output actor type
Anything can be placed in the world is actor type
Afaik there is a class filter? If not you can just loop through the hit actor and cast to your target class
so the hit actor is global in scope enough that anything hit in the line trace could be added to a generic actor array?
good thought
I don't have editor on me
Just check multiple trace nodes
There should be class filter
If not loop through then and cast. If you need specific class, get the out actor, get class then just == to compare
hello all I am not sure if it's a good idea to ask here. Any of you created GPT4 instructions for Unreal Engine quesions?
Hello friends,
I have an inventory system built on BP_Item_Base. BP_Materials_Base is divided into subclasses such as BP_Food_Base. I also want to make an equipment class, but I don't know whether we should use the same method again. For example, there should be the ability to mod a rifle. Or, how many bullets are in the magazine of each gun should be recorded. For example, I used a gun and left 5 bullets in its magazine. And drop gun. When taking this gun, I would expect it to have 5 bullets in its magazine. How do I achieve this? Any help would be greatly appreciated.
Sorry for used translator.
BP_Item_Base: Have DT_Item
BP_Materials_Base: Have DT_Item and DT_Materials
BP_Food_Base: Have DT_Item and DT_Food
.
.
So I have multiple outputs. (keypress 1-0) and they put an output pin called key struct
Does anyone know how I can do a switch statement on those?
basically going from uh
1,2,3,4 -> get hotbar action
vs doing 1->gethotbar action, 2->get hotbar action, 3->gethotbaraction, etc
actually that wont work lol
store the bullet count in the weapon itself? Will you destroy the weapon?
It will not disappear when the player drops the weapon. Physique will be active and will fall to the ground. When the gun is taken back from the ground, the amount of ammunition and weapon modes it contains must be determined before firing.
If I have a silencer on, I should also take a gun with a silencer when I drop the gun and pick it up. Or it should be seen that he already has a silencer when he puts the gun down.
I cannot understand just store necessary info as member variable of the weapon actor itself so they will always stay persisent
Yes. So I don't know how I should build something.
could you come to dm
When you play a temp animation (like an attack)
do you have to store the original animation so that you return to it?
right now its leaving me stuck in animation I play (end of it)
Hey everyone, not sure if this is more of a CPP or a BP problem but more than happy to ask in the CPP chat as well.
I've got the below code defining a custom struct in CPP. I'm trying to access values in this struct in BP but only seeing 2 out of the 5 variables. Hoping it's an easy user error fix
struct FPBItemInformation
{
GENERATED_BODY()
FPBItemInformation() {}
FPBItemInformation(FName Name, EItemType Type, EItemRarity Rarity, EItemPrimaryAttributeType PrimaryAttribute, TArray<FPBItemAttribute> TagValues)
: ItemName(Name), ItemType(Type), ItemRarity(Rarity), ItemPrimaryAttribute(PrimaryAttribute), TagsToValues(TagValues) {}
UPROPERTY(VisibleAnywhere, BlueprintReadOnly)
FName ItemName;
UPROPERTY(VisibleAnywhere, BlueprintReadOnly)
EItemType ItemType = EItemType::Axe;
UPROPERTY(VisibleAnywhere, BlueprintReadOnly)
EItemRarity ItemRarity = EItemRarity::Novice;
UPROPERTY(VisibleAnywhere, BlueprintReadOnly)
EItemPrimaryAttributeType ItemPrimaryAttribute = EItemPrimaryAttributeType::Strength;
UPROPERTY(VisibleAnywhere, BlueprintReadOnly)
TArray<FPBItemAttribute> TagsToValues;
}; ```
Check your UENUM declarations.. should be like UENUM(BlueprintType)
Fortunately (or unfortunately), those enums do have UENUM(BlueprintType).
Are you activating hot reload or live coding?
No, I've turned that setting off in the editor so I'm rebuilding each time I compile.
Casting is just a type check
You can just get actor of class SunSky then just reach in and get whatever you want
Does this node support lightmaps asin that each "add instance" node will have its own lightmaps or will the first one that I spawn generate a lightmap and copy it to the rest?
and if so is there a way around this or should I use add static mesh component instead of Add instanced Static mesh component
instanced static mesh components do support static lights. it will work as expected but obviously you can not add instance at runtime if you have baked static lights.
Currently I have made a function that is called in the contruction script once and has a seed attached to it. Would this work or should I go about this differently?
It has the "Call in Editor" flag set to true
I think it should work as long as components and instances are only added in the construction script. I suggest you to test it to be 100% sure.
hmm interesting cause that is how I now set it up but I'll do some more googling around
thanks for responding
I think this flag is unrelated, all this does is it will let you to call the function from the details panel. the function will work both in editor and non-editor builds.
https://docs.unrealengine.com/5.0/en-US/calling-blueprints-in-the-unreal-editor/
yea that was my assumption as well but I'm trying everything that might increase the chance of success π
this bug has been driving me nuts for the last 2 days
I checked that I put everything i can on static already so that aint it
which bug?
I had a question, dont know which is the right place.
Im learning water plugin and Buoyancy, Ive added pontoons, Everything works, but the boat is kinda static over water, not reacting to waves, like when the water level goes down because of current, it just floats at the same place, Any help?
well this lightmaps not working individually
I currently made a minetrack which has these planks underneath it but as the first one might be in the dark all the following one use the same LM
meaning they are all black although the other ones might be near a lightsource
give me a second I can show a screenshot
as you can see the planks underneath the rails are black
while there is clearly some light shining onto it
does your instanced meshes have LODs? try to build it with only 1 LOD.
hmm, why would I do that? Not a bad suggestion but just curious what would help with that
Hey all. After a break I returned to UE4, and saw, that I needed to rebuild the lighting. I just upgraded to 4.9 shootergame. The build is fine, but it gives errors at the end. Warning Hill Instanced meshes donβt yet support unique static lighting for each LOD, lighting on LOD 1+ may be incorrect It only happens for my landscapes, and it wr...
do you get this wraning after you build lights? some one else mentioned you can change LOD group of the mesh to Foliage. this might do it.
Ah I try that!
I need to find out a way to do that in the blueprint though π€
cause this is a modular tool that can be used with several different meshes and to set everything as foliage is not possible
building lighting to see if this fixes it
Just wanted to say this worked for me, without the #if block. Thank you!
the suggestions in this post are highly questionable π
making something movable instead of static to fix light build issues is a solution i would give my worst enemy
well I was just pointing out the LOD group suggestion. yes rest of suggestions are not good π
the foliage LOD group thing also feels more like a solution which works on accident, i'm not even sure if he has the same problem as the people in the post
iirc there's an LOD limitation with instanced static meshes, but that also shows as warning on light builds
another option is that his light map is bad, or that the material is really glossy and missing an reflection capture
Within the Advanced settings for variables, is a tick box labelled SaveGame.
If I'm planning to have this variable saved, should I tick it?
If so, what does it do exactly?
Thanks in advance.
Hi - I am rendering some image frames during runtime. The problem I am having is that I need to send these frames to a server for storage. But I am not sure how to do it. Any ideas how I can achieve that?
You can save and load without ticking the box.
From the docs ticking it will serialized for saved game.
I think it's the process of converting data to byte format? Not sure but I haven't have the need to tick the box soo far in development
Normally #cpp ppl have more idea
How do you render the image frames during runtime. I'm curious
Then maybe it's for saving variables, from cpp instead?
Not sure.
But I'll just tick it, as a reminder to myself to save this variable.
The process is the same in cpp or blueprint
We r calling the same function
I see. I'll do a bit more research, but it sounds like I shouldn't worry too much.
Thanks for response.
I'm saving and loading just fine without touching the box π but yeah doing research is good. Perhaps share with us the use case if u ever found one
π
It is for the cpp side of things indeed
Hey Folks, a question, i have a AnimNotify, that Casts a MultiSphereTraceForObjects, to create a Hit box, to Kill Enemies, so , Everyone in the Range of the sphere, Must, die, But, Its just Killing the Firsts in Line, There is a way with trace, to get All in the radius? or i have to use other stuff?
I try the Overlap Sphere Actors too, but have the save behavior
Yeah, I confirmed it.
It's for cpp saving and loading systems.
I have two actors in the same level, the aDoorButton from the DoorButton class and the aDoorFromButton from the DoorFromButton class.
The DoorButton have a variable which is a reference to a DoorFromButton, and the blueprint have a function SetDoorFromButton that receives a DoorFromButton on the input and sets the variable.
I have made that blueprints some weeks ago, and its working (the button opens the right door). But for my life I cannot find where the function is being called, and how the right door instance is on the input of that function.
I know the function is called on the start, but it`s not from the Button blueprint neither the constructor, which is empty.
I think it`s from the level editor, because the door instance is given to the function input. But where could it be?
You can right click on the function and find references, it'll show you where it's being called in the BP. If you want it to search all BP's you can click the binoculars to the right of the search.
I have done that, but not with the binocular, will try, thanks
Thanks mate, you just saved me, have found it in another blueprint!
But now, do you know where those "from persistent level" instances are being defined?
As it's in the level BP, they're a direct reference to the actor in the level. Personally, i'm not a fan of using the level BP for this type of stuff.
Yeah, I know how to program in C++, but I`m making a tutorial, following a flow of tutorials in fact, that begins on blueprints
I`m thinking in going straight to the C++ part...
The best thing to do is add a reference to your Door Button BP that is of type of the door (I would assume), you can then set it as instance editible. This then allows you to populate the var via the details panel when it's selected in the level. (The door the button should talk with)
Then you would have the button call what ever functions it needs on the reference when it's interacted with.
Will try that mate, thanks
Heeeyy, it worked!! Thank you!!
I was editing something yesterday and had some problem. Now this part of code doesnt work. If I replug extra pin it works all good. But maybe someone knows why this happened so I don't make it agian
a bool isn't an object
Nvm.
I have a spline wall mesh, for medieval walls and when they go up a slope, they look like this...
i am mildly annoyed
it should be fully straight
and not
shit
something might be up with the Start or End tangent
looks like one side is right
i use a distance based length accumulation
if only one side is right
that means i got an error in the frontend code
how does this even happenb lol
I've made a boat. but when the main player hits it. it starts to move. how can I make so it doesnt move when hit by the player
try to set the spline point type to linear
ok i try
ye I get that π Just somehow Return value changed from bool to other. I wasn't doing anything with this part so wonder how it could have happened
anyone?
a bit? how does it look now? also, shouldn't you work on your book? @fast finch
Sometimes my editor glitches so that when i add a Param to a function, it will jump to a different function
maybe the bp didn't save properly
maybe
someone can help? #blueprint message
Start debugging. It seems u did more than 1 hit
Print string the hit actors actor , see how many actors actually hit
hi guys
how can i fix this type of bug
i am not sure ,how is it called clipping?
It might be on layers on top of the soil layer
Oh, weird
in the world they are placed in different layers
is the material of the grass in front masked or translucent?
is there a masked version? looks like masked would be good enough for your use case
there are 2 masked
the lit is the one i'm looking for?
unlit, since you already used unlit before
yeah it helped thx
masked is also cheaper to render
so whenever you just have visible/invisible pixels on a material you should use masked
translucent is for having stuff like glass, where you want the color of the material to blend with the background
hey guys whats the best way to put a delay between loops ?
like i want a timer between each loop for like 0.5 sec*
Gotta put it inside the forloop macro
which is a big no-no
Make your own
or just make a timer that increments a counter and executes that Switch on Int block
Making your own delayed loops in blueprints are pretty common
I'm not sure why that's a no no for you
erm anyone knows how to convert rotator to quaternion ?
unreal says there is a function but cant find it in blueprints
I debug, it hit only the firsts, max 2 or 3
if you're making your own macro fine, your message implied that they should edit the built-in π
Oh, yeah that is definitely a no no
Quaternion functionality isn't really exposed to bp.
oof
no workaround really ?
Get a plugin that exposes the functionality for it, or expose it yourself
Just make sure you're making your own macros, and not editing the engine's macro. That's what he meant
hey what would u do if u were to estimate angular velocity from 2 rotations separated by a delta time
@fiery swallow ah yeah ofc
i found an equation using quats
that would have been fun
lets mess with my 10000000x for loops in the project already
I would use that equation you found most likely
right about time for chrismass and all that fun stuff
lol
ok thanks
i hate using c++ cuz it always take 100h to get it to compile and stuff
Hello, IΒ΄m really new to Unreal Engine and IΒ΄m currently making a minigame where I have to collect 9 objects (called calabaza) and what I want to do but donΒ΄t know how is I want the actor in BP_Kingfrog to appear and a cutscene to play, I added the blueprints I have for now regarding that. BP_Kingfrog has nothing for now. Thank you
it's unclear what u need us for
if u wanna learn how to cutscene there are probably millions of video about it
asking a specific question is better here
so ive made my own macro, but i can access it in the list ?? even without the "Context sensetivity" thingi
do i need to enable somewhere or something :/?
nono I meant I donΒ΄t know how to make it so that when I collect 9 objects the other actor appears
@carmine storm uninstall and reinstall unreal
specifically, counting the objects or making the actor appear ?
@steady night hey im joking dont do it
google it thats prolly common
Making the actor appear, I have in my blueprint the counting objects, but I donβt know how to make it so that when I specifically have 9 the actor appears
huh ?
does the actor exist ?
if not u need to spawn it
using spawnactor from class
Ohhh
i confused u with blooby sorry
Sound like u missing rider or resharper
hmm anyone ? cant find my macros anywhere..
without seeing its hard to guess
rider or resharper wont make your code compile faster π
which macro library parent class did you use for the macro?
FYI child class cannot access macro that is declared on the parent class
Show the BP where you create your macro
well i tried parent class of the BP i wanted to use it in but no luck then either
but if i do the macro inside the BP im using then it worked -.-
since th macro library is an Actor class, only Actor and its subclasses have access to that macro
if you want a macro that can be used anywhere, it should be parented to object
Sorry - just got back - I am using this for rendering the images during runtime.
https://docs.unrealengine.com/5.2/en-US/movie-render-queue-in-runtime-in-unreal-engine/
The only problem I have is that I can't find a way to "get" the filename/filepath of the rendered frames afterwards.
In the documentation it says ```Results Shot Data
This contains lists of the render passes and the file paths for the files that were generated on disk. This can be used in the event you want to load these images for further processing.```
I am having problems with camera rotations. Before I used add world rotation now I settled on set world rotation but I am having problem if you move mouse and then rotate back it just goes to wrong position. I need to be able to move mouse in one mode and not other so there is a problem. I have timeline which goes from 1 camera position to other. I don't know how to fix camera to get to same 2 places I set
the config is where the setting for output directory would be
Shortly I don't know how to stop position change when I am only rotating camera. It happens because of view angle change (while using mouse to move around)
Hello, I need help. Does anyone know how to make a traced line detect a collision from another side of a plane or from inside a sphere as soon as we encounter the sphere. Even if I put the material on both side it doesn't work
meshs have one side collision, if you want both side, you would have to change its collision, not the materials
I know but it was my last change, i change everything on collision but nothing change
probably happens because you are targeting only one camera, the other is in the default position
I am only using one camera for both modes
so what I want is that when the variable "calabazas" is 9 it has to be cast to bp_kingfrog so I can make it the condition for it to spawn. How can I do this?
Can show the timeline?
Timeline works fine. It only smoothly changes cameras location. Problem is with rotation
Where do you export the rendered frame and in what format? Btw if u want to upload the file online via game runtime, thats beyond blueprint
You can just link to the message, not need to repost, just do a Greater equal to your calabazas, and dont get it, you want to Cast What to you KingFrog? the calabezas? only work if they are subclasses or if the object you have IS that blueprint
You want ot Mantain the Same Rotation what the Flip flop set, or you want to each position has their own rotation?
guys i want to make a inventory system with merge mechanic,trading with dealer ,stack objects ... where is a lot of things to do so can someone explain in what order and what videos do i need for this?
cuz i know i will get stuck if i do this without asking
I've made a boat. but when the main player hits it. it starts to move. how can I make so it doesnt move when hit by the player
their own. I just plug like this and location change is working good
is there a proper explanation somewhere of how the savegame box on blueprint variables work? most I could find in the doc is a copy past of the tooltip
like I don't get how it relates to the rest of the save system since everything else I see had variables being manually copied one by one to the savegame class
How come? It's a simulate physich object?
It's for the cpp side of things. If you are bp only don't worry about it
On event hit , you can try to zero the velocity
we do have cpp base classes for our actor and components so I'm interested
Maybe ask in #cpp I personally got .sav to work without touching the box
Nice idea though. havent thought of it. Will do. But gotta make it when the pawn is not being possessed. or it would make a hard brake ig
okay, thanks
You can add any condition you like π
Yeah
SaveGame check on a variable and struct members is used for UObject serialization
oh so it won't matter on like actors and components since those probably can't be saved as is?
when a uobject is serialized with a savegame archive, members that are flagged with that SaveGame tag will be saved into the archive
when an object reference is serialized, its path to object is actually being saved
the problem is when the the actual object is destroyed (e.g. level change or restart game or destroyed), the path would point to nothing, so you get nothing when you load from the serializer
oh yeah so the vast majority of the time you'd have to handle all this yourself then?
unless your entire game is 1 level with no dynamically spawned or destroyed actors
for those you probably want to manually save the actor class, its transform, and its data contained(this part can be serialized)
is there an existing function to get like all the saveable data from an actor and then manually apply that to the actor after spawning it on load?
Exploring how the save game object is saved in Source code I found how to use Proxy Archive. So I was able to expose 2 simple general-purpose save and load functions to blueprints. h UFUNCTION(BlueprintCallable) static TArray SaveToBinaryArray(UObject* Object); UFUNCTION(BlueprintCallable) static void LoadFromBinaryArray (TArray SaveData, ...
here is an example on those functions
What's serializing is actually about? If an object ref is tagged with savegame flag, it is preserved on map change?
serializing is when you save data about an object into bytearrays, so its easy to transport/stored
then in the future, you could also spawn a new object of that same class, then used the bytearray to fill in the data, kinda like restoring its state
same technique is used on how USaveGame works by saving your object into a file, or even network replication where your variables are serialized so they can be transported over the network easily.
the whole idea is pretty simple once you try it
very useful for retaining or transferring object state
you want to Spawn the Kingfrog When you have 9 calabazas, Then in the Kingfrog BP, you should have BeginPlay Event, that calls what you want.
if you have some blueprint or uobject with savegame vars and ppl save their game, but then you update the game and change which variable are saved or not how well does unreal cope with it π€
you would have to make your own save file versioning
Yeah I took a peak at netserialazation.
Thanks for the explanation
the rule is always, once you added something into the save game, never remove it(if its already live), cus you need it for upgrading if you change anything
fair enough
for USaveGame, the flag isnt needed, since every variable in a USaveGame object would be serialized
the flag is only used when you try to do your own serializations
is there any way to rename savegame variables and have unreal take that into account when loading save data? like redirects but for save variables, or is that something you'd have to implement yourself as well
What to do with this?
Now?
what will be the target
Then you want something like this, im to lazy to edit,
The target would be your boat
But it isn't a solution more like bandaid. What if something else hit the boat and it launched toward Ur char. On contact it just stop
Will config it. but gotta make the basic first
you cant stop a simulate physics object like that, that velocity is for a movementcomponent
if you want you can disable the simulation to stop it from moving
U drag blue pin from the boat then type velocity
Ohh
Even if I start using 2 cameras if not working as I want. It stores last view angle and transfer it to new camera. I keep getting into weird camera angles
Still no use
Don't turn off context sensitive
Try set all physic linear velocity
Set to 0 and see what happend
ok
Okh
quick question is there a branch equivalent for using floats and integers
Didnt work, but crashed my ue5. Crash is because of my low hardware, But I learn from all mistakes, and alsos do save all after compiling
Any way of adding like friction to water?
as in select which nodes to execute based on floats or integers? Switch on Int exists for integers, but there isn't one for float. you could truncate your float to an int and switch based on that, or just use branch with a < or > comparison, or equals, or whatever
No idea. I don't have editor atm to test for u soz
its just branches within tho π€£
Thanks for your help
basically I have this to determine my camera's location to keep all players in frame, but my game can be played with less than 4 people, in that case how would I invalidate certain locations
Can you show the bp
Where you set the linear velocity
Also set the angular velocty
okh, as soon as the engine starts again, ill ss u. it crushes 5 times an hour π
@frosty heron can you reccomand some tutorials on how i can make the inventry system?
i know this is one of the hardest themes
but i want to make a merge 2 mechanic,a buy and sell to trader stack in slot etc
Inventory system probably vary project to project depending on the need.
Unfortunately I don't think there's tutorial out there that can give you a decent result.
Your best bet is get very comfortable working with variables types (mainly array and structs) . Once you know how to use them I recommend looking at example projects by unreal.
I personally learn a lot from dynamic combat system Inventory system from market place. It's not free and might not be easily dechiper if you are not comfortable yet
I piggy back my old project using their inventory system but I know enough to make my own now which would still be based on dcs because I can't come up with something better
but is there maybe a inventory free in market place and i will just custumize it to ,myself?
There really isn't one answer for system. For example, inventory system for rpg would vastly differ with card game imo
Maybe but I don't know. Some π§ people here that I know make their own inventory system
They would scrap what they have later on because they can make a better one but yeah if you are not comfortable yet it would be a challenge to come up with your own system
im not that smart to do it) i have 2 weeks to finish the game,but the inventory is not the only thing i want to make)
Games take a while to make. My character customisation took whole month and still not done yet
good luck on that, mines simple but it still took me a month
i cant tell this to my university)
Anyone know how I could do this: press 1 key and it call button press event on a specific button (hotbar button) so it does the button press "animation" or whatever that normally exists
Then you would adjust and finish what u can
Or make a shitty inventory system
what I would do for this is make one an input button, but make each object have a variable to detect which slot it is in and if it is in slot 1, though that can be expensive depending on how many you have
but yes make it an input in your game then make a function in your hotbar UI for that button press
Widgets are easy to animate as well so have fun making a little animation if you wish!
Expensive?? Lol
I mean it depends on how many objects you are running that logic through
if you have an input check every object in the game to see if it's in slot 1 it might be more expensive
Yea I can get said button already. Just wanted them to animate like a button press lol
Why would u check any object from pressing 1
I would just have a slot for an item in the hotbar
Even dancing emoji can be an item
Each item have use interface
that is a better way for sure
So for dancing emoji, it will dance while for health potion it will heal Ur character
There is not one way but I can't think of anything that can be considered expensive for selecting a hotbar
Well all I do right now with 1 is grab the hotbar 1 widget lol. Just didn't know how to make it animate like a button press
They have one
Make functions to play the anims
They are dynamically added
Then just call it on key pressed from master widget
Via a function and int
Kk
Same with inventory. Didnt want to hard spawn them lol. Want to be able to use same function to spawn bag slots/etc
- Have an Slot System
- Assign Item to Slot
- Widget will display what is on the Slot
- When key is pressed, activate corresponding Slot's Item
- Based on what Item it is, perform different action
That's easy part
I was curious how to get the button press animation lmao
That's it
Well pressing 1 activates the widget 1 button
In theory
But not actually
Ie doesn't actually press it
holy shit i just downloaded a simple inventory and my brain exploded when i saw how many functions,variables,blueprints are there,its even challenging to just replace it
Was curious if I could send some event from pressing 1 to my widget to call button-press or whatever
So you're pressing it via BP instead of mouse click
if you uses a Game and UI input mode, you could just override KeyDown and KeyUp on the widget, react accordingly based on which slot it is supposed to display, and return unhandled
you can just handle them separately
Are u familiar with structs and array? If you can't utilise them I wouldn't even try to work on inventory system yet
My reference is code vein for the box glow. Take a look if u want
Appearance
im not familiar with em
Sell me that char stuff π
Also you should probably use "Cosmetics"
It's so good
me failing to convince my team to go stylized and we end up with semi-realistic π₯Ή
But semi realistic is good
If I can make nier automata graphic I would do that with no hesitation
I actually prefer semi realistic than animu
Use vroid. It's free
Close up. Just sharing if u want to see what can be achieved with it
What's the advantage of creating a custom event for a button press (like the E key) to perform an action when there's an option to create enhanced input assets instead?
Edit the base material so it can take more layers. That way I can add facepaint and tatoos
That's a deprecated old input system
Use the enhanced input instead
My team made it using vroid
Ohh
And exported using vrm4u plugin
Where can i learn about the overall architecture of your entire game? een trying for 3 years to make one thing and i keep getting bogged down first everything was on one bp now i divide it all up into components and childs and thats killing it. Havent found anything. 3rd person rpg standard stuff.
You have a team ;P
Nice
It's a 2 man job soo far
I'm doing mine all myself. So I have to rely on assets for art
That's why I'm doing animu
But it's just for a showcase project to show square Enix when my class goes to tokyo
Lol
So I can make contacts
My last day in tokyo tonight
How is it
When I'm back to my home country I will learn japanese and work on my portrolio
I want to apply for intern
I'm going in March
Rn weather is good.
Yea im taking Japanese next fall semester
As long u don't go on summer u will have good time I think
https://www.dillongoostudios.com/gooengine
well there is this for more animu support, but not sure how much it would help
I use 3d Max because I love pain π’
but if you already have vroid shading, probably not needed
i never once successfully switch between game engine and 3d editing software without misclicking the controls π₯Ή
You will get better as time goes by. Ask any other people, when they make new proj. They probably rework the entire system.
My new proj is not even remotely close with my old one in terms of the design even if they are the same genre. 3d rpg
Okay, thanks. There are definitely no unique circumstances where a custom event for a key press is preferable then?
I ended up doing this for my task that I was asking about
I used them my self but other people prob won't like it
a select node will evaluate both pins regardless, you may get null ref errors
The new enhanced input is just inherently better
Debugging?
But for debug stuff I just use the old system
Good point.
I thought so too but it looks like it works
unless you tell me they change it in ue5 suske face
I feel like I might use it as a one-off if at all for a single context on a key that won't ever be used as part of the standard controls. Just wasn't sure if I was missing anything obvious that it could do over using the Enhanced Input system.
the way my game works it spawns in all players regardless, they are just not visible unless player does actions to make them so
basically this new int checks if the player has done so
Hey, i wanted to ask, how can I add a variable thats a list to one of my characters?
what the actual frick, they actually fixed the select node
thats why none are null
How can I delete this? It wont allow me to delete
oh maybe that too
You can't if it's inherited component
What should I do? I dont even know whats an inherited component...
U must delete from the parent and in the case of character class, u can't delete it. They come in one package
Leave it alone? That's your skeletal mesh
Use that one instead
Every character should have a visual representation. That's your skeletal mesh
ACharacter to be specific π
well I have a skeletal mesh I created because others settings was a bit different
so I just put that below and hided it
you could just edit the default one
i need to be actively learning new things. And everything i can see is based on brand new project scoped only to itself for the tutorial, nothing made for scaling or whats actually best practise. Right now im tryingto make my attack system, the next variable i create will need like 7 other things complete just for it to work. Made perception system that was great until it just stopped working for detecting anything and soft locking, need an interaction system to interact and pick up a weapon so all those bases need made too. Then ive got action component getting the inventory component and perception component and its just all fucked just so when i attack i have all my available weapons to pick from. Thiers loops everywhere. Just ready to flykick the pc its all perfect one second next its all worthless.
camera vignette lag
removing that spring arm makes vignette static
The learning never stop. Good luck to all of us
I'm gonna be pulling my hair too when I have to do my combat and inventory system
@tidal tendon don't try to move the mesh comp. More the spring arm comp to the mesh instead
doesnt make alot of sense π
Yea im building inventory system from ground up
vignette is a post process effect
camera lag is supposed to be springarm to camera
All I have so far is inventory boxes being generated based on whatever amount you preset lol
And opening/closing
And able to use I to close but no input otherwise besides mouse
how have you structured it? base item, base iventory with tons of children, an actor compoennt, all on main character, this is the stuff i cant find out
the infamous phrase
Steal from Lyra
Look at other ppl proj
Yea I did that. Pulled a free inventory for the art assets lmao
I can't even figure out how they open map in lyra π€£
Only downloaded it cuz Laura said to steal the loading screen bit
CommonLoadingScreen is Lit
Which I still can't figured out but creating the widget with tsharedptr like they do allow me to keep the widget on level transition
I am learning Unreal still but I am working on an inventory system which working a like a receipt at a restaurant. I am having trouble figuring out how to access and use an array variable which is a struct. I'm trying to normalize the data and so it's set up in third normal form(3NF). I have the following data: Customer 'name', menu item, price and is the item shared by everyone or not. These are represented as: text, text, float and Boolean variables respectively.
I have two structs named SPerson and SItems. Spersons Consists of a text variable 'name' and the struct SItems as an array. The SItems struct includes the menuitem, price and shared. I have created a new array of the struct SPerson called 'thebill' inside my main widget where the function to do all of this resides.
The goal is to have a list of menu items sorted by the unique customerβs name which can be totaled up, and also split the costs of the shared items. There could be multiple menu items of the same value and associated cost, but with a unique shared status, and all are of the same index in thebill as the name variable too. The idea is to call up the name and retrieve a list of menuitems associated with that name later.
Where I'm stuck is in how to access and update the name variable in the thebill array? I've created a function to accept runtime input of all varaibles and print them to a widget. I can populate one name value at a time no problem, and I think based on printing indexes I am adding multiple values, but I can't seem to figure out how to search them to verify that and prevent duplicate name entries?
How can I add values to the name variable and keep track of their index in the array?
What seems to work so far, is to get a ref of thebill, Break SPerson, geta ref to SItems and then break SItems so that I can access each variable. I have a MakeSPerson node connected to a ADDUNIQUE of thebill(then Set Array Elem) with a runtime inputted variable to name which I think is adding values to name as I can see indexes increasing when I use a print string. Also, immediately after the ADDUNIQUE node I am ADDing the runtime inputs to MakeSItems and then SetArrayElem. I have an onscreen widget which is correctly displaying all values upon entry, but I can't search through name for duplicate entries.
The biggest hurdle seems to be that the name variable isn't a container? When I attempt to search it it seems the only node options first need to convert it to an array? What am I missing, or is this approach just wrong?
Soo many inventory related issue one after another π¦¦
Nvm, read wrong.
It might help if you showed your actual struct definitions and the code you're using.
@mental trellis Let me cleanup the other and I'll post in a bit.
Bp struct π
its FPerson rather than SPerson if we are following unreal naming convention π S is for Slate
That's not really 3rd normal form. The LineItem shouldn't include whether it's shared or not. It's particular to the order, not to teh item itself.
Even if something is, say, a "sharing platter", it may or may not be shared. Or something which is meant for one person could be shared.
And, technically, I would argue that it could be shared by not the entire table. So really you should add an array to the purchased item to say which customers were sharing the item.
the BP as it is
An Order have Person IDs and ItemIDs
something like that if my memory isnt failing me
Achieving 3NF is only a 2ndary goal. Right now I just want it to work, but I'm also learning, so wanting to learn 'the right way' too.
Just being pedantic π
i know i cna get "Get distance to actor"
how would i check " get distance to "location" insted of actor * ?
distance node
What is this meant to be doing?
from the actor->get actor location, then compare the 2 location with distance node
This seems like you're trying to use the equals node, but don't know how?
ok cool
Thats the current attempt to inrate through the entered name values to find any dups which will then not re-add the name but instead point to the index of the current entry and stuff the Sitem data with that.
How is Ur mp game going? Are u in a stage to test the packaged game with multiple players?
@frosty heron ive done that 100 times already π
But what, specifically, is that set of nodes meant to be doing? Because you aren't iterating anything there, you're just counting up numbers and then doing something else.
been testing atleast once each week with 4x friends
Nice. How's the experience?
i mean generally good id say, obviously alot of buggs here and there (thats why we test) but
overall good id say
π
whenever u got time and wanna try lemme know π
Haha I won't have time for a while but sure, I will let you know
U got steam keys I suppose?
I'm hoping that it is searching the current name values, as an array to see if the inputted new value has an existing entry
U don't use steam api?
I mean both cam and mesh need seperate spring arms to make dynamic vignette effect
nope
It is not. It's doing nothing inside the loop.
Nothing useful.
I just dump my game there and I give out keys to my friends
nodds
Anytime I want to update the game I just upload new build

