#blueprint

1 messages · Page 152 of 1

worthy jasper
#

And to add onto this anti cheats don’t stop hacking. They are just a deterrent

versed crypt
#

one guy in NL got private investigated and etc.. other one is facing millions in fines, nintendo aint playin

hoary junco
#

there's a guy called craftyboss that's making mods for super mario odyssey and he hasn't gotten shit from nintendo

#

he's made new game modes, new maps, overhauled entire game mechanics, even added a rewind time function and nobody has stopped him

versed crypt
#

i meant in modding the switches, nintendo doesnt really care much about poeple modding games, as much as people who makes switch be able to play those mods

hoary junco
#

but if you notice too with nintendo. they can't stop you modding anything, console or game, all they can do is attempt to suppress you through the legal system, there's nothing they can put into their hardware or software to actually prevent it

versed crypt
#

yeah i know, its tokens... if its android, user clicks buy, goes through android pay, gets token, that token is sent to your api, you can check that token in your server-side with google api, then you verify he actually bought it, and then you can update your DB that he gets donut skin or some sht

worthy jasper
#

for “currently equipped skin”

versed crypt
#

ok, but you need api and back-end server with your databas...

worthy jasper
#

If your keep tracking of what skins they are using sure

versed crypt
#

im not sure how else youre gonna keep user data without having some sort of API and DB on your server? You need to verify that token on your side too, and then update your database and players record according with what he bought etc...

hoary junco
#

I'm just happy that I figured out how to have a system where when you look at an object it brings up a prompt to press a button to use the object, and the prompt changes based on what key is bound to that action...

worthy jasper
#

right you would want a DB and API to track player stats

#

You don’t necessarily need a server but you can

versed crypt
#

how will you use DB and API without server? Where will you deploy it?

worthy jasper
#

Serverless DB/API

#

it’s pretty cool

#

Also gives you resilience to crashes

hoary junco
#

that could be easily tampered with though no?

worthy jasper
#

Serverless?

hoary junco
#

yeah

worthy jasper
#

No cause it’s still hosted

#

the actually way you access it would be the same of a dedicated server

hoary junco
#

well it would still have to be hosted somewhere... there's no such thing as data that isn't stored on hardware somewhere

worthy jasper
#

Well sure at some level it’s running on a server

versed crypt
#

yeah, its hosted anyways, theres nothing local...

worthy jasper
#

But for you on the top level it’s serverless in the way you aren’t running a dedicated server you login too

hoary junco
#

who hosts the serverless stuff?

worthy jasper
#

depends who you go with

#

I personally like AWS

hoary junco
#

ah so you'd still need to pay a provider

worthy jasper
#

api gateway/dynamo db

#

yes you would

versed crypt
worthy jasper
#

but it’s cheaper than getting a virtual server

versed crypt
#

cheaper, but need to look after the "call" numbers and how customisable they are...

hoary junco
worthy jasper
versed crypt
#

"Use pick up item binded key" and dont make yourself work harder

worthy jasper
#

but you aren’t paying for it if no calls are being made

#

With a server your still paying for downtime

hoary junco
#

and tbh it wasn't that hard to implement at all

#

even went a step further and made it show an icon based on the key by using a data table

versed crypt
#

so how do you store it?

#

i guess it game wide, and also if you restart game it should be still E

#

or F

hoary junco
#

nope, because whenever you stop looking at an item the prompt goes away,

#

so every time you look at something the prompt gets rebuilt and every time its built it reads the input list and finds the key associated with the interact action then shows that

versed crypt
#

ah ok, and how did you do it?

#

did you set instance or

hoary junco
#

that's how you get what key is assigned to that action

versed crypt
#

ah nice

hoary junco
#

I am gonna add a branch between the query keys and the get function though because I want each action to have 2 potential inputs
one for keyboard/mouse
one for gamepad
so if gamepad mode is enabled then it would get index 1 instead of index 0

versed crypt
#

i didnt reall used enchanced, so you have options menu where player can change keybinding?

hoary junco
#

I haven't made the UI for it but allowing someone to change their keybinds is built into enhanced input

#

like the use key is just an action as far as the code is concerned, then every time you press a key while in game it checks the input mapping context to see if that key is bound to an input action, then if it is it runs that input action

#

I'm really close to finishing the core inventory then I get to work on the equipment system

wise ravine
#

Can I not add a timeline in a function?

hoary junco
hoary junco
# wise ravine Can I not add a timeline in a function?

actually correcting myself on that, not quite correct, the addon lets you add timelines to COMPONENTS not to functions

functions are dedicated to things that are completed instantly, so you can't add delays or timelines into them. Best you can do is create functions for what happens before and after the timeline then slap the timeline in the middle

wise ravine
dawn gazelle
dawn gazelle
fiery swallow
#

Whoops

wise ravine
hoary junco
#

so because you're adding an offset delta means how much offset you are adding in that direction

#

so add world offset delta location X of 50 means you're adding 50 to the X value of the target according to the world's axes

dawn gazelle
#

Delta = Amount of Difference

wise ravine
#

I see

#

I just dont understand why it's named offset and not location

hoary junco
dawn gazelle
#

Add Relative Location is effectively the same thing as "Add World Offset".

hoary junco
hoary junco
#

because it's based on a location relative to the character and not based on the world

dawn gazelle
#

Oh, that I'm not sure of.

hoary junco
#

pretty sure it is

#

like if you're moving objects around in the UE viewport, there's this button in the top right, this mean sit's being used based on the world's grid

wise ravine
#

Well that much is true I believe, I understand the purpose of each just not the naming convention

hoary junco
#

but if you click it it changes to this meaning it's based on a grid focused around the object.. so the object's front face becomes the X axis

wise ravine
#

It doesnt seem consistent idk

lunar sleet
#

wait till you find out there's an add local offset 😛

wise ravine
#

oh no

lunar sleet
#

that one is useful tho

hoary junco
wise ravine
#

how does it not make sense if the add and set changes the meaning of each?

lunar sleet
#

in my case I use add actor local offset to move something in the same relative direction regardless of it being mirrored in one instance

dawn gazelle
wise ravine
hoary junco
# wise ravine how does it not make sense if the add and set changes the meaning of each?

because the world grid is static, it never moves, so if you add a location to the world grid it will always be the same place so in order to change you have to offset, aka shift the location from one place to the next

but the relative grid is always changing based on the location your character is and the direction they are facing so adding a relative location would actually do something different

dawn gazelle
hoary junco
#

a relative grid is one generated relative to an object

dawn gazelle
#

I can make it so a timeline looks like crap in either scenario 😄

wise ravine
#

I'm just going to work with add world offset for now

#

see if that works

#

and it does beautifully 👍

hoary junco
obtuse glacier
#

hey there, just outta curiosity, has anyone had any performance issues with switching a child actor class multiple times?

#

I'm working on a weapon system and I'm trying to choose between having weapons as a child actor (swapping classes) vs detach and attach sockets to the mesh without child actor

versed crypt
#

so is it safe to say, that i can use gameinstance as a global variable bank, to load player data from API/save, and use GET on gameinstance everywhere i need some sort of global var data?

obtuse glacier
versed crypt
dawn gazelle
versed crypt
#

which is more efficient, and what is trade-ofs of each one?

#

like which one to use basically, pros and cons

quartz lotus
#

I am a little stuck again. Picture One shows an Event that gets triggered and returns the Name of the "PlayedCard". The print statement does print the Name of the "PlayedCard" and the "Row Found" print statement also is successful after finding the Card in the Data Table "DT_CardDeck". It does not create this widget and/or add it to the viewport though as a child.

If I force it to do something, like I did in Picture 2, where I force selected "3ofHearts" in the Data Table Row to create a Card Widget then it works. I used Event Construct just for this example as Event Construct will always happen and eliminates the possibility of error from Event Dispatcher Logic. This method works and adds the "3ofHearts" to my viewport as I would expect.

I do not understand why when I pass the information through my Event why it does not behave the same. Can anyone give me insight of what I am doing wrong? Any help is appreciated! Thanks!

lunar sleet
#

TIL you can right click copy all properties in group for Collision Settings 🤦‍♂️

dawn gazelle
# versed crypt which is more efficient, and what is trade-ofs of each one?

If I remember right GameInstance subsystems need to be defined within C++ to be usable, so all your variables and functions of it can only be created in C++, so that could be a big con, but you can at least expose what you make to be used in blueprints. Apart from that, they are a means of separating your logic into more manageable bits. Like, GameInstance could become quite crowded depending on the needs of your game.

versed crypt
#

so main difference, is gameinstance can only be one, and subsystems many so better segreg?

ashen pilot
#

Coming from Unity, I'm looking for a way to decouple my blueprints from my player character without going to c++
Any tutorials / courses that address this ?

versed crypt
#

There is a way, but when i decouple I do it in C++ as thats more readable and managable

#

some functions and stuff can be reused easily and c++ can expose to blueprints easily

ashen pilot
#

I've been avoiding c++ since it's been many years since I last used it 🥲

sick ore
#

Hi good day guys!
We need an expert developer to help upgrade our unreal engine game web3 login flow using blueprint, you must have experience about cronos plugin

sick ore
dawn gazelle
sick ore
#

@versed crypt kindly dm if you can an do this let's discuss please

trim matrix
#

it's fake btw, bro was asking to do it in c++ 5 seconds ago....

trim matrix
# versed crypt ?

he changed ' login flow using c++' to ' login flow using blueprint'

#

just be aware

versed crypt
#

they cant decide kappa

trim matrix
fallen ether
#

Web3 and scammers. Name a more iconic duo lol

white hazel
#

Why cant I see or change the name of paramters on events / functions?

lunar sleet
#

you either resized it too much left or the engine broke, try restarting it

white hazel
lunar sleet
#

try loading default editor layout from Window

white hazel
lunar sleet
white hazel
warm elm
#

I'm trying to do a shop like pick up system where i can only pick up an item when i have enough coins, but when i try to erase the item from the ground after picking it up i somehow need twice the amount of money for it to disappear, in this case I've set the axe price to 2 but i need 4 coins in order for it to disappear, can someone tell me what's wrong?

pulsar geode
#

Is there any way to always render a static mesh in front of a material billboard within the same BP? I want to avoid the billboard clipping like this

manic sierra
#

I used a height map to make a landscape but I can’t sculpt above the size of the height map. Does anyone know how to fix that

iron furnace
#

Hey everyone, quick question. Im getting around to setting up sound in my game, so i just made an audio menu, and when i went to set sound mix class override, Im getting no options for sound class. It looks like all my sound classes in general are missing. Do i have to create new ones, or does anyone have anywhere to look online for help creating them?

#

Also just created a second project to steal the sound class from, but it also didnt have it.

lunar sleet
#

#audio might be able to help 🤷‍♂️

iron furnace
#

sent my question their way too, had a feeling but wanted to check here anyway. Thank you

simple apex
#

Hey, I have two questions.

Firstly, how would you recommend implementation of a rolling array, that is an array after X amount of time starts clearing the first indices?

Seccond, I am trying to convert some code I have written to a component, and am wondering how I could best access the current static mesh mesh or character movement component within that component?(see photos for reference if needed)

Thank you!

dry pecan
#

what blue prints node can help me loop in an OnEventPlayed?

dawn gazelle
dry pecan
lunar sleet
#

If you’re trying to listen for an event bind using a dispatcher

dry pecan
lunar sleet
#

Set looping

#

Promote the timer handle to a variable

#

When the boss dies, clear and invalidate the handle

dry pecan
#

Oh that's very simple

lusty shard
#

I have a ship landing as an intro to drop off the player and struggling to regain control. All my input is handled in the controller but not sure how to use the ViewTarget node to get me back to it.

#

Does BPPlayer have to be a character? currently it is a pawn.

dawn gazelle
lusty shard
#

So right now when the ViewTarget is finished blending, I dont have any wasd controls for example.

dawn gazelle
#

If all your movement is handled in your controller, how are you passing the movement to the pawn?

lusty shard
#

so I am spawning the BP_Player here and the trying to blend to it... but not sure if I need to do something different considering my moveing inputs ar ein the controller.

#

Before this, I was using gamemode override with BP_Player as the default pawn

#

then using playerstart to spawn at location

#

Now I have cleared overrides default pawn to make sure player cant just wasd pan away from the ship.

#

but adding pawn default to BP_Player in the gamemode override causes it to spawn BP_player at the player start... then another BP_Player is spawned because of the logic in the screenshot, when the ship lands

#

So just need to know how to get control back to the new BP_player after it is spawned.

dawn gazelle
#

All your movement is handled in your controller, right?

lusty shard
#

yea

dawn gazelle
#

So no inputs in your pawn?

lusty shard
#

right

dawn gazelle
#

So how are you passing inputs from your controller to your pawn? What's the code look like?

lusty shard
#

I was using the gamemode override to connect the BP_Player pawn to the GamePlayerController

#

I do not see where I can set the pawns controller inside of the BP_Player

#

was like this

dawn gazelle
#

That's not answering my question.... Possessing normally passes inputs to your pawn, but if you're not using inputs on your pawn, then possessing won't do much for you in terms of handing over control to the pawn.

There is likely something that is attempting to utilize a reference to the player pawn within the PlayerController that you might have been setting on Begin Play for example. If you're setting that pawn reference on begin play, then that reference isn't valid any more if you're spawning the player's pawn later so the controller won't be able to communicate to the pawn.

lusty shard
#

here is everything in the BP_Players event graph

dawn gazelle
#

Input on Player Controller > ????? > Pawn Does Thing
I need to know what is the ???? there

lusty shard
#

I honestly didnt know there was anything in that ??? spot lol

#

always thought controller handled input for pawn.

dawn gazelle
#

If you have the input defined on the player controller, it doesn't automatically pass anything to the pawn.

#

It's only if you define an input on the pawn that the player controller would pass the input to the pawn at all.... or rather that the pawn could potentially utilize the input

lusty shard
#

Literally the only thing ive changed for the drop off sequence is clearing the default pawn in the gamemode override.

dawn gazelle
#

Can you show me what one of your input events looks like on your player controller?

lusty shard
#

yep

dawn gazelle
#

So it's exactly as I said... You have an "As Player" refernece there.

lusty shard
#

AsPlayer variable is the the BP_Player ref

dawn gazelle
#

But when are you setting that reference?

lusty shard
#

ooooooh

dawn gazelle
#

If ya set it here after spawning, then it should work.

#

I think there's also an event in the player controller that can do that too.

#

OnPossess

#

That'd be useful for setting the reference when the player controller possess it.

ripe comet
#

how do i save the state of a level when i open a new one in game

#

the idea is that you go into buildings and come back out to your elavator

#

but it just resets the level when you come back out from the building

lusty shard
#

be back later!

dawn gazelle
ripe comet
ripe comet
# dawn gazelle Possibly.

ill give a little more context as to what it is, you are in an elavator sinking down into the ground and you have to make occasional stops at certain doors in the walls which are GOING to lead to various buildings (proceedurally generated hopefully), then you go back to the elavator and continue with whatever supplies you got

dry pecan
dry pecan
#

so dumb question, how do I set my OnCollision to look for specific charcaters to hit ? IE my boss and player?

dawn gazelle
# dry pecan

"Other Actor" is the actor that initiated the event detected by this actor.

#

If you want specific actors, then you need to find specific references to them, but for a projectile like this (assuming based on the name "bullet collider") you shouldn't necessarily care about finding a specific actor. You'd have either an instigator or owner set on this projectile which tells you basically who "shot" it.

#

That means using a single event and actor class, I could have a bullet either shot by me or the boss, I can have it ignore if the "Component Hit" event triggers if "Other Actor" == "Instigator" or "Owner", otherwise, do something like call "Apply Damage" on "Other Actor" then destroy the actor.

#

Assuming I've implemented the "Any Damage" interface on the character class of my player and on the boss class, they can receive the damage event and do what they need to do like adjust their health.

dry pecan
dawn gazelle
dry pecan
#

why when it spawns? the bullets will be floating in the air like bubbles waiting to be hit

opaque acorn
#

i tired this but it doesnt work

dawn gazelle
#

Or you being able to shoot yourself.

hoary junco
#

when you run a for each loop on an array, is there a way to skip the 0 entry and start from 1?

dawn gazelle
dry pecan
hoary junco
# dawn gazelle Easiest way is probably to check if the array index != 0 and plug that into a br...

I see... the thing that I'm running into as an issue is using a save/load system, essentially when the save button is hit, it adds the list of items in a level to a soft class reference map so on load I can grab each level object and their locations, and then spawn them in, the only issue is when I load from a save, the first instance of each unique item in a level is spawning a "0 duplicate"

like say there's a BP_Sword in the level
I save
I load back in
and there's a second sword on top of the first called BP_Sword0

dawn gazelle
ashen pilot
#

Sorry to butt in, but I can't find a way to reference child actors as default values from the inspector or am I doing it wrong ?

dry pecan
dawn gazelle
# dry pecan Actually I had to for aesthetics, since the enemy estate creates them from metal...

Ok, that's fine, but then they should still probably share a same base class as all "Bullets" likely need to behave mostly similarly, namely, they need to ignore the owner, and hit whatever other targets.
Bullet

  • exposed variable: Initial Speed
  • exposed variable: Direction Vector

Begin Play: Set projectile movement to utilize speed & vector
OnComponentHit > OtherActor != Owner > Apply Damage > Destroy Actor

You can make a variety of bullets using this one class.
If the logic needs to change, then you'd probably want to create a child class and override existing functionality.

You could probably even expose the visuals as a variable too if that's all that is actually changing.

maiden wadi
dawn gazelle
#

What you'd need to do is on Begin Play use "make array" plugged into a set of your array, get a reference to each of your components, then do a "Get Child Actor" from each of the components.

maiden wadi
#

Also, as someone who uses child actors in some things. I would avoid using it in anything that gets placed in a map unless you can find some confirmation that their serialization stuff has been fixed up.

hoary junco
#

If you have beginplay on an actor, does that beginplay event trigger when that actor is spawned into the world?

#

because if so I might know what's going on with this weird save/load issue but... idk how to fix it

dawn gazelle
#

Pretty much, yep.

hoary junco
#

is there an event that can trigger when an actor is spawned in but not when the blueprint itself initialises?

ashen pilot
dawn gazelle
#

If you have C++ access...

hoary junco
# dawn gazelle There is the construction script and there is Begin Play in blueprints. Construc...

so... I think I have the issue here then...
I think what's happening with the item duplication for save/load, is I spawn in, there's a sword in the world, I hit save, I exit, and when I load back because a sword is in that location in the viewport and the level design it stays there and it spawns in a second sword from the save file....

If I set the sword in the viewport to "hidden in game" would that fix this whole issue?

#

actually thinking about it, it wouldn't...

#

because then where would the initial sword come from before the save file is created

maiden wadi
#

You're dealing with something else that is also easy to fix in C++.

hoary junco
#

I don't want to touch C++ I despise it please tell me there's a solution in blueprints

dawn gazelle
#

GUIDs and storing states about actors.

maiden wadi
#

🤮 So much work.

#

But unfortunately the only BP accessible solution.

hoary junco
maiden wadi
#

C++ makes it easy. Can even save pointers to things. Because it's all resolved via their name and outer chain.

dawn gazelle
#

Basically, you add a GUID field to your actor classes.
You spawn or place them, you give them a GUID.
If you manipulate their state, you then save their data in a Map variable of GUID > StructureOfData.
When you load, it reads the save and looks up the GUID assigned to it, then manipulates itself so it matches whatever data you saved.

hoary junco
#

yeah.. but it's C++.. the whole reason I even use UE5 over unity is because it has blueprints.. I've tried both C# and C++ so many god damn times and it just caused brain melt

dawn gazelle
#

So a pickable item, may have a simple bool set for its data structure.
If it gets "destroyed" you'd add the GUID to the map with that checkmark checked.
On load on that particular actor for your pickups, you'd look at the Map for its GUID, if it finds it, and sees that it's checked, then it destroys itself.

#

If no value for the GUID, or no checkmark, then it does nothing to itself.

hoary junco
#

and would this apply to items spawned in later like when they are dropped from a player's inventory?

dawn gazelle
#

You can.

hoary junco
#

well I have all the items in the game coming from a test item parent class, so as long as I apply it to the parent it should work on all of them right?

dawn gazelle
#

You could have a separate map for "Spawned" items. You'd generate the GUID when you spawn them, marking that they are a "dynamic" item that was added at runtime, then when saving it can save to the appropriate Map, including data such as its transform.

hoary junco
#

ok so actually in blueprints what nodes etc am I looking for?

#

because I haven't done anything related to GUIDs before

dawn gazelle
ashen pilot
#

The more I try to make stuff dynamic with blueprint the more I'm motivated to just put everything in player character =_=

#

how do I get my child actors

maiden wadi
#

GetChildActor off of the array element.

sick ore
#

Hi guys please I need an expert who now about unreal engine cronos plugin I want to upgrade our existing game web3 login flow, this Is paying job kindly dm if you are in

ashen pilot
ashen pilot
hoary junco
#

post paid jobs there

sick ore
dawn gazelle
ashen pilot
sick ore
maiden wadi
# ashen pilot

What are you trying to do exactly? What is your use case for this whole thing?

sick ore
#

Ok thanks

ashen pilot
#

each Lock has its own functions and a Door has many locks, that's why they're child actors

maiden wadi
#

What all goes in a lock? Like what all components are in the actor?

ashen pilot
#

not any particular component for now, just functions and events

gentle urchin
#

Wouldnt you want a gameplaytagstack?

#

And just remove keys from there?

maiden wadi
#

To start. I would be very iffy about using ChildActorComponents with anything that gets saved in a level. They have some quirky serialization issues where they get stuck and sometimes stop spawning, etc. They're perfectly fine for runtime spawned stuff, but I would very very strongly recommend avoiding them at all cost when placing an actor with them on a map.

ashen pilot
#

I'm not spanwing anything for now so it should be fine. I'll keep that in mind

ashen pilot
gentle urchin
#

You interact with the lock

#

The lock doesnt interact with you

#

Let the lock handle the key consumption?

#
if (Player->ConsumeKey(MyKeyType))
{
 Unlock();
}
#

Atleast that would be my i approach to this

#

Otherwise you end up will all sorts of logic in the player class

ashen pilot
#

Yep I get it but I'm learning blueprints and trying to do it how I'm used to with Unity, which is bringing me so many headaches

#

the logic itself is fine, I'm just having a hard time referencing actors / child actors (in editor)

gentle urchin
#

I assume locks are on something unlockable

#

So that thing would have refs to its locks

#

Either runtime spawned or editor spawned

ashen pilot
#

Yep

gentle urchin
#

Locks would probably just be a separate actor

#

With a delegate for "OnUnlocked"

ashen pilot
#

it would work as a separate actor, but why isn't it possible as a child actor ?

gentle urchin
#

Unlockable would be bound to this

#

It is possible with child actors, i just avoid them like the plague

#

Had some initial issues with them when i was fresh in the game. Ditched them and never looked back

ashen pilot
#

Welp

#

I'm starting to see why

sour moat
#

I created a character as NPC AI and set "move to" logic, it turned out that NPC couldn't walk to the location but really "move" to the location. The problem will be solved if I duplicate playercharacter as NPC AI. Anyone know why?

hoary junco
#

@dawn gazelle so the whole GUID thing isn't working

#

the problem here isn't destroyed items sticking around, destroyed items go away just fine, it's that if there's 1 of an item in the level when the level spawns, I save, it saves that there is one of that item in the level, like the save command doesn't run twice I used printstring to test that, yet when I load the level back in, there's 2 of them there now.

maiden wadi
#

Cause you need to destroy the other with the same Squid at load.

#

Or just not make the one with the same and use the original.

hoary junco
#

idk where the hell to implement it though is the problem

maiden wadi
#

Where you're loading. The loading code needs to gather all actors of that type, and check if any of them have that guid. If they do, just put the data on them and don't spawn anything. If there is none, spawn one and put the data on it.

harsh coral
#

Heya, can I get some general advice on blueprinting?

harsh coral
#

I´ve been trying to develop some blueprint actors and utilities for my company, but I´m an artist and only do this because there is noone else to do it for me.
So, I´m trying to squeeze this in and don´t really have a chance to properly learn it, I´m cobbling together stuff I find mostly and then just brute force my way through it, seeing which nodes could do what I need etc...
I´m pretty far in with my most ambitious blueprint (a modular human anatomy model), but I keep getting crashes on all ends and I don´t know where to begin trouble shooting....
Is there a specific log for these?

#

All I can find in the crashlog is something about the GPUSkinCache.cpp

#

Also, I don´t know how to optimize it in general and I don´t know how to set the visibility of the actors in a way that I can override it through sequencer...

maiden wadi
#

Do you have any crash logs at all?

jagged sedge
#

Is this on 5.4? I think I've seen this error in another channel too

harsh coral
#

Which is bugging me, as I constantly have to go into game mode (not PIE, just pressing G) so I can see whats actually visible.

harsh coral
#

For example I get a crash if I just duplicate a level with the BP in it.

#

I was wondering if some of that is just 5.4 related.

jagged sedge
#

That definitely might be yeah

harsh coral
#

Dang,.

#

I really need the nanite tesselation for the next season of the TV show we´re working on...

jagged sedge
harsh coral
#

I need to be able to control visibility of every single one of them. I grouped them into layers but I also need more granular control.

jagged sedge
#

Hmm

harsh coral
#

I only figured out how to set the "hidden in game" tag that I can override in sequencer, but I can´t override the "visibility" tag in sequencer.

#

So, thats what I´m doing rn, overriding hidden in game through sequencer, but then of course while working in editor the objects are still visible and distracting.

#

I can deal with it rn, but I´m also thinking about my team mates of course...:)

#

And I can´t believe there isn´t a simple solution to that somehow.

jagged sedge
harsh coral
#

Yeah

jagged sedge
#

You'd just have to specify which component you're trying to hide as an input

harsh coral
#

I´ve been trying to figure out the best way to update certain things without having the whole blueprint tick every frame in editor.

jagged sedge
#

Events don't tick every frame

#

I mean this, wait a sec

harsh coral
#

And without having to set it up every time the bp is used, like through a sequencer event.

jagged sedge
#

Oh, hmm

harsh coral
#

I mean, eventually I might just come up with an editor utility bp to handle a few of the issues I´m having, there were some good updates on what you can do I´ve heard in the newer versions.

#

Anyways, I don´t actually have time to discuss this in detail, the GPUskincache crash is the most urgent right now.
Gotta figure out if its still workable or if I have to bite the bullet and revert to 5.3...:(

jagged sedge
#

Yeah sorry, can't really help, sounds like a complex use case

harsh coral
#

Yeah.

#

Troubleshooting 1 o 1: Reproduce with simplified stuff...:)

#

Its not like I don´t know how to troubleshoot at all, just looking for shortcuts because I´m pressed on time.

jagged sedge
#

Using a level actor is out of the question? You'll have to set it up once per level only, not once per sequence

#

Instead of spawnable I mean

harsh coral
#

I´ve considered a few things when building the blueprint, afair the reason why I went with blueprint actor was, that the biggest issue with the previous setup (just using sublevels for all anatomy layers and controlling them in sequencer) was the handling of animation.
With this blueprint its very easy to use the lead actor pose to have one component control animation of all 300plus skeletal meshes inside the actor.

#

The biggest downside now is, that in order to override ANYTHING on any of the skeletal meshes, I have to add them from the list of the blueprint in the sequencer instead of just dragging/dropping them directly from the viewport into the sequencer, like I could before.

#

I hope I can still find a way to do it through a blutility maybe.

#

Oh, also for the sublevel setup to work I had to always duplicate it, as I couldn´t just reference the original sublevels, because then they would be changed for all scene using them, if I updated anything in them.
Which would create a lot of issues and overall was just very prone to artists effing things up.

#

But yeah.
Back to troubleshooting the gpuskincache issue.

#

Already checked and it doesn´t seem to be an officially reported bug

ashen pilot
#

If I want to make a global reference to my UI widget, do I need to make a game instance bp ?

jagged sedge
hoary junco
#

@maiden wadi so.. I've tried so many different ways and this shit just won't work. The closest I got it to working is in the construction script where it deletes itself.. the only problem with that is, if I drop an item from my inventory, that gets deleted too.

harsh coral
hoary junco
#

the loading script is something I have on the gamemode so I had the idea of having a branch in there of if this item has a GUID that's already on the list, don't spawn the item.. but the problem is with that is I can't check if the item already exists if it hasn't been spawned in yet...

maiden wadi
hoary junco
# maiden wadi Where are you spawning the item at load?

so the way it functions is, when an item's begin play triggers it gets added to a map of soft class references to transforms, then on the gamemode blueprint, when the gamemode loads it runs a for each loop on the key array from that map of soft class references, then it does spawn actor from class, for each of those keys, and the spawn location of each actor that gets spawned is the transform associated with that key

queen heron
#

would a setup like this tangle the execution if both destination and target actor are valid?

hoary junco
#

I imagine this wouldn't work because it's trying to perform the same action on both

#

you need to insert conditions that would make it move to the vector and conditions that would make it move to the target actor

queen heron
#

hmm

hoary junco
#

like in your plan for this AI, what makes it move to the vector and what makes it move to the actor?

#

because it can't do both at once

harsh coral
#

GPUskincache.cpp crash

jagged sedge
#

It does work, it just takes the actor instead of the location vector @queen heron

twilit anvil
#

hi, i have a character pawn with fpp camera controlled by player, i want this pawn to use a vehicle but with everything handled by character - input, camera etc - i just attach the actor to the car and do not possess the vehicle itself. My issue is that i want the camera to move with the car and also be able to rotate it (just how it works for veh template itself i think) - but now i am able to move the camera as usual but it does not take the movement of the car into consideration - i need to manually move the camera while driving all the time to stick it to the same place, also it bugs out as with enough manipluation the camera moves around - looks like everything is badly set up - i will be glad for help how to setup everything to work as intended

hoary junco
#

@maiden wadi I FIXED IT! I moved all the stuff that comes off the item's beginplay to its construction script and it's working fine

twilit anvil
#

it looks like when controller controls the rotation of camera, everything else is ignored - like snap to target parameter on attachactortocomponent

maiden wadi
hoary junco
maiden wadi
#

It's just a management thing. GUID would replace my example above with the name. Skyrim uses the same type of system for things. Everything that exists in the world has a unique GUID. How you assign them and manage them on your objects is very personal style. IMO I'm not a fan of GUIDs, but they are an okay BP Only solution to that.

ashen pilot
#

is there a way to get a reference to access level blueprint's variables from other bp?

jagged sedge
ashen pilot
#

or I'm doing it wrong

maiden wadi
#

You can get the level script actor. I think.

#

The issue with that is that will put stuff on every level, you can't get an individual level's specific variables.

#

To do that you'd need to keep the level loaded at all times. And levels are very large.

jagged sedge
frosty heron
#

Bury the thought of using level blueprint maybe. The communication is one way in bp land which is why the most common advice in this server is to not use level blueprint

#

You can just make a new actor and drop it to the level. Call it a day

maiden wadi
#

You can use the LevelSciptActor. But it's for very generic stuff that you'd use in most any level.

ashen pilot
jagged sedge
#

But I am pretty sure there is a better place for your variable

ashen pilot
#

I'll try something else then, thanks

frosty heron
#

Global in what sense? Probably can use game instance to store the variable or savegame object .

Or subsystem if you don't mind going outside bp

#

U should make a data driven game, can always have data table depending on your use case

ashen pilot
#

and not puting it in bp_thirpersoncharacter

frosty heron
#

What inventory? If static data you can store it in data table

#

Or structs inside game instance with a bit of save and load data

jagged sedge
ashen pilot
#

Didn't think of that, thank you both

jagged sedge
#

Sounds more like a game instance thing yeah

maiden wadi
#

It's worth noting that it's better to just have the inventory largely be a component on whatever it needs to be on. Character, box, crafting table. Shouldn't put game's state in the GameInstance. You put global application data in the game instance. Otherwise you're making a headache for yourself to clear it out every single time you need to start a new game or load a different save, etc.

jagged sedge
#

True

ashen pilot
#

Makes sense

dark drum
hard sinew
#

How do you get the options from a combobox string?

maiden wadi
hard sinew
#

I wanted to set an option i had in them

fierce ferry
#

Can someone help me with this weird bug ?
When ever I open the main menu level through a blueprint in game (when the player presses the Exit button) The level gets this weird effect, What is the fix to this problem ?
Note : the exit button code is just OnClick > OpenLevel (in blueprint)

fierce ferry
tawny patio
#

@fierce ferry I think thats motion blur you disable that in the project setting

fierce ferry
#

It Disables the blur but the screen still twitches

#

It looks like the sky is moving up and down (I don't know how to send an image of that)

queen tiger
#

Hey guys, im in unreal 4.25 and i have a map<int, {wins: int, losses: int}>

#

is there an "easy" way to sort this map on wins?

granite frost
#

Is there a way to transfer instances from level to level?

jagged sedge
queen tiger
#

is that cpp?

#

im working in a modkit for a game

#

i dont have cpp access to anything sadly

#

has to be all blueprint

#

sucks

#

but it is what it is

jagged sedge
#

Yeah looks like CPP only

queen tiger
#

i cant connect to an external db either

granite frost
queen tiger
#

so im keeping track of arena wins/losses in a savegame

#

all a bit scuffed, but i dont see another way

#

i guess il have to do some ugly ass logic to somehow sort it

jagged sedge
#

You can copy all entries into an array and then sort the array instead

queen tiger
#

yeah

jagged sedge
#

Pretty common workaround

queen tiger
#

il have to like, get the keys, then values, then add those to a new array by index

#

il see how far i get

#

thanks 👍

mortal dirge
#

Hey guys 🙂 Probably a super simple case of overlooking something.

I got a simple blueprint that activates chaos destruction on a geometry collection, but it only activates on the first object. Can't figure out why.

Both of the thinner slabs of grass are BP's, right is copy pasted from the left. The left will break and crumble as expected, but the right just drops (from Set Simulate Physics I assume). What's weird is the right side BP never fires.

Any ideas?

mortal dirge
tawny patio
versed sun
versed sun
mortal dirge
# versed sun

My radial impulse is not saying it's targeting "primitive component". Could that factor?

tawny patio
#

Hey guys from this dash forward setup how do you make it so the player dash backwards? Tq

#

Think it has to do with the forward vector need to change but not sure what node and multiply -1

mortal dirge
tawny patio
#

Like this?, I've tried but the player just quickly turn left right, I think its how the character rotation work (this is a 2D game)

#

Heres how the character rotate

craggy lake
#

Any idea why my event tick stuff only fires when I simulate , can I have it while not PIE'ing or simulating??

tawny patio
#

Take your time appreciate the help

craggy lake
#

Basically I want to move the controller to update the variable within a BP (ie, not the controller rigs own BP).

queen tiger
#

does anyone have a blueprint for quicksort that i can yoink

manic vessel
#

Help Im not smart enought to figure this out, although I think im somewhat close. Im trying to set the rotation of the hand so the up vector lines up with the forwards vector of the spline, The spline is in the crowbar shaft

forest basin
#

Hey folks i have a 5.4 project and im blocking out with supergrid... interestingly updating the spline component is not triggering the construction script on the wall blueprint. Any ideas?

edgy axle
#

hmm is it possible to like save temporary variables across multiple frames? I'm tryina save a deltatime for a sort of interpolation function, but I need the variable to stay after the function is called, without using a normal variable thing

#

sounds stupid idk

edgy axle
#

difference between two vectors always creates a new vector pointing towards the vector being subtracted from

manic vessel
edgy axle
manic vessel
#

Unfortuanly It is not :(I keep getting different rotations

gentle urchin
#

You got a right vector?

#

Forward cross Right = up

edgy axle
#

secondary hand and secondary game hand

manic vessel
#

Im a ctually just looking at that now

#

I sorted that out , but it was not realy an issues as the game hand was a child of the other all zeroed out transfroms. , if I grab the crowbar with a different hand rotation I seem to get diffirent results . What im after is a consistent rotation everytime,

gentle urchin
#

Did you try the cross ?

edgy axle
#

like with the hand rotated differently?

manic vessel
#

Yep Its VR, SO each time I grab with my hand , if my hand rotation is different I get mixed results. first pic is the most commmon. Im not sure whay Its not consistent

gentle urchin
#

so.. is this crowbar made up from a spline ?

edgy axle
#

I think you need to find the spline's forward vector at the point that you're grabbing it at maybe?

#

cause right now you're getting it's overall forward vector so it might not be pointing the same way as it would be if it was just the crowbar's forward vector

manic vessel
#

It should be , Im also trying it on another world actor and getting similar results

gentle urchin
#

I never trust the direction returned by a spline 😅

#

Should normally be fine but theres some conditions where it twists

manic vessel
#

tHIS SEEM TO BE 100% consistent. I just have to correct it for the up axis now and account for the inverted direction on the other hand

gentle urchin
#

well that's good

#

are you actually just rotating the spline itself ?

manic vessel
#

No It static. Im just trying to align the scene component that the hand position will follow to the spline, so the grip looks correct. . for Now I will just settle for setting the upvector of the hand to match the forwards direction of the spline at the nearest point

dark drum
#

Not entirely sure if this would be the right place to ask, but does anyone know any good ways to create documentation for blueprints?

maiden wadi
#

In what way?

carmine palm
#

how the heck can I do "While mouse button is down". (in hud)

dark drum
carmine palm
#

not clicked is png name. ignore that lol

#

That obviously doesnt work

maiden wadi
#

Fuck me they need to delete the while loop from the engine.

carmine palm
#

agreed

#

but

gentle urchin
#

😂

carmine palm
#

The point being lol

#

It's supposed to be for quick animation thing without using button lmao

gentle urchin
#

While is blocking

#

Misleading to bp'ers

maiden wadi
#

What are you trying to do though?

carmine palm
#

While players mouse is down -> perform A then on release -> perform B

maiden wadi
carmine palm
#

for (int i = 0; i < my fucks; i++)

#

Which is never going to reach

#

so..

maiden wadi
#

What is being performed though. initially I want to say set some state on mouse down. Do something in the widget's tick, reset state on mosue up.

carmine palm
#

Weird thing is

gentle urchin
carmine palm
gentle urchin
#

For loops naturally avoid that

carmine palm
#

yields false lmao

#

even if lmb is down the entire time

maiden wadi
#

Cause that is from the player controller. If you're in Menu or UIOnly mode, player controller never recieves input.

#

Why aren't you using the same check you did before?

carmine palm
#

It was just a test just now

dark drum
# maiden wadi In what way?

ChatGPT has come to the rescue haha. I can copy the header preview and get GPT to reformat in a table lol.

maiden wadi
#

😄 Good AI minion.

dark drum
manic vessel
#

Im Attaching this gun to the hand and have a relative transfrom for this gun to the hand , How could I use that same transfrom to get the transfrom of the hand to the gun? instead, because I might need a function to attatch the hand to the gun and I would like to use the same relative position

versed sun
steady night
#

im trying to move my "pistol fire loc to a static mesh Socket

#

is this wrong ?

maiden wadi
steady night
#

aye

#

i changed it to this

#

but still not working :/

#

cant i get get socket relative transform or :/ ?

odd kiln
#

Actually it is set to "RTS World"

steady night
odd kiln
#

"RTS Component"

steady night
#

hm ok

#

and how show i set it ? set world transform or set location or ?

#

i cant get it correctly -.,-

odd kiln
#

What do you want exactly ? You want to set it Relative too ?

steady night
odd kiln
#

You can use "Set Relative Transform" node

steady night
#

so basicly the "red arrow" is my fire location

#

and when i equip a new weapon i want that location to be moved to the weapons socket "Muzzle"*

odd kiln
#

So "Set Relative Transform" could help I guess

steady night
#

wewll its not working .. or its moving it but its being placed wrong

maiden wadi
#

I also recommend not having this extra component. You already have what you need from the sockets to do anything that arrow component will do.

steady night
#

you know what...

#

thats acctualy makes way more sense

#

altho how would i use a socket in this case

#

when i need to attach to component

#

socket ant a component

maiden wadi
#

Attach it to the weapon

odd kiln
#

Can't you use "Attach Component to Component" node ?

steady night
#

erhm

maiden wadi
#

You attach it to the same thing you're trying to attach to arrow to right now.

steady night
#

nah i dont get it

#

so in this case the pistol weapon has the socket

#

and i should attach it to the fire loc ?

#

should be the other way around

craggy lake
#

Any ideas why my control rig goes to multiple values instead of staying on proper x y z numbers (only one controller selected)

#

As such (sorry for camera, no discord on this pc!)

maiden wadi
# steady night

No. I mean delete and ditch the fire location thing. It's a useless component. You have an emitter and you have a weapon with a socket. Attach the emitter to the weapon with the socket instead of attaching a thing to the weapon with the socket to attach the emitter to the thing.

past compass
#

does anyone in here have any experience with using IPFS in Unreal?

maiden wadi
#

I only really deal with stuff on one planet, sorry. :/

past compass
#

lmao

craggy lake
#

As such (sorry for camera, no discord on this pc!)

drowsy anvil
#

hello, I copied code from a youtube video exactly as it is, but when I put print string to "anydamage" when I shoot a bullet at an enemy, it wont print anything, is this a collision issue?

#

both bullet and enemy has collision spheres, so how did I mess this up?

thin panther
#

Could be a collision issue, but without fail everyone that has claimed they had an issue but "copied the code exactly", did not in fact copy the code exactly

tepid raft
jagged sedge
#

Does anyone have a suggestion what I should name a function that does this? I can't come up with a concise name. It does the following:

  1. I get the socket transform of a static mesh socket in component space
  2. This transform does not take into account the transform of a socket the static mesh is attached to, so we need to get the transform of the socket it is attached to and apply that, too.

Of course I would also be glad if someone has a better way of doing this... I use the resulting transform as an offset from a target bone where my hands are IK'd to

lusty shard
#

Then you fill the function with comments

fallow umbra
#

Hello, how could I get the data only view for a specific blueprint? (no nodes added) sometimes is automatically - sometimes is not working at all
Right now the only way to get this is to make a child blueprint - but for most of my blueprints it doesn't make any sense to have inheritance only to get that view

chrome pumice
#

Yo guys quick question, whats the best solution when i want to move an actor that is a child actor of my player? as example i have a weapon actor attatched to my player wich moves depends on what i put into the class, now the problem is it allways seems to move it allong the world and not locally, the scale and rotate works fine but the location variable allways moves it completly wrong

#

I moved it how its supposed to be and then took the coords on the right

#

then on spawn i tried multiple things, as i saied the scale and rotation works but the rest doesnt

#

I keep getting super many problems when i try to move an actor inside an actor like this

jagged sedge
chrome pumice
#

Yea but the thing is, the static mesh gets picked by the weapon i equip (in a class) and i just allinged it for the guns

#

I have a variable in my class that tells me how much i want to move the weapon when holsterd

#

but somehow the add location nodes are all useless

jagged sedge
jagged sedge
chrome pumice
#

Yea thats what i at least planed

jagged sedge
chrome pumice
#

Same with a door actor, i have a door actor in an room actor, when the door opens in the room, the door allways starts flying off the screen

drowsy anvil
chrome pumice
#

Is there a node that works well with moving actors that are children of other actors?

random pulsar
#

this is my dash,the issue is that i can press it how much times i want and it inreases players speed like a lighting ,how can i make it so there is a delay?for me to be able to dash if i just already dashed

fallow umbra
thin panther
#

For instance if both spheres block each other, and you're using event beginoverlap to apply the damage, it will never call, as there's no overlap

sly forge
#

How do I make the Datatables in a plugin show up in this function?, I have multiple data tables but non show up there

random pulsar
#

i did itold_man_yells_at_unreal

bleak wraith
#

can someone help me ?
my pan works and disables edge scroll but after that edge scroll is not enable back

#

my edge scroll also

lunar sleet
random pulsar
#

bros please help with v sync

#

it not saving

#

and does not work

vapid ice
#

Any idea what could cause UI widgit button to stop function is packaged game?, it works fine in PIE and standalone mode. just not lunched or packaged. (it does not change shadeing when hovered nor can be clicked)

#

it still displays but does not interact with mouse curser. Already checked input state (game ad ui), show mouse curser visibility, and made all other ui not hit testable (self). IS there any setting for editor only input/editer only button that could cause this?

bleak wraith
bleak wraith
lunar sleet
bleak wraith
lunar sleet
#

What’s not working now

bleak wraith
#

when i press pan middle mouse button it disables scroll and then if I press pan again it is enabling scroll

#

but it should be when I release button automaticallyt enable it again

#

instead I am pressing middle mouse button again to activate edge scroll

lunar sleet
bleak wraith
#

hmm let me try hold on

#

this is not disabling while I am panning

#

this also not working

#

so wierd

tight pollen
#

I would like to check whether the light from the flashlight falls on the actor, how can I do this?

#

I need to create some Radial Trace or can it be done faster?

tight pollen
#

or Is it possible to get what a ray of light hits?

#

or something?

lunar sleet
bleak wraith
bleak wraith
random pulsar
#

folks please help

#

i tried many times

lunar sleet
bleak wraith
#

alright let me do it for a sec

lunar sleet
faint pasture
#

Sphere + dot product angle check will do it

#

knowing if it hits ANY part of an actor is hard

#

knowing if you're pointing at the origin of an actor is easy

random pulsar
#

but i need to save this,like i have all the settings in the game instance

lunar sleet
#

ok, so save it

#

use a save game object if you need it to persist

random pulsar
#

but there is a binding on the v sync and also an event ,i cant link this information in my head

maiden wadi
#

Not sure what the game instance has to do with game user settings.

bleak wraith
#

@lunar sleet

hoary junco
#

I... need some serious help on how the hell to do save files....

So I have an inventory component that I attach to any actor with an inventory
That inventory component has an array of structs in it, the structs contain the item ID (which then refers back to a data table) and a quantity, and the array is of the various items in the inventory

If I want to save the game and load the game, how could I save that array of structs? like what could I possibly do to store that info via blueprints?

lunar sleet
#

did you setup source control yet @hoary junco ?

hoary junco
formal steeple
#

Edit: Just noticed the multiplayer channel sorry!

lunar sleet
hoary junco
#

it's the whole "how do I create an array of arrays" problem..

#

because each inventory in a level has its own inventory contents array, I want to be able to store all of those and then add them back to the game when loaded

bleak wraith
maiden wadi
#

@random pulsarYou need to call Save

lunar sleet
maiden wadi
bleak wraith
hoary junco
maiden wadi
#

If you need an array of arrays. You can't directly make a 2D array. So you make StructA have a single array of something. Then you make StructB have an array of StructA. Then you make an array of StructB and you have an array of arrays.

hoary junco
#

the thing is I was following a tutorial on how to do something like this, and the way the guy did it in the video was by creating this:

#

the left part of the map refers to the inventory system and is a soft object reference on the right is a struct containing an array of structs essentialy listing each container's inventory in the level

#

the only problem I found with maps is that if I add more than 2-3 entries to it, it starts overwriting itself

#

like add line 1, add line 2, add line 3, line 3 ovewrites line 1

jagged sedge
#

Sounds bonkers to me

maiden wadi
#

Eh. Could work. SoftObjectPtrs are essentially a path. But it's a fucky system.

hoary junco
#

I know it's a fucky system I've had no end of problems with it but I can't find any other tutorials that go this in depth or give you any idea of how to create a save for something like this :/

maiden wadi
#

The Map will overwrite if it thinks the key is the same.

jagged sedge
hoary junco
# jagged sedge Why not make an inventory component instead?

I do have an inventory component that's not the issue, the issue is when that inventory component is on the player character, any NPCs in the level, and all the containers that have items in them, I want to create a save file for the level that contains a list of all of those containers and their contents

maiden wadi
#

IMO, I feel for you. I never cared to solve the BP savegame thing. The general idea that you need to basically create structs for every single thing you want to save and then write copying functions for it all to and from the gameplay classes. Just.. 🤮

jagged sedge
maiden wadi
#

It's much easier just to gather up all of the actors and their saveable components and call serialize on them in order. And then reverse that at load. No extra.

hoary junco
jagged sedge
hoary junco
jagged sedge
#

Sorry, serialization = save game in this context

hoary junco
#

point stands how would I do what you and Authaer have been suggesting?

#

like saving an actor and its position I know how to do that's relatively easy, but how do I save all the actors in a level, as well as their components, as well as all the arrays and other stuff attached to them?

jagged sedge
#

TMap of actor name to actor data?

hoary junco
#

also what do you mean actor data?

jagged sedge
maiden wadi
#

Thing is, with a very small amount of C++, you don't even need that struct. Keeping a struct of shit you want to save on each actor type is a nightmare and so much work. :/

jagged sedge
#

True, but this is the blueprint channel

hoary junco
#

I did see a video of someone using an object blueprint to save a bunch of variables, would that work here?

maiden wadi
#

I think like 3-5 lines of C++ gets you the ability to pass any object, actor, actor component, uobject etc to a function and get a byte array out of it. A second function gets you the ability to pass any existing actor/actor component/object instance and a byte array, and write all the data back. And all you have to do after that is checkbox the Savegame thing on the properties you want saved.

hoary junco
#

I mean there are ways of passing variables into byte arrays using blueprints, that's what the SaveGame advanced option is for I'm pretty sure

maiden wadi
#

You can't call Serialize in BP. Which is the key function you need for that.

hoary junco
#

what does this do then?

maiden wadi
#

You said you messed with C++ and C# before so you might be able to follow this. Note that I'm calling the same function Serialize here. The difference is the archive being passed in. One Reads from the object. One Writes to the objects.

void UAuthaerSaveGame::SaveData(UObject* Object, TArray<uint8>& Data)
{
    if (Object == nullptr) return;

    FMemoryWriter MemoryWriter = FMemoryWriter(Data, true);
    FAuthaerSaveGameArchive SaveArchive = FAuthaerSaveGameArchive(MemoryWriter);

    Object->Serialize(SaveArchive);
}

void UAuthaerSaveGame::LoadData(UObject* Object, const TArray<uint8>& Data)
{
    if (Object == nullptr) return;

    FMemoryReader MemoryReader(Data, true);

    FAuthaerSaveGameArchive Ar(MemoryReader);
    Object->Serialize(Ar);
}```
#

FAuthaerSaveGameArchive inherits from a lower level engine archive but sets this Savegame part true. Which means it'll only read SaveGame properties. Which is what that checkbox you asked about is for.

hoary junco
#

it's only been like 3-4 months since I last did C++ but... I don't recognise like 99% of what you posted... that's how little it sticks with me

#

and I was hammering away at courses for C++ for the better part of a year too

maiden wadi
#

😄 Fair. The TLDR is that you need that Serialize function called at the end of both functions to utilize the SaveGame checkbox.

#

Honestly I still can't easily read most C++ examples outside of UE's general style guide. C++ in UE's environment is much nicer to read.

#

Curious if any of the basic engine BP plugins have something like this. I feel like they should.

rancid hull
#

Can i ask for help here?

hoary junco
#

if it's for blueprints, yes

rancid hull
#

ok so im trying to make a gun pickup system and i thought i did everthing right i compared it to the first person template using third person but i cant seem to get it to work

hoary junco
rancid hull
#

Its alot would you be down to call i am 14

hoary junco
#

ok so I should be more specific what exactly is not working?

hoary junco
maiden wadi
hoary junco
maiden wadi
#

Yep.

rancid hull
maiden wadi
rancid hull
#

i set a debug print up

hoary junco
rancid hull
#

yesir

maiden wadi
#

Should F9, or print on the success part too to make sure that overlap is running.

rancid hull
#

i changed everthing to use third person

hoary junco
#

so when you walk over the gun, does it get destroyed?

rancid hull
#

no

#

it just does nothing

#

it might be the sphere colision

#

thats what i thougt

#

i did something now i re put it in the scene and now it allways disapears

hoary junco
#

what did you do exactly?

rancid hull
hoary junco
rancid hull
#

i made the weapon component but i dont understand your question

hoary junco
#

have a print string come out of "is valid" on this and have it print

rancid hull
#

ok

hoary junco
#

walk over the gun and let me know if it prints out

rancid hull
#

no nothing

#

i set it to both also

hoary junco
#

what is this variable here?

#

because clearly it's not finding this

rancid hull
#

its a reference the the weapon component

hoary junco
#

wait hold up let's take this all the way back for a minute put a print string right here

#

just after on begin overlap

#

let's see if it's even detecting the overlap

rancid hull
#

its not

#

weird

hoary junco
#

I see why

#

that concompoinentbeginoverlap is a custom event

#

nothing's triggering it

rancid hull
#

yeah there isnt a regular one

#

it only would show that

hoary junco
#

yes there is, if you look on the left at the component list click on the sphere collision

then on the details panel on the right scroll down

rancid hull
#

ty i fixed it

#

i mean it prints

#

not fixed yet

hoary junco
#

so you replaced the event with an actual on collision event right?

rancid hull
#

it destroys now

hoary junco
#

ok so that part's done

rancid hull
#

yeah now i got to make the weapon work

hoary junco
#

see what I'm wondering here is, will it actually load properly

#

like does the third person character have the functions within them to move their arms up and grab the gun

rancid hull
#

i have the animations set up

#

for is gun is held

#

idk if it works

#

tho

hoary junco
#

I mean, try just equipping a weapon component to the third person character and loading the game to test that

#

like equip it in blueprints so it spawns with the weapon

rancid hull
#

ok it plays the gun sound so half is working

hoary junco
# rancid hull idk how

in your third person character blueprint you see at the top it says "components" and then a green "add" button? Click that and search for the name of your weapon component then add it

rancid hull
#

ok

#

it works with the sound the animation doesnt play the projectile doesnt spawn or giun mesh

hoary junco
#

do the character's arms come up?

rancid hull
#

nope

#

just regular anims

#

PROBLEM

#

WALKED INTO A CUBE AND IT SPAWNDED MANY

hoary junco
#

the fuck?

rancid hull
#

ikd

#

help

hoary junco
#

does your player character have collision behaviour on it?

rancid hull
#

when i walk ito walls while shooting it does that

rancid hull
hoary junco
#

let me see the player character's collision behaviour

rancid hull
#

idk what your mean

#

im dumb

hoary junco
#

does your character have anything coming off it's "onbeginoverlap"?

rancid hull
#

no mb

#

sorry

#

was confused

hoary junco
#

can you show me the blueprint for your character please

rancid hull
#

Thought you meant dose it have a colider

rancid hull
#

ok

#

its alot

#

tho

#

like everthing?

#

walking jumoping looking

hoary junco
#

no just anything to do with what it does to the weapon

rancid hull
#

it doesnt

#

have anything

#

its all in the other blueprints

hoary junco
#

ok so I've found one problem in the code

rancid hull
#

ok

hoary junco
#

in the weapoin component when it shoots it gets socket location.. but doesn't get it from anywhere, it tries to get it from self but weapon component is just a component

#

in the first person version it gets the socket from a skeletal mesh

#

the socket is the location where it would shoot the projectile from

rancid hull
#

ohhhhhhhhhh

#

do i need to have a skeletal mesh instead of a static and put it to one of those bones

#

i was using a place holder

hoary junco
#

I mean yeah you're going to need that for the gun at least.... because it needs a bone to attach the gun to

rancid hull
#

no i meant for the gun

#

does the gun need a mesh

hoary junco
#

hold on let me open up a fresh version of the first person template to see if I can figure out how they've done it.. an equipment system was going to be my next task anyway after I figured out how to save/load my inventory so...

hoary junco
rancid hull
hoary junco
# rancid hull

yeah so clearly it's not pulling the projectile mesh from where its supposed to be, it's pulling it from the parent of the weapon component aka the character mesh that's why that is happening

rancid hull
#

are you able to call to help me

hoary junco
#

not at the moment no

rancid hull
#

oik

#

ill export the gun from the temp

#

and impoetr in mine

hoary junco
#

yeah if you look this is the default rifle

shrewd mural
#

How do y'all go about unbinding events in BPs? I am binding Event Foo to a delegate in Collapsed Graph A. I need to unbind Event Foo from inside of Collapsed Graph B. How in the world do I get a reference to Event Foo from Collapsed Graph B if it's inside Collapsed Graph A?

hoary junco
# rancid hull oik

thing is, if I were you, I'd look into some tutorials on how to build a pickup and equip system from scratch because taking the first person content and just slapping it on third person isn't really how it works

#

build your understanding from the ground up

shrewd mural
dry sleet
#

Apart from that I don't know, you could always roll your own version of the cpp RemoveAll with no difficulty.

shrewd mural
#

idk squat about making new K2 Nodes but it beats uncollapsing these graphs

dry sleet
#

Oh wait, maybe it would be a bit tricky now that I think about it.

#

Yeah, you're right -- no clue how delegates are handled in BP.

maiden wadi
shrewd mural
maiden wadi
hoary junco
#

@maiden wadi sorry to keep pestering but when doing the whole save/load system is it better to use soft references or just general references? Like I was thinking of keeping an array of classes inside the levelsave for a list of classes that the gameinstance could pull from to commit data to the actordata struct when it's told to save the game, do I use soft object and class references or regular?

shrewd mural
#

that friggin works

#

I think at least lol

maiden wadi
#

😄 Happy it solves it. Create Event is awesome. Less red lines.

shrewd mural
#

Thanks. Hopefully this does work and I can get away from this cursed BP kek2

dry sleet
#

For some reason BP and delegates just mess with my brain :D

#

That approach to me looks like it would create a new "instance" of the delegate and not unbind the desired one, but I suppose that doesn't make sense when translated to C++

#

Or does it? Maybe it's just delegates in general that mess with my brain...

shrewd mural
#

That's how I interpretted it too but if Authaer says it'll probably work, then I'ma roll with it. If it does, cool I can push off learning about k2 nodes still. If it doesn't then back to k2 node anyways kek2

jagged sedge
# maiden wadi

You can also connect that red delegate pin to the event pin directly! I think that's a bit nicer

dry sleet
maiden wadi
# hoary junco <@143471961723371520> sorry to keep pestering but when doing the whole save/load...

That.. is a really complex question. The main problem is that hard refs to instances will not save well, not without the serialize function I mentioned above. And SoftRefs will create a path to the object based on it's outers.

EG a softref to an actor instance would path it as like L_MyWorldName.B_MyActorName17. Cause that actor belongs to a world.

A component would be softpathed as like... L_MyWorldName.B_MyActorName17.B_MyComponentName

This is important to know because if you're spawning actors, the softref likely won't work for BP but they will work for anything that was loaded with the level. But spawned actors cannot have a promised name unless using C++.

Realistically I'd go back to the GUIDs thing Datura mentioned because it's the best option of linking instances you're going to get in BP.

jagged sedge
maiden wadi
#

I refer CreateEvent personally. I like straight line BPs.

dry sleet
tight pollen
#

I wish the AI ​​would stop rotating

hoary junco
tight pollen
#

how can i do it?

hoary junco
#

@maiden wadi also when I'm trying to add the contents of an inventory to the contents section of the save array I get this

jagged sedge
hoary junco
#

oh wait nvm I'm just an idiot

maiden wadi
shrewd mural
#

I don't like working in BP graphs. This is shit kek2

maiden wadi
unkempt plover
#

Is it possible to add this animation sequence to main player Pawn?

I'm currently trying to figure out how (or if) I could trigger sequence animations that would affect the player's position/rotation/etc
all I managed to figure out was how to trigger an animation sequence to a blueprint that is not the main character. could you guys give me a bit of input on whether or not this workflow would be possible/viable and how to do it?
I've spent like 4 hours researching and experiment but could only go this far

Thank you!

hoary junco
jagged sedge
#

Wait, let me correct that before someone else does it

#

Of course you can apply a transform track to a player 😄

#

But I don't know how 😄

hoary junco
#

it looks like an absolute mess but this is what I have going atm for the save function....

#

in the class list are all objects, all containers, and all characters, it checks if they have an inventory component, if it does, get the contents, add unique entry which would apply for containers and characters
if it's an item, get its item data, find out how many there are (because I have items that can stack in-world) and records that data, and regardless, it gets the transform of the actor

maiden wadi
#

More or less yeah. I'd try to find a way to compress your data to a byte array though because it'll be much easier to iterate a list of things with an interface or something to pull data from things differently. I mean you can keep a massive function that goes through everything too, but it gets harder to maintain.

For GUIDs, you're pretty spot on. Basically they're a complex integer. They act as a key to data. It's no different than using a GameplayTag, an Enum or an Integer really to key to data. Just that GUIDs are a managed system of unique numbers that you don't have to track to keep unique.

So if the saved data and the actor both have the same GUID, that data is meant for that actor.

hoary junco
maiden wadi
#

I'm not sure how to manage that. I've only done this via the archives. There may be plugins that allow this.
I'm not the best person to ask about GUIDs. I understand the idea, but I don't use them. 😄 Unreal works better IMO with outer name paths.

hoary junco
#

T_T trust me to pick a project that hardly anyone knows how to put together

unkempt plover
jagged sedge
maiden wadi
dawn gazelle
#

Doing so allows you to identify each particular object by that ID.

hoary junco
dawn gazelle
#

So when utilizing a Map you use the GUID as a key to look up the ID, and then you can get the value from that Map.
The actual maps themselves would need to be saved, like in a save game object that you load, and then the objects read from that save game object.

#

When changing values, you'd change the save game object, and then save it to disk.

timid parcel
#

how can i change my interact interface to only set input mode to game and everything else when clicking somewhere other than my widget

dawn gazelle
#

The implementation of it can be on "Begin Play" of that actor, you read the Map from the save game object and if it finds the GUID in the Map, then it manipulates itself based on the data in the map for that particular GUID. If there is no data present, then that item can behave as it was just placed in the level. You would likely need some way to indicate whether or not the actor should be destroyed in this case, so that the actor can remove itself from the level if it was destroyed at runtime.

Saving then is just adding a value to the Map with the desired data.

Dynamic items spawned at runtime would need their own map which would need to contain data about each of the objects, like what their class is that should be spawned, their location, and any other properties - you'd probably want a custom structure. You'd use begin play of say your game mode or game state to then read this separate map, loop through the keys, spawn the objects assigning their GUID to them based on the map key, and then reading their value from the value of the Map and applying it to the actor that was spawned. Upon destroying one of these dynamic actors, you would want to remove the GUID from the Map in your save game so that it would no longer be loaded.

warped juniper
#

I'm trying to implement this interface in a character BP. However, it's nowhere to be seen when trying to add it...

hoary junco
maiden wadi
warped juniper
#

Because I cannot implement it

dawn gazelle
maiden wadi
jagged sedge
warped juniper
#

I have no idea why that's the case...

jagged sedge
#

Gameplay Tag Asset Interface
Cannot use in assets
Woo!

warped juniper
#

Like... Afaik, anim BPs are all within BPs

#

Well then, how can I access the gameplay tags then?

jagged sedge
#

Whose gameplay tags?

warped juniper
#

The player

#

It's a platformer with a few different gameplay states like jumping, falling, stun, knocked away, etc.

maiden wadi
jagged sedge
warped juniper
#

What's a basic way instead to make the player specifically transition to jumping when pressing jump specifically

maiden wadi
#

wat?

jagged sedge
#

Do you want the basic-basic way or the this-is-very-basics-but-not-so-much-that-I-want-to-jump-out-the-window way?

maiden wadi
#

Most of these are animgraph things that you can poll or bind things in the CMC for. KnockedAway is more of an anim montage with root motion.

warped juniper
#

Basically I want the jump state to not be "is falling with positive Z velocity" but "player pressed the jump key"

jagged sedge
warped juniper
#

Why would the player jump when damged?

maiden wadi
#

"HOT LAVA, OW TOES, HOOOOT LAVA"

jagged sedge
#

Can you control what the player does with their controller? 😄

warped juniper
#

Sorry though I don't exactly understand the problem.

supple dome
warped juniper
#

Ah, that's a fair point too...

#

I could also just forget it and get the standard transition to jump of isfalling

#

Guess it should be fine for a conecept demo.

jagged sedge
#

When using CMC that would be better

warped juniper
#

Yeah I'm using that

#

Not smart enough to makemy own character actor...

#

I couldn't even get the most basic pawn to move or get custom gravity.

jagged sedge
#

That's fine, why not make use of what's there already

warped juniper
#

Hmh. Besides, it's a 3D platformer.

#

While their movement is the most important part, they do not have as many particular things that demand a fully custom made set of BPs.

#

It was pretty easy for me to recreate Mario 64 movement using the basic character movement (But I changed it after seeing that slow turn made a lot of fine movement next to impossible, and instead kept it for a specific movement mode thatis meant to feel like it turns slowly)

jagged sedge
#

As for your state machine problem:
The minimum you need is the animBP state machine and AnimMontages to play your animations
If you need to know about state anywhere else:

  1. Some custom solution if you feel like it
  2. Fancy solution: Use StateTrees
old iron
#

Hello i wanted to ask , i started yesterday and there is my Blueprint for movement is it any good or not ?

jagged sedge
old iron
#

Thanks !

warped juniper
#

Okay then

#

For some reason the jump transition doesn't work.

#

What could be wrong here?

jagged sedge
#

Where do you set the vector?

warped juniper
#

It's set on update animation from the cmc

#

I use the same for ground speed, and it works, so I know it does have data.

agile moss
#

how do I get the speed of my player?

#

cant find any nodes

warped juniper
agile moss
#

ok

warped juniper
#

You can input your max walk speed there

agile moss
#

no, I dont need that

#

I need to get the speed which the player is going at in game

warped juniper
#

Also acceleration. If you want to instantly move at your max speed, you need to input a massive acceleration value.

agile moss
#

I want for low speed to stop the game

warped juniper
#

That's also simple to do. You can cast to the player, and access their character movement speed.

#

This should return their velocity V3

agile moss
#

ah

#

SO ITS CALLED VELOCITY!

#

thanks man

warped juniper
#

No problem

#

Keep in mind this tracks all axis.

#

If you want to get lateral velocity remember to split it

agile moss
#

I know

wise ravine
#

Following up on this: Set Relative Location doesn't move the object at all

dry sleet
#

It definitely does, but of course you'll need to change the values you're using.

queen dagger
dry sleet
#

And you might want to move the train relative to some offset (such as an empty scene component).

queen dagger
#

im wondering why i cant seem to get the player profile struct when it seems like it should be working

agile moss
#

I got a small problem. You know in subway surfers you can launch yourself to the ground from air, well in my game when I do that and I touch the ground, for some reason it decreases the speed. the average speed is 1400, it reaches 999

queen dagger
#

show code

#

makes it easier for people to help

agile moss
#

I mignt know the problem, it might be trying to reach default speed when walking, but in the air the speed is increased

#

I will send

floral stump
#

is it possible to select a matching function if i already have one?

agile moss
vivid quarry
#

Is there a setting somewhere that will keep the camera of an FPS rig a fixed distance from the top of the collision capsule? I am having an issue where my camera is above my capsule when crouching, thus it can clip through low-hanging things I am moving under

faint pasture
vivid quarry
#

The capsule component of the stock FPS rig which I am working off of

#

That's the BP for the crouch action, inputs are just a few true-false branches for behaviors that block crouch

versed sun
agile ridge
# vivid quarry

You want to parent the FPS Camera to the First Person Mesh and attach it to either the head bone or a socket attached to the head. Parenting the Camera to the Capsule will have its movement be dictated by the Capsule. Attaching it to the mesh within the capsule will have all the same results but attaching it to the head bone of the rig will allow it to move with the head of the rig.

bleak wraith
#

hello in this tutorial I want to make my other NPC BP to be actor to be chased. I cast it and get owner/character/player however it didnt work. how can i implement my other npc char to get reacted by enemy npc?
If anyone know it please help me 🙂

#

this is what i have tried

floral stump
agile ridge
# bleak wraith hello in this tutorial I want to make my other NPC BP to be actor to be chased. ...

Assuming your code set-up is identical to what's in the screenshot, you'll want to swap out the GetPlayerCharacter for a different Input that's based on a similar type of CharacterBP but is chosen based on certain criteria. So if it's based on distance, for example, you'll want to do a scan for which of the two is closer, and then have it chase whichever of the 2 is closer. Or if it's based on the specific character class, you'll want to have them chase the character class instead. Choosing to Chase GetPlayerCharacter(Index 0) is fine if you're planning on having the AI chase Player 1. However, if you're planning on having the Enemy chase other players or other characters, you need to be a bit more flexible.

Looking at your screenshot you just posted, the CastToTopDownCharacter is fine to gathering functions from a Parent Class but it's still suffering from the same problem. You're locking onto only the Player 1 character and not onto any other character. The thing I circled in Red is the one you want to change:

vivid quarry
#

I suppose I could write a hacky solution that subtracts from the Z pos of the camera when crouch is hit and undoes it when standing back up but that won't be very modular

versed sun
agile ridge
# vivid quarry Thank you, gave that a shot but it seems the head itself is above the capsule st...

Why aren't you using a Crouch Animation? I just looked at your code and it looks like you're trying to change the height of the camera itself rather than crouching the character's mesh. Even if only because the character actually will crouch in the final game, you may just want to do that. Attaching the camera to the head works as a solution specifically because the character rig is crouching. If it's not, then of course it won't work.

versed sun
bleak wraith
floral stump
vivid quarry
agile ridge
unkempt plover
versed sun
#

hmmm, if it works then its fine, odd that you cant see "Update Show Acc" in the Create Event's dropdown

floral stump
#

yeah i also have this question 😄

vapid ice
#

Yo I neede help

unkempt plover
#

wondering if a root motion system would work well to animate a vehicle aka a cube with wheels instead of an humanoid character?

bleak wraith
versed sun