Project Configurator Advanced Settings and Lyzard.exe Crash

0

Ever since 1.21.2 I cannot access Advanced Settings for any project. And when I try to run "Lyzard.exe" it just crashes.

When I switch on a gem, save, and switch it off, and save in order to update the ordering of gems and dependencies this doesn't help at all.

asked 4 years ago173 views
32 Answers
0

Hi I have this problem too for Lumberyard 1.22 can I check does the Advance setting work for Starter game when you switch it? On discord group they say its a reflection issue for the component.

answered 4 years ago
0

Saying it's a reflection issue doesn't help me at all.

No, advanced settings doesn't work with Starter Game either. Advanced Settings doesn't show up for a clean project.

answered 4 years ago
0

Hi Sorry about the reflection part I think its relates to this part of the docs here: https://docs.aws.amazon.com/lumberyard/latest/userguide/component-entity-system-reflect-component.html

But I am not sure how to edit or fix the components.

Anyways I managed to get one of my old projects advance settings back by doing a rebuild of it using Lmbr_waf I did it by disabling and re-enabling one of the gems in the project configurator then did a rebuild using lmbr_waf. I also made sure my Visual Studio had all the correct components installed, you may need to uninstall and reinstall.

https://docs.aws.amazon.com/lumberyard/latest/userguide/building-your-lumberyard-game-project.html

answered 4 years ago
0

I did what you said and it didn't work. It also took forever.

answered 4 years ago
0

This remains an issue.

answered 4 years ago
0

Unhandled exception at 0x00000000642B3310 (qt5core.dll) in Lyzard.exe: 0xC0000005: Access violation reading location 0x0000000000000008. occurred

answered 4 years ago
0

Hi,

I think I am facing the same issue.

The advanced settings trries to, but don't show of anymore.

I've rebuilded disabling my gems, did a full reinstallation of lumberyard platform, but without success.

Will investigate to get more info ...

answered 4 years ago
0

I think it's a bug in 1.22

answered 4 years ago
0

Hi

I don't know if it is related to the issue, but I have installed Perforce, to get rid of some warnings.

Now the Advanced settings are showing.

Br

answered 4 years ago
0

@REDACTEDUSER

answered 4 years ago
0

I'm experiencing this same issue in 1.23

answered 4 years ago
0

Yup. Still a problem. And the problem is not good. The Advanced Settings GUI are important for setting properties for system components. The XML for which the advanced settings GUI is a front end is what modified but there's no documentation for that XML structure so there's no way to modify it via XML unless this problem becomes fixed or the XML structure is documented.

answered 4 years ago
0

Gotcha, I've contacted the team working on that feature to see if there's an update.

answered 4 years ago
0

I've notice Lyzard.exe crashes after trying to connect to Perforce. I wonder if anyone else with this problem can install Perforce to see if that solves the issue. I could try but I have no need for Perforce and I don't wish to install it.

answered 4 years ago
0

So no update then????

answered 4 years ago
0

@REDACTEDUSER

answered 4 years ago
0

Hi Julian,

For me installing Perforce solved the issue, but indeed I tried many things that did not worked before, may be one of them succeeded. I remember I've installed two componenet from Perforce web site : a client and the server. Sorry this doesb't help much Good luck ..

answered 4 years ago
0

Thanks Yan for support!

answered 4 years ago
0

@REDACTEDUSER

answered 4 years ago
0

I really appreciate you taking the time to investigate this issue. Truly thank you.

answered 4 years ago
0

This bug has been fixed in 1.25 ... HOWEVER, there's a new bug. I can't modify the "lyshine" system component for "CursorImagePath." It won't allow me to edit it. The whole point of me wanting to use this settings editor was to be able to change that. So now I have to wait on a fix for this NEW bug to be able to use it.

answered 4 years ago
0

Update! The issue has been found and is actively being worked on. The crash seems tied to a problem with error/warning handling. People will typically see that crash when not having Perforce set up, not because of any Perforce issue, but rather the messaging system itself leads to the crash. In the meantime, if you're using the Advanced Settings to edit the System Entity properties a workaround might be to edit the desired values via C++ directly. Otherwise, if you'd like to edit the Memory Settings, you can do so by hand editing dev<your_project>\Config\Game.xml.

Sorry for the inconvenience, the team is now actively working on a fix. Stay tuned!

answered 4 years ago
0

Hi @REDACTEDUSER

Argh I'm sorry to hear about this :(

I'll get in touch with the LY-Shine team to see why it's not working and if there's a quick fix.

Thanks for your patience, will let you know what I find out 👍

Tom

answered 4 years ago
0

Sorry I never updated this but I do think this did get investigated and resolved, I'm not 100% sure which release it will be in but I'll try and find out tomorrow 👍

answered 4 years ago
0

So this is now being officially tracked but unfortunately hasn't been worked on yet, it's on the backlog though! Sorry not to have more info

answered 4 years ago
0

Hey I'm just happy it's on the log. Thanks.

answered 4 years ago
0

Just a reminder this wasn't fixed in the latest beta rollout. The button does not work.

answered 4 years ago
0

Hey @REDACTEDUSER

Thanks for the reminder!

I actually decided to look at this today (thinking it would be simple... unfortunately it was anything but 😂)

I'll follow up with an epic debugging story soon. I think people might find it interesting :slight_smile:

Stay tuned...

Tom

answered 4 years ago
0

TLDR: It's still not fixed I'm afraid, but I've got a lot closer... read-on for the sordid details...

Okay where to begin...

First of all I'd totally forgotten how to even launch and debug the Lyzard.exe app 🙈 To do this you need to generate the lmbr_setup_tools solution file with lmbr_waf msvs -p lmbr_setup_tools.

Once I got that working I then tried launching ProjectConfigurator (making it the start-up project) but it spawns a new process when you open the project settings. You need to set some special command line args from Visual Studio to launch Lyzard.exe standalone (-ade-project SamplesProject -ade-config Editor) and make it the start-up project.

After going through all this I discovered the button callback is actually firing (I eventually found where this is - PropertyAssetCtrl::PopupAssetPicker()) , but it turns out the call to AssetBrowserComponentRequests::PickAssets was not being handled! We send the request, and there's no friendly listener waiting to give us a response. 😦

The reason for this is the Component responsible for implementing this bus is not instantiated in the Lyzard application. The Component in question is AssetBrowserComponent which was not registered in GetRequiredSystemComponents in LyzardGUIApplication.

I added this in to the list of Components but then started getting a crash in Qt! 😩 It was complaining that I was trying to create a QWidget before the QApplication had been instantiated (a big no no unfortunately...).

This seemed a bit weird to me and after some more head scratching I remembered the next thing to always check is the Output window...

Trace::Error
 d:\dev-london-desktop\dev\Code\Framework\AzCore\AzCore\Component\Entity.cpp(218): 'void __cdecl AZ::Entity::Activate(void)'
Entity 'SystemEntity' [0] cannot be activated. Component 'AssetBrowserComponent' is missing another required component.

Success! We got a separate error that tried to then report itself using Qt, but at this stage Qt hasn't been created yet, so we get a crash 🙈

So next it's off to check GetRequiredServices on AssetBrowserComponent which helpfully tells us that ThumbnailerService is required... While I was at it I checked ThumbnailerComponent and it fortunately has no other required services so we should be good.

Still not out of the woods yet... I try launching Lyzard.exe again, but now another crash! 😩 We're trying to create a QPixmap before a QGuiApplication has been created in Thumbnail - no dice 🙁

After more digging I realised that QtAppSystemComponent needs to be activated before ThumbnailerComponent, as that creates the QApplication. To ensure QtAppSystemComponent is activated before ThumbnailerComponent, we need to make ThumbnailerComponent depend on QtAppSystemComponent (using GetDependentServices/GetProvidedServices). I made a new service called QtAppService and hit run one last time...

BAM

REMOVEDUPLOAD

At this point I'm now slowly losing the will to live... (remember this is all to get one button working again...).

After some digging it looks like the most likely candidate is that we're missing a call to

AzFramework::SimpleAssetReference<TextureAsset>::Register(*serializeContext);

in Lyzard.exe... the problem is TextureAsset is actually defined in LmbrCentral, and we don't want to depend on that in Lyzard.exe... So we basically need to refactor TextureAsset to live in a more sensible place than LmbrCentral...

I'm afraid at this point I ran out of time... :(

I will keep looking into this on Monday, but I hope this gives some indication of the difficulty of fixing seemingly trivial bugs...

Watch this space!

UPDATE: After all that (going down the rabbit hole and back up again...) there might be a much easier way to simply use am AZStd::string instead of a AzFramework::SimpleAssetReference<LmbrCentral::TextureAsset>... This will avoid pretty much all these problems. It's just a shame this would never have worked in the first place :( I'll take a quick look on Monday and see if there's a nice, quick fix 👍

answered 4 years ago
0

Wow. Haha. Well, I just edited the XML anyway so I don't really need button now but that's pretty crazy that one little bug can take you on an odyssey like that. I really appreciate your time though.

answered 4 years ago
0

Lol no worries 😛

Classic Friday 😂

answered 4 years ago

This post is closed: Adding new answers, comments, and votes is disabled.