Quest Extension Plugin

I installed the update for Quest Extension from today (UE4 says it’s 1.2 in the plugins dialog in the editor, odd …) and did a testproject showing the problems.
You have mail :wink:

Does not work for me, sorry.
In a custom quest the latent memory condition is still gone after saving and reopening my game project.

But I don’t know if I have 1.3d (just the most current version the Marketplace gives me - updated yesterday) … where can I see the exact verion number?

I added a custom quest to the test project to show you the vanishing compare node after saving and reopening.
You have a new mail with the modified test project with repro steps to show the problem.

Hi @Laurentius ,

Epic’s response about conditions reseting or braking when using custom quests is in short words that:

  • Engine subobjects are not well handled by the actual blueprint compiler (<=4.18)
    It will be fixed with UE 4.20

For now, I recommend you don’t use custom quests. Fortunately we will have subscripts very very soon (being tested) and it’s pretty much the same or even better.
That really fixes the problem.

I may even disable custom quest creation temporarely.

Let me know if that worked for you when it goes out.
Between 1 and 2 weeks

Have a nice day!
muit

Are there tutorials for this system? I have not seen anything yet

Hey there @Muit ,

finally, I purchased your plugin! Yaay! But, if I want to use it with my main project, which has an other quest plugin installed already (this one), the editor stops the loading splash on ~73% and after a few minutes shows me a little message (see the attached one with my comment) and then puff… it’s crashed (all the time).

Btw, with your examle project it works well… so any suggestions for this weird crossover quest plugins’ situation? :rolleyes:

@JimPhoenix well, I never encountered that kind of error, but… it seems to be related with the other QuestSystem.
That problem means that a module, in that case that plugin, won’t be able to load for some reason.

Are you sure it’s because you installed both plugins on the same project?

Hi @Cmcginn,

You can download the demo project that has most of the features demonstrated with use examples.

Its over here
http://bit.ly/questextension_13_project

Greetings!
muit

Yes, if I turn off your or the other plugin the problem is gone (I don’t experience other incompatibility with other plugins yesterday). It looks like these two can’t stand each other, but to talk seriously; in my case that’s kind of a problem, because I want to use both of them in the same time (at now ofc and later I will choose one to work with after the prototype / pre-production phase).

So that’s weird, I know and as I see now it’s not a knowing issue. :frowning:

@JimPhoenix I would love to help you, but that error is o nthe other side.

Have you contacted them?

Not yet, but I’m on it.

He contacted me.

I think it’s there are no problems in both of the plugins. But probably our plugins have some naming collisions (like if names for some C++ classes are the same - something like Quest.cpp in both of the projects can cause that), which cause such errors. I don’t have another plugin to check it, but if it really is the reason, then to fix it, you need to rename classes in one of the plugins and re-compile it. But it’s better to look at the log file of your project first (YourProjectFolder/Saved/Logs)

Oh wow, a wild @Kelheor appears! :eek: :rolleyes: :slight_smile:

How cool attitude is that? :cool:

Okey, so here is the Crash Reporter’s text:




Assertion failed: GIsHotReload [File:D:\Build\++UE4+Release-4.18+Compile\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\UObjectBase.cpp] [Line: 580] Trying to recreate class 'UQuest' outside of hot reload!

UE4Editor_CoreUObject!UObject::ConditionalBeginDestroy() [d:\build\++ue4+release-4.18+compile\sync\engine\source\runtime\coreuobject\private\uobject\obj.cpp:878]
UE4Editor_CoreUObject!StaticExit() [d:\build\++ue4+release-4.18+compile\sync\engine\source\runtime\coreuobject\private\uobject\obj.cpp:4198]
UE4Editor_CoreUObject!TBaseStaticDelegateInstance<void __cdecl(void)>::ExecuteIfSafe() [d:\build\++ue4+release-4.18+compile\sync\engine\source\runtime\core\public\delegates\delegateinstancesimpl.h:1027]
UE4Editor!TBaseMulticastDelegate<void>::Broadcast() [d:\build\++ue4+release-4.18+compile\sync\engine\source\runtime\core\public\delegates\delegatesignatureimpl.inl:937]
UE4Editor!FEngineLoop::AppPreExit() [d:\build\++ue4+release-4.18+compile\sync\engine\source\runtime\launch\private\launchengineloop.cpp:3988]
UE4Editor!FEngineLoop::Exit() [d:\build\++ue4+release-4.18+compile\sync\engine\source\runtime\launch\private\launchengineloop.cpp:2852]
UE4Editor!GuardedMain() [d:\build\++ue4+release-4.18+compile\sync\engine\source\runtime\launch\private\launch.cpp:177]
UE4Editor!GuardedMainWrapper() [d:\build\++ue4+release-4.18+compile\sync\engine\source\runtime\launch\private\windows\launchwindows.cpp:134]
UE4Editor!WinMain() [d:\build\++ue4+release-4.18+compile\sync\engine\source\runtime\launch\private\windows\launchwindows.cpp:210]
UE4Editor!__scrt_common_main_seh() [f:\dd\vctools\crt\vcstartup\src\startup\exe_common.inl:253]
kernel32
ntdll

…and the log file attached (renamed to .txt).

I see that Quest Extension plugin started a little bit earlier than Quest System (so it started without any errors) and after that Quest System trying to start but without success (normal behavior, if other plugin loaded classes with the same name previously).

And you wrote about UQuest class, which probably can be in both plugins. As I said before, it can be a sign of naming collisions. It would be nice to check if it’s true.

As for the “hot reload” text in logs - if your project is a C++ project, then try to close the UE4 editor and recompile your project in VS with the closed editor. In case if there is any old hot reload files in your project, it will clean them.

If you still need my further support, it would be better to contact me via support email (air.kelheor@gmail.com) to not disturb author of the other plugin.

Hi Kelheor!
Thanks for coming :slight_smile:

Quest Extension also uses a “Quest” class, so, as you suggested, that seems to be the problem.

Greetings,
Muit

I tried the Quest Extension Demo and noticed that some of the examples are not loaded correctly. What could be the cause of this?

I need to store quest progress with a string, need to construct a string which I then can store online. Then load this string when the player loaded.

Can I obtain the quest states, and set them from within blueprints, or do I require C++ knowledge/3rd Party Editor?

Hi @Koralgoll!

A quest could sometimes not be loaded. That is normal, and should work perfectly.
It’s actually intentional to not load all quests on start up. Imagine needing to load thousands of quests at start up :S.

There may however be other small bugs on the demo. It needs to be updated to the last version of the plugin :frowning:

Hi @unit23,
On version 1.3 we implemented the ability to save and restore complete quest manager states.

Problem is, they are intended to save as binary data, not strings. Mainly because of security, performance and size.
With this functions you receive an struct that you can save with any subsystem, like SaveGame objects.

Saving to strings would probably require some c++ knowledge. I’m not sure since I never looked very deep into it.

Let me know if you need anything else,
if this feature doesn’t work for you we could see if something else is possible :slight_smile:

Greetings!
muit