'The gold rush is over:' Slay the Spire and Darkest Dungeon devs say that big Game Pass and Epic exclusive deals have dried up for indie devs

mr_MADAFAKA@lemmy.ml to Games@lemmy.world – 342 points –
'The gold rush is over:' Slay the Spire and Darkest Dungeon devs say that big Game Pass and Epic exclusive deals have dried up for indie devs
pcgamer.com
66

You are viewing a single comment

I really wish they'd start by not making the EGS program a fucking UE5 app. Seriously, using the whole ass engine to render html is stupid beyond belief

Wait, is it seriously a full-blown UE5 application?

I was going to call shenanigans, but then I looked at the details of the application:

https://i.imgur.com/J30SGAr.png

So it seems there is something to it.

If you peruse the folder where it's installed and compared to any UE4 or UE5 game, you'll notice all the other similarities in .dll files, folders and whatnot. Even the CrashReporter.exe is the same you see in unreal games. Or you can check the config files at Epic Games\Launcher\Engine\Config which has stuff like BaseEngine.ini which, among other networking configurations, also has this:

[/Script/Engine.Engine]
ConsoleClassName=/Script/Engine.Console
GameViewportClientClassName=/Script/Engine.GameViewportClient
LocalPlayerClassName=/Script/Engine.LocalPlayer
WorldSettingsClassName=/Script/Engine.WorldSettings
NavigationSystemClassName=/Script/NavigationSystem.NavigationSystemV1
NavigationSystemConfigClassName=/Script/NavigationSystem.NavigationSystemModuleConfig
AvoidanceManagerClassName=/Script/Engine.AvoidanceManager
PhysicsCollisionHandlerClassName=/Script/Engine.PhysicsCollisionHandler

Meanwhile, in Epic Games\Launcher\Portal\Config, the "game" part of the launcher, you have DefaultGame.ini and DefaultEngine.ini, the latter's first 2 lines pointing back to the Engine folder: [Configuration] BasedOn=..\Engine\Config\BaseEngine.ini

So, yeah, it's the actual engine. I was going to complain about disk bloat, but my Steam install is currently sitting at 1.3GB and I'm not entirely sure how much of that is from cached stuff. GOG Galaxy is taking ~980MB, but roughly 650MB are from redist installers (MSVC2005, 2007, dotnet, etc), so a "clean" install would be way lighter than Steam or EGS, the latter at 1.1GB on a clean install.

That is ridiculous. Even Electron would have been better...

Why is it stupid exactly? UE5 scales very well and places very little demand on hardware for simple tasks.

Ever heard the saying "Everything looks like a nail when you have a hammer"? Basically, just because you have a tool, it doesn't mean it's the best tool for every job. UE5 is great for making games, cinematics and loads of other stuff. But why use it to effectively behave as a browser like Chrome or Firefox, but worse, when there are alternatives made specifically for that?

That’s not really a valid response. Please accurately clarify why UE5 is inefficient at running a store. Benchmarks and other evidence is required.

I don't think benchmarks are really needed to explain this. The whole game engine part is an unnecessary step.

To initialize a web browser component within UE5, you first need to initialize UE5 and then the web browser within it. Or, you could initialize a web browser directly, saving the memory and time needed to start up UE5.

They clearly have developers who know how to use CEF or whatever web view framework since they added it to Unreal Engine, so it's not like they don't know how to add it to a standalone application.

You have provided absolutely no proof that using UE5 to run EGS is a waste of resources nor that your idea of using a browser directly would be more performant. Just saying things isn’t proof and the burden sits with you.

I'm not about to install EGS to prove something that can be deduced using common sense and critical thinking.

Abstractions are not free. The more of them you add, the more resources will be consumed by the application. Unreal Engine is an extra layer of abstraction sitting above some web view framework. Ergo, using the same web view framework without the Unreal Engine component abstraction would be cheaper.

Wait, wait. Do you think that “the whole engine” is loaded for every UE5 executable? I can tell you that’s not at all how this works. The point of a scalable engine is that it loads whatever relevant libraries or portions of the engine that would be needed, including swapping for custom code where appropriate. The idea that the storefront is unoptimised purely because it uses a game engine is just as ignorant as saying that you should measure all computers purely by a single metric. Maybe you could also compare EGS to other stores and measure only the executable’s size? By your reasoning there’s no need for benchmarks, so surely the store with the smallest exe wins, right?

When I said "the whole game engine part", I was referring to the usage of the engine at all. The whole engine obviously isn't loaded, but there's further abstractions and initialization code compared to using CEF or the Edge web view directly.

I'm simply saying that it's a waste of resources to require loading or initializing any other part of Unreal Engine (including the component loading code!) when they're only using it as web view.

I'm also not saying any other storefront is better. Steam is a bloated pig that half uses CEF and half uses Valve's own proprietary GUI library, and the various other Electron-based publishers' launchers suffer from different but equally stupid problems.