Craigp, People: "You should use migrate to migrate assets in #unreal! It can help you create clean projects and-"
Unreal: "I don't migrate custom collision/trace values. Because fuck you. I don't migrate build settings. Because fuck you. And also, I randomly crash during migrations. Because fuck you."
Have these people... never tried doing the things they say to do? Or is there some trick to migrate the PROJECT part?
Like, can I clone a project and just leave all the assets behind?
DKesserich, New on itch.io, my Advanced Eases Plugin for Unreal.
Adds a handful of new easing functions that do overshoots and bounces.
Name your own price, but, much like my Simple Day Night Plugin, it'd be nice if that price was more than zero.
Craigp, Ugh, I finally decided to grab some #unreal assets from the shop (free ones) and I can't figure out how to put them in a project.
The only way it seems I can is to "create a project" based on those assets in the Epic Games Store Shopfront (unrealenginetab), then manually export every fuckin' asset to a format I can import somewhere else.
fractalus, @Craigp Create the project, load it up, select all the assets you're interested in then right click -> migrate and pick your other project content folder
Craigp, @fractalus So that is the only way, it's terrible.
Every time I update the engine, I have to spend hours upgrading the content library projects.
DKesserich, Can anyone help me out with something? Config variables and CVars are not working the way that they should be in my project and it's making me crazy.
more info:
https://forums.unrealengine.com/t/confused-by-console-variables/1858012
SirLich, @DKesserich You don't need a separate developer settings class. CVars can be set directly from .in. The syntax is a little funky, but you should be able to find some examples in the engine installation
DKesserich, @SirLich yeah, I've tried without the settings class and the CVars still wouldn't load from ini. I've landed on manually setting their values after loading the config, but that's still not working consistently between the editor and a packaged build.
amster, Modeling IKEA MALM nightstands in Unreal Engine because we can.
docpop, @amster oh, that looks rad. Will you be applying a decal like this irl once you pick a design you like?
amster, @docpop Even better: I commissioned a bunch of actual resin art for these drawer fronts. It will be so much cooler than this.
RinostarGames, Does anyone know how to make jumping spider enemies in Unreal Engine? We have cobbled something together but it doesn't work as well as we'd like and wondering if anyone knows of a tutorial or has any advice. Thanks in advance!
sinbad, Last chance to get my text-driven dialogue system for #unreal at the sale price! Go here if you want to slide heroically under the rapidly closing sale door: https://www.unrealengine.com/marketplace/en-US/product/suds-pro-dialogue-system
Thanks to everyone who helped make the showcase / sale period a success, I really appreciate it. And new customers seem very happy so that's nice. ☺ #ue5 #unrealengine
glassbottommeg, Well that's the, fourth?, complete source-control collapse I've navigated, so that's neat.
BTW, Perforce does NOT behave well when it runs out of space. It just stops. Literally. You can't even connect with the Administration interface to back out the changelist that ran you out of space. I fixed it with a reversion to backup + Reconcile Offline Work to pick up the lost work, and I think that's probably the cleanest option? Since you can likely assume the repo is corrupt if it train-wrecks into storage limits.
This will be of particular relevance to #Unreal #GameDev types, because yeeaaah sometimes a commit that you think is "well just a few asset packs and a small level chunk" randomly eats 8gb oops.
Doomed_Daniel, @sinbad @psychicparrot42 @glassbottommeg
and pure Git (without LFS) is getting better at it
johnaustin, @psychicparrot42 @sinbad @glassbottommeg JJ is upcoming, supported by big companies, and seems to handle big files well.
jimmyb, I remember spending many many hours with friends playing this!
#Unreal #UnrealTournament #UT2K4 #videogame #gamer #PC 🎮
https://mastodon.social/@256/112185650151712360
CWSmith,
krazyjakee, @CWSmith do you know what genre you would most enjoy working with?
sinbad, #unreal spooky story time! I just figured out a bonkers problem which goes like this:
- A UPROPERTY which was initialised in a C++ constructor was becoming NULL by the time BeginPlay() was called
- It only happened in Blueprints that had been duplicated from other blueprints. Creating a identical blueprint from scratch was fine
- The blueprints had NO CODE in them
Wanna know why? The answer is actually quite simple, and maybe you already know. But it drove me insane for a good hour.
sinbad, It took me absolutely ages to find the magic combination that let me ask #unreal :unreal: to find a bunch of blueprint assets defined in the project which derive from a certain base class. So many dead ends. So many weird ass things that result from how the asset system works, combined with the way BPs generate wrapper classes.
You don't have to suffer this pain. Here's some utility functions that Just Work™ https://github.com/sinbad/StevesUEHelpers/blob/master/Source/StevesUEHelpers/Public/StevesAssetHelpers.h
If you'll excuse me, I'm going to lie down.
Craigp, OK, so, my HLSL struct definition in #unreal works fine in the material custom HLSL node, but the Niagara custom HLSL node apparently... can't have functions in structs?
???
Craigp, Dammit, somehow I managed to set all these struct properties up as Floats instead of floats.
Why does Unreal have Floats as well as floats and why does it think I want Floats instead of floats?
This is like how you type "int" to get an integer type and it resolves to "left". Brilliant little details.
Craigp, If you're wondering how I could possibly make this mistake, here's the visual difference.
Craigp, Well, I now have #unreal sampling a texture to get the Gerstner wave specs, similar to how Unreal does it. However, I'm not sure how to, uh... make a texture. In Unreal.
Basically, I can decode the wave data, but I can't ENCODE it.
Craigp, Since this works, I guess I have to look up how to make custom textures via code in Unreal.
... But not today.
Craigp, My plan is simple: I'll make a texture with all the Gerstner wave definitions in it, with the Y axis being the water depth at that position.
So I can simply take a bunch of samples from the horizontal slice that reflects our depth.
And the sampling system will naturally create blurring if our depth is between defined steps!
mattontech, This was inevitable given how widely Unreal is used in so much of video production. The good news is it only applies to companies with revenue above one million, so most creators can continue to rely on Unreal without paying up.
sinbad, Wow, UE documentation is often missing or overly vague, but the docs for the gameplay debugger are now flat-out wrong, the classes it's telling you to extend don't even exist anymore (tip: look for FGameplayDebuggerCategory instead) https://docs.unrealengine.com/5.3/en-US/using-the-gameplay-debugger-in-unreal-engine/ #unreal
Craigp, @sinbad Now I just need to get a project - any project - to successfully compile on this machine.
demofox, @sinbad yeah, UE is great for content creators but it's really hard to find any info as a coder
Craigp, AH HAH! Here it is!
See, I have a property set to "Replicate skip owner". A pawn's owner is automatically set to the possessing controller.
For some reason, that doesn't keep it from replicating to that client.
Here you can see the server knows DAMN WELL client 0 is the owner and is replicating to it anyway.
Maybe the player controller isn't owned by the net connection of the player, even though that is supposed to be automatic?
Craigp, AH HAH. I ARE A GENIUS.
... there's some very interesting order of operations things going on with Unreal and I foolishly piped in a variable from a setter that had yet to be called, forcing it to get called at an erratic moment.
For some reason, only the client cared.
This stuff can be fuckin' complicated.
Craigp, Now we attach properly, but the movement system panics every time we try to walk and says we're colliding with... the floor.
Downside of just using "move with sweep". Need to refine that.
Craigp, OK!
I made a tutorial on how to sync waves across clients in a multiplayer #unreal game! This is something I literally could not find a tutorial for, so this might be the only place to learn it.
... Unless you know a better way, in which case tell me.
Craigp, OK, #unreal shader question: I have a lot of surfaces that turn invisible as the player moves below them.
Right now I'm using a simple opacity dither. However, it turns out that affects shadows, and it affects them very badly.
There seems to be no way to tell it to use full shadows on an opacity masked surface. So my question is:
What's a good alternative approach?
I don't want to create two of everything (one invisible shadowcaster) if I can help it.
damthauer, @Craigp Use the ShadowPassSwitch node in your material so it doesn't affect the opacity mask during the shadow pass.
Craigp, @damthauer OHHHH very nice. Thanks so much!
It's become very hard to search for this sort of thing, for some reason.
Craigp, Hmmm. So I'm trying to use #unreal's multicast setup. I call it from the server, then simply debug print.
It only debug prints from the server, despite there being two clients.
Whaaaat am I missssssing...
Craigp, AHAH. I foolishly set the owner to the player controller. FOOL. The owner is OBVIOUSLY the pawn the player controller controls.
... Why.
I don't know.
But it works.
Craigp, IT'S ALIIIIIIIVE
Players can now engage with an interactable (the bed), get locked down to it until they press interact again, then be free!
Then a different player can do it... and there's safeties so only one player can use it at a time, no multicast spam. It's so beautiful. Snif.
Craigp, HMMMM.
I kinda assumed an empty project would build without errors.
Is this normal for #Unreal? Ugh...
Craigp, @sinbad Honestly, the fact that hitting "compile" on an empty unreal project spits out ten errors makes me think I've done something very basic quite wrong.
sinbad, @Craigp often getting the first build working takes longer, I’ve done this a lot and I still had basic errors like that just last week starting a new plugin. You just have to get the build.cs and target.cs right for what you’re using and it’s easier from there
Craigp, I give up on #unreal C++ for the day.
I can't even get a starter project to compile.
I haven't completely given up, but my interest in Gameplay Abilities is much reduced. I don't need 99% of what it does, so I guess I could just make the 1% I need myself. In Blueprints.
Craigp, It is exceptionally silly that you can't just create gameplay attributes with a fuckin' spreadsheet or by hitting "+" on a class in Blueprint.
Nonsense. Just nonsense. Zero reason why it should require acres of C++ boilerplate.
Craigp, OK, OK, I probably need to install Visual Studio for #unreal on this new machine.
Is there a version of Visual Studio that doesn't require a constant login into Microsoft? I hate that shit. "Free" with lock-in isn't free.
Craigp, Hahah, I found a bunch of YouTube series on "gameplay ability system for Blueprint users" and they all fall into two categories:
Fuck you learn C++
and
I made my own because fuck you I'm not learning C++
Craigp, AHAH. @aeonofdiscord said they didn't need to be logged in on VS 2022, and that appears to be true.
It's been so long since I used VS that I guess they actually... walked back the login requirements?
Maybe because they just assume everyone is using Windows logged in already and they can just piggyback that.
Anyway, seems VS 2022 is on the menu.
glassbottommeg, Another public post on my #Unreal blog thingy went live: how to get weighty-feeling gravity without it messing up your gravity! https://www.patreon.com/posts/getting-sense-of-97908016
(this is basically "the Metroid Prime trick" btw, they might even be who did it first, no clue)
tojiro, @glassbottommeg I love this! First I've heard of the technique but it makes a lot of sense. (And it feels like the kind of tech speedrunners and other high level players love to take advantage of)
glassbottommeg, @tojiro It's EXTREMELY cool. My jaw hit the floor the first time @TheEnbyWitch told me about it all "no seriously, just reduce gravity when jump held down".
Me: "but don't you wanna like have jump down start a window that is extended by-"
Vivi: "No, seriously, super simple, literally just when button down, that's it"
You think it's too stupid to work, but then you implement it, and. It's perfect.
sinbad, Looks like I'm going to have to* write another #unreal subsystem. I want to use Utility AI but I don't really like the existing options I've found so far. I want it to be fairly simple, but also be able to read gameplay tags and gameplay attributes easily for picking / ranking behaviours.
I don't know if I'll release it, but I'll start structuring it on the basis that I might. The big question is: what do I call it? I have to stick with "Steve's Blah" ofc, it's canon now 😅
*I do it to myself