#blueprint

1 messages · Page 127 of 1

old forge
#

Hi Guys! I am making a VR Game with the Oculus Quest 3 controller grip button as my input action. Currently, when I press the grip button, it activates all of my dialogue at the same time. I suspect the button is very sensitive and triggers each iteration really fast. How can I make each step wait half a second before accepting another input/iteration?

dark drum
old forge
#

@dark drum

dark drum
old forge
#

i seeeee

#

gna compile and run now

lofty rapids
old forge
#

how do i do that lol

lofty rapids
silent drift
#

That is the reason I haven't really dipped into it either.

remote meteor
#

you might want to change the trigger mode to pressed instead, if you want it to only trigger once

lofty rapids
# old forge how do i do that lol

on overlapping actors comming out of get overlapping actors, right click and do promote to variable, name it something, then plug it into the execution (white lines) before the foreach, then drag from that into the foreach instead of using get overlapping actors directly

#

because foreach element that will run so it's a pain in the ass

#

it doesn't fix your problem, it's just something i learned that really helps with looping

limber parcel
old forge
#

@dark drum How do I make it so the user input isn't valid until the talk audio has finished playing

limber parcel
dark drum
#

Why Epic do this to me. 😭

old forge
#

im very new

lofty rapids
#

i use booleans all over the place for stuff like that

old forge
#

@dark drum @lofty rapids this is my attempt, but it doesnt seem to work

#

i can still spam the input button and it will replay the dialogue audio

lofty rapids
old forge
#

yea

#

theres only one actor

lofty rapids
#

your enabling it right after you call the talk which is most likely not after the dialogue is complete

old forge
#

theres me, VRPawn, and the NPC Jameson

old forge
lofty rapids
#

how do you play the audio ?

old forge
#

@lofty rapids

#

like this

#

i also need to figure out how to only play the audio at the NPCs location

#

i can walk around far and still hear it

lofty rapids
#

i have not done enough with sound to be of much help there

#

but somehow you want to have an event for when the audio is done

frosty heron
#

that's what define how far a sound can travel etc

dark drum
remote meteor
#

spawn sound at locaiton

#

then you get the component as a return, then you can bind finished event

old forge
#

testing rn

old forge
#

perfect!

#

just gotta figure out how to only play the audio at the NPC's location, and make it quieter the further i walk away

remote meteor
#

and remember the "ears" are at the camera location by default, you can change it if you need

old forge
#

I have allow spatialization on

trim matrix
#

Here's my attempt to make the following Blueprint from the following C++ code:

void ValidateTime(unsigned short& hour, unsigned short& minute, bool& isAM)
{
  unsigned short totalMinutes = ((hour % 12) + (isAM ? 0 : 12)) * 60 + minute;
  totalMinutes %= 1440;

  const unsigned short VALIDATED_HOUR = (totalMinutes / 60) % 12;
  const unsigned short VALIDATED_MINUTE = totalMinutes % 60;

  hour = (VALIDATED_HOUR == 0) ? 12 : VALIDATED_HOUR;
  minute = VALIDATED_MINUTE;

  isAM = totalMinutes < 720;
}

Can any of you skilled guys tell me if I did this correctly?

Because my blueprint isn't acting accurately as the native code is…

remote meteor
old forge
#

ok i see with override i can set the distance myself

#

FUCK EVERYTHING WORKS

#

LETS FUCKING GO

#

big thanks @dark drum @remote meteor @lofty rapids @frosty heron

lofty rapids
lofty rapids
trim matrix
#

the isAM is a bool in the native code I want to copy from but in the Blueprint it's an enum

#

is this ok to do? is there a better alternative?

lofty rapids
#

to make it 1 to 1

remote meteor
trim matrix
#

Oh

trim matrix
trim matrix
#

When I add 1 min to the time for debugging, the AM and PM completely changes

#

For debugging, this is how I'm adding the 1 min

#

Why is it doing this?

lofty rapids
#

i would imagine for some reason total minutes is < 720 ?

#

print string total minutes

#

or it's flip flopping

#

it looks like the enum is flipping each time so i would look at the input output of that

trim matrix
remote meteor
lofty rapids
#

so "accurate" idk

trim matrix
#

ig 😔

trim matrix
remote meteor
#

it is these node in the end

#

and passes by reference

#

idk why it is like that, but accurate to that code function

lofty rapids
remote meteor
#

oh

#

ops

#

reversed sign

#

wait

#

lmao

#

im dumb

gentle urchin
#

Modulo💝

gentle urchin
#

Homemade?

remote meteor
#

yea

gentle urchin
#

Or new in 5.x?

#

Neat!

remote meteor
#

homemade, unreal one doesnt work well with negatives

gentle urchin
#

~~Iybgot ~~they got an abs there iirc

lofty rapids
#

so you can use it on the next go ?

trim matrix
#

I'll try

fervent nova
#

Hello! Does anyone know how to remove duplicates from an array. (Fairly New to working in Blueprints)

remote meteor
#

dont use a TArray in the first place, use a TSet
when you add them to the array, you can use AddUnique

fervent nova
#

Well it might help if I explain kinda what I'm trying to accomplish. I'm parsing through and xml file to pull some data out to make into variables and the array is coming from a for each loop that is obtaining the attributes value. So I guess I'm struggling understanding how to properly setup the Add Unique function. I'll screen shot what I have right now. It's crude but it seems to be getting the job done.

random pulsar
#

hey guys

frigid summit
#

i finally fixed it kind of by not fixing it at all

frigid summit
lofty rapids
random pulsar
#

i want to enable complex collision for these 7 objects,how can i make it?i tried matrix but there is no option like this and if it is the one i showed what do i select there?

remote meteor
random pulsar
#

or is it in importing settings?i disabled the simple collision when imported so i can enable the complex

lofty rapids
fervent nova
fervent nova
#

This is my example xml if this helps.

            <block lx="-0.5" ly="-0.499999881" lz="0.5" ux="0.5" uy="0.499999881" uz="1.5" index="121" material="5" look="1" up="3" color="ffbfada3"/>
        </item>
        <item parent="1" index="2">
            <block lx="-0.5" ly="-0.499999881" lz="1.5" ux="0.5" uy="0.499999881" uz="2.5" index="121" material="5" look="1" up="3" color="ffbfada3"/>
        </item>
        <item parent="2" index="3">
            <block lx="-0.5" ly="-0.499999881" lz="2.5" ux="0.5" uy="0.499999881" uz="3.5" index="121" material="5" look="1" up="3" color="ffbfada3"/>
        </item>```
#

So you can see the index is a block identifier for what block is being used. But I don't need the duplicates. I just need the 1 value.

#

But when making the array it comes out with a ton of duplicates.

#

So when I make the array here it contains a ton of duplicates. I'm trying to figure out how to do the add unique that you were talking about.

#

Hopefully that helps.

lofty rapids
#

why are you make array with one item ?

#

you probably want an array variable

#

if your wanting to group them

fervent nova
#

hmmm

#

maybe idk if that would work. it might. I just need the block index to use to make procedural meshes. Then I plan on getting the lx,ly,lz variables for the sizing of the meshes.

random pulsar
#

oh,the same

#

i just couldnt find it

#

now i did

fervent nova
lofty rapids
#

you would add unique like suggested and you would have an array of the values

#

but how to know which is what ? maybe put that on the the thing you spawn so it knows ?

fervent nova
lofty rapids
fervent nova
#

No nothing invalid. Which makes me think that it doesn't matter that I have duplicates.

lofty rapids
#

well if you have duplicate values of that attribute

#

that doesn't mean necessarily that you have duplicate elements

#

see you have multiple index with same value, colors as well, but it's a different element

fervent nova
#

No no duplicate elements as those are different blocks.

#

idk, maybe I'm going about this the wrong way...ugh...

remote meteor
lofty rapids
#

i mean it doesn't look like a very efficient way and a lot of loops and stuff

fervent nova
#

Lol basically I'm trying to take the ship saves from Avorion (the game) and use blueprints to build procedural meshes in unreal. Hense turning Avorion into a 3d modeling tool. It's ambitious but could be kinda cool.

fervent nova
lofty rapids
#

are you just storing a list you can render ?

#

like a list of objects basically that you want to render with certain properties ?

#

xml is older tech, modern stuff is json

#

but it could work either way

#
<root>
  <object index x y z />
  <object index x y z />
</root>
fervent nova
#

yeah so the save files contain the index (Block Type) being used and then the x,y,z cord information for where each block is placed. So my idea was to create a blueprint that would convert the ship save files to useable data to then create procedural meshes. I'm no programmer so needless to say this has been a whole thing.

nocturne fossil
#

cant i see who got damaged with eventanydamage?

lofty rapids
#

jus use the root and check all children, then go through each one and spawn it

trim matrix
#

Thank you so much, now it works without flaw @remote meteor @lofty rapids
🙏 ♥️

fervent nova
#

this would work if all the blocks were the same right? Or wouldn't I need some other thing to say that like index 1 is block, index 2 is slope, index 3 is sphere etc.

lofty rapids
#

type="block"

#

type="sphere"

#

etc...

fervent nova
#

Ugh can I just borrow your brain for a night. I promise I'll give it back.

fervent nova
lofty rapids
#

as far as the data goes, that's the simplest way to do it, you won't need so many nested loops

#

it'll be faster

#

also cache the array before you loop it

warm cypress
#

Hello just had a quick question, I'm working on my first game that I think would be pretty simple, its just a game within a PC (similar to kinito pet) I have a computer model im using but I'd like to know the easiest way to get my computer animations like chat boxes and such on to the modeled computer, I thought about mking each frame a texture but I feel like theres gotta be an easier way

fervent nova
lofty rapids
#

if you can, do that, and then plug the variable into the foreach

#

it won't run the get for nodes each time the foreach runs

lofty rapids
#

maybe break it up into chunks if you can

#
<root>
  <section id="1" />
    <object x y z />
  </section>
  <section id="2" />
    <object x y z />
  </section>
</root>
#

a little more code but if your xml was large you could split it into chunks to load stuff only within a certain area, or however you wanted ig

fervent nova
#

yeah it's a rather large xml for sure.

#

So like this?

mortal coral
#

I've got a math problem that is a little beyond me.

How would I go about determining if a Ray is within a Cone, and if it is not, not clamping it into that cone?

#

the origin of the vector will necessarily be the tip of the cone

lofty rapids
#

that might actually be better than duplicating the array but yes like that is better

fervent nova
lofty rapids
#

see if you can make it not pure

#

so you don't have to duplicate the array

fervent nova
#

Doesn't look like I can.

lofty rapids
#

ok then thats fine

#

it should run better like that

#

but a huge xml you may want to split it up for memory sake

#

memory vs performance, if it's too much just use the node itself

fervent nova
#

Thanks man. Much appreciated.

lofty rapids
#

on something large i've never done it but you may want to look into reading files as a stream

lofty rapids
#

if you make a blueprint function library, and do some code in a function, it will greatly reduce the time it takes and it won't fail but freeze the game if not in one tick, so you can load really large stuff

#

so if you have > 500 or somewhere around 1000 in bp your kind of f'd

gentle urchin
#

Not really accurate but

lofty rapids
#

well i had the problem myself when looping

#

around the same amount

#

it does depend on what exactly your doing but a large array in general and it breaks

#

normally in programming 1000 things is nothing

gentle urchin
#

Depends on what exactly you're doing, if you need it done in one frame, and how you're doing it

#

Frame slicing is an option

#

But yeah larger iterations usually benefit greatly from c++

#

Its one of the bigger isolated payoffs

sick sky
#

in editor blueprints, AI controllers doesnt exist on play ?

#

player controller are accessible

warped juniper
lofty rapids
#

when it comes to loops for sure

warped juniper
#

I thought that was common knowledge. But it's neat to see a more clear example

#

I still need to get some better C++ knowledege

lofty rapids
#

mixing the two is really powerful

#

with a Blueprint Function Library you can off load all sorts of stuff

#

i know a bit about programming so for me it's not too difficult

#

but i use bp for whatever i can

uneven hedge
#
UATHelper: Packaging (Linux): LogInit: Display: LogBlueprint: Warning: FMemberReference::ResolveMember (K2_EndAbility) bSelfContext == true, but no scope supplied!

Any chance this could happen when EndAbility is called via a macro?

faint pasture
#

it was a lot of math, and big loops

lusty sphinx
#

I'm currently trying to follow along this tutorial to make a scalable/modular system for handling gameplay tags and adding listeners. The problem with the tutorial's approach is that it isn't too scalable cause it seems I need to keep adding separate event dispatchers on top of adding their bind/call events for every gameplay tags handled through a switch on gameplay tags. Is there any way around this, or should I just not bother trying to handle bind/calls inside this BPC_GameplayTags.

https://www.youtube.com/watch?v=wjHzgWylHCo

This is the series to watch if you want to create a role playing game in Unreal engine with rich, deep RPG systems and advanced functionality.

In this episode we describe the aim of the course a bit more in detail and start preparing our project for the upcoming episodes.

Beginner tutorial series: https://www.youtube.com/playlist?list=PLNBX4kI...

▶ Play video
warped juniper
warped juniper
#

Sure 8ms isn't much but that's less than 1% the original time, that's just.... WAY too good not to implement.

faint pasture
#

I had a line of sight system that shot traces from the viewpoint towards corners, and did math to figure out if the corner was blocked on the left or right, and did some triangle ordering stuff

warped juniper
#

Ah interesting. All I have for Line of Sight is a collision based system that makes dynamic collision meshes...

#

It's not as fancy but doubles for making the visibility

tight pollen
#

I have 30 float variables and I need to have a separate timer for each variable. Is there a way to create 1 component that will have all the functions for a given variable and this component can be used in another component?

lofty rapids
tight pollen
#

I just have to update these 30 variables all the time and each of these values ​​will be different

warped juniper
#

I feel I could use that for some systems I have...

tight pollen
#

maybe there is a good way...

warped juniper
#

They are very simplistic but overall important for my game

#

I talked about it to you before engage

#

Though at this stage, performance and efficiency may not be the best focus.

faint pasture
#

Although I've gone away from that system and now just do a bunch of traces without aiming at corners in particular

warped juniper
# faint pasture

Dang, it even has partial model rendering! This is some good stuff.

warped juniper
#

Yeah but I couldn't figure out how to attach masking to that

#

So it's impressive for me.

faint pasture
#

This is the current system which more "shotguns" traces so it doesn't rely on corners and fancy math

warped juniper
tight pollen
#

is there something in the unreal engine that allows me to create 1 variable with all the functionality in one place, and then use it in a component in which I will duplicate this functionality x30, assigning a unique name, etc.

warped juniper
faint pasture
tight pollen
#

something like Macro, Function library, but with replicated variables

warped juniper
#

I've never seen the dots though

faint pasture
#

dots are just to visualize the trace endpoints

warped juniper
#

Ah fair.

faint pasture
#

and a bit of math to make it equal distance between them instead of equal angle

warped juniper
#

Hm but if I do the traces part and relevant logic only ins C++ and most of the rest on BPs I assume it would still be a massive improvement.

faint pasture
#

yeah the rendering on my end is still BP

#

i'll link the plugin so you can poke around, it's dead simple

#

the C++ code spits out an array of triangles to be drawn to a render target, which is then used in post process for visualization and in materials for masking

warped juniper
#

Oh thanks. I personally don't have much to do for visibility... BUT cone shaped attacks are one of the banes of my life

#

I really wanna implement them but they are this unsung, strange thing...

tight pollen
faint pasture
#

cone shaped attacks should just be a sphere trace + dot product test

warped juniper
#

I even thought about modelling a cone shaped custom collision! I got that desperate.

tight pollen
warped juniper
#

I mean a cone with a flat top.

#

And bottom

#

Less flamethrower, more like swinging a blade

tight pollen
#

and will attach them to the character

#

is it good idea?

#

someone can help?

#

I just want to create something like: I have 1 base component with all the functionality, replicated variables, etc. and I want to use it in another component that will be attached to the character.
\

#

is there simply no other option than to create 30 variables connected to separate timers?

lofty rapids
#

you want to attach a timer to variables ?

#

are they floats, integers ?

tight pollen
#

floats

lofty rapids
#

because you might be able to use an array

#

but you want a component in a component ?

tight pollen
tight pollen
#

but it doesn't necessarily have to be this if there is a better solution

#

I was thinking about creating 1 base component with functionality and then duplicating it and attaching it to the character with another component that will manage all the other components

dawn gazelle
#

As far as timers go, if you you can work a little C++ in, you could create objects that have a world reference and you could spawn them to keep track of the timer for a specific variable as needed.

tight pollen
#

any solution in BP?

dawn gazelle
#

Using an actor

tight pollen
#

actor with 30 components and making a parent actor out of it?

dawn gazelle
#

You should only need a single component.

tight pollen
#

but I need a separate timer for each variable with all the rest of the functionality

#

e.g. I want to track the health of each bone in a character

jaunty solstice
#

Does anyone know if there is any way to detect a Mouse Up event in a Construction script?

I have a Actor Blueprint containing a PCG graph and Spline to control the bounds. Lets call this BP_Parent
The PCG graph elements are all themselves Actor Blueprints being driven via Editor tick.

Whenever I modfiy the PCG graph via the Spline, I also need to manually also do a PCG > Cleanup followed by a PCG > Generate.

If I could somehow capture a MouseUp event (the end of my Mouse drag and Spline manipulation) in the BP_Parent construction script, I could simply get a reference to the PCG>Cleanup and PCG>Generate methods.

dawn gazelle
# tight pollen e.g. I want to track the health of each bone in a character

The component would handle that.
When you want to manipulate an attribute, your functions can take reference to the variable holding the attribute value and manipulate it "by-ref".
When you want to create a timer for an attribute, you'd spawn an actor that contains the timer logic that calls back to the component that spawned it, as well as a means of referencing to the attribute so that the timer logic can call to the component to manipulate the attribute. When whatever logic is done with the timer, you can destroy the actor.

dawn gazelle
#

Optimal would be to use C++ so you can make objects that have a world reference rather than using actors for the timers. You don't want to have 30 components on an actor that all do the same thing just with one variable being different.

tight pollen
#

ok, thanks

dawn gazelle
#

Consider something like this just as an example - you'd define what attributes you need before hand, you can create an enumerator that matches up with the attributes. You can use that enumerator to make select statements to then drive things within the component.

gentle urchin
#

pretty neat

#

I'd make it more generic with some array/map of the data, but yeah 😄

#

enums are often more clear cut i guess

dawn gazelle
#

Unfortunately for timers, they bind to the specific delegate, so if you have a single delegate defined on any single component or actor, the timer system will only bind to that delegate once - this makes it impossible to use a single event to trigger logic for multiple things at different times. The concept of using an object or actor is that each of them is then treated as their own unique entry by the timer system.

gentle urchin
#

"Scer2 — Today at 9:39 PM
but I want each variable to have a different frequency of change"

#

tick (or highest suitable interval timer), manual tracking of last refresh

dawn gazelle
#

The only issue with Map is that it doesn't replicate, but if this is entirely single player it would be a fine solution.
Multiplayer could use an array but would require you to loop through it each time you want to make a change to any particular value in order to get or change the value which isn't very efficient.

gentle urchin
#

you can combine those

#

if you want to

#

map for fast lookup to the correct index, if the array was of notable size

#

doesn't need to be replicated, just needs to be identical server/client

dawn gazelle
#

Yeah true

gentle urchin
#

It's what im doing for my equipment comp rn 😕 feels dirty as hell since it's so tiny

#

15 elements, not worth the lookup optimization xD

languid hemlock
#

I use SetFocus function to keep ai looking to player. It looks, but rifle doesnt because rifle is at right part of pawn and it doesnt look to character correctly. Where could i do wrong? Or how can i fix that?

#

Line Trace is forward from muzzle

lofty rapids
#

can you add a rotation if he's in firing mode ?

#

either that or change the animation maybe ?

languid hemlock
#

I thought maybe there was a function to synchronise the rotation of the two actor

stiff chasm
limber parcel
languid hemlock
drifting finch
#

here is the bp

#

can someone help like i made a character switch system i'm just using the paragon characters for now but it works so far but when i switch to the character on the back for some reason the material get mixed up any one know how to fix this

unique turret
#

Hey guys -- any ideas for this one? I'm trying to create a simple physics setup where the door stopper on this screen door sort of behaves like a rotating piston. In my head, it should be easy enough, but I've wasted an afternoon trying every physics config I can think of, nothing has come close to working. How would you approach this? The door itself is setup, I just want the piston arm to follow the door when it open (point A rotates and to follow point B when the door opens).

dawn gazelle
finite hearth
#

Is there a trick to making homing projectiles more reliable? I'm finding that if the target actor moves, the projectile will sometimes over-shoot and end up orbiting the target.

drifting finch
dawn gazelle
#

Meshes are separate from Materials

drifting finch
#

oh i thought it like in the editor when you switch the mesh on the component it auto populates the materials

coarse tide
#

I'm working on a VR game and I've figured out how to get in and out of my car, but the camera keeps spawning in the middle instead of where the camera is. Any ideas?

stiff chasm
#

Unreal is Saying I'm Hard referencing a class, but I've used a soft class reference only?? what do I doo??

drifting finch
dawn gazelle
#

Eg. How can you reference a class without knowing something about the asset that contains the class?

#

The definition of the soft reference variable is essentially a reference to the asset.

stiff chasm
#

But in that case why isnt it showing it as a Soft class reference in the reference viewer?

#

Like this

#

I'm trying to Reduce my sizemap on my game Instance

dawn gazelle
#

It won't show as a soft reference because you have a hard reference to the asset.

stiff chasm
dawn gazelle
#

You do, simply by having a soft reference in your blueprint.

stiff chasm
#

But then

dawn gazelle
#

Change the soft reference to "Actor" then it would no longer need to load your asset.

stiff chasm
stiff chasm
dawn gazelle
stiff chasm
#

I think it'd be more optimised to use a soft one and Load it once the speficif reference has been selected,

#

or let me try make it hard and see what happens

#

because I think it normally loads all the child classes, or atleast the selected child class into memory

frosty heron
#

If you are going to show the sequence in that level regardless anyway, might as well let load it in the loading screen or when the map is open

stiff chasm
#

or or or, maybe I'm wrong about it needing to be specific

#

I'll try making it generic

dawn gazelle
#

One way to think of it better is looking at things like Textures or Sound Effects.
If you use those as "Soft References" then you don't necessarily need to load the specifc texture or sound effect until you need to use them - the engine will natively always have "Texture2D" and "Sound Wave" loaded which are the "class" of the object, so these are hard referenced.

By specifying your "BP_FighterParentClass" as the soft reference type, that means you are referencing the "BP_FighterParentClass" as a hard reference to that asset because you've defined it in the game instance. If you were able to use "Actor" as the soft class reference type then it wouldn't appear in the size map at all, but could still contain a reference to your BP_FighterParentClass without requiring it to be loaded.

stiff chasm
#

This is my old code, is it safe to say this is a bad use of a Struct

#

Should I have had it as individual variables instead?

frosty heron
stiff chasm
#

Gonna recode this whole thing

#

this is 3 years old I think

hallow compass
#

i have changed a bunch of input variables on some public bp functions, and now some of the assets that implemented those functions will no longer open, resulting in a crash.

in my specific case its functions on a control rig library, used in control rigs. maybe the crash is caused by the autocompile functionality.

Does anyone know if there is a way to rescue the assets that implemented the old functions? I am happy to edit some text files, look into the source code or anything else. I just dont really know where to look atm :/

frosty heron
#

@hallow compass do you use source control?

hallow compass
frosty heron
#

But anytime it happend to me now, i just discard changed in the source control

#

Happend to me for my animation stuff too

#

Mainly physich assets

hallow compass
#

yeah i thought that was the case :/ but literally any time i add an inpput to a global function, all previous control rigs will crash

#

i tried to disable compile/autocompile from the control rig source code, but it still compiles somehow on launch. maybe editing source files from the general plug in library doesnt work as id expect or idk

frosty heron
#

Maybe Run on debugger and see what the crash is about

hallow compass
#

so it fails to check that cause it doesnt exist. but if i could open the rig before it checks for that stuff like a normal bp i would be able to refresh the nodes

#

at least thats my hopeful interpretation'

frosty heron
#

I assumed "global" function is of your own making?

true wind
#

Just came across what I consider to be novel, maybe just boils down to me being dumb, but I have a BP and a C++ component attached. The BP seems to be calling the component Constructor/BeginPlay on state change ( I have a bool property I use to trigger it to move ). I'm trying to achieve like a portcullis that closes/opens, but I'm finding it challenging to do that without being able to say determine it's original location

hallow compass
hallow compass
true wind
#

The component works on a static mesh, there is some extra business going on with BP

hallow compass
true wind
#

and I'm triggering, in PIE via a bool property toggle

#

but when it flip the bool, begin play is called again and so I lose the original location

sage lagoon
#

Something bizarre is happening to one of my widgets. This one is designed to let the player move from one spot in a vent maze to another. (Image #1) Every time a button is clicked and there is a path ahead, the player moves forward. Normally, when any of these buttons are clicked, the arrow buttons are supposed to disappear then reappear after a five-second timer delay. But now, when a button is clicked, they stay on the screen. I have a Timer delay (Image #2), but it seems the program just skips it. What could be the problem?

hallow compass
true wind
#

To be clear ... it's BeginPlay on the component

hallow compass
true wind
#

When I attach same component to a StaticMesh for example ... works fine

#

BP has nothing in construction .. I basically convered a static mesh to a blueprint class

#

no event graph, bupkis

#

somehow on a state change, it's re-calling begin play in the components

sage lagoon
lunar sleet
sage lagoon
lunar sleet
#

Is there a Visible checkbox on the widget panel?

sage lagoon
#

Are you talking about the Set Visibility node or the Visibility element of any of the widget's buttons?

lunar sleet
sage lagoon
#

As in enumerator?

lunar sleet
#

Yeah

#

Regardless, if that same code worked before but not now check if that code is actually firing and if that branch is actually true

sage lagoon
#

Actually, I did put in breakpoints and I removed certain nodes and can confirm the icons do normally disappear when set. The problem is that the code seems to ignore the Timer which delays by five seconds and goes right to making the buttons Visible again.

lunar sleet
#

See if that does it

finite hearth
#

What might cause my "Play Montage" node to immediately be interrupted?

sage lagoon
#

Which of these, then? The bottom one?

lunar sleet
#

The variance is how much it can vary

sage lagoon
#

Oh. I tried the Time there, and the program still skips.

#

Here's the whole part.

lunar sleet
#

Make sure FuncLongDelay isn’t being called elsewhere

sage lagoon
#

Nope, looks like this is the only one.

lunar sleet
#

Ctrl+Shift+S , Alt+F4 for sanity’s sake

sage lagoon
#

I just remembered something. Let me try it.

lunar sleet
#

I don’t rly see where that event is calling the stuff in the second screenshot either

sage lagoon
undone bluff
sage lagoon
# undone bluff wth is that delay for

This occurs during a level sequence in which the camera moves down one path in a vent maze. While the three navigating buttons are Collapsed, the Delay keeps the arrows from reappearing until the sequence has finished.

#

It and the Timer are included to force the program to take the pause when needed.

undone bluff
#

but why are you making them visible twice

lunar sleet
#

Doesn’t look right

#

And normally the timer waits the first 5s before firing the event, so something else is wrong

sage lagoon
# undone bluff but why are you making them visible twice

I'm not quite sure of what you mean. But first, here is the first of the "North Button" branch. The three buttons are set to Collapsed. Normally, they would be Visible after the custom event which we just looked at, but the program just skips the Timer delay for some reason.

#

Because of this, the arrows are on the screen during the level sequence when they are not supposed to e.

#

*be

#

This is how it was before.

#

I've removed the Delay from this custom event. Now the arrows are still on-screen when they aren't supposed to be. I feel like this custom event is missing something.

undone bluff
#

so you aren't setting them to visible at all?

sage lagoon
#

I am. It's kinda hard to see on that one screenshot. One second.

undone bluff
#

yea you are calling an event that starts the timer, then immediately afterwards setting them to visible

#

the timer is not doing anything here, it's just going to call the FuncLongDelay event after 5 seconds

sage lagoon
#

Oh. What would be the best way to set this up, then?

sage lagoon
#

Okay, I'll try that.

undone bluff
#

unless a node has this symbol, everything afterwards will still be executed in the same frame

sage lagoon
#

That did it.

frosty heron
#

If it's for level sequencer then drop it in level sequence

#

Add the actor into the sequence then set the property there

#

Delay/timer doesn't really go along with level sequence

#

They r played frame by frame

#

If u do something outside of it, things may happend if u alt tab for example, the calls would be desync

undone bluff
#

yep, just a simple delay instead of timer should've been sufficient in this case, timers give you control and are good for repeating things though

frosty heron
#

At best you can call trigger event from the level sequence

undone bluff
#

coldsummer makes a good point, but I'd suggest binding to the OnStop event of the level sequence instead

frosty heron
#

Well y not use the level sequence to hide or unhide

sage lagoon
#

The widget calls upon a set of short level sequences for navigating through a maze by clicking on buttons, and which sequence is played depends on the floating number.

#

So that the program can keep track of where the player is.

frosty heron
#

U can have something initiate the sequence

#

But the "cinematic" part should be inside the sequence. Eg the vissibility of the object of interest

sage lagoon
#

As for using the level sequence to hide or unhide, you mean to say I could have a Level Sequence even hide a widget when needed?

frosty heron
#

R u making cinematic?

#

What are u actually doing

undone bluff
#

ah yes, the ancient technique of nested if-statements

sage lagoon
#

Hold on for a second while I do some capturing.

#

I'll share a Drive link in a second once the footage is uploaded.

frosty heron
#

I'm not dlding anything 😄

#

Upload directly

undone bluff
#

drive has an embed player

sage lagoon
#

If it will let me. Trying now.

undone bluff
#

that said, this is a really bad usecase of levelsequences

sage lagoon
#

There we go.

#

I'm sure there are better ways. This was just the only method I knew of.

undone bluff
#

all you'd have to do is make the left and right arrows rotate the pawn 90 degrees, then for moving forward there's a variety of ways, but I'd probably just do a quick trace forward to check if you aren't looking at a wall

frosty heron
#

What is the delay for?

sage lagoon
#

To keep the arrows collapsed until each sequence finishes.

frosty heron
#

Oof do u use delay in between transition?

#

Just do what scaith says

sage lagoon
#

Initially, until I learned about Timers.

frosty heron
#

Bind on event complet, set arrow vissibility

#

Well timer or delay has no place for something like this

#

U only have to run it after the sequence is finished

sage lagoon
#

So binding lets you put in some command that occurs when the event within a clickable button finishes?

frosty heron
#

I can tell, u gonna get bug relying on delay using sequencer. Player can alt tab, and u will get undesired hiccups

sage lagoon
#

In Event Complete's case.

frosty heron
#

At the end of the sequence it will run an event that you bind.

undone bluff
#

for the event delegate (red wire) do the same thing as with the timer

#

connect it to a custom event and it'll be called when the sequence is finished

sage lagoon
#

So, in this case, I would make one function which would Bind Event on Finished, and then attach the red Event to a custom event that would then make the three buttoms become Visible again?

undone bluff
#

well, do not put this in a function, this is asynchronous

sage lagoon
#

Then one custom event and link it to another?

undone bluff
#

it doesn't really matter, what matters is you bind the event that sets the visibility with the level sequence as target right after you play it

#

play level sequence > bind event

sage lagoon
#

It worked! There is more than one level sequence, though, so would I need to combine them into some variable or will I need to make a custom event for each sequence? Each sequence consists of either turning 90 degrees or moving forward from Point A to Point B.

undone bluff
#

just bind to whatever sequence you are playing

sage lagoon
#

Okay. This looks a lot more useful, too. I'll have to remember not to use delays with sequences for future reference. Thanks for the tips, once again!

dire halo
#

Is there a way to change InterpToMovement to use cubic or quadratic interpolation between points instead of constant? Seems like there should be but I can't figure it out.

sour moat
#

Anyone know how to shoot something that is attached to player? I used attach/detach/add force/simulate physics/enable collision, but add force didn't work, the actor just fell off from player.

pine mesa
#

Can someone help me figure out this problem?

I'm using a "2-player" system where I assign each player a character; possessing the characters with WASD to move the first character and arrow keys to move the second character. I'm possessing Character #1 with the normal "Get Player Controller," and for Character #2 I'm using a second controller to possess it. When I tested P1, it worked and I could move the character freely, but when I tested P2, my string prompted the "ENHANCED INPUT LOCAL PLAYER SYSTEM" was invalid and I could not move my character even though it was possessed. The Enhanced input system is only valid when I possess my character using the "Get Player Controller", but not when I'm possessing it using my Second Player Controller. How do I fix the "ENHANCED INPUT LOCAL PLAYER SYSTEM" being invalid when using the Second Player Controller?

1st image is the input system being set up in the Character BP
2nd image is the Second Controller Possessing in the Level BP
3rd image is the Second Controller Spawning and Setting the variable in the Level BP
4th image is the First Controller Possessing in the Level BP

undone bluff
lunar sleet
dawn gazelle
# pine mesa

This isn't how you add a controller. Use "Create Local Player" if you're doing something local.

gentle urchin
#

Didnt know this existed ^

regal brook
#

not sure if this is the right section, but I am having an issue.. I set up a fight cam and when i did it now throws the character movement off by 90degrees.. I have looked all over and I cannot seem to find anything

#

The character is facing toward the forward which in this case is along the y-axis.. when i put in the new camera movement switches to x-axis.. very strange

leaden crest
#

Is it possible to have the value of a float track from one timeline follow the value of a different timeline? Lets say a timeline A goes from 0 to 1 over five seconds when a key is held down. When the key is released, timeline B starts at the current value of timeline A, and brings it back to 0 in two seconds. (Using timeline's Reverse exec will not be right for the project, I want to do a different timeline animation rather than just the reverse of Timeline A)

gentle urchin
#

You can prob manage with just 1 timeline

#

And 2 tracks

leaden crest
#

Oh that would be great, is it possible to make the 2nd track's initial value start at whatever point the 1st track is currently at?

gentle urchin
#

Just externalize the value

#

And use the timeline as a alpha track

leaden crest
#

Looks like I have much to research about timelines, not quite sure how to do that - thanks for pointing me in the right direction though!

void raft
#

Hi, I'm building a teleport system and I want to spawn Niagara, which gets triggered when the character teleports, but it doesn't work. Can anyone tell me how to fix it?

frigid summit
#

hi guys how to make the player follow the rail without using splines the splines are too hard for me to place its just not for me is there other method to make player follow this rai

dark drum
frigid summit
dark drum
frigid summit
#

its just too hard

dark drum
# frigid summit its just too hard

Not really, it looks like the top point isn't in the right spot. Additionally, if you right click on a point you can change the anchors to be weighted as opposed to auto. This means the handles can be different lengths.

agile moss
#

Hi
How do I set the widget to a random location after I click it?

dark drum
agile moss
#

Thanks, I couldn't find any location nodes 🥲

#

Nvm that just made the whole screen small in the top left corner 💀

frigid summit
latent venture
#

I am trying to create an procedural generation spawn for the map of my game, but i have one problem, I observe that its never going on the last condition of the select, basically its not spawning a room tile into my -Y coord, do you have any ideea why, or how could i solve this problem, it spawns tiles only for +X / -X and +Y , but not for -Y, how can i fix this 😦

lofty rapids
#

is it going to index 3 ? @latent venture

latent venture
#

what do you mean by that

lofty rapids
#

looks like you have -y hooked up to index 3

#

is that index being reached for that variable ?

latent venture
#

yeah

#

i mean if i putt them in other order, it will take -y

#

do you have any other ideea on how could i do this part of the generation?

gritty wraith
hallow compass
#

i made a template anim bp that has an anim layer interface implemented. however, the children of the animbp dont seem to have access to the interface. why? this means i have to add the interface manually on each child and edit the values, as opposed to just having it ready because it was set up in the parent

versed sun
obtuse oriole
#

how do I prevent the character controller from moving the "Mesh" relative location when crouching? For crouching I simply enable "Can Crouch" in the "Character Movement" and use "Request Crouch". Capsule half height did change properly as intended

gritty wraith
#

its beautiful

#

organised 😱

versed sun
#

Electronic Nodes Plugin

gritty wraith
#

Thanks!

lethal pollen
#

What's a 3D Widget?

#

Thanks!

versed sun
#

A widget thats in the world , not just on your HUD

gritty wraith
#

its a little harder to code in tho... but not impossible

lethal pollen
gritty wraith
gritty wraith
#

so for a 3d widget you have to make a special actor

#

that has that component

lethal pollen
versed sun
#

you can give the plane a unique Collision Channel , and then only look for that channel

#

thats what i did

pulsar vigil
#

Hey guys i need to tie together multiple variable to one variable actor but when i try this with a map on my actor variable and i put a structure, the structure seem to be overwriten and i think its because the structure instance is tied to the variable it self so i can't have a different instance of structure tied to different key of the actor.

Any idea on how to tie multiple variable to an actor variable ?

frigid summit
#

hi guys how do i tell unreal to ignore specfic spline point rotation

tepid kindle
#

hi folks.
TLDR: is there a way to assign a variable of Actor Component with another component from same BluePrint where both are attached?
Long Story
There's a variable Zone of type ShapeComponent reference on one component.
This component is attached to a BluePrint. Also that BluePrint has Sphere Collision (which inherits ShapeComponent).
But the dropdown selection for Zone variable is empty and there's no way to drag n' drop anything into it.
I know this can be done dynamically, but the point is to provide a designer with easy setup without tinkering with Event Graph.

frigid summit
tepid willow
#

Hello, I'm having an issue with something very specific to how BPs work.

That's the code that I have, and it works as intended (screenshoot 1 and 2). SetupFoeGroups is always called prior to DoWaveSpawning_Implementation. SetupFoeGroups might be called multiple times, whereas DoWaveSpawning_Implementation is called only once, but always after at least one call of the SetupFoeGroups. It's a multiplayer game, and it works perfectly when the code is executed with any amount of players. The problem occurs only if a new player joins after the code is executed. However, the thing is that this code is never executed after there is a late joiner (which is correct, I want to execute it only when players decide to start the game), but the thing is that all the instances of StartSpawningFoes except the last one in the chain (i.e. the last iteration of the foreach) break - they don't exist anymore. If I call 5 of them, I'll have only one if there is a late joiner.

I have tried to rewrite the code in a dumb way (third screenshoot), and now it works correctly: all the StartSpawningFoes exist regardless of when players join or leave.

Does anyone know why it might be a thing? I have only tested that in PIE and Standalone Mode, but in both cases the first version works incorrectly.

spiral ridge
#

Hi ! Why code work in Level Blueprint but don't work in separately Blueprint ?

lofty rapids
#

what code ?

dark drum
dark drum
tepid willow
dark drum
#

You'll need to show what code your referring to.

frigid summit
lofty rapids
#

set control rotation ?

frigid summit
#

ok ill try it

lofty rapids
#

idk if that will help but did you rotate something ?

frigid summit
lofty rapids
#

because you set the rotation back to 0,0,0

lofty rapids
frigid summit
frigid summit
pine mesa
spiral ridge
#

Even if I use simple combination like this, its work in Level Blueprint, but dont work if I create it in Blueprint separately in my project folders.

lofty rapids
frigid summit
#

if i set relative location only it face also wrong direction

versed sun
lofty rapids
#

your character should be facing forward and then you move it

#

looks like your using the ue character, did you change some stuff ?

frigid summit
#

ill look into it

lofty rapids
#

i can see you are moving forward, but you shouldn't have to rotate your character

frigid summit
spiral ridge
lofty rapids
versed sun
#

this in the CMC ?

frigid summit
lofty rapids
frigid summit
lofty rapids
#

that would make sense then you are actually facing forward

frigid summit
lofty rapids
#

so you may be able to use lookat

#

i would just set its rotation not relative

frigid summit
lofty rapids
#

yep

frigid summit
lofty rapids
#

you can use lookat and move forward possibly

frigid summit
lofty rapids
#

so i think what is actually happening is your moving but your forward is staying the same

#

lookat rotation may fix forward

frigid summit
lofty rapids
#

well you set relative rotation to zero

#

try to set it to lookat

frigid summit
frigid summit
lofty rapids
#

didn't rotate it ?

frigid summit
lofty rapids
#

hmm

#

i would get the point, get lookat, rotate the actor, and move it forward

#

but idk much about control rotation and how you would have to set that

frigid summit
lofty rapids
#

i know you can use control rotation to change your forward

simple field
#

Erm I fixed an error in my level blueprint, but when I try to play the game it keeps opening autosaves of the level blueprint (that still have that error) and says it can't compile the game cause of the autosaves... What's the issue? The error is no longer in the level blueprint, why are weird autosaves coming up?

lofty rapids
simple field
#

I tried fixing it in the autosave and all it did was open ANOTHER autosave with the same error

lofty rapids
#

so ue is just opening up autosaves ?

#

idk is that an option ? or you have to press something for that

simple field
#

when I press play to test my game, it says game couldnt be compiled cos of an error, when I click that error it opens up that autosave

#

This is my compiled level blueprint, clearly says compiled

#

but when I play the game, this appears

frigid summit
simple field
#

errr I just fixed it in like 5 autosaves and it started working suddenly

lofty rapids
#

check the errors

#

hit cancel

#

check the error in the file

#

since it's compilation error, click compile and check the errors

simple field
#

yea i did, i checked the error in the autosave, then compiled, and then pressed play to have another autosave with error appear

lofty rapids
#

but going back in autosaves works as well

simple field
#

it just kept coming up with autosaves until i fixed all but

#

why is my ue being weird like this

#

the game doesnt do anythign with the autosaves does it

lofty rapids
#

they are just for editor

#

but you fixed the errors ?

#

and it came up again ?

simple field
#

Yep it came up with a different autosave everytime i fixed the other

#

had to fix like 6 in a row and then it started working

#

other than that, do you have any idea why when I change levels in-game, it kinda breaks the game? when I open each level by itself, it works properly how its intended

simple field
#

but when i launch the game, go through the menu and start the game (so open a level), half of the stuff doesn't work - like using my mouse to zoom in/out and rotate etc

#

same happens when I launch the level my "playthrough" is on and then using pause menu I go back to the main menu, there's a mesh that doesn't show up

#

Earth is supposed to be here in the menu

#

but it doesnt appear when I change levels

#

someone told me it's possibly caused by gamemodes but idk what that means, what's wrong with gamemodes

lofty rapids
simple field
#

placed in i guess

#

i just put it there in the viewport and made the camera to face it

lofty rapids
#

if you place something else does it disappear also ?

#

press f8 and look around, do you see the globe anywhere ?

frigid summit
lofty rapids
#

set it to like 90, or 180

#

see what happens to the character

#

maybe you can use the lookat to set control rotation

#

so your character looks in the direction of the next point

frigid summit
simple field
#

f8 doesn't seem to work

#

menu is in ui input mode only so thats why maybe

lofty rapids
#

are you possessing something with a camera ?

simple field
#

camera is fine, i'm telling you this only happens when I change the levels

#

otherwise its doing what it should when i play every level by tiself

simple field
lofty rapids
#

is it a seperate level ?

simple field
#

Yes

lofty rapids
#

what sort of camera are you using ?

simple field
#

normal camera actore

#

actor

lofty rapids
#

what is your default pawn setup in main menu ?

#

in world settings

simple field
lofty rapids
#

hmm, and anything in begin play of the level bp ?

kind estuary
#

Here's something thats getting me confused recently
In ue when you have an actor that inherits from another actor you say that actor is a child.
but the same term is used when an actor has components inside it that are also child
is there a better term for this
it seems the former is the correct one
and the second is different though the same term is used for it

lofty rapids
# simple field

can you not set the ui only mode and see if you can move the camera around ?

#

and you don't have a playerstart ?

#

how does it auto possess the camera ?

#

i'm thinking your not actually using that camera

simple field
#

erm i removed the ui only mode and camera appeared inside earth

lofty rapids
simple field
lofty rapids
simple field
#

yep

lofty rapids
#

right so your not actually using that camera in your main menu most likely

simple field
#

how do I do that

lofty rapids
#

i usually possess a pawn with a camera attached

#

idk how to just use a seperate camera yet

lofty rapids
# simple field how do I do that

you could set a game mode override, create a default pawn with a camera, set the pawn in world settings, and it will possess it when you start the level at player start

#

thats how i would do it

#

it would start in the same spot every time

#

move the camera on the character either way

#

then you can set the mode back if you want to ui only

#

and it should be fine

#

when you don't actually have a possessed character or camera then you get that free flying one

surreal peak
#

There is also always the option to make a PlayerCameraManager child class and use that to define what the camera should do. Might not be as straight forward for beginners, but would be a better way than having a Pawn that is only there for camera reasons fwiw.

#

But ultimately, no one cares I guess as long as it works 😅

frigid summit
simple field
#

still appears to be inside the earth

lofty rapids
#

and also can you move around now ?

simple field
#

considering i dont know what that is i'd say no

#

cant move around now

#

but when i open my game it finally works

#

its just the menu camera now

surreal peak
#

PlayerStart is the thing you can place into the Scene that UE by default uses to figure out where to spawn your DefaultPawn

lofty rapids
simple field
#

Omg thanks

#

fixed now

#

saved me a few hours

lofty rapids
#

in programming it's common for anything created from or in another to be called a child

lofty rapids
#

like directories, you got your parent and all the children same thing

ember lichen
#

I'm using a single level for the main gameplay, but I need to make it spawn specific biomes on specific plays but I'm not sure how to input variables into a level as it plays, any help there?

lofty rapids
#

wdym "input variables" ?

#

you don't know how to change them dynamically ?

ember lichen
#

For the first time the level is played it would receive the biome variable as 0, then it would spawn the biome linked with the 0, for the second time the level is played it would start with a 1, etc

ember lichen
lofty rapids
ember lichen
frigid summit
lofty rapids
#

what are you trying to do ?

frigid summit
lofty rapids
lofty rapids
# ember lichen Yes

i would use the game instance, it persists throughout the whole game across levels

#

create a variable that is an integer that stores your biome mode

ember lichen
#

Alright, I'll check that out thanks

frigid summit
ember lichen
lofty rapids
lofty rapids
#

so normally when you load a level, almost everything resets to defaults

#

except for game instance

ember lichen
#

Ok thanks

frigid summit
lofty rapids
# ember lichen Ok thanks

you could also have an array of integers where the index is the level you are on 1,2,3 and in the array at that index is the number for the biome setup for that level

frigid summit
#

thats what i mean by cancel

pulsar vigil
#

Guys quick question i only want to set certain member of a struct so naturaly i use set member but from a logical perspective it look like u have to feed the set with a struct ref wich is logical, but as show on the screenshot u can take from an input a set member and set the struct member without a ref structure ( i ask cause when u take it from the input pin it recommend set member naturaly wich should not happen if it was'nt possible) ?

Im also asking cause it would permit to not have to feed a variable and have to constantly manipulate it

lofty rapids
lofty rapids
fading hawk
frigid summit
lofty rapids
#

well then your just resetting it to true on tick

#

so setting it to false basically does nothing

#

because you set it to true right at the start of the next tick

#

chances are slim that your other code runs in that timeframe

frigid summit
fading hawk
lofty rapids
#

you need to find out the end of your spline, can you check the index maybe ?

#

then turn it off, or when you hit the end of the spline turn it off

#

how are you looping through your points ?

#

and i would set it true elsewhere other than on begin of tick

#

set it true when you start

#

and false when your done

sick sky
frigid summit
#

ok ill show you the full code

lofty rapids
frigid summit
#

i dont know where it is here is the full code

lofty rapids
frigid summit
frigid summit
lofty rapids
#

are you running this at begin play as an intro ?

frigid summit
lofty rapids
#

so you definately want that branch at the beginning

#

and then switch it when you get to it or something

frigid summit
lofty rapids
#

just switch it on and leave it on for now

#

you need to figure out how to know your at the end

#

maybe by using your x, y coords

celest trench
#

Is it possible to attach something at a socket position rather than its root location? Not the item it's attaching to, I know you can pick an attach socket. But the actual item. For example if a player is picking up a gun, it attaches to the hand socket already. But how could I make the gun not attach at the root, but a specified socket on the gun as well?

lofty rapids
#

i would maybe check you location is at the end of the spline somehow

#

maybe with bounds

#

or use a collision box if you can

#

at the end, just when you hit it shut it off

#

and the same for start when you hit it turn it on

#

might work

lofty rapids
# frigid summit ok

you could also use a timer but then you would have to match it perfect and if you changed the thing you would then have to go in an find that magic number again

#

and probably with delta it would never be dead on

frigid summit
lofty rapids
#

ya one at the beginning, one at the end, and then just switch the bool

frigid summit
#

basically i used event tick because the overlap box and the begin play didnt work so i had to use event tick

lofty rapids
#

i mean it makes sense to have it on tick, you just want to be able to turn it on and off

frigid summit
#

and i also put the box in end and it didnt do anything unfortunatly

lofty rapids
#

is the collision happening ?

#

meaning is the overlap event firing ?

frigid summit
#

i set it here and on begin overlap i print the strin but still

frigid summit
lofty rapids
frigid summit
lofty rapids
#

hmm, so do you have collision set on your character properly, you bump into things ?

lofty rapids
#

hmm

sick sky
#

is the Game state created after or before the level load ?

frigid summit
lofty rapids
#

something with your collision settings if it's not firing i would think

frigid summit
#

seems like this event tick cancel everything wtf

lofty rapids
#

so it shuts off but you do other stuff on it as well ?

#

why are you using the spline tick for anything else ?

queen valley
#

how do I zero out vector's up and down axis (specifically camera's forward vector)

lofty rapids
#

or maybe the boolean is used for other stuff and you shut if off now it might mean more than it describes

frigid summit
#

i doutt my collision do anything to this because its the default one

dawn gazelle
lofty rapids
queen valley
#

should i use a mesh's forward vector

lofty rapids
frigid summit
queen valley
frigid summit
lofty rapids
frigid summit
lofty rapids
#

what does your anim bp look like ?

frigid summit
lofty rapids
#

i don't use play montage very much i use a state machine for most of it so far i'm still learning

lofty rapids
#

like is it supposed to auto move ?

queen valley
frigid summit
frigid summit
lofty rapids
#

or that works now ?

#

because if you don't shut it off it will still do what it was doing which is stick at the end

frigid summit
lofty rapids
#

which i would make another one for that seperate if so

frigid summit
lofty rapids
# frigid summit

here where you add movement is this the only place you do that ?

frigid summit
lofty rapids
#

well you want to move the character forward even if your not on the spline right ?

#

it should auto move

#

so the spline stuff being switched off

#

that boolean is all you use to move forward

#

you want to do that all the time to keep moving

#

i would use a boolean on the character like isrunning or something

frigid summit
#

here is what play it

lofty rapids
#

because you should be always running

frigid summit
lofty rapids
#

so think about it

#

your still running but not actually moving

#

you want to keep moving

#

that spot where you use that boolean get rid of it

#

just move the character

#

i would use a seperate variable for that to turn it on / off

sick sky
#

will this pure function be called x times or only once ?

frigid summit
sick sky
lofty rapids
#

i think it's called for every connection

#

part of what makes it kind of a performance hit sometimes

sick sky
#

okay ty

frigid summit
#

its just shut everything off even the overlap

#

the proplem is there is no alternative to event tick

lofty rapids
#

timer by event

#

if you don't want to do it on tick

#

this way you can also just clear and invalidate the timer

#

np all done it won't run

frigid summit
lofty rapids
#

make an event that create the timer and runs a custom event, do the movement on the custom event, then on overlap of the end run a custom event that clears and invalidates timer by handle

#

so you just call the events to turn it on/off

frigid summit
#

but i still need delta seconds

lofty rapids
#

well you don't need it, but you can get world delta seconds or something like that if you really want to

lofty rapids
#

but with a timer i think your fine its independent of the frame rate i think

lofty rapids
#

or paused

frigid summit
#

as i thought it dont want to go over the spline the event tick is the only solution

frigid summit
lofty rapids
#

you can do the same thing with a timer that you do on tick

#

and you just need some booleans in the right place

#

as far as "no way out of this" if you want to use tick go ahead

#

shutting it off should work fine

#

you just aren't moving your character like you want

#

if you want to keep him moving forward you need that programmed in it won't just happen

#

you'll also need to make sure the rotation is correct

#

so you head down the correct path

frigid summit
frigid summit
#

yea i used branch and boolean at the beggining of event tick

lofty rapids
lofty rapids
#

if the print string doesn't show then it's still true when that code runs

#

you need to make sure the collision at the end happened and the proper boolean was switched to false

#

also instead of doing all the gets on tick, you can do the gets on begin play and cache them to variables

#

then just use the variables

#

unless your spawning them

#

in that case you would need to keep getting

frigid summit
lofty rapids
frigid summit
lofty rapids
#

hmm

#

if no print string then that boolean is true

#

so you didn't set it false

#

so somethings wrong

frigid summit
lofty rapids
#

and it works tho

#

so whats the actual problem ?

#

your not stopping at the end and keep running

faint pasture
#

Try just not blocking that

frigid summit
lofty rapids
#

well like i said i would of used set actor location

#

idk why that wouldn't work

frigid summit
lofty rapids
#

it should work fine, i use it all the time

#

maybe you did something wrong but like i said before i wouldn't use relative anyway

#

as far as moving the character goes

#

you want the character to just move

frigid summit
#

after it reached the end i want it to move freely

lofty rapids
#

hmm

faint pasture
lofty rapids
#

i'm still not sure if your overlaps events fired

frigid summit
lofty rapids
#

so theres the problem

#

the variable is still true

#

and your still ticking down the spline but your at the end

#

idk why your collision wouldn't work

gray lantern
#

I updated from 5.0 -> 5.3 when I try to build now I get this error

Error    MSB3073    The command ""D:\Program Files\Epic Games\UE_5.3\Engine\Build\BatchFiles\Build.bat" VFX_Vault_5_0Editor Win64 Development -Project="E:\Users\user\Perforce\GTL\UE\GTL5_0\VFX_Vault_5_0.uproject" -WaitMutex -FromMsBuild" exited with code 6.    VFX_Vault_5_0    C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Microsoft\VC\v170\Microsoft.MakeFile.Targets    44        
#

any ideas?

#

cause im stumped, I've tried deleting all the intermediate files an such

frigid summit
lofty rapids
#

the tick on the spline seems to work fine

#

you have a boolean that is a branch that runs on tick

#

did you do that ?

#

set it to false as default

frigid summit
lofty rapids
#

and see what happens

frigid summit
lofty rapids
#

and what happens ?

frigid summit
lofty rapids
#

the tick still runs ?

#

that makes no sense thats not how it works

#

what does your branch look like ?

#

or maybe you set it true somewhere in code

faint pasture
#

@frigid summitExplain from the top what you're trying to do. You have a character, and you want them to slide down a spline then hop off and get back to walking, right?

frigid summit
lofty rapids
#

your setting it to true

#

then checking it

#

hmm

#

you are missing fundamentals

#

you don't want to set

#

you want to get

#

and plug that into the branch

#

you just set it true and checked if it was true

#

so do that and then set the default to false

#

and see what happens

#

you should hopefully run into it and turn it on, get to the end turn it off

#

but idk how collision will work with relative

#

you should be just fine with using world location

#

just set actor transform or something

faint pasture
#

I'm guessing you want to have a character that can walk around, it touches spline, it gets yeeted down spline like on a track, and it pops off on the end and gets back to walking, is that right?

frigid summit
frigid summit
frigid summit
lofty rapids
#

are you still setting it to true on tick ?

faint pasture
frigid summit
frigid summit
faint pasture
#

first make sure the overlap even works, just walk into the box and see if it triggers

#

but you shouldn't need a box, you can just check the distance along spline after moving too

#

The general form shoudl be like this, don't use a bool for state, use a character reference

lofty rapids
#

ya the length of the spline nice

frigid summit
lofty rapids
#

i feel like thats not a problem

faint pasture
#

thats not a problem