#blueprint
402296 messages ยท Page 932 of 403
No you cant really just do anything, there are best practices, and also horrible ways to do things
Hey Guys,
I am having issue in my game with my mouse, It is not being captured anymore.
Here is my scenario,
I started my game, my player start walking and reach a point where he overlap with box, and UI will appear and I set "Input mode to UI and game", then I press some buttons in UI and then close the UI with remove from parent and I set "input mode to Game only" but now my character is not receive input from mouse anymore (means now mouse dragging is not working So my camera is not moving anymore, I can only move my camera when I click and hold left mouse button and drag.)
If anyone know how can I get my mouse working after setting input mode to game only then please let know.
I love the idea of riddles
hello all , is any one know how to auto save levels and when pressed continue in main menu loads the level that autosaved or any tutorial
How do i store data in a list and add all the data in the list together
Its so simple but seems impossible to do in blueprint
The lists data is added in real time is the problem. So data tables are useless
I'm not exactly Einstein or sure if it's suitable for what you want to achieve.
- But you could loop through an array if that's what you're looking for (using for each loop).
- Creating a variable "last result" which is value of the current index + last result, that stuff is set by the loop body.
- When the loop is completed you can use "last result" to do whatever you want with it.
perhaps I should create a visualization, that explanation was just to get an idea if I'm getting your question right + if I got the brain to answer it lol
The idea is i need it to add all the devices requesting power. Subtract that by available power and return the % performance its allowed to run at. If half the power is available 50% if there is more power then is being requested 100%. I got all of it coded except the part that adds all the devices power requests. I thought an array would work but couldnt figure it out
I need it to add all the values in the array together. And when a devices power draw is changed it had to update only its value in the array
I dont understand arrays enough to make it work
Array is just list of stuff of the same type
Right but when i drag out the array node there is no sum or add function
If anything data tables are pretty much static array of struct
I dont see the issue here, cant you just for each and add the value into a variable?
You will have to loop through the elements of the array and add them up.
Hey, I'm currently making a random item spawn system on 2 TargetPoint, except I have a problem, sometimes UE4 makes me spawn the same item twice and I don't want that to happen, how can I do that?
Like this? I didnt think this was right
Aw
You dont need to get the value as the array element does that
You can just have an empty var and keep adding array element into it
Quick question if anyone knows :
- is there a way to get a reference to an asset by name ?
- similar to the open level by name node
No
Time for a plugin
i was still looking at that
Is there any particular reason you need to do this. Sounds a lot messier then other methods
Mh just playing around with some stuff. Basically importing a file and being able to reference it (rn, spawning a mesh)
Make 2 Array, 1 for "Things Not Spawn" and 1 for "Things already spawn". When spawning something, just remove from 1 to 2. Just randomize array 1
I noticed the "array element" output was not connected and got paranoid.
As brother-1 said, just connect "array element" directly to the plus input at the bottom
It's possible to make a short schema because I'm a beginner on UE4 and I still have a lot of gaps, please
I think i got it
The problem is i need this to fire every half second. So i need to find a way to reset the value before it recounts. I get just put a set 0 infront of the for loop?
you can connect "completed" to a set node for the "last value" and set it to 0.
That way it will start adding the stuff again and get an up to date version
is any one know how to auto save levels and when pressed continue in main menu loads the level that autosaved or any tutorial
I'll try it, I'll come back to say if it works or not
Auto save is just every x amount of time save whatever is needed
Save a variable that holds the last level, and make your continue button open that level
I connected right before exec to reset it and completed to push the update to the other devices and its working how i want now. Another part in the chain isnt working correctly however. but i appreciate the help. Ive spent the last two days trying to find a way to make it work. It doesn't seem efficient but it works now
can i make that time for checkpoint and auto save for levels?
Wdym
You can do it however you want
You just need to make a save system
However you want to trigger it is up to you
Thats about as efficient as you get
Adding up a few numbers is not intensive
@thin panther do you know any tutorial for this my brain is not working right now i would be appreciate
noice . What I noticed is that, since i tend to tank the amount of features when I create some systems,
creating some flowchart can be a good idea to get an overview what needs to work + how things are linked.
You can check Miro, free and good quality app
I do not
Thank you ๐
No problem, sorry i couldnt do anything on the tutorial front
Am i understanding how clamp works wrong. If the value coming in is above the max it is reduced to the max. Thats how it works right?
Yes
you dont need to be sorry thank you for everything mate ๐
Well the team is just me. I have a staged strategy for what im trying to build. First step is a smart power grid but im new to blueprint so i have to learn 100 things first. Its going well tho
for the ''simple move to location'' node thats not on my main pawn but an enemy. What do I plug into the controller part? Does it NEED an AI controller for that?
oh lol, its working how i want it too. I forgot if you turn a 10W light above 10W on a power grid that only gives out 10W it doesn't get brighter
Do I have to have a collision box on my door to make it open?
So i tried adding another light to make sure it scales and it doesnt.
Problem now is instead of adding together to 2 lights power draw its doing them separately
What does that error mean?
It mean your Var is null and you trying to do something on that Var
it means the reference is bad
Is it pointing to the wrong object?
not pointing at anything
No object i think
share the bp
how
screen shot
Figured my problem out i think
I dont think thats where the error is tho lol
where else should I look?
click on the error where it says static mesh and see what opens
click on the error
"set static mesh"
ah shi i already closed that box
Just rerun it
its probably a bug where the reference goes missing
Depends what youre trying to do
Im trying to make a door like in Rust. You place it and then can interact
could do like an is is valid check so it wont give you the error
no errors
is there any other ways to grab them
There
Where should i click
it says none
click any of them till it selects something
One of your references is pointing at nothing is the problem
What is build ghost set up too?
It looks like the problem
Build Ghost is the green sillouette of the building block you are trying to place
I understand the intent but it isnt point at anything to tell it what to target
๐
I learnt this recently. Its very annoying how it works
you have to tell it to look for a specific actor that currently exists in the level. Which for your case sounds like it doesn't exist
I dont know why it works this way. Its frankly stupid to me but its how it is
I dont know enough about components but i can show you how i solved it
what should I fix? it works in the tutorial for some reason...
your problem is a bit more dynamic then mine
This is a button i made to turn on and dim my lights
you can see reference light and light_2
On the side where it says default value you can select a asset to tell it to target
but it doesn't let you do it in blueprint
this is the same button in the world. It lets you change its default value
I selected the lights you see and now it knows the specific light to target
Otherwise i get the error you were getting
There are a few other ways to get a valid target
If you dont care what one you are targeting which you might not in your case
You can use get actor of class
Which gets the first actor of its type it can find
You should get comfortable with getting references without setting them directly in the level.
It works well in a few cases but most of the time you'll need it dynamically
They only ways i know to get them is as i showed. Cast to and get class
if you know more ways please do tell
its convoluted and ass
Manager classes and ID variables are common
Traces, overlaps, and hits all return a reference as well
Event dispatchers are also helpful for interacting with multiple things like light switch to lights
Yes but the issue here isnt an actor reference, its a reference to a component in the same blueprint
Thats a component variable
Which gets made automatically when you add the component
To a component i don't see
I know overlap and event dispatchers. Which also need a reference to work themselves
In fairness the component tab is not expanded
Well i haven't fucked with components yet. but if i was getting that error i would know that would fix it for me
Overlap doesn't and dispatchers can be called from a global object like the game mode or controller
See i want more global objects. I haven't played with game modes yet
Do you know a way to make a actor be a global reference? Or a variable it has?
I looked up manager classes and ID variables and didn't find much. Maybe you could link a doc about it so i can find it?
If you only have one you can do get actor of class
The game mode/state/instance, player controller ,player pawn, etc.. have global getter functions
The general jist is you make an actor class and make a custom event with an input for a reference to the objects you want it to manage. You then add that reference to a list and you pass the array index back to the object so it knows which reference is theirs.
Then in the object on begin play you can get actor of class for the manager and call the register event you made along with a variable to hold the ID (array index)
If the manager class is in charge of spawning the objects too then you can just register then on spawn and pass the index at the same time. All you need to do for that is make sure the id variable is marked instance editable and expose on spawn
Guys, which type of shooting is expensive for a computer line traces or physical bullet? Can there be problems with physical bullet at low fps
Line trace is way less expensive. Depends how many bullets and how low the fps
Im no expert but pretty sure shooting physics enabled bullets is much worse then invisible hit scan
I got a weird thing happening where I get errors when adding the widget to the viewport if I don't cast to the controller, even though I am not using it for anything on begin play
Not really sure why but if I remove it, I start getting errors again
whats the error?
It says accessed none trying to read property, and says the issue is when its triggering add to viewport
PIE: Error: Blueprint Runtime Error: "Accessed None trying to read property CallFunc_Create_ReturnValue". Blueprint: Human_Child Function: Execute Ubergraph Human Child Graph: EventGraph Node: Add to Viewport
anyone know why this is happening
can't connect it even though its from the playerbp
Its a classic problem
Widgets are added to the viewport which is owned by the controller
By casting to the controller you are loading it into memory so the create widget function can find it. You could skip the cast and just plug the get player controller into the create widget node
Which is more performant: interfaces or event dispatchers?
Basically identical
They work in opposite ways tho
Thats what I had originally, I was using the get player controller but it wasnt working, I had to use the cast. I get the same error when I use the get player controller so I was worried maybe I was misunderstanding something. And its still adding the widget even though I am getting the error
My other question is in this set up. If the same device calls the interface again will it add to the array or replace its all variable. And how do i make it replace if it doesn't?
They seem about the same but was unsure. Thanks for the tips
Hi, I'm looking for a way to solve that problem, but can't find one
I've a custom event "Fire" which is call and internally launch that PlayMontage. The problem is that I want to early exit animation when there is more action pending, the early exit works well, but it means that maybe 4 secondes later, I'll have the OnCompleted firing... When i'm in another call of this "Fire" event...
It is a way to solve this ? But for example stop the current execution of the event ?
@versed sprucein that image it will replace it
If you want to add to it each time you need an add node from the array section
How do i know it works that way. To me it seems like it would make a new entry since it doesn't pass any identifying info
Compile your player BP, then try deleting and remaking that function call node in your screenshot
Your making an array of 1 element and then looping through.
Every time it will make an array of 1 element and loop
Unless you save the array to a variable and add to it, it will just replace element 0 with the new value
omg as if it was that simple
thanks man
Oh shit, i plan to have many devices call the same interface. How do i make each unique device call them and replace their old entry but not effect others?
It will only effect them and not the other instances
But if you interact with the same thing multiple times this set up will not add new elements to the array. It will just overwrite the first element
Yeah i need it to add a new for one each unique device calling it
Is there a nice and simple function that turns world location into a pixel location on screen?
Project world to screen
thanks
You wanna use add or add unique
You'll need to save the array to a variable though so you can reuse it
#blueprint message
Nobody have an idea about that ? I'm quite stuck
Stopping the montage
Don't pay attention to the commentary, tried to understand what's going on
It is branched on the normal sync execution pin of the animation montage
Do you have a need for physics-driven bullets?
Is that what you mean by physical bullet or are you talking more general, with a projectile that flies over time.
I'm confused are you using an anim notify to trigger this?
Cuz if this is happening then the completed shouldn't still fire
Yeah it is here
Branched on OnNotifyBegin and OnNotifyEnd
actually the Completed is not fired, but the OnInterrupted is fire, and then there is other loop pass in the delay thing
Well then that sounds like it's working as intended
Not sure what you mean by "another loop pass in the delay"
is any one know how to auto save levels and when pressed continue in main menu loads the level that autosaved or any tutorial i am stucked and i cant find any tutorial for autosave
Hey, I have a question I can't figure out. I am trying to play a fire anim montage but it just does not work.
I have my slot
I have tried these 3 functions and does not work
tried this on the anim bp
the only one that works is but does not trigger notify events
i have been playing with that too
You are playing your montage on DefaultSlot. You are then in the anim graph using MainSlot, which is not DefaultSLot
Hello I just joined I got a question if willing to answer
I have a float and i only want my HUD to show unless the float value is changed this means anything health up down air meter etc.
Do you mean you want the HUD to disappear when nothing is changing, like Dark Souls?
Have something that controls the main HUD widgets to hide them on demand.
And that thing should be the HUD class or some other wrapper
i am not sure a floatchanged node or something exists but I need it to be called on all changes of that float.
Do sequences wait for the chain to finish before firing the next in the list?
Why not change it when player is damaged or something event based?
If player is damaged (or healed), do the damage and at the same time show the health bar if hidden.
Sequences don't really wait... Everything will be executed in order though.
Here is my Update Health Function
this changes all values in the health bar
If sequence one takes a long time could that cause sequence 2 to finish before 1 does?
Sequence isn't affected by latent functions.
Delaying on Then 0 won't stall the execution of Then 1, and so on.
Looks good
Hmm alright, not really a sequence then. Just a fire order
Somewhere before You Died check, do the thing where you show the health bar.
Personally I'd have it as interface call, and the HUD class with implementable event of it show the health bar.
so in my UI Widget I have a Show Bar (XXXX) and Hide Bar (XXXX) Custom Events
Show health is connected btw
i think this impossible due to the fact the float is updating constantly waiting for a change in value A>B wouldn't necessarily work
Anyone know if its possible to have a "set timer by function" ignore a paused game?
Why do your bps look like that lol
How does your health bar know that its value changed?
Just connect your hide health to the false and combine to event tick
If I understand you correctly
@granite pebbleAre you using binding or otherwise notifying the widget to update?
flat nodes and electronic nodes
flat nodes is free
Ic
Current Health and Max Health floats drive the bars this is the binding
K so you're using a binding. IDK if bindings can call out or not, but that's an idea.
Otherwise, just notify something whenever HP is changed. You already have the HP change event.
@granite pebble what is calling out to do the show health event
How can I do it so that the execution pin will wait until another execution pin gives signal. Or something like that. Iโm trying to make a system where only by a timer will loop be able to do each loop body
timer by event
I mean the binding itself could maybe choose whether or not to show/hide the widget
Not sure how capable bundings are, or if they're a real function.
exactly as i described?
https://www.youtube.com/watch?v=qc5WpNq7RFg
is any one know how to auto save levels and when pressed continue in main menu loads the level that autosaved or any tutorial i am stucked and i cant find any tutorial for autosave
it's not that simple
how can i find a tutorial there is no tutorial about this and i got stucked i dont know what should i do
Is my name not a strong enough hint?
Start small, start by saving ONE thing, like the position of the player.
If you learn how save games work it shouldn't be hard to load the last one you saved
@faint pasture i dont need player position of player i just need save the level when continue pressed at main menu the level loads just this
Is the state of the things whithin the level saved or just what level they're on?
i am really dont know how to do that really a noobie
Is it like Mario where it remembers what level you were on?
yeah just remmembers which level i am
Same idea, you'd make a save game that only stores a reference or the name of the last level completed.
Read that documentation i linked
yeah i need name a of the level just completed or the level just started
I don't know offhand. But if you need an alternative you can make a BP tick while paused and sort-of make a timer using the system time or something that isn't affected by time dilation.
I'm using a button class which doesn't have options for BP tick while paused ๐ฆ
i read that documents but i think thats only saves player name not the level of the player
it does, you need to learn to adapt things to your needs
you wont find examples for every specific need of yours
it teaches you how to create and set up a save system, and the functions needed for saving and loading, it is up to your to figure out how to adapt that
you aint gonna be able to do much in the engine if you cannot learn how to adapt examples to your requirements
this specific you mean every game does this its not a specific in every game when you press continue it will loads your last level
not every game does this
point is
you need to learn to adapt things
if you cannot figure out how to change a save system to save a level name instead of a player name, then you should be learning more of the basics
yeah your right i need to learn but this is the last part of the project you want me to go start learn from basics?
it being the last part of the project has no bearing on this
no ones saying delete the project
im saying you need to learn how to adapt things to your need
if you arent wanting to preserve the exact state of the level, then saving only the level name, and making a button utilise that in your ui is fairly simple
hmmm i think your right i dont know the basics i have to learn,
yeah its simple but i cant do that ๐
the only way is up my friend :)
i reccomend looking at various other examples of saving
then breaking down what you need to save
if its just to reopen a level, losing current progress in the level then you only really need to save 1 thing
otherwise you need to break it down a bit more into what is needed
its just to reopen the level i mean player quits the game in last part of the level five if he backs to game and press continue player will play from start of the level
Yes that's easy. Just follow the doc I posted and go from there.
A rough outline
Main menu
Does savegame exist?
If so, read it, load that level
If not, you're on level 1
etc
On exit/back out
Make save game, fill it with the current level name/ref
Save it
Go back to main menu
oh thank you let me try it i hope i can handle it
How do I do this but make it choose a random target point out of a selection?
Somehow get your hands on an array of target point actors and get a random element
GetActorsOfClass(TargetPoint) -> GetRandom will do it
However you want to choose which actors to consider
Ah, thank you, I'll try it out! :)
Trying to add a inventory system to this game, Ive got it opening and displaying the cursor however it wont close after being opened and after exiting theres an error (Following a tutorial video went throught it 5 times so far everything looks same and no comments on it with a fix)
Anyone have any idea? xD
One thing that I did when I had this issue, was to just set the visibility of the widget. This works because when you not only hide the widget, but set the input mode to game only, you won't be able to click on it.
Nice, this worked! :D Thanks! :D
I dont want to be able to click on it though when Its not open? @prisma stag
Sorry, not being able to click on it is what it does.
Potentially a silly question, can I filter by class when in a utility widget when doing get selected assets?
@brittle raptor out of curiosity I googled it and there's a node for that https://docs.unrealengine.com/5.0/en-US/BlueprintAPI/EditorScripting/Utilities/Filter/FilterbyClass/
is there where i can ask a question about widgets? cuz i rly need help with smthn asap
I have a widget that I call 'get user widget object' on in the beginplay of an actor component on the same bp class, but it returns null unless I put a delay in front of it. Is this a lifecycle ordering thing where the actor component beginplay somehow fires before the component is actually ready?
i mean it involves blueprints
So im trying to have a black screen fade out on Begin Play
Could totally be that the widget component hasn't created the widget yet
Check if a delay 0 helps already
so what I did was On BeginPlay, play the animation where a large blank black screen fades out
That's a frame delay
works fine
delay 0 works
Yeah then it's just the order
but because the screen is overlapping other widget components like buttons and stuff
and is on top of them
i cant click them
do I maybe need to put a fn on the actor component and call that from the main bps beginplay then?
if I don't want to use a delay
Communication between 2 components is not so nice in ue
i suppose i could set the black screen's position off-screen once the animation ends
All I need is to have the black screen click-thru
do u know how I can do that
Fade to Black is usually done via post process or not
Which sits below the UI
True
But what if i needed to know this for anything else
like how can u have a purely-decorative image
there has to be an option somewhere i just cant find it
Set the visibility of the widget to collapsed or hit test invisible once it's fully faded out
ok if I put a 'event construct' node on the widget and log something maybe I can figure out the order? Think I'm on the right track? That the only reason 'get user widget object' would return null is if it hasn't been constructed yet?
I just don't want to use a delay and then have some weird race conditions
I just checked where u said
I can't recall when it is constructed by the widget component
But if both components use BeginPlay
Then one will do it before the other
We only have one game thread after all
In CPP you can ask if an actor has begun play. Not sure about components
Either way, you could also try to let your actor tell the component about the widget
I was under the impression that all things would be constructed before any beginplay, maybe the widget component's beginplay has to run before 'get user widget object' will work? I'm tilted... I'll debug it tomorrow since the delay works
thanks
whats a good way to find the cpp for the widget component?
It's totally up to the programmer when they want to create the widget and BeginPlay makes a lot of sense
I wish the docs directly linked to github lines or something
Easiest would be to have a solution for your project
But if it's BP only project then you would need to check GitHub I guess
you mean visual studio solution?
Jop
its a bp project but I do know enough cpp to maybe figure it out
the widget component is just the builtin thing added via the blueprint 'add component'
and I assigned it a widget bp class
Yeah
alright thanks m8 I'll look into it tomorrow, i'm too annoyed now
Thanks for checking, before asking I tried that along with several other methods, and what I tried didnโt work because itโs expecting an object and not an asset and so the asset says itโs class type is just โclassโ instead of what it actually is
@brittle raptor there appears to be another variation for actor references specifically... https://docs.unrealengine.com/5.0/en-US/BlueprintAPI/Utilities/Array/FilterArray/
But yeah I misread you
I thought you were selecting stuff in the level editor
Idk about editing assets outside of the uh, batch editor thingy
No worries, It's an issue I've never run into
couldn't help myself, yea the widgets object is constructed in beginplay so its just a beginplay ordering issue
too bad unreal has their github repo private so google doesn't work on their code
Is there a way to access the new async physics thread in UE5, either through blueprints or C++? trying to make custom physics more predictable (AddForceAtLocation, etc) , almost like FixedUpdate in Unity
what shortcut to make the true and false connect to one line going to spawn actor
Just drag the false pin there too
thank you
Ok so I'm designing an inventory system for my FPS game similar to Destiny where you have a "current weapon" "Stowed Weapon" and a "utility" which is just a combat knife that the player can never drop and has infinite ammo. I have a master weapon class "BP_Weapon" and I intend on using object references to refer to the children (the individual weapons).
My questions is how would I best setup the containers "Current Weapon", "Stowed Weapon" and "Utility"? Would I use a data structure? Actor component that has it's own inventory system? A Set of variables on the character?
turn off context
doesnt work
sorry i cant join
try typing in
how can i snap the transform to grid? the options arent compatible
"Mouse Events"
that worked thanks
np
Anyone have any ideas. Anything welcome
Can have an array of BP_Weapon object references called EquipedWeapons. This array can have 3 indexes.
Index 0: holds reference to primary weapon
Index 1: holds reference to seconday weapon
Index 2: holds reference to utility weapon
each index is where you will store a reference to that equiped weapon
You can then have an intiger variable called CurrentWeapon. This int will keep track of which weapon is active.
If CurrentWeapon == 0, that means you are holding the primary. etc
when you press Y, check the value of CurrentWeapon. and switch to the correct weapon.
I suggest using an array to store weapon references because later on in your game, you may want to add more weapon slots. Using an array now will make that easier later.
You could use a map as well.
I'm hesitant to brainstorm cuz I never made such a system... But if you want an top-of-head idea... If you had a custom struct that represented all possible data about a weapon (class, ammo count, is loaded with ammo, has these mods attached, whatever else) then you can represent the weapon inventory as an array, and this array can go into Game Instance or a savegame etc for carrying it between level loads. I'm sure if you Google you'll find a million examples of actually functional UE4 inventory systems to take some inspiration from...
Cuz you're just making a thing that has fixed slots and limited complexity, a lot of different approaches can work
Yes there is a billion ways to do what you are asking.
(I guess total ammo count would necessarily be a separate array if you're doing it boomer shooter style)
Has anyone ever ran into a problem where a line trace fails at exactly the position where the landscape component edges are?
It's uncanny, I move it 1 unit and it's fine but along the seam of the components it fails
What's a good tutorial series to get started with blueprints?
Also, can you make do with just bps in the long run?
Where can I find this in UE5?
ctrl+f
i tried
in a blueprint
๐
Well like, I'm an artist
that wouldve cost me another 20 min
thank you
I want to make games but I'm tired of any small hobby project dying instantly
I just want some portfolio fodder to join a serious entrepeneur project
try kickstarter
is it okay to put a for loop inside a for loop?
would complicate alot of stuff quite alot lol
Uhh
@limber parcel I live in argentina
I have money
If I could legally pay someone, I would
then why not start a company?
For starting a company I would need local people to work with
u dont
You have NO IDEA how Argentina operates
i started a company with me (austria) and 2 friends (canada and belgium)
are u sure u dont live in russia? ๐คจ
Not to mention, doing a standard transfer has insane tax rates
I'm just desperate for real
un real
It's easier to cheat money into the country using some payoneer shit
you can also start a company in a different country i guess
just find a friend who doesnt lives in argentinia or russia or something like that
btw its also hard to get money out of canada lol
none of us has xD
Should I just gamble and do my best or something?
u just need solid plan for game and skills to make it
Pick something tiny and build it the whole way out.
If you can make rock paper scissors with some production value people will see you know what your doing and can finish something
and you'll be able to get a job at a real company
My skills are mainly art tho
I model and animate and shit
I can't make the innards of a game
then u should probably look into joining someone elses project
rock paper scissors? I believe in you
good artists and animators are always wanted
They die before anything is done
And I end up with no proof of what I did cuz they die before I even manage to makr it
For example
"Hey make a model"
"What and why"
"idk make it"
I have seen far too many people who want full fleshed out models before a prototype has even been made
sounds like average bannerlord modding scene lol
That's how it always goes with newbies
just sell ur stuff on some website if they dont pay
not to be a killjoy but this aint really BP related is it? ๐ค
Thats why if you don't have a portfolio then you will likely not get a real job
only portfolio i needed was some spells framework i did for bannerlord, i guess its more about who you know
now i have a well paid job at the guys ive been modding with for years
i mean youre called source control, they gotta hire you
So you completed a spell framework to demonstrate your ability.. so you had a small portfolio..
Something to show you can do work and also follow through on something.
well at least it gave me enough confidence to start making my own game
Everyone should. Keep it small af, but knowing how to do the basics of every role and the various parts of the engine is invaluable
nothing feels better then figuring out your own system from scratch
exactly
like literally every other magic mod went and replaced arrow and bow with fireball and staff xD
lol
like i said before, make a solid plan for game, find some friends who like your idea and have skills to make it happen, then you can start making a company (preferable outside of argentinia, russia, north korea etc...) and take ur game to kickstarter
if you make models and animations its always good to have something to show off to convince people to join u
guess best way to go would be starting a modding community around some popular game to find talented people
So this event exists on my player character. On "Begin play" I attempt to set the inventory of my player character by passing in children of my Parent "BP_WeaponBase" into the "Equipped Weapon Array" where I then get index 0 (what I want my equipped weapon to be) and attempt to equip it. Problem is i'm not getting anything out. I tried printing my "Equipped Weapon array" but nothing happens.
Is it possible to store child_BPs (Such as a weapon) as an object reference on a character and then give them to a player?
Physically? Or digitally?
digitally
You're just not trying!
haha
well its just much of a hassle, and paypal wouldnt let us send money to some people xD
but it works
Hey does anyone know the ordering of input actions vs key events works? I have an event on Alt+S but it's not working because an input action for S is hitting first. Is there a way to order them without just unticking consume input?
try using breakpoints and see where the data gets lost
You can always send them crypto. You lose a bit in the conversion, sure, but still.
you lose more in crypto than in normal transfers in most cases
can I somehow keep the original array ive made so when I add or remove indexes I can still have an original copy? Do I just make it another variable?
yes just save it to a variable on start
but how?
add variable
im being dumb lol
then save it when the loop is completed
like this? lol
exactly
you can get another copy of that var if you dont like the spaghetti
yea but how? its in a loop tho?
its basically just a reference
cause if I grab it from the variable list on the side its being annoying
?
or not
maybe? Im making a turn based game lol
im making an rpg but i guess differentiating enemies and allies works the same in every game xD
yea
im making an array of enemy actors based on faction tags
no
im not sure what append and to array does tho lol
if you cast to a base class then u can only access the information thats in the base class
but what if I cast to the parent class?
i meant parent class not base class
the parent has no access to information stored in its children
but children can access all in their parents class
its like reverse parental control lol
thats what I meant tho, if I have a parent class called enemy with a speed stat, if I plug in a child class like idk. fucking goblin or something. Can I acces the speed stat
oh why bother bpi's probably work better lol
yeah basically u want to avoid casting at all cost lol
components are also really cool
thaaats not true
casting aint THAT bad
perfect use of comments I must say
u can right click it and there will be a small black bar where u can write comment too lol
lol
You do not want to avoid casting at all cost, that's a fundamental misunderstanding of why cast can be a problem
Second unless there is a significant difference in the way enemy types behave, the functions, and variables then you do not need different classes.
then where would i use casting (except for things where you have no other choice) instead of using an interface, component or delegate?
If I know the object exists, and if I have only one specific thing I want to talk to are the main situations
Passing a hard object reference through an interface is actually worse then casting
Components are good for encapsulating specific functionality but making a communication component is a lil dumb since the point is plug and play functionality. Making them dependant on other components sorta ruins the design concept a bit
does array length 0 means the array is empty or it has 1 in it?
Empty
hm odd
did I do something wrong?
I feel like it should work
but it ends after 2 loops
theres 3 in the array im sure
nvm it works fine lmao
From within a component, can you get the "Event hit" of the parent without putting code inside the parent blueprint ?
@manic viper you can "bind on hit" and plug in a reference to the owning actor
Thats the path I thought, but I must be doing it wrong cause its not triggering I'll mess around more down that route
thank you so much
Yes you can, since goblin would be an extension of your enemy class
Thus it inherits all functionality and variables the parent has
You dont need to cast to the parent class either ^^
Since we're already lower on the inheritance tree:p
Also Casting isn't bad, it's just badly used. But that really goes with any way you can call something. Know when and how to set references, how often, and which type of calls are best for which scenario. Doesn't mean Casting itself is bad just because someone wants to cast at the beginning of an event tick ๐คฃ
Interface call on tick isn't any better either
Then again like 80% of the tutorials spread this false information so no wonder people think its true
Thats some next level flow control
I do everything on event tick with sequences
No timelines on tick? Sad
I never write Functions, because then I can't use Flip Flop or Delay. Always use Delayed Flip Flops
Don't even, I saw that too lol
Holy damn
ok so the next step, is whats the best way to get the linear velocity of an owner component from the actor component. Ideally this thing should be able to be put on any object with a mesh
Owner componemt of actor component? What?
lol
sorry terrible phrasing
i created a blueprint to integrate FMOD audio events to get dynamic audio and physics based impact sounds and sliding/rolling
i am trying to convert that to an actor component that I can place on any physics actor in the world
@wintry geyser you know macros allow latency (aka delays) and a flip flop is just a banch that sets its own condition to the opposite of the pin that last fired (true sets false->false sets true)
so right now inside of the component, I get the owner actor, set it as a variable and then bind to the owners on hit event. Then I run my code in there. the problelm is, when I created the blueprint I was doing it ON an actor to test.
@fiery swallow https://blueprintsfromhell.tumblr.com/
@tawdry surge I know it was a joke
So im trying to figure out how to get the linear velocity of the components parent.
Just checking
Im still A wee bit confused. Why wouldnt this still work , binding to the owning actor?
Lies
because linear velocity needs a primitive component object reference
and im trying to build this component without being attached to anything so that I can drag and drop it onto whatever we need.
this is my current attempt at figuring it out
Ohh
You could add the primitive component dynamically ^^
But maybe that defeats the purpose
Does the hit event struct contain the impacted components?
This actually looks like a weapon effect.
oh BUT i alraedy have the owner actor
it doesn't have the self component, just what it hit
the hit struct contains the actor but not the component
hmm and its actually NOT tracking the hit impulse
from the parent
disregard that last part. I'm dumb and forgot to generate hit events off the simulation. But the linear velocity is still iffy
The first one took me out 
Someone should make a top 10 blueprint meme list
Event tick -> get all actors of class (actor) -> destroy actor
๐
That one would be over really fast :p
I figured it out. Thank you @tawdry surge for leading me down the right path!
I finally have a component that i can place on any object to simulate physical impact noises and sliiding + rolling sounds
( with Fmod integration)
Question?: When using Hide Bone on a Mesh anyway to not have it hide child bones too?
what are u trying to do?
https://youtu.be/TGvlx5KwOhA
im trying to make parent class for rideable creatures/vehicles and i have this issue with dismounting, you can see it works when the elephant is still but if you dismount while moving their is some issue. Id guess its to do with replication but i havnt been able to work it out
heres the blueprints
it works when playing as server so its definitely replication shit
Hello Everyone,
is it possible to disable Widget Navigation with Gamepad Thumbstick? i only want to navigate in widget with gamepad D button.... ๐
Thanks in advance
anyone had the problem that when adding roll on a spline, it totally flips everything?
like i try to add 2deg rotation on the roll axis, and it flips upside down Oo
is this wrong?
0deg 1deg 2deg
(when i enter them as value in the start/end roll calls, but pretty much the same when rotating the spline point)
Are you using built in focus system?
wait, does that method take radians? ffs
yes... currently i can navigate with thumbstick and with D buttons...
The only way to modify it is through C++, though it's not that hard
ok thank you!
I'm trying to randomly generate a 64-bit integer, but it seems to always return zero, but I can't seem to figure out what is causing it. The given range is between -9223372036854775808 and 9223372036854775807
Use this but randomly multiply by -1 or 1
So. Fun fact. The Randomization code for integers is... interesting. Suffice to say, it doesn't really handle negative mins very well Also generally try to avoid using the upper limits of ints by a couple points. You're usually much better off just getting a random positive integer and as Makoto said, randomly multiplying it by -1 or not.
Amusingly, It handles floats really well. ๐
Fair enough. Is there a specific reason why unreal struggles with this?
Ancient code most likely. Never updated. Possibly never will be due to a few factors. First anyone who needs it on a scalable level just makes their own. Second is that it is used on older projects that would break if it's changed and Epic isn't going to deal with that fallout.
Seems fair enough. I could probably write it myself in c++ instead then, seeing as it seems to be a bit unreliable
Hey, I got a couple of questions:
- Is casting on Begin Play and saving the cast to a variable, and then using it as needed more efficient than casting each time? Or is this the same action, just shorter?
- Interfaces are better than casting, but realistically, how much should casting be avoided? Like is there any good practice to differentiate when to cast, and when to use an interface?
1.) Yes saving and reusing is better then casting or interface everytime.
2.) Interfaces are different not necessarily better then casting. There plenty of situations where casting is better then interface and vice versa.
Use casting when you know the other actor exists and you only want to talk to one specific thing
Use an interface when you want to talk to one of many things or the object may not be loaded
Use a dispatcher when I want one thing to talk to many
Nicely explained, thank you so much!
whats an easy way to see whats in my array at any point?
For each loop and print it
@umbral merlin is this for an editor utility or something you expect to work at runtime?
Im quite know what runtime is but I want my Python can receive audio when the game is running.
This game is about U can shoot your work witch U saying as a bullet.
is there any way to search for a function specifically for a certain target? I have this scenario where I have a bunch of components added to my character and elsewhere which need initializing via a function, when I try to find all instances of it, it just searches for the name which is the same for each of these components
should I just uniquely name these functions, or is there a way to specify the target at all?
Any help would be appreciated here- https://forums.unrealengine.com/t/help-requested-character-does-not-rotate-while-standing-on-a-platform-that-is-currently-rotating/585568
Hello, I am currently working on a third-person perspective action game. My end-game intention is to use directional gravity so that the playerโs character can walk on a sphere. I will be having this sphere rotate. I apologize in advance if any of what I type in this appears aggressive. (Emphasizing points by ALL CAPS to pinpoint non-negotiable...
Is there a way to get MAC address of network adapter on the computer used? I need that to lock the executable to run on that single computer only. I found this but looks like it is CPP and also deprecated https://docs.unrealengine.com/4.26/en-US/API/Runtime/Core/GenericPlatform/FGenericPlatformMisc/GetMacAddress/
Retrieve the Mac address of the current adapter.
Python is too slow a language for use while the game is running
Its only included to help you script editor utilities. Tools you use while developing not playing
@prime steppe you can add tags and search for component with tag
Does anyone know how to freeze a player in place and then unfreeze them? Im trying to make them frozen when the tutorial dialogue starts and then unfreeze them when its done
Disable movement
Local time dilation too
set global time dilation to 0?
Global would pry freeze the tutorial also
oh right! lol
making a turnbased system is more complicated then I thought lol
fun challenge tho
I only got these
Ok so the dialogue still plays which is good now i just need to figure out how i disable mouse
Player controller-> set show mouse cursor and set enable click events
Is there way to get the number of preview clients from within the blueprints? I have a function that starts the round when all players have joined...normally this would be pulled from the number of players from the previous level...but when previewing i'm jumping straight into the level
Hey, it is possible to know in blueprint how many layers there is on a material layer instance ?
Currently, when the player dies in my game I use the blueprint 'open level' to start the level again. However, the thought occurs to me that this might not be normal?
As I want to add checkpoints and I assume checkpoints won't save if I use 'open level' right?
Unless there's a way around it?
go to sleep and try again tomorrow i guess ๐คทโโ๏ธ
im not sure what ure trying to do but this is definitely not the right way
i just had to make this abomination cuz apparently delays destroy foreach loops lol
@glass stump in the game mode, state, or controller class you can "bind on destroyed" and then just unposses the dead character, spawn a new one and possess them
that's a good idea, i'll try it, thanks! :)
what if your character gets obliterated before u can unposess him?
game always spits errors at me when i jump off map lol
On destroyed fires before garbage collection takes it away
Although supposedly its getting replaced by "on end play" at some point
Iโm trying to create starting weapons for my player character from the class references of the weapon.
This code activates off of event begin play
I tried to do it by object reference last night
But I need to populate the reference with the actual BP
I thought the only way to do that was to construct it from a class
hi guys,,, is there anyway I can straight show my character in my viewport without clicking the play/simulation button ? im using the city sample crowd from marketplace
You can drag the character from your content browser into the level
Have you tried just using instance editable variables marked expose on spawn? You can just pass the values you want on construction that way
Spawn actor
Wonโt that just spawn it into the world? Iโm trying to equip it to my player character and his inventory
Good luck creating an ACTOR that's not in a world.
Actor being exactly the thing that's not letting you do what you're trying to do.
why dont you just spawn it?
You can spawn and attach an actor in the world
You can add a component or just reassign the settings on a component you made on the player character
Hmm
Right but it needs a transform
Hey people, in my level i walk into a trigger box, I have to press E and i've got some level sequences happening. Do you know how i'd activate a Post Processing Volume to start when I press E?
its just this
So it wonโt look stupid when the weapon flies from across the map at 0,0,0 and then attaches to a specified bone on my player?
but I want to make it spawn a lot and walked along with my zone graph ๐ฅฒ
Hmm
@cedar remnant spawn it at the transform of the socket on the player you plan to attach it to
may i know where is the instance editable variables locate ?? im sorry this is my second day using ue5 and blueprint im not so sure about all these things
Click on the variable
Its the 3rd option down in the details panel
@cedar remnant well I have a component on my character and just assign the mesh and values I want when I equip/unequip a weapon
is there a way to handle movement that allows for full collision without removing the scene root of an actor?
You can add a collision shape without setting it to the root mesh.
this is what i mean,,, is there anyway i can just let my character appear without clicking the play/simulate button ?
You can simply add it to the level
Search for it in the place actors panel or just drag it from the browser
but add it to level i have to one by one and add keyframe for all my character...
whenever I set the player pawn transform it doesnt work and just faces where the camera is facing?
Any ideas?
you can but floating pawn movement only checks collision on the root, same with interp to movement
What's your limitations with not being able to change the root?
So you made a separate actor component that handles your inventory?
Physics collision uses the collision of the root
You can use set location and get sweep results to deal with collision instead if you want
Your setting the world rotation here.
What's your intended result?
its 2d game using flipbook for the model, if I set the flipbook to the root then collision works fine but it makes any sort of rotation tedious as I have to account for the initial rotation of flipbook (can't find a way to bake in a starting rotation) and then any changes I make to the flipbook like scaling will affect anything attached
@foggy escarpchange the pc's location and rotation for a turn based battle style
You mean orientated where it's walking?
no like stationary
just facing a certain direction
but its stuck on where the camera is facing
i guess theres a setting to not follow camera rotation?
There's a node to get look at rotation. You can use this and plug it into the transform
i mean it should just be 0
This would spawn it facing the right direction
@cedar remnant you could do that, but I was just talking about the equipped items' mesh and properties.
For the weapon, if the player will always have one, I would just have a skeletal mesh or static mesh component. Then swap the mesh and any other values I want.
For general items or if the weapon is more dynamic, I'd probably spawn them in the world and attach simply because if I drop or throw them it's easier to handle.
As for the inventory itself, you can just have a datatable of all weapons and their related base info. Mesh, attributes, etc.. and then make an array or struct to hold the ones that the player has. Whether you wanna encapsulate that in a component or if you want to build it into the player character class is up to you
Hello - i'm trying to get a post processing volume to start on a button input. I want it to look like this - https://gyazo.com/d478e71e1a4e24b00de3a8635889a62b
However mine looks like this https://gyazo.com/c19d01ed791cefa1de8c418c9064558d and I can't get the "target" node to appear. Anyone know where i've gone wrong here and could help please?
If I'm already handling the properties such as ammo count, fire rate, fire type (auto semi auto) inside of my parent BP_BaseWeapon and then adjusting those values on the child, I don't need the database do I? Is that what you were using the database for?
The rest makes sense thank you
@unreal marten you can set the scale to use absolute world instead of relative and that will stop things from scaling with the parent.
Also you can get the class defaults value. In 2d you're usually at 0 or 90 to start so you could just hard code that as a constant or save it on start and use it for whatever you need
Id still recommend the datatable, it'll be easier to track and supply the stats for each gun.
interesting question: is it possible to set casts initially as pure in editor settings? ๐ค
@cedar remnant I use the datatables for storing all the default properties so when I spawn a new one I have those to plug in
Then the item would handle it's own data from there.
experimental, default to using pure cast nodes
This is because I don't have 30 weapon classes. I have more general classes and pass in the data I need to make it work for the one I want
I would use SOMETHING with collision as the root for anything meant to have collision
thank you
and what u did before doesnt? xD
you can set the default data in blueprint
That's fair I'm just trying for best practices
That's gonna be more of a case by case thing.
You wanna shoot for having as little extra data loaded as possible and keeping things as self contained and independent as you can.
Static data like tables and assets and BP structs are cheaper to hold, pass around, and access, but not as great for data that you plan to change. So for your example current ammo count would be a variable on the weapon. Clip size, or max ammo count would be static data
what about actor components?
i use them alot
i put all the health and stuff into an actor component because its easy to access
no casting or interface required
and if ure lazy to make the nodes u can set up a macro
for each component
Use just the head of the skeleton mesh by hiding all other bones.
just hide all bones and then un-hide the head?
Hmm, Does it need a delay to next tick or can I hide unhide in same tick. I tried this but must have done it wrong.
Thank you for feedback
i messed with that today, i had to make an abomination to get it to work
this
how do I get everything, pretty much, in the level to reset after the character respawns?
use the reset node
ah, thank you! :)
Hey guys, I'm kinda stuck here. My character blueprint has attached an actor of a sign (first picture). It looks good here. The problem appears when I rotate the character (Second picture).
What I want is to keep the sign on the same location despite the character rotating.
What do you want it to do?
Cuz if its attached then it's generally gonna move with you
Found it. The solution was create an arrow component and put there the sign.
It flickers a little bit when moving, but that's a problem for another day.
Is there a way to use the 'Reset Level' node that doesn't cause spawned PlayerCharacter actors to get deleted?
Hello, I have a big problem on a program and I can't find out where it comes from.
The goal of the program is to generate a maze. The tour of the wall is done correctly, the problem is what comes after, I have the impression that half the time the program thinks that a vector is not in the array whereas it is there. The problem is that walls are built where they should not and block the passage (which is annoying for a labyrinth).
If you can see where my mistake is I would be extremely grateful.
Same RELATIVE location or same WORLD location?
If it's world location..... just don't attach it?
Which gives this:
Guys, Does anyone know how large of a plane you can make UE5s water system to have as much effect on low performance as possible ?
Open question I know
does it loop without the condition ?
me ?
No Hamilton sorry^^'
without the Charge value increment
I just forgot to change the timeline length lol, sorry abt that
works as intended now
How do I make a progress bar that fills with rectangles, like this?
I'd say with an HUD component and a loop
I've only found a percentage progress bar
If you look in Lyra they have this type of thing for the player health bars. Its way more involved then a simple progress bar tho
Hey ! I have a problem with something that worked on UE4 and doesn't on UE5
Basically, I can't make an Interface Array to reference actors anymore, here is a very simple case :
- Two kind of Door actors, implementing a "Door" Interface (so they get the same Open event)
- A button that contains (as variable) an array of these Doors (so i know which targets which)
In order to target both kind of Doors, the Button's variable isn't a Door array but a Door Interface array, so I can reference all actors that implement this Interface with no additional check nodes
It works fine on UE4 and absolutely not in UE5 ,
it'll work if a use an array of Doors, or generic actor but not interface
U think I can give a decal projector some movement?
Start with a material that can be driven by a parameter
For example this is from our WIP UI, the bar material just has parameters for number of divisions and value
You need to get comfy with thinking in UV and think about how the material knows what color to output based on UVs.
In our case, we choose which color based on distance from the segment divider. Something like:
if Abs(Pixel.U - Round(Pixel.U * 4)/4) > 0.01, choose one color, otherwise choose the other
Is there a node where it like exempts a particular actor from an event?
What are you trying to do?
are you in a loop ?
I've set up a system whereby my player respawns when it dies, however the enemies and items in the game stay the same as when the player died, but I want them to reset.
So I'm using 'Reset Level' because if I restart the level completely it won't save checkpoints.
I assume.
Unless I create a save system.
Save Checkpoints in a savegame or GameInstance
if you want ResetLevel to be how you reset the level
are there other ways?
I mean you can manually have everything to back to how it was on begin play but that'd be a lot more work
performance-wise it'd be worse do you think?
Depends, don't worry about perf right now
IDK if resetlevel does a full nuke and reload or not
make a rectangle of some sort and repeat its texture as many times as I need? that's the only thing that comes to mind besides making separate rectangles and turning them on/off separately
Ah, okay, well thank you I'll look into this and see what I can do. :)
Yeah he could do this too, have the segments be in a texture and just progressbar the texture. A million ways to tackle this.
Does ResetLevel happen pretty fast right now? I've never used it.
yeah it seems to be pretty fast. i was just trying to out now and really the only problem with it is it also deletes spawned player characters for some reason.
The reason is that it resets everything. IDK if there's a way to keep the character from being reset other than using a multi-level approach
You have a persistent level the character is in, then can reset the streamed level
Yeah I was thinking about that too. I thought Level streaming might be the way to do it, but thought it might be a lot of work to go back and separate levels into multiple levels, but if it's the best way it might be worth it.
I'd at least experiment with it but it all depends on what you wanna do really
I think I'm just trying to find a shortcut to avoid having to use a save system. XD I've tried to implement one multiple times but can't seem to get it to work, didn't realise it's be so complex and should've started it right at the beginning of making the game, now I guess it's too complicated haha.
What all would you need to save?
hmmm, mainly the Current level, Checkpoints (or just PlayerTransform I guess), variables saying which switches are on and off.
I wrote a list somewhere.... maybe i can find it
So Dark Souls style
Yeah, I guess so.
Yeah that'd be easy. Just make a struct with all the info you need then make a savegame with that struct in it and you're in business
Save on death, load on restart
Would that also save this if the player exits the game and comes back? (doesn't matter if not just curious)
But thank you so much, I'll try this out and see if I can finally get this to work! XD It's probably way simpler than I'm making it....
Start with making a Save and Load function and trigger them with buttons to test
Save, change stuff, Load, see what happens
then incorperate reloading the level on another button
then tie it all together with exiting and dying etc
Hi there, is it possible to spawn actors in editor (not runtime)? I know that there's a EditorBlueprint or you could set a "Run in Editor" flag but that doesn't work if I spawn an actor in a construction script via Blueprint or C++
ah, thank you!! i'll give it a go! :)
There's a lot a lot of ways you can do this, you would need to be more specific on what you want. Because if you just want it to simply fill up with squares then you'd just need to create an image with a bunch of squares and then set it as the fill image.
@broken geyser afaik you can't spawn actors from the construction script.
You can for sure spawn components though
@tawdry surge Thats Ok for me, but my question is, is it possible to spawn actors during designtime? I need this for procedural level generation in editor
Hey, is there a way to construct or preload an actor that I can tweak its variables on runtime and then make instances of that preloaded actor later? Construct Object from Class doesn't seem to do that
@broken geyser Ok, cuz you said the only problem with the two methods you listed was they don't work if you try to spawn in the construction script
@autumn comet Looks like a prototype factory pattern. Why not just spawn an actor (hidden) change the properties to what you want and call a custom "Copy" function. This function spawns a new actor with all properties from the prototype actor
prototype factory pattern? Is that a specific thing?
and when an actor is spawned I need their veriables to be tweaked before beginplay or tick events are triggered
which seems to happen even if I try to set their variables right after I use the spawn actor from class node
You can expose properties for construction script if you want, depends on the properties you want to change
Yeah expose on spawn and then use those values in the construction script
I've never used the construction script of an actor before, I guess I'll look it up to see if it does what I want then. I need it for stuff like an explosion instance that I need its damage to scale with the exploding actor's damage before it can collide with an enemy
Sorry, Properties which are set "Expose on spawn" will be visible on a "Spawn Actor From Class" Node
ooooooh that's exactly what I needed! I just saw it
Ok, that means you don't have to preload or spawn an hidden actor, you just have to expose all properties for spawning and set it directly. Should do the trick for you?
yeye, thanks for the help!
Does anyone know why finding an item in a text array won't work? Didn't have issues with this until upgrading to 4.27.
Also, how do i detect collision with a lerp? Should i check every lerp iteration if im overlapping someone?
I'm guessing that entry is not in the array then. Have you printed the contents and confirmed that the test you want is actually in the array.
๐ , any ideas how to reference actors by interface in a blueprint array variable in UE5 ?
This bit here looks like you're trying to use a name to find the "ID" of the option. Using the resolution as the "name" of an ID doesn't make much sense to me.
Nevermind, I see it now... Just a bit confusing.
I'm essentially creating a custom option box
Yeah, what happens if you print out the contents of the "Options" array?
Question: Hide all bones then unhide head doesn't work: What am I doing wrong. I even setup a bp just to test this and the head doesn't show up on unhide. I've tried root too, and neck_01 the entire mesh stays hidden. I Tried it will scaling all the bones too but I can't scale the body without it effecting the head.
does anyone know how i can differentiate what makes an Item food or water? I have this set up so far but not sure where to go from here
You could use an enum
Question: Can I clone a bone to another bone or in to another mesh?, so I could take the head clone and put it in the root hidden. Or in it's own skeleton?
@crude iron thank you I will look into that right now
Am I right in thinking you can't add blueprint components to variables? I wanted to make an array of static mesh components within the blueprint that I could then act upon, but that doesn't seem to be possible. Do I really have to drag out a reference to every component into the graph to interact with them?
You mean components that are part of your BP Actor?
You can just make an array variable, connect it to a make node and add the components once by hand. Call that in e.g. construction script or BeginPlay and you can use the Array from there on
Ive got a physics object and im constantly reading the hit impulse on it. Most of the time it will do its initial run of physics and then stop generating hit events as its no longer moving. But every once in a while it'll stick on and keep generating hit events. Is there a way to stop that ?
Yeah that's right. Just trying to avoid doing that in the graph itself because I have hundreds of components to set up this way, and was hoping I could streamline it a bit ๐คฃ
At the moment I've got a struct that carries the necessary information, and if it wasn't for the component reference issue it could all just live inside one variable ๐ฆ
No less work of course, just less clutter.
@indigo bough Get all components of class... Or some such node could also work if you don't care how the array is ordered
Get components with tag etc
Otherwise yeah gotta make array by hand at construction
Seriously thinking about tags, but yeah that's also not fun ๐ Okay, no problem thanks!
Do you have source control set up?
Does anyone happen to know how I can use blueprints to get the player's spawn location to move a certain amount on the X axis each time they press a button that restarts the level?
nope :(\
As far as I know, I think your only hope is to check the recycling bin, but I don't think stuff goes there at all
๐ฆ
Everyone has to learn this lesson at some point ๐ It's a horrible thing to learn, but you need to set up some form of source control, or do regular backups
yeah :/
Ue5 has an automatic backup
Check for backup in the folder of your project
I forgot exactly where it is (I'm not home)
It saved me, my entire level was deleted somehow
Simply pulled the level out of backup and was good to go
And the contents if you need them like I did
Can anyone show me what Im doing wrong here??? Damage is only being applied to Client 1 no matter what I try. Running as Client
Start with thinking about what's even providing that spawn location to begin with.
How does your game mode decide where to spawn a pawn at? If you haven't done much changing, it probably just uses a player start actor right?
It's the character Blueprint Class
Can you show how you are calling the Apply Point Damage Server event?
Also, should be posted in #multiplayer
Yeah don't do that. The spawn location has to be stored somewhere that will survive the character being destroyed.
Why are you not using player start actors?
I'm not entirely sure honestly. Not sure how they work either
i got it ๐
Im calling it from a Function Set on a Timer at BeginPlay
This is at the end of the Function that is on the Timer
alr
I am getting the Target with a Trace like this:
Well, I've added a player start actor, but I'm still clueless about what I do now
Have you messed with the game mode at all or is it pretty much stock?
In this image it shows that you've marked the event as an "Executes on All" / Multicast function which you cannot call from clients.
Normally you don't want to let a client tell the server that they've hit something as it opens the doors for cheating. The server should already be running the hit detection itself, and then it determines the values and replicates what happens to other clients. If you had an exposed RPC like this, you'd effectively allow those with know-how basically kill everyone anytime.
All I have in that Blueprint is this stuff
At most, you'd want the client to signify that they've started attacking, and maybe a target.
It was set to Server. I only tried Multicast to see if it changed anything
And does that work? If they die do they respawn at the player start actor?
Make sure to remove anything having to do with setting the character position on spawn from your character
Ok the Client sets a Boolean when they are attacking. The Timer function only executes a trace when the Boolean is true
But that's not what the server would see. The server can only know what the client is doing if you use a "Run On Server" event.
No, they respawn where the Character class is
Example:
Client presses attack button > "Attack" Run On Server Event
Server sets a boolean true indicating the player is attacking (which you can then later reuse to prevent multiple activations), and the server runs the line trace. The server then determines who to deal damage to and uses the "Apply Damage" node.
Client releases attack button > "StopAttack" Run On Server Event
Server sets the boolean to false and stops the timer.
Client is setting Bool via Server
Nope that's not good either. That's the client telling the server to set the boolean to what the client thinks the value should be. The server should determine what the value should be.
Eg.
If I was malicious, I could send a packet that spoofs that RPC at any time, and constantly set it true whenever I want to.
This is in an Anim Notify
I don't think there is anything dictating that besides where I placed the character.
So how then? I am setting the Trace as Server now, and it still applies damage only to Client1. Same as before
That looks better.
How would I set the bool correctly in an Anim Notify? I mean, the trace and everything is happening, its just always damaging only Client 1
Perhaps your line trace isn't correct?
So you have a character on the map in the editor then right?
Correct
I have a Character and now a PlayerStart both on screen
Yeah Iโm bypassing the branch
Delete the character instance from the level, and make sure that your character class is set in the GameMode
I'm saying delete it from the level
Don't delete the CLASS, just covering my ass here
I gotchu, but where in the GameMode do I set it
@faint pasture covering your ass? you wont get a lawsuit lol XD
I am trying to use a spline inside a blueprint in sequencer but it doesn't keep the amount of points I create. Anyone run into this?
