#blueprint

1 messages · Page 336 of 1

maiden wadi
#

I'm not sure if you can simply set it's relative location to 0,0,0 in the tick function after doing that if it'll follow the spring arm again.

glossy crag
#

when i hit play tho it shows just a black screen

maiden wadi
#

Yeah, cause the camera is at 0,0,0 I think. In your tick function call SetRelativeLocation on the camera component and see if it defaults back to following the spring arm.

full badge
#

try do this and lag target is attached to a spring arm with camera lag on

maiden wadi
#

He can't use the default lag stuff if he wants to disconnect the Z value from the rest.

full badge
glossy crag
#

im startin to get lost in the sauce

#

i tried dragging camer boom out and then set relative location

#

but i cant connect that to anything

maiden wadi
#

Not the camera boom. The camera itself.

#

And you connect SetRelativeLocation to the tick event.

glossy crag
#

is that the followcamera?

#

im starting to think i just need to completely delete the default TP blueprints camera stuff

#

but im worried thatll mess up the input that turns the camera

#

let me send a full sc

maiden wadi
#

So disconnect both Target and NewLocation from the SetRelativeLocation. And drag FollowCamera into the graph and plug it into the SetRelativeLocation node's target.

glossy crag
#

that took me out of the black screen void but now it doesnt follow the player

#

i can just see the player from below map start

full badge
glossy crag
#

im confused tho cuz do I leave the lag target under hierachy with followcamera

#

and have it under camera boom

#

is lagboom just cameraboom

full badge
#

duplicate the cameraboom

#

and turn camera lag on

#

that would be the lag boom

glossy crag
#

so turn lag off on normal camera boom?

full badge
#

yes

glossy crag
#

is lag target a variable?

#

i cant tell what the sphere is

full badge
#

a scene component

#

should be attached to the lag boom

glossy crag
#

attached it but mines like a mountain icon

full badge
#

the screenshot is in ue4 so it looks different

glossy crag
#

ohhh gotcha

#

alright just did the BP

#

let me test

#

i think i broke somethuing

#

camera is still under map start

#

but it does that even when i remove all of the stuff i just added

full badge
#

change it back to relative

glossy crag
#

oop ur right let me try

#

which value should I edit for the lag now? just the camera lag in lagBoom?

full badge
#

lag boom

glossy crag
#

i think its still applying it to XY though

#

oh wait

#

nah its not

#

maybe the value is too low but it just cant follow the player past a certain Z

#

let me take a small vid

full badge
glossy crag
#

it might just be where i have the camera positioned but it has the cam a little bit below the player

full badge
#

the interp isn't necessary

#

just connect world z of lag target to the set world location node

glossy crag
#

it might just be cam position

#

let me tweak that now that the Z lag is working

#

no matter how i move cam in viewport it doesnt change

#

the lag works perfect btw, thank yall

#

i just need to figure out how to get this cam in a better position to accomodate

#

im gonna guess its cuz this set the world location straight up

#

but not sure how to tweak it

full badge
#

move the lag target

#

that controls z of the camera

#

and moving the camera controls xy

glossy crag
#

got it, worked like a charm

#

thank you and @maiden wadi for your help <33

#

im making a small game demo for a summer class at my university and its been my first go around at ue5 so its been a trip trying to figure out blueprints

#

I know C++ pretty well but didnt have the luxury of time to mess with that side opposed to blueprints

proud magnet
#

Does anyone know why my scene goes completely insane if the Global Illumination is dropped below High(3)? Wasn't happening in 5.4 but is in 5.5...

glossy crag
#

@full badge one last thing with that lag cam, for some reason when the player has an object wit hcollision behind them it causes it to freak tf out

#

i think it just has issues seeing under the player in general

#

seems to freak out any time it has a collision itself

#

should I do set relative instead

atomic hollow
unique bronze
#

hi, Im debugging atm and cant figure out what Num=0 mean here? Length? Index?

dusky hemlock
#

Length of the array

unique bronze
#

which means its empty?

#

thanks

dark drum
unique bronze
#

appreciate it, thanks

narrow sentinel
#

anyone know if say I have this string below, is there a way to swap the Space for _

Bob Smith

#

so it becomes Bob_Smith

#

guessing Id split it at the space and join back together the left and right adding in _

narrow sentinel
#

Oh there is actually a node for it haha

#

Stupid me

bright dove
#

I need to make a loop test on firebase test lab. Currently I get this error:

The application does not include a game loop intent filter, or the intent filter is not formatted correctly.

Currently I am adding to manifest using UPL like this:

<?xml version="1.0" encoding="utf-8"?>
<root xmlns:android="http://schemas.android.com/apk/res/android">

  <androidManifestUpdates>
    <insert>
      <activity android:name=".MyActivity">
        <intent-filter>
          <action android:name="com.google.intent.action.TEST_LOOP"/>
          <category android:name="android.intent.category.DEFAULT"/>
          <data android:mimeType="application/javascript"/>
        </intent-filter>
      </activity>
    </insert>
  </androidManifestUpdates>

</root>

But it is not getting added to the main xml, I don’t know why.
Can someone help me resolve this issue?

languid pagoda
#

Question, when making a data asset do you all prefer to add variables defining the structure or just make a struct that houses that information?

maiden wadi
languid pagoda
zealous kindle
#

Hey gamers, not sure if this is the right channel, but I'm having trouble switching between a Gameplay Camera on my character and one in the world. Specifically, I want to be able to switch between fixed cameras on each player's board. I can't seem to attach the Gameplay Camera Rig to the Board, and swapping the camera results in behavior relative to the initial camera rotation

barren sonnet
#

Anyone know how to account for an object being rotated after being placed when trying to make a pole fall over opposite of the direction when the player runs into it ? Seems to work fine as long as the object isn't rotated but as soon as I rotate it no longer acts correctly.

barren sonnet
#

Figured it out , Combine Rotators node inputs needed to be flipped.

faint pasture
shell tide
#

Hey, I’m fairly new to UE, and I’m having a hard time understanding casting, especially the INFAMOUS "Object" input. While doing some research, I came across a video explaining the "Cast to Class" node, and it seems like the perfect solution: no need to find a reference, just pick the right class and go for it. Is there a catch to using this casting node instead of the classic one?

next hollow
#

That function just runs the normal cast operation. 😛
That seems hella cursed either way.
Object, casted to a class, through normal "cast" operation.
Personally never touched Cast To Class

And, even if you do use that node, its then impossible to cast an object, which you will need to do at some point.

So, just learn the normal cast nodes. 😛
They do the same exact thing, and have built in valid check outputs.

#

But, you'd still run into the same exact issues as the normal cast (not understanding how it works)

valid geyser
#

Hey guys how the heck do you update CPU water collision

#

there's no GPU readbacks

#

dynamic mesh don't work with tick

#

so can't put a sinewave on it

#

RT is too expensive and crap

#

and I can't get a sinewave on a basic actor mesh for some reason

#

was going to update an MPC based off the sinewave on a collision box, then update the PBR

#

but I can't geta sinewave on the collisionbox

#

how do?

tulip bear
#

hello is it possible to find like a friend here that i can ask questions from time to time?

valid geyser
#

@tulip bear I mean you can ask me

#

but discord is hardly ever help js

tulip bear
#

i had a friend that i would ask sometimes and he would point me into directions etc but he doesnt have time anymore

valid geyser
#

k

#

what you need

tulip bear
#

im currently trying to figure out how timelaps work and i have a small "issue" with it imma explain it in a second i wanna tidy up the blueprints real quick

#

basically i just disabled gravity with a toggle key and when its disabled i want to use a lerp to slowly move the character up a bit but its weird imma show it in a minute

valid geyser
#

Okay so basically you can either use a linecast node to apply force (check out car suspension) and he will slowly fly up or you can do it the easy way and increase your Z position by a frac every tick

#

to use a timeline for this you need to move the actors location according to the timeline Z

#

so when you disable gravity you need to also begin the timeline, which will have a Z AXIS that increases at the speed (set it on the graph), pull off the Z node and add/set the actors movement speed in Z direction

#

that's it

tulip bear
#

basically i did this

valid geyser
#

okay your problem is in the fly condition

tulip bear
#

it moves the camera a bit up and then jumps down again. when im floating it shoots me up into the sky

valid geyser
#

when you press G you need to set it to is flying and at the end you need to set to is not flying

#

you also need to link the actor in the move actor location

#

also on your branch, you need to switch the nodes

tulip bear
#

this is the fly function btw

valid geyser
#

they are backwards

#

is the gravity scale a variable that is properly linked to the gravity?

tulip bear
#

yes that part works hold on

#

when turning the fly off again it launches me up and when i enable it it only moves the camera

valid geyser
#

Your G key only enables gravity to be 0

tulip bear
#

and flips the is flying yes

valid geyser
#

you need to make it so when it presses again or ends it resets the bool to "isflying" false

#

also the graph might be too short

#

is it set to 0.88? probably why, as for camera

#

I dunno make sure it's properly linked to the actor in its whole

tulip bear
#

btw when i set the second keyframe thats at the end to 50 instead of 30 this happens then it works but its way too high so im now sure what im doing wrong 😄

valid geyser
#

all the "targets" the blue pin connectors on the nodes need to be set to the correct reference

tulip bear
#

hm i will check that

#

its generally odd to me as the curve is smooth imo and yet it kinda is super slow at the beginning and then zips up

valid geyser
#

you need to set it about 15-20

#

actually it might just be that the camera is going up firstbut its too slow

#

to actually pick up the character

#

so you need to make it go slower and longer

#

it's probably too short for the increase

#

50 is fine for height but it will do it super fast cuz its too short

#

its set to one

#

you need to move that to like 20

#

going this way ---------------> not up

#

also make sure to set is flying to false after so you can't keep flying around

#

cuz it might reverse but "isflying" is still true

#

so you will still have no gravity and fly around

tulip bear
#

i will check

#

the gravity toggle usually works

full badge
tulip bear
valid geyser
#

sec

tulip bear
full badge
#

have you tried to set movement mode to flying

tulip bear
#

not sure but i think i now know why its launching me after disabling it.

so whenever im flying and it goes up or i disable it and it should go down, its never checking that and always increments.

#

yes that was the launch issue now imma try the fly mode thing

shell tide
#

But it doesn’t work for my sphere blueprint, no matter what variable or node I plug into the "Object" input, and I just don’t understand why. However, I’ve found some working solutions, like the "Get Actor of Class" node or the "Cast to Class" node. It even works if I directly set a variable to fetch the sphere blueprint (so no casting required). It’s just frustrating.

tulip bear
#

ok this did the trick for me

next hollow
valid geyser
#

@tulip bear This is a way faster way to add this but for some reason this code won't work unless you jump like guy said, almost like the feet are chained to the ground? works fine if you jump before hitting F key.

next hollow
#

It sounds to me your just blindly casting to stuff, without knowledge/ reason.
Such as get character -> cast to cool sphere

valid geyser
#

@tulip bear Probably something to do with the preset states can't move in Z direction unless in either Isjumping or Isfalling state

#

in the starter projects

tulip bear
# valid geyser <@372043115152015362> Probably something to do with the preset states can't move...

yeah feels like it. im mostly trying to understand how unreal works. i've been programming for a while now and always wanted to get into game dev as its interesting to me and feels like a nice way to express yourself and tell stories. even learned blender before that but my motivation quickly died everytime i tried doing unreal haha but i think im slowly starting to understand how nodes kinda work

valid geyser
#

Same unreal is a steampile tbh it's very hard to use

#

I got a revshare im starting if you wana join it, it's for newbies

#

ill send u link

tulip bear
#

whats a revshare

valid geyser
#

where we all work on a game and share whatit sells

tulip bear
#

ohhh sounds cool yeah im in

valid geyser
#

add me as friend or join my server

rigid fractal
#

Hi

#

I want to create a settings save system for my game, things like mouse sensitivity, master volume, music volume, subtitle language, etc. While researching, I saw that some people recommend using GameUserSettings since it’s meant for this kind of thing. But from what I understand, if I want to add custom settings with it, I’d need to use C++ (which I’ve never used before).
In the same post, someone suggested using SaveGame instead, since it lets you create custom variables based on your needs. But then another person said SaveGame isn’t really made for that and mentioned things like the file being uploaded to the cloud by platforms, among other reasons…
So I’d like to know: is there actually a problem with using SaveGame for saving settings like this, and is it something people commonly do? Or would it be better to just follow a C++ tutorial and use GameUserSettings, even though I’ve never worked with the language?

valid geyser
#

You have to map all the settings to a UI interface and save it for later use there are youtube videos

shell tide
# next hollow Get Actor Of Class generally isn't a good solution. and, the cast to class, stil...

It surely is a misunderstanding, since everyone else in the world seems to be able to cast without any hiccups! So here I am, on my last try. The blueprint where I’m doing the cast is my player character (BP_Hero). I created an "Object Reference" variable and I'm casting to my BP_SphereTest.

It doesn’t work, and I suspect it’s because I need to specify what actor the "SphereTestReference" is actually referencing. So, I checked "Expose on Spawn" and "Instance Editable" to be able to select a BP_SphereTest placed in the world.

The problem is, I can’t put anything in the Class Details because I get this message: "Editing this value in a Class Default Object is not allowed." I guess it’s because BP_Hero doesn’t exist or isn’t placed in the world before everything is generated, but I’m stuck here.

next hollow
#

Well.
Those prints are backwards. 😛

Then, yeah. Like you said.
There is no value.
Since its an object ref (blue like that), you cannot simply just choose it from a dropdown.
Some form of graphing must set its value somewhere.

#

In which case, a simple like testing/ ideas sort of thing, a get actor of class would be fine, for the quick testing/ understanding.
But, should not really be used in a full game, in this context.

shell tide
#

Indeed, they are reversed!

#

As I mentioned earlier, "Get Actor of Class" works fine, but it still doesn’t solve this casting issue. As you said, I need to understand what I’m missing here.

#

Like, how to set a reference if I can't modify the SphereTestReference to add this specific actor reference?

next hollow
#

In a broader concept it gets dicy/ very specific.
But, in this basic test, you can just get actor of class on begin play, and then set that variable with its output (this is assuming the sphere exists at all times, and isn't spawned later on)

But, if get actor of class still has issues, that suggests you set the wrong class as the target, so it just pulled a random ass actor on the map (once again, assuming this sphere always exists)

faint pasture
next hollow
#

If this a purely you trying to understand casts, and what fails/ whats a success.
You can always swap the reference to be class based, so that you can just use the dropdown of choices.
Rather then runtime finding the test actor.

rigid fractal
next hollow
#

I see no reason a savegame wouldn't work.
But, GUS is also already auto managed in every way, for saving/ loading, getting, applying and etc.
and, you wouldn't need crazy C++ to allow BP to do most of the work, if you truly don't know C++ at all sort of deal

thin panther
#

I'd personally go the gameusersettings route which I believe uses the ini, means if someone makes a bad choice they can change it in a text editor rather than it being binary data

snow halo
#

Hi, im trying to create a Niagara watering effect 🚿, but when I switch tools or destroy the watering_can tool fast 🌱💥 —> the effect keeps running forever, like a broken faucet that forgot how to stop 💧💧💧.

The destruction of that blueprint happens inside of a widget in which the widget says "destroy", so the watering niagara doesnt even have enough time to "destroy" it self properly.

#

So here's the widget that handles the item switch

#

when I go inside of this function and I switch item, I can cancel an ongoing process in case I had an item held before that was in the middle of doing something ( this is the best way I can explain it simply )

#

but this doesn't work, so it fails to destroy that niagara

or instead of doing this, now that I look at it again, I think a new good idea would be to make an entirely new condition inside of the widget to handle unfinished operations, so if you're in the middle of something you can also block/prevent yourself from opening a new task.

snow halo
#

that will actually remove a lot of those weird hard references in my ui, so I might need to repeat for all items that have ongoing loading functions like eating, etc.

shell tide
next hollow
#

The tooltip is always gonna be there, thats not gonna change.
The graph sets it at runtime.
You cannot under any circumstance use the dropdown on object based values (aka, actor, gamemode, component, etc.)

shell tide
#

So I have to manually put my player character in the world to be able to set a reference to this variable?

next hollow
#

That would "work"
But, not the intended, or expected way. 😛

Since, if the player were to respawn, die, or etc sort of occurrences, the value would be gone, cuz new character.

You need to use graphing to set the variable, like how is currently shown in your pic.

shell tide
#

Oh ok I get it, now I can use that reference to cast to my sphere!

#

And it works at last.

#

Thanks @next hollow !

narrow sentinel
#

so out of interest when making a BP Function Libary function and within the function calling something which wants a context world object thing how do people handle that ?

#

at the moment I've done it where you pass in the object calling the BPFL function but I oddly get a crash with that

#

i've read online I can leave the world context pin not connected to anything

next hollow
#

You will need to pass in some object, and then pass that object into the world context.

You can leave world context blank, if the thing calling it has a built in world context (aka, actors and the such)
But, since a function lib is calling it, there is no built in world context, they just exist in null space, to run pieces of code.

#

Only C++ (to my knowledge) can make "automagic" work context pins.
BP must manually input, and use it for stuff like function libraries.

lofty rapids
narrow sentinel
#

seem the function does it itself somehow

next hollow
#

Didn't you just say it crashes though?

narrow sentinel
#

so it did when i tried passing in a object for the world context object

#

but not passing anything into the pin seems to be fine

faint creek
#

I made it!
This is the Dispatcher in the BP_Alert Manager

#

Ai controller

#

And BP_Enemy

lofty rapids
#

idk about this get zero stuff, is there more then one in the world ?

steady night
#

better to use "Get actor of Class" if thers only one

faint creek
#

Everything works, however I have a little issue: when the player is not detected anymore from enemies, only one enemy keep chase player even if the player are out from sight zone.

Do you know the reason why?

lofty rapids
#

i think stimulus will be true for enter and leave ?

faint creek
lofty rapids
#

as far as execution, what event is it running on ?

faint creek
lofty rapids
vivid vapor
#

Anyone ever run into this scenario in blueprints?

BP Function with a struct input (by reference)

Break open the struct -> copy an array inside it (array of integers) and store as a local variable inside the function.

Add an element to the local function copy.

Access the struct reference -> "set members" and choose the array. Set struct array to equal the local updated copy.

Next tick/iteration when you access the same struct by reference the array is not updated.

The array does not appear to update even though I immediately access the struct reference and check (while in the function still) that the length of the array has indeed grown. But then by the next iteration it is cleared out.

I also make sure not to expose pins that aren't being updated in the set members node. Since otherwise they would be reset.

lofty rapids
# faint creek here

"the On Target Perception Updated event in Unreal Engine's AI Perception system will fire when a target is both sensed (comes into perception range) and when it's no longer sensed (goes out of perception range or is forgotten). "

faint creek
lofty rapids
#

put just one enemy you will see he probably follow you after see

#

but i wrote what is probably the issue

#

just read above

faint creek
faint creek
lofty rapids
glossy crag
#

hey, trying to do a dialogue system and it isnt working

faint creek
glossy crag
lofty rapids
lofty rapids
# glossy crag

for one thing you don't want <= on the index, because length is one greater then last index, so you just want <

glossy crag
#

it didnt work

lofty rapids
# glossy crag

but when you press E your not actually doing anything like showing or changing stuff

glossy crag
#

the tutorial im following used <= cause they set the talk index to -1

#

it should be calling the Talk function I implemented

lofty rapids
#

you don't have any execution to that

#

you probably want to execution talk on true ?

glossy crag
#

oh wait i scrolled back in vid

#

i missed the link from true to talk

#

thanks!

#

also, on that same note

#

do you know how to do a kind of scrolling text

#

or ig not scrolling text, but rolling i guess? where it does one letter at a time

lofty rapids
#

hmm thats interesting you want to write some text one letter at a time ?

#

on the ui ? or in game world ?

faint creek
glossy crag
#

let me try and find what its actually called

#

typewriter effect

#

kind of like undertale or some other rpgs

lofty rapids
lofty rapids
faint creek
#

It happens when the player is detected in the sight zone

lofty rapids
#

yes does it run when they leave as well ?

faint creek
#

no

#

Man I don'r understand why, but it seems to work

#

I didn't change anything

lofty rapids
#

nice

faint creek
#

mmmm toooooo much strange

lofty rapids
#

easy fix lol

faint creek
#

So strange

faint creek
faint creek
# lofty rapids easy fix lol

Lol it doesn't work ahaha: Enemies keep chase me until I'm inside the cone range sight; then if the player go outside range, they stop chase me

#

So they stop chase me only after entering in their sight range

valid geyser
#

Hey guys how do I attach a rendertarget to a player class that I only want to render if within a certain hitbox (ie, over/under the water)

#

im doing some pretty advance crap right now

analog vine
faint creek
# lofty rapids easy fix lol

I've solved with this:

  • In the BP_Manager I've created another ED called "On Value Clear",
  • Inthe BP_Enemy I've bind the event,
    Inside the AI controller I make the check
glossy crag
#

what should i do with the previous E press though?

#

or do i replace it

#

cause if i leave the previous stuff itll overlap right

#

sorry im not at my pc to test rn

kind estuary
#

where is the node that gets all the current available save games so that i can create the typical list of the save games?

valid geyser
#

there isnt one

next hollow
#

It doesn't exist, for BP.

valid geyser
#

you have to make a list

#

the "does save game exist" is for the list you make

#

very simple youtube videos

#

I'm doing something that there is no youtube video on

#

someone wanna help?

#

I got this RT cast that im sampling for an FX module script

#

the red texture in left

#

I need to get the height data and spawn particles in niagara at that height, and maybe compare to an RGBA texture as well of the same capture

#

this is revolutionary tech

#

it gives large simple sim bodies particle physics without having to calculate advance displacement

#

or to put simply

#

water that looks real and does not need the CPU collision

#

or a cpu sine calc

glossy crag
# lofty rapids

yeah im trying to figure this out but i cant find the pink set you have

#

nvm i figured it out but it still does nothing

kind estuary
#

thats the thing

#

Ended up going C++ with this awesome solution:

#
Epic Developer Community Forums

This code should work for any platform. .h /** returns a list of all save games in /Saved/SaveGames folder, without the .sav extension (filename only) */ UFUNCTION(BlueprintPure, Category = Game) static TArray<FString> GetAllSaveGameSlotNames(); .cpp #include "Paths.h" #include "PlatformFile.h" #include "PlatformFilemanager.h" TArray<FSt...

desert flint
#

How can i extend a bone/joint (or group, wtv) to a specific location?

maiden wadi
# kind estuary Ended up going C++ with this awesome solution:

One of those is windows only, and the other is exceptionally overwritten and not likely to work on some platforms. Unreal already has a semi exposed function you should wrap for BP.

bool UTarrionSaveLibrary::GetAllSavedSlotsForLocalPlayer(int32 PlayerIndex, TArray<FString>& OutSlotNames)
{
    if (ISaveGameSystem* SaveSystem = IPlatformFeaturesModule::Get().GetSaveGameSystem())
    {
        return SaveSystem->GetSaveGameNames(OutSlotNames, PlayerIndex);
    }
    return false;
}```
#

That's also an async version if you feel like writing an async node for it as well.

foggy whale
#

I messed up. I have a blueprint that I saved with an error in it that induces a crash. At such a level that I can in no way load the editor with that blueprint in the project. Any ideas I could try to recover this blueprint?

glossy crag
#

I set it up so I can apply this bp to any actor but

#

how can I do a conditional to decide which SFX to play

#

I want to vary the pitch but its set in stone this way

zealous moth
proud bridge
#

Hi can my gameInstance know by any means when a open level command completes? I dont want to ping my gameInstance from the level blueprint.

proud bridge
glossy crag
#

oh woops I didnt send my current bp

#

I did this which always does the false condition pitch

#

it ignores the speaking npc == banana guy

#

tried changing speaking npc to class reference instead

#

still doesnt work

proud bridge
#

Now i am confused as to what you are wanting. Sorry. U want the bp to play an audio pitch based on the actor attached/spawned by it?

glossy crag
#

I'm making a small demo and it'll only have 2 npcs

#

i want a higher pitch for the other npc and a normal one for this banana guy

#

I have a BP for banana guy

#

the pitch will be the same for all instances of banana guy so I just tried to pass that as an overall ==

#

if its not, then it has to be the other npc

#

the jumpSFX is just a test SFX

proud bridge
#

So u can have a variable which is exposed on spawn, and u send the “self” as to whoever is spawning the bp? This way u can tell ur audio bp to do either this or that

glossy crag
#

im not sure how to do the second part of what u said

#

i just changed it to be exposed on spawn tho

proud bridge
#

I want to know how this audio bp is spawned

glossy crag
proud bridge
#

Great! U r using an interface. Add another variable in the inputs there as a Integer maybe. So for example, 0 is ur npc0 and 1 is ur npc1. Then npc0 sends 0 and npc1 sends 1. Now in the audio bp, u can use this integer to switch on Int and play your separate audios for them. Does this make sense now?

glossy crag
#

lemme try rq

proud bridge
# glossy crag lemme try rq

Yea for starters use integers, but for big scaling u might want to use ENUMS because it will hard indexing and remembering the integers for every npcs.

outer sparrow
#

hey guys, can I get some help please? I got these animations from mixamo, light and heavy attacks. The thing is they move forward instead of staying in place (no, these ones dont have the stay option in Mixamo)

#

Whenever my character attacks it seems to move forward along with the animation and goes back to the original axis when it ends. This bothers me as it causes glitches when I'm near a wall.

#

I just want the character to move when attacking instead of the animation

proud bridge
glossy crag
#

I couldnt get the int to work

#

I tried to make it so I can just edit pitch per npc but Im getting an error

#

I have my dialogue system set in a component so that whenever I add it to an actor, I can add dialogue in an array and change typewriter effect rate

#

it'll call the typewriter logic normally based on that

#

I tried making a variable in my third person class where the widget is created called Speaking NPC that's an OBJ reference

#

linked it to Get Component by Class

#

chose the dialogue component

#

tried to set a Dioalogue Component REF variable that I added to said typewriter logic blueprint

#

got an error

#

Accessed None trying to read property DialogueComponentREF"

glossy crag
#

i just cant figure out how to differentiate the pitch based on npcs

#

I only need it between 2

maiden wadi
foggy whale
#

Eh, got lucky coding my way around the problem and recovered.

glossy crag
#

Im genuinely lost as to what to do

#

I have the dialogue_c1 as a component

#

I can change the typewriter speed and add dialogue per actor this way when I add the component to them

#

I cannot figure out for the life of me how to add a pitch multiplier that works per actor as well

#

wait I think I got it

kind estuary
maiden wadi
kind estuary
#

and the function return SaveSystem->GetSaveGameNames(OutSlotNames, PlayerIndex);

#

doesnt exist in ISaveGameSystem

maiden wadi
#

O.o What version are you on?

kind estuary
maiden wadi
# kind estuary UE 4.27 UwU

Ah. You can do this then for the time being. But yeah a lot has been worked on for that stuff recently.

TArray<FString> FoundSlots;
TArray<FString> FoundSaveFiles;
    
IFileManager::Get().FindFiles(FoundSaveFiles, *FString::Printf(TEXT("%sSaveGames/"), *FPaths::ProjectSavedDir()), TEXT(".sav"));;

for (const FString& FoundFile : FoundSaveFiles)
{
    FoundSlots.Add(FPaths::GetBaseFilename(FoundFile));
}

return FoundSlots;```
slender dagger
#

is there a way to change which buttons are classed as game and which ones are classed as UI in the player controller class? want to make it so that I can press the esc button while in UI only mode but right now I have to set it to game and UI

maiden wadi
slender dagger
kind estuary
maiden wadi
#

OnKeyDown isn't a node. It's a function override in widgets. And Input preprocessors don't exist in BP.

maiden wadi
kind estuary
#

its almost done

#

but its necessary cause i need to learn

#

the hardest part was the serializing stuff

#

i used the GetPathName so all the references inside the actor are automatically restored

#

that was huge

maiden wadi
#

That is a pretty nice thing to learn, yeah.

maiden wadi
#

Oh my. The game I'm currently playing implemented zooming using FOV. This is wildly nauseating. 🤢

vivid vapor
maiden wadi
lofty rapids
vivid vapor
vivid vapor
# maiden wadi Can you give some screenshots of the function?

Or well actually here are the relevant bits. So I enter the function with a reference to my bullet struct. The bullet has an array of bytes that represent player IDs so it knows which players it has applied suppression to. (So it doesn't continue applying it every tick as it flies past)

I make a copy of the array at the start of the function, run a bunch of logic and then add the ID of the detected player to the copy. Then I try to save it to the struct.

If I try to immediately after print the length of the array I can see that it has gotten bigger. (When I access the struct reference directly from the function input). But on the next tick the array is cleared out when I copy it again and try to print the number of elements.

#

Ive stared myself blind at this so maybe I am missing something incredibly obvious

#

it seems that breaking a struct and accessing an array creates a copy so that is why I try to copy it, modify the copy, and then put the copy back into the struct.

lofty rapids
maiden wadi
#

This looks fine. I'd AddUnique, but other than that. You can be 100% sure that you don't mess with the struct elsewhere?

lofty rapids
#

i didn't know you could pass by reference to a function in blueprints ?

maiden wadi
#

The little diamond pin.

lofty rapids
#

i see that, interesting

vivid vapor
#

Im just trying to rapidly prototype and I definitely miss the debugging of C++ right now. 😛

#

the blueprint debugging isnt as useful

maiden wadi
vivid vapor
#

thanks for the input

lofty rapids
vivid vapor
#

yeah, but debugging code allows you to view information in a much denser format so to speak

#

but I will see what I can find out

#

at least it doesnt seem like I glossed over something obvious within the function itself

lofty rapids
#

simple things like is it even running is a good check

#

then like mentioned go through and check your values

vivid vapor
#

will do

chilly crane
lofty rapids
chilly crane
#

top one finds a key in a map, whereas the bottom one finds a object in an array

lofty rapids
#

and the top one isn't

chilly crane
#

but there's only 1 loop in both, and the toarray comes before the loop in the bottom one

lofty rapids
#

since you using an array and contains the lookup is likely O(N), where with a map it would be O(1) like in the top

lofty rapids
lofty rapids
chilly crane
lofty rapids
chilly crane
#

I wanted to use the top system, which would work nicely with a data table, but I can't put references to instanced actors into a data table, only into data assets, so now I'm stuck with creating a data asset for every single quest I ever put in the game

lofty rapids
#

the blue is pure, the green is regular

#

so when that top foreach runs, every loop it will pull from that pure node and run it

chilly crane
#

true, marginally faster, but it all adds up when you have many systems

lofty rapids
chilly crane
#

well if you think about it, I can't imagine a player having more then 30 quests at one time in an RPG

#

I never have managed to get more then 15 at once

#

but it is a good idea to avoid such issues

lofty rapids
#

and that seems like a lot to have at once

chilly crane
#

wouldn't want such a weird thing to be crashing performance

lofty rapids
#

i would keep the current, and add a map and try it out, so you can switch back if it doesn't work

#

or if it's being a pain in the ass, atleast you have what works

chilly crane
# lofty rapids and that seems like a lot to have at once

xD for sure. So maybe I should switch it up again so I use a data asset in place of a data table. ie. an array of the quest struct that can contain all the info. Then a quest giver would need only pass in a quest ID, and that can be found in the DA, and from there it's basically the same as my original approach.

#

my only issue with this is a data asset is hard to edit like a data table, it's not really meant for it

lofty rapids
#

tbh i have not used data asset, or data table yet

#

i just use regular variables

#

i would probably have a map of id's to struct

#

which would be all my quests

chilly crane
#

fair enough, but that's not efficient when you want to push updates to users later on

lofty rapids
#

right, i have no idea about that stuff lol i'm still learning

chilly crane
#

this is the all important button

lofty rapids
#

could you use the data table to populate a variable ?

#

that would be my thought

chilly crane
#

I could, but that option is greyed out in a data table

lofty rapids
#

i mean can you loop through the data and populate a variable ?

#

this way you can get the base stuff, then alter it in game

chilly crane
chilly crane
lofty rapids
#

the issue is you want actors, but you don't want the reference ?

#

i'm not understanding the problem with this, can't you just pull from the array and populate the array in a map ?

#

or is it different in a data asset ? im a bit confused

chilly crane
#

Actor exists in the world, this actor needs to be killed/collected/interacted/etc. to progress the quest. When said actor has something happen to it, it can send a message to the quest manager that such and such happened. However how is the quest manager supposed to link that particular actor (which might be one of many instances), to a quest objective specifically?

Adding tags (of any kind) could work, but that would not be scalable as it requires you to ensure (manually) that the same tag is present in both the quest data, and the actor that is interacted with. A reference is more dynamic and adaptable.

Data tables do not allow references like this, whereas data assets do

lofty rapids
#

a ref does make sense

#

i'm saying for lookups a map is best, you can populate it from any data

unique bronze
#

hi, I cant figure out the difference between clear array and remove item, clear says it just clears it entirely, which means no index, no elements, just empty.
But for Remove it says removes all instances of item, which is always the same since arrays can only hold one type, so basically it removes all items, to me it sounds like its the same as Clear?

maiden wadi
dark drum
# chilly crane Actor exists in the world, this actor needs to be killed/collected/interacted/et...

You can use a soft actor reference for actors pre places in levels. You'll just need to check its loaded before you do anything with it. It's not always clear from the soft ref if the actor was destroyed though so you'll need something to check it.

An alternative option is to make some sort of actor manager/register that actors can register themselves with using either a name or gameplay tag. In the quest you can then define the name/tag. When you want to get it you check with the actor manager/register to see if it exists, if so, return a ref to it.

chilly crane
chilly crane
#

ooh ho, seems soft refs do work in a data table

unique bronze
maiden wadi
#

You shouldn't reference things in a world from static data. You're gonna have a bad day.

unique bronze
maiden wadi
#

You reference some actor in a level in some form of static data using a softref. Essentially using it's path name. Some level designer comes along and deletes the original actor to fix a bug and replaces it with a new one. You now have a different pathnamed actor that can no longer be resolved.

chilly crane
#

and that also get's more complex when you have arrays of structs, where now it's basically an object, with potentially many nested arrays

lofty rapids
unique bronze
#

I see, so as long the items are the same type they can be anything and put into the same array and basically filtered out like this too? Interesting, I find arrays heavyhitters on my brain, especially if it comes to assigning one array inex to another array index.

atomic hollow
#

Question?
This makes the window windowed but the title bar is not shown

lofty rapids
chilly crane
unique bronze
chilly crane
#

structs are useful to keep data related, so don't be afraid of them

chilly crane
narrow pulsar
#

Is there any known issues with 5.6 or is it safe to use compared to 5.4/5.5

unique bronze
lofty rapids
atomic hollow
maiden wadi
#

I mean the actor exists in the level and the quest data is static. So both machines can independently look up the same thing.

chilly crane
lofty rapids
#

damn, thats a lot of levels

chilly crane
#

well we don't have much manpower for an open world game, so the idea is to split the areas into much smaller regions, and make a seemless travel system

#

that also gives the illusion of real life size to the player

chilly crane
atomic hollow
lofty rapids
atomic hollow
lofty rapids
#

try it in standalone, that will be a better view of it, and i would even test a packaged version see what happens

atomic hollow
tender salmon
atomic hollow
chilly crane
#

got to find those artists somewhere because we've only 1, and I'm not artistically orientated

lofty rapids
#

i have a bunch of projects, nothing major yet just a bunch of tests and figuring out unreal

chilly crane
#

perfectly reasonable

lofty rapids
#

eventually i want to try to create my own animations, but i can hardly create a mesh of any kind lol

violet bison
#

I have a copy of a pawn (clone) that isn't controlled by the player, but it won't fall and apply root motion constant force didn't work on it (the abiltiy is called, but it didn't move), and I don't know how to normally add movement input for it

lofty rapids
chilly crane
maiden wadi
# chilly crane <@143471961723371520> so how would you reference actors in the level in quest da...

Really depends. I mean for the identification for me it's a two part issue. Things need a definition. Either a datatable row or better yet a data asset that defines the object with it's icons, gameplay actor, name, etc. And this definition can also hold static tags. And then each instance can have it's own set of special tags.

So say you have a quest where you need to toggle any lightswitch. The static data can tag it as a lightswitch. Cause you don't want to be putting this tag on every single lightswitch, you'll miss a dozen or so easily and it's just upkeep for the level designer.

But now you have a quest where you need to enter a room and toggle a specific lightswitch. You don't want it bugging out by entering the room, leaving and going somewhere else to toggle a switch. So you can tag that specific instance in the level with a special tag for that one quest.

chilly crane
maiden wadi
#

Yes. Because not every quest has one target. You should design the system to handle any kind of quest you can consider. And if you tell a player to go kill 20 of something, you really don't want to be populating an array of references to every single instance in the game(and also having bugs from dynamically spawned things). Tags, while not as direct of a reference, are enough of one and can both be generic and unique.

chilly crane
#

I wasn't intending to. If I want you to kill 20 enimies, it would be a soft ref to the parent class of enemy. But if you need to flip a specific lever, then it's a ref to that specific level in the level.

However I understand what you're saying and it makes sense to me. I have 1 last question, would you say this is particularly scalable?

surreal wagon
#

(left is bp_sodacan) (right is bp_vendingmachine) why only the first can gets a physics impulse?

dark drum
verbal parrot
#

I'm confused. Why does the isValid function complain that the value is none? I thought its' sole purpose is to check that and prevent errors? I'm trying to assign a generic material, if the physmat check fails

dark drum
dark drum
lofty rapids
#

scenecapture2d drops fps by 20fps

#

thats crazy even if i don't use the texture anywhere

#

just having the actor in the level

verbal parrot
dark drum
# lofty rapids just having the actor in the level

Yep, but considering its rendering the scene from another perspective 20 fps probably isn't bad. 😅 I think you can disable the scene capture component though so you could have it disable by default and enable it when needed.

lofty rapids
#

i was trying to have an overview look

dark drum
lofty rapids
lofty rapids
#

theres a setting for render every frame, and render on move, rendering every frame is a nightmare but if you render on move thats not to bad, but if you want live your fkd

maiden wadi
# lofty rapids scenecapture2d drops fps by 20fps

What size RT? I noted a similar issue in our latest project. It was invalidating VSM and lumen stuff on the rest of the game map when drawing the RT, which was way up in the sky in a black box. Some people have said this doesn't happen in their project but I couldn't manage to find a way around it.

lofty rapids
#

i was thinking just have it render on start and move, and just use some sort of tracker points to place dots on the map which can move

#

kind of shitty work around but it might do what i'm looking for

atomic hollow
#

i am using this command r.VSync 1 but it not works, what would be the problem

atomic hollow
maiden wadi
#

In fullscreen mode?

atomic hollow
maiden wadi
#

I'm uncertain if that works in Borderless Windowed. How are you testing that it's not working? Screen tearing or framerate limit not capping?

atomic hollow
maiden wadi
#

Actually wait, that command looks odd. One sec.

atomic hollow
maiden wadi
frosty heron
#

Capture then untick capture every frame

#

I do that to take a snap shot with the "camera"

atomic hollow
atomic hollow
silent pilot
#

Hey are there any specific rules to use polymorphism in Blueprint?

maiden wadi
silent pilot
#

and somehow it's returning false 😔

#

when passing by through polymorphism

frosty heron
#

Unless you override it, there's no reason it will give different value out of nowhere;

atomic hollow
maiden wadi
#

That's what VSync is for. So no, not really. I'd try to determine why that isn't working.

silent pilot
#

"Has Hit Result" is a function that's overridden

#

and virtual

#

and it's returning false

maiden wadi
#

In this class?

frosty heron
#

where's the polymorphism?

#

looks like you are using the generic gameplay event data?

silent pilot
#

polymorphism is in Target Data

#

that class is subclassed

maiden wadi
#

TargetData is a struct?

frosty heron
#

ahh yeah, but you can't even have UFUNCTION in a struct

silent pilot
#

by struct I meant class

#

these are all built in classes and functions

#

so unless they're poorly coded

#

my problem must be from somewhere else

atomic hollow
#

@maiden wadi One small question.
Does this overrieds the console commands if it is enabled.

maiden wadi
# silent pilot

But where is the virtual here? This is a library function.

#

FGameplayAbilityTargetData? Is that what you subclassed?

maiden wadi
# silent pilot

I assume that if this isn't returning true for your custom struct, that you're not passing the correct struct at that index of the target data.

#

You should breakpoint in UAbilitySystemBlueprintLibrary::TargetDataHasHitResult and see what is in TargetData.Data, if anything.

atomic hollow
#

how to set console variables from blueprint and does those nodes work if the game is shipped
Plz help!

lofty rapids
#

"When "Check for Command Line Overrides" is enabled in the Apply Settings node, these command-line arguments will take precedence over the user's saved preferences."

silent pilot
#

not by me yes

atomic hollow
maiden wadi
# silent pilot it is what is subclassed

Like I said I would breakpoint that function. Cause you're not getting the right entry if you're expecting it to return true. It's either empty, or not the right struct.

lofty rapids
#

i don't think but i could be wrong

#

google says some console commands can overwrite the apply settings

#

which makes sense

atomic hollow
lofty rapids
#

👀

proud notch
#

I know the pic doesn't says much but the point is I am working on a filter that turns on and of some BP actors, but I am wondering if there is a better way to make lots of comparisons like the ones in the picture without making a mess in the graph ? any advice?

spice gazelle
#

Has anyone ran into this before? Was a 5.5 metahuman, updated the project file to 5.6.

#

There wasn’t a metahuman chat section so asking here

spice gazelle
#

Oh lol.. didn’t see it

#

Thanks

surreal wagon
#

How can I check collision with any character?

#

nvm found it

vivid vapor
#

really bizarre problem

rose citrus
#

I have an event on an item blueprint to draw the throw trajectory and I'm using predict projectile path. The thing is, on my throwable blueprints, they have different mass, and I think the predict projectile path node only accounts for 1kg mass. Is there a way I can change the mass for the predict projectile path?

maiden wadi
vivid vapor
maiden wadi
vivid vapor
#

it does say the array has gotten bigger right after, but then it is again set to zero.

vivid vapor
surreal wagon
vivid vapor
# maiden wadi I can at least confirm that your function here is fine. But I'm also curious if ...

https://blueprintue.com/blueprint/g6wc6n0q/ this is what is going on outside (sort of). It does look like the out bullet is a copy but at the same time it works for all the other parameters? Only the array is problematic. If I instead feed the direct reference from the getter into the suppression function (instead of what update bullet returns) then the result is the same it seems

maiden wadi
#

You passed it by ref into the UpdateBullet. Then passed out a copy and passed that to CalculateSuppression.

vivid vapor
#

let me try again with it

#

not using the out I mean

#

it definitely is part of the problem but not using it doesnt fix the problem unfortunately. Saving it the way I showed inside the function still results in it not being saved on the next iteration. So I'll have to go further back it seems.

#

what a mess I've made

#

I'll have to keep digging and see if I can figure this out. The best part of game dev is when you get to not work on the things you want to work on. 🫠

Thanks again for the input still!

tidal ridge
#

Hey guys, is it easy to use character blueprint for adding animations or is it better to use animation blueprint?

maiden wadi
tidal ridge
#

Well I mean for a specific mechanic animation basically like for example combat, or damage, a lot of tutorials that I’ve watched only focus on the character blueprint and not animation blueprint, because they look recommended and that’s why I’m asking?

storm solar
#

Im making an action rpg. Characters can walk around a town or dungeon in "field mode" but when touching an enemy I want the scene to transition to an arena where the "battle mode" begins.
Is it easier to have it load a level for the arena and than load the original level, or have the Arena be in the same level and the player will teleport / posses an actor in the arena to fight?

steady night
#

i would have it in the same level or rather a sub level to save load time but if its an open world with a huge map that would be bad, however the loadtime to return would cause annoiance

#

would start by doing it in the same level to get it working

tiny tundra
#

Need some help with popup widgets! I have a Widget on my Blueprint Actor, I have a class with some clickable elements showing up on it. Looks great and all of that - the issue is this - interactions don't work in a build. Everything works great running in the editor (I can clock on the little X and the widget will close, etc) but in a packaged build, it is unresponsive. Any ideas?

lofty rapids
#

i'm just setting and playing animations on some projects right now, with the idea that i'll eventually use an anim bp

#

but the benefit of an animbp is also i have seen you can do foot ik where you can adjust the feet and legs for different heights

#

so theres a bonus there

jagged moss
#

I have a player character, that has a widget UI. this UI has a button, when i activate the button i shoot a projectile. I want to change it so the projectile shoots from another actor instead, how do I do this?

Ive been trying for a while but i cant figure it out. at first i was missing an object reference when trying to cast and could not figure out what to put there.
After some testing i put this inside the level blueprint:
Event begin play->create Widget
Then added a reference to the other actor and connected to the widget, not sure but if i understood it this should be an easier way to reference back to it later so i dont have to cast it.

How do i set this up with the button on the widget?

#

tag on reply pls

tidal marlin
jagged moss
#

I made a reference in level blueprint like this as someone suggested

#

How do i manage to make the projectile start off at the arrow component off the actor?

tidal marlin
#

Just....
GetComponent, GetComponentByTag, Cast ->GetComponent ect.

#

A lot of option

#

You can change logic, and send your arrow directly in widget.

#

And get it from DiceSpawner from here.

jagged moss
#

If i go by casting i cant find anything to put in object

jagged moss
tidal marlin
jagged moss
#

i cant get the actors position tho, thats kind of the issue

#

im using spwn projectile. when i spawned it from character it worked, but i want to spawn it from another actor instead but that does not work when i do it the same way

lofty rapids
#

you need a way to distinquish it from the others for sure

jagged moss
lofty rapids
jagged moss
#

I have only one actor

lofty rapids
#

ok do you plan on having more ?

#

or this will only be the one of that class ?

#

because if it's the only one of that class then it's easy to get

#

just get actor of class

#

but if you have multiple of the same class

#

you need a way to tell them apart, i usually use id

#

for instance your class has an id variable thats a string, you can then set it to "thisActor"

#

then you get all actors, loop through and find the one with that id

#

or you can use gamplay tags as well

#

i think you can put a tag on the actor you want to get

#

ya you can get all actors with tag and get zero

#

as long as your tag is unique

#

theres different ways to get a reference, but it depends on how flexible you need it to be

jagged moss
#

I dont think i need much flexibility

lofty rapids
#

get actor of class should work, just don't have more then one in the scene of the same class

#

thats the most simply way i use it all the time

jagged moss
#

i need it to come from the arrow component on the actor tho, and do i still need the cast node?

lofty rapids
#

when you get actor of class, pull out from that and do get your variable name

#

whatever the component is

#

and there you have it

#

then get its world location

#

i was just using an arrow component, turned it into an arrow mesh because arrow components only have color

lofty rapids
#

depends really on how complex your animations will be

#

and if they will line up properly

jagged moss
lofty rapids
lofty rapids
jagged moss
lofty rapids
#
-set
+get

@jagged moss

narrow sentinel
#

Anyone got any idea I hit this finish task here

#

on my state tree I have it so if task succeeds to move to next state but it doesn't seem to be

#

it's like it's go stuck somehow

lofty rapids
narrow sentinel
#

I'll try AI first see what they say cause it's more on AI side of things then animation

jagged moss
lofty rapids
#

you should be able to get it if the variable name is set

#

are you dragging out of the return ?

#

or just right clicking in an empty space ?

#

your probably not in the right context tbh

#

drag out from the return value of the get actor of class

#

this is your actor that your getting

jagged moss
#

okei it worked now

#

i either wrote it wrong or didnt see it. i think maybe i search for the name but i had to write it correctly to get the option.

#

i still dont understand the cast to option fully tho

lofty rapids
#

as far as cast to you need something to cast to anyway

#

just get the actor if you can

#

no need for casting, casting just sets it frome one thing to another if it inherits from it

#

so you would cast on an interaction

#

because you hit an "actor" but you want your "actualActor"

jagged moss
lofty rapids
hardy merlin
#

I've got an unusual issue. I have a character that is using a navlink to go off a ledge. However, they are overshooting the destination of the nav link and are winding up in a corner, out of the navmesh. How can I get the character to "steer" in the air?

cunning cloak
#

Could someone ELI5 what "sweeping" does? It feel like it leads to strange behavior when I am updating my actor's location, but maybe I am misunderstanding something...

valid geyser
#

@cunning cloak Says its to help with collision, it checks at every increment if there is collision in the matrix grid

tidal ridge
valid geyser
#

You don't want 100 animations it will lag

#

get every axis (there's 8) and make 3 for each one according to walking/swimming and transition between them that's 24 a state

#

for walking/crouching/jumping and swimming that's almost 100

#

but they not being played in the same state

warm oriole
#

Anyone know/have a reference for what state tree considerations do? I dont' see anything that's popping out for their use case. It looks like it may just be whether the branch should activate (selection utility?)

tidal ridge
valid geyser
#

https://www.youtube.com/watch?v=4d5vRYe3bLE combat and all other animations the same

Hey friends! Today we're taking a little dive in to the Anim State Machine - this will be more of a refresher for the intermediate users out there but you'll definitely pick up a new tip or trick! State machines are a great way to animate characters, particularly movement animation. States are mutually exclusive, which is why they are a very nea...

▶ Play video
#

combat just needs collision sockets on weapon that move with the animations

#

and a simple overlap>>>do damage function

#

on the sockets...... if theres aweapon in the hand socket the weapon needs 3 sockets on it to detect overlap

#

could get away with 1 but 3 is better for a sword

tidal ridge
#

well how do i add the damage in the anim_BP, also in the state machine do i need a Enum for multiple attack animations for example light attack 1, to light attack 2 and 3, how to add in one state in the state machine?

glossy crag
#

here is all relevant blueprints

#

ive been trying to pinpoint this for 3 hours

#

i just cannot find the issue

#

it seems to only do this when the typewriter effect speed is lower than 0.075

valid geyser
#

you got spawn sound not play sound

#

and by the way your graph is pretty complicated you could make it way simpler by just checking overlap and playing a sound if talk = true

#

pretty sure if you wanna play a sound every character you wanna get the same speed at which you are printing the text by how you decided the speed and plug that into a play sound function then run that function when you talk

glossy crag
#

and also yeahhh ik its pretty fucked up my bad

#

i havent gotten around to rerouting it yet

#

i spent half of yesterday just trying to get it working so its a mess

grand oasis
#

Is there a way to compare two physics objects velocity before they hit each other? for example Two balls with physics hit each other, I want to get the velocity of both balls and get their length and direction. or would I have to store their velocities before they impact

valid geyser
#

@Finn you get actor velocity with a node and when it hits then engine should remove velocity automatically but if you want impact you either need to pull from engine or calc how fast he stopped and how fast he was sent flying

stable coyote
#

I need some math help, cuz it's not my strong suit. I created a system to track and display my ammo, and it works 99% of the time, but I have experienced 1 bug. If the ammo reserve is greater than 0, but less than the ammo needed to fill the magazine (let's say there are 5 bullets in the mag out of 12 but only 2 remaining in reserve), the calculation doesnt work and it spits out the wrong number. Can anyone see a possible fix?

hollow pond
stable coyote
#

Well I want to only fill the mag with the amount needed, so if there's a remainder in the mag, the whole mag size shouldnt be removed from reserve

hollow pond
#

sure, that makes sense irl, but we're coding. do it easy: add the mag back to the reserve. set mag to 0. then try to fill the mag again from the reserve

stable coyote
#

You know... I cant even be mad, that is just me being silly ahahah, you're so right

#

And a very easy fix too

#

I was just thinking very logically about the steps, instead of thinking about how to simply impliment the feature

#

Thank you

hollow pond
#

no worries

#

I was writing up a longer solution before I made the realisation myself lol

stable coyote
#

That's the thing about code, intuitions are often misleading

valid geyser
#

@stable coyote dividing 5 ammo in the mag by 12 will give you ~2

#

unless its recipricol

#

which case you get less than one

stable coyote
#

It's not a divide, it's an add

#

Which is also just poorly implemented

valid geyser
#
#

he talks about it mid video

stable coyote
#

Oh yeah, but I already got a fix from meme, just had to think outside the box

grand oasis
paper gate
#

real quick question for you guys, im working on a camera system and adding in my own lag with interp speed and whatnot. If I wanted the horizontal movment to be a little snappier but the vertical speed to be slower could I just plug 2 different interps into a make vector or is that gonna cause some kinda confusion with the vector that comes out on the other side?

hollow pond
valid geyser
#

@Finn you can play multiplayer in the editor on one pc

little helm
#

Is there any way to remove localization from key slots used in key bindings in unreal engine ?

little helm
maiden wadi
#

But what key slots? And why wouldn't you want them translated?

#

Sorry. I'm not trying to be difficult. Just not sure what you mean by key slots. Generally speaking if it's an FText it should be localized. If it's breaking something from localization then you're probably doing something that isn't correct.

little helm
frosty heron
#

Can you show it visually?

little helm
little helm
# little helm

Even though I've removed the localization flag. Still it's translating to different languages.

maiden wadi
#

Why wouldn't you want that translated though?

little helm
frosty heron
frosty heron
frosty heron
surreal peak
rapid smelt
#

I want to make a shader/material that will totally flatten vertices after a certain height like a crush effect but in local object space not world space in terms of defining at what height to apply this effect, how would I go about this in the material editor?

little helm
surreal peak
# little helm is there any solution for that ?

I don't think so? If it still shows up in the gathered text after you disabled it via the Localization Icon next to the FText field, then I would say that's an Engine bug. Are you sure you don't have another FText somewhere that also says "Empty" and you just assume that's this one?

little helm
surreal peak
#

Then it's all fine though?

little helm
surreal peak
#

Okay, you mean if you change the language in your packaged game, the text still changes from Empty to something else?

little helm
#

Even I've unchecked this and still it's translating

surreal peak
#

Did you ever localize this in the past?

little helm
surreal peak
surreal peak
little helm
surreal peak
#

You must have at least localized that word in the past.

#

It doesn't magically know what Empty translates to.

little helm
surreal peak
#

Newer UE5 versions have the option to change the Game Language as a preview setting in the Project Settings or Editor Preferences.

#

To test localization.

#

You can also change the language inside the Widget itself at the top to test existing localization.

surreal peak
#

But either way, the word Empty doesn't just magically get localized.
It would also not magically localize in that exact FText unless the Namespace and Key match.

#

Please make sure you compile the localization files.

#

fwiw, delete the old ones.

maiden wadi
surreal peak
#

Right, I assume it should still stop if one recompiles the localization?

maiden wadi
#

That I'm not sure on. I'm not sure if the engine ships with different loc files by default that the project just overrides. I'm a little confused why marking it as not localized doesn't work though.

#

@little helm The other thing on this is that it should still be localized. Not everything is the same in every language even if it's "generic". Take something as simple as the ellipsis. most of the world's languages use "...". But not Chinese. Chinese use "......", specifically six dots instead of three that spans two Chinese characters. Never make assumptions with player facing loc stuff.

surreal peak
#

Yeah, not localizing these doesn't make much sense to me either.

#

Why would I want to read "Empty" if I change it to German

little helm
surreal peak
#

Even after restarting?

#

Does sound like the English localization culture code doesn't match.

little helm
#

I'm also saving the game settings as well

surreal peak
#

Does it work in Development Builds?

#

I wonder if the initial culture code for your game is different than the one applied if you select English.

little helm
little helm
surreal peak
#

That might still be an issue though. Maybe Epic's engine provided localization runs on a different culture code.

#

Just a guess though, but it makes somewhat sense to me that this could be the issue

maiden wadi
#

Maybe depends on whether it's being set to a subculture or generic?

surreal peak
#

Yeah, En vs En-Us etc.

maiden wadi
#

Bit odd that the system wouldn't just pick the closest correct word though if it's in any subculture.

surreal peak
#

The initial "Empty" is probably working cause it's just the default text in it.

grand oasis
grand oasis
frosty heron
#

ye I have a feeling it's not going to be nowhere responsive.

#

kinda like kicking a soccer ball in pubg

#

it starts moving after X delay

grand oasis
#

you'd be wrong

frosty heron
#

maybe

grand oasis
#

although ideally you wouldn't be playing with someone who has 200-300 ping in a brawler type game

#

12-100 ping is extremely playable and reliable to the tee

#

150 -200 playable but input lag is a thing. 200+ is just asking for problems

little agate
#

my gosh, multiplayer headache 💀

grand oasis
#

This was usa server and me in australia

frosty heron
#

looks responsive enough to me

grand oasis
#

Yeah physics is fine. took forever to get to to actually work. but got there in the end

#

I am still learning all the aspect of this engine. probably done a shit load of things wrong. but if it works, it works I suppose

#

still need to learn how to make server list and menus and game goals and all that stuff

#

This is my first time attempting multiplayer

frosty heron
#

if you are using steam you can just get the session info

grand oasis
#

Yeah I just have to reseach it and make it

#

Currently mentally unstable

frosty heron
#

going to gym 3 - 4 times a week helped me the most with keeping a positive mental.

#

you just stop thingking about all the negative stuff.

grand oasis
#

Yeah I have been neglecting my body for a while not going to lie. I am skinny af

lofty rapids
#

there are "better" ways to do things as far as performance and modular structure

#

but it doesn't really matter if it works well in one way, you don't need to change it

#

only when these things become a problem...

#

but i would plan ahead, as changing everything around can be quite a mess.

chilly sundial
#

I'm using FloatingPawnMovement and the AddMovementInput function. Somehow, it seems to ignore all collisions. Is that expected?
My pawn has a sphere collision as default scene root.

maiden wadi
narrow sentinel
#

Anyone help me with whats wrong with my collisions here

#

the ship col has that

#

and this actor has this

#

now my knowladge would tell me the ship should overlap with the box in bottom image as the box collision settings are ship collision overlap

lofty rapids
#

which one are you looking for collision to respond on ?

narrow sentinel
#

so because the ship is the thing moving would I want to do it from the POV of the ship rather then the other way around

lofty rapids
#

it doesn't matter imo, just one way or the other

narrow sentinel
lofty rapids
#

depends really on where you want the code to stay

narrow sentinel
#

so bassically when the ship overlaps with the bottom box the bottom actor does XYZ

lofty rapids
narrow sentinel
#

so I've got it to fire I've bassically had to do it where the ship col overlaps with world dynamic only and Actor B box col overlaps with Ship

#

which i'm sure I tried before and didn't work so not sure whats changed but it's working for now how it should from what I can see

lofty rapids
#

figures because the other one is only overlap ship, so it never fires

#

what you can do is make them both ship objects

#

it's not really the other is a ship

#

but this would allow for them to only collide with each other

chilly sundial
narrow sentinel
#

so i was contiplating making a collision object channel for Actor B but for now I'll leave it as world dynamic in terms of ship pov

grand oasis
lofty rapids
#

i just barely started using physics the other day

#

idk much about it

surreal wagon
#

What's the .ini config to not open previously opened tabs, each time the engine opens it crashes due to a corrupt tab

graceful sage
#

hey all. I'm having a hard time getting setting up being able to click my minimap and move the camera to that location. Is there a sort of formula to follow to convert mouse position to these coordinates

thorny kestrel
#

I need help in understanding how does Spline tangent work in UE5?

How to generate Beautiful Spline by Math using BP?

What I'm trying to do

I want to create a Spline that looks like the read line in the image.

The Spline should lie in the center between 2 🟩 concentric circles, and forms a right angle with the segment connecting 2 center of circles.

In the image:
🟥 Output Spline
⬜ Spline Points
🟦 Spline Component Origin
🟨 Measurement
🟩 Help Understanding the structure

What I've got

I've managed to place all the ⬜ Spline Points, but stuck at calculating the tangent to make the curve smoother.

The third picture is what I got now. (the center of circle is also connected just to debug coordinate calculation).

The forth is the blueprint to generate Spline points , and the index [0] when creating the array is the center of circle (to debug).
(for simplicity, I only screenshot half of the points construction, since there would be too many connections)

What I've tried

I've done some research and found the equation to calculate any point on the the curve by given 2 tangent and 2 spline points as follow.
(((2x^3)-(3x^2)+1)P0) + ((x^3-(2x^2)+x)T0) + ((x^3-x^2)T1) + (((-2x^3)+(3x^2))P1)
where T stands for tangent, and P stands for point, and x stands for distance traveled.
But I can't revert this equation since there's 2 tangents in it.

My Questions

  1. How can I smooth the Spline?
  2. How does Spline Tangent Vector work in UE5?
  3. How will the Vector pointing direction affects the result?
  4. Shouldn't Tangent be a line crossing that Spline point, how did it become a Vector?
spark steppe
#

did you try setting them to 0?

rose citrus
#

I'd like to know a good way to detect if an actor was splashed by liquid from a thrown bottle that breaks. A sphere trace wouldn't always return they were hit since it returns the first hit object, right? I was thinking about first checking if the actor overlaps a sphere collision, then if it does overlap, do a line trace or multiple line traces from around the bottle on hit.

thorny kestrel
lofty rapids
full badge
vagrant fog
#

Hello - I've got what feels like a basic question and I'm just missing something.

Quick breakdown

I have a modular character with separate male and female meshes
I have Data Tables for both containing all parts except heads/hairs (DT_MaleBody & DT_FemaleBody)
I am trying to use the Data Tables to set the "default" player body based on which gender is selected by the player during character customization.

My main hang up right now is I'm not sure how to make the rows in the Data Table correspond to the actual skeletal meshes on my character. Then I'm also not really understanding how to iterate through the table to use the data to set the new mesh

Edit: I have since renamed my Data Table Row Names to be the same as my body part mesh (so, removed Gender Prefix) (Also added rest of body parts and just left them empty if I didn't want them assigned).

So my solution ended up being to Tag the Skeletal Meshes and then use Get Components By Tag to provide data to match my Data Table to my character blueprint. I can now successfully swap all of my male meshes for my female meshes with the press of a button

lofty rapids
#

got this from ai

keen prairie
#

What is the most efficient way to translate this UE4 code to UE5's new input action system?

glossy crag
#

hey

#

this is my first time doing state machines

#

this is my logic for Jumping -> Running

#

this works fine, because it plays the first bit of the jump animation but the issue is that it instantly switches to running animation after even when midair

#

I want to delay the running animation until the player is touching the ground but unsure how to do so

#

the other weird thing is that the condition that plays the sound / checks for negative Z velocity is what allows the transition in the first place but it doesnt even play the sound

thorny kestrel
thorny kestrel
thorny kestrel
# thorny kestrel I need help in understanding how does Spline tangent work in UE5? > How to gener...

I found and tweaked out the solution:

Let's say the curve's circle radius is R, and the vector pointing on the circle (red) is V.

It's pretty easy to get the tangent vector of V just by (-Vy, Vx), and thus all that's left is the calculation of the curve strength, or the Tangent Vector Length.

Referencing the post, a circle formed by a curve of n points, the Tangent Vector Length should be (4/3)*tan(pi/(2n)), but after some experiment, this only fits when drawing a full circle, in my case, it's a 1/3 circle.

I slice and place spline points for every 45 degrees, and after some tweaks, the following equation for Tangent Vector Length fits the best.

Tangent Vector Length = R * (4/3) * tan( pi / (180/angle) )

R in the equation stands for the radius of the circle, and angle stands for the angle between spline points, in my case, 45 degrees.

mellow folio
#

Is it possible that your velocity is zero when you are put into the jumping state so you are put out of the jumping State before the velocity change begins?

#

The whole concept you're using velocity here seems treacherous because what if the player is walking down a hill, I think in that case he would have negative velocity but still be on the surface

fiery anvil
#

Can someone help? for some reason the top hat is inside the head while the crown is ontop, the socket is right on the top of the head so im not sure why the hat is inside it, i tried messing with the root in blender but it didnt work, am i doing something wrong or is something broken?

#

i even exported the crown and matched the root points and size but it just wont work

glossy crag
#

although this is only for jump to run so it shouldnt activate if they arent jumping

#

I fixed this problem tho by just removing all the conditions and making it just if Z velocity is == to 0

#

im just making this game for a class so i can probably have a shit ton of improvements

#

this is my first ue5 project in general so state machines have been a bit of a struggle

#

i have to make all assets my self for the project so i only have 3 animations made

frigid acorn
#

Hello, I'm trying to figure out how the Game Animation Sample has this nice editor that contains all the camera rigs within the camera asset.

I'm using 5.6, and when I make a Camera Asset, all the Camera Rigs have to be separate files, and it's just not as nice to work with.

If I migrate all the camera assets to my project, it converts the camera asset rigs into actual separate camera rig files, so there's something fancy going on in just the game animation sample project?

robust lance
#

i think ive gone code blind after 8 beers and no sleep. im prototyping in blehprint

#

what am i missing here? shoot prints like 5 times then i get

#
LogBlueprintUserMessages: [BP_PlayerBase_C_0] 37
LogBlueprintUserMessages: [BP_PlayerBase_C_0] 78
LogBlueprintUserMessages: [BP_PlayerBase_C_0] 116
LogBlueprintUserMessages: [BP_PlayerBase_C_0] Shoot
LogBlueprintUserMessages: [BP_PlayerBase_C_0] 41
LogBlueprintUserMessages: [BP_PlayerBase_C_0] -917
LogBlueprintUserMessages: [BP_PlayerBase_C_0] -877
LogBlueprintUserMessages: [BP_PlayerBase_C_0] -835
LogBlueprintUserMessages: [BP_PlayerBase_C_0] -795
LogBlueprintUserMessages: [BP_PlayerBase_C_0] -754
LogBlueprintUserMessages: [BP_PlayerBase_C_0] -713
LogBlueprintUserMessages: [BP_PlayerBase_C_0] -672
LogBlueprintUserMessages: [BP_PlayerBase_C_0] -631
LogBlueprintUserMessages: [BP_PlayerBase_C_0] -591
LogBlueprintUserMessages: [BP_PlayerBase_C_0] -550
LogBlueprintUserMessages: [BP_PlayerBase_C_0] -510
LogBlueprintUserMessages: [BP_PlayerBase_C_0] -469
LogBlueprintUserMessages: [BP_PlayerBase_C_0] -429
LogBlueprintUserMessages: [BP_PlayerBase_C_0] -389
LogBlueprintUserMessages: [BP_PlayerBase_C_0] -348
LogBlueprintUserMessages: [BP_PlayerBase_C_0] -309
LogBlueprintUserMessages: [BP_PlayerBase_C_0] -264
LogBlueprintUserMessages: [BP_PlayerBase_C_0] -222
LogBlueprintUserMessages: [BP_PlayerBase_C_0] -182
LogBlueprintUserMessages: [BP_PlayerBase_C_0] -141
LogBlueprintUserMessages: [BP_PlayerBase_C_0] -99
LogBlueprintUserMessages: [BP_PlayerBase_C_0] -59
LogBlueprintUserMessages: [BP_PlayerBase_C_0] -17
LogBlueprintUserMessages: [BP_PlayerBase_C_0] 24
LogBlueprintUserMessages: [BP_PlayerBase_C_0] -935
LogBlueprintUserMessages: [BP_PlayerBase_C_0] -893
LogBlueprintUserMessages: [BP_PlayerBase_C_0] -853
LogBlueprintUserMessages: [BP_PlayerBase_C_0] -812
LogBlueprintUserMessages: [BP_PlayerBase_C_0] -769
LogBlueprintUserMessages: [BP_PlayerBase_C_0] -728
LogBlueprintUserMessages: [BP_PlayerBase_C_0] -687```
#

in this case it shoots twice then i start getting negative values from the now - last fired timestamp

#

is it just a bad idea to do timing stuff like this directly from the input?

frigid acorn
robust lance
#

yep

#

without tracking in tick or using delays. just thought id try doing it directly within the input event

frigid acorn
#

Might be yank but I usually just use bool variables with a timer or something cause it just works lol

robust lance
#

yeah i usually use timers

#

just thought id try this since it would be less variables and no need for tracking

#

just need the fire rate and when you last shot

#

maybe its a timing problem with inputs? i dunno

frigid acorn
robust lance
#

yeah this was just an experiment. i though id gona code blind and not noticing some simple mistake

frigid acorn
#

lol

robust lance
#

i just dont get why the value is going negative. its positive for the first x amount of shots

astral mist
#

How about burst firing? This wouldn't work.

robust lance
#

it could if you made the burst the actual shot and checked for divided time limits to fire x shots over that time

#

but yeah

#

awkward

astral mist
#

(Certain firearms have a burst mode where a single trigger input will result in more than a single round being fired)

robust lance
#

but im not using any burst fire, shooting is like a side mechanics in a break out game

astral mist
#

Not a bad idea (your implementation) but it seems to have its limitations

#

Maybe 8 beers wasn't enough.

robust lance
#

lol

astral mist
robust lance
#

ive got a whole system in a plugin that does this stuff perfectly for all kinds of shooting types, burst, delayed hold, bolt action etc

#

i do now you mentioned it lol

#

i can pull my plugin into this, but its probably overkill since thats just the "usage" part of the plugin.

#

but then again the item, inventory and interactions, probably would be useful. since i can handle scores, buffs, etc with the inventory module

#

oh while im here. im having an issue fading in and out lighs, and their redius

#

im trying to interpolate their intensity and radius but there is no in between in the light itself

#

full intensity, or none

frosty heron
robust lance
#

one sec

robust lance
#

ok ive fixed it

#

@frosty heron what unit is interp speed?

#

what is it related to?

#

you pass delta and interp speed to some interp functions

#

it wasnt fading because the interp speed wasnt high enough, i had to set it to 1000....so im guessing interp speed is milliseconds?

frosty heron
#

I don't know the math, but higher interp speed = faster transition.

#

you can't convert that in seconds unit from what I read.

#

For me, I just use feeling all the time for fine tuning.

#

afterall if I need something over X seconds, I will use timeline.

robust lance
#

i was using 0.1, assuming seconds

#

sorry

#

1

frosty heron
#

I interpolate on tick when I have something that is not fixed in length. E.g rotating head, aiming, etc.

robust lance
#

and using 1000 seems like a second

frosty heron
#
The interp speed determins the length or distance of the transition, and it is not “seconds” nor is there a way to convert this to seconds (1/seconds is how you adjust the playrate of a timeline or something similar by converting the seconds into a float).
A higher Interp Speed value means it will transition to the target quickly by making the transition speed or length shorter.
A lower value will increase the length of the transition.

From the internet.

robust lance
#

so maybe its millseconds?

frosty heron
robust lance
#

stupid way of doing it, i hate the interp to functions

#

i like to pass my own alpha

frosty heron
#

you do that when you have a fixed time length

robust lance
#

but i dont think bp has functions tha take an alpha do they?

frosty heron
#

if the Light needs to fade over X seconds, just use timeline?

#

FInterp with alpha

robust lance
#

i think ive seen one with a alpha and also an interp speed

frosty heron
#

yes you can use alpha

#

can just disregard the interp speed

#

use timeline and alpha

#

Where the timeline value is just 0 at the start and 1 at the end.

robust lance
#

should just take delta time and you divide it by your time

#

desired time

#

i know you said it doesnt add up, but now it seems to me thats what interp speed should do. divide by the delta

#

i dunno