No Quality Assurance With Asset-Engine Compatibility From the Unreal 4 Marketplace

Just to quote an email I got today, me being the CC:

If that does happen, I am losing income, and I “didndo nuffin” to cause it.

Thread moved to ‘Feedback’ as suggested.

Ahem, it is confusing as hell. I thought 4.7-4.9 which you could download from Launcher indeed ARE 4.7-4.9 versions and not something else =/ Thank god I kept my old releases in cloud.
+1 to else, I just don’t understand why we even have old version tags if in reality it just the latest version.

And yeah guys, I moving this thread to the feedback section. Marketplace team asked to have our feedback conversation in appropriate section

EDIT: JAMSH NINJA’D ME +_+

#Rekt

I too thought old versions were stored in the cloud, and you download the corresponding one. That’s at least how it works for the UE4 example content :confused:

Definitely sounds more like a bug than a feature :o

Hey guys, Thank you for bringing this to our attention. I wanted to let you all know that we will be discussing these concerns. I will reach back out as soon as we have further update on this matter. For those who are noticing these issues with any versions of your pack, please let me through the forums or through marketplace-support@unrealengine.com.

Thanks for looking into this Reuben! =)

Hey everybody, just to let you all know, I removed a post from this thread that contained a private conversation from Epic staff. There was a bit of a misunderstanding, so we’ve clarified everything. Please be aware that we do not allow the sharing of private emails from Epic staff on the forums.

Thanks!

Thinking further on this, since the whole old version compatibility doesn’t seem to be actually what it seems, why not do what the engine itself does? When UE4 adds new features, or bug fixes, the developers don’t go back into previous versions of the engine to add them/fix the issues. I’m just looking at a year or two from now, how are we supposed to be able to support these products across a plethora of versions? Someone in here suggested, it should be where the latest version is the only downloadable version on the marketplace. Anything else would be unsustainable in the long term. If someone wants to use an older version that they have downloaded previously, much like the engine, they can. But like the engine, if you want to receive the latest updates, bug fixes, or additions you need to grab the latest version. Thoughts on this?

Thats how I added updates to my cave pack anyways, expecting it to work like that.

When I did my expansion updates in the past, I used the base version and then tested the others for compatibility. Thinking that they kept a file for each version of the engine that was marked compatible.

With a new Version for the Engine, i check compatibility for my older packages but the Version i build my packages on is the minimum Engine Version they support.

If an older package needs updating for a newer Engine Version, i also check reverse compatibility on that new update, if it fails reverse compatibility then i would make a note of it in my Emails to Epic that this version of my package is not compatible with older Engine Versions. I have yet to run into this situation where a package is not fully supported across all Engine Versions. Ive tried to stay away from specific nodes that are only relevant to specific Engine Versions to avoid incompatibility.

It is an important issue. I think Epic needs to focus more on Creator/Consumer relations and the tools at our disposal that will help alleviate any concerns either party may bring up.

One thing is clear, people shouldn’t be hung out to dry just because for whatever reason they do not immediately upgrade to the latest engine version. And to allow sellers to exploit newer engine versions without doing so, the marketplace needs to have the capacity to host and make available for download a version of each pack compatible with each engine version since the pack was released. There is no way around this.

So far Epic haven’t actually confirmed whether the marketplace system is currently unable to do this (as I suspect), or if the problems people have posted are in fact due to some other issues.

As for support, I think DevilsD has the right idea. Support for previous versions shouldn’t be too hard, since support expected by Epic is actually quite minimal - there is no requirement to continually add functionality or features. If sellers choose to do so, they can very well choose to do so only for the latest engine version if they so wish.

What is expected is that a product works as advertised and doesn’t have fundamental bugs. If a product is fundamentally broken, then clearly a fix does need to be made available for every engine version that the product has been sold for. Of course, the distinction between ‘fundamental flaws’ and ‘minor bugs’ is subjective. Epic really need to draw up more precise terms for expected support with respect to engine releases.

I think that Epic Games programmers need to do the hard work here to solve all of this before it is too late.
A year from now there could be so many Unreal Engine 4.x releases that no one would be able to support all of them anyway.
The only possible solution is that Epic Games creates as many compatibility/translation layers as needed to achieve the result that any plugin/pack sold on the marketplace would automagically work with any Unreal Engine version. A complex series of parameters and metadata would keep track of all the Unreal Engine changes in its various subsystems and either disable features or translate to the current engine version format in use with no need for games developers/engine users and marketplace packs/plugin creators to do anything if not always then almost.
That is the only way to really solve this issue. Obviously it would need some months for Epic Games to achieve that and it surely would be a lot of very hard work for them. BUT if they don’t do that now then doing it later on it might really become impossible or at least a lot more expensive and complex. If they created such a series of layers from the beginning it would have been better indeed but right now it is still possible to fix it in a few months… add a dozen new Unreal Engine releases to the mix and it might become so difficult that Epic Games wouldn’t even remotely think of having the programmers work for 6-10 months on the compatibility/translation layers needed to support all the engine versions available. At that point they might have to rewrite most of the engine from scratch to fix it so that a UE 5.x or UE 6.x might not have the same issues as new versions get released.

I agree that Epic probably hasnt thought this all the way through, at least not at the beginning, which is unfortunate (but i can understand that the growing scope of the MP is probably far beyond what anyone thought it might be) and i believe they have a responsibility to continue to improve upon existing features and implement new ones that support creators in trying to provide the best experience for the consumers as possible.

They will figure something out, they have always come through in the past in my opinion and i dont think anyone will be left out to dry in the future.

I’m confused as to how this can be seen as sellers exploiting the engine versions. Do you consider people being hung out to dry because they have to upgrade to a newer engine version to get a fix, or new feature? If not, then why the difference towards marketplace sellers? What you are suggesting, for the long term, just isn’t sustainable. Whether it’s storing each version, or the unreasonable expectation of the seller to check their product through 5+ engine versions just to submit a bug fix, or expansion update. Every software out there, Unreal Engine included, puts bug fixes and additional features in the latest release. They do not go back and include it in older versions. Why are marketplace sellers expected to do this, if even Epic themselves aren’t held to this standard? For the longest time, there was a bug with landscape holes that caused the terrain to be black anytime you cut into it. This wasn’t fixed in the version I first experienced it in, but in a later version. I had to upgrade. These new optimization features that are coming to the engine aren’t going to be implemented in previous versions. You have to upgrade to the latest engine in order to receive it. Forcing sellers to keep a version of their product for each engine version will also cause them to run out of HDD space incredibly fast, as they will have to have the individual engine installs as well as the individual projects.

I have wanted to do another expansion update to my first pack. It’s base version is 4.6, so if I were to go through with that I would need to go through the tedious process of installing 5 engine versions, converting the project to 5 different versions, and scrutinizing each and every one of those versions just to ensure the additional content isn’t bugged in one of the latter engines. This sort of thing will only serve to deter potential sellers and discourage existing ones from offering free content updates late in a products life. It isn’t fair to the sellers, and it isn’t fair to the consumers.

And his (SE_JonF) are meshes and materials. My base version goes back to 4.4 and 75% of my assets are all blueprints. I’d much rather pull all of my stuff off the marketplace before being expected to (coming soon) support 8 versions of the engine where blueprint changes have come and gone. Simply not possible. Epic can either store them in the cloud for people to download or simply only provide the latest version or 2-3 of the engine.

Bit of a miscommunication I think, my bad.

By exploit I simply meant taking advantage of features introduced into a new engine version. Doing so means an updated package won’t be compatible with an older version. Add that to the fact some people have to tie into a particular version for the remainder of their project, and there is no way around having Epic host multiple versions of packages, that’s all I was saying there.

By hung out to dry, I just meant in the case that they are tied in and yet had no way to re-download the version of the package they needed, because it had been replaced by a newer one.

As for support, I think both you guys misinterpreted what I was suggesting. I meant full support only for the latest version (actually, checking Epic’s marketplace guidelines, they say the current and previous must be supported). Once you’ve upgraded your pack to the latest version, there should be no need to further check or resubmit your backlog of versions - if they worked, they still work, because the old engine versions are just the same as they were too.

The only exception that it seems right to make to me, is if a product-breaking bug is found after a product has already been online for multiple versions. In that case only, I think sellers should be expected to fix it in all versions or accept that people will get refunds. This would be a highly unusual case though, most likely you would never need to touch an old version of your product at all.

By the way, I’m primarily a potential seller rather than a buyer.

Some of that could be out of the sellers control though right? At least that’s my understanding of blueprint based products.

Unfortunately this seems to already happen. Someone who wants to download the original 4.6 version of my pack won’t be able to since Epic apparently only keeps the latest version. It’s interesting that you point that out, I hadn’t noticed that before. I always thought we had to keep all versions compatible, not just the current and previous. If that’s the case, then Epic should update the compatibility description of each pack to reflect that when a new engine version is out. Keeping 2 files for each product on their servers shouldn’t break the bank either. Right now my first pack says 4.6-4.10. It should then say 4.9-4.10, and then keep the 4.9-4.10 project files on hand for people to download. That would be an acceptable solution.

That happens in software all the time, and upgrading to the latest version is always the solution. I just don’t think it’d be fair to expect different for marketplace products. That’s just my take on it though, I suppose we’ll just have to agree to disagree on that point. =)

But Epic Games must ensure that any developer would always be able to upgrade any project with all the assets created or bought on the marketplace to the latest engine version without compatibility issues. A few glitches here and there might happen even with the best possible translation/compatibility layers added in some of the subystems of the engine but as long as any game project doesn’t become unusable by upgrading the engine and glitches could be quickly fixed that wouldn’t be a real issue.
Right now with no reliable translation/compatibility layers system taking care of all the needed conversions between engine versions the number of assets that can stop working and marketplace packs that just become unusable is clearly unacceptable.
Any engine version must be 99.99% reliable if not 100% so that no project would get corrupted and become unusable. And it must be always possible to buy marketplace assets/packs with no issues, fully usable. Upgrading the engine to the latest version with any project must not be a nightmare and destroy the work of developers.

I think we are in agreement. Unfortunately the way Epic design their new engine versions, something is bound to be incompatible when you upgrade your project. This happens whether it’s a game or marketplace content. That’s why we have to go in, check to see if there are any errors and fix them if they are found. The issue that seems to have sparked this thread, and which himself experienced, is that since they only keep 1 project file on hand this has the potential to make previous versions incompatible.

I’m looking forward to hearing what Reuben and the team have after reviewing our concerns.