#blueprint
402296 messages ยท Page 441 of 403
still trying to find a way
i don't understand
everything is working
but i just need a way for when i press the key again it goes back to player camera
what about the character
This will let you check against the status of the variable every time.
where would I put that?
Well, you have to create a way for the camera to move back.
I'd put it right after the input
Basically you're developing two branches
One in which you take the action you have now, and another branch in which you return the camera to your player character.
Well, yes, you copied what I had right down to the variable names ๐
But do you understand how to hook it up?
So the red line going downward...that's what you need to create. Basically it's the opposite of what to do when it's true.
Yes.
Make sense?
yeah
wait
nevermind
i want to get it to go back to the player
but
the thing like this is already in the level
the player isn't in the level yet
until i click play
and it doesn't show up to add in level blueprint
Hmm, that I don't have a great answer for, to be honest.
maybe
I'd have to research it some
i could have it when i start the game
it could possess the player that's already in the game
and when i press the key it let's me spectate the ai
and then i can press it again and go back
let me see
i have an array of structs, the struct is just 3 actor references and a float, before adding a new struct to the array, i want to check for any identical ones, but with a smaller float, what is the best way to do this? the array can get pretty long so it has to be somewhat performant
nice!
some things are still broken
sometimes when i load in
it doesn't possess the character
it spawns the other character right in the same spot
and it kills the other
Might need to set something in a construction script somewhere. Also, the fact that you're doing that in the level blueprint doesn't seem quite right.
like it kills the other character
if there's another way to do this it would be great
it works fine if i add 2 players
besides the extra person
i can even spectate the enemy on one of the killed players
and spectate the main player
Dave if you find anything and I can get this fixed it would be great
also thanks for helping me
i spent a couple hours trying to find a way to fix this
No problem, but I'd have to dig into your other blueprints and understand how you're spawning things in. Just looking at a single snippet of blueprint is not going to help. And Also, you might be working with things I don't have experience with.
Honestly I don't even know. Sometimes you just have to troubleshoot. Look at how you're bringing your NPCs into the world.
You probably need to set some default variables on EventBeginPlay
oh
that's where I'd start, at least
well that's not blueprints
the way the npc's are put in the world
i think
let me see
well, then that's the limit of my expertise, unfortunately. I've brought things in via other means in my projects.
Not in the level blueprint
Hey, guys.
I want to make sure that I am using GameState and GameMode the correct way. I am trying to make an event that triggers when player interacts with certain object in game and when the player interacts with all objects of that kind to trigger another event that opens a door in the level.
So my question is where am I supposed to implement those events. Should I use GameMode or GameState?
got around it putting the float in a different array and then using the index i get from min, works great
if i had to do it again i would just not use a struct though lol...
is there a good way to see how much time a BP needs to execute? can i just look at my debug messages in the log? (because that says 1ms which would be very surprising not to say amazing)
within 1ms even o.O
Hey everyone I've been toying with this for a long time now and can't figure it out. I have a line trace from camera and if i shoot looking down or anywhere near my intimidate area it hits my camera/screen so i can see the hit impact emitter right in my face and the debuf hit shows where my camera is where i was standing
if that makes any sense lol
From Actors to Ignore in the trace line node
i did an array and referenced my self
Drag and search for Make Array
Ah ok
still nothing
Weird, it should ignore it then :s
yeah thats why im confused
Tried to restart the engine?
@tight gyro Can we see your trace?
restarted and still doing the same tried to toy with some other settings and nothing
feel like im missing something small here lol
left picture is my shooting from the top down to the the crosshair
then i moved to show what was happening
is there a way to store data that is generated during play mode in a variable so that it is available in the editor?
@trim matrix "Stat Unit" in the console โ Game Thread shows you your BP execution (though mixed in with other stuff like updating components and whatnot). I have a vague recollection of a Stat Blueprint command. A deeper analysis requires Unreal Insight, where (IIRC) you can see the execution times of individual BPs.
In response to your much earlier question lol
If you can load savefiles within the editor then that would be a way. Never tried it myself.
@tight schooner ah thanks that will be useful, i found out it gets slow though, so im going to (try and) store the data once to be used during play
@tight gyro Attached actor?
my capsule component on my player character had the wrong object type set
even though i had tried that earlier it wasn
wasn't setting ignore for camera traces
had to set it to custom and switch. >_< sorry about that! appreciate the help
Shouldn't that be included in the self actor for the trace though?
figured blueprint would overide any of that
yeah I thought so but I just swapped it to check and that was the issue
@tight schooner i was hoping i could save it straight to a variable somehow, that would be very useful in my case
a savegame just feels like its not meant for this, but i guess if there is no other way its better then nothing ๐
can i load a savegame in the editor? so that i would get the data in the editor and dont need to worry about loading a save
meaning dont have to worry about it after doing it once in the editor
Things in the game world are not initialized yet in the editor. The game world doesn't even exist yet. You might be able to make a work around with a construction script, I'm not sure. What are you trying to do with the editor though?
well i just need to generate a bunch of data that i can generate in play mode, but not in the editor
@maiden wadi
@maiden wadi and i would prefer the data to be accessible and editable in the editor
generating takes a lot of time, and there is no way around this, so i want to store everything once, to be used later, i could just regenerate when i make changes
Hmm. Like I said, maybe in the construction script. I'm not sure if it can handle save game objects or not. I make it a habit to avoid the construction script unless entirely necessary. Even then I'm not even sure that'll work.
well maybe someone knows a nice way to do it at some point ๐ this seems like something fairly rare
Ok, I just found some weird logs.
LogBlueprintUserMessages: [GridVisualizer_2] 117
LogBlueprintUserMessages: [GridVisualizer_2] 118
LogBlueprintUserMessages: [GridVisualizer_2] 119
LogBlueprintUserMessages: [GridVisualizer_C_0] 0
LogBlueprintUserMessages: [GridVisualizer_C_0] 1
LogBlueprintUserMessages: [GridVisualizer_C_0] 2
LogBlueprintUserMessages: [GridVisualizer_C_0] 3```
What does the `C_0` mean? Compile output?
Because the loop should run from 0 to 119, but it runs from 0 to 99 as part of the GridVisualizer_C_0 set. The code is in the construction script.
hey, how would you go about making a character model that uses segmented limbs that attach and detach?
I'm trying to make a mechanic where if the limb is damaged or chopped off, you can rip another one off a corpse or pick one up laying around and re-attach it
Will traces hit the backside of geometry?
Treat the limbs as a you would a weapon. You can attach a weapon to your sholder and ask it to perform an animation when you hit or whatever.
I figured that, yea. using sockets
but then I ran into the question "wouldn't that cause rigging problems"
like, I have a model and I'm currently working on getting someone to texture and rig it, but also chop it up nicely so it does as above when I work on it in-engine
but I didn't think to consider the rigging aspect of it
and, if a limb is reattached, would it resume previous function and role in animation and bone structure?
Yes, the animations would have to be split as well. Alternatively, you can just hide parts of the static mesh when the arm is chopped off and spawn the type when attached.
In other words, only change the visuals.
so if it gets chopped off, hide and spawn a whole new arm to go flying off
and if doing the attachment animation, use the object then once animation is complete despawn the object and unhide the arm?
Yes
Also, you have to block any interaction and prompt if the arm is chopped off etc.
what about unique attachments on the limb such as equipment
I need to be able to loot armor from limbs if I want to, or weapons locked in a death grip
or, if I wanted to, pick up an arm I just hacked off an enemy and put it on myself with the armor and weapon still equipt to it
I'm really new to these sorts of things and I have to ask these questions so I know I'm going in the right direction so I don't backpedal. thanks for the information so far btw
Then you would have to have a description of the arm telling you what is attached etc. and when the arm is attached you read that description and set the correct static meshes for you armour. You have to hide every piece and show every piece.
so there's no way to do it the socketed way?
I think mostly this would come down to having a lootable class. When limb hacked off, spawn lootableclass, apply mesh of hacked off arm, attach any weapons or armor to it, and then hide character's limb that was removed. On pick up, set character's arm mesh to the one from the pickup, attach any attachables to the newly applied mesh of the character.
Not with my limited understanding of the system, no. Though, you do see games make guns and the like animate together with the character after being picked up.
Maybe set two different riggings?
it's hard to wrap ones head around when not fully knowledgeable isn't it
This would be really easy with just using attached static meshes to the character's skeletal sockets, but it would look really odd unless it was mechanical I think. Might be able to get it to work with something more biological.
well the only reason I think this would work biologically is because the model is low poly
it's based around ps1 and very early ps2 graphics
back then, quite a lot of models used segmented portions for animation
for example
May very well work then. Without a lot of geometry, using static meshes placed correctly at the sockets could work. You'd end up with the old bulb shoulders look sometimes though.
Armor could even hide a lot of it.
the overall grand scheme is the players character is trapped in a physical body and can't REALLY die, just the body can. so when something gets damaged or ripped off, the sped up healing abilities can just allow for attaching something new or just regrowing one over a very long period of time
and yea, armor would hide a lot of it
the armor system is very in-depth
lots of layers and such.
so this being said which works better? sockets or hide/show?
personally, visuals wise and streamline effectivity I have this gut feeling of socket but I don't want to overstep when I don't know any better
by the way, thanks for the help
Honestly not a clue. I'd have to put more than five minutes of thought into it. Either way can work. There may even be a more robust way of handling stuff like this stuff. Check this page out though, it looks promising in that regard and it's for biological characters. https://docs.unrealengine.com/en-US/Engine/Animation/WorkingwithModularCharacters/index.html
Describes the different methods you can use to create modular characters comprised of multiple Skeletal Meshes.
I think your only real complex part is going to be changing animations based on missing limbs, but that's just technical details.
very nice.
yea, I'm very concerned about animation
but its probably more simple than I imagine. learning more about the engine and what it can do usually shatters those mental limitations
well, actually, in animation they use bones right?
and bones can be parented and unparented
can't you just on sever, unparent the bone and make it modular as well?
Well, if I was looking at that correctly, you're still using just one animation. Just like if you're using one skeletal mesh for the character. Difference is you can remove skeletal meshes.
If it was me, I'd use that modular style and make a pickup actor class that has a skeletal mesh in it. It'll allow you to, like I said earlier, spawn the pickupable actor, apply the limb that's being severed skeletal mesh to it, and then let it fall to the floor while you at the same time remove the skeletal mesh from the player character. If that makes sense? Then you can interact with these pickup actors to reattach them. On creation you can pass some variables to the pickup actor like body part location, it's held weapon and armor, etc. And on pickup, you just set the skeletal mesh of the limb on the character to the one from the pickup, and then attach the weapon/armor back to the limb. If that makes sense?
I'm trying to attach an actor (just a scene component) to the out hit actor of my line trace, but it seems to not attach in the right place
I'm trying to get the spawned actor to attach and move with the out hit actor of the line trace but id like it to attach where the trace has hit, rather than just on the root location of the parent
When I change AttachToActor to use keep world location it attaches where I want it but then doesnt move with the parent, which is the goal
When using keep relative it attaches it like 100ft away
@wild seal Not used to attaching components at runtime. But what happens if you get the hit actor's world location and subtract it from the outhitlocation while using Keep Relative?
could you elaborate?
@maiden wadi I'll give that a try
I'm writing something quick to test that myself since you gave me a new design idea for a spell, so let me know what happens with that.
@maiden wadi It still attaches far from the parent actor
Hello guys, i have a problem since yesterday that when i move left or right (a or d keys) then my screen shakes what can be the cause of this?
@wild seal Hmm. Odd. My test seems to work fine.
@maiden wadi Could i get a screenshot of the blueprint to see what might be different
@wild seal Quick clarity before I post, I'm line tracing to hit fireball actors I have, setting an actor ref in the fireball. The fireball actor which is moving constantly draws a debug point on tick showing the attached actor's location.
This is an in game screenshot of what happens when I attempt to use my grapple hook ability.
nvm guys i got set controller yaw and it works ๐
@wild seal How about this?
@maiden wadi Hmm, that fixed the issue of it being in the wrong place, but it doesnt move with the parent I'm attaching it to
@maiden wadi hold on just thought of something that might work
is there anything in blueprints that allows me a simple thing like switch(int){ ... return "foobar" ... }
so switch on an int but returning an string
Thanks to @maiden wadi
The smoothing is disabled in this as i'm working on something (the random tilt is fixed with the smoothing). Character is now able to change gravity to any surface and the camera follows the gravity change and character can also orient correctly to velocity on any surface ๐
@spark steppe Would a select node work for what you're after?
Are line traces visible in a shipping build of a game?
string select only offers a or b, which gets toggled by a bool
I don't believe any debug features are @amber marsh
kk
@spark steppe
@maiden wadi thank you for fixing the issue with it appearing in the wrong spot, I realized that it wasnt moving with the parent actor because I was setting a vector variable only once and using that as a reference for the visuals and the movement
Its silly how simple the solutions can be sometimes
@uncut granite Looking good. Seems to work really well.
Thanks a lot for helping everyone here ๐
^
Why does it go straight through the floor?
the sphere is set to block all. Thats why im confused
does it have a collision mesh?
@feral ice In generally, I find it easier to make a collision of some type be the core component of projectiles. I've had collision issues myself with leaving the core component as a Scene. Static Meshes or things like Sphere Collision work great.
yeah i think it does
ah ok ill try that : D
thanks for helping
it worked : D thanks @maiden wadi
guys how can make my meshes visible when the character (camera) is within a certain distance of the mesh?
And I suppose I have to do it in the level blueprint?
Like you know how there's a parameter for each static mesh "visible"? How can I set it with the level blueprint using the logic i explained above?
@deft zealot Are you talking all static meshes, or just one in particular?
I have a few meshes that will initially be set as not visible, but I want them to be set to visible once the player gets close
so, just one in particular i guess
if I know how to do it with 1 in particular, ill just do the same for every other one that i need
you can use a trigger box
which sets the meshs to visible when the player runs into it
and to invisible when he runs out of it
In general, I would create a new actor for this. Place the static mesh inside of the actor as a static mesh component. You can even expose the static mesh component and distance variable so you can set them in the editor if you want. but generally speaking, you would either use Tick, or Set Timer By event, get the player character's pawn and use it or the camera component's location, use Distance(Vector), If Distance < desireddistance, sethidden=false
Trigger boxes work well too.
@maiden wadi And I assume I have to do all that in the level blueprint, correct?
Tick event is every frame? So it will just trigger/check the distance continuously?
@deft zealot Nah, you can make the object handle that itself, that's what the creating a new blueprint object was for.
Hi! Can someone explain me how to make a capsule component searchable, so I can add it to an array? I've one component array already, but I can't assign values to it (it brings up the content browser). I've also a workaround, by initializing the Make Array node, each time the game starts. Which is fine, but would avoid it if possible.
I am a little lost. I mean, I already have the object?
I am so sorry lol please forgive me, all i know is how to make levels visually for now, and all this blueprint stuff is super new to me @maiden wadi
So like, I have this phone for example
is theres a node that sets actors position and rotation inside the level
Authaer GoodDay can i get a value stored in array and check if its equal to another variable without doing loop ?
@cold sinew do you know the index? will it change?
Yes each gamemode is adding to this array
so each time the function fires i need to check if the index not exist in array
its will fire
there's a node for checking indexes: "Is valid"
yes
if the index, that you're adding, has a stable position (aka always lands on the same index), that you could just simply call it from the array, and pull out an equal node
the problem is i have game modes working one after one as the player selecting them
like the player want in this session 3 game modes
and the game starting with race or tdm
the thing is its starting but after the 2nd or 3rd game mode done its going back to 0 first one
and going to continue again from 3rd
thats why i need to check if this gamemode already done no need to restart it
im doing that by adding one index each time to the array and to the variable
so you're randomly adding numbers to your array then?
yeah, but what kind of array we're talking about? 'Cos if its a bool, for example, you can make a branch and check if Game State 0 is False/True
now this checking if the game index -1 will destroy session and if its more than or equal to 5
but sometimes like im getting 1st game firing again in the middle of the games
indexes will be 0,1,2,0,3,4
or 0,1,0,2,3,4
idk why because im adding 1 each time it shouldn't get 0
from what I can tell, I'm no pro, but those variables don't seem to be from an array. Just a single.
how do i place the static mesh inside of the actor as a static mesh component
Yes i want to add array to this
or i can make a boolean array ?
@cold sinew make a mpa
each time this gamefunction fire will set it to true
cos to me it feels like that you're trying to alter/override one variable
yes true but the thing i want to set each new index to an array and checking if its already added or not
if its added will switch to another game without restarting
just select the static mesh from there? I am trying to like, put an existing mesh into this blueprint actor
@deft zealot this will add a mesh to class. Yes, this is how you add them most of the time.
You can also use a node "add static mehs component" to add a mesh at runtime.
in any case you can change the actual mesh
Hi, I keep getting an error that my decal is pending kill
even though I've checked off the kill function on decal fade out
then just pre-define an array for all the game modes, and alter the values that way
I wanted to place tutorial prompts in the level
or you can use the make array node as well, if you fancy
that show up when you walk into a certain area
but for gameplay stuff, I'd use a pre-defined one
that was my initial question
@deft zealot there is a "is visible" property
That's what someone in here told me to do "In general, I would create a new actor for this. Place the static mesh inside of the actor as a static mesh component. You can even expose the static mesh component and distance variable so you can set them in the editor if you want. but generally speaking, you would either use Tick, or Set Timer By event, get the player character's pawn and use it or the camera component's location, use Distance(Vector), If Distance < desireddistance, sethidden=false
Trigger boxes work well too."
you can call "setIsVisible" or "setvisibility"./ something like that
yes, this solution is correct
Wait a sec, will make you a screenshot ๐
@cold sinew this is how I'd check if we're in a specific game mode. I'm sure there's plenty of other ways.
So does anyone know how to pre-define a Capsule Component Array?
@cold sinew this is how I'd check if we're in a specific game mode. I'm sure there's plenty of other ways.
@teal spade Yes thats what im doing now xD
with that new static mesh component selected, in the details tab you will have a static mesh field.
i will check it
pick a static mesh you want.
Ahhhhhhhhhh gotcha
So, that is a blueprint. Do i need to replace the original mesh (that phone on the bench) with this blueprint actor then?
yes
this is not the best way of doing this.
you should avoid doing stuff in tick if possible.
but its the simplest to do ๐
yeah for sure
I mean this project is nothing serious
I am mainly doing this for self teaching purposes
You can also add a collision/ trigger to show the mesh when player clips it, or if its only visual you can just make a shader that will hide the mesh.
I keep getting this error, and my decal is meant to fade back in but it won't
Anyone?
@teal spade same xD
@undone imp Thank you so so much for this
Such a simple thing yet I couldn't find this on youtube at all xD
By the way, is there a way to make it so it just stays visible forever once the player gets close to it? Since with the script that you provided, it goes to being invisible again once you go away from it
sure.
@cold sinew as in nothing happened?
yes nothing happend xP
@deft zealot
Add a bool variable, "wasSeen".
Before the check for visibility check if its true.
If its false, but player is in range, set it to true.
its weird
can't tell much, cos I don't see your entire blueprint, but why do you add and subtract numbers like that? why not simply use Set Array and blamo
meaning to get rid of those num checks you've there, on your earlier picture
im not subtracting anything im just adding
i will tell you the idea
i have local string array for gamemodes
the players when creating session they can select which first mode to start with and what modes to play inside the session
like they can select 4 game modes the thing is the first game mode he is selecting is going to be index 0
and the rest of modes 1,2,3,4
so what im doing here im trying to not duplicate any mode when he play gamemode index 2 will not play it again in same session
but you're adding to a single variable, with no index, Right? (going from your setup). Don't see anywhere, where you Add an element to an array, with an index tied to it, just an Increment node; that's not the same.
yes i've tried to add each index to an array
integer array
you know i've tried this but without is valid 
let me try this one ๐
then why didn't it work? lol
@deft zealot
that's not gonna work
said that you need to use Set Array Elem
oh
im listening xD
you can use that node to update pre-existing indexes, with whatever number you wish to add
but because you're switching between game modes, I've really no clue, why you're insisting on using an integer array, instead of a boolean one
so that way, you set True/False the one you're in, and the rest to False/True, to make sure you're only in one game mode
super simple, super secure
but you can use ones and zeros if you wish
would do this inside your game modes, but sure
yes its gamemode
you also need to clear the other ones, to their default OFF state
otherwise all of them will be set to True, at all times
ok got it
Can anyone help me with the decals ๐ข
Hey guys, is there any way to get a reference to the parent ("root") Widget from a button for example?
@languid lion I could be mistaken, but I think once the fade out finishes, the decal component destroys itself. The bool on that is just to check if it should destroy the owning actor.
@nova pagoda Not without passing it to the button on spawn. Other way around that is to use event dispatchers.
@languid lion This has the same functionality I think you're after.
tried everything also same thing
@undone imp I am so sorry lol, could you please show that in the blueprint as well? As embarrassing as it might sound, I can't figure it out lol...
sure. 5 min
@nova pagoda Not without passing it to the button on spawn. Other way around that is to use event dispatchers.
@maiden wadi Could you quickly elaborate on the dispatcher method?
@deft zealot
@nova pagoda Button can have a "onClick" event dispatcher. Parent (like menu), can watch for that dispatcher
and do something when it triggers.
Its very useful since the button doesnt have to "know" where it is, and what its parent is. That makes it very easy to reuse.
@nova pagoda This is in the custom button widget. On the left, I've made an event dispatcher named ActionButtonClicked. Then in the graph on the button clicked I'm telling it to call that dispatch.
In the parent, you just drop the custom button in and use that, or you can use the button variable to bind it manually to a different event if you want.
i've tried everything but nothing stopping the index 0 from running again ๐
even this
the gamemodes function killed me i've been working on them since 4 days ๐
where would one put save/load game handling? in the gamestate bp?
@maiden wadi That worked, thanks a lot
Is it possible to also fetch the value I input for the decal's size in each instance of the actor?
can someone tell me the lifetime of an for each loop? like if I find the array element I want. Do I have to save it or can I just plug it into the function I want?
Figured out a solution. Thanks a lot Authaer!
i think for each loop complete when its reach the last index of the array
Ctrl + Drag the variable and drop in the workspace
right click on it and select is valid
thanks @cold sinew right clicking on it worked! and also thank you @frozen spear
got what i need!
Those look like validated gets tho
that is what I needed @frozen spear I tried to point that out with my initial post and picture ๐
Neat, you making a parkour game?
something like that XD its gymnastics in VR, bit out of my depth as its my first ever project in game dev but having fun pouring time into it!
@cold sinew thanks! Yeah I tried now just putting that element into a function. and it works. I guess it either finishes the function and ends the loop body, or just copies a reference and then just finishes and the function goes.
Welcome
can i export a variable that gets assigned during play? i made it public so i can see it in the editor during play
all i can find is stuff on importing, not on exporting
any way to write text to a file? then i could just make a CSV
You can in cpp and bp
Hello!
Why i cannot view my model in perspective mode in viewport?
but i can view the model in other views
Did you try unplugging the 2 nodes it's warning about?
There is also several plugins on the marketplace that allow you to access f file helper functions in blueprint
The one above is an example
As far as I know, you can only read and write using CPP projects
Did you try unplugging the 2 nodes it's warning about?
@frozen spear i resolved those issues, no more warnings
@frozen spear thanks ill take a look
Maybe it's hidden? @late tendon
@frozen spear I checked, its not hidden, and its set to visible
Click the perspective window and hit 'w'
@frozen spear No change
Hey so I'm trying to store a single actor of one class with one tag into a variable that stores that one actor, but the 'get' node doesn't allow me to set that variable with its result
nevermind
Is the only way to have an array of classes of a parent BP to predefine it before runtime in the editor, or is there a way to do it once on game startup
hello, does the delay node keep a record of events, or is it that while a delay is in action, other events coming in are ignored?
@wind atlas wut? delay only does what it says: delay. It serves no other function. It's as if you have a recipe for cake and you have to delay it in there for 30 mins.
@dreamy ice in the "on begin play" event, you can define your array of classes and it will override whatever you had in the editor assuming you clear it.
@tired arrow you have to link your get result to your set
I was referring to being able to lets say, GetChildClassesOfParentClass and get an array.
yes, you can
How would one do that?
on begin play > get child classes > have an array var handy > use a for loop
beyond this i have no idea what you are doing or trying to do
As far as I know theres no get child classes node. That's my problem. I don't know much c++
Hi, I'm new in ue4 and I need some help. I have successfully installed the plugin socketio-client-ue4 in ue4, but now I have a problem. In the blueprint widget window I have no button called "Add components" on my board.. Is it normal ? Maybe is something wrong in my way of doing?
So I have some automated doors that opens and closes as you walk in / out. I have placed them in all of my houses and they appear fine when I play the game in viewport but the doors location and placements are all misplaced in streamable levels. Any idea why that happens?
@zealous moth That wouldn't work the way I had it setup but I figured it out, thank you
now I'm satisfied finally no issue ๐ ๐
wow that looks awful, you should've made an array with a for each loop :/
Would anyone have any suggestions on how to reduce the fall speed in my game without altering the gravity scale?
try reducing the gravity scale
right now I have a wall-slide but it ends up being too fast if z-velocity is too high when the wall-slide starts
you can cap your z-vel
get your velocity in the Z axis, if it is too high, set it to your cap
you'd have to run it on a timer or tick
how do I set my cap?
i followed the animation doc from unreal engine page, but when i press Ctrl to Crouch it dons't work, but sometimes yes
show?
me?
no, triceps
bro, do you even blueprint? alright show me
so what do you expect it to do other than slow you down?
this is third person?
but sometimes work some tims not
show the anim bp
so you transition only when you walk?
yes
there is no transition from idle
i would guess it is your speed then
if i walk and i press CTRL sometimes works sometimes not
idk why
if i press 5 times, maybe it crouch 2 or 1
on input, put a print string and record your speed variable
put it before anything else on pressed
that way when you press ctrl, you can see what your speed var is and check if it is 0
i would guess that is your issue
not sure why you aren't using >= instead
idk, unreal docs xD
so one more thing
how can i make this animation while im pressing CTRL instead press 1 time
remove the release and flipflop
look up on yt "wtf is flip flop" it will answer you ๐
Has anyone done fake depth and scale for part of the scene in VR? For example UI that's infinitely far in the distance. And would you be able to point me towards a reference/search term? Either blueprint or CPP
Random interesting note. Decided to run a comparison on Validated Gets vs the usual Get Reference, run through an IsValid node. Validated gets are roughly 5-18%(Depending on use after) faster than using an Isvalid node for the same thing.
@maiden wadi ah? which node? the isValid?
When I print my character's velocity, the Z value always comes out as zero
even when I'm jumping around
The logic is still firing off which confuses me even more
@zealous moth how can i see speed variable in input pressed if it is in the animation BP
Wow, just fixed the mother of all annoying problems.
Does anyone know when a list entry is actually "created"? I was trying to access a reference to a list entry in a tile view so I could update its text on the fly for my inventory system so that it can display how many items are stacked in a given slot
If I tried to access it in any continuous form of execution, for instance if I wanted to add 3 items of the same type to the inventory that were in range of the player at the time I pressed the "pickup" key, the reference to the list entry didn't work, it just came up null
I got around this by storing the reference and only accessing it in a separate function that is triggered by a timer of all things...
Maybe there is a way to get around this, but holy moly this took me weeks of toil to figure out what was going on. Even then I still don't really understand what the engine is doing in the background that makes this specific type of object inaccessible at a given time in execution..
is there an easy way to implement a switch on damagetypes?
Whats the node to check animation time so i can turn off a Boolean?
trying to stop my attack animation
@vapid hatch Switch on Enum?
Hi I have set up a simple count down timer for a widget and I have formatted the text to show only minutes and seconds. I have set 3mins 30 so it show perfect 3:30 and countdowns, 3:59. 3:58 etc. My issue is when the seconds get below 10 it does not show a "0" so it will look like 3: 5 etc. I cant seem to work out the best way to solve this. Any help would be apreachieated.
@vapid hatch Switch on Enum?
@dreamy ice well damagetypes arent really an enum, are they?
What is best for start,
Blueprints or cpp?
how should I do to play montage only once and not loop
why does my character bounce like this from this angle?
@trim matrix Looks like something is colliding with your spring arm.
interesting
I could be wrong, but that'd be my first guess.
@manic helm Depends. Neither is best, it just depends on your intentions. I think you can convert blueprint starts to CPP, but if you intend to use CPP, you can just start there and still use blueprints.
@trim matrix You can test it by turning off DoCollisionTest in the spring arm. If that's the issue, you'll have to disable camera collision channel on whatever is causing it.
there are collision channels whoa
yah its the collision test
turned off doesn't do it
@molten hound This might help with your missing 0 issue.
@undone imp Sorry to bother you again. I am trying to make a small hud so it shows the number of items found out of the 5 total. So i got all of my objects setting to visible when i am within a specified distance (all thanks to your help), which I am very happy about. Every one of those objects has the wasSeen boolean (as per your instructions). I want the number of items found++ if any of those items have their wasSeen set to true (and also to update that number on the HUD of course). So like as I find more and more items, the number in the HUD would go up by 1 each time. Whenever you have the time, could you explain how i'd achieve that with blueprints?
Thx's Authaer you're the man
@deft zealot
In your player controller have a integer variable "NumberOfDiscoveredItems".
Each time we find an item (as before), get this player controller and increment this variable.
Then in HUD, you can check it and display it.
There is a tutorial on unreal Youtube channel that covers Blueprint communication and casting. That would be very helpful for you.
I'm using a lerp vector to make an actor move from one spot to another, do I have to use a timeline for the alpha? Or is there something else I could use?
out of curiousity, are exam periods coming up that we have so many new users with super basic questions or something?
I'm not a new user. I just wanted to know if there was something else I could use. ๐
use whatever you like
you can use tick, or a timer, anything to increase the alpha
depends on what you want
Thanks for an actual answer. I really didn't want to use tick, I do my best to avoid doing so. Just wanted to know if there was anything else other than a timeline.
@vapid hatch Iโm sorry I had it in my mind that you were specifying via an enumeration silly me.
@vapid hatch since damage types are pretty much state objects, you could put an enum or integer in the class and switch off of those.
hello, silly question: how do I get an item in an array? i know I want index 1 or 0, do i need to do a for loop and compare to the required index?
ah, with GET node
had this hammer come from out of nowhere and now its colliding with my character and i can't select it in my viewport
Hello guys i'm back after 3 days of having my screen fail (had to get a second hand screen, it's much smaller)
@maiden wadi Thankyou man the AI is working good htanks for the advice
Might be attached to the mesh in a consturction script for example.
Or be a part of a skeletal mesh. You can attach meshes in the asset editor AFAIK.
@trim matrix
Now i'm creating a widget from an AI task, the widget is in fact being created but it seems like the variables for it are not being stored correctly, any thoughts?
hmm
see if its visible in the asset editor for the skeletal mesh
well, you are attaching a sword and a hammer. maybe the sword var is the same mesh?
i had both set invis
sec
its not
just was invis
also had it working before
i tried adding a hit event on one of the weapon blueprints and this happened i think
but i deleted it and it stays
restarted my game
and it isn't in viewport anymore
but it still there
colliding when i play
Is the hammer being spawn at any point from one of your blueprints?
wait, so what is the problem?
i have a hammer colliding wtih me
i just tryed reattaching to skeleton via socket
didn't work
i selected it
dunno why my other ones called 408
wait what?
i just deleted that hammer
and now its gone but this now my hammer blueprint thing is called 408 lel
in the hierarchy
weird man
i just renamed my asset
now i can't get that name
name it whatever
right click whole content
and click "fix redirectors"
or something like that
also restart the editor.
so i got my name back do you know how to rename the 408? in my world outliner?
in the details panel in the world, you can click on the name on top
and change it
thats per instance in the world
cant select
jumps to my third person character
instantly after
because its built with construction script
i think
oh,
in this case I don't think you can name it. But it also explains the high number
construction script runs every time you update the actor. so it just increments the name.
but i only have 1 of them in game right
but the name is not important. Its not visible in game.
yes, you have one. But I its spawned with a consturction script its a new one every time that consturction script runs.
If you move whatever has the script (player hcaracter?) it will probably update again
hmm
also.. thats an actor spawned with a construction script of another actor.. Im not sure how that works.. is that even possible?
not a good idea probably, even if possible.
thats usually for components.
well i guess its possible
lol
yah didn't change name when i moved
408 doesn't look to good haha
the name doesn't matter.
also, I think we are missing some important piece of information here.
cant do it like this
on my hammer actor event graph
you are using branch before casting.
oh, sorry
nvm
controller can never be hit.
You are getting a controller.
Controller is not the same as a character.
also.. player pawn probably is not of class "enemy character"
this should just be this:
hit> get the hit actor > cast to enemy character > take damage
also, yeah, my initial point still stands.
Order is wrong.
you are tying to compare if actor hit is the same as controller (impossible, you cant hit a controller), but also, you are getting a controller after casting which comes after branch so is not executed (thats why you got the errror)
yeah, this should work.
or at least is correct technically.
you probably also want to use overlap instead of hit if its a typical swing of a melee weapon.
hit is for blocking collision, and for various reasons its better to let the weapon pass thought the enemy, unless you have some weird physics based combat.
k
@trim matrix You might also consider the default interface for damaging. No need for the complexity of casting.
yeah.
every actor has it basically integrated.
call "apply damage" to deal damage and "event damage received" or something like that, to handle the damage being dealt.
so you can reuse if for breaking pots, or doors or whatever.
Yeah. Event Anydamage.
Very useful to avoid needing to cast. Reduces complexity by a lot.
i'll have to look at documentation
Probably a mad silly question but how would I go about hiding some of the digits in the "get seconds" function?
i.e Using only two digits instead of the 3 digits for the milliseconds pin
multiply by 100, round, divide by 100
I might be wrong, but I think there was also a node for converting float to string with custom formatting.
I mean how I set it up has it in a formatted string
This is awesome though i got my AI dead with my weapon worked out smoothly
It was just mostly the milliseconds, I forgot the maths behind it @undone imp
Also, just did a quick check, x100 divide by 1000
I get a 2 digit millisecond value
Which I'm going to round up or down accordingly
Again, thanks alot!
thanks man
anyone know why I cant find the InputAxis MoveForward node in my character blueprint?
@fossil thistle Do you have that input axis set up in your project input settings?
yea...I just realized thats what it is. i usually have starter content and this time i didnt
thanks for responding!
can copypasting blueprints cause weird issues?
Does anybody know how to fix this stretching i get from a screen capture 2d when i am resizing the window?
@trim matrix Looks like the resolution is affecting you ? try refreshing your material or the position of your screen capture when the resolution changes
I made a health bar widget to show above an npc's head, it works, but I dont want it to show on the screen when the npc is behind a wall, how can I accomplish this?
I made a health bar widget to show above an npc's head, it works, but I dont want it to show on the screen when the npc is behind a wall, how can I accomplish this?
@valid hound trace line from your camera to the point on top of your npc , if you find a block remove the widget
I'm new to blueprint coding could you show me an example?
just watch a youtube tutorial with line trace
I'm setting up a UI as part of a mod I'm making for ARK. When I have SetInputModeUIOnly, it works just fine, but when I have it set to a different input mode, it crashes when the UI should be put on the viewport. Any idea what's going on?
[2020.04.09-05.33.37:542][532]LogWindows: === Critical error: ===
Fatal error!
Unhandled Exception: EXCEPTION_ACCESS_VIOLATION reading address 0xffffffff
VERSION: 310.0
UE4Editor-CoreUObject.dll!UnknownFunction (0x00007fffb20306bf) + 0 bytes [UnknownFile:0]
UE4Editor-ShooterGame.dll!UShooterGameViewportClient::ValidateInput() (0x00007fff645d569c) + 27 bytes [e:\build\arkmodkit\internal\projects\shootergame\source\shootergame\private\shootergameviewportclient.cpp:463]
UE4Editor-ShooterGame.dll!UShooterGameViewportClient::ValidateInput() (0x00007fff645d53e0) + 33 bytes [e:\build\arkmodkit\internal\projects\shootergame\source\shootergame\private\shootergameviewportclient.cpp:366]
UE4Editor-ShooterGame.dll!UShooterGameViewportClient::Tick() (0x00007fff645d4c7b) + 0 bytes [e:\build\arkmodkit\internal\projects\shootergame\source\shootergame\private\shootergameviewportclient.cpp:554]
UE4Editor-UnrealEd.dll!UnknownFunction (0x00007fff82ad551a) + 0 bytes [UnknownFile:0]
UE4Editor-UnrealEd.dll!UnknownFunction (0x00007fff82f62f56) + 0 bytes [UnknownFile:0]
UE4Editor.exe!UnknownFunction (0x00007ff7d4e9b21d) + 0 bytes [UnknownFile:0]
...
(Top node works, but other 2 will cause the error above)
I've only started learning Unreal in the past week and I wonder, is it possible to make a full game using only Blueprint, if you keep the game somewhat simplistic?
Well damn! That's good to hear, if true! I just don't have the mind for coding.
Thanks, @weary dock!
No problem, ive only started learning blueprints properly a few days ago, so if you find something interesting out be sure to tell me ๐
Can someone help me figure out the solution to this problem?
@weary dock well it tells you your array has a length of 0, meaning it has no elements at all, so index 0 does not exist
@weary dock to avoid confusion, the minimum length of an array is 1, then the index of the only element is 0
i was stuck for 4 days, started over and had the core of what i want to do in an hour, i'm such a moron ๐
Hey, anybody knows for what is this variable? I was searching in engine sources and found some conjunction with datasmith.
UE 4.25 p6
can i get a spline if i know its exact location without getting them all and then checking their locations?
@trim matrix Can you help me in a bit more depth? I dont know much about blueprints yet so im struggling to figure out how to actually solve it. ๐ฆ
Does anyone succeeded to package Android game with DLC? I've succeeded to download the DLC from the server but now I don't know how to check if the DLC is installed on the device when I'm entering the game again. I've done this but it still shows the download loader.
@weary dock if there are no hits the array is empty, try adding a check to see if its empty, you can get its length and then do length > 0 , add a branch after that, then you can do nothing if the length is 0
@weary dock so drag off of the array, type length in the search box, then drag off of that, type >, then drag off of that, type branch
oh my god thank you so much โค๏ธ @trim matrix
@weary dock no prob
Close and reopen the editor just I case it's a fluke?
@frozen spear Tried everything, still having that issue
Why i cannot view my model in perspective mode in viewport?
@late tendon Still having this problem...
i rememeber you had some errors did you resolve those?
@late tendon you had some errors in your screenshot iirc, did you resolve those?
Yes the errors are solved
some time ago i was asking about getting variables populated that i calculate ingame available in the editor, nobody suggested to tick "call in editor", this solved all my problems, just in case it helps someone else at some point
@late tendon so how does it not work? does it just not display anything? what does work?
So the model is not displayed in the perspective mode of viewport, but other modes such as top,left,right modes of viewport works
@late tendon did you try resetting camera? (button on top)
Yes already did and restarted the project too
it must have a reason but no clue what it might be
Yeah.. I'll duplicate the blueprint and see
Try adding another skeletal mesh component and set it to something else...see it's it's the viewport or the model that's messed up
either way imho this is a bug, it shouldnt show it from one angle but not the other
kindof wild tbh lol
Yeah ikr
Yeah I've never seen anything like that
Only if the pieces are hidden... But I told him to check that yesterday and that wasn't it
What would be the easiest way to implement something like a database of items, kinda like this? With data tables?
Yep datatables
or just an array of structs
you make a struct of structs it will work the same way but then you'll lose access to the wonderful data table functions that makes getting information out of those a lot easier
Try adding another skeletal mesh component and set it to something else...see it's it's the viewport or the model that's messed up
@frozen spear Well, no change
array of structs though :p
I have found data tables to be extremely useful for spreadsheets, just be sure to not have the csv file open while trying to import since it will always fail
Still every invisible?
Datatables can store mesh info as well? I'd like each item to have its own
Yes you can store mesh's as well
if you go the array of structs route you can edit the values in teh editor, if its a ton of values datatable is probably the way to go
One of the things I love about unreal engine there is many ways to do the same things and you just choose the way that's best for your project
Well written spreadsheets make the data easier to edit for non techy people as well though
Depends on your needs I guess
Think something like passive upgrades in Binding of Isaac
Now that I think about it, some more custom upgrades might require some more work...
Huh, I'll have to think it through
I have a system where I have multiple spreadsheets with the same row names that's used to define resources
One with vital info and others for more specific, and then those are used in combination with a component system
if you can, use the index though
Things like "add 10 damage and make the projectile 5 slower" will be easy, but stuff like "bounce 5 times and shoot laser beams towards nearby enemies on each bounce" can't be handled via datatables or structs, I think
sure can, jsut need to split the logic and the data
If you need stuff like that I would have had 1 spreadsheet with information that all upgrades have and then an array of enums/class refs that define further information. And then that further information can be it's own spreadsheet for further upgrades that also share the same functionality
I'm pretty bad at explaining ^^
Still every invisible?
@frozen spear yeah XD
@late tendon you also tried reimporting right?
Go back and remigrate him from the other project
So something like BP_BaseEffect that inherits from UClass and has Apply() function, and then BP_BounceLasers that inherits from that. That BP_BounceLasers can be referenced in the datatable or the struct
Something went horribly wrong here
Yes i did, also duplicated the the blueprint and remade it
And now, when item is picked up, check if it's there and if so, call Apply()
You could do it multiple ways, I personally would have gone with components over inheritance but it all depends what you prefer or think is better
Never fiddled with the components approach, how would I go about it?
I restarted, and its working now ๐ , idk what went wrong, thanks though!
I would have kept the components as reusable as possible, for example one component for bouncing in case you want one upgrade with bouncing + laser and one with bouncing + rockets
And to make the upgrade get those upgrades I would have defined an array of class references in the spreadsheet where those can be added. And just because I want things to be easily editible I would have created a spreadsheet for the bouncing just in case I want to have different upgrades bounce more/less faster/slower etc
So I would have something like
modifiers = [
bounce,
lasers_on_bounce
]
foreach (m in modifiers) {
m.Apply();
}
?
I could send you screenshots in DM to not fill up this chat
Sure thing, I'd appreciate that
Here is my current Line trace, Would it be possible to update this so that what ever it hits gets a highlight ?
If so, please advise ๐
@dapper cradle Easiest way is usually just to swap materials or have a material that has a const that you can set. There's also shader things you can do as well but I haven't done anything like that just yet, like outlining certain objects.
Thanks @maiden wadi ill put that further back on the to do list then XD
Today is going to be about experimenting with animations and collision boxes ๐
I really need to get into animation stuff. Just making healthbars right now.
You seem to have such a good grasp on this system I couldn't imagine you having many issues. You working on a game ?
@maiden wadi i finally solved all of my misery btw, i started over and within an hour i had almost everything i want
Just a hobby project at the moment. May turn into something in a year, who knows. Trying something a little like The Force Unleased/Jedi Fallen Order, but without the star wars and in a more fantasy setting. Magicky and Dragony.
@maiden wadi Can you help me with my misery as well?
@trim matrix Nice! Drawing board is a good place to go back to often.
@meager spade What are you having trouble with?
It's not blueprints though, It's DECLARE_EVENT. The documentation says they are bound like dynamic multicast events but for those I just use AddDynamic(this, &MyActor::MyFunction) and that doesn't work for my non multicast event
@meager spade I don't see AddDynamic in the binding list from the documentation. Just Add(), AddStatic(), AddRaw(), AddSP(), and AddUObject().
It's not in the documentation but I know it works ๐
I always bind my functions to events like that, and it works as intended
Why doesn't this work to slow down the actor ?
Isn't there a walk speed variable you could grab instead?
If it has a movement component
Its is just an animation (non player character)
I managed to make this mannequin get destroyed when it travels into the trigger box, now I am trying to make it slow down instead.
This is in the level blueprint?
yes
I have no idea how that works with the level, but I think you're trying to set the level's custom time dilation.
I wonder if that works. Have to check now.
XD
Nope, does not work. Drag off of your BackWalkover and set the time dilation from that.
I was hoping that because I am referencing the mannequin it would work, after all the detroy set I used did work as intended and it looked identical
Ok so that worked @maiden wadi !
The reason I am doing this Is because I am trying to figure out a simple work around for the QTE Ive told you about recently. Tried a couple of QTE tutorials, wasted hours of time with no usable results.
I was thinking that I can somehow parent two small mesh (one for the left hand and one for the right) to the mannequin and make it invisible.
As the mannequin overlaps into the box it will slow down and the mesh i parented will become visible (it will be bright or glowing).
The player will overlap their hands into the correct boxes, hopefully causing the boxes to go invisible again (Bonus would be with an accompanying visual and sound effect).
As a result the animation would return to original speed.
As the skills become more complex there would be many situations where you have to do something at the beginning ASWELL AS something at the end.
I.e, In real life the landing needs to be supported as well as the take off.
Just to be totally clear, Im by no means expecting you to have all the answers, Its just that
I dont actually have anyone else I can talk to that would understand what im talking about.
and you have been priceless in your help/advice.
So you're trying to have the player move like the mannequin's animation. Are you having them inside of the mannequin, or are you creating two copies so they can do their own movement while watching the mannequin?
Hey, how can I make a projectile stick to movable object?
@visual granite As if to throw a Halo Sticky, or shoot an arrow at something?
@maiden wadi Im looking more in halo terms but I guess I found my naswer just attach to on beginoverlap
Is there a way to just mute all sounds while the main menu HUD is active?
sorry for asking this much, but how can i achieve so my tracing applies damage to all skeletal meshes that it overlaps instead of the first one only?
@weary dock Use a Multitrace, and trim the resulting array as you need and then for each loop.
i am using a multitrace, i dont know how to trim or use each loop tho, im very new
this is how it looks like
@weary dock Try to just do it off of a single loop for starts. Just a sec and I'll post something to help.
I'm just guessing but pull the OutHits to a foreach loop and pull the element instead of get 0
And then the completed would go to return, don't do the return in the loop or you'll terminate the function after the first iteration
That would work best probably. If you really need to check if it's a specific actor type, you can put a branch before the apply damage.
I personally hate tracing because I am pretty bad at vector math so I use it as sparingly as possible ^^
Thanks alot, it works ALMOST perfectly
The only problem is that my tracing could be a bit denser, sometimes it misses the target
I loooove vector math. Made a nice little recall ability a few days ago.
I would love to learn vector math from you if youre up to it ๐
Character saves 20 vector points and rotators over five seconds and on use, plays them backwards in a second.
my point is that when i hit you see those large gaps in the swing, and i cant figure out how to get rid of them
My strategy when doing vector math is an insane amount of trial and error ๐
hey, does anyone know any tutoirals or threads on how to make a radial menu but, the input works with a controller. If anyone can help that would be amazing ๐
Hey Guys
For Somehow this Boolean not working idk why worked first time after that not
Where are you using the bool after that?
before playing animation you can see the branch
its for notification message showing on right side i want to check if the message already showed so i can slide it up make room for new message
Is the default false?
yes
i even tried to store the constructed widget into an array and use the branch for loop and just moving the constructed one
it didn't worked because of boolean
But this is on construct. So when you create the widget object, it'll ask if it's true, it'll return false, and play the animation then set it to true every time.
I'm not sure? I don't exactly know what you're trying to do. There's no point in setting the bool anywhere unless you're using it somewhere else for the same instance of the object.
I want to check if the object already constructed so i will move it up
you know the push notification when you get more than 1 message its will start to slide up
Setting that will only affect it on the instance of the class. So if you have three of them, and you reference the third one constructed, and change it's bool, it'll be different than the first and second one. But if you delete all three and construct new ones, they'll just have whatever the default value is.
Would using box collisions to mark where I want my building system to snap more structures be a good method? Along with that I could hit it with the players line trace to start snapping.
Don't see why not. If it works without issue, go for it.
The key word being IF it works without issue lol.
Well, sometimes you have to make something to see if it works.
does any of you think it would be possible to use received notify begin instead of tick and increase the timer manually somehow to make the tracing denser?
@weary dock can you sum up what you are trying to achieve? Some kind of hit detection for a weapon swing?
yes exactly
i am trying to achieve a proper hit detection with multisphere tracing for my weapon swing but with the received notify tick it doesnt do it often enough and that causes it to have gaps and sometimes miss the enemy even though its clearly hitting it
- if you have a weapon, you can use mesh collision, that will be synced to animation.
- you can make a custom mesh with the exact size and shape of your swing and test collision on that.
- You can make few traces at the same time. Simple loop.
- You can adjust the size of the trace to overlap better.
- It doesn't have to be perfect, players wont notice ๐
I get all of it but what do you mean by number 3?
also im not going for perfection, its just missing alot from a certain angle so im trying to make it not ruin the fun
Well, I assume you are doing 1 trace per frame. You can do 2. or 3, or 10. Just offset them by few degrees.
use a for loop
with notify tick or notify begin?
whenever you want.
Doing too much per tick is not a good idea for performance reasons.
you can do only one check in the middle of the attack.
Or one at the start and one at the end
I'm curious about something. I'm trying to work on a shift teleportation mechanic, and it uses a timeline with a lerp to shift to the desired location. However, I'm trying to figure how I can see how much time is left on a timeline and set that to the retriggerable delay if the player is currently teleporting
Here's what I have so far
@trim matrix you can add a new float curve to the timeline that goes from 0 to 1
thats your time ๐
Are you talking about another lerp?
Okay.
set it so that it has the value of 0 at the start and value of whatever the duration of the timeline is at the end.
Then I should hook up the result of that to the retriggerable delay?
timeline will output it. and you can save it.
The thing is that how is that different than what I have my timeline set as?
It's set to 0.5 seconds and goes from 0 to 1
In general, if you are using timelines, delays etc. all at once, I suggest skipping that and doing it manually per tick.
Thanks for telling me.
I managed to figure something out which will let me do what I want.
Is there a way to make a line trace go through certain box collisions ?
But hit others
@dreamy ice You can add a new trace channel and set it up to interact only with what you need
In project settings.
Do multi line traces not work for the visibility channel?
I'm only getting one actor back when the line should be going through two
@deft zealot In BP there is no such thing as global variables rly. Player Controller and Game Mode are good places to use for this purpose.
@undone imp I am still doing what i was asking about yesterday, so I was thinking of just having this global integer variable somewhere (where I can easily access it from other blueprints), and then for the items appearing (your code from yesterday) blueprints, ill just increment that variable by 1 if wasSeen is true
Does that make sense and sounds "workable"? ๐
@deft zealot I already suggested using player controller for that.
It exactly what it can be used for.
@undone imp But what is that exactly? A blueprint that specifies the character movement? Isn't that just the first person blueprint since it has all that logic in there?
usually player consists of two things: Player character or player pawn, that is, well, the character, a car, a plane, a tank or just a camera. Whatever the player is in the game,
and Player Controller, which is.. an interface between the human player and the game. It handles input and anything major related to the state of the player in the game.
For example:
If you have a game where player has health and can die, you store that health in the character, but if there is any kind of score you would store that in controller. When character dies you can destroy that actor and spawn a new one, resetting the value of health, while controller will persist for the whole game, maintaining the score.
Obviously its more complicated than that ๐
A lot of classes make a lot more sense when you put them in multiplayer terms. For single player, half of them are useless, and the 'should' do is kinda up to very personal preference.
Game mode's useful for world stuff I find. States are pretty much useless in single player, since they're meant to get and display information to other players.
Most useful thing to note is that Game Instance is the only thing that persists between changing levels.
Game mode, controller, etc. get reset but game instance stays.
So i linked my variable to the HUD i am displaying on the screen. I modified that code for the actors that makes them become visible, to also increment that "items found" variable by 1, but the number doesnt increment for some reason
That's the part of the code where if the item was NOT seen
I probably didn't do it right ๐ @undone imp
You need to get the variable from the controller and then increment it.
the increment node (the one on the bottom) has arrows - it means it has to be connected to be executed (white lines).
so after casting (good so far), drag from "AsFirstPersonCharacter" and "Get ItemFound", and Increment that.
Does Add Torque in Degrees go by world or local vectors? I'm trying to make a physics based hover vehicle and whenever it's pointing even slightly upwards, attempting to steer causes it to go nose up until it start spinning like a drill.
@undone imp I still need the set items found right?
Nevermind, got it
Thank you very much
Oh yeah, is there a way to mute the sound in the menu hud? Like while the menu is active
My menu snapshot is like by a motorbike unfortunately so the engine sound is there during the menu
Hello!
Any1 that can help me? im trying to make a Character creator where i can switch between some hair styles and i got that to work but how do i play with the ''new'' character? ๐
@prime merlin that depends on how you made the creator? Do you transition to the new map after that?
or, what seems to be the problem?
If you have an existing pawn you can simply call "possess" to take control of it
Character customization is a rather complex place to start working from.
Well, that depends on the scope. Dynamic morphing of character face vs swapping a tshirt material ๐
@undone imp when i try it, i have 1 game level where i make my character with different hair and when im done i press a button to open my ''main'' level but the char dont come with me to that level :/
hehe, I was literally talking about that minutes ago :
i just want to swap hair (and face colour if the hair is not hard xD )
Most useful thing to note is that Game Instance is the only thing that persists between changing levels.
Game mode, controller, etc. get reset but game instance stays.
when you open a new level, everything gets despawned and spawned again. so all variables are reseet.
you need to store the character info in a game instance or in a save file
to move it between levels
i tried to google and youtube the problem but there is nothing about swapping hair or anything like that, every1 is talking about morphing but i dont want that
it doesnt actually matter what you want to do, and how your customizer works. You make a character in one level and move it to the other. T
lets say you have a character thats made up form few mesh - slots. Hair mesh, head mesh, body mesh, right?
In the customized you pick which mesh you want to use for the hair. etc.
You need to store those choices in game instance, and when you load the main game level, load them and updated the meshes to match
but how? im a noob to this xD
make a new bp class that inherits from game instance, go to project settings (maps and modes) and change the instance to your new class.
To that class add variables for different meshes. Once player confirms the character creation save those choices in those variables.
When the new level is loaded, take those vars and update the character.
If you have a problem pls be more specific ๐
Inside an Actor I have aa ChildActor, which is another BP Actor.
Now I want to change the variables inside this Child Actor.
So I cast the ChildActor to the Actor.
But I get the error message, that the Child Actor does not inherit from the Child Actor Component?
